Emacs

A collection of 2 posts

Emacs

GUI 版 Emacs のフォントサイズをシュッと変える interactive function

2019年10月15日: さらに簡単に変更する、標準で可能な方法を追記をした。 Mac 上で GUI 版の Emacs を使っているが、フォントサイズを変更したくなることが時々ある。ターミナルで Emacs を使っているならば、ターミナルのフォントサイズを変更すればいいが、GUI 版の場合、set-face-attribute関数を使って変更しなければならない [1]。 そこで、フォントサイズを簡単に変更するための interactive function を書いた。以下のGistにあるスニペットを .init.el 等に追加すれば、M-x change-font-size でフォントサイズを変更できる。現在のフォントサイズも表示されるので分かりやすい。 Gist: mecab/change-font-size.el 以前使っていたビルドではツールバーにフォントサイズ変更のメニューがあったのだが、今使っているビルドでは無くなってしまって少し悲しい。 追記 標準で簡単なキーバインドで変えられるやんけ!!!しかもバッファごとに変更できるし! text-scaleは次のショートカットを覚えてしまうのがいいです。 次のどれか一つを覚えさえすればOKです。 C-x C-+

  • mecab
    mecab
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