v4.2
v4.2
Murex usage has raised considerably in recent weeks. This release addresses a number of feature requests and bugs raised on Github.
Breaking Changes
none
Features
new flag in
foreach
:--step <int>
. This allows theforeach
to jump indexes at a time. When used, all the lines jumped are merged into a JSON array and that is passed to theforeach
nested code blocknew alias
builtin
=>fexec builtin
. This was added to bring more familiarity to those coming from Bash et al (#608)on Darwin, Homebrew defaults are imported, just like you'd expect them to be from any other shell
ctrl
+a
: jump to beginning of linectrl
+e
: jump to end of linealt
+f
: jump forwards a word at a timealt
+b
: jump backwards a word at a timectrl
+k
: clear line after cursor positionctrl
+l
: clear entire screenctrl
+g
: same asesc
open
builtin should fallback to system default if type unknown (#620)pre-prompt-func
added toconfig
. Block runs before the interactive prompt is displayedpost-prompt-func
added toconfig
. Block runs after the interactive prompt has been exited but before any command lines have been executedauto-cd option added to
config
:config: set shell auto-cd true
. This allows you to traverse directories without having to prefixcd
. By default it is disabledMeta values added to
foreach
,formap
, andwhile
. Meta values are a$.
variable that holds meta-information about the running block, such as the number of iterations in a loopcommand
alias forexec
(for familiarity with Bash)builtin
alias forfexec builtin
(for familiarity with Bash)
Bug Fixes
brace encapsulated variables, eg
$(foobar)
, now autocomplete as expectedimprovements to inlining images in iTerm2 when shell running on top of
tmux
. It still doesn't work reliably but this is an issue withtmux
rather than Murexmethod
forwards exceptions rather than errors. This behaviour has been changed to surface issues as errorsprofile_preload.mx
added to profile defaults. This will be loaded before any of the OS-specific profilesmissing rune length check causing the shell to panic (#617)
fixed deadlock in flag parsing
zero length string title bars should be ignored (#614)
minor improvements to documentation
Published: 19.06.2023 at 23:15
See Also
- Alias Pointer (
alias
): Create an alias for a command - Define Method Relationships (
method
): Define a methods supported data-types - Execute External Command (
exec
): Runs an executable - Execute Shell Function or Builtin (
fexec
): Execute a command or function, bypassing the usual order of precedence. - For Each In List (
foreach
): Iterate through an array - For Each In Map (
formap
): Iterate through a map or other collection of data - Interactive Shell: What's different about Murex's interactive shell?
- Loop While (
while
): Loop until condition false - Open File (
open
): Open a file with a preferred handler - Shell Configuration And Settings (
config
): Query or define Murex runtime settings - Terminal Hotkeys: A list of all the terminal hotkeys and their uses
This document was generated from gen/changelog/v4.2_doc.yaml.