1

これが私のスニペットです:

# Get repository of a table:
snippet repo
    $$2 = $this->getRepository('${1:Bundle}:${2:TableName}')
    ${3}

私がそれを使うとき、これがそれが生成するかもしれないものです:

$Person = $this->getRepository('MyBundle:Person')
$Address = $this->getRepository('MyBundle:Address')

最初のものを小文字にし、常に小文字にして、次のようにします。

$person = $this->getRepository('MyBundle:Person')
$address = $this->getRepository('MyBundle:Address')
...

。snipmateでこれを行う方法はありますか?

4

2 に答える 2

1

これはsnipMateでは実行できません。私はこれを実装しようとしましたが、(特に変換によって文字数が変更される場合)、現在の実装では不可能なほど困難です。

これが、最新の保守された代替プラグインであるUltiSnipsプラグインに移行する最良の理由である可能性があります(ただし、Pythonのサポートが必要です)。そこでは、この機能は変換と呼ばれ、構文を使用し${<tab stop no/regular expression/replacement/options}ます。\L正規表現アトムを使用して、置換を小文字にすることができます。

于 2013-02-09T19:51:29.187 に答える
1

snipmateでは不可能だと思いますが、UltiSnipsをご覧ください。UltiSnipsは、非常によく似たテンプレート構文(変換が非常に簡単)を使用し、はるかに用途が広いです。 http://www.vim.org/scripts/script.php?script_id=2715

于 2013-02-09T19:37:41.963 に答える