-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.inputrc
executable file
·103 lines (79 loc) · 2.91 KB
/
.inputrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# Official readline documentation:
# - https://tiswww.cwru.edu/php/chet/readline/readline.html
# .inputrc read by readline capable programs:
# - bash yes (but no zsh)
# Include default distribution customization
$include /etc/inputrc
#
# VIM mode
#
# Use vi keybindings
set editing-mode vi
# Current keymap for keybindings
# - multiple keymaps possible:
# -- vi, vi-command and vi-move are one an the same keymap
# -- vi-insert
# - to know keybindings differens: diff <(bind -pm vi) <(bind -pm vi-insert)
# Start shell/program in editing mode
# src: https://superuser.com/a/1114109/47829
set keymap vi-insert
# VIM leader remapping
$if mode=vi
# key to leave vi-insert mode
set keymap vi-insert
"jj": vi-movement-mode # remap escape
$endif
# Cursor representations similar as vim's cursor,
# on a per os basis, in insert / command modes
set show-mode-in-prompt on
$if term=linux
set vi-ins-mode-string \1\e[?0c\2
set vi-cmd-mode-string \1\e[?8c\2
$else
set vi-ins-mode-string \1\e[6 q\2
set vi-cmd-mode-string \1\e[2 q\2
$endif
# Do not ring a bell / flashes when Readline wants it
# (eg: no further completion in bash)
set bell-style none
#
# TAB-COMPLETION (Readline bindings)
#
# If there are multiple matches for completion,
# make TAB cycle through them.
TAB: menu-complete
# Perform partial completion on the first Tab press, and
# only start cycling full results on the second Tab press.
set menu-complete-display-prefix on
# Expand tilde to user home path
set expand-tilde on
# Make Tab autocomplete filename in a case insensitive fashion
set completion-ignore-case on
# List all matches in case multiple possible completions are possible
set show-all-if-ambiguous on
# Immediately add a trailing slash when autocompleting symlinks to directories
set mark-symlinked-directories on
# Do not autocomplete hidden files unless the pattern explicitly begins with a dot
set match-hidden-files off
# Show all autocomplete results at once
set page-completions off
# If there are more than 200 possible completions for a word, ask to show them all
set completion-query-items 200
# Show extra file information when completing, like `ls -F` does
set visible-stats on
# Be more intelligent when autocompleting by also looking at the text after
# the cursor. For example, when the current line is "cd ~/src/mozil", and
# the cursor is on the "z", pressing Tab will not autocomplete it to "cd
# ~/src/mozillail", but to "cd ~/src/mozilla". (This is supported by the
# Readline used by Bash 4.)
set skip-completed-text on
# Allow UTF-8 input and output, instead of showing stuff like $'\0123\0456'
set input-meta on
set output-meta on
set convert-meta off
# Use the text that has already been typed as the prefix for searching through
# commands (basically more intelligent Up/Down behavior)
"\e[A": history-search-backward
"\e[B": history-search-forward
# Use Alt/Meta + Delete to delete the preceding word
"\e[3;3~": kill-word