Vi & Vim

テキストエディタのviおよびVimファミリを使用している人のためのQ&A

2
ファイル名が指定されていないときにVimにデフォルトのファイル名を使用させるにはどうすればよいですか?
vimファイル名なしで開くことはめったにありません。多くの場合、私は何か、通常は簡単な使い捨てスクリプトをテストしたいので、通常はそれらに名前を付けますtest.sh(または、そのような変形test.py)。ファイル名なしで実行した場合vim、test.shファイル名を想定できvimますか?私は通常エイリアスを使用します(vimsfor vim test.shやvimpfor vim test.py、または全体を使用するなど:w test.sh)が、内部からの方法があるのだろうかと思いますvim。これを/tmp、またはなどの特定のディレクトリに制限できればさらに良いでしょう~/dev。
17 vimrc  startup 

2
エールリンター+エスリント:次のエラーにジャンプ
JavaScriptコードをリントするためにeslintwith を使用しaleます。コードブロックを編集した後、修正すべきいくつかのエラーがよくあります。修正は、次の誤った行に移動し、ルーラーから問題を読み取り、修正することによって行われます。 ナビゲーションフェーズをスキップして、特定のキーバインドを使用して次のエラーの場所(その行、できればその列)に移動できれば、それは素晴らしいことです。 キーバインディングを使用して次のlint / aleエラーに移動する方法はありますか?


1
このカスタムコマンドで「E488:末尾の文字」エラーが表示されるのはなぜですか?
私はこれ~/.vimrcを含むものを持っています: function! NewFile() let filename = input("Filename:") endfunction command NewFile :call NewFile()<cr> (もちろん私の実物.vimrcはもっと複雑ですが、プラグインなどを使わずにこの小さなテストケースを再作成しました。 私の意図は、テンプレートに従って新しいファイルの作成をサポートする関数を書くことです。ファイルの名前など、一部の入力項目はviユーザーから要求されます。 この関数はまだそれほど洗練されていません(控えめに言っても!)-ファイル名を尋ねるだけです。NewFileviコマンドラインからコマンドを使用すると起動しますが、ファイル名を入力してEnterキーを押すと、エラーが発生します。 E488: Trailing characters 何故ですか?何が間違っていますか?

6
VimでC / C ++関数のドキュメントを表示するにはどうすればよいですか?
ほとんどのエディターには、関数の上にキャレットを置いていくつかのキーを押すと、関数が受け取る引数の数と型とともにその関数のドキュメントをポップする機能があります。 Vimがそのようなサポートを提供しているかどうか疑問に思っていました。たとえば、Cでコーディングするとき、組み込み関数を使用しますqsort()。私はそれが取る引数のタイプと数がわからないので、Vimをエスケープせずにそれを知りたいです。出来ますか?

3
インデント用のタブ、位置合わせ用のスペース
私はvimをタブで自動インデントし、空白に揃えようとしていますが、実際にはvimはタブでインデントし、整列をタブ+空白で埋めようとしています。 Vimはそれを行います: (各ブロックはタブです) { >--long a = 1, >-->--..b = 2, >-->--..c = 3; } それをするかもしれません: { >--long a = 1, >--.....b = 2, >--.....c = 3; } したがって、タブとスペースのテーマについては多くの質問があると思いますが、いずれもJust Worksソリューションを提供していません。 /programming/8493705/vim-use-tabs-for-indentation-spaces-for-alignment-with-c-source-files /programming/29208431/vim-indent-with-tabs-align-with-spaces /programming/6504507/vim-indenting-and-alignment-combining-spaces-and-tabs 実際に私は使用しています: set ai set cindent set cinoptions=(0,:0,u0,U0,g0) 私が試したスマートタブうまく動作しているようですプラグインを、私はしようとしたときgg=G、私はいくつかの奇妙なエラーが出ます: Error detected while processing function CtabRedoIndent..<SNR>12_CheckAlign: line 11: E108: …

1
vimのパッチバージョンを知るにはどうすればよいですか?
vim 7.4をインストールしましたが、インストールしたときのパッチレベルがわかりません。どうすれば確認できますか? vim --version 与える VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Oct 15 2014 16:18:44) .... ただし、パッチレベルやマイナーバージョン番号は提供されません。
17 version 



8
vimで+ python機能を有効にする方法
vimプラグインをインストールしたいのですが、このプラグインには+python機能が必要なので、vimを開いて入力:versionするとが表示されます-python。どうすれば有効にできますか? ありがとう。
17 installing 

1
「オペレーター」+「モーション」の動作に一貫性がないのはなぜですか?
これは長い間私を悩ませてきたものですが、私はこれについて尋ねることを一度もしませんでした。バッファ内のテキストは次のようになっているとします。 Hello World 2行目のどこかにカーソルを置いて、そうするとyk、カーソルは1行目で終了します。これは、演算子に加えて動きもカーソルを動かすことを意味するようです。ただし、行1で開始してから実行するyjと、カーソルは同じ場所に残ります。同じ不整合は、多くのキーで発生します。 Moves Doesn't move gg G h l { } ( ) T t F f ? / それで、この振る舞いは何ですか?これは予想され、十分に文書化されていますか?これに名前はありますか?オーバーライドできますか? 一般的に、「後方に移動し、前方に移動しない」ように見えますが、オペレータ+モーションがカーソルを移動するかどうかを明確に判断する方法はありますか?


1
Vim正規表現が9個を超えるキャプチャグループを許可しないのはなぜですか?
:h E65我々はVimが置換コマンドで複数の9つのキャプチャグループを許可していないことがわかります。 たとえば、次のコマンドは機能します。 s/\v(a)(b)(c)(d)(e)(f)(g)(h)(i)/\9\8\7\6\5\4\3\2\1 ただし、キャプチャグループがもう1つあるこの例は失敗します。 s/\v(a)(b)(c)(d)(e)(f)(g)(h)(i)(j)/\10\9\8\7\6\5\4\3\2\1 私の質問は、失敗する理由(Vimのハード制限)ではなく、Vimにこの制限があるのはなぜですか? また、9個以上のキャプチャグループを含む実際の正規表現は、おそらく読み取りと保守が非常に困難になることを承知していますが、私はまだ興味があります。

1
ex入力モードを終了するにはどうすればよいですか?
と入力すると、ex入力モードで止まってしまいました:i。これで、コマンドを使用できなくなりました。すべてがテキストの文字列です。エスケープを押しても、そこから:visual抜け出すことvisualはできません。タイピングしても、そこから抜け出すことはできません。どうすれば抜け出すことができますか?
16 ex-mode 

3
視覚モードを終了せずに現在の選択を失うことなく、どのようにインデントしますか?
多くの場合、手動でインデントする必要がありますが、ビジュアルモードに入ったら、インデントする行を選択し、<またはを押し>ます。必要に応じてビジュアルモードを終了します。 視覚モードのままにしておき、選択とカーソル位置をそのままにしておきたいのです。 どうすればこれを達成できますか?

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