在不创建主题的情况下更改emacs中特定文本的颜色
是否可以选择正在编辑的文本并更改其颜色?我知道可以创建一个颜色主题来为特定类型的文本着色(例如,特定编程语言中的着色函数),但是是否可以在不创建主题的情况下对特定emacs文档中选定的文本进行一次性颜色更改?提前感谢。尝试在不创建主题的情况下更改emacs中特定文本的颜色,emacs,terminal,Emacs,Terminal,是否可以选择正在编辑的文本并更改其颜色?我知道可以创建一个颜色主题来为特定类型的文本着色(例如,特定编程语言中的着色函数),但是是否可以在不创建主题的情况下对特定emacs文档中选定的文本进行一次性颜色更改?提前感谢。尝试设置背景色,设置前景色,设置光标颜色 但更改不会与文档一起保存 注: 当我尝试这些功能时,除非我浏览菜单,否则它们不会设置区域的颜色。在任何情况下,主题都不允许您指定任意文本的颜色。它仅描述字体锁定所使用的一组面 要将面应用于任意文本,请选择文本,然后选择M-:(添加文本属性(
设置背景色
,设置前景色
,设置光标颜色
但更改不会与文档一起保存 注:
当我尝试这些功能时,除非我浏览菜单,否则它们不会设置区域的颜色。在任何情况下,主题都不允许您指定任意文本的颜色。它仅描述字体锁定所使用的一组面 要将面应用于任意文本,请选择文本,然后选择M-:
(添加文本属性(区域开始)(区域结束);(面字体锁定警告面))
有关如何创建面,请参见elisp手册的“面”部分
Emacs还附带了
hi lock
包,它可以高亮显示regexp或包含regexp的行。请参阅您可能想查看的内容。如果您所在的缓冲区不受字体锁定控制,则可以使用“facemenu”
例如,高亮显示一段文字,然后用鼠标按C-mouse-2
。然后可以选择一个面(文本属性与名称的某种组合)。您还可以随机选择圆形或背景色
如果您的Emacs特别老,我似乎记得
M-g
上类似的内容,那么M-x突出显示短语如何?
?请参见(它不必是临时的)
您可以通过鼠标滑动文本,或将其与regexp匹配,以及其他几种方式来“着色”文本。尤其是图书馆,它可以让你在很多方面给文本添加颜色。我知道六年是一段相当长的时间,但我偶然发现了这个问题,经过大量研究,我没有发现任何东西比我最终为自己挖掘的东西更客观 要更改缓冲区中的前200个字符的颜色,请执行以下命令:
(put-text-property 1 200 'face (cons 'foreground-color "red"))
如果您需要在emacs中执行此命令的帮助,以下是多种可能性中的一种:
我很确定这不会起作用,因为
添加文本属性
不是交互式的。可能与M-:
(eval
)一起使用。选择文本,您的意思是在文本开头设置一个标记,然后将光标移动到选择的末尾吗?@user534398这确实是他的意思。不过,您可能需要仔细阅读手册的这一部分,因为这限制了您得到的面孔。@CharlieMartin是的,当然,M-:。我只是假设他真的想要hi lock
。好吧,我已经尝试了很多东西,并且越来越接近我的解决方案。最终,我对emacs还是非常缺乏经验。我有一个非常初级的问题:M-:代表什么?我知道M-x表示按住meta键并按下x,但我对M-:以及这意味着什么感到困惑。我试着按住meta键并键入冒号,但收到了以下消息:“No comment syntax defined use:”和一个提示。有人能解释一下吗?非常感谢!我能够让它工作,但只适用于整个文档。也许我没有成功地选择一个地区?我试着在我想要编辑的区域的开始处设置一个标记,然后将光标移动到我想要编辑的区域的末尾,但是没有成功。也没有用鼠标突出显示。有什么建议吗?不幸的是,这似乎不是永久性的,所以这是我要接受的另一个问题,但我意识到这在技术上只是改变了文本的背景颜色,而不是文本本身。也许没有一种方法可以快速轻松地完成这项工作?C-mouse-2允许我改变前景色,但只是暂时的。一旦退出emacs,前景颜色更改将丢失。我怀疑这是预期的,因为没有向文件中添加任何内容来“保存”前景色更改。如果这不起作用,请尝试使用M-x字体锁定模式RET来禁用(切换)字体锁定模式,该模式将在启用时关闭所有颜色和面。此外,(cons的前景色“红色”)也被弃用,取而代之的是(列表:前景色“红色”)。例如,(列表:前景色“红色”:背景“橙色”:倾斜“斜体”)