我正在使用笔记本界面在 Mathematica(8 或更高版本)中尝试徽标设计,我想更改生成公式很多。问题是我只知道 SHIFT + ENTER 这让我跳出我当前的单元格并失去了我的位置。
有没有办法评估当前单元格而不离开它并失去你在其中的位置?所以:评估一个单元格并在我按下 SHIFT + ENTER 的确切位置回到同一个单元格内。
我曾经使用过的东西是这样的:
a = Exp[1.994 \[Pi]/(3 I)];
b = Nest[{#, a #, a\[Conjugate] #, #} &, 1, 5];
{Re[#], Im[#]} & /@
Accumulate[
Flatten[{0, a b, a\[Conjugate] b, -b}]] // {\[Rho]\[Chi], # //
Line} & // Graphics
NotebookFind[EvaluationNotebook[], "E" <> "xp", Previous];
但我希望只有另一个组合键或某事。我不知道。
编辑:
a = Exp[(*1*)1.994 \[Pi]/(3 I)];
b = Nest[{#, a #, a\[Conjugate] #, #} &, (*2*)1, (*3*)5];
{Re[#], Im[#]} & /@
Accumulate[
Flatten[{0, a b, a\[Conjugate] b, -b}]] // {\[Rho]\[Chi], # //
Line} & // Graphics
Do[NotebookFind[EvaluationNotebook[], "(*1*)", Previous], {2}];
正如 Chris Dengen 部分建议的那样,对我的解决方案是一个很好的小改进。
编辑2:
NotebookFind[EvaluationNotebook[], "(*1*)", EvaluationCell]
这解决了:
- 这些仅适用于产生一个或已知数量的输出单元的单元
EvaluationCell 的文档很少,所以很难找到,事实上我只是偶然发现了它。使用 EvaluationCell 搜索从上方开始(消除 Do 两次构造),因为我们不是来自屏幕下方的输出单元格。
尚待解决的问题:
- 需要手动记录单元格(单元格级别的簿记)以降落在感兴趣的地方
- 使用基于注释的着陆标记会使输入单元格混乱
注意 这个问题是关于在 Mathematica 笔记本单元格内按下 SHIFT + ENTER 时不会丢失当前位置。这与内容或操纵无关。很抱歉一开始没有说清楚。
临时说明
现在尝试以下方法:
- 使用事件处理程序来定义替代评估键组合
- 触发时,找到一种方法将确切的键盘位置存储在当前输入单元格中
- 评估当前输入单元格
- 恢复当前输入单元格中的位置
我在内部希望某些功能可能只是偶然乐观地处理存储/恢复。不过现实一点,我首先希望我什至能找到一种方法来获得当前的键盘位置。如果我的尝试有任何实现,将在这里跟进。