From 9f19f32b78ac2bde5437604a8c9bcebd3a727147 Mon Sep 17 00:00:00 2001
From: TDE Weblate Depending on configuration, this "
+"view shows the call graph environment of the active function. Note: the "
+"shown cost is only the cost which is spent while the active function "
+"was actually running; i.e. the cost shown for main() - if it's visible - "
+"should be the same as the cost of the active function, as that's the part of "
+"inclusive cost of main() spent while the active function was running."
+"p> For cycles, blue call arrows indicate that this is an artificial call "
+"added for correct drawing which actually never happened. If the graph "
+"is larger than the widget area, an overview panner is shown in one edge. "
+"There are similar visualization options to the Call Treemap; the selected "
+"function is highlighted. "
+msgstr ""
+"活躍函式的呼叫圖環境 根據設定,此檢視顯示活躍函式的呼叫圖環境。注"
+"意:顯示的花費只表示此函式執行中的花費,也就是說,main() 函式顯示的花費會跟此"
+"函式的花費一樣,因為那是 main() 的引入花費。 對循環而言,藍色的呼叫箭"
+"頭表示是人工加上去修正的,實際上不會發生。 如果此圖大於元件的大小,則"
+"會在一邊顯示略圖。類似呼叫樹狀圖的視覺選項,選取的函式會被突顯。 This widget shows information for the current selected function in different "
-"tabs: "
-""
-"
For more information, see the "
-"What's This? help of the corresponding tab widget
本畫面以不同分頁顯示目前所選擇函數的資訊: " -"
This graph shows the nested hierarchy of all callers of " +"the current activated function. Each colored rectangle represents a " +"function; its size tries to be proportional to the cost spent therein while " +"the active function is running (however, there are drawing constrains).
" +msgstr "" +"呼叫者地圖這個圖形顯示目前活躍的函式所有呼叫者的巢狀架構。每個彩色" +"的矩形表示一個函式,大小會與該函式執行時的花費成比例。(不過畫圖形時會有所限" +"制,所以是盡量成比例)。
" -#. i18n: file configdlgbase.ui line 254 -#: rc.cpp:45 -#, no-c-format -msgid "Object:" -msgstr "物件:" +#: callmapview.cpp:105 +msgid "" +"Call MapThis graph shows the nested hierarchy of all callees of " +"the current activated function. Each colored rectangle represents a " +"function; its size tries to be proportional to the cost spent therein while " +"the active function is running (however, there are drawing constrains).
" +msgstr "" +"呼叫地圖這個圖形顯示目前活躍的函式所有呼叫的巢狀架構。每個彩色的矩" +"形表示一個函式,大小會與該函式執行時的花費成比例。(不過畫圖形時會有所限制," +"所以是盡量成比例)。
" -#. i18n: file configdlgbase.ui line 262 -#: rc.cpp:48 -#, no-c-format -msgid "Class:" -msgstr "類別:" +#: callmapview.cpp:113 +msgid "" +"Appearance options can be found in the in the context menu. To get exact " +"size proportions, choose 'Hide incorrect borders'. As this mode can be " +"very time consuming, you may want to limit the maximum drawn " +"nesting level before. 'Best' determinates the split direction for children " +"from the aspect ratio of the parent. 'Always Best' decides on remaining " +"space for each sibling. 'Ignore Proportions' takes space for function name " +"drawing before drawing children. Note that size proportions can get " +"heavily wrong.
This is a TreeMap widget. Keyboard " +"navigation is available with the left/right arrow keys for traversing " +"siblings, and up/down arrow keys to go a nesting level up/down. Return" +"em> activates the current item.
" +msgstr "" +"外觀選項可以在選單中找到。要取得精準的大小比例,選擇「隱藏不正確的框線」。" +"這個模式可能會非常花時間,您可能要先限制一下最多的巢狀等級。「最佳」" +"會依父函式的比例來分離子函式的方向。「總是最佳」會依剩餘空間來決定。「忽略比" +"例」會在畫子函式前先保留函式名稱空間。注意大小的比例有可能會錯得很離譜。
" +"有一種「樹狀地圖」元件。可以用鍵盤左右鍵來導覽所有的子節點,上下鍵則可以進" +"出巢狀等級。Enter 鍵會啟動目前的項目。
" -#. i18n: file configdlgbase.ui line 310 -#: rc.cpp:57 -#, no-c-format -msgid "File:" -msgstr "檔案:" +#: callmapview.cpp:167 +msgid "Go To" +msgstr "跳到" -#. i18n: file configdlgbase.ui line 376 -#: rc.cpp:60 -#, no-c-format -msgid "Annotations" -msgstr "註記" +#: callmapview.cpp:184 +msgid "Stop at Depth" +msgstr "停止於深度" -#. i18n: file configdlgbase.ui line 395 -#: rc.cpp:63 -#, no-c-format -msgid "Context lines in annotations:" -msgstr "註記裡的內容:" +#: callmapview.cpp:187 treemap.cpp:3101 +msgid "No Depth Limit" +msgstr "沒有深度限制" -#. i18n: file configdlgbase.ui line 423 -#: rc.cpp:66 -#, no-c-format -msgid "Source Folders" -msgstr "程式源碼資料夾" +#: callmapview.cpp:190 +msgid "Depth 10" +msgstr "深度 10" -#. i18n: file configdlgbase.ui line 454 -#: rc.cpp:69 -#, no-c-format -msgid "Object / Related Source Base" -msgstr "物件 / 相關來源基礎" +#: callmapview.cpp:192 +msgid "Depth 15" +msgstr "深度 15" -#. i18n: file configdlgbase.ui line 483 -#: rc.cpp:72 -#, no-c-format -msgid "Add..." -msgstr "新增..." +#: callmapview.cpp:194 +msgid "Depth 20" +msgstr "深度 20" -#. i18n: file dumpselectionbase.ui line 16 -#: rc.cpp:84 toplevel.cpp:352 toplevel.cpp:604 -#, no-c-format -msgid "Profile Dumps" -msgstr "分析檔傾印" +#: callmapview.cpp:198 treemap.cpp:3107 +msgid "Depth of '%1' (%2)" +msgstr "%1 的深度(%2)" -#. i18n: file dumpselectionbase.ui line 32 -#: rc.cpp:87 -#, no-c-format -msgid "Target" -msgstr "目標" +#: callmapview.cpp:204 +msgid "Decrement Depth (to %1)" +msgstr "遞減深度(到 %1)" -#. i18n: file dumpselectionbase.ui line 54 -#: rc.cpp:90 -#, no-c-format -msgid "Time" -msgstr "時間" +#: callmapview.cpp:205 +msgid "Increment Depth (to %1)" +msgstr "遞增深度(到 %1)" -#. i18n: file dumpselectionbase.ui line 65 -#: rc.cpp:93 -#, no-c-format -msgid "Path" -msgstr "路徑" +#: callmapview.cpp:209 +msgid "Stop at Function" +msgstr "停止於函式" -#. i18n: file dumpselectionbase.ui line 106 -#: rc.cpp:99 -#, no-c-format -msgid "Target command:" -msgstr "目標命令:" +#: callmapview.cpp:210 +msgid "No Function Limit" +msgstr "無函式限制" -#. i18n: file dumpselectionbase.ui line 119 -#: rc.cpp:102 -#, no-c-format -msgid "Profiler options:" -msgstr "分析檔選項:" - -#. i18n: file dumpselectionbase.ui line 125 -#: rc.cpp:105 -#, no-c-format -msgid "Option" -msgstr "選項" +#: callmapview.cpp:240 +msgid "Stop at Area" +msgstr "停止於區域" -#. i18n: file dumpselectionbase.ui line 136 -#: rc.cpp:108 rc.cpp:219 -#, no-c-format -msgid "Value" -msgstr "數值" +#: callmapview.cpp:243 treemap.cpp:3039 +msgid "No Area Limit" +msgstr "沒有區域限制" -#. i18n: file dumpselectionbase.ui line 147 -#: rc.cpp:111 -#, no-c-format -msgid "Trace" -msgstr "追蹤" +#: callmapview.cpp:246 +msgid "50 Pixels" +msgstr "50 像素" -#. i18n: file dumpselectionbase.ui line 160 -#: rc.cpp:114 rc.cpp:237 -#, no-c-format -msgid "Jumps" -msgstr "跳躍" +#: callmapview.cpp:248 +msgid "100 Pixels" +msgstr "100 像素" -#. i18n: file dumpselectionbase.ui line 174 -#: rc.cpp:117 -#, no-c-format -msgid "Instructions" -msgstr "指令" +#: callmapview.cpp:250 +msgid "200 Pixels" +msgstr "200 像素" -#. i18n: file dumpselectionbase.ui line 189 -#: rc.cpp:120 rc.cpp:240 -#, no-c-format -msgid "Events" -msgstr "事件" +#: callmapview.cpp:252 +msgid "500 Pixels" +msgstr "500 像素" -#. i18n: file dumpselectionbase.ui line 202 -#: rc.cpp:123 -#, no-c-format -msgid "Full Cache" -msgstr "完整快取" +#: callmapview.cpp:258 treemap.cpp:3045 +msgid "Area of '%1' (%2)" +msgstr "%1 的區域 (%2)" -#. i18n: file dumpselectionbase.ui line 216 -#: rc.cpp:126 -#, no-c-format -msgid "Custom" -msgstr "自訂" +#: callmapview.cpp:264 treemap.cpp:3071 +msgid "Double Area Limit (to %1)" +msgstr "將區域限制加倍(到 %1)" -#. i18n: file dumpselectionbase.ui line 231 -#: rc.cpp:129 -#, no-c-format -msgid "Collect" -msgstr "收集" +#: callmapview.cpp:266 +msgid "Half Area Limit (to %1)" +msgstr "將區域限制減半(到 %1)" -#. i18n: file dumpselectionbase.ui line 244 -#: rc.cpp:132 -#, no-c-format -msgid "At Startup" -msgstr "啟動時" +#: callmapview.cpp:273 +msgid "Visualisation" +msgstr "視覺化" -#. i18n: file dumpselectionbase.ui line 258 -#: rc.cpp:135 -#, no-c-format -msgid "While In" -msgstr "當在" +#: callmapview.cpp:277 +msgid "Split Direction" +msgstr "分割方向" -#. i18n: file dumpselectionbase.ui line 273 -#: rc.cpp:138 -#, no-c-format -msgid "Skip" -msgstr "略過" +#: callmapview.cpp:279 +msgid "Skip Incorrect Borders" +msgstr "略過不正確的邊框" -#. i18n: file dumpselectionbase.ui line 286 -#: rc.cpp:141 -#, no-c-format -msgid "PLT" -msgstr "PLT" +#: callmapview.cpp:284 +msgid "Border Width" +msgstr "邊框寬度" -#. i18n: file dumpselectionbase.ui line 315 -#: rc.cpp:147 -#, no-c-format -msgid "Dump Profile" -msgstr "傾印分析檔" +#: callmapview.cpp:285 +msgid "Border 0" +msgstr "邊框 0" -#. i18n: file dumpselectionbase.ui line 328 -#: rc.cpp:150 -#, no-c-format -msgid "Every BBs" -msgstr "每次 BB" +#: callmapview.cpp:288 +msgid "Border 1" +msgstr "邊框 1" -#. i18n: file dumpselectionbase.ui line 342 -#: rc.cpp:153 rc.cpp:162 -#, no-c-format -msgid "On Entering" -msgstr "進入時" +#: callmapview.cpp:290 +msgid "Border 2" +msgstr "邊框 2" -#. i18n: file dumpselectionbase.ui line 356 -#: rc.cpp:156 -#, no-c-format -msgid "On Leaving" -msgstr "離開時" +#: callmapview.cpp:292 +msgid "Border 3" +msgstr "邊框 3" -#. i18n: file dumpselectionbase.ui line 371 -#: rc.cpp:159 -#, no-c-format -msgid "Zero Events" -msgstr "清空事件" +#: callmapview.cpp:297 +msgid "Draw Symbol Names" +msgstr "繪製符號名稱" -#. i18n: file dumpselectionbase.ui line 399 -#: rc.cpp:165 -#, no-c-format -msgid "Separate" -msgstr "分離" +#: callmapview.cpp:298 +msgid "Draw Cost" +msgstr "繪製花費" -#. i18n: file dumpselectionbase.ui line 412 -#: rc.cpp:168 -#, no-c-format -msgid "Threads" -msgstr "執行緒" +#: callmapview.cpp:299 +msgid "Draw Location" +msgstr "繪製位置" -#. i18n: file dumpselectionbase.ui line 426 -#: rc.cpp:171 -#, no-c-format -msgid "Recursions" -msgstr "遞迴" +#: callmapview.cpp:300 +msgid "Draw Calls" +msgstr "繪製呼叫" -#. i18n: file dumpselectionbase.ui line 440 -#: rc.cpp:174 -#, no-c-format -msgid "Call Chain" -msgstr "呼叫鍊" +#: callmapview.cpp:303 partselection.cpp:342 +msgid "Ignore Proportions" +msgstr "忽略屬性" -#. i18n: file dumpselectionbase.ui line 470 -#: rc.cpp:177 -#, no-c-format -msgid "Custom profiler options:" -msgstr "自訂分析器選項:" +#: callmapview.cpp:304 partselection.cpp:344 treemap.cpp:2887 +msgid "Allow Rotation" +msgstr "允許旋轉" -#. i18n: file dumpselectionbase.ui line 508 -#: rc.cpp:180 -#, no-c-format -msgid "Run New Profile" -msgstr "執行新分析檔" +#: callmapview.cpp:321 treemap.cpp:2889 +msgid "Shading" +msgstr "遮蔽" -#. i18n: file dumpselectionbase.ui line 520 -#: rc.cpp:183 -#, no-c-format -msgid "Info" -msgstr "資訊" +#: callmapview.cpp:431 +msgid "Call Map: Current is '%1'" +msgstr "呼叫映射:目前是 %1" -#. i18n: file dumpselectionbase.ui line 531 -#: rc.cpp:186 -#, no-c-format -msgid "Dump reason:" -msgstr "傾印理由:" +#: callmapview.cpp:599 +msgid "(no function)" +msgstr "(無函式)" -#. i18n: file dumpselectionbase.ui line 544 -#: rc.cpp:189 -#, no-c-format -msgid "Event summary:" -msgstr "事件摘要:" +#: callmapview.cpp:741 callmapview.cpp:858 +msgid "(no call)" +msgstr "(無呼叫)" -#. i18n: file dumpselectionbase.ui line 550 -#: callmapview.cpp:59 partselection.cpp:58 rc.cpp:192 -#, no-c-format -msgid "Name" -msgstr "名稱" +#: callview.cpp:45 instrview.cpp:127 sourceview.cpp:52 +msgid "Cost 2" +msgstr "花費 2" -#. i18n: file dumpselectionbase.ui line 561 -#: rc.cpp:195 -#, no-c-format -msgid "Sum" -msgstr "總計" +#: callview.cpp:47 callview.cpp:51 +msgid "Count" +msgstr "計數" -#. i18n: file dumpselectionbase.ui line 579 -#: rc.cpp:198 -#, no-c-format -msgid "Miscellaneous:" -msgstr "其他:" +#: callview.cpp:48 coverageview.cpp:50 +msgid "Caller" +msgstr "呼叫者" -#. i18n: file dumpselectionbase.ui line 617 -#: rc.cpp:201 -#, no-c-format -msgid "Show" -msgstr "顯示" +#: callview.cpp:52 coverageview.cpp:56 +msgid "Callee" +msgstr "被呼叫者" -#. i18n: file dumpselectionbase.ui line 625 -#: rc.cpp:204 -#, no-c-format -msgid "Compare" -msgstr "比較" +#: callview.cpp:85 +msgid "" +"List of direct CallersThis list shows all functions calling the " +"current selected one directly, together with a call count and the cost spent " +"in the current selected function while being called from the function from " +"the list.
An icon instead of an inclusive cost specifies that this is " +"a call inside of a recursive cycle. An inclusive cost makes no sense here." +"p>
Selecting a function makes it the current selected one of this " +"information panel. If there are two panels (Split mode), the function of the " +"other panel is changed instead.
" +msgstr "" +"直接呼叫者清單這個清單顯示直接呼叫目前選取函式的所有函式,以及呼叫" +"次數與呼叫花費。
如果顯示一圖示而非引入花費,則表示這個呼叫是在遞迴循" +"環之中。引入花費在此沒有意義。
選擇某個函式會在目前資訊面板的顯示中跳" +"到該函式。如果有兩個面板(分割模式),則會變換另一個面板的函式。
" -#. i18n: file dumpselectionbase.ui line 637 -#: rc.cpp:207 -#, no-c-format -msgid "State" -msgstr "狀態" +#: callview.cpp:98 +msgid "" +"List of direct CalleesThis list shows all functions called by the " +"current selected one directly, together with a call count and the cost spent " +"in this function while being called from the selected function." +"p>
Selecting a function makes it the current selected one of this " +"information panel. If there are two panels (Split mode), the function of the " +"other panel is changed instead.
" +msgstr "" +"直接被呼叫者清單這個清單顯示目前選取函式直接呼叫的所有函式,以及呼" +"叫次數與呼叫花費。
選擇某個函式會在目前資訊面板的顯示中跳到該函式。如" +"果有兩個面板(分割模式),則會變換另一個面板的函式。
" -#. i18n: file dumpselectionbase.ui line 656 -#: rc.cpp:210 +#: configdlg.cpp:58 dumpselectionbase.ui:824 #, no-c-format -msgid "Update" -msgstr "更新" +msgid "ELF Objects" +msgstr "ELF 物件" -#. i18n: file dumpselectionbase.ui line 664 -#: rc.cpp:213 -#, no-c-format -msgid "Every [s]:" -msgstr "間隔(秒):" +#: configdlg.cpp:60 +msgid "Source Files" +msgstr "程式源碼檔案" -#. i18n: file dumpselectionbase.ui line 677 -#: rc.cpp:216 -#, no-c-format -msgid "Counter" -msgstr "計數器" +#: configdlg.cpp:61 +msgid "C++ Classes" +msgstr "C++ 類別" -#. i18n: file dumpselectionbase.ui line 699 -#: rc.cpp:222 -#, no-c-format -msgid "Dumps Done" -msgstr "傾印完成" +#: configdlg.cpp:62 +msgid "Function (no Grouping)" +msgstr "功能(無群組)" -#. i18n: file dumpselectionbase.ui line 713 -#: rc.cpp:225 -#, no-c-format -msgid "Is Collecting" -msgstr "收集中" +#: configdlg.cpp:157 configdlg.cpp:350 configdlg.cpp:371 +msgid "(always)" +msgstr "(總是)" -#. i18n: file dumpselectionbase.ui line 727 -#: rc.cpp:228 -#, no-c-format -msgid "Executed" -msgstr "已執行" +#: configdlg.cpp:210 +msgid "KCachegrind Configuration" +msgstr "KCachegrind 設定" -#. i18n: file dumpselectionbase.ui line 740 -#: rc.cpp:231 -#, no-c-format -msgid "Basic Blocks" -msgstr "基本區塊" +#: configdlg.cpp:211 +msgid "" +"The Maximum Number of List Items should be below 500.The previous set value " +"(%1) will still be used." +msgstr "最大的清單項目數應該在 500 以下。將改用之前的設定值(%1)。" -#. i18n: file dumpselectionbase.ui line 754 -#: callmapview.cpp:63 rc.cpp:234 rc.cpp:339 -#, no-c-format -msgid "Calls" -msgstr "呼叫" +#: configdlg.cpp:384 +msgid "Choose Source Folder" +msgstr "選擇來源資料夾" -#. i18n: file dumpselectionbase.ui line 796 -#: rc.cpp:243 -#, no-c-format -msgid "Ir" -msgstr "Ir" +#: configuration.cpp:67 +msgid "Instruction Fetch" +msgstr "指令抓取" -#. i18n: file dumpselectionbase.ui line 811 -#: rc.cpp:246 -#, no-c-format -msgid "Distinct" -msgstr "不同" +#: configuration.cpp:68 +msgid "Data Read Access" +msgstr "資料讀取存取" -#. i18n: file dumpselectionbase.ui line 824 -#: configdlg.cpp:58 rc.cpp:249 -#, no-c-format -msgid "ELF Objects" -msgstr "ELF 物件" +#: configuration.cpp:69 +msgid "Data Write Access" +msgstr "資料寫入存取" -#. i18n: file dumpselectionbase.ui line 838 -#: rc.cpp:252 -#, no-c-format -msgid "Functions" -msgstr "函式" +#: configuration.cpp:70 +msgid "L1 Instr. Fetch Miss" +msgstr "L1 指令抓取失誤" -#. i18n: file dumpselectionbase.ui line 852 -#: rc.cpp:255 -#, no-c-format -msgid "Contexts" -msgstr "內文" +#: configuration.cpp:71 +msgid "L1 Data Read Miss" +msgstr "L1 資料讀取失誤" -#. i18n: file dumpselectionbase.ui line 890 -#: rc.cpp:258 -#, no-c-format -msgid "Stack trace:" -msgstr "堆疊追蹤:" +#: configuration.cpp:72 +msgid "L1 Data Write Miss" +msgstr "L1 資料寫入失誤" -#. i18n: file dumpselectionbase.ui line 898 -#: rc.cpp:261 -#, no-c-format -msgid "Sync." -msgstr "同步" +#: configuration.cpp:73 +msgid "L2 Instr. Fetch Miss" +msgstr "L2 指令抓取失誤" -#. i18n: file dumpselectionbase.ui line 906 -#: instrview.cpp:125 rc.cpp:264 sourceview.cpp:50 -#, no-c-format -msgid "#" -msgstr "#" +#: configuration.cpp:74 +msgid "L2 Data Read Miss" +msgstr "L2 資料讀取失誤" -#. i18n: file dumpselectionbase.ui line 917 -#: costtypeview.cpp:43 coverageview.cpp:46 partview.cpp:47 rc.cpp:267 -#: rc.cpp:309 -#, no-c-format -msgid "Incl." -msgstr "引入" +#: configuration.cpp:75 +msgid "L2 Data Write Miss" +msgstr "L2 資料寫入失誤" -#. i18n: file dumpselectionbase.ui line 928 -#: coverageview.cpp:49 partview.cpp:49 rc.cpp:270 rc.cpp:315 -#, no-c-format -msgid "Called" -msgstr "已呼叫" +#: configuration.cpp:76 +#, fuzzy +msgid "LL Instr. Fetch Miss" +msgstr "L1 指令抓取失誤" -#. i18n: file dumpselectionbase.ui line 950 -#: callmapview.cpp:61 rc.cpp:276 rc.cpp:321 -#, no-c-format -msgid "Location" -msgstr "位置" +#: configuration.cpp:77 +#, fuzzy +msgid "LL Data Read Miss" +msgstr "L1 資料讀取失誤" -#. i18n: file dumpselectionbase.ui line 976 -#: rc.cpp:279 -#, no-c-format -msgid "Start" -msgstr "開始" +#: configuration.cpp:78 +#, fuzzy +msgid "LL Data Write Miss" +msgstr "L1 資料寫入失誤" -#. i18n: file dumpselectionbase.ui line 1001 -#: rc.cpp:282 -#, no-c-format -msgid "Zero" -msgstr "歸零" +#: configuration.cpp:79 +msgid "Samples" +msgstr "樣本" -#. i18n: file dumpselectionbase.ui line 1009 -#: rc.cpp:285 -#, no-c-format -msgid "Dump" -msgstr "傾印" +#: configuration.cpp:80 +msgid "System Time" +msgstr "系統時間" -#. i18n: file dumpselectionbase.ui line 1021 -#: rc.cpp:288 -#, no-c-format -msgid "Messages" -msgstr "訊息" +#: configuration.cpp:81 +msgid "User Time" +msgstr "使用者時間" -#. i18n: file dumpselectionbase.ui line 1045 -#: rc.cpp:291 -#, no-c-format -msgid "Kill Run" -msgstr "終止執行" +#: configuration.cpp:82 +msgid "L1 Miss Sum" +msgstr "L1 失誤總和" -#. i18n: file functionselectionbase.ui line 16 -#: rc.cpp:297 toplevel.cpp:594 -#, no-c-format -msgid "Function Profile" -msgstr "函式分析檔" +#: configuration.cpp:83 +msgid "L2 Miss Sum" +msgstr "L2 失誤總和" + +#: configuration.cpp:84 +#, fuzzy +msgid "LL Miss Sum" +msgstr "L1 失誤總和" + +#: configuration.cpp:85 +msgid "Cycle Estimation" +msgstr "循環估計" + +#: costlistitem.cpp:60 +#, c-format +msgid "" +"_n: (%n item skipped)\n" +"(%n items skipped)" +msgstr "略過 %n 個項目" + +#: costtypeitem.cpp:56 +msgid "Unknown Type" +msgstr "未知類型" + +#: costtypeview.cpp:42 +msgid "Event Type" +msgstr "事件類型" -#. i18n: file functionselectionbase.ui line 41 -#: rc.cpp:300 +#: costtypeview.cpp:43 coverageview.cpp:46 dumpselectionbase.ui:917 +#: functionselectionbase.ui:103 partview.cpp:47 #, no-c-format -msgid "&Search:" -msgstr "搜尋(&S):" +msgid "Incl." +msgstr "引入" -#. i18n: file functionselectionbase.ui line 62 -#: costtypeview.cpp:44 coverageview.cpp:53 partview.cpp:48 rc.cpp:303 -#: rc.cpp:312 +#: costtypeview.cpp:44 coverageview.cpp:53 functionselectionbase.ui:62 +#: functionselectionbase.ui:114 partview.cpp:48 #, no-c-format msgid "Self" msgstr "自身" -#. i18n: file functionselectionbase.ui line 73 -#: rc.cpp:306 -#, no-c-format -msgid "Group" -msgstr "群組" - -#. i18n: file partselectionbase.ui line 16 -#: rc.cpp:324 toplevel.cpp:276 toplevel.cpp:576 -#, no-c-format -msgid "Parts Overview" -msgstr "部件概觀" +#: costtypeview.cpp:45 +msgid "Short" +msgstr "短" -#. i18n: file partselectionbase.ui line 60 -#: rc.cpp:327 -#, no-c-format -msgid "(no trace parts)" -msgstr "(無追蹤部件)" +#: costtypeview.cpp:47 +msgid "Formula" +msgstr "公式" -#. i18n: file stackselectionbase.ui line 16 -#: rc.cpp:330 -#, no-c-format -msgid "Stack Selection" -msgstr "堆疊選擇" +#: costtypeview.cpp:81 +msgid "" +"Cost Types ListThis list shows all cost types available and what " +"the self/inclusive cost of the current selected function is for that cost " +"type.
By choosing a cost type from the list, you change the cost type " +"of costs shown all over KCachegrind to be the selected one.
" +msgstr "" +"花費類型清單這份清單顯示所有可用的花費類型(cost type)以及目前所選" +"取的函式在該類型的自身與引入的花費。
選取其中一種類型,您可以改變所有 " +"KCachegrind 的花費成為該類型。
" -#. i18n: file stackselectionbase.ui line 31 -#: callmapview.cpp:60 callview.cpp:44 instrview.cpp:126 partselection.cpp:59 -#: rc.cpp:333 sourceview.cpp:51 -#, no-c-format -msgid "Cost" -msgstr "花費" +#: costtypeview.cpp:98 +msgid "Set Secondary Event Type" +msgstr "設定次要事件類型" -#. i18n: file stackselectionbase.ui line 42 -#: rc.cpp:336 -#, no-c-format -msgid "Cost2" -msgstr "花費2" +#: costtypeview.cpp:100 +msgid "Remove Secondary Event Type" +msgstr "移除次要事件類型" -#: partgraph.cpp:167 -#, c-format -msgid "Profile Part %1" -msgstr "分析檔部件 %1" +#: costtypeview.cpp:105 +msgid "Edit Long Name" +msgstr "編輯長名稱" -#: partgraph.cpp:226 -msgid "(no trace)" -msgstr "(無追蹤)" +#: costtypeview.cpp:106 +msgid "Edit Short Name" +msgstr "編輯短名稱" -#: partgraph.cpp:229 -msgid "(no part)" -msgstr "(無部件)" +#: costtypeview.cpp:107 +msgid "Edit Formula" +msgstr "編輯公式" -#: tips.txt:3 -msgid "" -"...that the What's This? help for every GUI widget\n" -"in KCachegrind contains detailed usage information for this widget?\n" -"It is highly recommended to read at least these help texts on first\n" -"use. Request What's This? help by pressing\n" -"Shift+F1 and clicking on the widget.
\n" +#: costtypeview.cpp:108 +msgid "Remove" msgstr "" -"每個使用者介面元件中的「這是什麼?」說明內含了此元件的詳細用法資訊。建議第一次使用時先閱讀它。您以可以按 Shift+F1 叫出。
\n" -#: tips.txt:12 -msgid "" -"...that you can get profile information at instruction level\n" -"with Calltree when you provide the option --dump-instr=yes?\n" -"Use the Assembler View for the instruction annotations.\n" -"
\n" -msgstr "" -"若您提供這個選項:--dump-instr=yes,您可以在呼叫樹模式取得指令層級的分析檔資訊。\n" -"用「組譯器檢視」取得指令的註記。
\n" +#: costtypeview.cpp:115 +msgid "New Cost Type ..." +msgstr "新增花費類型..." -#: tips.txt:20 -msgid "" -"...that you can use Alt-Left/Right keys of your keyboard to go\n" -"back/forward in the active object history ?
\n" -msgstr "" -"您可以用 Alt 加上左右鍵來在目前的物件歷史中往返。
\n" +#: costtypeview.cpp:149 costtypeview.cpp:154 +#, c-format +msgid "New%1" +msgstr "新增%1" -#: tips.txt:26 -msgid "" -"...that you can navigate in the Callee/Caller Map View using\n" -"arrow keys? Use Left/Right to change to siblings of the current\n" -"item; use Up/Down to go one nesting level up/down. To select\n" -"the current item, press Space, and to activate it, press Return.\n" -"
\n" -msgstr "" -"您可以用方向鍵在呼叫者/被呼叫者地圖中導覽。用左右鍵來跳到相鄰的節點,上下鍵則在不同的巢狀等級間來回。要選取目前的項目,您可以按空白鍵,按下 Enter " -"鍵則是啟用。
\n" +#: costtypeview.cpp:155 +#, c-format +msgid "New Cost Type %1" +msgstr "新增花費類型 %1" -#: tips.txt:35 +#: coverageitem.cpp:65 coverageitem.cpp:205 functionitem.cpp:72 +#, c-format msgid "" -"...that you can navigate in the Call Graph View using\n" -"arrow keys? Use Up/Down to go one calling level up/down, alternating\n" -"between calls and functions. Use Left/Right to change to siblings of a current\n" -"selected call. To activate the current item, press Return.\n" -"
\n" -msgstr "" -"您可以用方向鍵在呼叫圖檢視中導覽。用左右鍵來跳到與目前選取的呼叫相鄰的節點,上下鍵則在不同的呼叫等級間來回,切換呼叫函式。按下 Enter " -"鍵則是啟用目前的項目。
\n" +"_n: (%n function skipped)\n" +"(%n functions skipped)" +msgstr "(已略過 %n 個函式)" -#: tips.txt:44 -msgid "" -"...that you can rapidly locate a function by entering part of its\n" -"name (case-insensitive) into the edit line of the toolbar\n" -"and hit return?
\n" -msgstr "" -"您可以在工具列的編輯欄中輸入某函式的部份名稱(不分大小寫),再按下 Enter 鍵就可以快速找到該函式的位置。
\n" +#: coverageview.cpp:48 coverageview.cpp:54 +msgid "Distance" +msgstr "距離" + +#: coverageview.cpp:49 dumpselectionbase.ui:928 functionselectionbase.ui:125 +#: partview.cpp:49 +#, no-c-format +msgid "Called" +msgstr "已呼叫" + +#: coverageview.cpp:55 +msgid "Calling" +msgstr "呼叫中" -#: tips.txt:51 +#: coverageview.cpp:90 msgid "" -"...that you can assign custom colors to \n" -"ELF objects/C++ Classes/Source Files for graph coloring\n" -"in Settings->Configure KCachegrind...?
\n" +"List of all CallersThis list shows all functions calling the " +"current selected one, either directly or with several functions in-between " +"on the stack; the number of functions in-between plus one is called the " +"Distance (e.g. for function A,B,C there exists a call from A to C " +"when A calls B and B calls C, i.e. A => B => C. The distance here is 2)." +"p>
Absolute cost shown is the cost spent in the selected function while a " +"listed function is active; relative cost is the percentage of all cost spent " +"in the selected function while the listed one is active. The cost graphic " +"shows logarithmic percentage with a different color for each distance." +"p>
As there can be many calls from the same function, the distance column " +"sometimes shows the range of distances for all calls happening; then, in " +"parentheses, there is the medium distance, i.e. the distance where most of " +"the call costs happened.
Selecting a function makes it the current " +"selected one of this information panel. If there are two panels (Split " +"mode), the function of the other panel is changed instead.
" msgstr "" -"您可以指定自訂的顏色給圖形中的 ELF 物件、C++ 類別或源碼檔。您只要在「設定」─「設定 KCachegrind...」中設定即可。
\n" +"所有呼叫者清單此清單顯示目前選取函式的所有呼叫者函式,包括直接呼叫" +"與間接呼叫。間接呼叫的數字加一稱為「距離」(例如,函式 A 呼叫函式 B,函式 B " +"又呼叫函式 C,則函式 A 到 C 的距離為 2)
顯示的「絕對花費」是當一個已" +"列出的所選函式使用時的花費;「相對花費」是此函式相對於所有已選函式的花費。花" +"費圖形以對每個距離以不同顏色顯示對數百分比。
因為有可能同一個函式中會" +"有許多呼叫,距離欄位有時會顯示所有發生呼叫的函式的距離範圍,這種狀況下,括弧" +"中顯示的是平均距離,也就是發生呼叫最多花費的地方。
選擇某函式可以看每" +"個函式的資訊。如果在分割模式下的兩個面板,會在另一個面板改變。
" -#: tips.txt:58 +#: coverageview.cpp:120 msgid "" -"...that you can see if debug info is available for a selected \n" -"function by looking at the location label in the Info tab or\n" -"the source listing header in the source tab?
\n" -"There must be the name of the source file (with extension).\n" -"If KCachegrind still doesn't show the source, make sure that you\n" -"have added the directory of the source file to the\n" -"Source Directories list in the configuration.\n" +"List of all Callees
This list shows all functions called by the " +"current selected one, either directly or with several function in-between on " +"the stack; the number of function in-between plus one is called the " +"Distance (e.g. for function A,B,C there exists a call from A to C " +"when A calls B and B calls C, i.e. A => B => C. The distance here is 2)." +"p>
Absolute cost shown is the cost spent in the listed function while the " +"selected is active; relative cost is the percentage of all cost spent in the " +"listed function while the selected one is active. The cost graphic always " +"shows logarithmic percentage with a different color for each distance." +"p>
As there can be many calls to the same function, the distance column " +"sometimes shows the range of distances for all calls happening; then, in " +"parentheses, there is the medium distance, i.e. the distance where most of " +"the call costs happened.
Selecting a function makes it the current " +"selected one of this information panel. If there are two panels (Split " +"mode), the function of the other panel is changed instead.
" msgstr "" -"如果有提供除錯資訊的話,您可以在資訊分頁中的「位置」標籤處,或是源碼分頁處的源碼標頭處看到所選取函式的除錯資訊。
\n" -"必須要有源碼檔的檔名(包括副檔名)。如果 KCachegrind 還是沒有顯示源碼,請確定您已將源碼檔所在的路徑加到設定中的「源碼目錄」清單中。
" -"\n" +"被呼叫者清單這份清單顯示所有被目前選取的函式呼叫的函式,包括直接與" +"間接呼叫。間接呼叫的數字加一稱為「距離」(例如,函式 A 呼叫函式 B,函式 B 又" +"呼叫函式 C,則函式 A 到 C 的距離為 2)
顯示的「絕對花費」是當一個已列" +"出的所選函式使用時的花費;「相對花費」是此函式相對於所有已選函式的花費。花費" +"圖形以對每個距離以不同顏色顯示對數百分比。
因為有可能同一個函式中會有" +"許多呼叫,距離欄位有時會顯示所有發生呼叫的函式的距離範圍,這種狀況下,括弧中" +"顯示的是平均距離,也就是發生呼叫最多花費的地方。
選擇某函式可以看每個" +"函式的資訊。如果在分割模式下的兩個面板,會在另一個面板改變。
" -#: tips.txt:69 -msgid "" -"...that you can configure whether KCachgrind should\n" -"show absolute event counts or relative ones (percentage display)?
\n" -msgstr "" -"您可以設定是否要讓 KCachegrind 顯示絕對事件計數或相對事件計數(以百分比顯示)。
\n" +#: functionselection.cpp:52 toplevel.cpp:772 +msgid "(No Grouping)" +msgstr "(無群組)" -#: tips.txt:75 -msgid "" -"...that you can configure the maximum number of items\n" -"for all function lists in KCachegrind? Limiting the number\n" -"of items is done to get a fast reacting GUI. The last item in\n" -"the list will show you the number of skipped functions, together\n" -"with a cost condition for these skipped functions.
\n" -"To activate a function with small costs, search for it and select\n" -"it in the flat profile. Selecting functions with small cost will\n" -"temporarily add them to the flat profile list.
\n" -msgstr "" -"您可以在 KCachegrind " -"中設定所有函式清單中的最大顯示數目。這樣的話,清單中的最後一個項目會顯示出還有多少函式未顯示出來,以及這些未顯示函式的花費。
\n" -"要啟動較少花費的函式,您可以搜尋並在簡單分析檔中選取。這樣會暫時新增到簡單分析檔清單中。
\n" +#: functionselection.cpp:176 +#, c-format +msgid "Go to %1" +msgstr "跳到 %1" + +#: functionselection.cpp:203 +msgid "Show All Items" +msgstr "顯示全部項目" + +#: functionselection.cpp:226 +msgid "No Grouping" +msgstr "未群組" + +#: functionselection.cpp:243 toplevel.cpp:763 +msgid "Grouping" +msgstr "群組" + +#: instritem.cpp:106 sourceitem.cpp:86 +msgid "Active call to '%1'" +msgstr "使用中到 %1 的呼叫" -#: tips.txt:87 +#: instritem.cpp:108 sourceitem.cpp:88 msgid "" -"...that the Coverage tab - in contrast to the Call Lists tab -\n" -"shows all functions that are calling the selected function\n" -"(upper part) / are called by the selected function (bottom part),\n" -"no matter how many function are between them on the stack?
\n" -"Examples:
\n" -"An entry in the upper list for function foo1() with a value of 50%\n" -"with function bar() selected means that 50% of all the cost of function\n" -"bar() happened while called from function foo1().
\n" -"An entry in the bottom list for function foo2() with a value of 50%\n" -"with function bar() selected means that 50% of all the cost of function\n" -"bar() happened while calling foo2() from bar().
\n" -msgstr "" -"「總體呼叫頁」顯示的是呼叫選取的函式的所有函式(上半部),以及被選取的函式呼叫的函式(下半部),包括直接與間接呼叫。
\n" -"例如:
\n" -"選取函式 bar(),上半部清單中的函式 foo1() 數值 50% 表示從 foo1() 呼叫 bar() 時的花費佔全部花費的 50%。
\n" -"下半部清單中的函式 foo2() 數值 50% 表示 bar() 呼叫 foo2() 時的花費佔全部花費的 50%。
\n" +"_n: %n call to '%1'\n" +"%n calls to '%1'" +msgstr "%n 個到 %1 的呼叫" + +#: instritem.cpp:137 +msgid "Jump %1 of %2 times to 0x%3" +msgstr "跳躍到 0x%3 %1 次,共要 %2 次" + +#: instritem.cpp:142 +msgid "Jump %1 times to 0x%2" +msgstr "跳躍到 0x%2 %1 次" + +#: instritem.cpp:185 sourceitem.cpp:169 +msgid "(cycle)" +msgstr "(循環)" + +#: dumpselectionbase.ui:906 instrview.cpp:125 sourceview.cpp:50 +#, no-c-format +msgid "#" +msgstr "#" + +#: instrview.cpp:129 +msgid "Hex" +msgstr "十六進位值" + +#: instrview.cpp:131 tabview.cpp:313 +msgid "Assembler" +msgstr "組譯器" + +#: instrview.cpp:132 +msgid "Source Position" +msgstr "源碼位置" -#: tips.txt:102 +#: instrview.cpp:163 msgid "" -"...that waiting for the tool tip inside of a tree map\n" -"shows the list of names of the nested rectangles the mouse\n" -"pointer is over?
\n" -"Items from this list can be selected by pressing the right\n" -"mouse button.
\n" +"Annotated AssemblerThe annotated assembler list shows the machine " +"code instructions of the current selected function together with (self) cost " +"spent while executing an instruction. If this is a call instruction, lines " +"with details on the call happening are inserted into the source: the cost " +"spent inside of the call, the number of calls happening, and the call " +"destination.
The disassembler output shown is generated with the " +"'objdump' utility from the 'binutils' package.
Select a line with call " +"information to make the destination function of this call current.
" msgstr "" -"滑鼠指標指在樹狀地圖中上頭時稍等一下,會跑出逼個工具提示,裡面會顯示巢狀矩形的名稱清單。
\n" -"清單中的項目可以用滑鼠右鍵選取。
\n" +"註記組譯器(Annotated Assembler)註記組譯器顯示目前選取的函式的機" +"器碼指令,以及執行該指令時的花費。如果是呼叫指令,則呼叫時發生的詳情會插入到" +"源碼中,包括呼叫的花費,呼叫的次數,以及呼叫的目的地。
反組譯輸出可以" +"用 objdump 產生,通常會包在 binutils 套件中。
選取呼叫資訊中的某一行可" +"以眺到被呼叫的函式。
" + +#: instrview.cpp:195 +#, c-format +msgid "Go to Address %1" +msgstr "跳到位址 %1" + +#: instrview.cpp:207 +msgid "Hex Code" +msgstr "十六進位碼" + +#: instrview.cpp:426 +msgid "There is no instruction info in the profile data file." +msgstr "此分析資料檔中沒有指令資訊。" + +#: instrview.cpp:428 +msgid "For the Valgrind Calltree Skin, rerun with option" +msgstr "要用 Valgrind Calltree Skin,請重新執行並指定選項" + +#: instrview.cpp:429 +msgid " --dump-instr=yes" +msgstr " --dump-instr=yes" + +#: instrview.cpp:430 +msgid "To see (conditional) jumps, additionally specify" +msgstr "想要看條件式的跳躍,請額外指定選項" + +#: instrview.cpp:431 +msgid " --trace-jump=yes" +msgstr " --trace-jump=yes" + +#: instrview.cpp:629 +msgid "There is an error trying to execute the command" +msgstr "執行此指令時發生錯誤" + +#: instrview.cpp:634 instrview.cpp:900 +msgid "Check that you have installed 'objdump'." +msgstr "請檢查您是否已安裝 objdump。" + +#: instrview.cpp:636 instrview.cpp:902 +msgid "This utility can be found in the 'binutils' package." +msgstr "這個工具可以在 binutils 套件中找到。" + +#: instrview.cpp:739 +msgid "(No Assembler)" +msgstr "(沒有組譯器)" -#: tips.txt:111 +#: instrview.cpp:875 +#, c-format msgid "" -"...that you can constrain the cost counts shown to only a\n" -"few parts of the whole trace by selecting these parts in the\n" -"\"Trace Selection\" Dockable?
\n" -"To generate multiple parts in a profiling run with\n" -"cachegrind, use e.g. option --cachedumps=xxx for parts\n" -"of a length of xxx basic blocks (A basic block is a run\n" -"of not-branching assembler statements inside of your program\n" -"code).
\n" -msgstr "" -"您可以限制只顯示一小部份部件的花費計數,只要在「追蹤選擇」元件中選取這些部件即可。
\n" -"要在 cachegrind 的分析執行中產生多個部件,可以用像這樣的選項:--cachedumps=xxx 表示 xxx " -"個基本區塊。(基本區塊是在您的程式碼中不分支的組譯敘述)。
\n" +"_n: There is %n cost line without assembler code.\n" +"There are %n cost lines without assembler code." +msgstr "有 %n 個花費線沒有組譯碼。" + +#: instrview.cpp:877 +msgid "This happens because the code of" +msgstr "發生的原因是因為這個的程式碼:" + +#: instrview.cpp:880 +msgid "does not seem to match the profile data file." +msgstr "似乎無法符合此分析資料檔。" + +#: instrview.cpp:883 +msgid "Are you using an old profile data file or is the above mentioned" +msgstr "您正使用舊的分析資料檔,還是像上面提到的" + +#: instrview.cpp:885 +msgid "ELF object from an updated installation/another machine?" +msgstr "這是從已更新的安裝或其他機器來的 ELF 物件嗎?" + +#: instrview.cpp:893 +msgid "There seems to be an error trying to execute the command" +msgstr "試著執行此命令時發生錯誤" + +#: instrview.cpp:898 +msgid "Check that the ELF object used in the command exists." +msgstr "請檢查命令中使用的 ELF 物件存在。" #: main.cpp:38 msgid "RunThis graph shows the nested hierarchy of all callers of the current " -"activated function. Each colored rectangle represents a function; its size " -"tries to be proportional to the cost spent therein while the active function is " -"running (however, there are drawing constrains).
" -msgstr "" -"呼叫者地圖 " -"這個圖形顯示目前活躍的函式所有呼叫者的巢狀架構。每個彩色的矩形表示一個函式,大小會與該函式執行時的花費成比例。(不過畫圖形時會有所限制,所以是盡量成比例)" -"。
" +#: partlistitem.cpp:49 +msgid " (Thread %1)" +msgstr "(執行緒 %1)" -#: callmapview.cpp:105 -msgid "" -"Call Map" -"This graph shows the nested hierarchy of all callees of the current " -"activated function. Each colored rectangle represents a function; its size " -"tries to be proportional to the cost spent therein while the active function is " -"running (however, there are drawing constrains).
" -msgstr "" -"呼叫地圖 " -"這個圖形顯示目前活躍的函式所有呼叫的巢狀架構。每個彩色的矩形表示一個函式,大小會與該函式執行時的花費成比例。(不過畫圖形時會有所限制,所以是盡量成比例)。" -"
" +#: partlistitem.cpp:56 +msgid "(none)" +msgstr "(無)" -#: callmapview.cpp:113 -msgid "" -"Appearance options can be found in the in the context menu. To get exact " -"size proportions, choose 'Hide incorrect borders'. As this mode can be " -"very time consuming, you may want to limit the maximum drawn nesting level " -"before. 'Best' determinates the split direction for children from the aspect " -"ratio of the parent. 'Always Best' decides on remaining space for each sibling. " -"'Ignore Proportions' takes space for function name drawing before " -"drawing children. Note that size proportions can get heavily wrong.
" -"This is a TreeMap widget. Keyboard navigation is available with the " -"left/right arrow keys for traversing siblings, and up/down arrow keys to go a " -"nesting level up/down. Return activates the current item.
" -msgstr "" -"外觀選項可以在選單中找到。要取得精準的大小比例,選擇「隱藏不正確的框線」。這個模式可能會非常" -"花時間,您可能要先限制一下最多的巢狀等級。「最佳」會依父函式的比例來分離子函式的方向。「總是最佳」會依剩餘空間來決定。「忽略比例」會在畫子函式前先保留函式名稱空" -"間。注意大小的比例有可能會錯得很離譜。
" -"有一種「樹狀地圖」元件。可以用鍵盤左右鍵來導覽所有的子節點,上下鍵則可以進出巢狀等級。Enter 鍵會啟動目前的項目。
" +#: partselection.cpp:151 +msgid "Profile Part Overview: Current is '%1'" +msgstr "分析檔部件概觀。目前為 %1" -#: callmapview.cpp:167 -msgid "Go To" -msgstr "跳到" +#: partselection.cpp:287 +msgid "Deselect" +msgstr "取消選擇" -#: callmapview.cpp:184 -msgid "Stop at Depth" -msgstr "停止於深度" +#: partselection.cpp:287 partselection.cpp:311 +msgid "Select" +msgstr "選擇" -#: callmapview.cpp:187 treemap.cpp:3101 -msgid "No Depth Limit" -msgstr "沒有深度限制" +#: partselection.cpp:292 +msgid "Select All Parts" +msgstr "選擇全部的部件" -#: callmapview.cpp:190 -msgid "Depth 10" -msgstr "深度 10" +#: partselection.cpp:294 +msgid "Visible Parts" +msgstr "可見的部件" -#: callmapview.cpp:192 -msgid "Depth 15" -msgstr "深度 15" +#: partselection.cpp:296 +msgid "Hide Selected Parts" +msgstr "隱藏已選取的部件" -#: callmapview.cpp:194 -msgid "Depth 20" -msgstr "深度 20" - -#: callmapview.cpp:198 treemap.cpp:3107 -msgid "Depth of '%1' (%2)" -msgstr "%1 的深度(%2)" +#: partselection.cpp:297 +msgid "Unhide Hidden Parts" +msgstr "重新顯示隱藏的部件" -#: callmapview.cpp:204 -msgid "Decrement Depth (to %1)" -msgstr "遞減深度(到 %1)" +#: partselection.cpp:302 toplevel.cpp:1687 +msgid "Go Back" +msgstr "返回" -#: callmapview.cpp:205 -msgid "Increment Depth (to %1)" -msgstr "遞增深度(到 %1)" +#: partselection.cpp:322 +msgid "Partitioning Mode" +msgstr "切割模式" -#: callmapview.cpp:209 -msgid "Stop at Function" -msgstr "停止於函式" +#: partselection.cpp:323 +msgid "Diagram Mode" +msgstr "繪圖模式" -#: callmapview.cpp:210 -msgid "No Function Limit" -msgstr "無函式限制" +#: partselection.cpp:324 +msgid "Zoom Function" +msgstr "縮放函式" -#: callmapview.cpp:240 -msgid "Stop at Area" -msgstr "停止於區域" +#: partselection.cpp:325 +msgid "Show Direct Calls" +msgstr "顯示直接呼叫" -#: callmapview.cpp:243 treemap.cpp:3039 -msgid "No Area Limit" -msgstr "沒有區域限制" +#: partselection.cpp:326 +msgid "Increment Shown Call Levels" +msgstr "遞增顯示呼叫等級" -#: callmapview.cpp:246 -msgid "50 Pixels" -msgstr "50 像素" +#: partselection.cpp:340 +msgid "Draw Names" +msgstr "繪製名稱" -#: callmapview.cpp:248 -msgid "100 Pixels" -msgstr "100 像素" +#: partselection.cpp:341 +msgid "Draw Costs" +msgstr "繪製花費" -#: callmapview.cpp:250 -msgid "200 Pixels" -msgstr "200 像素" +#: partselection.cpp:343 +msgid "Draw Frames" +msgstr "繪製框架" -#: callmapview.cpp:252 -msgid "500 Pixels" -msgstr "500 像素" +#: partselection.cpp:359 +msgid "Hide Info" +msgstr "隱藏資訊" -#: callmapview.cpp:258 treemap.cpp:3045 -msgid "Area of '%1' (%2)" -msgstr "%1 的區域 (%2)" +#: partselection.cpp:361 +msgid "Show Info" +msgstr "顯示資訊" -#: callmapview.cpp:264 treemap.cpp:3071 -msgid "Double Area Limit (to %1)" -msgstr "將區域限制加倍(到 %1)" +#: partselection.cpp:541 +msgid "(no trace loaded)" +msgstr "(未載入追蹤)" -#: callmapview.cpp:266 -msgid "Half Area Limit (to %1)" -msgstr "將區域限制減半(到 %1)" +#: partview.cpp:46 tracedata.cpp:179 +msgid "Profile Part" +msgstr "分析檔部件" -#: callmapview.cpp:273 -msgid "Visualisation" -msgstr "視覺化" +#: partview.cpp:51 +msgid "Comment" +msgstr "註解" -#: callmapview.cpp:277 -msgid "Split Direction" -msgstr "分割方向" +#: partview.cpp:73 +msgid "" +"Trace Part ListThis list shows all trace parts of the loaded " +"trace. For each part, the self/inclusive cost of the current selected " +"function, spent in the part, is shown; percentage costs are always relative " +"to the total cost of the part (not to the whole trace as in the " +"Trace Part Overview). Also shown are the calls happening to/from the current " +"function inside of the trace part.
By choosing one or more trace parts " +"from the list, the costs shown all over KCachegrind will only be the ones " +"spent in the selected part(s). If no list selection is shown, in fact all " +"trace parts are selected implicitly.
This is a multi-selection list. " +"You can select ranges by dragging the mouse or use SHIFT/CTRL modifiers. " +"Selection/Deselection of trace parts can also be done by using the Trace " +"Part Overview Dockable. This one also supports multiple selection." +"p>
Note that the list is hidden if only one trace part is loaded.
" +msgstr "" +"追蹤部件清單這份清單顯示載入的追蹤的所有追蹤部件。每個部件中包含目" +"前選取的函式在該部件中的自身與引入的花費,百分比是相對於該部件的總花費(不是" +"追蹤部件概觀中的總花費)。另外也會呼叫目前函式的呼叫者與被呼叫者。
若" +"從清單中選擇追蹤部件,就只會顯示選取的部件的花費。如果沒有選擇任何部件,則預" +"設是選取所有的部件。
這是可以多重選擇的清單,您可以拖曳滑鼠來選取一個" +"範圍,或是用 Shift 或 Ctrl 鍵來在「追蹤部件概觀」元件中選擇部件。
注意" +"若是只載入一個追蹤部件,則此元件是隱藏的。
" -#: callmapview.cpp:279 -msgid "Skip Incorrect Borders" -msgstr "略過不正確的邊框" +#: partview.cpp:106 +msgid "Select '%1'" +msgstr "選擇 %1" -#: callmapview.cpp:284 -msgid "Border Width" -msgstr "邊框寬度" +#: partview.cpp:107 +msgid "Hide '%1'" +msgstr "隱藏 %1" -#: callmapview.cpp:285 -msgid "Border 0" -msgstr "邊框 0" +#: partview.cpp:111 +msgid "Hide Selected" +msgstr "隱藏已選取項目" -#: callmapview.cpp:288 -msgid "Border 1" -msgstr "邊框 1" +#: partview.cpp:112 +msgid "Show All" +msgstr "全部顯示" -#: callmapview.cpp:290 -msgid "Border 2" -msgstr "邊框 2" +#: sourceitem.cpp:125 +msgid "Jump %1 of %2 times to %3" +msgstr "跳到 %3 %1 次,總共需要 %2 次" -#: callmapview.cpp:292 -msgid "Border 3" -msgstr "邊框 3" +#: sourceitem.cpp:130 +msgid "Jump %1 times to %2" +msgstr "跳躍到 %2 %1 次" -#: callmapview.cpp:297 -msgid "Draw Symbol Names" -msgstr "繪製符號名稱" +#: sourceview.cpp:54 sourceview.cpp:554 +msgid "Source (unknown)" +msgstr "程式源碼(未知)" -#: callmapview.cpp:298 -msgid "Draw Cost" -msgstr "繪製花費" +#: sourceview.cpp:89 +msgid "" +"Annotated SourceThe annotated source list shows the source lines " +"of the current selected function together with (self) cost spent while " +"executing the code of this source line. If there was a call in a source " +"line, lines with details on the call happening are inserted into the source: " +"the cost spent inside of the call, the number of calls happening, and the " +"call destination.
Select a inserted call information line to make the " +"destination function current.
" +msgstr "" +"註記源碼註記源碼清單顯示目前所選取的函式源碼,以及其執行時的花費。" +"如果在源碼中有呼叫,則呼叫發生時的詳情會被插入源碼中,包括呼叫時的花費,呼叫" +"的數量以及呼叫的目的地。
選取被插入的呼叫資訊可以眺到該函式。
" -#: callmapview.cpp:299 -msgid "Draw Location" -msgstr "繪製位置" +#: sourceview.cpp:120 +#, c-format +msgid "Go to Line %1" +msgstr "跳到第 %1 行" -#: callmapview.cpp:300 -msgid "Draw Calls" -msgstr "繪製呼叫" +#: sourceview.cpp:293 +msgid "(No Source)" +msgstr "(無程式源碼)" -#: callmapview.cpp:303 partselection.cpp:342 -msgid "Ignore Proportions" -msgstr "忽略屬性" +#: sourceview.cpp:512 +msgid "There is no cost of current selected type associated" +msgstr "沒有與目前選取的型態相關的花費" -#: callmapview.cpp:304 partselection.cpp:344 treemap.cpp:2887 -msgid "Allow Rotation" -msgstr "允許旋轉" +#: sourceview.cpp:514 +msgid "with any source line of this function in file" +msgstr "與檔案中此函式的任何程式碼" -#: callmapview.cpp:321 treemap.cpp:2889 -msgid "Shading" -msgstr "遮蔽" +#: sourceview.cpp:518 +msgid "Thus, no annotated source can be shown." +msgstr "因此,沒有註記來源可以顯示。" -#: callmapview.cpp:431 -msgid "Call Map: Current is '%1'" -msgstr "呼叫映射:目前是 %1" +#: sourceview.cpp:553 +msgid "Source ('%1')" +msgstr "程式源碼(%1)" -#: callmapview.cpp:599 -msgid "(no function)" -msgstr "(無函式)" +#: sourceview.cpp:559 +msgid "--- Inlined from '%1' ---" +msgstr "--- 從 %1 引入 ---" -#: callmapview.cpp:741 callmapview.cpp:858 -msgid "(no call)" -msgstr "(無呼叫)" +#: sourceview.cpp:560 +msgid "--- Inlined from unknown source ---" +msgstr "--- 從未知的來源引入 ---" -#: instritem.cpp:106 sourceitem.cpp:86 -msgid "Active call to '%1'" -msgstr "使用中到 %1 的呼叫" +#: sourceview.cpp:565 +msgid "There is no source available for the following function:" +msgstr "以下的函式沒有源碼可參考:" -#: instritem.cpp:108 sourceitem.cpp:88 -msgid "" -"_n: %n call to '%1'\n" -"%n calls to '%1'" -msgstr "%n 個到 %1 的呼叫" +#: sourceview.cpp:570 +msgid "This is because no debug information is present." +msgstr "這是因為沒有除錯資訊。" -#: sourceitem.cpp:125 -msgid "Jump %1 of %2 times to %3" -msgstr "跳到 %3 %1 次,總共需要 %2 次" +#: sourceview.cpp:572 +msgid "Recompile source and redo the profile run." +msgstr "重新編譯來源並重新執行此分析檔。" -#: sourceitem.cpp:130 -msgid "Jump %1 times to %2" -msgstr "跳躍到 %2 %1 次" +#: sourceview.cpp:575 +msgid "The function is located in this ELF object:" +msgstr "這個函式位於此 ELF 物件中:" -#: instritem.cpp:185 sourceitem.cpp:169 -msgid "(cycle)" -msgstr "(循環)" +#: sourceview.cpp:583 +msgid "This is because its source file cannot be found:" +msgstr "這是因為它的程式源碼檔找不到:" -#: costtypeview.cpp:42 -msgid "Event Type" -msgstr "事件類型" +#: sourceview.cpp:587 +msgid "Add the folder of this file to the source folder list." +msgstr "新增此檔案所在的資料夾到程式源碼資料夾清單中。" -#: costtypeview.cpp:45 -msgid "Short" -msgstr "短" +#: sourceview.cpp:589 +msgid "The list can be found in the configuration dialog." +msgstr "這個清單可以在設定對話框中找到。" -#: costtypeview.cpp:47 -msgid "Formula" -msgstr "公式" +#: tabview.cpp:64 +msgid "Move to Top" +msgstr "移動到頂端" -#: costtypeview.cpp:81 -msgid "" -"Cost Types List" -"This list shows all cost types available and what the self/inclusive cost of " -"the current selected function is for that cost type.
" -"By choosing a cost type from the list, you change the cost type of costs " -"shown all over KCachegrind to be the selected one.
" -msgstr "" -"花費類型清單" -"這份清單顯示所有可用的花費類型(cost type)以及目前所選取的函式在該類型的自身與引入的花費。
" -"選取其中一種類型,您可以改變所有 KCachegrind 的花費成為該類型。
" +#: tabview.cpp:65 tabview.cpp:91 +#, fuzzy +msgid "Top" +msgstr "左上方" -#: costtypeview.cpp:98 -msgid "Set Secondary Event Type" -msgstr "設定次要事件類型" +#: tabview.cpp:68 +msgid "Move to Right" +msgstr "移動到右方" -#: costtypeview.cpp:100 -msgid "Remove Secondary Event Type" -msgstr "移除次要事件類型" +#: tabview.cpp:69 tabview.cpp:92 +#, fuzzy +msgid "Right" +msgstr "右上方" -#: costtypeview.cpp:105 -msgid "Edit Long Name" -msgstr "編輯長名稱" +#: tabview.cpp:72 +msgid "Move to Bottom" +msgstr "移動到底端" -#: costtypeview.cpp:106 -msgid "Edit Short Name" -msgstr "編輯短名稱" +#: tabview.cpp:73 tabview.cpp:93 +#, fuzzy +msgid "Bottom" +msgstr "左下方" -#: costtypeview.cpp:107 -msgid "Edit Formula" -msgstr "編輯公式" +#: tabview.cpp:76 +msgid "Move to Bottom Left" +msgstr "移動到左下方" -#: costtypeview.cpp:115 -msgid "New Cost Type ..." -msgstr "新增花費類型..." +#: tabview.cpp:77 tabview.cpp:94 treemap.cpp:2908 +msgid "Bottom Left" +msgstr "左下方" -#: costtypeview.cpp:149 costtypeview.cpp:154 -#, c-format -msgid "New%1" -msgstr "新增%1" +#: tabview.cpp:79 +msgid "Move Area To" +msgstr "移動區域到" -#: costtypeview.cpp:155 -#, c-format -msgid "New Cost Type %1" -msgstr "新增花費類型 %1" +#: tabview.cpp:81 +msgid "Hide This Tab" +msgstr "隱藏此分頁" -#: callview.cpp:45 instrview.cpp:127 sourceview.cpp:52 -msgid "Cost 2" -msgstr "花費 2" +#: tabview.cpp:82 +msgid "Hide Area" +msgstr "隱藏範圍" -#: callview.cpp:47 callview.cpp:51 -msgid "Count" -msgstr "計數" +#: tabview.cpp:95 +msgid "Show Hidden On" +msgstr "顯示隱藏於" -#: callview.cpp:48 coverageview.cpp:50 -msgid "Caller" +#: tabview.cpp:242 +msgid "(No profile data file loaded)" +msgstr "(沒有載入分析資料檔)" + +#: tabview.cpp:281 +msgid "Types" +msgstr "類型" + +#: tabview.cpp:284 +msgid "Callers" msgstr "呼叫者" -#: callview.cpp:52 coverageview.cpp:56 -msgid "Callee" +#: tabview.cpp:287 +msgid "All Callers" +msgstr "所有呼叫者" + +#: tabview.cpp:290 +msgid "Caller Map" +msgstr "呼叫者地圖" + +#: tabview.cpp:293 +msgid "Source" +msgstr "來源" + +#: tabview.cpp:297 +msgid "Parts" +msgstr "部件" + +#: tabview.cpp:300 +msgid "Call Graph" +msgstr "呼叫圖" + +#: tabview.cpp:303 +msgid "Callees" msgstr "被呼叫者" -#: callview.cpp:85 -msgid "" -"List of direct Callers" -"This list shows all functions calling the current selected one directly, " -"together with a call count and the cost spent in the current selected function " -"while being called from the function from the list.
" -"An icon instead of an inclusive cost specifies that this is a call inside of " -"a recursive cycle. An inclusive cost makes no sense here.
" -"Selecting a function makes it the current selected one of this information " -"panel. If there are two panels (Split mode), the function of the other panel is " -"changed instead.
" -msgstr "" -"直接呼叫者清單 " -"這個清單顯示直接呼叫目前選取函式的所有函式,以及呼叫次數與呼叫花費。
" -"如果顯示一圖示而非引入花費,則表示這個呼叫是在遞迴循環之中。引入花費在此沒有意義。
" -"選擇某個函式會在目前資訊面板的顯示中跳到該函式。如果有兩個面板(分割模式),則會變換另一個面板的函式。
" +#: tabview.cpp:306 +msgid "All Callees" +msgstr "所有被呼叫者" -#: callview.cpp:98 +#: tabview.cpp:310 +msgid "Callee Map" +msgstr "被呼叫者地圖" + +#: tabview.cpp:553 msgid "" -"List of direct Callees" -"This list shows all functions called by the current selected one directly, " -"together with a call count and the cost spent in this function while being " -"called from the selected function.
" -"Selecting a function makes it the current selected one of this information " -"panel. If there are two panels (Split mode), the function of the other panel is " -"changed instead.
" +"Information TabsThis widget shows information for the current " +"selected function in different tabs:
這個清單顯示目前選取函式直接呼叫的所有函式,以及呼叫次數與呼叫花費。
" -"選擇某個函式會在目前資訊面板的顯示中跳到該函式。如果有兩個面板(分割模式),則會變換另一個面板的函式。
" +"資訊分頁本畫面以不同分頁顯示目前所選擇函數的資訊:
A trace consists of multiple trace parts when there are several profile data " -"files from one profile run. The Trace Part Overview dockable shows these, " -"horizontally ordered in execution time; the rectangle sizes are proportional to " -"the total cost spent in the parts. You can select one or several parts to " -"constrain all costs shown to these parts only.
" -"The parts are further subdivided: there is a partitioning and an callee " -"split mode: " -"
A trace consists of multiple trace parts when " +"there are several profile data files from one profile run. The Trace Part " +"Overview dockable shows these, horizontally ordered in execution time; the " +"rectangle sizes are proportional to the total cost spent in the parts. You " +"can select one or several parts to constrain all costs shown to these parts " +"only.
The parts are further subdivided: there is a partitioning and an " +"callee split mode:
當某個分析檔中還有多個分析資料檔時,這份概觀可以看到所有的追蹤部件。追蹤部件概觀水平軸為執行時間,矩形大小與部件的總花費成比例。您可以選擇多個部件來顯示這" -"些部件的總花費。
" -"這些部件可以再更進一步細分:有分割模式與被呼叫者模式: " -"
當某個分析檔中還有多個分析資料檔時,這份概觀可以看到所有的" +"追蹤部件。追蹤部件概觀水平軸為執行時間,矩形大小與部件的總花費成比例。您可以" +"選擇多個部件來顯示這些部件的總花費。
這些部件可以再更進一步細分:有分" +"割模式與被呼叫者模式:
This is a purely fictional 'most probable' call stack. It is built up by " -"starting with the current selected function and adds the callers/callees with " -"highest cost at the top and to bottom.
" -"The Cost and Calls columns show the cost used for all calls " -"from the function in the line above.
" +"The Top Cost Call StackThis is a purely fictional 'most probable' " +"call stack. It is built up by starting with the current selected function " +"and adds the callers/callees with highest cost at the top and to bottom." +"p>
The Cost and Calls columns show the cost used for all " +"calls from the function in the line above.
" msgstr "" -"最高花費呼叫堆疊" -"這只是純虛構的「最有可能的」呼叫堆疊。它是從目前選取的函式開始,針對每個呼叫者與被呼叫者的最高花費放到堆疊中。
" -"花費與呼叫欄位顯示呼叫所使用的花費。
" +"最高花費呼叫堆疊這只是純虛構的「最有可能的」呼叫堆疊。它是從目前選" +"取的函式開始,針對每個呼叫者與被呼叫者的最高花費放到堆疊中。
花費" +"b>與呼叫欄位顯示呼叫所使用的花費。
" #: toplevel.cpp:328 msgid "Flat Profile" @@ -1426,59 +1458,54 @@ msgstr "簡單分析檔" #: toplevel.cpp:338 msgid "" -"The Flat Profile" -"The flat profile contains a group and a function selection list. The group " -"list contains all groups where costs are spent in, depending on the chosen " -"group type. The group list is hidden when group type 'Function' is selected." -"
" -"
The function list contains the functions of the selected group (or all for " -"'Function' group type), ordered by the costs spent therein. Functions with " -"costs less than 1% are hidden on default.
" +"The Flat ProfileThe flat profile contains a group and a function " +"selection list. The group list contains all groups where costs are spent in, " +"depending on the chosen group type. The group list is hidden when group type " +"'Function' is selected.
The function list contains the functions of the " +"selected group (or all for 'Function' group type), ordered by the costs " +"spent therein. Functions with costs less than 1% are hidden on default.
" msgstr "" -"簡單分析檔" -"簡單分析檔(Flat " -"Profile)包含一個群組與函式選取清單。根據所選取的群組型態,群組清單包含了所有花費到的群組。若是群組型態選擇為「函式」則群組清單會被隱藏起來。
" -"函式清單則包含了所選取的群組的函式,(如果群組型態為「函式」則包含所有的函式),依花費排序。花費少於 1% 的則預設為隱藏。
" +"簡單分析檔簡單分析檔(Flat Profile)包含一個群組與函式選取清單。根" +"據所選取的群組型態,群組清單包含了所有花費到的群組。若是群組型態選擇為「函" +"式」則群組清單會被隱藏起來。
函式清單則包含了所選取的群組的函式,(如" +"果群組型態為「函式」則包含所有的函式),依花費排序。花費少於 1% 的則預設為隱" +"藏。
" + +#: dumpselectionbase.ui:16 toplevel.cpp:352 toplevel.cpp:604 +#, no-c-format +msgid "Profile Dumps" +msgstr "分析檔傾印" #: toplevel.cpp:362 msgid "" -"Profile Dumps" -"This dockable shows in the top part the list of loadable profile dumps in " -"all subdirectories of: " -"
On selecting a profile dump, information for it is shown in the bottom area " -"of the dockable: " -"
This dockable shows in the top part the list of " +"loadable profile dumps in all subdirectories of:
On selecting a profile dump, information for it is shown in the bottom " +"area of the dockable:
這個嵌入元件的上半部顯示以下目錄及其子目錄中,可載入的分析檔傾印: " -"
選取某個分析檔傾印,其資訊會顯示在此元件的下半部: " -"
這個嵌入元件的上半部顯示以下目錄及其子目" +"錄中,可載入的分析檔傾印:
選取某個分析檔傾印,其資訊會顯示在此元件的下半部:
Make a copy of the current layout.
" +"Duplicate Current LayoutMake a copy of the current layout.
" msgstr "複製目前的佈局複製目前的佈局。
" +#: toplevel.cpp:458 +msgid "&Remove" +msgstr "" + #: toplevel.cpp:461 msgid "" -"Remove Current Layout" -"Delete current layout and make the previous active.
" +"Remove Current LayoutDelete current layout and make the previous " +"active.
" msgstr "移除目前的佈局刪除目前的佈局,並回到上一個。
" #: toplevel.cpp:465 @@ -1538,10 +1568,14 @@ msgstr "新增(&A)..." #: toplevel.cpp:505 msgid "" -"Add Profile Data" -"This opens an additional profile data file in the current window.
" +"Add Profile DataThis opens an additional profile data file in the " +"current window.
" msgstr "新增分析檔資料在目前視窗中開啟新的分析資料檔。
" +#: toplevel.cpp:509 +msgid "&Reload" +msgstr "" + #: toplevel.cpp:517 msgid "Reload Profile DataThis loads any new created parts, too.
" msgstr "重新載入分析資料這也會載入任何新建立的部件。
" @@ -1552,10 +1586,10 @@ msgstr "匯出圖形(&E)" #: toplevel.cpp:525 msgid "" -"Export Call Graph" -"Generates a file with extension .dot for the tools of the GraphViz " -"package.
" -msgstr "匯出呼叫圖產生副檔名為 .dot 的 GraphViz 套件工具的檔案。
" +"Export Call GraphGenerates a file with extension .dot for the " +"tools of the GraphViz package.
" +msgstr "" +"匯出呼叫圖產生副檔名為 .dot 的 GraphViz 套件工具的檔案。
" #: toplevel.cpp:531 msgid "&Force Dump" @@ -1563,35 +1597,36 @@ msgstr "強制傾印(&F)" #: toplevel.cpp:540 msgid "" -"Force Dump" -"This forces a dump for a Callgrind profile run in the current directory. " -"This action is checked while KCachegrind looks for the dump. If the dump is " -"finished, it automatically reloads the current trace. If this is the one from " -"the running Callgrind, the new created trace part will be loaded, too.
" -"Force dump creates a file 'callgrind.cmd', and checks every second for its " -"existence. A running Callgrind will detect this file, dump a trace part, and " -"delete 'callgrind.cmd'. The deletion is detected by KCachegrind, and it does a " -"Reload. If there's no Callgrind running, press 'Force Dump' again to " -"cancel the dump request. This deletes 'callgrind.cmd' itself and stops polling " -"for a new dump.
" -"Note: A Callgrind run only detects existence of 'callgrind.cmd' " -"when actively running a few milliseconds, i.e. not " -"sleeping. Tip: For a profiled GUI program, you can awake Callgrind e.g. by " -"resizing a window of the program.
" +"Force DumpThis forces a dump for a Callgrind profile run in the " +"current directory. This action is checked while KCachegrind looks for the " +"dump. If the dump is finished, it automatically reloads the current trace. " +"If this is the one from the running Callgrind, the new created trace part " +"will be loaded, too.
Force dump creates a file 'callgrind.cmd', and " +"checks every second for its existence. A running Callgrind will detect this " +"file, dump a trace part, and delete 'callgrind.cmd'. The deletion is " +"detected by KCachegrind, and it does a Reload. If there's no " +"Callgrind running, press 'Force Dump' again to cancel the dump request. This " +"deletes 'callgrind.cmd' itself and stops polling for a new dump.
Note: " +"A Callgrind run only detects existence of 'callgrind.cmd' when " +"actively running a few milliseconds, i.e. not sleeping. Tip: For a " +"profiled GUI program, you can awake Callgrind e.g. by resizing a window of " +"the program.
" msgstr "" -"強制傾印 " -"強制 Callgrind 執行分析檔傾印在目前的目錄中。當 KCachegrind " -"要尋找傾印時可以勾選此選項。傾印完成後,會自動重新載入目前的追蹤。如果是 Callgrind 傾印,則也會載入新建立的追蹤部件。
" -"強制傾印會建立一個叫做 callgrind.cmd 的檔案,並每秒鐘檢查其存在與否。執行中的 Callgrind 會偵測此檔,傾印追蹤部件,並刪除 " -"callgrind.cmd 檔。KCachegrind 會偵測到刪除的動作,並做重新載入。如果沒有執行 " -"Callgrind,再按一次「強制傾印」會取消傾印的要求。這會刪除 callgrind.cmd 檔並停止輪詢新的傾印。
" -"注意:Callgrind 執行時只會在實際執行的時間(只有幾毫秒)才會偵測 callgrind.cmd " -"檔的存在與否,休眠(Sleep)時並不會偵測。提示:若是使用者介面的程式分析檔,您可以用調整視窗大小來叫醒 Callgrind。
" +"強制傾印強制 Callgrind 執行分析檔傾印在目前的目錄中。當 " +"KCachegrind 要尋找傾印時可以勾選此選項。傾印完成後,會自動重新載入目前的追" +"蹤。如果是 Callgrind 傾印,則也會載入新建立的追蹤部件。
強制傾印會建立" +"一個叫做 callgrind.cmd 的檔案,並每秒鐘檢查其存在與否。執行中的 Callgrind 會" +"偵測此檔,傾印追蹤部件,並刪除 callgrind.cmd 檔。KCachegrind 會偵測到刪除的動" +"作,並做重新載入。如果沒有執行 Callgrind,再按一次「強制傾印」會取消傾印的要" +"求。這會刪除 callgrind.cmd 檔並停止輪詢新的傾印。
注意:Callgrind 執行" +"時只會在實際執行的時間(只有幾毫秒)才會偵測 callgrind.cmd 檔的存在與否,休眠" +"(Sleep)時並不會偵測。提示:若是使用者介面的程式分析檔,您可以用調整視窗大小" +"來叫醒 Callgrind。
" #: toplevel.cpp:565 msgid "" -"Open Profile Data" -"This opens a profile data file, with possible multiple parts
" +"Open Profile DataThis opens a profile data file, with possible " +"multiple parts
" msgstr "開啟分析檔資料開啟分析檔資料。
" #: toplevel.cpp:581 @@ -1606,6 +1641,11 @@ msgstr "呼叫堆疊" msgid "Show/Hide the Call Stack Dockable" msgstr "顯示/隱藏呼叫堆疊嵌入面板" +#: functionselectionbase.ui:16 toplevel.cpp:594 +#, no-c-format +msgid "Function Profile" +msgstr "函式分析檔" + #: toplevel.cpp:599 msgid "Show/Hide the Function Profile Dockable" msgstr "顯示/隱藏函式分析檔嵌入面板" @@ -1636,50 +1676,24 @@ msgstr "顯示相對於父項目的相關花費百分比" #: toplevel.cpp:638 msgid "" -"Show percentage costs relative to parent" -"If this is switched off, percentage costs are always shown relative to the " -"total cost of the profile part(s) that are currently browsed. By turning on " -"this option, percentage cost of shown cost items will be relative to the parent " -"cost item." -"
Cost Type | " -"Parent Cost |
Function Cumulative | " -"Total |
Function Self | " -"Function Group (*) / Total |
Call | " -"Function Cumulative |
Source Line | " -"Function Cumulative |
(*) Only if function grouping is switched on (e.g. ELF object grouping)." +"Show percentage costs relative to parent
If this is switched off, " +"percentage costs are always shown relative to the total cost of the profile " +"part(s) that are currently browsed. By turning on this option, percentage " +"cost of shown cost items will be relative to the parent cost item." +"
Cost Type | Parent Cost | " +"tr>
Function Cumulative | Total |
Function Self" +"td> | Function Group (*) / Total |
Call | Function " +"Cumulative |
Source Line | Function Cumulative | " +"tr>
(*) Only if function grouping is switched on (e.g. ELF object " +"grouping)." msgstr "" -"顯示相對於父項目的相關花費百分比 " -"
關閉此選項的話,則花費百分比是以相對於目前瀏覽的分析檔部件的總花費。開啟此選項,則此百分比是相對於父項目的相關花費。 " -"
花費型態 | " -"父項目花費 |
函式累積 | " -"總計 |
函式本身 | " -"函式群組(*) / 總計 |
呼叫 | " -"函式累積 |
源碼行號 | " -"函式累積 |
(*):只有在打開函式群組時(例如 ELF 物件群組)
" +"顯示相對於父項目的相關花費百分比關閉此選項的話,則花費百分比是以相" +"對於目前瀏覽的分析檔部件的總花費。開啟此選項,則此百分比是相對於父項目的相關" +"花費。
花費型態 | 父項目花費 |
函式" +"累積 | 總計 |
函式本身 | 函式群組(*) / 總計" +"td> |
呼叫 | 函式累積 |
源碼行號 | 函" +"式累積 |
(*):只有在打開函式群組時(例如 ELF 物件群" +"組)
" #: toplevel.cpp:653 msgid "Do Cycle Detection" @@ -1691,23 +1705,23 @@ msgstr "略過循環偵測" #: toplevel.cpp:662 msgid "" -"Detect recursive cycles" -"If this is switched off, the treemap drawing will show black areas when a " -"recursive call is made instead of drawing the recursion ad infinitum. Note that " -"the size of black areas often will be wrong, as inside recursive cycles the " -"cost of calls cannot be determined; the error is small, however, for false " -"cycles (see documentation)." -"
The correct handling for cycles is to detect them and collapse all functions " -"of a cycle into a virtual function, which is done when this option is selected. " -"Unfortunately, with GUI applications, this often will lead to huge false " -"cycles, making the analysis impossible; therefore, there is the option to " -"switch this off." +"Detect recursive cycles
If this is switched off, the treemap " +"drawing will show black areas when a recursive call is made instead of " +"drawing the recursion ad infinitum. Note that the size of black areas often " +"will be wrong, as inside recursive cycles the cost of calls cannot be " +"determined; the error is small, however, for false cycles (see " +"documentation).
The correct handling for cycles is to detect them and " +"collapse all functions of a cycle into a virtual function, which is done " +"when this option is selected. Unfortunately, with GUI applications, this " +"often will lead to huge false cycles, making the analysis impossible; " +"therefore, there is the option to switch this off." msgstr "" -"偵測遞迴循環 " -"
關閉此選項的話,樹狀圖會以黑色區域表示遞迴呼叫,而非無限制地畫遞迴。注意,黑色區域的大小通常會是錯的,因為遞迴循環時呼叫的花費無法立即決定。不過對假循環而" -"言,這個問題並不大(請參考文件說明)。
" -"勾選此選項的話,會去偵測並展開所有的函式成為一虛擬函式,以便正確處理。不過,對使用者介面的應用程式來說,這會產生巨大的假循環,變得無法分析。因此,就必須關" -"掉這個選項。
" +"偵測遞迴循環關閉此選項的話,樹狀圖會以黑色區域表示遞迴呼叫,而非無" +"限制地畫遞迴。注意,黑色區域的大小通常會是錯的,因為遞迴循環時呼叫的花費無法" +"立即決定。不過對假循環而言,這個問題並不大(請參考文件說明)。
勾選此" +"選項的話,會去偵測並展開所有的函式成為一虛擬函式,以便正確處理。不過,對使用" +"者介面的應用程式來說,這會產生巨大的假循環,變得無法分析。因此,就必須關掉這" +"個選項。
" #: toplevel.cpp:684 toplevel.cpp:724 msgid "Go back in function selection history" @@ -1719,10 +1733,10 @@ msgstr "在函式選擇歷史中往前" #: toplevel.cpp:696 toplevel.cpp:710 msgid "" -"Go Up" -"Go to last selected caller of current function. If no caller was visited, " -"use that with highest cost.
" -msgstr "往上到此函式最後一個選取的呼叫者。如果沒有,則使用最高花費。
" +"Go UpGo to last selected caller of current function. If no caller " +"was visited, use that with highest cost.
" +msgstr "" +"往上到此函式最後一個選取的呼叫者。如果沒有,則使用最高花費。
" #: toplevel.cpp:702 msgid "&Up" @@ -1744,18 +1758,10 @@ msgstr "次要事件型態" msgid "Select secondary event type for cost e.g. shown in annotations" msgstr "選擇花費的次要事件型態。" -#: functionselection.cpp:243 toplevel.cpp:763 -msgid "Grouping" -msgstr "群組" - #: toplevel.cpp:766 msgid "Select how functions are grouped into higher level cost items" msgstr "選擇函式要怎麼併入高階花費項目" -#: functionselection.cpp:52 toplevel.cpp:772 -msgid "(No Grouping)" -msgstr "(無群組)" - #: toplevel.cpp:782 msgid "Split" msgstr "分割" @@ -1814,10 +1820,6 @@ msgstr "顯示絕對花費" msgid "Show Relative Cost" msgstr "顯示相對花費" -#: partselection.cpp:302 toplevel.cpp:1687 -msgid "Go Back" -msgstr "返回" - #: toplevel.cpp:1688 msgid "Go Forward" msgstr "往前" @@ -1859,900 +1861,848 @@ msgstr "(沒有前一個函式)" msgid "(No Function Up)" msgstr "(沒有函式往上)" -#: costtypeitem.cpp:56 -msgid "Unknown Type" -msgstr "未知類型" +#: tracedata.cpp:153 +msgid "Abstract Item" +msgstr "抽象項目" -#: functionselection.cpp:176 -#, c-format -msgid "Go to %1" -msgstr "跳到 %1" +#: tracedata.cpp:154 +msgid "Cost Item" +msgstr "花費項目" -#: functionselection.cpp:203 -msgid "Show All Items" -msgstr "顯示全部項目" +#: tracedata.cpp:155 +msgid "Part Source Line" +msgstr "源碼行部件" -#: functionselection.cpp:226 -msgid "No Grouping" -msgstr "未群組" +#: tracedata.cpp:156 +msgid "Source Line" +msgstr "源碼行" -#: sourceview.cpp:54 sourceview.cpp:554 -msgid "Source (unknown)" -msgstr "程式源碼(未知)" +#: tracedata.cpp:157 +msgid "Part Line Call" +msgstr "行呼叫部件" -#: sourceview.cpp:89 -msgid "" -"Annotated Source" -"The annotated source list shows the source lines of the current selected " -"function together with (self) cost spent while executing the code of this " -"source line. If there was a call in a source line, lines with details on the " -"call happening are inserted into the source: the cost spent inside of the call, " -"the number of calls happening, and the call destination.
" -"Select a inserted call information line to make the destination function " -"current.
" -msgstr "" -"註記源碼 " -"註記源碼清單顯示目前所選取的函式源碼,以及其執行時的花費。如果在源碼中有呼叫,則呼叫發生時的詳情會被插入源碼中,包括呼叫時的花費,呼叫的數量以及呼叫的目的" -"地。
" -"選取被插入的呼叫資訊可以眺到該函式。
" +#: tracedata.cpp:158 +msgid "Line Call" +msgstr "行呼叫" -#: sourceview.cpp:120 -#, c-format -msgid "Go to Line %1" -msgstr "跳到第 %1 行" +#: tracedata.cpp:159 +msgid "Part Jump" +msgstr "跳躍部件" -#: sourceview.cpp:293 -msgid "(No Source)" -msgstr "(無程式源碼)" +#: tracedata.cpp:160 +msgid "Jump" +msgstr "跳躍" -#: sourceview.cpp:512 -msgid "There is no cost of current selected type associated" -msgstr "沒有與目前選取的型態相關的花費" +#: tracedata.cpp:161 +msgid "Part Instruction" +msgstr "指令部件" -#: sourceview.cpp:514 -msgid "with any source line of this function in file" -msgstr "與檔案中此函式的任何程式碼" +#: tracedata.cpp:162 +msgid "Instruction" +msgstr "指令" -#: sourceview.cpp:518 -msgid "Thus, no annotated source can be shown." -msgstr "因此,沒有註記來源可以顯示。" +#: tracedata.cpp:163 +msgid "Part Instruction Jump" +msgstr "指令跳躍部件" -#: sourceview.cpp:553 -msgid "Source ('%1')" -msgstr "程式源碼(%1)" +#: tracedata.cpp:164 +msgid "Instruction Jump" +msgstr "指令跳躍" -#: sourceview.cpp:559 -msgid "--- Inlined from '%1' ---" -msgstr "--- 從 %1 引入 ---" +#: tracedata.cpp:165 +msgid "Part Instruction Call" +msgstr "指令呼叫部件" -#: sourceview.cpp:560 -msgid "--- Inlined from unknown source ---" -msgstr "--- 從未知的來源引入 ---" +#: tracedata.cpp:166 +msgid "Instruction Call" +msgstr "指令呼叫" -#: sourceview.cpp:565 -msgid "There is no source available for the following function:" -msgstr "以下的函式沒有源碼可參考:" +#: tracedata.cpp:167 +msgid "Part Call" +msgstr "呼叫部件" -#: sourceview.cpp:570 -msgid "This is because no debug information is present." -msgstr "這是因為沒有除錯資訊。" +#: tracedata.cpp:168 +msgid "Call" +msgstr "呼叫" -#: sourceview.cpp:572 -msgid "Recompile source and redo the profile run." -msgstr "重新編譯來源並重新執行此分析檔。" +#: tracedata.cpp:169 +msgid "Part Function" +msgstr "函式部件" -#: sourceview.cpp:575 -msgid "The function is located in this ELF object:" -msgstr "這個函式位於此 ELF 物件中:" +#: tracedata.cpp:170 +msgid "Function Source File" +msgstr "函式源碼檔案" -#: sourceview.cpp:583 -msgid "This is because its source file cannot be found:" -msgstr "這是因為它的程式源碼檔找不到:" +#: dumpselectionbase.ui:300 dumpselectionbase.ui:939 +#: functionselectionbase.ui:136 stackselectionbase.ui:64 tracedata.cpp:171 +#, no-c-format +msgid "Function" +msgstr "函式" -#: sourceview.cpp:587 -msgid "Add the folder of this file to the source folder list." -msgstr "新增此檔案所在的資料夾到程式源碼資料夾清單中。" +#: tracedata.cpp:172 +msgid "Function Cycle" +msgstr "函式循環" -#: sourceview.cpp:589 -msgid "The list can be found in the configuration dialog." -msgstr "這個清單可以在設定對話框中找到。" +#: tracedata.cpp:173 +msgid "Part Class" +msgstr "類別部件" -#: configuration.cpp:67 -msgid "Instruction Fetch" -msgstr "指令抓取" +#: tracedata.cpp:174 +msgid "Class" +msgstr "類別" -#: configuration.cpp:68 -msgid "Data Read Access" -msgstr "資料讀取存取" +#: tracedata.cpp:175 +msgid "Part Source File" +msgstr "程式源碼檔案部件" -#: configuration.cpp:69 -msgid "Data Write Access" -msgstr "資料寫入存取" +#: tracedata.cpp:176 +msgid "Source File" +msgstr "程式源碼檔案" -#: configuration.cpp:70 -msgid "L1 Instr. Fetch Miss" -msgstr "L1 指令抓取失誤" +#: tracedata.cpp:177 +msgid "Part ELF Object" +msgstr "ELF 物件部件" -#: configuration.cpp:71 -msgid "L1 Data Read Miss" -msgstr "L1 資料讀取失誤" +#: tracedata.cpp:178 +msgid "ELF Object" +msgstr "ELF 物件" -#: configuration.cpp:72 -msgid "L1 Data Write Miss" -msgstr "L1 資料寫入失誤" +#: tracedata.cpp:180 +msgid "Program Trace" +msgstr "程式追蹤" -#: configuration.cpp:73 -msgid "L2 Instr. Fetch Miss" -msgstr "L2 指令抓取失誤" +#: tracedata.cpp:241 +msgid "%1 from %2" +msgstr "%1 從 %2" -#: configuration.cpp:74 -msgid "L2 Data Read Miss" -msgstr "L2 資料讀取失誤" +#: tracedata.cpp:2583 +msgid "(no caller)" +msgstr "(無呼叫者)" -#: configuration.cpp:75 -msgid "L2 Data Write Miss" -msgstr "L2 資料寫入失誤" +#: tracedata.cpp:2590 tracedata.cpp:2609 +msgid "%1 via %2" +msgstr "%1 經過 %2" -#: configuration.cpp:76 -#, fuzzy -msgid "LL Instr. Fetch Miss" -msgstr "L1 指令抓取失誤" +#: tracedata.cpp:2599 +msgid "(no callee)" +msgstr "(無被呼叫者)" -#: configuration.cpp:77 -#, fuzzy -msgid "LL Data Read Miss" -msgstr "L1 資料讀取失誤" +#: tracedata.cpp:4467 +msgid "(not found)" +msgstr "(未找到)" -#: configuration.cpp:78 -#, fuzzy -msgid "LL Data Write Miss" -msgstr "L1 資料寫入失誤" +#: tracedata.cpp:5017 +msgid "Recalculating Function Cycles..." +msgstr "重新計算函式循環..." -#: configuration.cpp:79 -msgid "Samples" -msgstr "樣本" +#: traceitemview.cpp:53 +msgid "No description available" +msgstr "沒有可用的描述" -#: configuration.cpp:80 -msgid "System Time" -msgstr "系統時間" +#: treemap.cpp:1281 +#, c-format +msgid "Text %1" +msgstr "文字 %1" -#: configuration.cpp:81 -msgid "User Time" -msgstr "使用者時間" +#: treemap.cpp:2809 +msgid "Recursive Bisection" +msgstr "遞迴對切" -#: configuration.cpp:82 -msgid "L1 Miss Sum" -msgstr "L1 失誤總和" +#: treemap.cpp:2810 +msgid "Columns" +msgstr "欄" -#: configuration.cpp:83 -msgid "L2 Miss Sum" -msgstr "L2 失誤總和" +#: treemap.cpp:2811 +msgid "Rows" +msgstr "列" -#: configuration.cpp:84 -#, fuzzy -msgid "LL Miss Sum" -msgstr "L1 失誤總和" +#: treemap.cpp:2812 +msgid "Always Best" +msgstr "永遠最好的" -#: configuration.cpp:85 -msgid "Cycle Estimation" -msgstr "循環估計" +#: treemap.cpp:2813 +msgid "Best" +msgstr "最好的" -#: configdlg.cpp:60 -msgid "Source Files" -msgstr "程式源碼檔案" +#: treemap.cpp:2814 +msgid "Alternate (V)" +msgstr "替代(垂直)" -#: configdlg.cpp:61 -msgid "C++ Classes" -msgstr "C++ 類別" +#: treemap.cpp:2815 +msgid "Alternate (H)" +msgstr "替代(水平)" -#: configdlg.cpp:62 -msgid "Function (no Grouping)" -msgstr "功能(無群組)" +#: treemap.cpp:2816 +#, fuzzy +msgid "Horizontal" +msgstr "水平分割" -#: configdlg.cpp:157 configdlg.cpp:350 configdlg.cpp:371 -msgid "(always)" -msgstr "(總是)" +#: treemap.cpp:2817 +msgid "Vertical" +msgstr "" -#: configdlg.cpp:210 -msgid "KCachegrind Configuration" -msgstr "KCachegrind 設定" +#: treemap.cpp:2872 +msgid "Nesting" +msgstr "巢狀" -#: configdlg.cpp:211 -msgid "" -"The Maximum Number of List Items should be below 500.The previous set value " -"(%1) will still be used." -msgstr "最大的清單項目數應該在 500 以下。將改用之前的設定值(%1)。" +#: treemap.cpp:2874 +#, fuzzy +msgid "Border" +msgstr "邊框 0" -#: configdlg.cpp:384 -msgid "Choose Source Folder" -msgstr "選擇來源資料夾" +#: treemap.cpp:2875 +msgid "Correct Borders Only" +msgstr "只有正確的框線" -#: partview.cpp:51 -msgid "Comment" -msgstr "註解" +#: treemap.cpp:2877 treemap.cpp:2878 treemap.cpp:2879 treemap.cpp:2880 +#, c-format +msgid "Width %1" +msgstr "寬度 %1" -#: partview.cpp:73 -msgid "" -"Trace Part List" -"This list shows all trace parts of the loaded trace. For each part, the " -"self/inclusive cost of the current selected function, spent in the part, is " -"shown; percentage costs are always relative to the total cost " -"of the part (not to the whole trace as in the Trace Part Overview). Also " -"shown are the calls happening to/from the current function inside of the trace " -"part.
" -"By choosing one or more trace parts from the list, the costs shown all over " -"KCachegrind will only be the ones spent in the selected part(s). If no list " -"selection is shown, in fact all trace parts are selected implicitly.
" -"This is a multi-selection list. You can select ranges by dragging the mouse " -"or use SHIFT/CTRL modifiers. Selection/Deselection of trace parts can also be " -"done by using the Trace Part Overview Dockable. This one also supports multiple " -"selection.
" -"Note that the list is hidden if only one trace part is loaded.
" -msgstr "" -"追蹤部件清單 " -"這份清單顯示載入的追蹤的所有追蹤部件。每個部件中包含目前選取的函式在該部件中的自身與引入的花費,百分比是相對於該部件的總花費(不是追蹤部件概觀中的總花費)" -"。另外也會呼叫目前函式的呼叫者與被呼叫者。
" -"若從清單中選擇追蹤部件,就只會顯示選取的部件的花費。如果沒有選擇任何部件,則預設是選取所有的部件。
" -"這是可以多重選擇的清單,您可以拖曳滑鼠來選取一個範圍,或是用 Shift 或 Ctrl 鍵來在「追蹤部件概觀」元件中選擇部件。
" -"注意若是只載入一個追蹤部件,則此元件是隱藏的。
" +#: treemap.cpp:2902 +msgid "Visible" +msgstr "可見的" -#: partview.cpp:106 -msgid "Select '%1'" -msgstr "選擇 %1" +#: treemap.cpp:2903 +msgid "Take Space From Children" +msgstr "由子系統取得空間" -#: partview.cpp:107 -msgid "Hide '%1'" -msgstr "隱藏 %1" +#: treemap.cpp:2905 +msgid "Top Left" +msgstr "左上方" -#: partview.cpp:111 -msgid "Hide Selected" -msgstr "隱藏已選取項目" +#: treemap.cpp:2906 +msgid "Top Center" +msgstr "頂端中央" -#: partview.cpp:112 -msgid "Show All" -msgstr "全部顯示" +#: treemap.cpp:2907 +msgid "Top Right" +msgstr "右上方" -#: callgraphview.cpp:306 -#, c-format -msgid "Call(s) from %1" -msgstr "從 %1 來的呼叫" +#: treemap.cpp:2909 +msgid "Bottom Center" +msgstr "底端中央" -#: callgraphview.cpp:307 -#, c-format -msgid "Call(s) to %1" -msgstr "呼叫 %1" +#: treemap.cpp:2910 +msgid "Bottom Right" +msgstr "右下方" -#: callgraphview.cpp:308 -msgid "(unknown call)" -msgstr "(未知的呼叫)" +#: treemap.cpp:2987 +msgid "No %1 Limit" +msgstr "沒有 %1 限制" -#: callgraphview.cpp:1425 +#: treemap.cpp:3056 treemap.cpp:3067 +#, c-format msgid "" -"Call Graph around active Function" -"Depending on configuration, this view shows the call graph environment of " -"the active function. Note: the shown cost is only " -"the cost which is spent while the active function was actually running; i.e. " -"the cost shown for main() - if it's visible - should be the same as the cost of " -"the active function, as that's the part of inclusive cost of main() spent while " -"the active function was running.
" -"For cycles, blue call arrows indicate that this is an artificial call added " -"for correct drawing which actually never happened.
" -"If the graph is larger than the widget area, an overview panner is shown in " -"one edge. There are similar visualization options to the Call Treemap; the " -"selected function is highlighted." -"
" -msgstr "" -"活躍函式的呼叫圖環境 " -"
根據設定,此檢視顯示活躍函式的呼叫圖環境。注意:顯示的花費只表示此函式執行中的花費,也就是說,main() 函式顯示的花費會跟此函式的花費一樣,因為那是 " -"main() 的引入花費。
" -"對循環而言,藍色的呼叫箭頭表示是人工加上去修正的,實際上不會發生。
" -"如果此圖大於元件的大小,則會在一邊顯示略圖。類似呼叫樹狀圖的視覺選項,選取的函式會被突顯。
" +"_n: 1 Pixel\n" +"%n Pixels" +msgstr "%n 像素" -#: callgraphview.cpp:1789 -msgid "" -"Warning: a long lasting graph layouting is in progress.\n" -"Reduce node/edge limits for speedup.\n" -msgstr "" -"警告:正在進行長而持續的佈局作業。\n" -"要加速,請降低節點與邊線的限制。\n" +#: treemap.cpp:3073 +msgid "Halve Area Limit (to %1)" +msgstr "將區域限制減半(到 %1)" -#: callgraphview.cpp:1792 -msgid "" -"Layouting stopped.\n" -msgstr "" -"佈局停止。\n" - -#: callgraphview.cpp:1794 -msgid "" -"The call graph has %1 nodes and %2 edges.\n" -msgstr "" -"呼叫圖中含有 %1 個節點與 %2 個邊線。\n" +#: treemap.cpp:3118 +#, c-format +msgid "Depth %1" +msgstr "深度 %1" -#: callgraphview.cpp:1827 -msgid "No item activated for which to draw the call graph." -msgstr "沒有激發要繪製呼叫圖的項目。" +#: treemap.cpp:3122 +msgid "Decrement (to %1)" +msgstr "遞減(到 %1)" -#: callgraphview.cpp:1838 -msgid "No call graph can be drawn for the active item." -msgstr "沒有目前活躍的項目可繪製呼叫圖。" +#: treemap.cpp:3124 +msgid "Increment (to %1)" +msgstr "遞增(到 %1)" -#: callgraphview.cpp:1867 -msgid "" -"No call graph is available because the following\n" -"command cannot be run:\n" -"'%1'\n" -msgstr "" -"沒有可用的呼叫圖,因為以下的指令無法執行:\n" -"%1\n" +#: configdlgbase.ui:16 +#, fuzzy, no-c-format +msgid "Configuration" +msgstr "KCachegrind 設定" -#: callgraphview.cpp:1870 callgraphview.cpp:2199 -msgid "Please check that 'dot' is installed (package GraphViz)." -msgstr "請檢查 dot 已安裝(在 GraphViz 套件中)" +#: configdlgbase.ui:37 +#, no-c-format +msgid "General" +msgstr "一般" -#: callgraphview.cpp:2198 -msgid "" -"Error running the graph layouting tool.\n" -msgstr "" -"執行圖形佈局工具時發生錯誤。\n" +#: configdlgbase.ui:69 +#, no-c-format +msgid "Truncated when more/longer than:" +msgstr "大於多少時截斷:" -#: callgraphview.cpp:2206 -msgid "" -"There is no call graph available for function\n" -"\t'%1'\n" -"because it has no cost of the selected event type." -msgstr "沒有函式 %1 的呼叫圖,因為沒有所選取事件型態的花費。" +#: configdlgbase.ui:77 +#, no-c-format +msgid "Precision of percentage values:" +msgstr "百分比數值的精確度:" -#: callgraphview.cpp:2427 -msgid "Stop Layouting" -msgstr "停止佈局" +#: configdlgbase.ui:85 +#, no-c-format +msgid "Symbols in tooltips and context menus" +msgstr "在工具提示與內文選單中的符號" -#: callgraphview.cpp:2435 -msgid "As PostScript" -msgstr "為 PostScript 檔" +#: configdlgbase.ui:141 +#, no-c-format +msgid "Maximum number of items in lists:" +msgstr "清單中最大項目數:" -#: callgraphview.cpp:2436 -msgid "As Image ..." -msgstr "為影像檔..." +#: configdlgbase.ui:162 +#, no-c-format +msgid "Cost Item Colors" +msgstr "花費項目顏色" -#: callgraphview.cpp:2438 -msgid "Export Graph" -msgstr "匯出圖形" +#: configdlgbase.ui:254 +#, no-c-format +msgid "Object:" +msgstr "物件:" -#: callgraphview.cpp:2443 callgraphview.cpp:2466 -msgid "Unlimited" -msgstr "無限制" +#: configdlgbase.ui:262 +#, no-c-format +msgid "Class:" +msgstr "類別:" -#: callgraphview.cpp:2446 callgraphview.cpp:2469 -msgid "None" -msgstr "無" +#: configdlgbase.ui:310 +#, no-c-format +msgid "File:" +msgstr "檔案:" -#: callgraphview.cpp:2447 callgraphview.cpp:2470 -msgid "max. 2" -msgstr "最大 2" +#: configdlgbase.ui:376 +#, no-c-format +msgid "Annotations" +msgstr "註記" -#: callgraphview.cpp:2448 callgraphview.cpp:2471 -msgid "max. 5" -msgstr "最大 5" +#: configdlgbase.ui:395 +#, no-c-format +msgid "Context lines in annotations:" +msgstr "註記裡的內容:" -#: callgraphview.cpp:2449 callgraphview.cpp:2472 -msgid "max. 10" -msgstr "最大 10" +#: configdlgbase.ui:423 +#, no-c-format +msgid "Source Folders" +msgstr "程式源碼資料夾" -#: callgraphview.cpp:2450 callgraphview.cpp:2473 -msgid "max. 15" -msgstr "最大 15" +#: configdlgbase.ui:454 +#, no-c-format +msgid "Object / Related Source Base" +msgstr "物件 / 相關來源基礎" -#: callgraphview.cpp:2460 callgraphview.cpp:2483 -#, c-format -msgid "< %1" -msgstr "< %1" +#: configdlgbase.ui:483 +#, no-c-format +msgid "Add..." +msgstr "新增..." -#: callgraphview.cpp:2489 -msgid "No Minimum" -msgstr "無最小值" +#: configdlgbase.ui:508 +#, no-c-format +msgid "Delete" +msgstr "" -#: callgraphview.cpp:2493 -#, c-format -msgid "50 %" -msgstr "50 %" +#: configdlgbase.ui:585 +#, no-c-format +msgid "&OK" +msgstr "" -#: callgraphview.cpp:2494 -#, c-format -msgid "20 %" -msgstr "20 %" +#: configdlgbase.ui:596 +#, no-c-format +msgid "&Cancel" +msgstr "" -#: callgraphview.cpp:2495 -#, c-format -msgid "10 %" -msgstr "10 %" +#: dumpselectionbase.ui:32 +#, no-c-format +msgid "Target" +msgstr "目標" -#: callgraphview.cpp:2496 -#, c-format -msgid "5 %" -msgstr "5 %" +#: dumpselectionbase.ui:54 +#, no-c-format +msgid "Time" +msgstr "時間" -#: callgraphview.cpp:2497 -#, c-format -msgid "3 %" -msgstr "3 %" +#: dumpselectionbase.ui:65 +#, no-c-format +msgid "Path" +msgstr "路徑" -#: callgraphview.cpp:2498 -#, c-format -msgid "2 %" -msgstr "2 %" +#: dumpselectionbase.ui:87 +#, fuzzy, no-c-format +msgid "Options" +msgstr "選項" -#: callgraphview.cpp:2499 -#, c-format -msgid "1.5 %" -msgstr "1.5 %" +#: dumpselectionbase.ui:106 +#, no-c-format +msgid "Target command:" +msgstr "目標命令:" -#: callgraphview.cpp:2500 -#, c-format -msgid "1 %" -msgstr "1 %" +#: dumpselectionbase.ui:119 +#, no-c-format +msgid "Profiler options:" +msgstr "分析檔選項:" -#: callgraphview.cpp:2516 -msgid "Same as Node" -msgstr "與節點相同" +#: dumpselectionbase.ui:125 +#, no-c-format +msgid "Option" +msgstr "選項" -#: callgraphview.cpp:2517 -#, c-format -msgid "50 % of Node" -msgstr "50% 的節點" +#: dumpselectionbase.ui:136 dumpselectionbase.ui:688 +#, no-c-format +msgid "Value" +msgstr "數值" -#: callgraphview.cpp:2518 -#, c-format -msgid "20 % of Node" -msgstr "20% 的節點" +#: dumpselectionbase.ui:147 +#, no-c-format +msgid "Trace" +msgstr "追蹤" -#: callgraphview.cpp:2519 -#, c-format -msgid "10 % of Node" -msgstr "10% 的節點" +#: dumpselectionbase.ui:160 dumpselectionbase.ui:768 +#, no-c-format +msgid "Jumps" +msgstr "跳躍" -#: callgraphview.cpp:2529 -msgid "Caller Depth" -msgstr "呼叫者深度" +#: dumpselectionbase.ui:174 +#, no-c-format +msgid "Instructions" +msgstr "指令" -#: callgraphview.cpp:2530 -msgid "Callee Depth" -msgstr "被呼叫者深度" +#: dumpselectionbase.ui:189 dumpselectionbase.ui:783 +#, no-c-format +msgid "Events" +msgstr "事件" -#: callgraphview.cpp:2531 -msgid "Min. Node Cost" -msgstr "最小節點花費" +#: dumpselectionbase.ui:202 +#, no-c-format +msgid "Full Cache" +msgstr "完整快取" -#: callgraphview.cpp:2532 -msgid "Min. Call Cost" -msgstr "最小呼叫花費" +#: dumpselectionbase.ui:216 +#, no-c-format +msgid "Custom" +msgstr "自訂" -#: callgraphview.cpp:2534 -msgid "Arrows for Skipped Calls" -msgstr "被略過呼叫的箭頭" +#: dumpselectionbase.ui:231 +#, no-c-format +msgid "Collect" +msgstr "收集" -#: callgraphview.cpp:2536 -msgid "Inner-cycle Calls" -msgstr "內部循環呼叫" +#: dumpselectionbase.ui:244 +#, no-c-format +msgid "At Startup" +msgstr "啟動時" -#: callgraphview.cpp:2538 -msgid "Cluster Groups" -msgstr "叢集群組" +#: dumpselectionbase.ui:258 +#, no-c-format +msgid "While In" +msgstr "當在" -#: callgraphview.cpp:2543 -msgid "Compact" -msgstr "簡潔" +#: dumpselectionbase.ui:273 +#, no-c-format +msgid "Skip" +msgstr "略過" -#: callgraphview.cpp:2544 -msgid "Normal" -msgstr "正常" +#: dumpselectionbase.ui:286 +#, no-c-format +msgid "PLT" +msgstr "PLT" -#: callgraphview.cpp:2545 -msgid "Tall" -msgstr "高" - -#: callgraphview.cpp:2550 -msgid "Top to Down" -msgstr "上到下" +#: dumpselectionbase.ui:315 +#, no-c-format +msgid "Dump Profile" +msgstr "傾印分析檔" -#: callgraphview.cpp:2551 -msgid "Left to Right" -msgstr "左到右" +#: dumpselectionbase.ui:328 +#, no-c-format +msgid "Every BBs" +msgstr "每次 BB" -#: callgraphview.cpp:2552 -msgid "Circular" -msgstr "圓形" +#: dumpselectionbase.ui:342 dumpselectionbase.ui:384 +#, no-c-format +msgid "On Entering" +msgstr "進入時" -#: callgraphview.cpp:2558 -msgid "TopLeft" -msgstr "左上方" +#: dumpselectionbase.ui:356 +#, no-c-format +msgid "On Leaving" +msgstr "離開時" -#: callgraphview.cpp:2559 -msgid "TopRight" -msgstr "右上方" +#: dumpselectionbase.ui:371 +#, no-c-format +msgid "Zero Events" +msgstr "清空事件" -#: callgraphview.cpp:2560 -msgid "BottomLeft" -msgstr "左下方" +#: dumpselectionbase.ui:399 +#, no-c-format +msgid "Separate" +msgstr "分離" -#: callgraphview.cpp:2561 -msgid "BottomRight" -msgstr "右下方" +#: dumpselectionbase.ui:412 +#, no-c-format +msgid "Threads" +msgstr "執行緒" -#: callgraphview.cpp:2569 -msgid "Graph" -msgstr "圖" +#: dumpselectionbase.ui:426 +#, no-c-format +msgid "Recursions" +msgstr "遞迴" -#: callgraphview.cpp:2570 partselection.cpp:320 -msgid "Visualization" -msgstr "視覺化" +#: dumpselectionbase.ui:440 +#, no-c-format +msgid "Call Chain" +msgstr "呼叫鍊" -#: callgraphview.cpp:2571 -msgid "Birds-eye View" -msgstr "鳥瞰檢視" +#: dumpselectionbase.ui:470 +#, no-c-format +msgid "Custom profiler options:" +msgstr "自訂分析器選項:" -#: partlistitem.cpp:49 -msgid " (Thread %1)" -msgstr "(執行緒 %1)" +#: dumpselectionbase.ui:508 +#, no-c-format +msgid "Run New Profile" +msgstr "執行新分析檔" -#: partlistitem.cpp:56 -msgid "(none)" -msgstr "(無)" +#: dumpselectionbase.ui:520 +#, no-c-format +msgid "Info" +msgstr "資訊" -#: callitem.cpp:82 partlistitem.cpp:152 -msgid "(active)" -msgstr "(活躍)" +#: dumpselectionbase.ui:531 +#, no-c-format +msgid "Dump reason:" +msgstr "傾印理由:" -#: partselection.cpp:151 -msgid "Profile Part Overview: Current is '%1'" -msgstr "分析檔部件概觀。目前為 %1" +#: dumpselectionbase.ui:544 +#, no-c-format +msgid "Event summary:" +msgstr "事件摘要:" -#: partselection.cpp:287 -msgid "Deselect" -msgstr "取消選擇" +#: dumpselectionbase.ui:561 +#, no-c-format +msgid "Sum" +msgstr "總計" -#: partselection.cpp:287 partselection.cpp:311 -msgid "Select" -msgstr "選擇" +#: dumpselectionbase.ui:579 +#, no-c-format +msgid "Miscellaneous:" +msgstr "其他:" -#: partselection.cpp:292 -msgid "Select All Parts" -msgstr "選擇全部的部件" +#: dumpselectionbase.ui:617 +#, no-c-format +msgid "Show" +msgstr "顯示" -#: partselection.cpp:294 -msgid "Visible Parts" -msgstr "可見的部件" +#: dumpselectionbase.ui:625 +#, no-c-format +msgid "Compare" +msgstr "比較" -#: partselection.cpp:296 -msgid "Hide Selected Parts" -msgstr "隱藏已選取的部件" +#: dumpselectionbase.ui:637 +#, no-c-format +msgid "State" +msgstr "狀態" -#: partselection.cpp:297 -msgid "Unhide Hidden Parts" -msgstr "重新顯示隱藏的部件" +#: dumpselectionbase.ui:656 +#, no-c-format +msgid "Update" +msgstr "更新" -#: partselection.cpp:322 -msgid "Partitioning Mode" -msgstr "切割模式" +#: dumpselectionbase.ui:664 +#, no-c-format +msgid "Every [s]:" +msgstr "間隔(秒):" -#: partselection.cpp:323 -msgid "Diagram Mode" -msgstr "繪圖模式" +#: dumpselectionbase.ui:677 +#, no-c-format +msgid "Counter" +msgstr "計數器" -#: partselection.cpp:324 -msgid "Zoom Function" -msgstr "縮放函式" +#: dumpselectionbase.ui:699 +#, no-c-format +msgid "Dumps Done" +msgstr "傾印完成" -#: partselection.cpp:325 -msgid "Show Direct Calls" -msgstr "顯示直接呼叫" +#: dumpselectionbase.ui:713 +#, no-c-format +msgid "Is Collecting" +msgstr "收集中" -#: partselection.cpp:326 -msgid "Increment Shown Call Levels" -msgstr "遞增顯示呼叫等級" +#: dumpselectionbase.ui:727 +#, no-c-format +msgid "Executed" +msgstr "已執行" -#: partselection.cpp:340 -msgid "Draw Names" -msgstr "繪製名稱" +#: dumpselectionbase.ui:740 +#, no-c-format +msgid "Basic Blocks" +msgstr "基本區塊" -#: partselection.cpp:341 -msgid "Draw Costs" -msgstr "繪製花費" +#: dumpselectionbase.ui:796 +#, no-c-format +msgid "Ir" +msgstr "Ir" -#: partselection.cpp:343 -msgid "Draw Frames" -msgstr "繪製框架" +#: dumpselectionbase.ui:811 +#, no-c-format +msgid "Distinct" +msgstr "不同" -#: partselection.cpp:359 -msgid "Hide Info" -msgstr "隱藏資訊" +#: dumpselectionbase.ui:838 +#, no-c-format +msgid "Functions" +msgstr "函式" -#: partselection.cpp:361 -msgid "Show Info" -msgstr "顯示資訊" +#: dumpselectionbase.ui:852 +#, no-c-format +msgid "Contexts" +msgstr "內文" -#: partselection.cpp:541 -msgid "(no trace loaded)" -msgstr "(未載入追蹤)" +#: dumpselectionbase.ui:890 +#, no-c-format +msgid "Stack trace:" +msgstr "堆疊追蹤:" -#: instrview.cpp:129 -msgid "Hex" -msgstr "十六進位值" +#: dumpselectionbase.ui:898 +#, no-c-format +msgid "Sync." +msgstr "同步" -#: instrview.cpp:132 -msgid "Source Position" -msgstr "源碼位置" +#: dumpselectionbase.ui:976 +#, no-c-format +msgid "Start" +msgstr "開始" -#: instrview.cpp:163 -msgid "" -"Annotated Assembler" -"The annotated assembler list shows the machine code instructions of the " -"current selected function together with (self) cost spent while executing an " -"instruction. If this is a call instruction, lines with details on the call " -"happening are inserted into the source: the cost spent inside of the call, the " -"number of calls happening, and the call destination.
" -"The disassembler output shown is generated with the 'objdump' utility from " -"the 'binutils' package.
" -"Select a line with call information to make the destination function of this " -"call current.
" -msgstr "" -"註記組譯器(Annotated Assembler) " -"註記組譯器顯示目前選取的函式的機器碼指令,以及執行該指令時的花費。如果是呼叫指令,則呼叫時發生的詳情會插入到源碼中,包括呼叫的花費,呼叫的次數,以及呼叫的" -"目的地。
" -"反組譯輸出可以用 objdump 產生,通常會包在 binutils 套件中。
" -"選取呼叫資訊中的某一行可以眺到被呼叫的函式。
" +#: dumpselectionbase.ui:1001 +#, no-c-format +msgid "Zero" +msgstr "歸零" -#: instrview.cpp:195 -#, c-format -msgid "Go to Address %1" -msgstr "跳到位址 %1" +#: dumpselectionbase.ui:1009 +#, no-c-format +msgid "Dump" +msgstr "傾印" -#: instrview.cpp:207 -msgid "Hex Code" -msgstr "十六進位碼" +#: dumpselectionbase.ui:1021 +#, no-c-format +msgid "Messages" +msgstr "訊息" -#: instrview.cpp:426 -msgid "There is no instruction info in the profile data file." -msgstr "此分析資料檔中沒有指令資訊。" +#: dumpselectionbase.ui:1045 +#, no-c-format +msgid "Kill Run" +msgstr "終止執行" -#: instrview.cpp:428 -msgid "For the Valgrind Calltree Skin, rerun with option" -msgstr "要用 Valgrind Calltree Skin,請重新執行並指定選項" +#: dumpselectionbase.ui:1070 +#, no-c-format +msgid "Clear" +msgstr "" -#: instrview.cpp:429 -msgid " --dump-instr=yes" -msgstr " --dump-instr=yes" +#: functionselectionbase.ui:41 +#, no-c-format +msgid "&Search:" +msgstr "搜尋(&S):" -#: instrview.cpp:430 -msgid "To see (conditional) jumps, additionally specify" -msgstr "想要看條件式的跳躍,請額外指定選項" +#: functionselectionbase.ui:73 +#, no-c-format +msgid "Group" +msgstr "群組" -#: instrview.cpp:431 -msgid " --trace-jump=yes" -msgstr " --trace-jump=yes" +#: partselectionbase.ui:60 +#, no-c-format +msgid "(no trace parts)" +msgstr "(無追蹤部件)" -#: instrview.cpp:629 -msgid "There is an error trying to execute the command" -msgstr "執行此指令時發生錯誤" +#: stackselectionbase.ui:16 +#, no-c-format +msgid "Stack Selection" +msgstr "堆疊選擇" -#: instrview.cpp:634 instrview.cpp:900 -msgid "Check that you have installed 'objdump'." -msgstr "請檢查您是否已安裝 objdump。" - -#: instrview.cpp:636 instrview.cpp:902 -msgid "This utility can be found in the 'binutils' package." -msgstr "這個工具可以在 binutils 套件中找到。" - -#: instrview.cpp:739 -msgid "(No Assembler)" -msgstr "(沒有組譯器)" - -#: instrview.cpp:875 -#, c-format -msgid "" -"_n: There is %n cost line without assembler code.\n" -"There are %n cost lines without assembler code." -msgstr "有 %n 個花費線沒有組譯碼。" - -#: instrview.cpp:877 -msgid "This happens because the code of" -msgstr "發生的原因是因為這個的程式碼:" - -#: instrview.cpp:880 -msgid "does not seem to match the profile data file." -msgstr "似乎無法符合此分析資料檔。" - -#: instrview.cpp:883 -msgid "Are you using an old profile data file or is the above mentioned" -msgstr "您正使用舊的分析資料檔,還是像上面提到的" - -#: instrview.cpp:885 -msgid "ELF object from an updated installation/another machine?" -msgstr "這是從已更新的安裝或其他機器來的 ELF 物件嗎?" - -#: instrview.cpp:893 -msgid "There seems to be an error trying to execute the command" -msgstr "試著執行此命令時發生錯誤" - -#: instrview.cpp:898 -msgid "Check that the ELF object used in the command exists." -msgstr "請檢查命令中使用的 ELF 物件存在。" - -#: instritem.cpp:137 -msgid "Jump %1 of %2 times to 0x%3" -msgstr "跳躍到 0x%3 %1 次,共要 %2 次" - -#: instritem.cpp:142 -msgid "Jump %1 times to 0x%2" -msgstr "跳躍到 0x%2 %1 次" - -#: treemap.cpp:1281 -#, c-format -msgid "Text %1" -msgstr "文字 %1" - -#: treemap.cpp:2809 -msgid "Recursive Bisection" -msgstr "遞迴對切" - -#: treemap.cpp:2810 -msgid "Columns" -msgstr "欄" - -#: treemap.cpp:2811 -msgid "Rows" -msgstr "列" - -#: treemap.cpp:2812 -msgid "Always Best" -msgstr "永遠最好的" - -#: treemap.cpp:2813 -msgid "Best" -msgstr "最好的" - -#: treemap.cpp:2814 -msgid "Alternate (V)" -msgstr "替代(垂直)" - -#: treemap.cpp:2815 -msgid "Alternate (H)" -msgstr "替代(水平)" - -#: treemap.cpp:2872 -msgid "Nesting" -msgstr "巢狀" - -#: treemap.cpp:2875 -msgid "Correct Borders Only" -msgstr "只有正確的框線" +#: stackselectionbase.ui:42 +#, no-c-format +msgid "Cost2" +msgstr "花費2" -#: treemap.cpp:2877 treemap.cpp:2878 treemap.cpp:2879 treemap.cpp:2880 -#, c-format -msgid "Width %1" -msgstr "寬度 %1" +#: tdecachegrindui.rc:4 +#, fuzzy, no-c-format +msgid "&File" +msgstr "檔案:" -#: treemap.cpp:2902 -msgid "Visible" -msgstr "可見的" +#: tdecachegrindui.rc:10 +#, no-c-format +msgid "&View" +msgstr "" -#: treemap.cpp:2903 -msgid "Take Space From Children" -msgstr "由子系統取得空間" +#: tdecachegrindui.rc:15 +#, no-c-format +msgid "&Layout" +msgstr "佈局(&L)" -#: treemap.cpp:2905 -msgid "Top Left" -msgstr "左上方" +#: tdecachegrindui.rc:32 +#, no-c-format +msgid "Sidebars" +msgstr "邊列" -#: treemap.cpp:2906 -msgid "Top Center" -msgstr "頂端中央" +#: tdecachegrindui.rc:41 +#, fuzzy, no-c-format +msgid "Main Toolbar" +msgstr "狀態工具列" -#: treemap.cpp:2907 -msgid "Top Right" -msgstr "右上方" +#: tdecachegrindui.rc:54 +#, no-c-format +msgid "State Toolbar" +msgstr "狀態工具列" -#: treemap.cpp:2909 -msgid "Bottom Center" -msgstr "底端中央" +#: tips:3 +msgid "" +"...that the What's This? help for every GUI widget\n" +"in KCachegrind contains detailed usage information for this widget?\n" +"It is highly recommended to read at least these help texts on first\n" +"use. Request What's This? help by pressing\n" +"Shift+F1 and clicking on the widget.
\n" +msgstr "" +"每個使用者介面元件中的「這是什麼?」說明內含了此元件的詳細用法資訊。建議第" +"一次使用時先閱讀它。您以可以按 Shift+F1 叫出。
\n" -#: treemap.cpp:2910 -msgid "Bottom Right" -msgstr "右下方" +#: tips:13 +msgid "" +"...that you can get profile information at instruction level\n" +"with Calltree when you provide the option --dump-instr=yes?\n" +"Use the Assembler View for the instruction annotations.\n" +"
\n" +msgstr "" +"若您提供這個選項:--dump-instr=yes,您可以在呼叫樹模式取得指令層" +"級的分析檔資訊。\n" +"用「組譯器檢視」取得指令的註記。
\n" -#: treemap.cpp:2987 -msgid "No %1 Limit" -msgstr "沒有 %1 限制" +#: tips:22 +msgid "" +"...that you can use Alt-Left/Right keys of your keyboard to go\n" +"back/forward in the active object history ?
\n" +msgstr "您可以用 Alt 加上左右鍵來在目前的物件歷史中往返。
\n" -#: treemap.cpp:3056 treemap.cpp:3067 -#, c-format +#: tips:29 msgid "" -"_n: 1 Pixel\n" -"%n Pixels" -msgstr "%n 像素" +"...that you can navigate in the Callee/Caller Map View using\n" +"arrow keys? Use Left/Right to change to siblings of the current\n" +"item; use Up/Down to go one nesting level up/down. To select\n" +"the current item, press Space, and to activate it, press Return.\n" +"
\n" +msgstr "" +"您可以用方向鍵在呼叫者/被呼叫者地圖中導覽。用左右鍵來跳到相鄰的節點,上下" +"鍵則在不同的巢狀等級間來回。要選取目前的項目,您可以按空白鍵,按下 Enter 鍵則" +"是啟用。
\n" -#: treemap.cpp:3073 -msgid "Halve Area Limit (to %1)" -msgstr "將區域限制減半(到 %1)" +#: tips:39 +msgid "" +"...that you can navigate in the Call Graph View using\n" +"arrow keys? Use Up/Down to go one calling level up/down, alternating\n" +"between calls and functions. Use Left/Right to change to siblings of a " +"current\n" +"selected call. To activate the current item, press Return.\n" +"
\n" +msgstr "" +"您可以用方向鍵在呼叫圖檢視中導覽。用左右鍵來跳到與目前選取的呼叫相鄰的節" +"點,上下鍵則在不同的呼叫等級間來回,切換呼叫函式。按下 Enter 鍵則是啟用目前的" +"項目。
\n" -#: treemap.cpp:3118 -#, c-format -msgid "Depth %1" -msgstr "深度 %1" +#: tips:49 +msgid "" +"...that you can rapidly locate a function by entering part of its\n" +"name (case-insensitive) into the edit line of the toolbar\n" +"and hit return?
\n" +msgstr "" +"您可以在工具列的編輯欄中輸入某函式的部份名稱(不分大小寫),再按下 Enter " +"鍵就可以快速找到該函式的位置。
\n" -#: treemap.cpp:3122 -msgid "Decrement (to %1)" -msgstr "遞減(到 %1)" +#: tips:57 +msgid "" +"...that you can assign custom colors to \n" +"ELF objects/C++ Classes/Source Files for graph coloring\n" +"in Settings->Configure KCachegrind...?
\n" +msgstr "" +"您可以指定自訂的顏色給圖形中的 ELF 物件、C++ 類別或源碼檔。您只要在「設" +"定」─「設定 KCachegrind...」中設定即可。
\n" -#: treemap.cpp:3124 -msgid "Increment (to %1)" -msgstr "遞增(到 %1)" +#: tips:65 +msgid "" +"...that you can see if debug info is available for a selected \n" +"function by looking at the location label in the Info tab or\n" +"the source listing header in the source tab?
\n" +"There must be the name of the source file (with extension).\n" +"If KCachegrind still doesn't show the source, make sure that you\n" +"have added the directory of the source file to the\n" +"Source Directories list in the configuration.\n" +msgstr "" +"
如果有提供除錯資訊的話,您可以在資訊分頁中的「位置」標籤處,或是源碼分頁處" +"的源碼標頭處看到所選取函式的除錯資訊。
\n" +"必須要有源碼檔的檔名(包括副檔名)。如果 KCachegrind 還是沒有顯示源碼,請" +"確定您已將源碼檔所在的路徑加到設定中的「源碼目錄」清單中。
\n" -#: traceitemview.cpp:53 -msgid "No description available" -msgstr "沒有可用的描述" +#: tips:77 +msgid "" +"...that you can configure whether KCachgrind should\n" +"show absolute event counts or relative ones (percentage display)?
\n" +msgstr "" +"您可以設定是否要讓 KCachegrind 顯示絕對事件計數或相對事件計數(以百分比顯" +"示)。
\n" -#: coverageview.cpp:48 coverageview.cpp:54 -msgid "Distance" -msgstr "距離" +#: tips:84 +msgid "" +"...that you can configure the maximum number of items\n" +"for all function lists in KCachegrind? Limiting the number\n" +"of items is done to get a fast reacting GUI. The last item in\n" +"the list will show you the number of skipped functions, together\n" +"with a cost condition for these skipped functions.
\n" +"To activate a function with small costs, search for it and select\n" +"it in the flat profile. Selecting functions with small cost will\n" +"temporarily add them to the flat profile list.
\n" +msgstr "" +"您可以在 KCachegrind 中設定所有函式清單中的最大顯示數目。這樣的話,清單中" +"的最後一個項目會顯示出還有多少函式未顯示出來,以及這些未顯示函式的花費。" +"p>\n" +"
要啟動較少花費的函式,您可以搜尋並在簡單分析檔中選取。這樣會暫時新增到簡單" +"分析檔清單中。
\n" -#: coverageview.cpp:55 -msgid "Calling" -msgstr "呼叫中" +#: tips:97 +msgid "" +"...that the Coverage tab - in contrast to the Call Lists tab -\n" +"shows all functions that are calling the selected function\n" +"(upper part) / are called by the selected function (bottom part),\n" +"no matter how many function are between them on the stack?
\n" +"Examples:
\n" +"An entry in the upper list for function foo1() with a value of 50%\n" +"with function bar() selected means that 50% of all the cost of function\n" +"bar() happened while called from function foo1().
\n" +"An entry in the bottom list for function foo2() with a value of 50%\n" +"with function bar() selected means that 50% of all the cost of function\n" +"bar() happened while calling foo2() from bar().
\n" +msgstr "" +"「總體呼叫頁」顯示的是呼叫選取的函式的所有函式(上半部),以及被選取的函式" +"呼叫的函式(下半部),包括直接與間接呼叫。
\n" +"例如:
\n" +"選取函式 bar(),上半部清單中的函式 foo1() 數值 50% 表示從 foo1() 呼叫 " +"bar() 時的花費佔全部花費的 50%。
\n" +"下半部清單中的函式 foo2() 數值 50% 表示 bar() 呼叫 foo2() 時的花費佔全部花" +"費的 50%。
\n" -#: coverageview.cpp:90 +#: tips:113 msgid "" -"List of all Callers" -"This list shows all functions calling the current selected one, either " -"directly or with several functions in-between on the stack; the number of " -"functions in-between plus one is called the Distance " -"(e.g. for function A,B,C there exists a call from A to C when A calls B and B " -"calls C, i.e. A => B => C. The distance here is 2).
" -"Absolute cost shown is the cost spent in the selected function while a " -"listed function is active; relative cost is the percentage of all cost spent in " -"the selected function while the listed one is active. The cost graphic shows " -"logarithmic percentage with a different color for each distance.
" -"As there can be many calls from the same function, the distance column " -"sometimes shows the range of distances for all calls happening; then, in " -"parentheses, there is the medium distance, i.e. the distance where most of the " -"call costs happened.
" -"Selecting a function makes it the current selected one of this information " -"panel. If there are two panels (Split mode), the function of the other panel is " -"changed instead.
" +"...that waiting for the tool tip inside of a tree map\n" +"shows the list of names of the nested rectangles the mouse\n" +"pointer is over?
\n" +"Items from this list can be selected by pressing the right\n" +"mouse button.
\n" msgstr "" -"所有呼叫者清單 " -"此清單顯示目前選取函式的所有呼叫者函式,包括直接呼叫與間接呼叫。間接呼叫的數字加一稱為「距離」(例如,函式 A 呼叫函式 B,函式 B 又呼叫函式 " -"C,則函式 A 到 C 的距離為 2)
" -"顯示的「絕對花費」是當一個已列出的所選函式使用時的花費;「相對花費」是此函式相對於所有已選函式的花費。花費圖形以對每個距離以不同顏色顯示對數百分比。
" -"因為有可能同一個函式中會有許多呼叫,距離欄位有時會顯示所有發生呼叫的函式的距離範圍,這種狀況下,括弧中顯示的是平均距離,也就是發生呼叫最多花費的地方。" -"p> " -"
選擇某函式可以看每個函式的資訊。如果在分割模式下的兩個面板,會在另一個面板改變。
" +"滑鼠指標指在樹狀地圖中上頭時稍等一下,會跑出逼個工具提示,裡面會顯示巢狀矩" +"形的名稱清單。
\n" +"清單中的項目可以用滑鼠右鍵選取。
\n" -#: coverageview.cpp:120 +#: tips:123 msgid "" -"List of all Callees" -"This list shows all functions called by the current selected one, either " -"directly or with several function in-between on the stack; the number of " -"function in-between plus one is called the Distance " -"(e.g. for function A,B,C there exists a call from A to C when A calls B and B " -"calls C, i.e. A => B => C. The distance here is 2).
" -"Absolute cost shown is the cost spent in the listed function while the " -"selected is active; relative cost is the percentage of all cost spent in the " -"listed function while the selected one is active. The cost graphic always shows " -"logarithmic percentage with a different color for each distance.
" -"As there can be many calls to the same function, the distance column " -"sometimes shows the range of distances for all calls happening; then, in " -"parentheses, there is the medium distance, i.e. the distance where most of the " -"call costs happened.
" -"Selecting a function makes it the current selected one of this information " -"panel. If there are two panels (Split mode), the function of the other panel is " -"changed instead.
" +"...that you can constrain the cost counts shown to only a\n" +"few parts of the whole trace by selecting these parts in the\n" +"\"Trace Selection\" Dockable?
\n" +"To generate multiple parts in a profiling run with\n" +"cachegrind, use e.g. option --cachedumps=xxx for parts\n" +"of a length of xxx basic blocks (A basic block is a run\n" +"of not-branching assembler statements inside of your program\n" +"code).
\n" msgstr "" -"被呼叫者清單" -"這份清單顯示所有被目前選取的函式呼叫的函式,包括直接與間接呼叫。間接呼叫的數字加一稱為「距離」(例如,函式 A 呼叫函式 B,函式 B 又呼叫函式 " -"C,則函式 A 到 C 的距離為 2)
" -"顯示的「絕對花費」是當一個已列出的所選函式使用時的花費;「相對花費」是此函式相對於所有已選函式的花費。花費圖形以對每個距離以不同顏色顯示對數百分比。
" -"因為有可能同一個函式中會有許多呼叫,距離欄位有時會顯示所有發生呼叫的函式的距離範圍,這種狀況下,括弧中顯示的是平均距離,也就是發生呼叫最多花費的地方。" -"p> " -"
選擇某函式可以看每個函式的資訊。如果在分割模式下的兩個面板,會在另一個面板改變。
" +"您可以限制只顯示一小部份部件的花費計數,只要在「追蹤選擇」元件中選取這些部" +"件即可。
\n" +"要在 cachegrind 的分析執行中產生多個部件,可以用像這樣的選項:--" +"cachedumps=xxx 表示 xxx 個基本區塊。(基本區塊是在您的程式碼中不分支的組譯敘" +"述)。
\n" -- cgit v1.2.1