Vim에서 현재 파일의 경로를 영구적으로 표시하려면 어떻게해야합니까?
나는 알고있다 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
옵션이 무엇을 의미하는지에 대해. 일반적으로 여러 버퍼가 열려 있지 않으면 상태 표시 줄이 숨겨 지거나 숨겨 질 수 있지만 이와 같은 사용자 지정을 항상 사용하는 것이 매우 유용하며 한 화면 줄 예약을 포기할 가치가 있습니다.
ls = 2 설정
이것을 vimrc에 추가하면 항상 하단에 파일 이름이 표시됩니다.
Vim으로 파일을 편집하는 동안 gnome-terminal의 제목 표시 줄에 파일 경로를 표시하는 두 가지 방법을 찾았습니다.
더 간단하고 더 나은 방법 : 다음 줄을 추가하십시오 ~/.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>
나는 :f
항상를 사용 했지만 @MichaelBerkowski의 답변과 링크는 놀랍습니다!
:f
경로, 줄 수, 수정 된 상태, 현재 커서 위치 등을 표시합니다.
나는 몰랐지만 CTRLG거의 같은 것 같습니다.
상태 표시 줄은 매우 강력하고 편리하다고 생각합니다. 상자에서 벗어나면 파일 이름, 커서 위치 및 일부 플래그가 표시됩니다. 그러나 나와 똑같이하고 파일 이름 -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%
좋은 독서 :
추신. 나는 vim 7.3을 실행합니다.
vim-airline을 사용하는 경우 다음을 입력하십시오 .vimrc
.
let g:airline_section_c = '%<%F%m %#__accent_red#%{airline#util#wrap(airline#parts#readonly(),0)}%#__restore__#'
이는 항공사 기본값을 수정 %f
한 것 %F
입니다.
경로에 해결 된 심볼릭 링크를 포함하려면 다음을 사용하십시오.
set statusline +=%{resolve(expand('%:p'))}\ %*
홈 디렉토리의 '~'약어를 유지하려면 다음을 포함하십시오. fnamemodify
set statusline +=%{fnamemodify(resolve(expand('%:p')),':~')}\ %*
'Programing' 카테고리의 다른 글
Swift 프로그램에서 autoreleasepool을 사용해야합니까? (0) | 2020.09.13 |
---|---|
조건부 고유 제약 (0) | 2020.09.13 |
Eclipse Git 플러그인에서 기본 작성자 및 커미터를 어떻게 변경합니까? (0) | 2020.09.13 |
Amazon API Gateway에서 반환 한 http 상태 코드를 변경하는 방법이 있습니까? (0) | 2020.09.13 |
Google API 클라이언트로 토큰을 새로 고치는 방법은 무엇입니까? (0) | 2020.09.13 |