回答:
C-u
ユニバーサルプレフィックス引数です。これは、2つの状態(引数ありとなし)しかないコマンドでよく使用されますが、数値プレフィックスとして解釈することもできます(4)。
この場合、ソースコードをorg-toggle-inline-images
確認すると、引数が設定されているかどうかのみが確認されるため、渡した特定の値は関係ありません。
を呼び出す関数を定義できます(org-toggle-inline-images t)
。ラムダでそれを行うには:
(define-key org-mode-map (kbd "<f12>")
(lambda () (interactive) (org-toggle-inline-images t)))
これにより、org-modeでF12がバインドされ、他のモードのグローバルバインドがそのまま残ります。
キーバインディングの詳細については、Emacsでのキーバインディングのマスターをご覧ください。そしてもちろん、Emacs Lispマニュアルには多くの詳細があります。
一般的な答えは、コマンドを定義するコードを見ることです。特に(必ずしもそうではないが)interactive
仕様。
あなたが探しているのは、関数がプレフィックスargで何をするかです。そして、同じことをするコマンドを定義します。
通常、プレフィックスargは、コードで別の関数に渡される値を定義するために使用されます。その後、他の関数を呼び出すだけで、元のコマンドのプレフィックスargを介して提供された引数を渡すことができます。IOW、通常は同じコードを使用して、接頭辞argから決定される値の代わりに値を渡すだけです。
C-u
です。コマンドが異なる動作平野がいるかどうかに依存している場合、適切ではありませんC-u
(の例えば、区別使用されているかいないC--
か、C-3
またはC-u C-u
ちょうどからのC-u
私のアドバイスは常にチェックするのがいかにコマンド実際にお菓子A接頭引数。。
'(4)
、コマンドに渡すことができます(煩わせずにcall-interactively
)。(ただし、コマンドにプレフィックスargに対応するパラメーターがない場合は機能しませんが、代わりcurrent-prefix-arg
にコマンド本体でテストされます。)
C-u
これで接頭辞をエミュレートすることもできます:(let ((current-prefix-arg '(4))) (call-interactively #'whatever-command))
。これは、呼び出しているコマンドがその引数を使って何をしているのか理解できない場合に役立ちます。