Открыть файл в указанном c разделить в VIM (с FZF) - PullRequest
5 голосов
/ 28 февраля 2020

Я часто использую общий макет на экране - несколько вертикальных разбиений, дерево файлов (NerdTree) слева.

Когда мне нужен новый буфер, я обычно хочу, чтобы он был go в Speci c Split. Например, представьте следующую структуру окна:

| file_tree | split1 | split2 |

Теперь я вызываю команду листинга файлов (в моем случае, fzf). Когда я нахожу имя файла, я хотел бы нажать что-то вроде Ctrl+1, чтобы открыть файл в split1, Ctrl+2, чтобы открыть файл в split2, et c. Как я могу реализовать такие ярлыки? В частности, с fzf, если это возможно.

В противном случае опыт немного неловкий:

  • Я всегда могу открыть новый всплит, но тогда мне нужно закрыть некоторые другие те (потому что теперь их слишком много), они перетасовываются, и т. д. c.
  • Я могу сначала сфокусировать заданное разделение c, а затем вызвать команду перечисления файлов. Это работает, но я продолжаю забывать об этом, и половину времени я продолжаю открывать файл в крошечном file_tree разбиении.

1 Ответ

1 голос
/ 07 марта 2020

Открытие файла с указанным c разбиением выглядит, к сожалению, не возможным. Это из-за природы разделения, это своего рода динамический c видовой экран для буфера, который может быть переставлен внутри окна в любой момент (с ярлыками типа Ctrl + W, Shift + H / J / K / L ), создано и удалено. Также, если у вас есть несохраненный буфер в разделении, Vim не позволит вам открыть новый файл без сохранения существующего, и в этом случае подход, который вы хотели бы использовать, тоже не будет работать.

Вы всегда можете быстро переключиться на определенный раздел с помощью комбинации клавиш N, Ctrl + WW , где N - ваш номер разделения. И вы можете перемещаться между соседними разделениями, используя комбинацию клавиш Ctrl + W, h / j / k / l .

Вот как я работаю с разделениями: у меня обычно открыто 6 разделений (2 строки и 3 столбца) и NerdTree я открываю с помощью своего ярлыка, только он мне нужен. Чтобы открыть файл в некотором разделении, я перемещаюсь по нему с помощью ярлыка N, Ctrl + WW , где N - это разделенное число, а затем я открываю файл, используя NerdTree (если я не могу вспомнить имя файла), или Fzf (когда я знаю имя файла).

Может быть, вам будет удобнее использовать вкладки, в этом случае вы можете открывать каждый новый файл в новой вкладке с помощью Ctrl + T ярлык после выбора его в Fzf. И затем вы можете переключаться между вкладками, используя GT (вперед) и GT (назад).

...