用于注释/取消注释掉一段代码的键盘快捷键在其他编程IDE中常用于Java,.Net等语言。我发现这是一种非常有用的技术,可以通过反复试验来暂时注释掉并取消注释代码的行,单词和部分,以找出什么是无效的。
我在版本7的Mathematica前端找不到任何这样的键盘快捷键。我知道可以通过选择代码注释掉代码,右键单击并从出现的菜单中选择Un / Comment但这是编码时太慢
我尝试使用键盘上的menu key 菜单访问它,但Mathematica前端不响应或识别此键与其他应用程序不同,这可能允许一个组合键注释。其他人可以验证这不是我的机器所独有的,并且mathematica无法识别该密钥。我查看了这个question并查看了KeyEventTranslations.tr文件,但我认为没有办法创建一个快捷方式来执行此操作(?)。我应该和它一起生活吗?
还有其他建议吗?
(我已经看到有一个Emacs版本的mathematica,我从来没有尝试过Emacs或者这个Mma版本,并想象它会有这种能力但是不愿意去安装它的麻烦和不确定性。我也会猜测Wolfram Workbench可以做到这一点,但这可能不值得投资。)
答案 0 :(得分:14)
如果您愿意编辑Mathematica系统文件MenuSetup.tr
,可以在Mathematica 7.0.x中安装快捷方式。您可以在KeyEventTranslations.tr
文件的相同位置找到它(即在“SystemFiles / FrontEnd / TextResources / platform ”下的安装中)。在MenuSetup.tr
中,在编辑菜单的定义下找到以下行:
MenuItem["Check &Balance", "Balance", MenuKey["B", Modifiers->{"Control", "Shift"}]],
紧接该行下方,插入以下内容:
MenuItem["Un/C&omment Selection", KernelExecute[FE`toggleComment[]], MenuKey["/", Modifiers->{"Command"}], MenuEvaluator -> Automatic, Method -> "Queued"],
取消/评论选择命令现在可在编辑菜单下使用,键盘快捷键 Cmd - / 或 Alt - / 取决于您的平台 - 就像预装此命令的Mathematica 8一样。
请阅读关于黑客入侵Mathematica安装文件的通常免责声明 - 不提供保修:)
我不知道如何将此功能映射到涉及 Menu 键的某些快捷方式。
快捷键,无菜单
前面的步骤通过安装新的菜单项来模仿Mathematica 8的功能。如果您希望保持菜单不变,则可以在KeyEventTranslations.tr
中安装快捷方式。添加以下行:
Item[KeyEvent["/", Modifiers->{Command}], KernelExecute[ToExpression["FE`toggleComment[]"]], MenuEvaluator -> Automatic, Method -> "Queued"]
如果该行不是列表中的最后一项,则该行末尾需要逗号。
答案 1 :(得分:7)
以下是用于注释掉代码的KeyEventTranslations.tr
文件的代码。我还在为另一半工作。
Item[KeyEvent["/", Modifiers -> {Command}],
FrontEndExecute[{
NotebookApply[FrontEnd`InputNotebook[],
"(*\[SelectionPlaceholder]*)"
]
}]
],
这将它绑定到 Alt + / ,就像在Mathematica 8中一样。
答案 2 :(得分:7)
选择代码并按以下其中一项:
注意: