Я не знаю, где найти и настроить файл конфигурации, чтобы Mathematica вставлял ClearAll ["Global` *"] в начале каждого нового ноутбука. Как я могу это сделать, вместо того, чтобы вводить его каждый раз, когда я открываю новый ноутбук?ClearAll ["Global` *"] автоматическая вставка
ответ
AFAIK нет возможности изменить новый Ноутбук по умолчанию. Но можно добавить пользовательскую комбинацию клавиш и/или команду меню, которая создаст новый блокнот, который будет содержать все, что вам нужно. Например, вы можете добавить пункт меню «Новый мой ноутбук» в подменю «Файл -> Создать» и назначить Ctrl+Shift+N
сочетание клавиш для его оценки (эта модификация будет сохраняться только в течение текущего FrontEndSession
), оценив следующее (взято из here и here):
FrontEndExecute[
FrontEnd`AddMenuCommands[
"New", {MenuItem["My new Notebook",
System`KernelExecute[
CreateDocument[ExpressionCell[[email protected]["Global`*"], "Input"]]],
FrontEnd`MenuKey["N", FrontEnd`Modifiers -> {"Control", "Shift"}],
System`MenuEvaluator -> Automatic]}]]
Теперь нажатие Ctrl+Shift+N
откроется новое окно Notebook с "Input"
клетки, уже содержащей ClearAll["Global`*"]
. Если вы замените FrontEnd`Modifiers -> {"Control", "Shift"}
на FrontEnd`Modifiers -> {"Command"}
, комбинация клавиш будет Alt+N
.
Информация о том, как сделать это изменение постоянным, можно найти в this MathGroups должность:
Вы можете полностью восстановить меню с помощью ...
FrontEndExecute [FrontEnd`ResetMenusPacket [{Automatic}] ]
Вы получите некоторое уродливое мерцание, но это сработает. Вы также можете поместить в функцию AddMenuCommands в переднем конце init.m, который может быть найден где-то на пути, указанном в параметре ConfigurationPath. В в этом случае файл init.m будет выполняться FE при запуске, не ядро, и поэтому не имеет значения, сколько ядер вы запускаете или выйти.
Так что вам нужно создать файл init.m
в одном из путей, заданных параметром ConfigurationPath
:
Options[$FrontEnd, ConfigurationPath][[1, 2]]
{FrontEnd`FileName[{$InstallationDirectory, "Configuration", "FrontEnd"}], FrontEnd`FileName[{$UserBaseDirectory, "Autoload", _, "Configuration", "FrontEnd"}], FrontEnd`FileName[{$BaseDirectory, "Autoload", _, "Configuration", "FrontEnd"}], FrontEnd`FileName[{$InstallationDirectory, "AddOns", "Autoload", _, "Configuration", "FrontEnd"}]}
Некоторые из этих путей содержат пустой (_
), который недокументированное, но, по-видимому, означает любое имя (я еще не проверил это).
Другой способ сделать это изменение постоянным - отредактировать файл MenuSetup.tr
, но это not recommended.
P.S. Я рекомендую вам в будущем, чтобы задать свои Mathematica на вопросы о связанных выделенном месте, где они будут получать больше внимания: