Vim подключается для работы с пользовательскими тегами HTML и SCSS - PullRequest
0 голосов
/ 06 мая 2018

Мой уровень Vim примерно промежуточный - я использую его около 10 лет, но на уровне "новичка" - найди файл, удали что-нибудь, добавь что-нибудь, сохрани и выйди. Теперь я решил сделать Vim моим единственным редактором кода. Я работаю с Ionic Framework (это Angular + SCSS), и у меня есть вопрос о некоторых полезных вещах:

  1. Есть ли способ добавить все нестандартные теги HTML в Syntastic? Он выделяет все ионные теги, такие как <ion-list>, <ion-button>, <ion-radio> и так далее. Если мои навыки в Google достаточно хороши, то нет полноценного плагина Ionic, который будет добавлять фрагменты, синтетические шашки и так далее.
  2. Есть ли способ найти и добавить классы из HTML в SCSS и из SCSS в HTML? Я имею в виду, что если я напишу .my-very-important-class в файле SCSS, а затем перейду к файлу HTML (который находится в том же каталоге с тем же именем и отличается от .html или .scss) и в атрибуте class="" начнем вводить "мой "Я получу предложение автозаполнения для этого класса. Это реально сделать или, может быть, кто-то уже сделал?
  3. Существует также основной файл для приложения, который называется variables.scss. Мне нужно, чтобы этот файл был отсканирован и соответствовал цветам (в этом файле есть цветовая секция, где я могу поместить все цвета, мне понадобится приложение и файл .scss любой страницы, где я могу получить нужный мне цвет, просто color: color($colors, colorname) где colorname - имя переменной цвета. Это потрясающая функция, за исключением отсутствия цветовой подсветки в коде. Поэтому было бы здорово получить цветовые сопоставления, а затем выделить правильные цвета в файле .scss страницы.

Я не нашел никаких плагинов для этого. Если есть какие-то существующие плагины, которые я пропустил - я буду рад попробовать. Если нет - я буду рад сделать это сам (если не очень сложно). Во всяком случае, я думаю, что это полезные вещи не только для меня.

UPD: # 1 было исправлено - я не уверен, как именно, но теперь все нормально в HTML, и у меня нет ошибок или предупреждений от синтаксиса о неправильных тегах. Я чувствую себя новичком, но, похоже, я забыл установить плагин Vim-ionic2 - просто добавил его в свой .vimrc.

И № 2, кажется, отвечает - делает то, что мне нужно.

Ответы [ 3 ]

0 голосов
/ 07 мая 2018
  1. Syntastic - это интерфейс нескольких линтеров. Найдите линтер, используемый Syntastic, и найдите способ заставить его принимать эти пользовательские теги.

  2. Если у вас открыт файл CSS, <C-n> должен позволить вам завершить класс CSS.

    Вам может понадобиться что-то вроде set iskeyword+=-, чтобы Vim заполнил полное имя класса.

  3. Я думаю, это было бы совершенно бесполезно. Тем не менее, если вы не нашли такую ​​вещь ... напишите это.

0 голосов
/ 07 мая 2018

Прежде всего, я бы порекомендовал вам разделить это на три отдельных вопроса. Я чувствую, что они могли бы легко иметь специальные ответы, которые на самом деле не связаны. И у кого-то может быть хорошее предложение для одного из них, но не для других. Со своей стороны, я могу дать вам предложения только о 2) и 3).

Для 2) вы можете использовать предложение Роменля для заполнения ключевых слов. Вы также можете попробовать сгенерировать теги для своих CSS-файлов с помощью ctags. Вот один из возможных способов сделать это: https://github.com/rstacruz/ctags-css. Когда у вас есть теги, вы можете использовать завершение тегов. См. :help ins-completion, в частности, раздел «теги». Тем не менее, было бы неплохо прочитать весь раздел, чтобы получить представление о том, что возможно.

Для 3) есть плагины для этого. Попробуйте это: https://github.com/lilydjwg/colorizer

0 голосов
/ 07 мая 2018

относительно первого пункта, я скажу, что vim для себя не выделяет все элементы HTML (main, header и т. Д.), Потому что файл html.vim по умолчанию немного устарел. Тем не менее, я только что создал хранилище, в которое я добавил все оставшиеся элементы для выделения. Если вы столкнулись с тем, что что-то на языке, над которым вы работаете, не выделено, вы должны создать файл .vim с добавлением ключевых слов, которые вы хотите выделить. Я делюсь с вами репозиторием, о котором я говорил: github repo

Хорошо, что люди могут внести свой вклад, поэтому нам не нужно создавать повторяющиеся файлы vim.

Подробнее о синтаксисе можно прочитать здесь: vimdocumentation

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...