Проблема заключается в том, что Vim связывает файлы *.pc
с другим файловым форматом (по умолчанию) и не имеет шаблона errorformat
, который подходит для стиля сообщения о предупреждении/ошибке Oracle Pro * C (по крайней мере, при использовании Vim 7.2 или 7.4).
(Ваш первый вопрос является результатом по умолчанию errorformat
согласования Pro * C сообщения запуска, и второй вопрос, потому что по умолчанию errorformat
модели не соответствуют ни одному Pro сообщений/предупреждения об ошибках * C.)
I использовать следующие дополнительные errorformat
шаблоны для Pro * файлов C:
"append patterns for Pro*C multi line error message:
set efm+=%ESyntax\ error\ at\ line\ %l\\,\ column\ %c\\,\ file\ %f:,%ESemantic\ error\ at\ line\ %l\\,\ column\ %c\\,\ file\ %f:,%EError\ at\ line\ %l\\,\ column\ %c\ in\ file\ %f,%ZPCC%[A-Z0-9-]%#\\,\ %m,%C%.%#
"prepend ignoring string to ignore Pro*C startup message
set efm^=%-GPro*C/C++:\ Release%.%#
Вы можете добавить эти строки в ~/.vimrc
.
Чтобы устранить связанный с этим вопрос обнаружения типа файла вы можете настроить правильный filtetype:
$ cd ~/.vim
$ mkdir ftdetect
$ cd ftdetect
$ cat > pc.vim
au BufRead,BufNewFile *.pc set filetype=esqlc
Для отступа этого не достаточно, хотя.
Предполагая, что-то вроде
filetype plugin indent on
в ваших ~/.vimrc
вы можете явно настроить правила отступа C:
$ cd ~/.vim
$ mkdir indent
$ cd indent
$ cp /usr/share/vim/vim72/indent/c.vim esqlc.vim
Без этого я не получаю никакого отступа вообще в .pc
файлы - даже не код C.
Вы не говорите о механизме QuickFIX для протокола FIX, не так ли? –
привет Грант Birchmeier, нет, я имею в виду quickfix для Vim. При дальнейших исследованиях, угадывая, что моя проблема решена в конфигурации errorformat, прямо сейчас я пытаюсь найти, если кто-то уже создал одну конфигурацию, которая работает с выходом компилятора PRO * C – Eman