Nvim :help
ページは、このスクリプトを使用して、ソースから tree-sitter-vimdoc パーサーで生成されています。
:edit $MYVIMRCvimrc ファイルがない場合は、init.vim を参照して、vimrc ファイルを作成できる場所を確認してください。
set ignorecaseこの新しい行を有効にするには、Vim を終了して再起動する必要があります。後で、Vim を終了せずにこれを行う方法を学びます。
:exe 'edit' stdpath('config').'/init.vim'このセクションでは、このファイルに指定できるさまざまなコマンドについて説明します。これにより、独自の設定方法についてのヒントが得られます。ただし、すべてを説明するわけではありません。詳細については、":help" コマンドを使用してください。
set backupこれは、Vim に上書き時にファイルのバックアップコピーを保持するように指示します。バックアップファイルは、元のファイルと同じ名前で、末尾に "~" が追加されます。07.4 を参照してください。
set history=50
map Q gqこれはキーマッピングを定義します。詳細については、次のセクションで説明します。これは、"Q" コマンドを "gq" オペレーターによるフォーマットを実行するように定義します。そうでない場合、"Q" コマンドは最後に記録されたレジスタを繰り返します。
vnoremap _g y:exe "grep /" .. escape(@", '\\/') .. "/ *.c *.h"<CR>このマッピングは、視覚的に選択されたテキストをヤンクし、Cファイルで検索します。これは複雑なマッピングです。マッピングを使用して非常に複雑な操作を実行できることがわかります。それでも、これは入力したかのように実行されるコマンドのシーケンスにすぎません。
filetype plugin indent onこれは、3つの非常に巧妙なメカニズムを有効にします。1. ファイルタイプの検出。ファイルを編集開始するたびに、Vim はそれがどのような種類のファイルかを判断しようとします。"main.c" を編集すると、Vim は ".c" 拡張子を見て、これを "c" ファイルタイプとして認識します。"#!/bin/sh" で始まるファイルを編集すると、Vim はそれを "sh" ファイルタイプとして認識します。ファイルタイプの検出は、シンタックスハイライトと以下の他の2つの項目に使用されます。filetypes を参照してください。
augroup RestoreCursor autocmd! autocmd BufReadPre * autocmd FileType <buffer> ++once \ let s:line = line("'\"") \ | if s:line >= 1 && s:line <= line("$") && &filetype !~# 'commit' \ && index(['xxd', 'gitrebase'], &filetype) == -1 \ | execute "normal! g`\"" \ | endif augroup END別の自動コマンド。今回は、ファイルを読み込んだ後に使用されます。その後の複雑な処理は、'"' マークが定義されているかどうかを確認し、定義されている場合はそこにジャンプします。コミットメッセージやリベースメッセージには適用されません。これらは前回とは異なる可能性が高いためです。また、xxd(1) を使用してバイナリファイルをフィルタリングおよび編集する場合も適用されません。これは、入力ファイルを前後に変換するため、いわば二重の性質を持つためです。using-xxd も参照してください。
command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_ | diffthis \ | wincmd p | diffthisこれは ":DiffOrig" コマンドを追加します。変更されたバッファで使用して、ロード元のファイルとの違いを確認します。diff と :DiffOrig を参照してください。
set nolangremaplangmap オプションが、マッピングの結果として得られる文字に適用されないようにします。設定されている場合(デフォルト)、プラグインが壊れる可能性があります(ただし、下位互換性があります)。'langremap' を参照してください。
:map <F5> i{<Esc>ea}<Esc>
<F5>
を入力する必要があります。同様に、<Esc>
は <Esc>
キーを押すことによって入力されるのではなく、5 文字を入力することによって入力されます。マニュアルを読むときは、この違いに注意してください!<F5>
F5ファンクションキー。これは、キーが押されたときにコマンドが実行される原因となるトリガーキーです。<Esc>
キーは挿入モードを終了します。:map \p i(<Esc>ea)<Esc> :map \c i{<Esc>ea}<Esc>Vim がそれらが一緒に属していることを認識するために、\ と p をすばやく入力する必要があります。
example_package
を有効にするには、次のコマンドを使用します。packadd example_packageそれだけです!これで、このプラグインに関するヘルプを見つけることができます。
:help example_packageこれは、
:packadd
がプラグインをロードしたときに、'runtimepath' にパッケージディレクトリも追加したため、ヘルプファイルが見つかるためです。mkdir -p ~/.local/share/nvim/site/pack/fancy
cd ~/.local/share/nvim/site/pack/fancy unzip /tmp/fancy.zip
packadd nohlsearch
au! nohlsearch
mkdir -p ~/.local/share/nvim/site/plugin cp /tmp/yourplugin.vim ~/.local/share/nvim/site/pluginこれで完了です!このプラグインで定義されているコマンドを使用できるようになりました。
:filetype plugin onこれで完了です! vimrc-filetype を参照してください。
mkdir -p ~/.local/share/nvim/site/ftplugin mv thefile ~/.local/share/nvim/site/ftplugin/stuff.vimそのファイルが既に存在する場合は、"stuff" 用のプラグインが既にあります。既存のプラグインが追加するプラグインと競合しないかどうかを確認することをお勧めします。問題がなければ、新しいプラグインに別の名前を付けることができます。
mv thefile ~/.local/share/nvim/site/ftplugin/stuff_too.vimアンダースコアは、ファイルタイプの名前と残りの部分(何でもかまいません)を区切るために使用されます。"otherstuff.vim" を使用すると機能せず、"otherstuff" ファイルタイプ用にロードされます。
ftplugin/<filetype>.vim ftplugin/<filetype>_<name>.vim ftplugin/<filetype>/<name>.vimここで "<name>" は、任意の名前を指定できます。Unix の "stuff" ファイルタイプの例
~/.local/share/nvim/site/ftplugin/stuff.vim ~/.local/share/nvim/site/ftplugin/stuff_def.vim ~/.local/share/nvim/site/ftplugin/stuff/header.vim
<filetype>
部分は、プラグインを使用するファイルタイプの名前です。このファイルタイプのファイルのみがプラグインの設定を使用します。プラグインファイルの <name>
部分は重要ではなく、同じファイルタイプに対して複数のプラグインを持つために使用できます。".vim" または ".lua" で終わる必要があることに注意してください。doc/
というサブフォルダにあります)。:!mkdir -p ~/.local/share/nvim/site/doc次に、ヘルプファイルを "doc" ディレクトリにコピーします。
:!cp my-plugin/my-plugin-doc.txt ~/.local/share/nvim/site/docここで、新しいヘルプファイルの件名にジャンプできるトリックを紹介します。 :helptags コマンドを使用してローカルタグファイルを生成します。
:helptags ~/.local/share/nvim/site/doc次を実行すると、ローカルヘルプファイルのエントリが表示されます。
:help local-additionsローカルヘルプファイルのタイトル行は、このセクションに自動的に追加されます。ここでは、どのローカルヘルプファイルが追加されたかを確認し、タグを介してそれらにジャンプできます。
:optionsこれにより、1行の説明付きのオプションのリストを含む新しいウィンドウが開きます。オプションは件名ごとにグループ化されています。カーソルを件名に移動して
<Enter>
を押すと、そこにジャンプします。もう一度 <Enter>
を押すと、戻ります。または、CTRL-O
を使用します。<Enter>
を押すと、行は次のように変更されます。<Enter>
を押すと、'wrap' オプションの完全なヘルプにジャンプします。<Enter>
を押して新しい値を適用します。たとえば、カーソルを数行上に次の行に移動します。<Enter>
を押して新しい値を適用します。これでカーソルを動かすと、境界線に達する前にテキストがスクロールし始めることに気付くでしょう。これは 'scrolloff' オプションの機能であり、スクロールが開始されるウィンドウ境界からのオフセットを指定します。:help 'wrap'オプション値を間違えた場合は、オプション名の後にアンパサンド(&)を付けることで、デフォルト値に戻すことができます。例
:set iskeyword&
:set nowrap表示されていないテキストに移動すると、Vim は自動的にテキストをスクロールします。10文字のコンテキストを表示するには、次を実行します。
:set sidescroll=10これはファイル内のテキストを変更するのではなく、表示方法のみを変更します。
:set whichwrap=b,sこれにより、行の最初の位置で使用される
<BS>
キーで、カーソルを前の行の末尾に移動できます。また、<Space>
キーは、行の末尾から次の行の先頭に移動します。<Left>
と <Right>
も折り返せるようにするには、次のコマンドを使用します。:set whichwrap=b,s,<,>これはまだノーマルモードのみです。挿入モードでも
<Left>
と <Right>
を実行できるようにするには:set whichwrap=b,s,<,>,[,]追加できるフラグがいくつかあります。 'whichwrap' を参照してください。
:set listこれで、すべてのタブが ^I として表示されます。また、各行の末尾に $ が表示されるため、気付かないうちに末尾のスペースを見つけることができます。欠点は、ファイルにタブが多い場合、見栄えが悪いことです。カラターミナルを使用している場合、または GUI を使用している場合、Vim はスペースとタブを強調表示された文字として表示できます。 'listchars' オプションを使用します。
:set listchars=tab:>-,trail:-これで、すべてのタブは ">---"("-" の数が多かれ少なかれ)として表示され、末尾の空白は "-" として表示されます。見栄えがよくなりましたね?
:set iskeyword
:set iskeyword+=- :set iskeyword
:set iskeyword-=_ :set iskeyword
<Enter>
を押す必要があります。 'cmdheight' オプションを、メッセージに使用される行数に設定できます。例:set cmdheight=3これは、テキストを編集するためのスペースが少なくなることを意味するため、妥協点です。