我正在编写一个模式,以更轻松地处理一些日志文件。前几列都是相同的元数据,我想省略这些内容的显示。隐藏这些信息的最佳方法是什么?是逐行查找并将每行的该部分标记为“不可见文本属性”吗?
这些日志文件只会被显示,不会被编辑。
.emacs
文件中:(add-hook 'text-mode-hook (lambda ()
(font-lock-add-keywords nil '(("\\[.*\\]" (0 '(face default display "meta") append))) t)
(push 'display font-lock-extra-managed-props)))
这将显示匹配使用正则表达式"\\[.*\\]"
作为meta
的元数据。
[01/01/2012 14:00 - Message] Hello World!
将会暂时成为
meta Hello World!
只需用匹配您元数据的正则表达式替换即可。
希望这可以帮助到你!
我会尝试使用一个字体锁定关键字,添加“invisible”属性。以下是未经100%保证的未经测试的代码:
(font-lock-add-keywords nil
'(("^.............." (0 '(face nil invisible t)))))