概要
ずっと解決できなかった問題がようやく解決したので紹介します
emacs では Ctrl+k や region を選択したあとの Ctrl+w でコピーができます
それを Ctrl+y で貼り付けます
Mac のクリップボードにそれらの情報を共有することができ pbcopy や pbpaste というコマンドを使うことで共有することができます
が、macOS Sierra にアップグレードしたあとから、その機能が使えなくなり泣く泣く機能を無効にしていました
環境
- Mac OS X 10.12.3
- emacs 24.5.1
- reattach-to-user-namespace 2.5
reattach-to-user-namespace のインストール
ズバリこれをインストールすることで解決します
pbpaste と pbcopy が Sierra でも動作するために作られました
- brew install reattach-to-user-namespace
.emacs の編集
pbpaste と pbcopy を使う部分に reattach-to-user-namespace を噛ませます
(if (eq sysname 'darwin)
(progn
(defun copy-from-osx ()
(shell-command-to-string "reattach-to-user-namespace pbpaste"))
(defun paste-to-osx (text &optional push)
(let ((process-connection-type nil))
(let ((proc (start-process "pbcopy" "*Messages*" "reattach-to-user-namespace" "pbcopy")))
(process-send-string proc text)
(process-send-eof proc))))
(setq interprogram-cut-function 'paste-to-osx)
(setq interprogram-paste-function 'copy-from-osx)
)
(message "This platform is not mac")
)
よくわからんと言う場合はそのままコピペすれば OK です
あとは .emacs を再度読み込むか emacs を再起動してください
これで emacs でコピペした情報がクリップボードにも共有されるようになります
最後に
知らぬ間に reattach-to-user-namespace なんという素晴らしいツールが出ていたとは、、
とりあえずこれでまた快適な emacs ライフが過ごせそうです
0 件のコメント:
コメントを投稿