.vscode | ||
go.mod | ||
go.sum | ||
LICENSE | ||
main.go | ||
README.md |
PAT
What it Does
pat
is a command-line tool for concatenating and displaying the contents of files and directories. It:
- Processes the specified files and directories recursively.
- Appends content to a structured output with file paths and a delimiter for clarity.
- Copies the resulting output to the system clipboard for convenient sharing or reuse.
Example use case:
- Aggregate and view the contents of multiple files or directories in one command.
- Automatically copy the aggregated result to the clipboard for seamless integration with other tools or platforms.
Dependencies
- Golang (only to install / build):
- The application requires the Go programming language (
>= 1.18
) to compile and run. - Dependency:
golang.design/x/clipboard
for clipboard interaction.
- The application requires the Go programming language (
- External Tools:
- On Wayland-based systems,
wl-copy
must be installed for clipboard functionality.
- On Wayland-based systems,
Installation
Install go-cat directly using go install:
go install git.schreifuchs.ch/schreifuchs/pat@latest
The binary will be placed in your $GOPATH/bin directory. Ensure $GOPATH/bin is in your system's PATH to run it directly.
Example Usage
Concatenate files and directories:
./pat file1.txt folder/
Output is printed to the terminal and copied to the clipboard, allowing you to paste it elsewhere.
Notes
- The tool uses
---------------------------------------------------------------------------
as a delimiter to separate file contents for readability. - If clipboard functionality fails (e.g., unsupported environment), the application will still display the result in the terminal.