【问题标题】:highlight selected text in emacs (org-mode)突出显示 emacs 中的选定文本(组织模式)
【发布时间】:2013-11-16 09:00:52
【问题描述】:

我正在寻找一种在 Emacs 中永久突出显示选定文本的方法,就像您在 PDF 中使用标记所做的那样。我正在使用组织模式。

我尝试在 Google 上搜索,但很惊讶我没有找到任何东西。

【问题讨论】:

  • 这不是编程问题,是吗?因此,它应该发布在 superuser.com 上,而不是这里。
  • 听起来合乎逻辑,但大多数关于 emacs 的问题都不是这样的吗?这个网站上有很多安静的人。
  • 此外,emacs 可用于编程任务。但是使用 org-mode 并不是一项编程任务,或者至少不是特定于编程的。
  • 如果 emacs 不提供这个功能,也许我会添加它;)
  • 嗯。阅读 SOon-topic page(再次),我不认为这个问题是题外话。问题是关于程序员常用的软件工具,据我所知,这与Emacs的可编程性有关。

标签: emacs org-mode


【解决方案1】:

在 org-mode 中,您可以使用 *word* 获取粗体的 word,使用 /word/ 获取斜体的 word,使用 _word_ 获取下划线的单词。

您可以通过Options->Customize Emacs->Specific Option重新定义强调字符,然后输入org-emphasis-alist

从某种意义上说,这是永久性的,如果您保存并终止缓冲区并将文件重新加载到 emacs 中,您将再次获得相同的高亮显示。

另一种方法是使用丰富模式。输入M-x enriched-mode。如果font-lock-mode激活,您可以使用Edit->Text Properties->Face->Bold 之类的东西,并且格式在文本文件中是永久的。 很明显,这会在文本文件中留下痕迹。如果您通过M-x find-file-literally 加载文件,您可以看到这些痕迹。

请注意,为了在 X11 端口(我认为也是在 win32 端口)中更容易格式化,您可以通过单击顶部的虚线来分离菜单(参见下图右侧的两个这样的分离的菜单)。

font-lock-mode 使用来自font-lock-keywords 等参数的规则自动重新字体化文本并删除所有其他字体化(这些参数通常由主模式设置)。因此,如果激活了font-lock-mode,文本属性将不起作用。 org-mode 使用font-lock-mode,来自Edit->Text Properties->Face->Bold 的文本属性不能与org-mode 一起使用(相应的菜单项已停用)。您可以使用 C-h m 检查font-lock-mode 是否处于活动状态。如果列出了Font-Lock,则它处于活动状态。或者,如果 font-lock-mode 处于活动状态,您可以查询 C-h v font-lock-modet

【讨论】:

  • 答案越来越好:)
  • 确实如此。您可能想查看this Stack Overflow question
  • 很高兴知道丰富模式,但是在M-x enriched-mode之后,我的Emacs的Edit->Text Properties->Face...中的菜单无法启用,它是灰色的,无论是正常的emacs还是emacs -q ,我用谷歌搜索,但找不到任何东西。
  • @CodyChan 与emacs -Q 一起工作对我来说很好。如果您的load-path 中存在自定义文件site-start.el,则命令emacs -q 会加载该自定义文件。我的 emacs 版本是:GNU Emacs 24.3.1 (i686-pc-linux-gnu, GTK+ Version 3.10.7) of 2014-03-07 on toyol, modified by Debian.
  • @Tobias 即使在emacs -Q emacs-version:GNU Emacs 24.4.1 (i686-redhat-linux-gnu, GTK+ Version 3.14.5) of 2014-11-19 on buildvm-13.phx2.fedoraproject.org,操作系统:Fedora 21(3.17.4-301.fc21.i686+PAE) 中也不适合我。我从 Gnus 页面下载了 tar 文件并使用 -Q 解压并执行二进制文件,但效果不佳。
【解决方案2】:

你可以使用来自hi-lock-mode的一些命令:

  • highlight-regexp 会要求您提供一个正则表达式以突出显示和一种颜色(有一些背景和前景的组合)
  • highlight-lines-matching-regexp 言出必行
  • 您可以使用hi-lock-mode 启用或禁用它

您可以使用hi-lock-write-interactive-patterns (M-s h w) 永久保存它们。 Emacs 会在缓冲区的注释行中写入一些 lisp。

在此处查看更多技巧: https://www.gnu.org/software/emacs/manual/html_node/emacs/Highlight-Interactively.html

http://www.masteringemacs.org/articles/2010/10/13/highlighting-by-word-line-regexp/

享受吧!

【讨论】:

    猜你喜欢
    • 2013-07-28
    • 2010-09-24
    • 2012-04-17
    • 1970-01-01
    • 1970-01-01
    • 2014-05-24
    • 2022-12-03
    • 2019-12-27
    • 1970-01-01
    相关资源
    最近更新 更多