Подтвердить что ты не робот

Завершение команды в математике: предлагайте правила/параметры

В текущей версии Mathematica эти сочетания клавиш довольно удобны

Ctrl+K завершает текущую команду

GraphPl -> press Ctrl+K  -> GraphPlot

Ctrl+Shift+K завершает текущую команду и добавляет местозаполнители аргументов, которые могут быть заменены фактическими значениями с помощью клавиши tab

GraphPl -> press Ctrl+Shift+K  ->  GraphPlot[{vi1->vj1,vi2->vj2,...}]

Однако я не мог найти какую-либо клавиатуру для отображения связанных параметров/опций

Например, скажем Если мне нужно построить график с разными макетами, я знаю, что мне нужно установить метод с одним из этих возможных параметров

  • "CircularEmbedding"
  • "RandomEmbedding"
  • "HighDimensionalEmbedding"
  • "RadialDrawing"
  • "SpringEmbedding"
  • "SpringElectricalEmbedding"

Две вещи

Сначала Как автозаполнять эти параметры, есть ли горячая клавиша?

GraphPlot[sg, Method -> <what keyboard shortcut to display all possible options>]

Второй способ создания следующего PopupMenu list программно

  list={
   "CircularEmbedding"
   , "RandomEmbedding"
   , "HighDimensionalEmbedding"
   , "RadialDrawing"
   , "SpringEmbedding"
   , "SpringElectricalEmbedding"
   }
Manipulate[GraphPlot[sg, Method -> m], {m, list}, ControlType -> PopupMenu]

Есть ли способ интроспекции функций Mathematica и метода доступа Метаданные, аналогичные тому, как это можно сделать на других языках программирования, Как использование отражения в Java?

4b9b3361

Ответ 1

Черновик: работа продолжается...

Это самое ближайшее, что я мог донести до сих пор, хотя для этого требуется множество улучшений, добавив его, поскольку он надеется получить некоторые идеи от сообщества. Если кто-то может помочь улучшить его дальше, или предложить любую Идею, это было бы действительно оценено.

ruleOfRule[list_] := Map[Rule[#, #] &, list];
Manipulate[
 GraphPlot @@ {{"A" -> "B", "B" -> "C", "C" -> "A"}, 
   options}, {{options, {}}, ruleOfRule[Options[GraphPlot]]}, 
 ControlType -> CheckboxBar]

options

Ответ 2

Я не верю, что есть какая-либо включенная функция для автоматического заполнения строки. Я также не могу вспомнить способ просмотра всех допустимых параметров для определенного параметра, кроме поиска файлов справки.

Вы можете ускорить ввод с помощью параметров Инспектор параметров InputAliases и InputAutoReplacements, разрешающий ввод Esc txt Esc или txt Space.