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

Vimは無料でオープンソースのモーダルテキストエディターであり、ほとんどの主要なプラットフォームで利用できます。多くのテキスト編集タスクで高い効率が得られますが、学習曲線が急になります。基本を学ぶには、「:help vimtutor」を実行します。プログラミング以外の質問については、代わりにhttps://vi.stackexchange.com/を使用してください。

4
Vimの設定の現在の値を取得する
指定されたVim設定の現在の値を見つける簡単な方法はありますか?たとえばの現在の値を知りたい場合は、次のようtabstopに実行できます。 :set tabstop 引数を渡さないと、Vimが現在の値を教えてくれます。これは多くの設定で問題ありませんが、trueまたはfalseのいずれかである設定には適していません。たとえば、の現在の値を確認するにはexpandtab、次のコマンドを実行します。 :set expandtab 実際に有効になりexpandtabます。有効になっているかどうかを確認したいだけです。 この種は私が望むことをします: :echo &l:expandtab しかし、それはかなり冗長に見えます。より速い方法はありますか?
274 vim 

12
Vimで改行を削除する
Vimの行末にある改行を削除して、次の行を現在の行に追加する方法はありますか? 例えば: Evaluator<T>(): _bestPos(){ } 行をコピーして前の行に貼り付けることなく、これをすべて1行にまとめたいと思います。カーソルを各行の最後に置いてキーを押し、次の行をカーソルのある行にジャンプさせることができるようです。 最終結果: Evaluator<T>(): _bestPos(){ } これはVimで可能ですか?
271 unix  vim  shell  ssh  vi 


7
Vim for Windows-ファイルを保存して終了するには、何を入力すればよいですか?
Windows XPを使用しているときgit commit -aにgit commit -am "My commit message"、の代わりに誤って入力したところ、CMDメッセージにファイルバージョンのコミットメッセージが表示されています(「コミットメッセージを入力してください...」)。メッセージを上部に追加しましたが、保存して終了する方法がわかりません。Ctrl+ W+ を押してみましたQが、何も実行されません^が、カーソルのある場所に追加してください。 私もEsc最初に試し、次にCtrl+ W+を試しましたQが、とありNo write since last change (add ! to override)ます。


7
vimでは、検索前の状態に戻すにはどうすればよいですか?
vimでのプログラミング私はよく何かを検索し、それをヤンクして、元の場所に戻り、挿入し、変更します。 問題は、検索して見つけた後、自分がいた場所に戻る方法を手動で見つける必要があることです。 最後の検索を開始したときの状態に自動的に戻る方法はありますか?
258 vim  vi 


11
VIMアプリケーションを終了せずにファイルを閉じますか?
:eおよび:wコマンドを使用して、ファイルの編集と書き込みを行います。Vimを終了せずに現在のファイルを閉じる「閉じる」コマンドがあるかどうかわかりません。 :qコマンドを使用してファイルを閉じることができることは知っていますが、それが最後のファイルである場合は、Vimも閉じられます。実際にはMac OSではMacVimは終了します。Vimウィンドウのみが閉じており、空のVimウィンドウを再び開くためにControl- Nを使用できました。Vimを空白の画面で開いたままにしておきたい。
258 vim 

11
Vimでのオートコンプリート
長い「トレーニング」の後、ようやくVimに切り替えました。しかし、オートコンプリートに問題があります。入力中にコードを提案するにはどうすればよいですか? 私は通常、PHP、Ruby、HTML、C、CSSを開発しています。
258 vim  autocomplete  macvim 

7
Vimでのオートコンプリート
一言で言えば、私が探してる作業のVimエディタの自動補完機能。VimはLinuxでIDEを完全に置き換えると以前に主張しましたが、確かにそうですが、オートコンプリートという重要な機能が1つ欠けています。 私が知っているCtrl+ N、あふれんばかりのctagsの統合、タグリスト、cppcompleteとOmniCppComplete。悲しいかな、これらはどれも「動作するオートコンプリート」の私の説明に適合しません。 Ctrl+はN、スペルの方法を忘れた場合にのみ(classまたは)うまく機能しますwhile。しかたがない。 Ctagsは基本的な機能を提供しますが、多くの欠点があります。 Taglistは単なるCtagsラッパーであり、そのため、その欠点のほとんどを継承しています(ただし、宣言をリストする場合はうまく機能します)。 cppcompleteが約束どおりに機能しないだけでなく、私が何を間違えたか、またはそれが正しく「機能」していて、制限が仕様によるものであるかどうかがわかりません。 OmniCppCompleteにはcppcompleteと同じ問題があるようです。つまり、オートコンプリートが適切に機能しません。さらに、tagsファイルをもう一度手動で更新する必要があります。 私は、現代の本格的なIDEでさえ、優れたC ++コード補完を提供していないという事実を知っています。だからこそ、今までこの分野でのVimの欠如を受け入れてきました。しかし、コード補完の基本的なレベルは要求するほど多くはなく、実際に生産的な使用に必要とされると思います。だから、少なくとも次のことを達成できる何かを探しています。 構文認識。cppcompleteの約束(ただし、私には提供されません)、次の正しいスコープを認識した自動補完: variableName.abc variableName->abc typeName::abc そして、実際には、それ以外のものはまったく役に立ちません。 構成可能性。(簡単に)ソースファイルの場所を指定する必要があるため、スクリプトがオートコンプリート情報を取得する場所を指定します。実際、必要なインクルードパスを指定するMakefileがディレクトリにあります。Eclipseはそこにある情報を解釈できます。なぜVimスクリプトも解釈しないのですか? 最新性。ファイル内の何かを変更したらすぐに、オートコンプリートにこれを反映させたいと思います。手動でトリガーしたくありませんctags(または同等のもの)。また、変更があるべきインクリメンタル私は1つのファイルだけを変更したとき、すなわち、それは完全だが、受け入れられないためにctags(巨大な可能性がある)の再解析ディレクトリツリー全体へ。 何か忘れましたか?自由に更新してください。 たくさんの設定やいじりに慣れていますが、ソリューションを最初からプログラミングしたくありません。Vimスクリプトのデバッグは得意ではありません。 最後に、JavaとC#についても同様のものが欲しいのですが、期待するのは多すぎると思いctagsます。コードファイルを解析するだけで、JavaとC#の両方に、インデックスを付ける必要のある巨大なプリコンパイル済みフレームワークがあります。残念ながら、IDEなしで.NETを開発することは、C ++よりもPITAのほうがはるかに優れています。
257 c++  vim  ide  autocomplete 

10
vimで改行を停止する方法
長い行が複数の端末行に表示されるのが好きです。vimが実際のテキストに改行を挿入するのが好きではありません。.vimrcのどの部分を変更する必要がありますか?
257 vim 


18
viで1つのファイルから別のファイルにコンテンツをコピーして貼り付ける
私は2つのファイルで作業しています。あるファイルから数行をコピーして、別のファイルに貼り付ける必要があります。同じファイルにコピー(yy)と貼り付け(p)する方法を知っています。しかし、それは異なるファイルに対しては機能しません。これはどのように行われますか? また、切り貼りする方法はありますか?私はグーグルで試しましたが、ほとんどのリソースはコピーと貼り付けについてのみ話します。
256 vim  copy-paste  vi  cut 

5
Vraの\ ra改行はなぜですか?
質問からVimで改行の文字を置き換える方法は?。次のように、改行のテキストを置き換えるときは\ rを使用する必要があります :%s/%/\r/g しかし、文字の行末と改行を置き換えるときは、次のようにできます。 :%s/\n/%/g マニュアルのどのセクションがこれらの動作を文書化しており、それらの背後にある理由は何ですか?
254 vim 

4
Vim:カーソルを最後の位置に移動します
(g)Vimでカーソルを前の位置に移動できますか(通常モードのとき)?以前のカーソル位置のリストで前後に循環するものが理想的です。しかし、最後の場所に切り替えるだけでも十分です(cd -ディレクトリのあるbashのようなもの)。 ここに小さなデモがあります: line |1| <- cursor position line 2 line 3 line 4 そして、私がやったとしましょう2j、これが今の状態です: line 1 line 2 line |3| <- cursor position line 4 今、私は何かを押して(2k明らかに以外)、最初の位置に、そしておそらく前の位置に移動したいと思います。
251 vim 

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