मैं किसी विज़ुअल स्टूडियो कोड प्रोजेक्ट की सभी फ़ाइलों को कैसे प्रारूपित करूं?


जवाबों:


79

आप "प्रारूप फ़ाइलें" नामक एक्सटेंशन का उपयोग कर सकते हैं।

"का प्रयोग करें: ओपन कमांड पैलेट (Ctrl + Shift + P) और" फॉर्मेट फाइल "दर्ज करें। 'editor.action.formatFiles' कमांड के लिए कीबाइंडिंग बनाएँ। कार्यस्थान फ़ोल्डर पर राइट-क्लिक करें और निर्देशिका में सभी फ़ाइलों को प्रारूपित करने के लिए 'प्रारूप फ़ाइलें' चुनें।

स्रोत: https://marketplace.visualstudio.com/items?itemName=jbockle.jbockle-format-files


फिर आधे रास्ते से कहा " An error occurred while running Format Files: Invalid count value"
हारून फ्रेंके

1
आकर्षण के रूप में काम करता है
धीरज एम पाई

1
इसके कारण मेरी सभी फाइलें टूट गईं क्यूज यह प्रीटियर का उपयोग नहीं करता है। यह जेएसएक्स कोड को तोड़ देता है जो सभी के प्यार के लिए है और यह कभी नहीं होगा! आप इससे पछतायेंगे।
जेक_314

1
@ jake_314: क्षमा करें कि आपको इसके साथ इतना बुरा अनुभव हुआ। लेकिन मुझे आशा है कि आप प्रमुख स्क्रिप्ट कोड को बदलने के संचालन से पहले Git का उपयोग कर रहे हैं या अपने कोड का बैकअप ले रहे हैं? वैसे भी मैंने JSX के
लिंडेल

37

यह मेरे लिए काम करता है

Prettier स्थापित करें:

npm init 
npm i prettier

पैकेज में निम्नलिखित स्क्रिप्ट जोड़ें । json:

"pretty": "prettier --write \"./**/*.{js,jsx,json}\"" 

केवल इस मामले में, मुझे अपने .js .jsx और .json फ़ाइलों को प्रारूपित करने की आवश्यकता है।

स्क्रिप्ट चलाएँ:

npm run pretty

3
शायद npm स्थापित कमांड में "- save-dev" जोड़ना चाहते हैं, उत्पादन निर्भरता के रूप में इसकी आवश्यकता नहीं है
23

3
प्रश्न पूछना जावास्क्रिप्ट के बारे में है। मुझे इससे संबंधित कोई टैग नहीं मिला।
एमोब

2
खूबसूरत सकते हैं प्रारूप c/ c++/ c#कोड? नहीं - डाउनवोट
हेरगोट

eslint --fixयदि आप एस्क्लिंट और प्रीटीयर दोनों का उपयोग करते हैं तो आप भी उपयोग कर सकते हैं
BeyondTheSea

मैं इस बात से सहमत हूं कि इस जवाब को नीचा दिखाना चाहिए। जिस समय मैं इस प्रश्न का उत्तर खोज रहा था, मैं मुख्य रूप से js / jsx / json कोड के साथ काम कर रहा था
Hiiu Thái Ngọc

10

मैं भाग्य से एक विस्तार पा रहा था जो इस तरह से कर रहा था जैसे मैं यह उम्मीद कर रहा था इसलिए मैंने एक बना दिया। मेरा सुझाव है कि आप मेरे द्वारा किए गए विस्तार पर एक नज़र डालें:

https://marketplace.visualstudio.com/items?itemName=lacroixdavid1.vscode-format-context-menu#overview

इसमें अभी भी कुछ समस्याएँ हो सकती हैं, बेझिझक उन्हें रिपोर्ट करें या योगदान दें।


मेरा आदमी! समय की बचत के लिए धन्यवाद। यह HTML के साथ अच्छा काम करता है।
रम जेरेमी

6

सबसे सरल समाधान जो मैंने पाया है वह नीचे है।

  • Vscode में prettier स्थापित करें।
  • .Prettierrc फ़ाइल बनाएँ और उसे जिस तरह से आप चाहते हैं, उसे कॉन्फ़िगर करें।
  • Vscode कंसोल में निम्नलिखित कमांड चलाएँ।

npx prettier --write "**/*.ts" (आवश्यकता के अनुसार फ़ाइल प्रकार regex जोड़ें)


1

जैसा कि @herrbischoff ने कहा, वर्तमान में किसी परियोजना में सभी फ़ाइलों को प्रारूपित करने का कोई तरीका नहीं है।
हालाँकि यह एक उपयोगी सुविधा होगी।

यह क्या कर सकता है सभी सहेजे गए फ़ाइलों को ऑटो-सेव और ऑटो-फॉर्मेट पर फॉर्मेट कर सकता है।

अन्यथा आपको एक शेल स्क्रिप्ट या एक एक्सटेंशन या कुछ अन्य एक्सटर्नल प्रोग्राम (जैसे tslint checker जो कि ऑटो-करेक्ट एरर कर सकते हैं) की आवश्यकता होगी जो ऐसा करने में सक्षम है।

अपने आप को इसके साथ समस्या थी और यह सभी फ़ाइलों को हाथ से खोलने के लिए बेकार है


0

वर्तमान में ऐसा करने का कोई तरीका नहीं है और न ही यह विशेष रूप से उपयोगी सुविधा की तरह लगता है। या दूसरे शब्दों में कहें: यह होगा यदि आप पूरी तरह से यह भरोसा कर सकती है, जो आप नहीं कर सकते एक उपयोगी सुविधा हो।

आपको उपयोग की जाने वाली भाषाओं के ऑटो-स्वरूपण तर्क में बहुत अधिक विश्वास रखना होगा और संभवतः त्रुटियों का परिचय नहीं देना चाहिए। आपको वैसे भी मैन्युअल रूप से परिवर्तनों की समीक्षा करने की आवश्यकता होगी, इसलिए इस दृष्टिकोण से मापनीय उत्पादकता लाभ नहीं होना चाहिए।

यदि आप गंभीरता से f'ed कोड बेस के साथ काम कर रहे हैं और संभावित समस्याओं की परवाह नहीं करते हैं, तो मैं संबंधित भाषाओं के सीएलआई फॉर्मेटर के साथ एक सरल शेल कमांड चलाने का सुझाव दूंगा। C ++ कोड के लिए उदाहरण, क्लैंग-प्रारूप का उपयोग :

find . -iname *.cpp -exec clang-format {} +

यह कमांड सभी सीपीपी फ़ाइलों को पुन: प्राप्त करेगा और उन्हें डिफ़ॉल्ट सेटिंग्स के साथ फॉर्मेटर के माध्यम से चलाएगा।

प्रक्रिया अनिवार्य रूप से किसी भी भाषा के लिए समान है, उदाहरण के लिए जावास्क्रिप्ट ( js-beautify के साथ ):

find . -iname *.js -exec js-beautify {} +

बस यह सुनिश्चित करें कि जो भी सामने आए आप उसकी समीक्षा करें। साथ ही, इस कमांड को VScode में स्क्रिप्ट करना बहुत संभव है - या इसे बिल्ट-इन टर्मिनल में चलाएं।


19
यह एक उपयोगी विशेषता कैसे नहीं होगी; यदि आप एक प्रारूपण नियम को बदलते हैं, तो इसे सभी फाइलों में एक बार में लागू करना बेहतर होता है, बजाय इसके कि कोड परिवर्तन के साथ स्वरूपण परिवर्तनों को मिलाया जाए।
slikts

1
यह स्पष्ट नहीं है: क्योंकि यह खतरनाक हो सकता है। सभी फ़ाइलों पर लागू हर स्वचालित स्वरूपण, विशेष रूप से ऐसी परियोजनाएँ जिन्हें आप अंतरंग रूप से नहीं जानते हैं, इसे ठीक करने से अधिक तोड़ सकते हैं। सिर्फ पायथन जैसी भाषाओं के बारे में सोचें जहां इंडेंटेशन मायने रखता है। अनियंत्रित स्वचालित सुधार चीजों को तोड़ देगा । आप निश्चित रूप से यह पता लगाने के लिए स्वतंत्र हैं कि आपके अपने कठिन रास्ते के लिए क्या है।
herrbischoff

2
मैं Intellij और Resharper के साथ वर्षों से ऐसा कर रहा हूं और कभी कोई मुद्दा नहीं रहा। वास्तव में कोई "कठिन रास्ता" नहीं है, अगर मैं प्रारूप को एक फ़ाइल के लिए स्वचालित रूप से करने के लिए पर्याप्त भरोसा करता हूं, तो मुझे बाकी सभी के लिए पर्याप्त भरोसा है। मैं स्पष्ट रूप से नियमों को चुनने के दृष्टिकोण की सिफारिश करता हूं IE डिफ़ॉल्ट नियमों को बंद करने और धीरे-धीरे उन्हें चालू करने के लिए।
फोर्ट्वेटो

3
इस तर्क से, पूरी फ़ाइल को फ़ॉर्मेट करना बहुत खतरनाक होगा। आपको केवल एक ब्लॉक को प्रारूपित करने में सक्षम होना चाहिए। यदि एक पूरी फ़ाइल ठीक है, तो क्या होगा यदि मैं उसी निर्देशिका में दो फाइलों का चयन करूं? यदि यह ठीक है, तो क्या होगा यदि मैं एक निर्देशिका का चयन करूं? बहुत सारे उपयोग के मामले हैं (उदाहरण @slikts) जहां यह सही समझ में आता है, और बहुत सारे वातावरण (अजगर सहित) जहां सुधारक / पूर्व-कोड / कोड मानक ठीक काम करते हैं।
मार्विन

2
यह एक सुंदर राय वाली प्रतिक्रिया की तरह लगता है। यह अनिर्णायक त्रुटियों के भार के साथ एक (गैर-पायथन) कोडबेस में आने के लिए नहीं है। डिफ़ॉल्ट क्रिया वर्तमान नियमों का उपयोग करके फ़ाइल को प्रारूपित करना है, प्रोजेक्ट बिल्ड सुनिश्चित करता है, परीक्षण पास करता है, फिर अपनी फ़ाइल को गिट में समीक्षा करें (संभवतः व्हाट्सएप को अनदेखा करते हुए)। मैं एक ऐसी विधि की सदस्यता लूंगा जो मुझे एकल फाइलों के बजाय एक परियोजना के साथ ऐसा करने की अनुमति देती है।
lorengphd

0

मैं एक सरल चाल करता हूं:

  1. इस एक्सटेंशन को डाउनलोड करें https://marketplace.visualstudio.com/items?itemName=ApceHHypocrite.OpenAlFiles
  2. सभी फाइलें खोलें
  3. "editor.formatOnSave" सेट करें: सच
  4. सभी फ़ाइलों को सहेजें

आशा है कि इससे सहायता मिलेगी


2
क्या होगा अगर आपके प्रोजेक्ट में 3k + फ़ाइलें हैं? यह एक पालतू परियोजना के लिए ठीक है लेकिन सामान्य सलाह के रूप में नहीं।
BeyondTheSea
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.