Emacs のコピー操作をちょっとだけ楽にする


コードの一部をコピーしたり、ある単語をコピーしたりって、1日に何十回としますよね。
その度に、範囲選択(set-mark)してコピー(kill-ring-save)して....とするのは面倒です。

そこで、コピー操作の手順をちょっとだけ減らせる pakcage を作ってみました。
本体は GitHub/cool-copy に置いておきます。

これは何?

この package を導入することで、以下のことができます

範囲選択をしていない場合

  • カーソル下の symbol をクリップボードにコピーします
  • コピーした内容を、 posframeminibuffer に表示します

範囲選択をしている場合

  • 通常と同じく、選択範囲をクリップボードにコピーします
  • 「region copied!」と posframeminibuffer に表示します

何が嬉しいの?

従来、ある単語をコピーする際には「選択」して「コピー」するという2手順必要でした。
この package により、単語をコピーする際には「選択」の手順が省けます。

省略できる手順は少ないですが、このような操作は1日に何十回と行うので、実際にはかなりの手間を節約できると思います。

セットアップ

git clone 後に init.el に以下を記載してください

(add-to-list 'load-path "YOUR PATH")
(require 'cool-copy)

;; キーバインドの設定をおすすめします
(global-set-key [YOUR KEY] 'cool-copy)

使い方

  • コピーしたい symbole の上で M-x cool-copy か設定したキーバインドで実行
  • 範囲選択をして M-x cool-copy か設定したキーバインドで実行

カスタマイズ

コピー時のメッセージ表示方式を以下の3つから選択できます。

;; メッセージを minibuffer に表示します(デフォルト)
(setq cool-copy-show 'minibuffer)
;; メッセージを posframe で表示します
(setq cool-copy-show 'posframe)
;; メッセージを表示しません
(setq cool-copy-show nil)