Quick Aliasing
QALI can...
- Shorten long & complex commands
- Act as a namespace for your custom scripts (stop worrying about conflicting names with system commands!)
- Make you type less
- Reduce your mental workload
brew tap JettChenT/qali
brew intall qalidownload the latest release of your platform, unzip, and move q and qali binaries to your bin folder (usually /usr/local/bin)
A Rust installation is required
cargo install qaliTo run the QALI on a windows machine without encoding errors, use windows terminal.
q.exe works...
but qali.exe somehow gets detected as a trojan virus (I wish I know how to make one (>_<)
This can be solved by allowing the "virus" in windows defender.
Luckily, qali.exe is not required for simple actions such as setting and executing an alias.
This installs two separate binaries : q and qali.
The command q is meant for actions with the highest usage frequency, such as setting and alias or executing a command.
The command qali is meant as a companion allowing for subcommands and more functionality without influencing the namespace in q which is set reserved completly by the users.
q --help
qali --help
- Command: one liners, eg.
q -s hi "echo hi" - Shell: Shell scripts, eg.
q -s hi hello.sh(EXPERIMENTAL) (Works iff your shell installation has the name "sh") - Python: Python scripts, eg.
q -s hi hello.py(EXPERIMENTAL) (Works iff your python command has the name "python") - URI: open URI in default application, eg.
q -s hi https://beta.sayhello.so
Example: set gs as git status
q -s gs "git status"Example: set cc to cargo check locally
q -sl cc "cargo check"Set p as python if p doesn't exist
q p pythonSet hi to ./hi.py with qali
qali set hi ./hi.pySet local alias hi to ./hi.py with qali
qali -l set hi ./hi.pyMethod 1: q
Method 2: qali select
Example: execute git status
q gsExecute python --version (As of now, use -- when executing a command to stop flags meant for the program being parsed as flags for qali itself.)
q -- p --versionqali list
Alternatively, you can set q -s ls "qali list" to shorten this.
Example: remove gs as git status:
qali remove gs
Alternatively, you can set q -s rm "qali remove" to shorten this.
- Better output formatting
- Subcommands
- Change storage method to json or other serde formats
- Allow users to set descriptions for each command
- Linking to shell scripts
- Linking to python scripts(support for python environments)
- TUI to navigate existing commands
- Implement fuzzy finding
- More customizable options eg. print-only