最新の貼り付け(ctrl-y)より前にコピーされた(alt-w)テキストを貼り付ける方法は?


7

Alt-w領域をコピーするために使用するテキストを選択したら、それを使用ctrl-yして貼り付けます。Alt-w最新の貼り付けの前に、選択してコピーしたものを貼り付ける方法はありますか?


1
必要な回数だけC-y M-y繰り返しM-yてみてください。
レゴシア2015年

undo-treeモードも参照してください。
mankoff

回答:


5

でヤンクした後C-y、を押しM-yてコマンドを実行しyank-popます。繰り返し押すと、が循環しますkill-ring

たとえば、次の場合:

Hello, world!

あなたは殺すHelloworld(あなたがしている, !左)、その後、次の行とのヒットに行きます:

C-y world

M-y Hello

SPCC-y Hello Hello

C--M-y Hello world


私がM-yそれを押すとき、前のコマンドがヤンクではなかったと言います
Vass

@Vassはい、コマンドyankC-y)を実行してから、を押しM-yて循環します。
乳母

テキストを選択してからCyを押すと、その場で貼り付けられます
Vass

1
@バス私はあなたの意味が理解できません。C-yコマンドを実行しますyank。これは「貼り付け」の概念に似ています。テキストを削除するか、C-wkill-ring-save)でコピーするたびに、テキストがにプッシュされますkill-ring。を押すとC-y、これはの最初の要素をポップし、kill-ringそれをバッファに挿入します。M-ykill-ring-pop)を続けて押すと、に保存されている要素が順に表示されますkill-ring
ナニー

1
@Vass、おっと、それは私のタイプミスです。読むべきだったM-w。コマンドは正しいです。
ナニー

3

@nannyが答えをくれました。そして、もしM-y前のコマンドがヤンクではなかったと言ったら、おそらくC-y最初に行うのを忘れていたでしょう。IOW、あなたは最初C-yに最新のキルをヤンクしますが、それはあなたが望むものではありません。次にM-y、代わりに前のものを取得します。繰り返すM-yと逆方向に循環できます。

コピーと貼り付けに関する一般的な情報については、Emacsのマニュアル、ノードYanking、およびを参照してくださいkill-ring


とにかく、私は二次選考に触れたかった。特に、他の方法で使用したい場合に非常に便利ですC-y M-y

二次セレクションはまさにそれが言うことです:Emacsのリージョンであるセレクションとは関係のないセカンドセレクション。リージョンがアクティブであるかどうかに関係なく利用可能であり、その位置はポイントやマークの影響を受けません。

ライブラリーを使用する場合は、2次選択にも(地域に)のsecond-sel.el多くの利点がありkill-ringます。2番目の選択リングを2番目の選択リングに追加します。これは、secondary-selection-ringと似ていますが、とは異なりkill-ringます。また、2番目の選択がに追加されkill-ringないようにするため、2つの個別の選択履歴リングができます。

M-y 次に、1次(領域)のヤンクに従うか2次選択の貼り付けに従うかに応じて、適切なリングからアイテムを循環させます。


だからコピーにAlt-wを使わないの?殺さないといけないの?
Vass

2
いいえ、M-w(もしそうなら、Alt-w)を使用してコピーできます。そうするとC-h k M-w、それM-wがにバインドされkill-ring-saveていることがわかり、そのコマンドが何をするのかがわかりますkill-ring。リージョンがにコピーされます。にあるテキストの一部は、テキストをkill-ringkillしたりコピーしたりして(たとえばを使用してM-w)そこに到達したかどうかに関係なく、「kills」と呼ばれます。
2015年

2

私が見つけた最良の解決策はhelm-show-kill-ringです。Helmが存在することに気付く前に、かなり前からHelmを使用していました。私はそれに縛られていM-yます。これにより、既存のエントリを非常に高速かつ簡単に表示し、絞り込み、必要なエントリを選択できます。


1

貼り付けた後M-y、貼り付けたテキストを以前にコピーしたテキストに置き換えます。

M-y複数回押すと、以前にコピーした(またはカット/キルした)テキストをすべて循環できます。


0

あなたは簡単にしたい場合は参照以前にコピーされ、殺害されたテキストの断片を、および1つまたは複数のそのような部分を選択し、これらの缶のヘルプ:

  • ブラウズキルリング -ブラウズkill-ringヤンクにキルを選択します。そのページは、この動作をさまざまな方法で提供するいくつかの代替ライブラリを示しています。主なものはbrowse-kill-ring.elです。

  • つらら -

    • M-y:最後のヤンクタイプに応じて、kill-ringまたはからヤンクしますsecondary-selection-ringsecond-sel.el2番目の選択肢にはライブラリが必要です)。最後のコマンドがヤンクでない場合、これは同じですC-- C-y(次を参照)。
    • C-- C-yC-y前置引数が負の場合):補完を使用して挿入するキルの数を選択できます。完了時に使用できます:

      • C-, さまざまな方法でヤンクする候補者を並べ替える(繰り返し)
      • S-delete 選択リングから候補エントリを削除するには
      • C-S-return 候補を他の選択リングにコピーするには
  • ヘルム -を参照してください@ bluejayの答えは、このページで。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.