ctags.exe и etags.exe возвращают Permission denied
Я имею ctags.exe
а также etags.exe
устанавливается через установщик scoop и приложение emacs.
Независимо от того, как я его запускаю, я всегда получаюPermission denied
вывод ошибок.
Будь то с правами пользователя CMD или администратора (вещь с повышенными разрешениями).
tomas@NUC8I7HVK D:\playground\c\milton\src
# ctags.exe .
.: Permission denied
$ C:\Users\tomas\scoop\apps\emacs\current\bin\ctags.exe .
.: Permission denied
Это используемая версия:
# ctags.exe -V
ctags (GNU Emacs 26.2)
Copyright (C) 2019 Free Software Foundation, Inc.
This program is distributed under the terms in ETAGS.README
Я бы сказал, что это Windows 10, хотя я не нашел никакой помощи в Интернете.
3 ответа
ctags.exe
включенный в Emacs для Windows, у меня не работает.
Я пробовал универсальные-ctags, которые действительно работают.
tomas@NUC8I7HVK D:\playground\c\milton\src
$ scoop search ctags
'extras' bucket:
emacs (26.3) --> includes 'ctags.exe'
universal-ctags (2020-03-12)
'main' bucket:
ctags (5.8)
tomas@NUC8I7HVK D:\playground\c\milton\src
$ scoop search universal-ctags
64-разрядная версия Windows 10
Вы не сказали, что не удалось создать файл тегов.
"Вы можете увидеть такие сообщения, как" Предупреждение: невозможно открыть файл с исходным кодом '...': Permission denied", пока etags создает файл тегов. Эти предупреждения можно игнорировать".
Я нашел обходной путь для использования etags в деревьях каталогов, которые могут вас заинтересовать. Вы можете запустить цикл for и использовать флаг -a для добавления к файлу TAGS следующим образом:
for /r %y in (*.c) do etags -a %y
Параметр /r в цикле for будет выполнять цикл for в каждом каталоге дерева.
Также можно сделать bat-скрипт:
for /r %%y in (*.c) do etags -a %%y
for /r %%y in (*.h) do etags -a %%y