一時.vimrc

一時.vimrc

.vimrc単一のSSHセッションでのみファイルを読み取る方法はありますか?つまり、ログイン時にvimが/tmp/myvimrcログアウトするまでsayを使用するようにいくつかの操作を行います。

現在、.vimrcを永久に上書きしたくありません。ただ、ログイン中に時々異なる設定セットを使用する必要があります。

答え1

あなたはそれを使用することができますVIMINIT環境変数.vimrc初期化プロセスの他の部分を維持しながら、一般的な使用法を上書きします。 VIMINITは少なくとも1つに設定する必要があります。前任者- スタイルコマンド(「コロン」コマンド、パイプ(|)を使用して複数のコマンドを区切ります)。他の初期化ファイルへのパスではありません。

VIMINIT='so /tmp/myvimrc'; export VIMINIT

vim whatever # uses /tmp/myvimrc, not ~/.vimrc

使用との主な違い-uは、VIMINITがまだ他のセクションを許可していることです。初期化プロセス使用されます (例: system vimrcevim.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

関連情報