shell

A collection of 1 post

terminal

端末エミュレータに対して、リージョンをクリップボードにコピーするための制御文字列(OSC52/PASTE64)をEmacsから投げる方法。

2018/1/28 修正: 1)軽微な日本語の修正。2)使っていた別のパッケージで定義されていたreplace-in-stringをビルトインのものだと思いこんで使っていた問題と、cl.elの読み込みが必要であるloopマクロを読み込まずに使っていた問題を修正。それぞれビルトインの関数のみで動くように変更。リンク先のGistを修正しています。この問題は試された方からの指摘によって気づきました。ありがとうございました。 2016/1/23 修正: (osc52-interprogram-cut-function)を間違えて(osc52-select-text-tmux) と書いていた部分を修正。後者はtmux限定のコピー用関数です。合わせてgistも修正しました。 背景 OSC52、またはPASTE64と呼ばれる制御文字列がある。これを(対応した)端末エミュレータが受け取ると、画面には何も表示しない代わりに、引き渡された文字列をOSのクリップボードに格納してくれる[1] [2]。これを活用することは、SSH先のホストでエディタ上に表示されているものをコピーしたいときに特に有効だ。端末上で普通に範囲選択をしてコピーする場合は、「見たままで」しかコピーできない。すなわち、画面バッファを超えた範囲はコピーできないし、画面を分割していたり、エディタで行番号を表示している場合はそのままコピーされてしまう。この状況は、

  • mecab
    mecab