2013-05-10 91 views
21

我在MacOS X上運行,並且正在使用Sublime Text 2進行編碼。在Sublime Text 2中構建並運行參數

我發現命令 + 選項來構建和命令 + 轉變 + 建立和運行。

是否可以運行程序(或腳本)並傳遞參數。例:

myProg arg1 arg2 

注:我使用多國語言(C++,Java和Python)的,所以我希望有一種方法來設置每個項目,而不是對所有構建的參數。

編輯

我想設置的參數爲程序調用,有點像在eclipse就是當你運行你的程序,你可以設置的參數。

+0

讓我直截了當地說:你想要一個特定程序的同一組參數?或者您希望每次都能夠使用不同的參數運行代碼? – whatyouhide 2013-05-10 22:31:36

回答

21

對於每一個項目,你可以在其上創建一個文件.sublime-project您的特定build_system

{ 
    "folders": 
    [{ 
    "path": "src" 
    }], 
    "build_systems": 
    [{ 
    "name": "Run with args", 
    "cmd": ["python", "$file", "some", "args"] 
    }] 
} 

這樣,您就不會污染全局構建系統菜單,不會擔心切換在您切換項目時構建系統。該文件也很容易訪問時,您需要更改的參數:

Cmd-Shift-P > Edit Project 
+1

好友,如果我們每次都需要傳遞動態論證,那麼完成它的最佳方式是什麼......? – 2014-05-03 19:56:36

+0

動態是什麼意思?你可以在這裏完全訪問一個shell,你可以將你的「動態」東西存儲在一個文件中,並在崇高的構建中靜態讀取它。 – OlivierBlanvillain 2014-05-03 22:38:01

+0

例如你想爲下劃線運行nodejs npm安裝程序,那麼你將編寫命令,如「npm install underscore」,但下一次你想加載express時,你將編寫命令,如「npm install express」。所以我懷疑它是否通過鍵盤提供來選擇arg並使用它來加載節點模塊,與查找文件中的文本相同。 :選擇文件中的任何文本,然後按Ctrl + F。你會在查找面板中找到它。 – 2014-05-06 12:14:00

5

我發現了一個簡單的解決方案是建立在同一個目錄中的Python文件:

import os 
os.system("python filename.py some args") 
+0

這將是我的後備選項(並不總是在崇高) ,但需要進行一些調整,比如檢查os.argv,或者使用raw_input來請求多個參數,然後使用os.execv()而不是os.system()來啓動。 – erm3nda 2016-11-23 02:55:02

7

InputArgs不正是你」重新尋找。它顯示一個輸入對話框每次運行build(ctrl + b),並且您可以在sublime文本中爲它提供空格分隔的參數。

+2

當你做ctrl + shit + b並且對話框打開時,做每個人都會做的事情。它是完美的,並處理所提供的命令的歷史(上推)。非常感謝。 – erm3nda 2016-11-23 02:49:10

+0

我剛剛試過用node.js構建系統,如果我傳遞一系列由空格分隔的參數,我將它們作爲一個大參數: ie。如果我想模擬'node program.js 1 2 3',我在對話框中輸入'1 2 3'時得到的是單個字符串'1 2 3',而不是3個單獨的字符串參數。 – 2017-04-04 15:02:28