如何在Emacs中实现渐逝文本?

时间:2014-02-05 11:51:53

标签: templates emacs

某些文字处理软件(例如Apple Words)具有支持渐逝文本的有趣功能。

此类文本用作模板文件中的占位符:如果我从模板中启动新的报告,则某些条目会填充 evanescent text ,当文本消失时插入在与文本或其边界对应的区域内。此文本也以特殊外观标识。

如果可能的话,如何在Emacs中实现 evanescent text ?它可能足以在富文本或降价缓冲区中支持它。

1 个答案:

答案 0 :(得分:5)

以下代码段可能会给您一个想法。

(defun remove-evanescent (oldpos newpos)
  "We need that later on to remove evanescent text. We could also remove the superfluous space here."
  (remove-text-properties newpos
              (next-property-change newpos)
              '(display nil point-entered nil)))

;; An elisp-snippet to be tried in the *scratch* buffer:
(insert (propertize " " 'display "Help"
            'point-entered 'remove-evanescent))