ভিজ্যুয়াল স্টুডিও কোড: ফর্ম্যাট ইনডেন্ট সেটিংস ব্যবহার করছে না


143

ব্যবহার করার সময় Format Codeভিজ্যুয়াল স্টুডিও কোডে কমান্ডটি , এটি আমার ইনডেন্ট সেটিংসকে সম্মান না ( "editor.tabSize": 2)। এটি পরিবর্তে 4 এর ট্যাব আকার ব্যবহার করছে। কোনো ধারণা আছে কেন এটি হছে?

ধন্যবাদ!


কোন ভাষা? ভিজ্যুয়াল স্টুডিও কোড ভাষা বিন্যাসে ফর্ম্যাট করে। কিছু ফরম্যাটার ইনডেন্ট সেটিংস পর্যবেক্ষণ করে। উদাহরণস্বরূপ, সি #, যা ওমনিশর্প দ্বারা পরিচালিত হয় এবং ওমনিশার্প.জসন ব্যবহার করে কনফিগার করা উচিত
ইয়ান ইয়াং

এটি নির্ণয় করতে আমাকে দীর্ঘ সময় লেগেছে: আমার একটি মিশ্রিত ট্যাব এবং স্পেস-ইনডেন্টের সাথে একটি .cs ফাইল ছিল এবং এটি সমস্ত ট্যাব দিয়ে বিন্যাস করতে চেয়েছিল (খ / সি লাইনের বেশিরভাগ ট্যাব ছিল)। আমি "ফর্ম্যাট ডকুমেন্ট" এবং "ফর্ম্যাট নির্বাচন" দিয়ে বিভিন্ন সেটিংস মান চেষ্টা করেছি তবে ভাগ্য হয়নি had অবশেষে আমি "ট্যাবগুলিতে রূপান্তর করুন" ক্রিয়াটি পেয়েছি (@ মালেকির উত্তরে চিত্রটি দেখুন) এবং এটি আমি যা করতে চাইছিলাম তা করেছিল। (আমি সম্প্রতি
সিটিআরএল

উত্তর:


228

ফর্ম্যাটিংয়ের জন্য ব্যবহারের জন্য স্পেসের সংখ্যাটি আলাদা অবস্থান থেকে নেওয়া হয়েছে। আমি 1.0 সংস্করণটি ব্যবহার করছি এবং এটি ঠিক করার জন্য আমি এটি করেছি (আমি ট্যাবগুলির পরিবর্তে আপনার স্পেস ব্যবহার করে ধরে নিচ্ছি):

ডানদিকে সম্পাদকের নীচে "স্পেসস: #" ক্লিক করুন:

ডানদিকে স্থিতি দণ্ড

তারপরে উপরে একটি মেনু উপস্থিত হবে। "স্পেস ব্যবহার করে ইন্ডেন্ট" নির্বাচন করুন:

ইন্ডেন্টেশন প্রকার নির্বাচন করুন

অবশেষে আপনি কতগুলি স্পেস আপনার ফাইল ইন্টেন্ট করাতে চান তা চয়ন করতে পারেন।

ট্যাব আকার নির্বাচন করুন

পরের বার আপনি যখন কোনও ফাইল ফর্ম্যাট করেন তখন আপনার কনফিগার করা ফাঁকা স্থান পেতে সক্ষম হওয়া উচিত।


28
স্বয়ংক্রিয় ফর্ম্যাট প্রয়োগ করার সময় এই সেটিংটি ব্যবহার করা হয়নি (ডান ক্লিক করুন -> ফর্ম্যাট কোড)। এটি সর্বদা 4 স্পেস ব্যবহার করে।
কিমল 42

আপনার উভয়েরই দরকার - ওয়ার্কস্পেস বা সম্পাদক (বা উভয়) এর জন্য আপনার ব্যক্তিগত সেটিংস কনফিগার করুন। নতুন ফাইলগুলি সেটিংটি পিকআপ করবে এবং এই স্ক্রিনশট অনুযায়ী স্থিতি দণ্ডে উদাহরণস্বরূপ '2' প্রদর্শন করবে। তারপরে আপনি অটোফর্ম্যাট করতে পারবেন। বিদ্যমান ফাইলগুলির জন্য, প্রথমে আপনার ওয়ার্কস্পেস / সম্পাদক সেটিংসগুলিকে 'ট্যাবগুলি ব্যবহার করতে' বা 'স্পেসগুলি ব্যবহার করতে' সেট করুন এবং স্পেসের সংখ্যা নির্ধারণ করুন, তারপরে আপনি বিদ্যমান ফাইলগুলি অটোফর্ম্যাট করতে উপরের পদ্ধতিটি করতে পারেন।
rmchaharry

5
উভয় ব্যবহারকারী এবং কর্মক্ষেত্র সেটিংস সেট করুন, এটি নীচের দণ্ডে সেট করুন, ফাইলটি আবার খোলা হয়েছে - এখনও অটোফর্ম্যাট 4 স্পেস ব্যবহার করছে ...
জেরেড

3
সেটিংসটি গ্রহণের জন্য ব্যবহারকারী এবং কর্মক্ষেত্র উভয়ই ডিফল্ট সেট করার পরে ভিসকোড থেকে প্রস্থান এবং পুনরায় চালু করতে হবে। তবেই এটি আমার জেএস ফাইলগুলিতে 4 টি স্পেস ব্যবহার করার চেষ্টা বন্ধ করে দিয়েছে।
জন পেটিট

11
@ জ্যারেড আমি মনে করি আপনি JS-CSS-HTMLপ্লাগইনটি ব্যবহার করছেন । F1সেক্ষেত্রে ফর্ম্যাটর টিপুন এবং চয়ন করুন এবং সেখানে আপনার ইন্ডেন্টেশন সেট করুন। এটি উপরে আলোচিত সমস্ত বিকল্পকে ওভাররাইড করে মনে হচ্ছে।
আতিফ মোহাম্মদ আমীনউদ্দিন

111

ভিজ্যুয়াল স্টুডিও কোডটি ডিফল্ট হিসাবে বর্তমান ইনডেন্টেশন সনাক্ত করে এবং এটি ব্যবহার করে - .editorconfig উপেক্ষা করে

সেট "editor.detectIndentation" থেকে মিথ্যা

(ফাইল -> পছন্দসমূহ -> সেটিংস)

স্ক্রিনশট


যদি এটি ঘটে থাকে তবে আপনার সম্ভবত ফাইলের মধ্যে বেমানান ইনডেন্টেশন রয়েছে। আমার কাছে দুটি স্পেসের কয়েকটি লাইন (কেন কে জানে) বাদে সর্বত্র ট্যাবগুলির সাথে একটি ফাইল ছিল যা ট্যাবগুলি ব্যবহার করে সনাক্ত করা শেষ হয়েছিল তবে 2 এর ট্যাব আকারের সাথে রয়েছে
ইসানা

49

যদি @ মালেকির উত্তরটি আপনার পক্ষে কাজ করে না, .editorconfigআপনার প্রকল্পের ফোল্ডারে আপনার কোনও ফাইল আছে কিনা তা পরীক্ষা করে দেখুন ।

উদাহরণস্বরূপ, কৌণিক সিএলআই একটি নতুন প্রকল্পের সাথে উত্পন্ন করে যা দেখতে এটির মতো দেখায়

# Editor configuration, see http://editorconfig.org
root = true

[*]
charset = utf-8
indent_style = space
indent_size = 2
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
max_line_length = off
trim_trailing_whitespace = false

indent_sizeএখানে পরিবর্তন করা দরকার কারণ মনে হয় এটি আপনার .vscodeকর্মক্ষেত্র বা ব্যবহারকারীর সেটিংসে থাকা কোনও কিছুকে ওভাররাইড করে ।


5
পরিবর্তনটি আইডিইতে কার্যকর হওয়ার জন্য আমাকে ভিএসকোড পুনরায় চালু করতে হয়েছিল।
JOpuckman

3
আমার ক্ষেত্রে এটি আসলে .editorconfigআমার হোম ফোল্ডারে থাকা ফাইলটির কারণে ঘটেছিল । কোনওভাবে এটি ভিএসকোডকে কোনও ওয়ার্কস্পেস-নির্দিষ্ট সেটিংস উপেক্ষা করে তোলে makes খুবই বিরক্তিকর.
এক্সজি

20

আপনি যদি একটি প্লাগইন ব্যবহার করেন (আমার ক্ষেত্রে Vetur, vue.js এর জন্য), এগুলি তাদের নিজস্ব ট্যাব বিন্যাস সেটিংস সেট করতে পারে।

আপনার সেটিংসটি খুলুন, "ফর্ম্যাট" অনুসন্ধান করুন এবং প্রাসঙ্গিক প্লাগইন সেটিংস সন্ধান করুন যা বিশ্বব্যাপী ট্যাব ফর্ম্যাটটিকে ওভাররাইট করতে পারে। এটি আমার পক্ষে কাজ করেছিল; একবার আমি আমার পছন্দটি (আমার ক্ষেত্রে 4-আকারের ট্যাবগুলি) মেলানোর জন্য ভেটুর ট্যাব সেটিংস আপডেট করেছি, ফর্ম্যাট করে documents দস্তাবেজগুলি সঠিকভাবে কাজ শুরু করে:

এখানে চিত্র বর্ণনা লিখুন


এটি সত্য, আমার ক্ষেত্রে আমার প্রিটিয়ার এক্সটেনশনের সেটিংসেও ট্যাব আকার নির্ধারণ করা প্রয়োজন।
টোনিক্স

লক্ষণীয় যে SCSS Formatterপ্লাগইনটি তার নিজস্ব সেটিংস উদাহরণস্বরূপ ব্যবহার করে, সুতরাং আপনাকে অবশ্যই Settings > Extensions > SCSS Formatter > Use Tabsএটির জন্য ট্যাব ব্যবহার করতে বাধ্য করতে হবে to
স্মার্টটিপ

13

আমার জন্য, এই সমস্যাটি ব্যবহার করেই হয়েছিল prettier ওয়ার্কস্পেসে প্রিটিয়ার কনফিগারেশন ফাইল না রেখে ভিএসকোড প্লাগইন দিয়েছে।

প্লাগইনটি অক্ষম করা সমস্যার সমাধান করেছে। এটি সম্ভবত প্রিটিয়ার কনফিগারেশনের উপর নির্ভর করে স্থির করা যেতে পারে।


1
আমার জন্য এটি ছিল "সুন্দরী" প্লাগইন।
ম্যাথু স্মিথ

আমার "ক্ল্যাং-ফর্ম্যাট" এবং ".ক্ল্যাং-ফর্ম্যাট" কনফিগার ফাইলটি একই সমস্যা ছিল।
repkap11

6

সম্ভবত আপনার কিছু ফর্ম্যাট এক্সটেনশন ইনস্টল রয়েছে, যেমন জেএস-সিএসএস-এইচটিএমএল ফর্ম্যাটার

যদি এটি হয় তবে কমান্ড প্যালেটটি কেবল খুলুন, "ফর্ম্যাটটার" টাইপ করুন এবং নির্বাচন করুন Formatter Config। তারপরে এর মানটি সম্পাদনা করুন"indent_size" আপনার পছন্দ মতো ।

PS সম্পাদনার পরে ভিজ্যুয়াল স্টুডিও কোডটি পুনরায় আরম্ভ করতে ভুলবেন না :)


6

নীচের সেটিংসটি আমার সমস্যার সমাধান করেছে

  "editor.detectIndentation": false,
  "editor.insertSpaces": false,
  "editor.tabSize": 2,

আপনি যদি 2 টি স্পেস ট্যাবযুক্ত ফাইলের সাথে কাজ করেন তবে এটি কাজ করে!
ডোমিনাক্স

2

আপনি যদি গুগল থেকে এখানে এসেছিলেন কারণ ট্যাব ইন্ডেন্টিংয়ের কারণে নয়, এটি "ট্যাব মুভস ফোকাস" চালু থাকার কারণেও হতে পারে। এটি নীচে ডানদিকে রয়েছে এবং আপনার যদি যথেষ্ট পরিমাণ মনিটর থাকে তবে তা হাইলাইট করা সত্ত্বেও আপনি এটি মিস করতে পারেন।

এখানে চিত্র বর্ণনা লিখুন

এটি থামানোর জন্য সবুজ অঞ্চল বা Ctrl + M ক্লিক করুন। আমি নিশ্চিত নই যে এটি সম্পূর্ণরূপে অক্ষম করা যেতে পারে, তবে আমি জানি না কেন কোনও কোড সম্পাদক ইনডেন্টিংয়ের মতো কিছুতে গোলমাল করতে চায়।


2

আমার অনুরূপ সমস্যা ছিল - আমি যা কিছু করি তা না করে আমি ট্যাবসাইজটি 2 এ আটকে রাখতে পারি না, যদিও এটি আমার ব্যবহারকারীর সেটিংসে রয়েছে - যা এডিটর কনফিগ এক্সটেনশনের কারণে শেষ হয়েছিল । এটি .editorconfigআপনার বর্তমান কার্যকরী ডিরেক্টরিতে কোনও ফাইল সন্ধান করে এবং যদি এটি একটি না পায় (বা এটির সন্ধান করে তবে এটি নির্দিষ্ট করে নাroot=true ), এটি না পাওয়া পর্যন্ত পিতামাতার ডিরেক্টরিগুলি অনুসন্ধান করা চালিয়ে যাবে।

দেখা যাচ্ছে যে .editorconfigআমি আমার নতুন কোড প্রকল্পগুলিতে রেখেছিলাম সেই ডিয়ারের একটি প্যারেন্ট ডিরেক্টরিতে এটি ছিল এবং এটি একটি ট্যাবসাইজ নির্দিষ্ট করে 4. ফাইলটি মুছে ফেলা আমার সমস্যা স্থির করে।


1

আমার মাঝে মাঝে একই সমস্যা হয়। ভিএসকোড হঠাৎ হঠাৎ এটির মনে হারাবে এবং আমি যে ইন্ডেন্টেশন সেটিংটি বলছি তা পুরোপুরি উপেক্ষা করবে, যদিও এটি একই ফাইলটি পুরো দিন ঠিক সূক্ষ্মভাবে ইনডেন্ট করে চলেছে।

আমি editor.tabSize2 এ সেট করেছি (পাশাপাশি)editor.formatOnSave সেট)। যখন ভিএসকোড কোনও ফাইল মিস করে, আমি সম্পাদকের নীচের অংশে ইনডেন্টেশন প্রকার এবং আকার পরিবর্তন করতে বিকল্পগুলি ব্যবহার করি, আশা করি কিছু কাজ করবে, তবে ভিএসকোড প্রকৃতপক্ষে 4 এর ইনডেন্ট আকার ব্যবহার করার জন্য জোর দিয়েছিল।

ঠিক করা? ভিএসকোড পুনরায় চালু করুন। এটি इंडেন্টের স্থিতি দিয়ে কিছু ভুল দেখাচ্ছে (ফিরে আসা উচিত) case আমার জন্য, আমাকে সেটিংস পরিবর্তন করতে হয়েছিল এবং তারপরে এটি পরিবর্তন করতে আসলে সংরক্ষণ করতে হয়েছিল তবে এটি সম্ভবত আমার কারণেeditor.formatOnSave সেটিংসের ।

কেন এটি ঘটে তা আমি বুঝতে পারি নি, তবে আমার জন্য এটি সাধারণত যখন আমি কোনও জেএস ফাইলটিতে নেস্টেড কোনও বিষয় সম্পাদনা করি। এটি হঠাৎ করে অবজেক্টের মধ্যে খুব অদ্ভুত ইনডেন্টেশন করবে, যদিও আমি সেই ফাইলটিতে কিছুক্ষণ কাজ করছি এবং এটি ঠিক সূক্ষ্মভাবে ইনডেন্টিং করছে।


0

ভিএসকোড প্লাগইন ভেটুর; VueJS অ্যাপ্লিকেশনগুলির জন্য ব্যবহৃত আমার জন্য সেটিংসকে ওভাররাইড করে।

আমার পছন্দসই স্পেসের সংখ্যাগুলিতে vetur.format.options.tabSize সেট করা এটি কাজ করে।


0

আমি মনে করি .pyডিফল্টরূপে ফর্ম্যাট করতে vscode অটোপেপ 8 ব্যবহার করছে ।

"পিইপি 8 - পাইথন কোডের জন্য স্টাইল গাইড | পাইথন.অর্গ"

এই ওয়েবসাইট অনুসারে, vscode সর্বদা 4 স্পেস কেন ব্যবহার করে তা নীচে ব্যাখ্যা করা যেতে পারে।

প্রতি ইন্ডেন্টেশন স্তরের 4 টি স্পেস ব্যবহার করুন।


-1

সমস্ত প্লাগইন অক্ষম করুন (তারপরে একে একে সক্ষম করুন এবং যাচাই করুন)

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.