2013-10-11 9 views
5

Sto utilizzando un messaggio istantaneo che non supporta la visualizzazione della cronologia chat precedente né posso modificare il mio messaggio istantaneo. Quindi devo copiare la chat in un file di testo ogni volta.Evidenziazione di righe in emacs

Sto usando Emacs.Is C'è qualche modo con il quale posso mettere in evidenza le linee che contengono i nomi dei partecipanti, come di seguito?

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

EDIT 1:

Prima, quando avevo accesso a gvim, vorrei utilizzare il plugin highlight.vim.

risposta

9

Emacs supporta l'evidenziazione di righe o frasi. È possibile utilizzare uno di highlight-lines-matching-regexp, highlight-phrase o highlight-regexp. Sono sicuro che ce ne sono anche molti altri.

Per provare questo, incollare il testo nell'editor, premere ESC-x (o Alt-x potrebbe funzionare anche) per immettere il "mini-buffer" nella parte inferiore della finestra dell'editor e immettere uno dei comandi sopra.

Ad esempio, ho provato: highlight-lines-matching-regexp e inserito il regexp "\[.*\]" e ha fatto corrispondere i nomi nel tuo esempio. Ecco uno screenshot:

Just after running highlight-lines-matching-regexp

È possibile modificare questa espressione alle proprie esigenze. Alcuni collegamenti ad espressioni regolari in emacs:

Naturalmente si potrebbe anche usare highlight-phrase e solo evidenziare una semplice stringa di testo (invece di fare scherzi con regex).

Ecco quello in cui mi sono imbattuto highlight-phrase ed entrai i due nomi separati e dato loro diversi colori (hi-yellow e hi-red):

After running highlight-phrase

Infine è possibile eseguire unhighlight-regexp per cancellare l'evidenziazione.

+0

Incredibile, mi hai insegnato qualcosa lì! –

+0

@scorpiodawg Grazie mille! – dearvivekkumar

+0

@dearvivekkumar Prego :) Ho scoperto questa funzionalità quando ho dovuto eseguire una scansione di un grande file di testo e cercare una singola stringa ripetuta al suo interno. Inoltre, ecco un bel modo per scoprire la funzione in emacs: 'ESC-x apropos' e inserire una parola come' highlight' e ti dirà le funzioni che contengono quella parola. – scorpiodawg