如何重新定义FrontEndEventActions?

Ale*_*kov 5 wolfram-mathematica keyboard-shortcuts mathematica-frontend

美好的一天,

这个问题来自关于中止对全部输入序列的评估的问题.

我认为可能通过重新定义FrontEndEventActions两个事件来实现所需的行为:( "EvaluateCells"或按Shift+ Enter)和按Alt+ ..它应该是这样的:

SetOptions[$FrontEndSession, 
 FrontEndEventActions -> {"EvaluateCells" :> Last$PreRead, 
   {{"Alt", "."} :> AbortAllNextInputs}}]
Run Code Online (Sandbox Code Playgroud)

要么

SetOptions[$FrontEndSession, 
 FrontEndEventActions -> {{{"ShiftKey", "ReturnKeyDown"} :> Last$PreRead}
   {{"Alt", "."} :> AbortAllNextInputs}}]
Run Code Online (Sandbox Code Playgroud)

其中AbortAllNextInputsLast$PreRead定义如下:

AbortAllNextInputs := AbortProtect[
   $new$PreRead = True;
   last$PreRead = ToString[Definition[$PreRead], InputForm];
   ClearAll[$PreRead];
   $PreRead := # &] /; ! TrueQ[$new$PreRead]
Last$PreRead :=
 $PreRead := AbortProtect[
    $new$PreRead = False;
    ClearAll[$PreRead];
    If[last$PreRead === "Null", #, 
     ToExpression[last$PreRead]; $PreRead@#]
    ] &
Run Code Online (Sandbox Code Playgroud)

但我无法FrontEndEventActions工作.谁能帮我?

Mr.*_*ard 1

我相信您需要修改此处此处引用的 KeyEventTranslations.tr 。