Добрый день,
Этот вопрос возникает из вопроса о прерывании оценки полной последовательности входных данных .
Я думаю, что возможно достичь желаемогоповедение путем переопределения FrontEndEventActions
для двух событий: "EvaluateCells"
(или нажатия Shift + Enter ) и нажатия Alt + . ,Это должно быть что-то вроде:
SetOptions[$FrontEndSession,
FrontEndEventActions -> {"EvaluateCells" :> Last$PreRead,
{{"Alt", "."} :> AbortAllNextInputs}}]
или
SetOptions[$FrontEndSession,
FrontEndEventActions -> {{{"ShiftKey", "ReturnKeyDown"} :> Last$PreRead}
{{"Alt", "."} :> AbortAllNextInputs}}]
Где AbortAllNextInputs
и Last$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@#]
] &
Но я могуне получается FrontEndEventActions
работать.Кто-нибудь может мне помочь?