2015-05-05 6 views
16

वीएस कोड tasks.json में ["कार्यों"] सरणी में कई कार्यों को परिभाषित करने की अनुमति देता है और संपत्ति वाला एक है BildCommand: डिफ़ॉल्ट रूप से कीबोर्ड शॉर्टकट Ctrl + Shift + B को सत्य दिया जाता है।क्या वीएस कोड में विभिन्न कार्यों के लिए अलग-अलग शॉर्टकट असाइन करना संभव है?

मैं अपने द्वारा बनाए गए कार्यों में से प्रत्येक के लिए अलग-अलग कीबोर्ड शॉर्टकट असाइन करना चाहता हूं। क्या यह संभव है और यदि ऐसा हो तो कैसे?

मुझे अब तक "workbench.action.tasks.runTask" कमांड को शॉर्टकट असाइन करने की क्षमता मिली है जो वर्णमाला क्रम में सभी कार्यों के मेनू को पॉपअप करेगा जो मैं तीर को ऊपर/नीचे कर सकता हूं । मैं प्रत्येक कार्य को सीधे एक कुंजी संयोजन के साथ चलाने के लिए कोड कॉन्फ़िगर करना चाहता हूं।

+2

https://dlaa.me/blog/post/vscodenodetask में 'tasks.json' फ़ाइल का एक अच्छा उदाहरण था। –

उत्तर

7

हां एक अन्य संपत्ति है जिसका उपयोग शॉर्टकट को बांधने के लिए किया जा सकता है। इसका नाम isTestCommand है। यदि सत्य पर सेट किया गया है तो यह कार्य में Ctrl + Shift + T को बाध्य करें। हमारे पास कार्यों में मनमाने ढंग से कम कटौती करने की अनुमति देने के लिए एक आंतरिक कार्य आइटम है।

+1

इसे अभी तक लागू नहीं किया गया है, लेकिन वहां [मुद्दा] है (https://github.com/Microsoft/vscode/issues/6550) (मील का पत्थर जुलाई 2016)। तो उम्मीद है कि यह जुलाई रिलीज में उपलब्ध होगा। – psulek

+0

आपको इसे keybindings.json में जोड़ना होगा: [ {"कुंजी": "ctrl + shift + t", "कमांड": "workbench.action.tasks.test"} ] –

5

मैं सिर्फ इस बात के लिए एक जनसंपर्क प्रस्तुत: https://github.com/Microsoft/vscode/pull/10676

तो एक बार यह विलय कर दिया है कि आप एक कुंजीपटल शॉर्टकट के लिए किसी भी कार्य आवंटित करने के लिए की क्षमता होगी।

+0

क्या यह अभी तक जोड़ा गया है? जब मैं अपने 'task.json' में 'कमांड बाइंडिंग' टाइप करता हूं तो मुझे वह संदेश मिलता है जिसकी अनुमति नहीं है। –

15

वीएस कोड 1.10 के अनुसार, आप अपने कीबाइंडिंग में workbench.action.tasks.runTask कमांड का उपयोग कर सकते हैं, और कार्य के नाम को अपने तर्क के रूप में पास कर सकते हैं।

{ 
    "key": "ctrl+h", 
    "command": "workbench.action.tasks.runTask", 
    "args": "build" 
} 
+2

(बस जोड़ने के लिए: यह 'keybindings.json' में है, 'tasks.json' नहीं," args "actuall' tasks.json' में आपके' कार्यनाम ''को दर्शाता है और मेरे सकारात्मक आश्चर्य के लिए: रिक्त स्थान समस्या नहीं है , यानी "तर्क": "नमूना चलाएं" भी ठीक काम करता है।) –

0

VSCode 1.19 के रूप में (फरवरी 2018):

VS Code task documentation इस उदाहरण देता

/myproject/.vscode/tasks.json में आप एक label (पूर्व में, अब पदावनत: taskName) जोड़ने की जरूरत है अपने NPM को कार्य।

{ 
     "label": "ui", 
     "type": "npm", 
     "script": "ui" 
    } 

तो फिर आप अपने उपयोगकर्ता कीबाइंडिंग/home/johndoe/.config/Code/User/keybindings.json में उसका लेबल द्वारा उस कार्य को संदर्भित: मैं मेरा मेरी package.json स्क्रिप्ट को एक ही नाम दिया

{"key": "ctrl+r", 
    "command": "workbench.action.tasks.runTask", 
    "args": "ui" 
}, 

मामले में आप सोच: नहीं, देखते हैं बनाम कोड में कोई परियोजना-स्तर कीबाइंडिंग नहीं। (Reasons here)

संबंधित मुद्दे