विज़ुअल स्टूडियो कोड में सही इंडेंटेशन के साथ पेस्ट कॉपी करने की सेटिंग्स


96

जब मैं विज़ुअल स्टूडियो कोड का उपयोग करके कोड का एक टुकड़ा कॉपी और पेस्ट करता हूं , तो एक नई लाइन बनाने के लिए एंटर दबाकर , निम्नलिखित होता है:

यहाँ छवि विवरण दर्ज करें

यह नई लाइन द्वारा बनाए गए इंडेंटेशन को बनाए रखने के लिए लगता है, इसके ऊपर कॉपी किए गए स्निपेट से पिछली जानकारी जोड़ते हैं। मैं कोड को स्वतः पेस्ट पर सुशोभित करना चाहता था।

क्या सेटिंग्स के माध्यम से इस व्यवहार को बदला जा सकता है?

संपादित करें: मैं क्रॉस-प्लेटफ़ॉर्म कॉपी-पेस्टिंग की बात नहीं कर रहा हूँ, मैं विजुअल कोड कोड में उसी फ़ाइल के भीतर कॉपी और पेस्ट करने की बात कर रहा हूँ।


a) अपने स्रोत या b से पहली पंक्ति के रिक्त स्थान की प्रतिलिपि न करें) जब इसे चिपकाते हैं तो सुनिश्चित करें कि आपका कर्सर लाइन की शुरुआत में है। मूल रूप से वीएससी इसे केवल वहां "जैसे भी है" में चिपका देता है।
newBee

तो क्या सेटिंग्स के माध्यम से इसे बदलने का कोई तरीका नहीं है?
टियागो

पाठ को हाइलाइट करना और इसके साथ बढ़ना ALT + Arrowkeyइंडेंटेशन को संरक्षित करेगा। उन लोगों के लिए जो सेटिंग बदलने का विकल्प ढूंढ रहे हैं।
डैनियल थॉम्पसन

जवाबों:


102

यह पहले से ही "editor.formatOnPaste": trueसेटिंग्स में संपत्ति के साथ vscode में एकीकृत है ।


12
यह दुर्भाग्य से किसी भी पेस्ट किए गए कोड को प्रारूपित करता है, जो हमेशा वह नहीं होता जो आप चाहते हैं।

2
नहीं, ऐसा नहीं है। एक लंबे समय तक रहने वाला मुद्दा है github.com/Microsoft/vscode/issues/6392 , जो बंद है, लेकिन वास्तव में हल नहीं किया गया है, टिप्पणियों को देखें। हम जो कुछ भी चाहते हैं वह गंतव्य / लक्ष्य रेखा के इंडेंटेशन स्तर को बनाए रखने के लिए है, न कि प्रारंभिक स्तर, जहां से पाठ की प्रतिलिपि बनाई गई थी, जबकि "editor.formatOnPaste": trueप्रारूप कर रहा है, जैसे कि PEP8 फ्रॉ पायथन।
ololobus

वैसे यह काम करता है कि मैं इसे कैसे चाहता हूं। मैं चाहता हूं कि जब भी मैं कर्सर पेस्ट करूं, मैं उस अनुभाग को कॉपी कर लूं, जब मैं पेस्ट करता हूं
डेव पाइल

2
VSCode को छोड़कर प्रत्येक टेक्स्ट एडिटर किसी उपयोगकर्ता को किसी भी टेक्स्ट को ट्रिपल क्लिक करने और हाइलाइट करने की अनुमति देता है। CTRL C कॉपी करने के लिए और फिर CTRL V, CTRL V कॉपी किए गए टेक्स्ट को कॉपी करने के लिए। VS कोड को छोड़कर एक ट्रिपल क्लिक CTRL C CTRL V टेक्स्ट को समायोजित करता है और फिर दूसरा CTRL V इसे और भी बदतर बना देता है। CTRL C CTRL V कीबोर्ड शॉर्टकट का सबसे आम है, यहां तक ​​कि मेरे मम को भी यह पता है।
NZ देव

3
यह उतना स्पष्ट नहीं है, जितना मैं आपके बाकी कथन से सहमत हूं। COPY और PASTE SHOULD का कोई मत नहीं है, यह COPY और PASTE है, उन्हें केवल 1 तरीके से काम करना चाहिए।
NZ देव

41

यह प्लगइन आपकी मदद कर सकता है:

पेस्ट-एंड-इंडेंट एक्सटेंशन

आपको बस शॉर्टकट बदलना है और यह काम करता है। याद रखें कि आप शायद का उपयोग करना चाहते 'cmd'बजाय 'ctrl'यदि आप Mac पर हैं। इस कदर:

{
    "key": "ctrl+v",
    "command": "pasteAndIndent.action",
    "when": "editorTextFocus && !editorReadonly"
},
{
    "key": "ctrl+v",
    "command": "editor.action.clipboardPasteAction",
    "when": "!editorTextFocus"
},
{
    "key": "ctrl+shift+v",
    "command": "editor.action.clipboardPasteAction",
    "when": "editorTextFocus && !editorReadonly"
}

9
उदात्त पाठ 3 व्यवहार को फिर से बनाने के लिए इसका उपयोग करें। cmd + Shift + v पेस्ट-इंडेंट करने के लिए: { "key": "cmd+shift+v", "command": "pasteAndIndent.action", "when": "editorTextFocus && !editorReadonly" }
फॉक्स

यह समाधान अभी भी काम करता है। हर बार जब मैं कॉपी / पेस्ट करता हूं तो कोई अधिक गंदा अतिरिक्त टैब बनाम कोड नहीं डालना पसंद करता है।
चमकदार

6
इसे मिला, "कीबोर्ड शॉर्टकट" में जाएं और फिर स्क्रीन के ऊपरी दाएँ भाग में "कीबोर्ड कीबोर्ड शॉर्टकट JSON" आइकन पर क्लिक करें, जो मुझे लगता है कि मुश्किल है!
मैट फ्लेचर

इस विस्तार में एक बड़ा नकारात्मक पहलू है: यह पेस्ट करते समय पूरे फ़ाइल कोड को प्रारूपित करता है, न केवल उस टुकड़े को चिपकाया जाता है! मुझे अनइंस्टॉल करना पड़ा।
sdlins

यह पता लगाने के लिए keybindings.jsonकि आपको JSON स्निपेट को कहाँ जोड़ना है: "प्राथमिकताएँ: ओपन कीबोर्ड शॉर्टकट्स (JSON) इन कमांड पैलेट
कॉर्नेलियस रोमर

14

Ctrl+ के Vबाद Ctrl+ Zबॉक्स से बाहर काम करने लगता है।


2
यह आश्चर्यजनक रूप से काम करता है। ऐसा करने के लिए परेशान किंडा, लेकिन यह कुछ भी नहीं से बेहतर है
नैट बियर

क्या आपने Cmd + V और Cmd + Z की कोशिश की?
फिलिप

इसे कॉपी करने और चिपकाने की क्षमता को संभालने में विफल रहने के लिए एक Microsoft उत्पाद को छोड़ दें ... OMG बहुत खुश हूं मैं एक लिनक्स लैपटॉप का उपयोग करता हूं ... धन्यवाद यह वर्कअराउंड काम करता है
स्कॉट स्टेंसलैंड

-3

उन्हें आसानी से ठीक करने की कोशिश करना है Ctrl+ Shift+ Vकोड कॉपी करने के बाद। इसमें इंडेंटेशन के साथ यह सभी कोड को सही तरीके से पेस्ट करेगा।


यह काम नहीं करता है, बिल्कुल वैसा ही। आप इसे आज़माएँ: पैराग्राफ को हाइलाइट करें - CTRL C, CTRL + SHFT + V, CTRL + SHFT + V। यह बदसूरत हो जाता है !!!!
NZ देव

"कोशिश करने के लिए" अजीब लगता है। वास्तव में क्या करता है? यदि उपयोगकर्ता ने शॉर्टकट बदल दिए तो क्या होगा?
निको हेज़
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.