.vimrc
단일 SSH 세션에서만 파일을 읽는 방법이 있습니까 ? 즉, 로그인할 때 vim이 /tmp/myvimrc
로그아웃할 때까지 say를 사용하도록 몇 가지 작업을 수행합니다.
현재 .vimrc를 영구적으로 덮어쓰고 싶지는 않습니다. 단지 로그인하는 동안 가끔씩 다른 설정 세트를 사용해야 할 뿐입니다.
답변1
당신은 그것을 사용할 수 있습니다VIMINIT 환경 변수.vimrc
초기화 프로세스의 다른 부분을 유지하면서 일반적인 사용법을 재정의합니다 . VIMINIT는 하나 이상으로 설정되어야 합니다.전임자- 스타일 명령("콜론" 명령, 파이프( |
)를 사용하여 여러 명령을 구분). 단지 다른 초기화 파일에 대한 경로가 아닙니다.
VIMINIT='so /tmp/myvimrc'; export VIMINIT
vim whatever # uses /tmp/myvimrc, not ~/.vimrc
사용과의 주요 차이점 -u
은 VIMINIT가 여전히 다른 섹션을 허용한다는 것입니다.초기화 과정사용됩니다(예: system vimrc
, evim.vim
(해당되는 경우) 등).
답변2
/tmp/myvimrc
내 이해가 정확하다면 다음 man vim
을 사용하여 다음 설정으로 vim을 시작할 수 있습니다.
$ vim -u /tmp/myvimrc
따라서 나머지 세션 동안 이를 옵션으로 만들기 위해 함수를 만들고 이를 의 별칭으로 설정하겠습니다 vim
. 그래서 나는 내 파일에 bash
다음과 같은 것을 넣을 것입니다 :.bashrc
function vimswitch {
alias vim='vim -u /tmp/myvimrc'
}
그런 다음 새로운 vim 설정을 원할 때 다음을 실행합니다.
$ vimswitch
/tmp
재부팅 시 쉽게 지울 수 있으므로 myvimrc를 여기에 저장하지 않습니다 . 이 쉘이 아닌 다른 쉘을 사용하는 경우에도 bash
여전히 작동하지만 구문이 약간 다를 수 있습니다.
답변3
ssh를 통해 로그인하면 ssh는 변수를 설정합니다 $SSH_CONNECTION
. 이 변수를 확인 .bashrc
하고 설정되어 있으면 원하는 별칭을 설정하세요.
if [ -n "$SSH_CONNECTION" ]
then
alias vim='vim -u /tmp/myvimrc'
fi