問題タブ [autocmd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vim - Vim autocmd がマッピングを適切にマップしない
特定の localleader マッピングを関数呼び出しにマップするプラグインを作成したいと考えています。
次の内容の ftplugin/javascript.vim ファイルがあります。
JavaScript ファイルを開くと、メッセージが出力されますが、マッピングされた組み合わせを確認すると、そのようなマッピングがないことが示されます。
私は、 noremap が単に他のマッピングの上にマッピングされないことを理解しています。ただし、autocmd に入れずに nnoremap コマンドのみを残すと、適切にマップされます。コマンドモードで呼び出しを実行するだけでも問題なく動作します。
autocmd の使用方法を確認するために vim のヘルプを調べましたが、使用方法とそこで説明されている内容との間に違いは見られません。"Learn Vim the Hard Way" という本も役に立ちませんでした。
足りないものはありますか?autocmd を別の方法でフレーム化する必要がありますか?
vim - Vim の現在のウィンドウが新しいタブで開かれたかどうかを判断するにはどうすればよいですか?
Vim では、Startifyプラグインを使用します。このプラグインで新しい Vim タブを開く方法はいくつかあります。そして、Startify の実行後に新しいタブに開かれた最初のバッファに対して自動的に実行されるように Vim を構成したいと思います。:tcd %:h
このような目的のために、Startify は autocmd を提供しStartifyBufferOpened
ます。残念ながら、これはStartify で開くすべてのバッファに対して実行されます。同様に、私は Vim のビルトインTabNew
;を認識しています。ただし、これは新しいタブページが作成されるたびに発生します。:tcd
Startifyによって作成されたタブページにのみ入れたいです。
いくつかの新しいバッファで (つまり によって) 評価されたときに、新しいタブページがそのバッファ用に作成されたばかりの場合StartifyBufferOpened
にのみ、実際に特定のコマンドを実行するように構築できる VimScript 関数はありますか?
vim - 間違ったバッファに対する autocmd-buflocal の応答
私はvimを使用してファイルを開き、バッファid(bufnr()
)は.2
PreviewJupyterMD
call PreviewJupyterMD()
関数本体は次のようになります。
だから私がやっていることはedit
、新しいファイルを開いてバッファ3にロードすることです(私もそれをチェックしましたbufnr()
)。ローカル変数をバッファ 3 に追加します。次に、MDCleanUp
Vim を閉じたときにバッファ 3 の vim run 関数が必要です。
バッファに変数があるかどうMDCleanUp
かを確認するのは、そのバッファのファイルをディスクから削除する場合です。
実際の動作はMDCleanUp
2 回実行されますが、出力メッセージechom bufnr()
はすべて 2 で、出力 2 は 2 回です!
出力が次のようになる理由について、指示または提案をお願いします。
そしてそれをどのようにするか:
前もって感謝します!