Syntastic NASM Checker
Так что я немного поработал в классе ассемблера для колледжа, и я использую Vim в качестве основного редактора кода. У меня проблема с Syntastic, когда я пишу сборку для NASM, но Syntastic хочет только запустить средство проверки ошибок gcc (которое сообщает мне, что весь мой код неверен). Я пытался запустить средство проверки NASM с помощью SyntasticCheck nasm
но это не сработало. Я также пытался let g:syntastic_asm_checkers = ['nasm']
в моем.vimrc, но это, похоже, ничего не делает. Как я могу получить Syntastic для запуска проверки NASM здесь?
Как примечание, я проверил это, просто написав что-то вроде mov eax,
чтобы получить ошибку из NASM.
4 ответа
Как уже упоминалось в комментариях выше, получается nasm
работает только для файлов с расширением NASM. После переименования моего файла в <file>.nasm
Я обнаружил, что vim не обнаруживает автоматически nasm
тип файла после запуска set ft?
, так что мне придется изменить мой.vimrc для поддержки расширения.
Вам нужно либо
заставить ассоциацию между
.asm
с насм. Просто добавьте это где-нибудь в вашем.vimrcautocmd BufNewFile,BufRead *.asm set filetype=nasm
использовать
.nasm
расширение. Тогда все будет просто работать.
Я редактировал файл nasm.vim
в ~/.vim/bundle/syntastic/syntax_checkers/nasm
работать на asm и сохранить отредактированный файл в ~/.vim/bundle/syntastic/syntax_checkers/asm
с тем же именем nasm.vim
, Сделав это, вы можете положить let g:syntastic_asm_checkers = ['nasm']
в ваш .vimrc
конфигурация и все работает просто отлично:)
Вы можете найти отредактированный файл, а также некоторые подробности на https://srv2.mysnet.me/casm/tutorial/vim-configuration.
Ну, я знаю, что это был вопрос нескольких лет, но я надеюсь, что это поможет другим на востоке. (по крайней мере, я сам искал ответ, пока не понял, что настройка файлов может сработать благодаря @netskink:D)
Для чего это стоит, я попытался придурков с файлами:
plugins/syntastic/registry.vim
syntax_checkers/nasm/nasm.vim
syntax_checkers/asm/gcc.vim
Чтобы отключить синтаксис.asm и заменить его синтаксисом nasm, но он не работал. Я мог уйти от ошибок, но не мог заставить раскраску snytax или проверку автоматически работать. Я отменил свои изменения и просто сделаю это вместо этого:
:SyntasticCheck nasm
:set filetype=nasm
:SyntasticCheck nasm
После второй команды syntasticcheck будет включена раскраска синтаксиса и проверка синтаксиса носа. Не уверен, почему это занимает два прохода.