如何重新定义FrontEndEventActions? [英] How to redefine FrontEndEventActions?

查看:76
本文介绍了如何重新定义FrontEndEventActions?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

美好的一天,

此问题来自有关中止评估的问题输入的全部顺序.

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

I think it is probably possible to achieve the desired behavior by redefining FrontEndEventActions for two events: "EvaluateCells" (or pressing Shift+Enter) and for pressing Alt+.. It should be something like:

SetOptions[$FrontEndSession, 
 FrontEndEventActions -> {"EvaluateCells" :> Last$PreRead, 
   {{"Alt", "."} :> AbortAllNextInputs}}]

SetOptions[$FrontEndSession, 
 FrontEndEventActions -> {{{"ShiftKey", "ReturnKeyDown"} :> Last$PreRead}
   {{"Alt", "."} :> AbortAllNextInputs}}]

其中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@#]
    ] &

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

But I can not get FrontEndEventActions working. Can anyone help me?

推荐答案

我认为您需要按照此处.

这篇关于如何重新定义FrontEndEventActions?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆