如何在emacs中复制无源字体锁定的粘贴?

如何在emacs中复制无源字体锁定的粘贴?,emacs,colors,elisp,Emacs,Colors,Elisp,当您将文本从一个缓冲区复制到另一个缓冲区(M-w和C-y)时,它会使用字体锁定复制文本,当您粘贴文本时,它会使用缓冲区中的颜色显示,我复制了文本。是否可以更改此设置,使其显示为新缓冲区中的字体?在设置中使用此设置: (global-set-key (kbd "C-x C-r") (lambda()(interactive)(revert-buffer nil t))) 您需要执行C-x C-s C-x C-r。有关用户选项yank excluded properties和yank handle

当您将文本从一个缓冲区复制到另一个缓冲区(M-w和C-y)时,它会使用字体锁定复制文本,当您粘贴文本时,它会使用缓冲区中的颜色显示,我复制了文本。是否可以更改此设置,使其显示为新缓冲区中的字体?

在设置中使用此设置:

(global-set-key (kbd "C-x C-r") (lambda()(interactive)(revert-buffer nil t)))

您需要执行C-x C-s C-x C-r。

有关用户选项
yank excluded properties
yank handled properties
,请参阅文档。然后从yank的文档开始:
C-h f yank
。它告诉你:

When this command inserts text into the buffer, it honors the
`yank-handled-properties' and `yank-excluded-properties'
variables, and the `yank-handler' text property.  See
`insert-for-yank-1' for details.
注意,只需告诉
yank
不要粘贴属性,例如
face
font-lock face

另请参见Elisp手册,节点
拖动

我发现
(将文本属性(点)(标记)设置为零)
删除选定区域的颜色


我还想删除只读属性。但我不知道怎么做。(对不起,这是我的问题。)

我想你问错了。我问过关于字体锁的问题。这是正确的答案。你试过了吗?如果我不想保存文件呢。它会将文件恢复到以前的状态。我所有没有保存的更改都将消失。这就是为什么要保存并还原。我从来没见过要解决问题。您可以使用
字体锁定FontifBuffer
,也许这就是您想要的。在GNU Emacs 24.3.1中,还原缓冲区不会移除字体锁定,或者至少不会将文本颜色还原为默认颜色。我添加了
(添加到列表“yank excluded properties”字体)
(添加到列表“yank excluded properties”字体锁定面)
但是当我从一些源代码中拖动到基本模式时,我仍然有颜色。而且我在Emacs 24.2中没有用于
拖动已处理属性的文档