font-lock相关内容
一些背景知识,我对 Emacs Lisp 很熟悉,并且已经写了很多行.但是我从来没有写过一个主要模式,所以我对字体锁定机制的工作原理还很陌生. 对于我当前的项目,我想向 html-mode 添加内联 javascript 和 css 突出显示.目前,我使用 MMM 模式执行此操作,但它体积庞大且我不使用它的其他功能,因此我只想制作一个小模式,甚至只是一个可以添加到 的 hacksgml-mo
..
如何更改 Emacs 用于基于每种模式设置文本样式的默认字体? 例如,假设我已经对我拥有的面部自定义感到满意,其中包括默认的固定宽度字体.但是,在一种特定模式下(例如,markdown-mode.el),我希望默认字体为可变宽度. 很容易为markdown-mode设置独特的标题、链接等样式:只需将光标放在样式文本和Mx describe-face上,然后单击链接进行自定义. 但是,
..
我提出这个问题是因为我认为问题和可能的答案都可以帮助编写Lisp代码的Emacs用户定义 font-lock-keywords 。我提供一个我认为有帮助的答案。我对其他答案也很感兴趣。 该变量的值是一个表达式列表,每个表达式都可以指定一个或多个要匹配的模式或执行匹配的函数,一个或多个用于突出显示匹配文本的面孔。 font-lock-keywords 值的可能性非常复杂。 (描述此内容的文档是
..
我想在minibuffer中显示一个彩色字符串的文本,但是当我使用'message'功能时,文本属性被删除。解决方案 适用于我: (消息“%s”(正确的“foo” '(:foreground“red”))) 你可能有 (propertize ...)),它将属性化的字符串解释为格式控制字符串,因此剥离了其属性。
..
以下代码将通过将一个progn表单传递给字体锁关键字,直观地将“hello world”替换为“HW”。 (font-lock-add-keywords nil'((“\\(hello world \\)” (0(progn(put-text-property(match-beginning 1) (匹配结束1) '显示“HW”) nil))))) 我查看了 Ch v
..
我想要控制超过三个级别的突出显示然而,似乎乳胶模式可能被限制在三(3)级。我说这是因为Emacs在尝试第四级时抱怨 - 重新显示时出错:(jit-lock-function 1)signaled(wrong-type-argument listp prepend)。以下仅仅是一个试图控制四(4)个级别的例子,它给出了上面列出的错误信息。 defvar lawlist-face-a(make
..
我正在寻找一种以纯文本突出显示或使用引用文本的不同面孔的方法。似乎应该有一个复杂/增强的文本模式,但我找不到它。 如果没有一个简单的解决方案,可以让我知道我应该在哪里开始编写一个函数? 非常感谢! 从19.xx开始使用Emacs的人物 解决方案 我不知道已经做到这一点的主要模式,但是您可以使用define-derived-mode轻松使用 (定义派生模式富文本模式文
..
如果我只是 (set-face-foreground'font-lock-comment-face“red”) (set-face-foreground'font-lock-string-face“green”) 在我的.emacs中,emacs对Python字符串和Python文本字符串使用相同的字体锁。 我应该添加到我的.emacs,以便注释,字
..
有些背景,我对Emacs Lisp感到满意,并且写了很多行。然而,我从来没有写过一个主要的模式,所以我对字体锁定机制的作用是非常新的。 对于我目前的项目,我想添加内联的javascript和css突出显示到 html-mode 。目前,我使用MMM模式,但它是庞大的,我不使用其他功能,所以我只想做一个小模式,甚至只是一个黑客,我可以添加到 sgml-mode-hook 只是做突出显示。
..
如何更改Emacs在每个模式下使用的风格文本的默认面孔? 例如,说我已经对脸好了我有自定义,其中包括默认的固定宽度字体。但是,在一个特定的模式( markdown-mode.el ,说),我想要默认的字体是可变宽度。 容易将标题,链接等唯一地标记为markdown-mode:只需将光标放在样式文本和 Mx describe-face 上,然后单击链接来定制它。 然而,默认面是如果
..