2025, Sep 28 17:31
VS Code में Shift+Enter और Run Selection नहीं चल रहे? Python एक्सटेंशन के प्री-रिलीज़ से ठीक करें
VS Code में Shift+Enter और Run Selection in Terminal नहीं चलते? Python एक्सटेंशन का वर्ज़न बदलें: प्री-रिलीज़ पर अपडेट कर Smart Send बहाल करें, इंटीग्रेटेड टर्मिनल में.
जब VS Code में Shift+Enter अचानक एकीकृत टर्मिनल को Python कोड भेजना बंद कर देता है, तो सबसे सरल वर्कफ़्लो भी बिगड़ जाता है। सामान्य Run Selection/Line in Terminal निष्क्रिय-सा हो जाता है—न कोई त्रुटि, न कोई संकेत—और ऐसा लगता है कि टर्मिनल तो ठीक है, क्योंकि वह खुलता है और आपका environment सक्रिय भी कर देता है। ठीक यही यहां हुआ: पहले सुचारू चलने वाला “Python Smart Send” बिना किसी दिखने वाले कारण के थम गया।
संपादक में आप क्या देखते हैं
वर्कफ़्लो सीधा-सादा है। आप एक Python फ़ाइल खोलते हैं, कर्सर किसी लाइन पर रखते हैं और उसे टर्मिनल में भेजते हैं। नीचे एक छोटा सा स्निपेट है जिसे हिस्सों में भेजना सुविधाजनक रहता है:
greeting = "hello from smart send"
print(greeting)
num_a = 2
num_b = 3
print(num_a + num_b)
सामान्य स्थिति में, Shift+Enter से हर लाइन या चुने हुए ब्लॉक को भेजते ही वह इंटीग्रेटेड Python टर्मिनल में तुरंत चल जाता है। लेकिन जब यह टूट जाता है, तो कुछ नहीं होता। टर्मिनल तो पहले की तरह खुलता है, और Windows पर वह PowerShell के रूप में भी खुल सकता है, जहां आपका conda activation क्रम अपने-आप चल जाता है:
(& C:\Users\REDACTED\AppData\Local\miniforge3\shell\condabin\conda-hook.ps1) ; (conda activate base)
terminal.integrated.defaultProfile.Windows को Command Prompt पर बदलने से भी कोई फर्क नहीं पड़ता। VS Code और Python को फिर से इंस्टॉल करने पर भी स्थिति जस की तस रहती है। इंटीग्रेटेड टर्मिनल PowerShell में ही खुलता है, conda environment सक्रिय हो जाता है, और Shift+Enter चुप ही रहता है।
समस्या की जड़
यह व्यवहार VS Code Python एक्सटेंशन के संस्करण से जुड़ा मिला। सटीक ट्रिगर स्पष्ट नहीं है, लेकिन निर्णायक कारक एक्सटेंशन का वर्ज़न ही था। कीबाइंडिंग जांचना, डिफ़ॉल्ट शेल बदलना, या एडिटर/इंटरप्रिटर को पुनः इंस्टॉल करना काम नहीं करता, क्योंकि समस्या उन परतों में नहीं है।
टेस्टिंग के आधार पर, यह समस्या 2025.0.0 से लेकर 2025,13.2025082101 तक मौजूद थी। एक और तथ्य यह है कि Windows पर VS Code 1.104.0-insiders के साथ यह पुनरुत्पादित नहीं हुई—वहां “run python” और “run in interactive window” दोनों अपेक्षा के अनुसार काम कर रहे थे।
Smart Send को बहाल करने वाला समाधान
VS Code Python एक्सटेंशन को pre-release संस्करण पर स्विच करने से समस्या दूर हो जाती है। जैसे ही एक्सटेंशन प्री-रिलीज़ बिल्ड पर आता है, Shift+Enter और Run Selection/Line in Terminal फिर से इंटीग्रेटेड टर्मिनल में सामान्य रूप से काम करने लगते हैं, चाहे PowerShell और ऑटोमेटिक conda activation ही क्यों न हो।
फिक्स के बाद, यही न्यूनतम स्निपेट लाइन-दर-लाइन अपेक्षित तरीके से चलता है:
greeting = "hello from smart send"
print(greeting)
num_a = 2
num_b = 3
print(num_a + num_b)
यह क्यों मायने रखता है
कई डेवलपर्स और डेटा पर काम करने वाले लोगों के लिए, क्रमिक तरीके से कोड चलाना ही सबसे तेज़ तरीका होता है—स्टेट जांचने, धारणाओं को परखने और बिना डिबगर या नोटबुक में गए स्क्रिप्ट के साथ आगे बढ़ने के लिए। Smart Send के टूटते ही यह रोज़मर्रा की उत्पादकता पर सीधा असर डालता है, यह कोई औपचारिक खामी भर नहीं। जानना कि वजह VS Code Python एक्सटेंशन का संस्करण हो सकता है, उन घंटों को बचा देता है जो वरना टर्मिनल, शेल और environment सेटिंग्स के पीछे लग जाते। यह यह भी दिखाता है कि जब पहले से काम कर रहा वर्कफ़्लो अचानक खामोश हो जाए, तो एक्सटेंशन चैनल की जांच कितनी ज़रूरी है।
सार और व्यावहारिक सलाह
अगर Shift+Enter या Run Selection/Line in Terminal प्रतिक्रिया देना बंद कर दे और आपका इंटीग्रेटेड टर्मिनल पहले की तरह खुलकर conda भी सक्रिय कर दे, तो सबसे पहले VS Code Python एक्सटेंशन पर शक करें। प्री-रिलीज़ संस्करण पर अपडेट करना फ़ंक्शनैलिटी वापस ला सकता है। समस्या 2025.0.0 से 2025,13.2025082101 के बीच के वर्ज़नों में देखी गई, जबकि Windows पर VS Code 1.104.0-insiders के साथ यह दोहराई नहीं जा सकी। आप जो एक्सटेंशन चैनल इस्तेमाल कर रहे हैं, उस पर नज़र रखें, और टूल्स को फिर से इंस्टॉल करने या टर्मिनल प्रोफाइल बदले बिना पहले एक्सटेंशन संस्करण बदलकर देखें।