Wimwenu

Wimwenu

私は主にWindowsベースの会社の開発者向けに仮想化されたLinuxボックス(ローカル開発サーバーとして)を設定していますが、一部の開発者はvimを否定的に批判しました。 (彼らの意見ではこれはややLinux/Unixを代表し、使いにくい環境であることを証明しました。) 初めてvimを使用しなければならなかった時が覚えていて(システム管理者はemacsのインストールを拒否しました!) 初期運用学習曲線が難しかったので私は少し思いやりがあります。彼らにnano(彼らが絶対に合格できないかもしれない)提案をする代わりに、vimでナノのようなメニューを設定することで移行をより簡単にすることができると思いました。 (初心者に適した素晴らしい.vimrcファイルを見つけましたが、ナノスタイルメニューのようなものはありません。)

唯一の問題は、vim(gvimではない)でメニューを設定するという主張が機能しないことを見つけることができるということです。そしてそれを修正しようとすると、解決すべきもう一つの問題が残ります。多くの時間を無駄にする前に、これが実際に可能かどうかを知りたいです。これを行う方法に関する情報がほとんどないようです。

答え1

はい、可能です。menu.vimデフォルトのgvimメニュー定義をロードするか、最初から始めて独自のメニューを作成して渡すことができます:emenu。ただし、Nanoなどの常に表示されるメニューは提供されず、コマンドラインタブを使用できます。メニューに移動します。

ユーザーにvimrcがない場合は、最初にvi互換性を無効にする必要があります。

:set nocompatible

Smart Command Line Completeを有効にする(すべての選択肢を一覧表示し、、、および使用して<Tab>結果をナビゲートできます):<Up><Down><Left><Right><Enter>

:set wildmenu

繰り返し押すと、一致するすべてのオプションが循環します。

:set wildmode=full

メインメニューをロードします(gvimでは自動的に発生しますが、ターミナルvimでは発生しません)。

:source $VIMRUNTIME/menu.vim

:emenuこれら4つのコマンドの後に、コマンドのタブ補完を次のように呼び出してメニュー補完を手動でトリガーできます。:emenu<space><tab>

Tabキー、矢印キー、Enterキー(サブメニューの拡張と項目の選択)を使用して結果をナビゲートできます。その後、さらに一歩進んで、:emenu毎回入力する必要なく地図をバインドしてメニューをポップアップできます。

マッピングで、Ctrl-Zを<Tab>コマンドラインで対話型クリックのように機能させます。

:set wildcharm=<C-Z>

:emenu完了を自動的に呼び出すバインディングを作成します。

:map <F4> :emenu <C-Z>

答え2

私自身もこの問題を経験しました。私が使っていたプラグインのすべてのコマンドとキーの組み合わせを覚えていませんでした。また、新しいキーマップを設定したり、コマンドにアクセスするためのコマンドを作成したりすることなく、コマンドをすばやく実行する簡単な方法があります。

Wimwenu

少し書きました。vimメニュープラグインvimを使用して編集できる各ファイルタイプのメニューを定義できます。これにより、さまざまな種類のファイルに対して「コンパイル」メニューオプションを定義し、編集中のファイル(.py、.c、.c ++、...)に基づいてコードをコンパイルするための正しい指示を実行できます。または、Markdownファイルで「Table」プラグインコマンドのサブメニューを作成します。

ここで確認してください: https://github.com/Timoses/vim-venu

注:誰もが自分のお気に入りのテキストエディタを選択する必要があると思います。 Vimにはいくつかの問題があります(学ぶ価値があります!)。誰かが学びたくない場合、vimはその人にあまり役に立ちません。

関連情報