Emacsで書いた内容をブラウザやメモ帳にコピーペースト、

逆にブラウザの内容をコピーしてEmacsのバッファにペーストしたい

ということがちょくちょくある。


Emacsはkillという専用の領域にテキストデータをコピー(実際にはkill ring)するらしく、

他のアプリでテキストデータを共有することができない


そこで、

Emacsでクリップボードを使うために設定しなければいけないらしい。


というわけで、設定ファイル(私はinit.elに書いてる)を開いて、


init.el

(cond (window-system
(setq x-select-enable-clipboard t)
))

を追加して再起動。


早速Emacsを起動して、やってみる


emacs_clipboard


Emacs(奥)のバッファで書いたテキストをM-wでコピーして、

メモ帳(手前)を開きctrl + Vで貼り付けることができた!




コピペできないという厄介な問題が終わったので、

日常業務にでも戻ろうかと思い、端末からemacs -nwでEmacsを開いて、

さっきと同じ様にEmacsからブラウザにコピペしようかなとやってみたけど動かない。

最高の開発環境を求めて


調べてみると、

端末からEmacsを実行した場合はクリップボードが使えないらしい。


なのでいろいろと調べてみると、

端末用(X)のコピペのxclipを使えば解決するらしいとのことで、

xclipをインストールしてみた。


端末を開き、

sudo apt-get install xclip

を実行。

※これは必要ないかもしれない。検証していない


次に、

EmacsのELPAでxclipをインストール


Emacsを開き

M-x package-list-packages

でELPAのパッケージマネージャを開き、xclipをインストール


インストールが終わったら、Emacsの設定ファイルを開き

init.el

(require 'xclip)
(xclip-mode 1)

を追加して、再起動。


zshからemacs -nwでEmacsを起動してコピペを試してみる。


zsh_emacs_clip


いけた!


これで解決…


と思いきや、

zshからtmuxを開き、tmuxからEmacsを開いた場合はxclipが動いてくれない…

zshの起動と同時にtmuxも起動してほしい


何か専用の設定でもあるのかな…

tmuxの設定周りを見てみるか…