A CLI utility to make cross-shell command aliases, and access them from a simple TUI.
![Screenshot 2023-07-11 at 5 06 16 PM](https://private-user-images.githubusercontent.com/58201828/252820943-60134ce0-b157-4b5a-b70c-05e82ee4ae4f.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjUzOTk3MTksIm5iZiI6MTcyNTM5OTQxOSwicGF0aCI6Ii81ODIwMTgyOC8yNTI4MjA5NDMtNjAxMzRjZTAtYjE1Ny00YjVhLWI3MGMtMDVlODJlZTRhZTRmLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNDA5MDMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjQwOTAzVDIxMzY1OVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWY1NDIwOThiMzIzZGI4MTY5ZjVhN2NiZDJkNzYzNWNjOTg2MTJlYTdjNWI3YzMzY2UyY2FhMzIwYzBlZjVjZTUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JmFjdG9yX2lkPTAma2V5X2lkPTAmcmVwb19pZD0wIn0.ydTe7WS91EEhofNp5Yg1Um9hCbi2W8_ZBJZfvkox5eU)
- V1: Update to V2 (shouldn't break anything).
- V2: Adds custom config locations (for syncing, etc.), and passes arguments to command when running an alias by name. Current version, complete.
It's feature complete as far as I had planned, there might be a V3 if I think a new feature is necessary (feel free to suggest!).
Pre-built binaries for Windows, macOS, Linux, and FreeBSD are available in the build folder in the repository.
# macOS - Apple Silicon
curl -L https://github.com/blobbybilb/falsename/raw/main/build/mac-arm64/fn -O
# macOS - Intel
curl -L https://github.com/blobbybilb/falsename/raw/main/build/mac-amd64/fn -O
# Linux - amd64
curl -L https://github.com/blobbybilb/falsename/raw/main/build/linux-amd64/fn -O
# Linux - arm64
curl -L https://github.com/blobbybilb/falsename/raw/main/build/linux-arm64/fn -O
# FreeBSD - amd64
curl -L https://github.com/blobbybilb/falsename/raw/main/build/freebsd-amd64/fn -O
# FreeBSD - arm64
curl -L https://github.com/blobbybilb/falsename/raw/main/build/freebsd-arm64/fn -O
# Windows - amd64
curl -L https://github.com/blobbybilb/falsename/raw/main/build/windows-amd64/fn.exe -O
Then, make it executable and move it to a directory in your PATH.
# non-Windows (macOS, Linux, FreeBSD)
chmod +x fn
sudo mv fn /usr/local/bin
Finally, set your config directory (optional, default is ~/.config/falsename
) (useful if you have a directory synced across computers or the like).
fn config ~/new/config/directory
fn
-> choose an alias from a list of all aliasesfn <alias> [args]
-> run an alias with optional argumentsfn list
-> list all aliasesfn get <alias>
-> get the command for an aliasfn save <alias> <command>
-> save an aliasfn shell
-> get configured shell (default /bin/sh)fn shell <shell>
-> set shell (not recommended unless you don't have /bin/sh)fn delete <alias>
-> delete an aliasfn config
-> get the config directoryfn config <dir>
-> set the config directory
fn save hi "echo hello"
fn hi # -> hello
fn # choose from a list of all aliases
fn list # list all aliases
fn get hi # get the command for an alias
fn delete hi # delete an alias
"run(ning) an alias" doesn't sound right...