0

私は Python プログラマーであり、慣例により、a で始まるメソッド_はプライベートであるため、それが属するクラスの外で呼び出すべきではありません。

Python でクラスとパブリック メソッドを見つけるためのより高速な方法が必要なので (API を調査するために他の人のコードに飛び込む必要があることが多いため)、検索を作成しました。

/^    def [^_]\|^class 

これは、Vim に直接入力するとうまく機能しますが、もちろん入力に時間がかかりすぎます。それをキーにマップしたいと思います(たとえば、t現在のようにVimではまったく使用しないため)。だから、私はこれを私の中に入れました~/.vimrc:

nmap t /^    def [^_]\|^class 

しかし、うまくいきません: をt押すと、Vim は特殊文字 (この場合は と ) を解析する代わりに、文字列をそのまま検索^[^_]ます\|

このマッピングの書き方を知っている人はいますか? Vim Wikia、Google、および考えられるあらゆる種類の情報源で運を試しましたが、今のところ運がありません。

ありがとうございました!

4

1 に答える 1

2

に問題があります\|: それ自体が読み取られるとエスケープの 1 つのレイヤーが削除される:nmapため、別のレイヤーが必要です:\\と言うために使用します\

nmap t /^    def [^_]\\|^class
# or maybe add a final <CR> key
nmap t /^    def [^_]\\|^class<CR>
于 2013-01-30T13:23:39.123 に答える