mirror of
https://github.com/denisidoro/navi
synced 2024-11-24 20:43:06 +00:00
Update legacy syntax from Elvish widget
This commit updates the legacy assignment and lambda syntax from the Elvish widget so it works on v0.17 without deprecation errors. This commit also refactors some of the code so it's cleaner.
This commit is contained in:
parent
35b544f418
commit
c082c09935
1 changed files with 13 additions and 15 deletions
|
@ -1,31 +1,29 @@
|
|||
use str
|
||||
|
||||
fn call-navi []{
|
||||
fn call-navi {
|
||||
if (eq $edit:current-command '') {
|
||||
answer = (navi --print)
|
||||
var answer = (navi --print)
|
||||
edit:replace-input $answer
|
||||
} elif (not (str:contains-any $edit:current-command '|')) {
|
||||
answer = (navi --print --query $edit:current-command)
|
||||
var answer = (navi --print --query $edit:current-command)
|
||||
if (not-eq $answer '') {
|
||||
edit:replace-input $answer
|
||||
}
|
||||
} else {
|
||||
cmds = [(str:split '|' $edit:current-command)]
|
||||
qty = (- (count $cmds) 1)
|
||||
query = (all $cmds | drop $qty)
|
||||
cmds = [(all $cmds | take $qty)]
|
||||
answer = ''
|
||||
var @cmds query = (str:split '|' $edit:current-command)
|
||||
var answer = (
|
||||
if (eq $query '') {
|
||||
answer = (navi --print)
|
||||
navi --print
|
||||
} else {
|
||||
answer = (navi --print --query $query)
|
||||
navi --print --query $query
|
||||
}
|
||||
)
|
||||
|
||||
if (not-eq $answer '') {
|
||||
cmds = [$@cmds $answer]
|
||||
set cmds = [$@cmds $answer]
|
||||
edit:replace-input (str:join '| ' $cmds)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
edit:insert:binding[Alt-h] = []{ call-navi >/dev/tty 2>&1 }
|
||||
set edit:insert:binding[Alt-h] = { call-navi >/dev/tty 2>&1 }
|
||||
|
|
Loading…
Reference in a new issue