Сочетание клавиш для кода Un / Comment out в Mathematica 7? - PullRequest
11 голосов
/ 09 апреля 2011

Сочетание клавиш для комментирования / раскомментирования фрагмента кода является обычным в других средах программирования для таких языков, как Java, .Net. Я нахожу это очень полезной техникой, когда экспериментирую методом проб и ошибок, чтобы временно закомментировать и раскомментировать строки, слова и части кода, чтобы выяснить, что работает, а что нет.

Я не могу найти такие сочетания клавиш на внешнем интерфейсе Mathematica в версии 7. Я знаю, что можно закомментировать код, выбрав код, щелкнув правой кнопкой мыши и выбрав Un / Comment в появившемся меню, но это слишком медленно при кодировании.

Я пытался получить доступ к этому с помощью клавиши меню Меню на клавиатуре, но интерфейс Mathematica не отвечает и не распознает эту клавишу в отличие от других приложений, это могло позволить использовать клавишу Комбинация для комментирования. Может ли кто-нибудь еще проверить, что это не уникально для моей машины и что ключ не распознается Mathematica. Я посмотрел на этот вопрос и заглянул в файл KeyEventTranslations.tr, но не думаю, что есть способ создать ярлык для этого (?). Должен ли я просто жить с этим?

Любые другие предложения?

(Я видел, что есть Emacs-версия mathematica, я никогда не пробовал Emacs или эту версию Mma и представляю, что у нее есть такая возможность, но я бы предпочел не идти на неприятности и неуверенность в ее установке. Также я хотел бы угадайте, что Wolfram Workbench может сделать это, но это может не стоить вложений только для этого.)

Ответы [ 3 ]

14 голосов
/ 09 апреля 2011

Вы можете установить ярлык в Mathematica 7.0.x, если вы хотите редактировать системный файл Mathematica MenuSetup.tr.Вы можете найти его в том же месте, что и файл KeyEventTranslations.tr (т. Е. В установке в «SystemFiles / FrontEnd / TextResources / платформа »).В 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"],

Команда Un / Comment Select теперь доступна в меню Редактировать с сочетанием клавиш Cmd - / или Alt - / в зависимости от вашей платформы - точно так же, как в Mathematica 8, где эта команда поставляется предварительно установленной.

Пожалуйста, примите как прочитанные обычные заявления об отказе от взлома файлов установки Mathematica- гарантия не предоставляется:)

Я не знаю ни одного способа сопоставить эту функцию с каким-либо сочетанием клавиш, включающим клавишу Меню .

Клавиша быстрого доступа,Нет меню

Предыдущие шаги повторяют действия Mathematica 8, устанавливая новый пункт меню.Если вы предпочитаете оставить меню без изменений, вместо этого вы можете установить ярлык в KeyEventTranslations.tr.Добавьте следующую строку:

Item[KeyEvent["/", Modifiers->{Command}], KernelExecute[ToExpression["FE`toggleComment[]"]], MenuEvaluator -> Automatic, Method -> "Queued"]

Вам понадобится запятая в конце этой строки, если она не является последним элементом в списке.

7 голосов
/ 01 сентября 2012

Выберите код и нажмите один из следующих вариантов:

  • Alt + /
  • Alt-Е-О
  • Alt + E + О

Примечания:

  • Проверено только в Windows, с использованием Mathematica 8.
  • На моей неамериканской клавиатуре (ABNT Brazil) ярлык Alt + / не работает, вместо этого я использую Alt + E + O.
7 голосов
/ 09 апреля 2011

Вот код для вашего KeyEventTranslations.tr файла, который закомментирует код. Я все еще работаю над другой половиной.

Item[KeyEvent["/", Modifiers -> {Command}],
    FrontEndExecute[{
        NotebookApply[FrontEnd`InputNotebook[],
            "(*\[SelectionPlaceholder]*)"
        ]
    }]
], 

Это связывает его с Alt + / , как в Mathematica 8.

...