Использование универсальных ctags, как я могу пометить переменную, которая ссылается на весь файл?

90
8

Используя Universal Ctags, я пытаюсь пометить компонент Ember.js, поэтому его имя ссылается на то, где компонент определен.

Проблема заключается в том, что Ember использует имя файла компонента как "определение".

Например, в template.hbs:

{{#example-component}}
Some text
{{/example-component}}

Этот компонент, example-component, будет определен на пути:

/app/components/example-component.js

Это единственное место, где, к сожалению, определен example-component имени переменной. Он не определен непосредственно в коде где-нибудь еще.

Кажется, что Ctags обрабатывает объявление традиционной переменной просто так, как в let example-component = {...}. Но я не знаю, как сообщить ctags, что компоненты Ember определяются их именем, а не непосредственно в коде.

Есть ли способ написать определение ctags, которое рассматривает имена файлов для переменных?

спросил(а) 2021-01-19T18:14:51+03:00 8 месяцев назад
1
Решение
90

Я сделал прототип для создания тегов, определенных их именем в https://github.com/universal-ctags/ctags/issues/1680. Вы можете рассказать о своем требовании ко мне. Чтобы реализовать нужную функцию, необходимо указать шаблон. Парсер в ctags использует patter для обнаружения того, что входной файл js является компонентом Ember.js или нет.

ответил(а) 2021-01-19T18:14:51+03:00 8 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема