screen + vim -- vim 파일 이름을 열 때 화면 창 이름을 자동으로 설정하는 방법이 있나요?

screen + vim -- vim 파일 이름을 열 때 화면 창 이름을 자동으로 설정하는 방법이 있나요?

터미널 하단에 있는 탭과 거의 비슷한 열린 화면 창을 보여주는 매우 멋진 화면 rc 파일이 있습니다. 현재 창 이름은 내 프롬프트에 따라 지정되는데 이는 별로 유용하지 않습니다. 현재 창에 열려 있는 vim 세션의 파일 이름을 기반으로 창 이름을 자동으로 지정하는 방법이 있습니까? 가능하다면 이것이 최고의 다중 창 편집기가 될 것이라고 생각합니다.

답변1

설정title옵션. 이것은 xterm 등에서는 기본적으로 작동하지만 화면에서는 작동하지 않습니다.이 트릭은 작동합니다:

if &term == "screen"
  set t_ts="\ek"
  set t_fs="\e\\"
  set title
endif

preexec또 다른 접근 방식은 창 제목을 실행 명령으로 설정하는 함수를 셸에 작성하는 것입니다. Zsh는 preexec이를 기본적으로 지원하며배쉬도 할 수 있어.다음은 zsh 예입니다..

답변2

나는 해커 방식을 사용했습니다. tcsh를 사용하여 .cshrc에 다음을 넣었습니다.

# escape sequence to set the screen title
alias stitle 'echo -n "^[k\!*^[\\"'
# shorthand to set the screen title to the hostname
alias H stitle `hostname -s`
# shorthand to set the screen title to the filename, launch vim, and then set it back
alias vis 'stitle \!* ; vim \!* ; H'

헤더가 필요할 때 vim 대신 vis를 사용하는 것을 기억하는 한 작동합니다.

나도 추가했다

set notitle

vim이 실행 중인 창 화면의 제목을 설정하는 것을 방지하려면 my .vimrc에 추가하세요.

관련 정보