EDIT: Запропонуйте добре симетричні відображення для вертикального розбиття, оскільки Vim за замовчуванням має два відображення для горизонтального розділеного випадку.
Існує кілька способів відредагувати "файл під курсором", і хоча ви, звичайно, можете перезавантажити gfредагування на новій вкладці, як згадує @ alexander-myshov, це означає, що у вас є два способи редагувати його на новій вкладці, але ніяк не можна відредагуйте його у поточному вікні, що ви також можете іноді зробити. Використовувати стандартні зіставлення не важко, але якщо ви хочете перезавантажити одне з них gf, я б запропонував переключити відображення, щоб ви не втратили жодне з них.
Деякі способи редагування імені файлу під курсором є
- gf - Відредагуйте наявний файл під курсором у цьому ж вікні
- C-Wf - Відредагуйте існуючий файл під курсором у розділеному вікні
- C-WC-F - Відредагуйте існуючий файл під курсором у розділеному вікні
- C-Wgf - Відредагуйте існуючий файл під курсором на новій вкладці
Немає стандартного відображення для редагування наявного файлу під курсором у вертикальному розділі, але ви можете досягти цього, спочатку розділивши вікно вертикально, а потім відредагувавши файл під курсором у поточному вікні.
- C-Wv+ gf- Редагувати існуючий файл під курсором у вертикально розділеному вікні
Як ви бачите вище, є два відображення за замовчуванням для редагування файлу під курсором у горизонтальному розділенні. Таким чином, ви можете перевстановити один із них у рядок ключових рядків, розширивши групу карт, щоб також охопити вертикальний розділений регістр. Ви можете зв'язати що - небудь, звичайно, але це , здається , щоб закінчити симетрію красиво: nnoremap <C-W><C-F> <C-W>vgf
. Тепер у вас є
- gf - Відредагуйте наявний файл під курсором у цьому ж вікні
- C-Wf - Відредагуйте існуючий файл під курсором у розділеному вікні
- C-WC-F - Відредагуйте наявний файл під курсором у вертикально розділеному вікні
- C-Wgf - Відредагуйте існуючий файл під курсором на новій вкладці
Ви також можете перейти до певного рядка у файлі, якщо за ім'ям файлу під курсором слідує номер рядка. Якщо у вас є
filename:10
ви можете відредагувати файл і перемістити курсор до рядка 10 gF. Еквівалент справедливий для C-WFрозділення та C-WgFдля вкладки. Виконання симетрії для вертикального розщеплення тут не так просто, але я б запропонував, щоб C-WC-S-Fкарта, отримана за допомогою nnoremap <C-W><C-S-F> <C-W>vgF
, імітуючи Fабо Shift+ fз карт за замовчуванням, як кандидат.
:
Приклад, ви можете використовувати будь-який символ , який не є ім'я файлу символів (див :h 'isfname'
).
Всі ці команди поставляються з яблучним соусом, наприклад
- розширити дикі тварини
- шукати в інших місцях, ніж поточний каталог, відповідно до вашого
'path'
варіанту
- додавання розширення до імені файлу, відповідно до вашого
'suffixesadd'
варіанту
- в іншому випадку змініть вказане ім’я фільму, щоб знайти відповідність, відповідно до вашого
'includeexpr'
варіанту
Прочитайте більше на :help gf
та довідкові теми для цих різних варіантів.
Якщо ім'я файлу під курсором називає файл, який не існує, можливо, вам буде краще використовувати стандартні команди редагування за допомогою <cfile>
, наприклад
:edit <cfile> // edit non-existent file under cursor in current window
:split <cfile> // edit non-existent file under cursor in split window
:vsplit <cfile> // edit non-existent file under cursor in vertical split window
:tabe <cfile> // edit non-existent file under cursor in new tabpage
і, звичайно, можна використовувати такі речі, як :spl+10 filename
переміщення курсору до певної лінії або :tabe+/cologne filename
переміщення курсору до першого появи шаблону.
'hidden'
параметр (set hidden
), ви можете перейти від збережених буферів. Для мене це був величезний приріст продуктивності, і це було життєво важливо, щоб так не покладатися на розбивки та вкладки.