Я знаю, что CTRLgотображает текущий файл, над которым вы работаете. Есть ли способ изменить мой .vimrcтак, чтобы имя файла / путь всегда отображались?
Ответы:
В строке состояния добавьте, %Fчтобы отобразить полный путь:
:help statusline
" Add full file path to your existing statusline
set statusline+=%F
Обратите внимание, %Fэто будет полный путь. Чтобы получить путь относительно рабочего каталога, используйте %f.
Если ваша строка состояния еще не отображается, вам может сначала потребоваться настроить ее, чтобы она была всегда видимой, с помощью laststatus=2
set laststatus=2
Посмотрите, :help laststatusчто означают варианты. Обычно строка состояния может быть скрыта или скрыта, если не открыто несколько буферов, но я считаю чрезвычайно полезным постоянно иметь такую настройку, что стоит отказаться от одной резервной строки экрана для нее.
:set statusline=%Fбез+
:set statusline=%F? Посмотрите вправо или влево, чтобы увидеть, не скрывается ли имя файла в строке состояния
set laststatus=2чтобы статусная строка всегда была видна. Я забыл, что это было на мне.
установить ls = 2
добавьте это в vimrc, и вы всегда будете видеть имя файла внизу.
set modelineнемного опасно и не имеет никакого отношения к вопросу. Он позволяет выполнять команды Vim в 5 начальных / конечных строках файла. Его должны включать только те, кто знает зачем и очень этого хочет. (Вот почему я -1 этот ответ)
Я нашел 2 способа отображать путь к файлу в строке заголовка gnome-terminal при редактировании файла с помощью Vim.
Более простой (и лучший) способ: добавьте следующую строку в свой ~/.vimrc:
set title
Что покажет вам вверху:
filename.ext (~/path_to_directory_where_your_file_is/) - VIM
Более сложный способ покажет вам абсолютный путь к файлу. Это задокументировано более подробно в этой записи блога, которую я недавно написал.
Единственный способ , которым я нашел , чтобы получить полный путь к файлу , я работаю в это: :echo expand('%:p'). Вы можете переназначить ctrl + g, если хотите, но мне лично не нравится слишком сильно отходить от стандартов. Я сопоставил F7 так:
map <F7> <Esc>:echo expand('%:p')<Return>
:help CTRL-G, и посмотрите на два абзаца вниз CTRL-Gсо счетчиком.
1 CTRL-Gпоказывает полное имя файла. Искал этот вариант.
~.
Если вы используете vim-airlines , введите .vimrc:
let g:airline_section_c = '%<%F%m %#__accent_red#%{airline#util#wrap(airline#parts#readonly(),0)}%#__restore__#'
Это модификация авиакомпании по умолчанию, изменяющаяся %fна %F.
Я считаю, что статусная строка очень удобна и удобна. Прямо из коробки он будет отображать имя файла, позицию курсора и некоторые флаги. Но вы хотите сделать то же самое, что и я, и заменить имя файла -part на полный путь к файлу.
Поэтому при редактировании моей .vimrcстроки состояния по умолчанию может выглядеть примерно так:
.vimrc 26,16 7%
Вы можете просмотреть свои настройки строки состояния с помощью:
:set statusline?
Но если вы не вносили никаких изменений и ни один модуль не менял, он будет пустым. Но по примерам в разделе помощи (:help statusline ) вы можете обнаружить, что значение по умолчанию:
:set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
Включите это в свой .vimrcи измените %fна %F. Я также добавил в строку состояния флаг типа %yфайла ( ), так как считаю это удобным. Итак, моя результирующая конфигурация выглядит так:
:set statusline=%<%F\ %h%m%r%y%=%-14.(%l,%c%V%)\ %P
Результат будет примерно таким:
~/.vimrc [vim] 26,16 7%
Хорошее чтение:
PS. Я запускаю vim 7.3
Если вы хотите, чтобы путь включал разрешенные символические ссылки, используйте следующее:
set statusline +=%{resolve(expand('%:p'))}\ %*
Чтобы сохранить аббревиатуру '~' для вашего домашнего каталога, включите fnamemodify
set statusline +=%{fnamemodify(resolve(expand('%:p')),':~')}\ %*
set statusline+=%Fк моему~/.vimrc, похоже, не делает то, что вы говорите. Хотя документация, похоже, с вами согласна ...