10

カスタム拡張 (できれば Python で記述) を介して vim 機能を拡張することは可能ですか?

私が理想的に必要としているのは、コマンド モードのときのカスタム コマンドです。例えば

ESC

:これを行う

:それを行う

4

3 に答える 3

20

vim は python でのスクリプティングをサポートしています (そして、perl でもそうだと思います)。

使用している vim ディストリビューションが python サポート付きでコンパイルされていることを確認する必要があります。

Linux システムを使用している場合は、ソースをダウンロードしてコンパイルできます。

./configure --enable-pythoninterp 
make
sudo make install

vim内で、次のように入力できます

:version

利用可能な機能を一覧表示します。Python をサポートしている場合は、「+python」がどこかに表示されるはずです (それ以外の場合は「-python」)。

次に、python モジュールの使用状況を確認するには、次のように入力します。

:help python

PS: vim ソースをコンパイルする場合は、利用可能な構成オプションを確認してください。 --with-python-config-dir も指定する必要がある場合があります。

PPS:「コマンドモードでカスタムコマンド」を作成するには(私があなたの意味を正しく理解している場合)、vimスクリプトで関数「MyFunction」を作成し(pythonまたはvimスクリプト言語を使用)、次のコマンドで呼び出すことができます

:Call MyFunction()

小切手

:help user-functions

詳細については

于 2008-09-26T10:55:13.347 に答える
5

はい、そうです。http://www.vim.org/scripts/index.phpにはいくつかの拡張機能があります

Python のサポートがコンパイルされている場合は、Python でも実行できます。

それに関する記事: http://www.techrepublic.com/article/extending-vim-with-python/

Google は私たちの友達です。

HTH

于 2008-09-26T10:57:54.120 に答える
4

Vim を Python でコンパイルする際に問題がありました。

...Python のコンパイルおよびリンク フラグが正常かどうかを確認しています... no: PYTHON DISABLED" が ./configure 出力に表示されます。

Ubuntu 10.04 では、インストールする必要がありますpython2.6-dev。フラグは次の./configureとおりです。

--enable-pythoninterp
--with-python-config-dir=/usr/lib/python2.6/config

config.cファイルを含むディレクトリへのパスを取得したことを確認してください。また/、パスの終わりにはありません!それは私に問題を引き起こしました。

于 2011-03-14T00:29:53.533 に答える