有没有办法在Mathematica中使用[[和]]作为Part?

500*_*500 18 frontend wolfram-mathematica

有没有办法避免必须做到?[[?获得那些漂亮的括号Part

在此输入图像描述

在运行函数或定义后,有没有办法自动完成?

abc*_*bcd 16

我有以下添加内容/Applications/Mathematica.app/SystemFiles/FrontEnd/TextResources/Macintosh/KeyEventTranslations.tr,让我输入带有组合键的双括号.您可以通过修改文件(操作系统上的任何位置)来执行相同操作.我首先从Szabolcs的网站上了解到这一点.他在那里有其他mathematica相关的东西,可能对你有所帮助.

添加的命令是:

  • ?Ctrl+[
  • ?Ctrl+]
  • ??Ctrl+ Alt+]

KeyEventTranslations.tr文件中列出的等价物是:

修饰符可以是"Shift","Control","Command","Option"

对于Macintosh:"Command"= Command键,"Option"= Option键

对于X11:"Command"= Mod1,"Option"= Mod2

对于Windows:"Command"= Alt,"Option"= Alt

EventTranslations[{在上面的文件中插入以下内容.

(* Custom keyboard shortcuts *)
    Item[KeyEvent["[", Modifiers -> {Control}],
        FrontEndExecute[{
            FrontEnd`NotebookWrite[FrontEnd`InputNotebook[],
                "\[LeftDoubleBracket]", After]
        }]],
    Item[KeyEvent["]", Modifiers -> {Control}],
        FrontEndExecute[{
            FrontEnd`NotebookWrite[FrontEnd`InputNotebook[],
                "\[RightDoubleBracket]", After]
        }]], 
    Item[KeyEvent["]", Modifiers -> {Control, Command}],
        FrontEndExecute[{
            FrontEnd`NotebookWrite[FrontEnd`InputNotebook[],
                "\[LeftDoubleBracket]", After],
            FrontEnd`NotebookWrite[FrontEnd`InputNotebook[],
                "\[RightDoubleBracket]", Before]
        }]], 
Run Code Online (Sandbox Code Playgroud)

你并不是唯一一个对此感到愤怒的人.这是我试图避免必须Esc通过映射Caps lock来伸展Esc.向导先生也有一对夫妇问题涉及到转换[[?.

  • @ 500我忘记了在哪里插入它.请看我的编辑.另外,**备份**文件. (2认同)

And*_*lan 10

我的偏好是以下(代码修复,感谢Sjoerd C. de Vries):

n = SelectedNotebook[];
SetOptions[n, 
 InputAliases -> 
  Append[Options[n, InputAliases][[1, 2]], 
   "[]" -> "\[LeftDoubleBracket]\[SelectionPlaceholder]\[RightDoubleBracket]\[Placeholder]"]]
Run Code Online (Sandbox Code Playgroud)

这增加了一个新的输入别名?[]?是插入 [[]],将光标放在括号内的占位符,并提出另一种占位符,你按Tab键到达括号外.

试试看吧.如果您喜欢,可以将其添加到全局选项:格式 - >选项检查器 - >显示选项值 - >全局首选项 - >搜索输入法.

你也可以将它与yoda提出的键盘快捷方式解决方案结合起来.

  • 它不像你在`Options`的输出中给出额外的{}层那样写.像'SetOptions [n,InputAliases - > Append [Options [n,InputAliases] [[1,2]],"[]" - >"\ [LeftDoubleBracket]\[SelectionPlaceholder]\\ [RightDoubleBracket]\[Placeholder] "]]`对我有用 (2认同)