【原创】VIM状态栏如何显示当前编辑文件的绝对路径?

blogdaren 2018-06-11 抢沙发 64人次

问题背景

VIM状态栏默认只显示当前编辑文件的相对路径,不够直观,我们更多的希望能在状态栏看到当前编辑文件的绝对路径。

解决方案

"状态栏设置 - 将如下代码放入配置文件 ~/.vimrc  
set laststatus=2
highlight StatusLine cterm=bold ctermfg=black ctermbg=lightgreen
function! ShowCurrentDirectory()  
    let current_dir = substitute(getcwd(), $HOME, "~", "g")                                                                                         
    return current_dir
endfunction  
set statusline=[%n]\ %f%m%r%h\ \|\ %{ShowCurrentDirectory()}\/%f\ \ \|%=\|\ %l,%c\ %p%%\ \|\ ascii=%b,hex=%b%{((&fenc==\"\")?\"\":\"\ \|\ \".&fenc)}
\ \|\ %{$USER}\ @\ %{hostname()}\  

效果图预览

vim.png

常用参数

%F 完整文件路径名,即绝对路径。
%Y 文件类型
%b ASCII值
%B 十六进制值
%l 行数
%v 列数
%p 当前行数占总行数的的百分比
%L 总行数
%{...} 评估表达式的值,并用值代替
%{"[fenc=".(&fenc==""?&enc:&fenc).((exists("+bomb") && &bomb)?"+":"")."]"} 显示文件编码
%{$USER} 用户名
%{hostname} 主机名
set laststatus = 0 ,总是隐藏状态行
set laststatus = 1 ,只有多个窗口时才显示状态行
set laststatus = 2 ,总是显示状态行

版权声明:除非注明,本文由( blogdaren )原创,转载请保留文章出处。

本文链接:【原创】VIM状态栏如何显示当前编辑文件的绝对路径?

发表评论:

您的昵称:
电子邮件:
个人主页: