12 unstable releases (3 breaking)
0.4.2 | Jan 16, 2024 |
---|---|
0.4.1 | Jan 16, 2024 |
0.3.0 | Jan 8, 2024 |
0.2.3 | Jan 5, 2024 |
0.1.3 | Dec 23, 2023 |
#588 in Command line utilities
124 downloads per month
17KB
397 lines
plssssssssss
pls
is a scripting utility to create local messy aliases quickly.
remember that pls is not finished and has many features planned!
Installation
pls
is available on crates.io as j-pls
.
cargo install j-pls
Writing Commands
pls
looks for a rules.pls
file to pull rules from. Rule syntax looks like this:
build: cargo build --release
run: cargo run
# install binary locally
install-local:
cargo build
cargo install --path . --force
# say hi!
#arguments will be enviroment variables in the given script
greet [name]:
echo hello $name!
Run pls
with -l
to view available rules. You can also use -v
for more detailed info about a rule.
To use a rule, call it with pls
!
pls build
pls
has a special rule, called do
, that will be called when running pls
with no arguments.
do:
g++ src/* -o target/main.out
./taget/main.out
Configuration
pls
looks in $XDG_CONFIG/pls
for configuration files.
# file: $XDG_CONFIG/pls/config.pls
# these are available settings with their defaults
# where pls will look for local rules, relative to cwd
look: rules.pls
# where pls will look for global rules, relative to $XDG_CONFIG/pls/
global: global.pls
# if commands should be printed before running
show_cmd: false
# show extra info about rules when listing
rich: true
Todo
Current features being worked on, in order of priority.
- multiline commands
- global rules
- arguments
- variables
- calling other rules
- attributes
- confirm prompts
- more advanced scripting..(?)
Dependencies
~0.1–10MB
~44K SLoC