2011-12-24 45 views
11

Mathematica中的當前版本,這些快捷鍵都相當方便命令完成:建議規則/選項

按Ctrl + K完成當前命令

GraphPl -> press Ctrl+K -> GraphPlot 

按Ctrl + Shift + K完成當前命令並添加可用實際值替換的參數佔位符選項卡

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] 

有什麼辦法來反思數學函數和訪問方法的元數據類似,它可以在其他編程語言來完成的方式,喜歡使用反射在Java中?

+1

托馬斯Munsch電子郵件中MathGroup已經張貼的調色板代碼'ClickableOptions',你可能會發現有用:[http://forums.wolfram.com/mathgroup/archive/2009/May/ msg00351.html] – kglr 2011-12-24 16:21:39

+1

您可能會發現'選項'功能很有用,但它只給出具有默認值的選項名稱。我知道它比你要求的要窄得多,它不是一個鍵盤快捷鍵。只要提及它,以防萬一您可能會發現它很有用。 – Szabolcs 2011-12-24 17:37:12

+0

@Szabolcs我確實嘗試過'選項'正如你正確指出的那樣,它只是給出了默認選項,並不是所有可能的選項設置:(我將添加我可以做到目前爲止 – 2011-12-24 23:06:42

回答

1

選秀:正在進行的工作...

這是最近我至今達到,但它需要增強的負荷,增加它,因爲它是希望從社區得到一些想法。如果任何人都可以幫助進一步加強它,或者建議任何想法,這將真正值得讚賞。

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

options

+0

這隻給你默認選項,這沒有多大意義。據我所知,Mathematica沒有提供標準的機制來檢索所有可能的選項值,所以我不認爲這種努力會帶給你任何地方。唉。 – 2011-12-25 09:52:37

+2

@Sjoerd也許這就是這個社區進來的地方?難道我們不能一起工作來詳細說明大多數函數的選項值,並且在實踐中實現這樣的事情嗎?如果mathematica.SE站點成爲現實,我希望「合作項目」部分成爲其中的一部分。 – 2011-12-26 05:40:41

+6

@Wizard先生我覺得這是WRi比社區更有優勢的任務。我想他們已經有了一個選項數據庫。我全部都是爲了合作項目,但這似乎是爲了實現WRI可以輕鬆做到的事情而浪費的大量精力。 – 2011-12-27 12:32:32

2

我不相信有任何包含的函數來自動完成一個字符串。除搜索幫助文件外,我也無法回想一種查看特定選項的所有有效設置的方法。

您可以通過Esc鍵txtEsc鍵txt空間加快與選項檢查設置InputAliasesInputAutoReplacements,允許錄入輸入。

+1

不僅沒有自動完成功能,沒有任何基於字符串的選項(選項名稱或值)進行任何拼寫檢查,這是一個相當煩人的情況。 – 2011-12-25 09:55:13

+0

@Sjoerd儘管是一個糟糕的拼寫,我發現老'一般:spell1'很煩人,雖然我可以看到這是一個很好的*選項*我不知道我會打開它 – 2011-12-26 05:38:59

+0

我正在談論命令入口中的拼寫檢查作爲語法着色的一部分如果我錯誤地寫一個選項名稱顏色表明這一點。對於字符串的選項名稱不是這樣。 – 2011-12-27 12:37:10