emacs yas-minor-modeでは、place-holderをyas-choose-valueにリストされた値で使用したいと思います。 可能ですか? 以下のコードは私がしたいことです。 それはうまくいきません。しかしながら"place-holder"を "yas-choose-value"の値に使用できますか?
# -*- mode: snippet -*-
# name: my_func
# key: my_func
# --
function_${1:$$(yas-choose-value '("x1(arg1=${2:foo}", "arg2=${3:bar)" "x2(arg1=${2:hoge})" "x3()"))}
$0
私は、次のような動作を期待しています。
(ステップ-1)ヤスがエキスパンド "my_func" について実行される
Iが "X1"、 "X2" と "X3"
(ステップからの1つを選択することができなければなりません-2)引数は(ステップ1で選択た内容に応じて変更されるべきである)
"X1" が選択された場合、
function_x1(arg1=foo, arg2=bar)
を補足する必要があります。 "foo"と "bar"の位置はプレースホルダーで、デフォルト値です。
"X2" が選択されている場合、
function_x2(arg1=hoge)
が補完されなければなりません。 "hoge"の位置はプレースホルダーで、デフォルト値です。
"X3" が選択された場合、
function_x3()
が補完されるべきです。引数なし。
あなたの質問を編集して、もう少し明確にすることを検討する価値はあるかもしれません:具体的にはうまくいかないのですか? – johnkavanagh
ありがとうございました。期待通りの操作を加えました。 – elgoog