Чи можна видаляти сірники вручну в режимі grep?


9

Після запуску (grep)grep буфера з'являється з сірниками. Деякі сірники не стосуються, і було б добре видалити їх вручну. Таким чином я можу використовувати греф-буфер, щоб утримувати лише ті відповідність, які стосуються поточного розслідування.

Чи можливо це?

Відповіді:


10

Абсолютно. І це надзвичайно корисно робити. M-x flush-linesі M-x keep-linesваші друзі, а також просто C-kі т.д.

(Перше, що вам потрібно зробити, це звичайно C-x C-qзробити буфер для запису.)


Якщо ви використовуєте бібліотеку Grep + ( grep+.el) , то у вас є ці команди, які розкоментувати рядки і перемикання такого видалення: grepp-remove-comments, grepp-toggle-comments, які пов'язані в Grep буферів ;і M-;, відповідно.

(Grep + також дає команди, які полегшують наявність декількох греферних буферів: +( grepp-new-buffer), b( grepp-choose-buffer) та r( grepp-rename-buffer-to-last).)


Є також і інші буфери , які призначені тільки для читання за замовчуванням і які іноді можуть бути корисні для використання , C-x C-qа потім редагувати їх, зокрема , (ІМХО), *Messages*, *Help*і *Colors*M-x list-colors-display). Інформація використовувалась навіть для команди, яка дозволяє редагувати поточний вузол.

На жаль (IMHO), Emacs взагалі відійшов від такого використання, що робить його складніше. Наприклад, *Help*і *Messages*буфери тепер визначають клавіші у відповідних режимах, а це означає, що для їх редагування вам потрібно (1) перейти на інший режим, або (2) використовувати, C-qщоб мати змогу вставляти певні символи.


1
Я піду так далеко, щоб сказати, що ця відповідь змінила моє життя.
cammil

;-) ............
Дрю

0

Якщо ви злий користувач, ви можете мати такий прив'язку, як zww 'read-only-modeпереключення read-only-map. Вимкніть read-only-modeта використовуйте evil-deleteрядок (тобто dd). Звичайно, це не видаляє автоматично всі рядки, як flush-lines, однак, якщо ви хочете видалити цілий регіон без використання складних регулярних виразів, то це ваш друг.


0

winnow.el забезпечує зручний маленький мінорний режим, призначений саме для цієї мети, призначений для використання в compilation-modeбуферах (або похідних, що включає grep-mode).

Він дозволяє ключі прив’язки, еквівалентні flush-linesта keep-lines, і піклується про доступність тексту для читання лише для вас.

Key   Function
x     winnow-exclude-lines
m     winnow-match-lines
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.