複数の列をコピーして貼り付けたいことがよくあります。たとえば、1つの列を貼り付けます
line one
line two
line three
次に、その後ろにある別の列をヤンクできるようにしたいと思います。私のキルバッファが次のものであると仮定します:
added to one
added to two
added to three
次を取得するには、どのコマンドを呼び出す必要がありますか。
line one added to one
line two added to two
line three added to three
更新
Emacsの四角形の機能を使用するとかなり役立ちますが、それでも最適ではありません。たとえば、グラフィカルモードでEmacsを使用していて、外部プログラムからヤンクしている場合、つまりOSからコピーアンドペースト機能を使用している場合、キルバッファには長方形のメタ情報がないため、長方形のヤンクは機能しません。もう1つの問題は、さまざまな内部幅を持つ列がある場合です。
short line *
a much larger line which goes on
short line again
長方形のヤンクをしたい場合は、マークされたスポット(*)にポインターを置く必要があります。これは3行で簡単ですが、最初の列の最も外側の端にポインターを配置していることを確認するのは非常に面倒な場合があります。
よくわかりませんが、長方形で作業したいと思います。
—
ダン
これに対する簡単な答えがあるかどうかはわかりません。テキストがクリップボードにコピーされると、列に関する情報は失われます。この「列」情報を保持するには、おそらくEmacs外で何かをする必要があると思います。
—
2015年
elispに習熟しているだけの場合、これはほんの数行であると期待していますが、実際にはこれが既存の関数であると期待しています
—
hbogert
これは非常に簡単なマクロで行うことができます。最初の列のテキストの下に2番目の列のテキストをヤンクします。次に、列2のデータの最初の値を列1のデータの最初の行の終わりに移動し、次に列2のデータの次の値を下に移動して、すべてが揃うまで実行するマクロを記録します。
—
Jordon Biondo 2015年