2013-10-11 2 views
5

Я использую IM, который не поддерживает просмотр предыдущей истории чата, и я не могу изменить свой IM. Поэтому мне приходится копировать чат в текстовый файл каждый раз.Подчеркивание строк в emacs

Я использую Emacs.Is есть способ, которым я могу выделить строки, содержащие имена участников, как показано ниже?

===> **[Vivek Kumar]** 
Hi, how are you doing! 
===> **[Mr X Y Z]**  
fine 
===> **[Vivek Kumar]** 
sdfksd;fks; 

EDIT 1:

Раньше, когда я бы доступ к Gvim, я хотел бы использовать highlight.vim плагин.

ответ

9

Emacs поддерживает выделение линий или фраз. Вы можете использовать один из highlight-lines-matching-regexp, highlight-phrase, или highlight-regexp. Я уверен, что есть и другие.

Чтобы попробовать это, вставьте текст в редактор, нажмите ESC-x (или Alt-x тоже может работать), чтобы войти в «мини-буфер» в нижней части окна редактора и ввести одну из приведенных выше команд.

Например, я попробовал: highlight-lines-matching-regexp и ввел в регулярное выражение «\[.*\]» и сделал его совпадающим с именами в вашем примере. Вот скриншот:

Just after running highlight-lines-matching-regexp

Вы можете настроить это выражение в соответствии с вашими потребностями. Некоторые ссылки на регулярные выражения в Emacs:

Конечно, вы можете также использовать highlight-phrase и просто выделить простую строку текста (вместо того, чтобы возиться с регулярные выражения).

Вот тот, где я побежал highlight-phrase и вошел в две отдельные имена и дали им различные цвета (hi-yellow и hi-red):

After running highlight-phrase

Наконец, вы можете затем запустить unhighlight-regexp, чтобы очистить выделение.

+0

Удивительно, вы научили меня чему-то там! –

+0

@scorpiodawg Большое спасибо! – dearvivekkumar

+0

@dearvivekkumar Добро пожаловать :) Я обнаружил эту функцию, когда мне когда-то приходилось сканировать большой текстовый файл и искать в нем одну повторяющуюся строку. Кроме того, вот хороший способ открыть функцию в emacs: «ESC-x apropos» и ввести слово, например 'highlight', и он расскажет вам о функциях, в которых есть это слово. – scorpiodawg

Смежные вопросы