Emacs может вызывать shell и выполнять команды - могут ли они работать с буферами Emacs? - PullRequest
0 голосов
/ 25 августа 2010

Я использую Alt! (Alt-Bang) много в Emacs. Одна из важных вещей, для которых я использую это

Alt-! cat $logfile | grep 'this' # show me one kind of event

или иногда

Alt-! cat $logfile | grep 'this' | wc -l # count that one event's occurrences

Две вещи:

1) В этом приглашении нет табуляции: почему нет?

2) Что если вместо $ logfile я хочу просканировать один из буферов Emacs?

Ответы [ 2 ]

3 голосов
/ 25 августа 2010

Чтобы просканировать буфер Emacs, используйте M-| вместо M-!: он передает регион в качестве входных данных для команды.Используйте M-1 M-|, если вы хотите, чтобы выходные данные команды заменили регион.

Для конкретной команды, которую вы упоминаете, используйте M-x grep, если вы хотите увидеть все совпадения.Или вы можете открыть его и посмотреть совпадения с M-x occur.

1 голос
/ 25 августа 2010

Alt-| делает это команда-команда-на-регион

с (ny) числовым префиксом (например, C-u 1 Alt- |), область заменяется результатом, в противном случае это появляется в новом буфере

...