タグ付けされた質問 「vimrc」

Vimは起動時にvimrcと呼ばれるファイルから初期化コマンドを読み取ります。これは、設定の設定、関数の定義、オートコマンドの実行などに使用できます。

4
個人用ランタイムパスの環境変数?(* nixでは〜/ .vim、win32では〜/ vimfiles)
複数のマシン間でよりきれいに同期するために、.viminfoファイルを.vim/フォルダーに移動しようとしています。(.vimDropboxに保存して、ホームディレクトリからそこへのシンボリックリンクを作成します。) それで今朝、私はそれをどのように行うかについてこの答えを見つけました。すごい!残念ながら、私は職場でWindowsを使用し、自宅でMacを使用しているため~/.vim、実際には時々使用してい~/vimfilesます。その結果、1行のソリューション set viminfo+=n~/.vim/viminfo 5行のソリューションになりました if has('unix') set viminfo+=n~/.vim/viminfo elseif has('win32') set viminfo+=n~/vimfiles/viminfo endif それは私にとって不器用に感じます。 私はラA、ユーザ固有のランタイム・パスにアクセスするために使用できるデフォルトの環境変数のいくつかの種類がある$VIMRUNTIMEかは$MYVIMRC?それとも私が踊る必要があるのですか?
9 vimrc 

2
.vimrcのファイルエンコーディングとは何ですか?
vimをアップグレードしましたが、私のの一部のUTF-8値に不満を感じてい.vimrcます。 これは私に質問を導きました-vimがを読むとき.vimrc、それはファイルがどんなエンコーディングを持っていると仮定しますか?つまり、何fileencodingですか?
8 vimrc  encoding 

1
定義された列の後のコメントに色を付ける方法
私はかつて、このヘルパーがvim列80の行の長さ制限にPEP8ルールを適用するのを助けるために縦線の種類を表示できるようにするためにこれらの資料を与えられました。 " Long lines highlighting. nnoremap <Leader>H :call<SID>LongLineHLToggle()<cr> hi OverLength ctermbg=none cterm=none match OverLength /\%>80v/ fun! s:LongLineHLToggle() if !&diff if !exists('w:longlinehl') let w:longlinehl = matchadd('ErrorMsg', '.\%>80v', 0) echo "Long lines highlighted" else call matchdelete(w:longlinehl) unl w:longlinehl echo "Long lines unhighlighted" endif endif endfunction 実行中: これらすべてを使用して、80番目の列をマークします。 十分な時間と労力が与えられれば、コメントの場合にのみ、vim 72桁目をはるかに超えるテキストをマークするための同様の機能を利用できます。誰かがどこかの時点ですでにコード化していると思います。そのスニペットの場所をすでに知っていますか?

1
なぜ「vimrc」ファイルと呼ばれるのですか?
vimrcの名前はどこから来たのですか?そのrc部分は頭字語ですか?この名前を選ぶ歴史的な理由はありますか?rc構成ファイルを使用する習慣は最初どこから来たのですか? 価値があることについては、これはvimに固有のものではないことを認識しています。我々が持っている理由です.bashrc、.hgrcなど、

1
行が長すぎて表示できないときに文字を表示するようにvimを構成するにはどうすればよいですか?
行が長すぎてウィンドウに収まらない場合に通知を受け取りたい。 今私はこれを持っています~/.vimrc: set wrap let &showbreak = ' +++ ' これを次のように変更したいと思います。 set nowrap let &somesetting = ' > ' これによりsomesetting、vimに>任意の行の右マージンにaを置くように指示すると、長すぎて完全に表示されません。 私は誓ったvimがこれを行うことができましたが、設定を見つけることができません。

2
キーマッピングnnoremap <SCk>:w <CR>が機能しないのはなぜですか?
1回のキーストロークでバッファをディスクに書き込むことができるようにしようとしています。 (サイドノート:理想的には、これをすべてのモードで動作させたいのですが、とりあえず、最初は通常モードで動作させようとしているだけです。) Vim wikiにはこう書かれています... 以下のような象徴的な表記法を使用して制御文字を表すVimのサポート&lt;F1&gt;、&lt;C-W&gt;、&lt;C-S-F1&gt;、など そしてまた... Ctrlキー修飾子を持つキーは、&lt;C-key&gt;表記法を使用して表されます。たとえば、Ctrl-Rを使用して表され&lt;C-R&gt;ます。Shiftキー修飾子を持つキーは、&lt;S-key&gt;表記法を使用して表されます。たとえば、Shift-F2を使用して表され&lt;S-F2&gt;ます。Altキー修飾子を持つキーは、&lt;A-key&gt;または&lt;M-key&gt;表記を使用して表されます。1つ以上のキー修飾子を組み合わせることができます。たとえば、を表すCtrl+Shift+F3にはを使用できます&lt;C-S-F3&gt;。 これを私の中に入れればうまくいくと言っているよう.vimrcです... nnoremap &lt;S-C-k&gt; :w&lt;CR&gt; しかし、効果はありません。リロード.vimrcしてshift+ control+ を押すと、下部にメッセージが表示されKません[File] written。 私もこれを試しましたが、option+ Kも効果がありませんでした... nnoremap &lt;M-k&gt; :w&lt;CR&gt; エラーメッセージはありません。 OS Xを使用しています。 更新 わかりました、これを試してみました... inoremap &lt;M-s&gt; Hey whats up 次に、挿入モードにしてoption+ を押すとS、Vimが出力します... ß OS XはVimがキーストロークを受け取る前にキーストロークをインターセプトしますか?これが機能しないのはなぜですか? もしそうなら、別のコンピュータを購入する以外にそれをやめる方法はありますか?

2
不明な `_vimrc`または` vimscript`ファイルを使用するのはどのくらい安全ですか?
この質問をここで行うべきかどうかはわかりません。ほとんどすべての言語で、マルウェアが存在します。同じことが当てはまりvimscriptますか? 仮定しvim、高いシステム権限で実行されています。新しいvimユーザーがプラグインまたは見栄えのするvimrcファイル(つまり、他のスクリプト言語でのいわゆる悪意のあるスクリプト)を使用してシステムを破壊する可能性はありますか? 未知のスクリプトファイルを実行する前に、新しいユーザーが対処できる方法は何ですか?スクリプトを無効にすることは、そのための明白な解決策であることを知っています。しかし、新しい学習者にとっても非常に便利なプラグインの数は非常に多くあります。 繰り返しになりますが、この質問はここには当てはまらないかもしれませんが、セキュリティも全体像の非常に重要な部分だと思います。 これに関するいくつかのリソースまたは情報をvim指すと、私のような新しいユーザーにとって非常に役立ちます。

1
番号と相対番号で左揃えされた現在の行番号
現在の行には絶対行番号と共に相対行番号を使用します。 set number set relativenumber 現在の絶対行番号は常に左側に配置され、ヘルプページ(またはGoogle)はこれを変更するオプションを提供していないようです。 この左揃えを防ぐことは可能ですか、それとも一緒に暮らすことを学ぶ必要がありますか?

1
1つのキーコマンドのタイムアウト値を変更するにはどうすればよいですか?
私が欲しいもの 特定のキーコマンドのタイムアウト値を一時的に変更するには 私が見たところ :help 'timeout'私があります。 The timeout only happens when the 'timeout' and 'ttimeout' options tell so. A useful setting would be &gt; :set timeout timeoutlen=3000 ttimeoutlen=100 (time out on mapping after three seconds, time out on key codes after a tenth of a second). キーコマンドでこれを実装する方法や、タイムアウトの現在の設定を確認する方法がわかりません。 たとえばhh、行の先頭に移動するように設定したかったのですが、その特定のキーコマンドのタイムアウトを、たとえば100ミリ秒とかなり速くしたかったのです。 私が試したこと :set timeout …

2
航空会社のテーマを変更するにはどうすればよいですか?
私はデフォルトのテーマで航空会社を使用しています(私のテーマgruvboxに依存しています)。 :AirlineTheme base16すでにvimを開いているときに使用して、航空会社のテーマをbase16に変更します。 しかし、設定したときにデフォルトの航空会社のテーマを永久に変更したい AirlineTheme base16 call AirlineTheme base16 set AirlineTheme base16 AirlineTheme base16 -失敗メッセージは表示されませんが、航空会社のテーマはすべて削除されます。 call AirlineTheme base16-エラーが発生します"Missing parentheses。私も試してみましたcall AirlineTheme base16()。まだ同じエラー。 set AirlineTheme base16 -これは言う unknown option AirlineTheme どうすれば設定できますか?

1
vimrcマッピングで長いマッピング行をいくつかの短い行に分割する方法
私は例えば扱うために非常に長いvimrcマッピングを持っています nnoremap &lt;space&gt;e :exe "!tmux send-keys -t.- 'cd $TEST' Enter"&lt;Cr&gt; :exe "!tmux send-keys -t.- 'source $TEST_NT/bin/activate' Enter"&lt;Cr&gt; この長い行をいくつかの短い行に分割して、1つの画面にすべてを表示する方法 次のようなスタイル: nnoremap &lt;space&gt;e :exe "!tmux send-keys -t.- 'cd $TEST' Enter"&lt;Cr&gt; :exe "!tmux send-keys -t.- 'source $TEST_NT/bin/activate' Enter"&lt;Cr&gt;

2
lsからbufferにジャンプする方法は?
からバッファ番号を入力してバッファにジャンプする方法はあります:lsか? Press ENTER or type command to continueつまり、このコマンドで、たとえばを押した場合2、何も実行されないと予想されるのはなぜですか? 明らかに、インストールするプラグインはありません.vimrc。少なくとも1つの小さなスクリプトをインストールします。 ありがとう。

2
vimrcの包括的なドキュメントはありますか?
の可能なコンテンツの完全なドキュメントを見つけようとしています.vimrc。 これが私が試したものです: Google検索。たくさんの例、ドキュメントなし。 公式ドキュメント man vim :help vimrc このベータ版SEを検索 Stackoverflowの検索 たとえば、このサイトには「上位50のvim構成オプション」がリストされており、最後にはさらに330あると述べていますが、場所は明記していません。 ソースコードを手探りで探すのではなく、vimrcの内容が何であるか/できるかについての包括的なドキュメントはありますか?
7 vimrc 

1
vimがマクロの最後に^ Jを追加するのはなぜですか?
カーソルの下の単語をgrepするのに役立つ短いマクロを作成しました。これは私の.vimrcにあります: let @a=":! git grep ^R^W^M" しかし、vimを開いてを実行する:reg aと、次のように表示されます。 "a :! git grep ^R^W^M^J ^ Jがマクロに追加されていることがわかります。 スクリプトから^ Mを削除すると、^ Jも消えます。 ^ Jは^ Mと同様に動作するようです。つまり、^ Mが2つあるようです。コマンドの結果が見えないので、これは私が望んでいることではありません。読む前にウィンドウが点滅します。 貼り付けてからコピーすることで、スクリプトを機能させることができました。この問題は、.vimrcを使用してロードしようとしたときにのみ発生します。

1
Quickfixウィンドウが開いた後にカーソルラインとカーソル列を有効にする
パフォーマンスのため、Vim cursorlineとを無効にしcursorcolumnます。ただし、Quickfixウィンドウをジャンプする場合、ファイル内でカーソルを見つけるのは困難です。したがって、ウィンドウを開いた後、(なんらかのアクションによって)自動的に有効にcursorlineしcursorcolumnますQuickfix。 今私はAutocmdこのようなものを使った解決策を持っています: autocmd BufferEnter quickfix :bufdo set cursorline cursorcolumn これは適切な解決策ですか?もっと良いアイデアは? どうもありがとう!

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.