ソースコードのどこにでも、行の左側にある種のインディケータを配置したい
#TODO:コメント
// TODO:いくつかのコメント
インジケーターは単なるマークである可能性があり、emacsに表示される行番号をすでに有効にしています。
ソースコードのどこにでも、行の左側にある種のインディケータを配置したい
#TODO:コメント
// TODO:いくつかのコメント
インジケーターは単なるマークである可能性があり、emacsに表示される行番号をすでに有効にしています。
このコマンドはあなたが望むようなことをします。
(defun annotate-todo ()
"put fringe marker on TODO: lines in the curent buffer"
(interactive)
(save-excursion
(goto-char (point-min))
(while (re-search-forward "TODO:" nil t)
(let ((overlay (make-overlay (- (point) 5) (point))))
(overlay-put overlay 'before-string (propertize "A"
'display '(left-fringe right-triangle)))))))
これをすべてのファイルに適用するには、次のファイルに追加します。'find-file-hooks
(add-hook 'find-file-hooks 'annotate-todo)
または、特定のモード専用にする場合は、それらのモードフックに追加できます。
Fringes、'display'プロパティ、Overlays、そして最も重要なのはbefore-stringプロパティを参照してください。
注:コードは2010年2月27日に更新され、現在のテキストにテキストプロパティを直接追加する代わりにオーバーレイを使用するようになりました。
私はemacs-fuに関するこの投稿で説明されているアプローチが好きです。これは、必要なモードのフォントロック設定にTODO / FIXME/...を追加します。Treyのアプローチとは対照的に、これは入力時に単語を強調表示する必要がありますが、Treyのアプローチは、ファイルを開いたときにのみ単語を強調表示する必要があります(またはこれを間違えますか)。
とにかくそれはあなた次第です。優れたグーグル検索はおそらくさらに多くのアイデアをあなたに与えるでしょう:http ://www.google.com/search?q = emacs + highlight + todo
更新:あなたの質問はすでに回答済みです:Emacs、単語のすべての出現を強調表示