Vimscript читает строку под курсором - PullRequest
0 голосов
/ 15 декабря 2018

Я сделал окно компилятора для vim, используя функцию терминала vim 8.1s.
Показывает вывод компилятора на случай, если что-то произошло.
Но теперь я хотел бы просто нажать Enter на строкеошибка в окне терминала, а затем мгновенно откройте этот файл в главном окне кода, подобно тому, как это делают большинство редакторов.
Для этого мне понадобится прочитать текущую строку под курсором, чтобы проверить, является ли онаПравильно отформатированная ошибка, и если она немедленно отправляется в этот файл.
Так как же я могу прочитать текущую строку под курсором в окне вывода терминала?

1 Ответ

0 голосов
/ 19 декабря 2018

Терминал - это новая функция, но Vim имеет функции компиляции (:help :make) и синтаксического анализа ошибок (:help quickfix) почти с самого начала.Vim понимает вывод многих общих :compiler с, и вы также можете определить свой собственный (:help write-compiler-plugin).

Итак, если вашправильный компилятор с регулярным анализируемым выводом, который был бы рекомендованным способом.

работа с терминалом

С другой стороны, если у вас есть веские причины придерживаться своего оригиналаплан, это возможно тоже.Терминальный буфер в конце работает как другие (текстовые) буферы внутри Vim.При отображении сначала необходимо выйти из режима терминала (см. :help Terminal-mode).Затем Vimscript может извлекать текст как обычно:

  • получить текущую строку с помощью :let line = getline('.')
  • захватить работу под курсором с помощью :let word = expand('<cword>')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...