readline 情報ページ:
info bash -n "Commands For Kill"
M-y
キルリングを回転し、新しいトップをヤンクします。これは、前のコマンドがC-y
または の場合にのみ実行できますM-y
。
最後に削除されたテキストを「貼り付ける」ということは理解していますC-y
が、具体的に何をするのかわかりませんでしたM-y
。
説明していただけますか
答え1
M-y最後のヤンクを元に戻し、保持されているすべてのキル文字列のリストを回転し、リストの新しい先頭をヤンクします。次の例を試してください。
- 5文字を入力してください
a b c
(改行なし) - カーソル ( を使用C-b) を の前に置き
c
、 と入力して をキル リングの上部にC-k削除します。c
- カーソルを2文字左に置き、次のようC-kに入力して削除します
b
。 - そしてもう一度行の先頭に戻って、 と入力してC-k削除します
a
。
ここで と入力すると、リストの先頭からC-yが取り出されます。もう一度入力すると、別の が表示されますが、すぐに と入力するとが削除され、 に置き換えられます。a
C-ya
M-ya
b
ここで別の文字を入力すると、キルリングが回転しているため、ではなく がC-y表示されます。同様に、は を に置き換えます。b
a
M-yb
c
シーケンスC-yに続けて多数を入力するとM-y、各キルリング文字列が 1 つずつ取得されます。
答え2
私は Emacs ユーザーではありませんが、ここ 1 か月間、Vi モードの代替として Readline の Emacs モードを試してきました。
あなたが殺す(削除)テキストはバッファから削除され、キルリング. あなたがヤンクでテキストを(貼り付け)するとC-Y
、最後に削除されたテキストがカーソル位置に印刷されます。
もし、あんたがすぐにこれに続いてM-Y
(メタAltキーは通常、 -を押すYか、Escを押すことで取得できますY)、ヤンクによって印刷されたテキストは、C-Y
2番目に最近削除されたテキストに置き換えられます。 に続けて を押すとM-Y
、貼り付けられたテキストは3番目に最近削除されたテキストに置き換えられ、以下同様に続きます。 を続けて押すたびに、M-Y
貼り付けられたテキストは、キルリングの次の「キル」のテキストに変わり、キルリングの終わりに達すると、回転する最新の殺害に戻ります。