При настройке emacs для проекта git я использую
git ls-files | xargs -d\\n etags
, который создает файл TAGS в текущем каталоге.Я часто хочу включить символы из другого проекта, поэтому я добавляю их с абсолютным путем:
etags -a /path/to/project/*.[ch]
Однако, когда у меня есть два git хранилища
git ls-files /path/to/git_project
не будет работать: git говорит мне, что путь находится вне текущего хранилища.Я мог бы зайти в него, но тогда пути, напечатанные на stdout, не относятся к файлу TAGS, поэтому emacs не найдет их.
Есть ли какой-нибудь элегантный способ решить эту проблему?Все, что приходит мне в голову, - это какая-то слишком сложная магия сценариев оболочки, которая добавляет префикс к каждой строке перед передачей в xargs ...