1

Примечание: я могу полностью использовать "окно" и "буфер" здесь неправильно.

При перепрыгивании стека вызовов вверх / вниз хотелось бы видеть одновременно и место вызова, и вызываемую функцию в разных окнах.

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

Я думаю, что я хочу сделать, это либо:

  • Укажите существующее окно для открытия тега (например, окно слева, справа и т.д.)
  • Просто «сохраните» буфер, показывая тот же буфер в другом существующем окне.

Я также открыт для лучших идей

Спасибо

1 ответ1

1

Для следующих тегов у вас есть три основных варианта:

  • в том же окне, заменив текущий буфер :tag
  • в разделенном окне :stag ; это создаст много новых окон, вам нужно очистить / свести к минимуму
  • в окне предварительного просмотра :ptag ; на каждой вкладке есть только одно окно предварительного просмотра, так что вы сами управляете окнами; однако, если вы продолжите навигацию внутри окна предварительного просмотра, дальнейшие переходы тега фактически станут такими же, то есть :ptag эквивалентен :tag

Вы можете построить свой рабочий процесс оттуда. Одна идея, которая приходит мне в голову, когда я пишу это, - это настраиваемая команда :AlternateTag которая выполняет :ptag в обычном окне, но переназначает окно предварительного просмотра другому окну, уже в окне предварительного просмотра. Это позволит вам переключаться между двумя окнами для поиска тегов.

:command! -bar -count -bang -complete=tag -nargs=? AlternateTag if &previewwindow && winnr('$') && winnr('#') > 0 | setlocal nopreviewwindow | call setwinvar(winnr('#'), '&previewwindow', 1) | endif | <count>ptag <args>

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .