これは非常に簡単かもしれませんが、私はEmacs(22.1.1)で遊んでいて、クリップボードにテキストを貼り付けることができません Control-Y。
組み込みのEmacsを使用している場合は、ターミナルでEmacsを実行しています。 「クリップボード」は、ウィンドウシステムの機能です。ターミナルモードのEmacs(-nw
)は、ウィンドウシステム固有のAPIにはアクセスしません。これは、ターミナルで動作するように設計されたほとんどのコマンドラインツールに当てはまります。
他の人が示唆したようにEmacsをアップグレードし、グラフィカルモードで実行する必要があります。 Mac OS XでEmacs 24を使用する場合、必要な動作はデフォルトです。
ターミナルでこれを行いたい場合、 this hackはクリップボードを機能させます。
(defun copy-from-osx ()
(Shell-command-to-string "pbpaste"))
(defun paste-to-osx (text &optional Push)
(let ((process-connection-type nil))
(let ((proc (start-process "pbcopy" "*Messages*" "pbcopy")))
(process-send-string proc text)
(process-send-eof proc))))
(setq interprogram-cut-function 'paste-to-osx)
(setq interprogram-paste-function 'copy-from-osx)
M-x clipboard-yank
コマンドを使用してみてください。テキストをクリップボードにコピーする場合は、M-x clipboard-kill-region
にする必要があります。
これはLinuxとWindowsで動作しますが、Macでも同じだと思います。
私は通常、Shift + Insertを使用してemacsバッファーに貼り付けますが、キーボードにこれらのキーがあるかどうかはわかりません。
http://blog.binchen.org/?p=589 を参照してください
コードは次のとおりです。
(require 'simpleclip)
(defun copy-to-clipboard ()
(interactive)
(let ((thing (if (region-active-p)
(buffer-substring-no-properties (region-beginning) (region-end))
(thing-at-point 'symbol))))
(simpleclip-set-contents thing)
(message "thing => clipboard!")))
(defun paste-from-clipboard()
"Paste string clipboard"
(interactive)
(insert (simpleclip-get-contents)))
コードはsimpleclipを使用します( https://github.com/rolandwalker/simpleclip )
Simpleclipでは、Mac/Linux/Cygwin whichにコマンドラインツールをインストールする必要があります。そのため、グラフィックサポートのないemacsでもクリップボードにアクセスできます。
このソリューションは、Emacsのすべてのバージョン、OSで動作します。サーバーがXフォワードを有効にしている場合、リモートsshでも機能します。完全なコマンドはssh -X -C -c blowfish-cbc,arcfour [email protected]
)
Windows
?私が持っています M-ins
にバインドh-insert-x-selection
、私は次のように定義しています:
(defun h-insert-x-selection () (interactive)
(insert (x-selection 'CLIPBOARD)))
(global-set-key [(meta insert)] 'h-insert-x-selection)
XEmacs
では、私が持っている場所とは異なります
(global-set-key [(shift insert)] 'x-insert-selection)
変だね。
私はcommand-Vを使用していますが、毎回動作します。
ターミナルウィンドウにフォーカスすると、command-Vを介して貼り付けたものはすべて、ターミナルに送信される個別のキーストロークになります。
Mac OS X 10.5(Leopard)とemacs 22.1.1を使用しています。
OS suse 12.2-emacsのデフォルトバージョン24.2-15.8.2(x86_64)は、ctrl-yによるクリップボードからの貼り付けを無視しました