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

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

7
バックスペースキーがVim / viで機能しない
.vimrcファイルと.bash_aliasesファイルにいくつかの変更を加えたところ、それ以降、バックスペースキーで単語を削除できなくなりました。 私の.vimrcファイルには: set nocompatible set number set incsearch set autoindent set ruler set autowrite set smarttab set linebreak set spell set et set title set mouse=v set history=50 set tabstop=4 set matchtime=2 set matchpairs+=<:> syntax enable filetype plugin indent on filetype indent on set sw=4 map <f2> :w\|!python % hi …
89 vim 


15
Vimで挿入モードに入らずにカーソルがある場所に改行を挿入するにはどうすればよいですか?
挿入モードに入らずにカーソルがVimにあるところに改行を挿入することは可能ですか?次に例を示し[x]ます(カーソルが上にあることを意味しますx)。 if (some_condition) {[ ]return; } ときどき、さらにコードを入力したい場合があります。したがってi、を押しEnterて挿入モードに入り、を押して改行を挿入してから、余分なスペースを削除します。次に、通常モードに入り、カーソルを閉じ中括弧の前に置き、同じことを行ってそれを独自の行に配置します。 私はこれをしばらくやっていますが、確かにそれを行うためのより良い方法がありますか?

11
Lisp開発のためのVimの使用
私はしばらくの間Lispをオン/オフしてきましたが、Lispで「実際の」作業を行うことに真剣に取り組んでいます。私はVimの大ファンであり、Lisp開発用のエディターとしてVimを使用することで、どのようにして最も生産的になることができるのかと思っていました。プラグイン、ワークフローの提案などはすべて大歓迎です。 私はすでにVimに着手していて、エディターとして本当に楽しんでいるので、「use emacs」と言わないでください。
87 vim  ide  lisp  common-lisp 

7
Vimのタブとスペースの設定
タブVsに関してはVimはとても親切です。スペース設定。私が理解しているように、tabstop設定はタブ文字の幅を示しています。このshiftwidth設定は、<<および>>コマンドを使用するときにインクリメント/デクリメントする列の数を指定しますが、このsofttabstop設定Tabは、挿入モードでキーを押したときに挿入される空白の量に影響します。場合はexpandtab、Tabキーを挿入する上でsofttabstop空白文字の数。一方、expandtabスイッチをオフにした状態でTabキーを押すと、に一致するタブ+スペース文字の最小数が挿入されますsofttabstop。(間違っている場合は訂正してください。) この最後のポイントは私に不思議に思います:あなたが望まない実際的なケースはありますshiftwidth == tabstop && tabstop == softtabstopか?思いつかない。私の知る限り、これら3つすべてを1つの割り当てで同じ値に設定できれば最も便利です。例:呼び出し: :set stab=4 これは、実行するのと同じです。 :set tabstop=4 softtabstop=4 shiftwidth=4 誰かがこれをどのように行うことができるかを提案できますか? 更新 これまでの回答のおかげで、あまりにも多くのPHP、ホッブズとkaiser.se。それぞれに個別に返信するのではなく、ここで質問を更新しています。 ExpandtabがオフになっているSofttabstop 上記で、expandtabをオフにした状態で、Tabキーを押すと、に一致するタブ+スペース文字の最小数が挿入されることを説明しましたsofttabstop。私はそれを支持しますが、私が何を意味したのかを説明する必要があると思います。いくつかの例を挙げて、そうしようと思います。フォローするには、:set listタブ文字が表示されるように実行します。 tabstop=4 softtabstop=2 shiftwidth=4 noexpandtab 挿入モードでは、Tabキーを押すと2つのスペース文字が挿入されます。Tabキーをもう一度押すと、さらに2つのスペース文字(合計4つのスペース文字)を挿入する代わりに、前の2つのスペースが1つのタブ文字に置き換えられます。タブストップは4に設定されているため、1つのタブ文字の幅は4スペースと同じです。 tabstop=4 softtabstop=6 shiftwidth=4 noexpandtab 挿入モードでは、タブキーを押すと、1つのタブ文字と2つのスペースが挿入されます。タブ文字の幅は4であるため、合計の幅は6であり、これは3文字を使用して実現されます。タブキーをもう一度押すと、2つのタブ文字が挿入され、以前に挿入された2つのスペースが削除されます。全幅は12文字で、これは3文字を使用して実現されます。 これらの例の両方で、Vimはsofttabstopに一致するタブ+スペース文字の可能な最小数を挿入します。 エキスパンドタブをオフにして作業している場合、ソフトタブストップをタブストップとは異なる値に設定することで実現できる、よりきめ細かい制御が必要だとは思えません。それはまだ私が設定できるようにするために有用であろうtabstop、softtabstopとshiftwidth1つのコマンドで同じ値に設定します。 expandtabはsofttabstopを冗長にしますか? tabstop=4 softtabstop=0 shiftwidth=4 expandtab 挿入モードでは、Tabキーを押すと4つのスペースが挿入されます。Deleteキーを押すと、1つのスペースが削除されます。そのため、誤ってTabキーを押した場合は、4回バックスペースする必要があります。 tabstop=4 softtabstop=4 shiftwidth=4 expandtab 挿入モードでは、Tabキーを押すと4つのスペースが挿入されます。バックスペースキーを押すと、4つのスペースが削除されます。 expandtabスイッチをオンにして作業している場合は、削除キーを使用して、タブキーが挿入するのと同じ量の空白を削除することをお勧めします。したがって、この場合には、あまりにも、私は同じ値を割り当てられることは有用であろうと感じtabstop、softtabstopそしてshiftwidth同時に。 ショートカットはまだ役に立ちます Vimが非常に多くの柔軟性を提供することは素晴らしいことですが、私はそれを必要としているとは思えません。タブの幅と、それが「ハード」タブ(タブ文字を使用)か「ソフト」タブ(スペースで構成)かを選択できるようにしたいだけです。ハードタブとソフトタブの切り替えは簡単ですが(:set expandtab!)、3つの異なるパラメーターをいじる必要がなく、タブの幅を設定する方が簡単だったらいいのにと思います。 ですから、私の提案したようなものについての提案は、:set stab=4まだ私には良いと思います。

8
Vimで一致する(一致しない)行をすべて非表示にする
viまたはVimで一致するすべての行を表示/非表示にすることは可能ですか?ハイライトせず、それらの行のみを表示します。 たとえば、単語が単語であるテキストがありますERROR。含むERROR行のみを表示する方法と、含まない行のみを表示する方法を教えてくださいERROR。 一致するすべての行を削除してから元に戻すことなく解決策はありますか?
87 vim  vi 

5
VIM:Ubuntuで正確な行に移動する方法
私はviUbuntu12.10で使用しています。一部のファイルは非常に長いため、ファイルの途中に移動するときは、ページを下に移動するか、下にスクロールする必要があります。 正確な行番号に移動するためのVIMショートカットはありますか?
87 linux  bash  vim  ubuntu  terminal 


6
MacVimのデフォルトフォントを設定する
MacVimのデフォルトフォントを設定するにはどうすればよいですか? 次の行を追加してみました set guifont = Monaco:h12 次のファイルのいずれかに: ~/.vimrc ~/.gvimrc ~/Applications/MacVim/MacVim.app/Contents/Resources/vim/vimrc ~/Applications/MacVim/MacVim.app/Contents/Resources/vim/gvimrc ~/Applications/MacVim/MacVim.app/Contents/Resources/vim/.vimrc ~/Applications/MacVim/MacVim.app/Contents/Resources/vim/.gvimrc MacVimを再起動しましたが、それでもデフォルトのフォントが設定されません。私が逃したものはありますか? 更新:set guifont実行時にコマンドを発行でき、正常に動作します。スタートアップファイルからそれを読み取っていないようです。
87 vim  fonts  default 

8
Vimでコマンドモードと挿入モードを切り替えるにはどうすればよいですか?
VimをIDEとして使い始めたばかりです。しばらくの間、テストエディタとして使用していたので、コマンドモードに頻繁に移動する必要はありませんでした。しかし、私はJavaでプログラミングしているので、コマンドモードに移動してファイルを作成し、コンパイル/実行する必要があります...など。 問題は次のとおりです。2つのモードを切り替えるための良い方法が必要です。 オンラインで調べたところ、<Esc>キーがそれを行うはずだと書かれていますが、それは私にはうまくいきません(gVimではないのかもしれませんか?理由はわかりません)。 CTRLOコマンドモードに移行するには、毎回押す必要があります。エスケープキーはそのモードから機能します...挿入モードに戻ります。しかし、コマンドモードと挿入モードを切り替えるためのより良い、またはより簡単な方法はありますか?
87 vim  insert  command 


12
VIMで大規模なプロジェクトをナビゲートする方法
VIMのみを使用して大きなプロジェクト(数百のファイル)をどのように管理しますか? 私は個人的に、小さなプロジェクトよりも大きなプロジェクトで問題を抱え始めます。 できれば名前を入力して、すばやく「ファイルに移動」する方法はありますか? 別のファイルにある場合は、「クラス定義に移動」についても同じです。 私はVIMの基本をすべて知っているので、スクリプトの作成やソースコードのクイック編集に問題なく使用できます。しかし、ファイル間を移動しなければならないとき、それは私にとって本当に厄介になります。
86 vim  editor 

1
Vimballプラグイン(.vba拡張子付き)をインストールするにはどうすればよいですか?
Vimballプラグイン(.vba拡張子付き)をインストールするにはどうすればよいですか? ドキュメントには次のように書かれています。 インストールの詳細vbaファイルを編集し、次のように入力します。 :so % vimballのドキュメントには次のように書かれています。 ユーザーがvimballで行う必要があるのは、次のとおりです。 vim someplugin.vba :so % :q 通常モード(Vim内)または_vimrcファイルに書き込む必要がありますか? .vbaファイルのフルパスを書き込む必要がありますか? vim someplugin通常モードでは書き込めません。書く必要があります:vim pluginか?
86 vim  vim-plugin 

8
VIMのコマンドラインで「カーソルの下の単語」を指定するにはどうすればよいですか?
VIMで「カーソル下の単語」を指定するコマンドを書きたい。たとえば、ある単語にカーソルを置き、それを2回表示するとします。たとえば、単語が「abc」で、「abcabc」が必要な場合は、次のように入力できます。 :s/\(abc\)/\1\1/ しかし、カーソルを「def」に移動し、同じコマンドを使用して「defdef」に変更できるようにしたいと思います。 :s/\(def\)/\1\1/ これを行うために、コマンドラインでコマンドを作成するにはどうすればよいですか? :s/\(*whatever is under the commandline*\)/\1\1
86 vim  command-line 

3
ビジュアルセレクションのすべての行のVimマクロ
頭の中の行数を合計するのではなく、選択範囲のすべての行でマクロを実行したいと思います。たとえば、次のように変換するマクロを作成できます。 Last, First に First Last そして、私はそれをこれらすべての行で実行したいと思います: Stewart, John Pumpkin, Freddy Mai, Stefan ... Vimの達人のアイデアはありますか? 編集:これは単なる例であり、明らかにこれは些細なことですが、マクロを使用したいほど簡単ではない他のインスタンスが出てきます。
86 vim  macros  line 

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