È possibile rimuovere manualmente le partite in modalità grep?


9

Dopo aver eseguito (grep)il buffer grep appare con le corrispondenze. Alcune delle partite non sono rilevanti e sarebbe bene rimuoverle manualmente. In questo modo posso usare il buffer grep per contenere solo quelle corrispondenze che sono rilevanti per la presente indagine.

È possibile?

Risposte:


10

Assolutamente. Ed è estremamente utile farlo. M-x flush-linese M-x keep-linessono i tuoi amici, così come solo C-kecc.

(La prima cosa che devi fare è ovviamente C-x C-qrendere il buffer scrivibile.)


Se si utilizza libreria Grep + ( grep+.el) allora avete questi comandi, che rimuovono le righe di commento e di commutazione tale rimozione: grepp-remove-comments, grepp-toggle-comments, che sono legati in buffer grep per ;e M-;, rispettivamente.

(Grep + ti dà anche comandi che rendono facile avere più buffer grep: +( grepp-new-buffer), b( grepp-choose-buffer) e r( grepp-rename-buffer-to-last).)


Esistono anche altri buffer che sono di sola lettura per difetto e che a volte può essere utile utilizzare C-x C-qper modificarli, in particolare (IMHO) *Messages*, *Help*e *Colors*(da M-x list-colors-display). Info utilizzava anche un comando che ti consente di modificare il nodo corrente.

Purtroppo (IMHO), Emacs si è generalmente allontanato da tale uso, rendendolo più difficile. Ad esempio, *Help*e *Messages*tamponi ora tasti definiti nelle rispettive modalità, il che significa che per modificarle normalmente è necessario o (1) cambia ad un altro modo o uso (2) C-qper poter inserire alcuni caratteri.


1
Andrò al punto di dire che questa risposta mi ha cambiato la vita.
cammil

;-) ............
Estratto il

0

Se sei un utente malvagio, puoi avere un tipo di legame zww 'read-only-mode, quell'interruttore read-only-map. Disabilita read-only-modee quindi usa la evil-deletelinea (es dd.). Naturalmente questo non rimuove automaticamente tutte le righe come flush-lines, tuttavia, se si desidera rimuovere un'intera regione senza usare espressioni regolari complesse, allora questo è il tuo amico.


0

winnow.el offre una pratica piccola modalità secondaria progettata proprio per questo scopo, destinata all'uso in compilation-modebuffer (o derivati, che include grep-mode).

Consente associazioni di tasti equivalenti flush-linese keep-linese si occupa della sola lettura del testo per te.

Key   Function
x     winnow-exclude-lines
m     winnow-match-lines
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.