Почему команда dired-do-shell-command не может работать с '.' или же '..'?
С помощью emacs
на cygwin
одна команда оболочки я использую очень часто из dired
использование буферов ! связан с dired-do-shell-command
является cygstart
.eg, чтобы открыть документ Word или проект Visual Studio или что-то еще.
Но удар !
в текущей записи каталога, .
, приводит к ошибке Cannot operate on
". или же ..'
,
Я хотел выяснить, прежде чем обойти его и разрешить выполнение команды в текущем и родительском каталогах. Есть ли причина для такого ограничения?
2 ответа
Это ограничение было снято, так как вопрос был задан.
В текущей стабильной версии Emacs (24.3) вы можете использовать dired-do-shell-command
на .
а также ..
dired-do-shell-command
звонки dired-get-filename
,
Если вы посмотрите документ dired-get-filename, то увидите
(dired-get-filename &optional LOCALP NO-ERROR-IF-NOT-FILEP)
В Dired, вернуть имя файла, упомянутого в этой строке.
...
Необязательный arg NO-ERROR-IF-NOT-FILEP означает лечить
.' and
..'как обычные имена файлов и возвращает nil, если в этой строке нет имен файлов. В противном случае в этих случаях возникает ошибка.
dired-get-filename
называется без NO-ERROR-IF-NOT-FILEP
аргумент