我在远程机器上使用Emacs,它没有通过putty的X-window。问题是外部剪贴板的复制/粘贴( Shift + Ins )非常慢。
在Vim中,当我需要粘贴时有一个选项set paste
,那么Emacs是否有类似的功能?
我目前正在尝试一些解决方法:在粘贴之前,我将主模式更改为fundamental-mode
,然后禁用模式行中显示的次模式,以使副作用尽可能小。但是它仍然比emacs -Q
启动时慢得多。
在显示区域(迷你缓冲区)中,有以&#34开头的消息;匹配..." (括号等)。
那么如何妥善解决?
答案 0 :(得分:5)
我不知道Emacs的这种“粘贴模式”。您可以从以下内容开始(新版本,使用单独的缓冲区,以便当前缓冲区的* -change函数仅在结束时调用一次):
(defvar ttypaste-mode nil)
(add-to-list 'minor-mode-alist '(ttypaste-mode " Paste"))
(defun ttypaste-mode ()
(interactive)
(let ((buf (current-buffer))
(ttypaste-mode t))
(with-temp-buffer
(let ((stay t)
(text (current-buffer)))
(redisplay)
(while stay
(let ((char (let ((inhibit-redisplay t)) (read-event nil t 0.1))))
(unless char
(with-current-buffer buf (insert-buffer-substring text))
(erase-buffer)
(redisplay)
(setq char (read-event nil t)))
(cond
((not (characterp char)) (setq stay nil))
((eq char ?\r) (insert ?\n))
((eq char ?\e)
(if (sit-for 0.1 'nodisp) (setq stay nil) (insert ?\e)))
(t (insert char)))))
(insert-buffer-substring text)))))
答案 1 :(得分:1)
如果您喜欢更多经过测试和使用的东西:
;; enable clipboard interaction between emacs and system
(setq x-select-enable-clipboard t)
它对我有用。一个简单的C-y,你很高兴! 希望有所帮助。