ටැබ් සිට අභ්‍යවකාශ පරිවර්තන සාධකය අභිරුචිකරණය කරන්නේ කෙසේද?


903

විෂුවල් ස්ටුඩියෝ කේතය භාවිතා කරන විට ටැබ්-සිට-අභ්‍යවකාශ පරිවර්තන සාධකය රිසිකරණය කරන්නේ කෙසේද?

උදාහරණයක් ලෙස, මේ වන විට HTML හි එය එක් මුද්‍රණ යන්ත්‍රයකට අවකාශ දෙකක් නිපදවන බව පෙනේ TAB, නමුත් TypeScript හි එය 4 ක් නිපදවයි.

Answers:


1428

පෙරනිමියෙන්, දෘශ්‍ය ස්ටුඩියෝ කේතය ඔබ විවෘත කරන ගොනුව මත පදනම්ව ඔබේ ඉන්ඩෙන්ටේෂන් විකල්ප අනුමාන කිරීමට උත්සාහ කරයි.

ඔබට අනුමාන අනුමාන කිරීම අක්‍රිය කළ හැකිය "editor.detectIndentation": false.

ඔබ මෙම පහසුවෙන් සඳහා මෙම සැකසීම් තුනක් හරහා රිසිකරණය කළ හැකි වින්ඩෝස් මෙනුවේ ගොනුවPreferencesපරිශීලක සැකසුම් සඳහා මැක් මෙනුවේ සංග්රහයේPreferencesසැකසුම් හෝ ⌘,:

// The number of spaces a tab is equal to. This setting is overridden
// based on the file contents when `editor.detectIndentation` is true.
"editor.tabSize": 4,

// Insert spaces when pressing Tab. This setting is overriden
// based on the file contents when `editor.detectIndentation` is true.
"editor.insertSpaces": true,

// When opening a file, `editor.tabSize` and `editor.insertSpaces`
// will be detected based on the file contents. Set to false to keep
// the values you've explicitly set, above.
"editor.detectIndentation": false

1
හේයි ගුස්, අනුමාන කිරීම වැරදියි ගොනුවකට මා යොමු කිරීමට ඔබ කැමතිද? කරුණාකර ඔබ මෙම සැකසුම් දෙක (tabSize & insertSpaces) වින්‍යාස කර ඇති ආකාරය සහ ඔබ ලබා ගැනීමට අපේක්ෂා කරන දේ බෙදා ගන්න. ස්තූතියි! :)
ඇලෙක්ස් ඩීමා

5
මම සැකසුම් දෙකම "ස්වයංක්‍රීය" ලෙස වින්‍යාස කර ඇති අතර හැසිරීම මා බලාපොරොත්තු වන පරිදි නොවේ (මම එය "වැරදි" ලෙස හැඳින්වීමට තරම් දුර නොයනු ඇත). මගේ සමුළුවට සහය දැක්වීම සඳහා වෙනස් කළ යුතු ගොනුව කුමක්දැයි මම නොදනිමි, නමුත් ඒ සඳහා පරිශීලක ටිකට් පතක් විවෘත කළෙමි , # 30057721
Guss

4
නව හිස් ගොනු සඳහා පෙරනිමිය සැකසීමට විකල්පයක් ද තිබේද? එම තත්වය තුළ අනුමාන කිරීමට බොහෝ දේ නොමැති අතර මම සිතන්නේ VSCode අවකාශය භාවිතා කිරීම පෙරනිමියෙන් (මම කැමති නැති) ...
Stijn de Witt

Fwiw, සේවා ස්ථාන සැකසීමේ විකල්පයක් ද ඇත, එවිට පරිශීලක සැකසුම් අභිබවා යන ව්‍යාපෘතියකින් ඔබට වෙනස් හැසිරීමක් සැකසිය හැකිය. 2 ¢
රෆින්

2
ස්තූතියි රෆින්. tabSizeඑක් භාෂාවකට වෙනස් කිරීමට ක්‍රමයක් තිබේද? උදා: එකම වැඩබිමක විවිධ භාෂා සහිත ගොනු ගොනු සංස්කරණය කිරීමේදී (උදා: රූබි, ජාවාස්ක්‍රිප්ට්, සීඑස්එස්, ආදිය) - රූබි 2අවකාශයක් වනු ඇත , නමුත් CSS වනුයේ 4... සාමාන්‍යයෙන්.
ජේකබ් බාර්නාඩ්

721

මම 1.21 අනුවාදය ධාවනය කරමි, නමුත් මෙය පෙර සංස්කරණ සඳහාද අදාළ වනු ඇතැයි මම සිතමි.

තිරයේ පහළ දකුණු පස දෙස බලන්න. ඔබ පවසන දෙයක් Spacesහෝ දැකිය යුතුය Tab-Size.

පතල අවකාශ පෙන්වයි,

රූප විස්තරය මෙහි ඇතුළත් කරන්න

  1. අවකාශය මත ක්ලික් කරන්න (හෝ ටැබ් ප්‍රමාණය )
  2. තෝරා ස්ථාන භාවිතා කරමින් ඔබ්බවන්න හෝ ටැබ් භාවිතා ඔබ්බවන්න
  3. ඔබ කැමති අවකාශ හෝ ටැබ් ප්‍රමාණය තෝරන්න.

මෙය ක්‍රියාත්මක වන්නේ ව්‍යාපෘතියකට නොව ලේඛනයකට පමණි. ඔබට එය ව්‍යාපෘති පුරා යෙදීමට අවශ්‍ය නම්, ඔබ "editor.detectIndentation": falseඔබේ පරිශීලක සැකසුම් වලටද එකතු කළ යුතුය.


1
# 3 සිදු කරන්නේ කෙසේද? # 2 තේරීමෙන් පසු, "අවකාශයේ ප්‍රමාණය තෝරන්න ... ඔබ කැමති" ක්‍රමයක් ඇති බවක් නොපෙනේ. ස්තූතියි.
ක්‍රිස්

207

හොඳයි, ඔබ සංවර්ධක ක්‍රමයට කැමති නම්, දෘශ්‍ය ස්ටුඩියෝ කේතය මඟින් විවිධ ගොනු වර්ග නියම කිරීමට ඉඩ ලබා දේ tabSize. මගේ settings.jsonපෙරනිමි අවකාශ හතරක් සහ ජාවාස්ක්‍රිප්ට් / JSON අවකාශ දෙකක් සහිත උදාහරණය මෙන්න :

{
  // I want my default to be 4, but JavaScript/JSON to be 2
  "editor.tabSize": 4,
  "[javascript]": {
    "editor.tabSize": 2
  },
  "[json]": {
    "editor.tabSize": 2
  },

  // This one forces the tab to be **space**
  "editor.insertSpaces": true
}

PS: හොඳයි, ඔබ මෙම ගොනුව විවෘත කරන්නේ කෙසේදැයි නොදන්නේ නම් (විශේෂයෙන් දෘශ්‍ය ස්ටුඩියෝ කේතයේ නව අනුවාදයක), ඔබට:

  1. වම්-පහළ ගියර්
  2. සැකසීම් → ඉහළ දකුණ විවෘත සැකසුම්

 

රූප විස්තරය මෙහි ඇතුළත් කරන්න


108

පෙරනිමියෙන්, දෘශ්‍ය ස්ටුඩියෝ කේතය වත්මන් විවෘත ගොනුවේ ඉන්ඩෙන්ටේෂන් ස්වයංක්‍රීයව හඳුනා ගනී. ඔබට මෙම අංගය ක්‍රියා විරහිත කර සියලු ඉන්ඩෙන්ටේෂන් කිරීමට අවශ්‍ය නම්, නිදසුනක් ලෙස, අවකාශ දෙකක්, ඔබ පහත සඳහන් දෑ ඔබගේ පරිශීලක සැකසුම් හෝ වැඩපොළ සැකසුම් තුළ කරනු ඇත.

{
    "editor.tabSize": 2,

    "editor.detectIndentation": false
}

61

VS කේත දිගුව සඳහා EditorConfig සහ එහි EditorConfig සමඟ ගොනු වර්ගය අනුව අපට ටැබ් ප්‍රමාණය පාලනය කළ හැකිය . එවිට අපට එක් එක් ගොනු වර්ගයට + + විශේෂිත කළ හැකිය .AltShiftF

ස්ථාපනය

CTRL+ සමඟ VS කේත විධාන පත්‍රිකාව විවෘත කර Pමෙය අලවන්න:

ext install EditorConfig

උදාහරණ වින්‍යාසය

.editorconfig

[*]
indent_style = space

[*.{js,ts,json}]
indent_size = 2

[*.java]
indent_size = 4

[*.go]
indent_style = tab

settings.json

EditorConfig සංස්කාරකය සඳහා වින්‍යාස කරන ඕනෑම සැකසුම්. Json අභිබවා යයි. වෙනස් කිරීමට අවශ්ය නැත editor.detectIndentation.


extඔබ මේ ගැන කතා කරන්නේ කුමක් ද (කරුණාකර ඔබේ පිළිතුර සංස්කරණය කිරීමෙන් ප්‍රතිචාර දක්වන්න, අදහස් දැක්වීම්වල නොව (සුදුසු පරිදි)? සමහර Node.js දෙයක්ද? කුමන වේදිකාවද?
පීටර් මෝර්ටෙන්සන්

EtPeterMortensen ඔබට එය කළ හැකි CTRL+Pඅතර ext install EditorConfigඑය Vscode සඳහා විශේෂිත වූ කෙටිමං ස්ථාපන විධානයක් අලවන්න.
Phani Rithvij

12

ඔබ විෂුවල් ස්ටුඩියෝ කේතයේ ලස්සන දිගුව භාවිතා කරන්නේ නම්, මෙය settings.json ගොනුවට එක් කිරීමට උත්සාහ කරන්න:

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

"prettier.tabWidth": 4,
"prettier.useTabs": true  // This made it finally work for me

11

දී විෂුවල් ස්ටුඩියෝ සංග්රහයේ අනුවාදය 1.31.1 හෝ පසුව (මම හිතන්නේ): මෙන් sed ඇලෙක්ස් Dima , ඔබට මෙම පහසුවෙන් මෙම සැකසුම් හරහා සඳහා රිසිකරණය කළ හැකි

  • වින්ඩෝස් මෙනුව ගොනුවමනාපයන්පරිශීලක සැකසුම් හෝ කෙටි යතුරු Ctrl+ Shift+ භාවිතා කරන්නP
  • මෙනුවේ මැක් කේතයමනාපයන්සැකසුම් හෝ ,

රූප විස්තරය මෙහි ඇතුළත් කරන්න

රූප විස්තරය මෙහි ඇතුළත් කරන්න


7

ඔබේ සංස්කාරක වින්‍යාසය ඔබේ පරිශීලක හෝ වැඩබිම් සැකසුම් වින්‍යාසය සමඟ ගැටෙන්නේ නැති බව තහවුරු කර ගැනීමට ඔබට අවශ්‍යය, මන්දයත් මගේ සංස්කාරක වින්‍යාසය එම වෙනස්කම් අහෝසි කරන විට සැකසුම් ගොනු සැකසුම් අදාළ නොවන බව සිතමින් මට තරහක් ඇති විය.


7

lonefy.vscode-js-css-html-formatterදොස් පැවරීමයි. එය අක්‍රීය කර ස්ථාපනය කරන්න HookyQR.beautify.

දැන් සුරකින්න ඔබගේ ටැබ් පරිවර්තනය නොවේ.



4

ටයිප්ස්ක්‍රිප්ට් භාවිතා කරන විට, මෙවලම් තීරුවේ කුමක් පැවසුවද පෙරනිමි ටැබ් පළල දෙකකි. එය වෙනස් කිරීම සඳහා ඔබේ පරිශීලක සැකසුම් තුළ "prettier.tabWidth" සැකසිය යුතුය.

Ctrl+ P, ටයිප් → පරිශීලක සැකසුම්, එකතු කරන්න:

"prettier.tabWidth": 4

4

මෙම ලිපියේ පිළිගත් පිළිතුර ක්‍රියාත්මක නොවන්නේ නම්, මෙය උත්සාහ කර බලන්න:

මට තිබුණු විෂුවල් ස්ටුඩියෝ කේතය EditorConfig මගේ කර්තෘ ස්ථාපනය, එය හිස් තැන් භාවිතා එබුම ගොනු සකසා තිබූ මගේ පරිශීලක සැකසුම් ඉක්මවා යමින් සිටියේය. මම සංස්කාරක පටිති අතර මාරු වන සෑම අවස්ථාවකම, මගේ ලිපිගොනුව ස්වයංක්‍රීයව ටැබ් සමඟ මුද්‍රණය කරනු ඇත.

මම මෙම දිගුව අස්ථාපනය කළ විගසම, සංස්කාරක ටැබ් මාරු කිරීම අතර ඉන්ඩෙන්ටේෂන් තවදුරටත් වෙනස් නොවන අතර, මම ලිපිගොනු මාරු කරන සෑම අවස්ථාවකම ටැබ් අතින් අවකාශයට පරිවර්තනය කිරීමට වඩා මට සුවපහසු ලෙස ක්‍රියා කළ හැකිය - එය වේදනාකාරී ය.


4

අපගේ ආදරණීය ප්‍රජා සාමාජිකයින් විසින් දැනටමත් හොඳ පිළිතුරු රාශියක් ලබා දී ඇත. මට ඇත්ත වශයෙන්ම C # කේත ටැබ්සයිස් එක් කිරීමට අවශ්‍ය වූ අතර මෙම ත්‍රෙඩ් එක සොයා ගත්තේය. මා සොයාගත් විසඳුම් බොහොමයක් ඇති අතර නිල වීඑස් කෝඩ් ලියකියවිලි නියමයි. මට මගේ C # සැකසුම බෙදා ගැනීමට අවශ්‍යයි:

"[csharp]": {
    "editor.insertSpaces": true,
    "editor.tabSize": 4
},

ඉහත කේතය ඔබේ settings.jsonගොනුවට පිටපත් කර අලවන්න . ස්තූතියි


1
ඔව්, ඔබට නිශ්චිත භාෂාවක් සඳහා වෙනත් ආකෘතියක් සැකසීමට අවශ්‍ය නම් යා යුතු මාර්ගය මෙයයි. ටැබ් පළල = 2 සමඟ ටැබ් භාවිතා කිරීමට මම කැමතියි, නමුත් autopep8 එයට වෛර කරයි.
අභිෂේක් කසිරෙඩි

2

මෙනු ගොනුවමනාපයන්සැකසුම්

පරිශීලක සැකසුම් වලට එක් කරන්න:

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

ඔබ දැනටමත් විවෘත කර ඇත්නම් ඔබේ ලේඛනය දකුණු ක්ලික් කර ඔබගේ පවතින ලේඛනය මෙම නව සැකසුම් අනුගමනය කිරීමට ආකෘති ලේඛනය ක්ලික් කරන්න.


2

from 2015 සිට ඇලෙක්ස්-ඩිමාගේ විසඳුම සියලු ලිපිගොනු සඳහා ටැබ් ප්‍රමාණයන් සහ අවකාශයන් වෙනස් කරනු ඇති අතර 2016 2016 සිට ට්‍රිකීගේ විසඳුම පෙනෙන්නේ වත්මන් ගොනුවේ සැකසුම් පමණක් වෙනස් කිරීමෙනි.

2017 වන විට, එක් භාෂා පදනමක් මත ක්‍රියාත්මක වන තවත් විසඳුමක් මට හමු විය. දෘශ්‍ය ස්ටුඩියෝ කේතය එලික්සර් සඳහා නිසි ටැබ් ප්‍රමාණ හෝ අවකාශ සැකසුම් භාවිතා නොකිරීම නිසා සියලුම එලික්සර් ලිපිගොනු සඳහා සැකසුම් වෙනස් කළ හැකි බව මට පෙනී ගියේය.

මම තත්ව තීරුවේ ඇති භාෂාව මත ක්ලික් කළෙමි (මගේ නඩුවේ "එලෙක්සර්"), "එලික්සර් 'භාෂා පදනම් කරගත් සැකසුම් වින්‍යාස කරන්න ..." තෝරාගෙන, එලික්සර් විශේෂිත භාෂා සැකසුම් සංස්කරණය කළේය. මම වම් පැත්තේ පෙරනිමි සැකසුම් වලින් "editor.tabSize" සහ "editor.insertSpaces" සැකසුම් පිටපත් කළෙමි (ඒවා පෙන්වීම ගැන මට සතුටුයි) ඉන්පසු ඒවා දකුණේ වෙනස් කර ඇත.

එය ඉතා හොඳින් ක්‍රියාත්මක වූ අතර දැන් සියලුම එලික්සර් භාෂා ලිපිගොනු නිසි ටැබ් ප්‍රමාණය සහ අවකාශ සැකසුම් භාවිතා කරයි.


1

පෙර පිළිතුරු මෙන් සැකසුම් සංස්කරණ රාශියක් කිරීමට මට සිදු විය, එබැවින් බොහෝ වෙනස් කිරීම් වලින් පසුව එය ක්‍රියාත්මක වූයේ කුමක් දැයි මම නොදනිමි.

මම වසා මගේ IDE openen තෙක් කිසිවක් වැඩ, නමුත් මම එහෙම පසුගිය දේවල් තුනක් ආබාධිත විය lonefy.vscode-js-css-html-formatter, "html.format.enable": true,හා විෂුවල් ස්ටුඩියෝ නැවත අරඹන්න.

{
    "editor.suggestSelection": "first",
    "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
    "workbench.colorTheme": "Default Light+",
    "[html]": {
        "editor.defaultFormatter": "vscode.html-language-features",
        "editor.tabSize": 2,
        "editor.detectIndentation": false,
        "editor.insertSpaces": true
    },
    "typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": true,
    "editor.tabSize": 2,
    "typescript.format.insertSpaceAfterConstructor": true,
    "files.autoSave": "afterDelay",
    "html.format.indentHandlebars": true,
    "html.format.indentInnerHtml": true,
    "html.format.enable": true,
    "editor.detectIndentation": false,
    "editor.insertSpaces": true,
}

0

මෙය කෝණික 2 සඳහා වන අතර, සීඑල්අයි විසින් වෙනස් ආකාරයකින් ආකෘතිකරණය කිරීමට කැමති ගොනු ජනනය කරන්නේ නම්, ජනනය කරන දේ වෙනස් කිරීමට ඔබට මෙම ගොනු සංස්කරණය කළ හැකිය:

npm_modules/@angular/cli/blueprints/component/files/__path__/*

එන්පීඑම් යාවත්කාලීනයක් ලෙස විශාල ලෙස නිර්දේශ නොකිරීම ඔබගේ කාර්යය මකා දමනු ඇත, නමුත් එය මට බොහෝ කාලයක් ඉතිරි කර ඇත.


0

මම සංස්කාරකය .tabSize4 ට වෙනස් කිරීමට උත්සාහ කළෙමි , නමුත් .editorConfigමා විසින් නියම කර ඇති ඕනෑම සැකසුම් අභිබවා යයි, එබැවින් පරිශීලක සැකසුම් වල කිසිදු වින්‍යාසයක් වෙනස් කිරීමට අවශ්‍ය නොවේ. ඔබට අවශ්‍ය වන්නේ .editorConfig ගොනුව සංස්කරණය කිරීමයි:

set indent_size = 4

-1

පරිශීලක 3550138 නිවැරදි ය. lonefy.vscode-js-css-html-formatterවෙනත් පිළිතුරු වල සඳහන් සියලු සැකසුම් අභිබවා යයි. කෙසේ වෙතත්, එය වින්‍යාසගත කළ හැකි බැවින් එය අක්‍රිය කිරීමට හෝ අස්ථාපනය කිරීමට ඔබට අවශ්‍ය නැත.

දිගු පැති තීරුව විවෘත කර මෙම දිගුව මත ක්ලික් කිරීමෙන් සම්පූර්ණ උපදෙස් සොයාගත හැකි අතර එය සංස්කාරක සේවා ස්ථානයේ වින්‍යාස උපදෙස් පෙන්වනු ඇත. අවම වශයෙන් එය දෘශ්‍ය ස්ටුඩියෝ කේත අනුවාදය 1.14.1 හි මට කරයි.

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.