Кто-нибудь знает о подсветке синтаксиса Objective-J в vi?
-
09-06-2019 - |
Вопрос
Я присматривался к новому Цель-Джей / Капучино фреймворк javascript от 280 на север.Они предоставляют плагины для SubEthaEdit и TextMate для обработки подсветки синтаксиса, но я в основном использую vi.Кто-нибудь знает способ получить подсветку синтаксиса Objective-J в vi или хороший способ конвертировать любой формат, который используют два других редактора?
Решение
Пакет инструментов Objective-J (http://cappuccino.org/download) и исходный код на github теперь включает модуль выделения vim.
Другие советы
исходный код на github теперь включает модуль vim highlight.
Я обнаружил, что просто делать то, что предлагается здесь, недостаточно:
загрузите файл, как предлагает Франциско
расстегнуть молнию,
cd Tools/
режзапустите оболочку,
sh install-tools
скопируйте файл objj.vim в каталог vim,
cp Tools/Editors/objj.vim /usr/share/vim/vim71/syntax/
Проблема
Я обнаружил, что подсветка синтаксиса не работает для файлов ".j".Таким образом, проблема здесь в отсутствии распознавания расширений файлов.Если вы используете gvim, как я, то здесь также нет пункта меню.
Добавить Objective-J в меню gvim
Чтобы добавить пункт меню в gvim для синтаксиса->Ne-MO->Objective J:
sudo vim /usr/share/vim/vim71/synmenu.vim
добавьте следующую строку.
an 50.70.465 &Syntax.Me-NO.Objective\ J :cal SetSyn("objj")<CR>
ниже записи objective-C.
сохранить и выйти
:wq!
затем перезагрузите файл ".j" в gvim.Если вы потом уйдете:
- Синтаксис->Ne-MO->Objective J
должно произойти выделение для выбранного вами файла Objective-J.
Автоматическое выделение объекта Objective-J?
Но как насчет автоматической подсветки при загрузке файла?Похоже, что ассоциаций с файлами нет.Итак:
sudo vim /usr/share/vim/vim7.1/filetype.vim
В файле вы найдете список ассоциаций типов файлов.Если вам нужна идея, куда добавить строку, найдите "setf ocaml" в файле filetype.vim.Добавьте строку ниже выше (в алфавитном порядке):
"" Objective J au BufNewFile,BufRead *.j setf objj
Сохраните результат.Теперь вы должны иметь возможность загружать файл с расширением ".j", и подсветка синтаксиса для файлов Objective-J работает.
Результат
Теперь вы должны получить автоматическое распознавание файлов Objective-J по типу файла ".j" и способ задать этот тип файла в gvim.Вероятно, это должно быть добавлено Брэмом или кем-то еще, кто выпускает официальный релиз vim, но на данный момент этот хак работает у меня.(Ubuntu 8.10, Vim 7.1)
Вот еще один способ добавить подсветку Objective J с автоматическим определением файлов в Vim (Mac), и он намного чище и короче, чем версия bootload (она не добавит меню в MacVim, но мне это вообще не нужно):
- Загрузите файл objj.vim, о котором упоминал Франциско.
- Поместите его в
~/.vim/syntax/
(при необходимости создайте папку) - Добавьте строку
au BufNewFile,BufRead *.j setf objj
Для~/.vim/filetype.vim
- Не забудьте включить определение типа файла в вашем
~/.vimrc
конфигурационный файл:filetype plugin on
Если обычная подсветка синтаксиса javascript достаточно хороша, вы можете сопоставить это с файлами .j, добавив что-то вроде этого в свой файл .vimrc:
augroup objective-j
au! BufRead,BufNewFile *.j set filetype=objective-j
au! Syntax objective-j source /usr/share/vim/vim71/syntax/javascript.vim
augroup END
Я не пробовал этот точный код, но сделал нечто подобное при сопоставлении синтаксиса C # с файлами .vala на моем компьютере с Linux.(ПРИМЕЧАНИЕ:Файл javascript.vim может быть расположен где-то еще на вашем компьютере.) Вы, конечно, могли бы создать файл objective-j.vim на основе этого определения синтаксиса javascript.vim вместо того, чтобы использовать его как есть.