回答:
Readlineライブラリが提供するいくつかの便利な行編集キーバインディング:
Ctrl-A:行の先頭に移動しますCtrl-E:行末に移動しますAlt-B:1単語後方にスキップAlt-F:1単語先にスキップCtrl-U:行頭まで削除Ctrl-K:行末まで削除Alt-D:単語の最後まで削除Alt-Aすると、カーソルを移動する代わりにメニューが開きます。Alt-AGnome ではどのように使用しますか?つまり、Gnomeがデフォルトなので、これを読んでいる人はだれでもGnomeでターミナルを実行しているでしょう。
ここからさらにいくつかのショートカット
Ctrl + a – go to the start of the command line
Ctrl + e – go to the end of the command line
Ctrl + k – delete from cursor to the end of the command line
Ctrl + u – delete from cursor to the start of the command line
Ctrl + w – delete from cursor to start of word (i.e. delete backwards one word)
Ctrl + y – paste word or text that was cut using one of the deletion shortcuts (such as the one above) after the cursor
Ctrl + xx – move between start of command line and current cursor position (and back again)
Alt + b – move backward one word (or go to start of word the cursor is currently on)
Alt + f – move forward one word (or go to end of word the cursor is currently on)
Alt + d – delete to end of word starting at cursor (whole word if cursor is at the beginning of word)
Alt + c – capitalize to end of word starting at cursor (whole word if cursor is at the beginning of word)
Alt + u – make uppercase from cursor to end of word
Alt + l – make lowercase from cursor to end of word
Alt + t – swap current word with previous
Ctrl + f – move forward one character
Ctrl + b – move backward one character
Ctrl + d – delete character under the cursor
Ctrl + h – delete character before the cursor
Ctrl + t – swap character under cursor with the previous one
あなたはviの[M]と、bashのユーザーであれば、あなたは追加することによって、viのスタイルの編集を使用することが有用(bashので使用される)のreadlineを作るために見つけることがset editing-mode vi、あなたに~/.inputrcまたは/etc/inputrcファイル。または、bashコマンドを実行して、bashにviスタイルの編集を使用させることもできますset -o vi。コマンドを~/.bashrcファイルに追加して、動作を永続化します。
zshユーザーの場合は、viスタイルの編集用にファイルに追加bindkey -vします.zshrc。
.bashrcで以下のコードスニペットを入手します。Ctrl-aは先頭にジャンプし、Ctrl-aをもう一度押すと中央にジャンプします。
jump_mid() {
if [ "$READLINE_POINT" -eq "0" ]; then
LEN=${#READLINE_LINE}
POS=$(($LEN / 2))
READLINE_POINT=$POS
else
READLINE_POINT=0
fi
}
bind -x '"\C-a" : jump_mid'
または、Ctrl-Somethingを使用して直接中央にジャンプする場合は、コードを次のように変更します。
jump_mid() {
LEN=${#READLINE_LINE}
POS=$(($LEN / 2))
READLINE_POINT=$POS
}
そして、Ctrl-aとは異なるものにバインドします。
screenユーザは、Ctrl-Aは、Ctrlキーを押しながらAのA.なり