gpt4 book ai didi

wolfram-mathematica - 在 Mathematica 中将文本选择括在括号中

转载 作者:行者123 更新时间:2023-12-04 08:09:24 24 4
gpt4 key购买 nike

有没有办法在 Mathematica 笔记本中选择一些文本,然后将选择括在括号中?

例如,如果我在笔记本中输入以下内容:

1, 2, 3, 4

我希望能够选择所有文本,然后键入命令以插入匹配的大括号(在 linux 上为 alt-}),它会将所选内容括在大括号中。
{1, 2, 3, 4}

最佳答案

以下函数添加了一个基本上可以满足您要求的命令。

正如所写,它采用 Control+U 组合键(通常是“下划线”)。你可以很简单地改变它。它还向插入菜单添加了一个名为“制作列表”的项目,但我想您只是使用组合键。

此修改仅对当前 session 有效,但您可以将该函数添加到 init 文件以在启动时加载。还有其他永久添加功能的方法,例如通过编辑 KeyEventsTranslations 文件,如 here .)

一旦你运行了实现函数,它就可以用 Control+U 来执行。

FrontEndExecute[
FrontEnd`AddMenuCommands["DuplicatePreviousOutput",
{Delimiter, MenuItem["Make List",
FrontEnd`KernelExecute[
nb = SelectedNotebook[];
sel = NotebookRead[nb];
NotebookWrite[nb, Cell[BoxData[RowBox[{"{", sel, "}"}]]]]],
MenuKey["u", Modifiers -> {"Control"}],
System`MenuEvaluator -> Automatic]}]]

已输入并选择:1, 2, 3, 4

控制+U

{1, 2, 3, 4}



附录

这是您可以用来代替 MenuSetup 修改的版本。它设置为在“{”键按下时激活,并将包装选择或仅匹配大括号。将它放入 MenuSetup 并不是那么简单;我会通过使用 KernelExecute 从 MenuSetup 调用外部程序来实现。 .将下面的代码放在 init 文件中同样有效。
FrontEndExecute[
FrontEnd`AddMenuCommands[
"DuplicatePreviousOutput", {Delimiter, MenuItem["Make List",
FrontEnd`KernelExecute[
nb = SelectedNotebook[];
sel = NotebookRead[nb];
If[sel === {},
FrontEndExecute[FrontEndToken["InsertMatchingBraces"]],
NotebookWrite[nb, Cell[BoxData[RowBox[{"{", sel, "}"}]]]]]],
MenuKey["{", Modifiers -> {}],
System`MenuEvaluator -> Automatic]}]]

关于wolfram-mathematica - 在 Mathematica 中将文本选择括在括号中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13735497/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com