Документация Emacsутверждает, что вы можете использовать query-replace для наборов файлов, чтобы выполнить поиск/замену в нескольких файлах.
Это позволяет выполнять определенные операции, такие как посещение, запрос-замена и команды оболочки для всех файлов одновременно.
Я открыл свой конкретный набор файлов (т. е. через fileset-open) и попытался выполнить запрос/замену, используя оба:
M-%
и
M-x query-replace
но не могу заставить его работать ни с чем, кроме файла (буфера), в котором я сейчас нахожусь.
решение1
Чтобы запустить команду для всех файлов в наборе файлов, вам нужно использовать функцию filesets-run-cmd
, а команда должна быть одной из команд, указанных в filesets-commands
переменной. В частности, в вашем случае вы должны запустить M-xfilesets-run-cmd
Query Replace.
(filesets-run-cmd &optional CMD-NAME FILESET MODE)
Запустите CMD-NAME (см. `filesets-commands') для FILESET.
filesets-commands
Команды для запуска на наборах файлов. Ассоциативный список имен, функций и список аргументов (или функция, которая возвращает один) для запуска на файлах наборов файлов.