Skip to content

Commit

Permalink
provide a better experience when user presses \cC
Browse files Browse the repository at this point in the history
  • Loading branch information
krader1961 authored and floam committed Apr 16, 2016
1 parent fff3a69 commit ebd5e11
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 7 deletions.
13 changes: 13 additions & 0 deletions share/functions/__fish_cancel_commandline.fish
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# This is meant to be bound to something like \cC.
function __fish_cancel_commandline
set -l cmd (commandline)
if test -n "$cmd"
commandline -C 1000000
echo (set_color -b bryellow black)"^C"(set_color normal)
for i in (seq (commandline -L))
echo ""
end
commandline ""
commandline -f repaint
end
end
2 changes: 1 addition & 1 deletion share/functions/fish_default_key_bindings.fish
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ function fish_default_key_bindings -d "Default (Emacs-like) key bindings for fis
bind $argv \el __fish_list_current_token
bind $argv \ew 'set tok (commandline -pt); if test $tok[1]; echo; whatis $tok[1]; commandline -f repaint; end'
bind $argv \cl 'clear; commandline -f repaint'
bind $argv \cc 'commandline ""'
bind $argv \cc __fish_cancel_commandline
bind $argv \cu backward-kill-line
bind $argv \cw backward-kill-path-component
bind $argv \ed 'set -l cmd (commandline); if test -z "$cmd"; echo; dirh; commandline -f repaint; else; commandline -f kill-word; end'
Expand Down
10 changes: 4 additions & 6 deletions share/functions/fish_vi_key_bindings.fish
Original file line number Diff line number Diff line change
Expand Up @@ -22,22 +22,20 @@ function fish_vi_key_bindings --description 'vi-like key bindings for fish'
# Remove the default self-insert bindings in default mode
bind -e "" -M default
# Add way to kill current command line while in insert mode.
bind -M insert \cc 'commandline ""'
bind -M insert \cc __fish_cancel_commandline
# Add a way to switch from insert to normal (command) mode.
bind -M insert -m default \e backward-char force-repaint

#
# normal (command) mode
#
# Default (command) mode
bind :q exit
bind \cd exit
bind \cc 'commandline ""'
bind -m insert \cc __fish_cancel_commandline
bind h backward-char
bind l forward-char
bind \e\[C forward-char
bind \e\[D backward-char

# Some linux VTs output these (why?)
# Some terminals output these when they're in in keypad mode.
bind \eOC forward-char
bind \eOD backward-char

Expand Down

0 comments on commit ebd5e11

Please sign in to comment.