Releases: akavel/up
v0.4 — New flags, help, new tcell
- 9ddc78b upgrade version to 0.4
- b20471c deps: upgrade tcell (#45)
- 94ad570 add
--noinput
flag (#50, #33) - 3e81993 add usage info with
--help
flag (#35) - 8aa1f8f add
--buf
flag for specifying buffer size - 3a63622 add
-c
flag for initial pipeline command (#11) - 5dc341c add
-e
multi-flag for custom shell
New flags:
--buf megabytes input buffer size & pipeline buffer sizes in megabytes (MiB) (default 40)
-e, --exec command command to run pipeline with; repeat multiple times to pass multi-word command; defaults to '-e=$SHELL -e=-c'
--noinput start with empty buffer regardless if any input was provided
-c, --pipeline commands initial commands to use as pipeline (default empty)
v0.3.2 — Add some readline shortcuts
Add the following shortcuts (see #28):
Ctrl-A
/Ctrl-E
— Go to beginning/end of command.Ctrl-B
/Ctrl-F
— Move backward/forward by one character (same asLeft
/Right
).Ctrl-K
/Ctrl-Y
— Kill from cursor to EOL. / Yank (paste) last kill at cursor.
Those features were contributed by @cmacrae — thanks! ❤️
v0.3.1
v0.3 — Allow custom/non-bash shells ("engines")
This release by default loads user's login shell, as specified in the SHELL
environment variable (instead of always using bash
, as was done previously). This feature can also be used to change the shell/engine used by up, by changing the contents of the SHELL
variable. To be compatible with up, a shell must support two ways of being called:
$SHELL -c "$COMMAND"
— this is used by up when evaluating the command entered by user,$SHELL $FILENAME
— this is used in upN.sh scripts saved after exiting up.
If a shell/engine you want to use with up doesn't support such ways of being called, you can create a wrapper script to translate those into options appropriate for your shell. This can be used to make up work with engines such as lua
or ghci
.
To change a shell used by up, change the value of the SHELL
environment variable. For example, in bash, you could try:
lshw |& SHELL=python up
v0.2.1 — fix Ctrl-S/Ctrl-Q behavior
The behavior of Ctrl-S/Ctrl-Q was broken after adding the "Enter to run" feature. This release fixes it to work correctly again.
v0.2 - Enter to run
The main feature of the new version, based on a lot of feedback and numerous ideas, is a change of the default mode: you must now Press Enter to execute the pipeline built in up. This is a safety measure and fixes #8. The old behavior is still available, but must be enabled with a command-line flag --unsafe-full-throttle
. This may however get removed in future — the Enter mode seems to be working well enough. If you are really using this mode, please let me know by opening an issue or sending an email/keybase message, so that I will try to keep it. Also if you are interested in adding a feature to dynamically switch the modes (I'm not so sure now if I see a need to add it anymore).
This release also comes with binaries for more OSes, but please note that Linux is my main focus point, and I don't have means to test other platforms, so they're (even more than Linux) experimental, and may need help from interested contributors (read: you) for maintenance. If you would like me to add a binary for some other OS supported by Go, please let me know. I can send you a binary for testing first if you don't want to compile by yourself.
Full list of changes
- [Fix #8] Execute the pipeline only when Enter is pressed.
- Add option
-o $FILE
to allow saving the script to custom file. This may be useful especially to zsh users for some magic tricks (thanks u/attrigh for the idea!) - Improve saving of the pipeline. When quitting with Ctrl-C, the pipeline is now printed to stderr. When exiting with Ctrl-X, if file fails to save (e.g. in readonly directory), an attempt is made to save the script in /tmp. If it fails too, the pipeline is printed to stderr.