Як змінити режим відступу в Atom?


195

Я ще не зміг цього розібратися. Здається, Atom використовує пробіли як режим відступів за замовчуванням. Я вважаю за краще мати вкладки. Sublime Text має вбудовану функціональність для перемикання та перетворення відступів.

Хтось дізнався, як змінити режим відступу Atom?

Деякі скріншоти з піднесеного тексту:

Відкрите меню з піднесенням піднесеного тексту Меню піднесеного тексту з відступом


4
для перетворення відступів можна виконати пошук та заміну звичайного виразу та використовувати \ t для пошуку чи вставки вкладок.
mer10z_tech

1
чи є простий спосіб змінити поточний код на 4 з 2 режиму відступу?
Чарлі Паркер

1
Я використовую плагін автоматичного виявлення-відступу, який не тільки автоматично налаштує клавішу вкладки, щоб зробити все, що вже є у файлі, але відобразить режим відступу в лівій нижній частині.
while1fork

@CharlieParker Ви перейдете до налаштувань, натисніть на вкладку редактора і встановіть відступ на 4.
Крейг

Примітка: Atom за замовчуванням показує та обходить пробіли, як вкладки! Дивіться відповідь tparker тут: stackoverflow.com/a/46333677/1599699
Андрій

Відповіді:


219

Див. " М'які вкладки" та " Довжина вкладок" у розділі Налаштування> Налаштування редактора .

Для швидкого перемикання режимів відступу можна використовувати Ctrl-Shift-P та шукати редактор: перемикання м'яких вкладок .


1
Як сказав @zamber, якщо автоматичне відступ сторінки і вона не підбирає ваші налаштування відступу, відкрийте її та повторіть спробу.
Victor S

58
Як бічна примітка - м'які вкладки - це символи пробілу, як вкладки, жорсткі - вкладки. Також якщо налаштування не повторилися, спробуйтеCtrl-Shift-P Editor: Toggle Soft Tabs
ivan-k

2
Я хотів би додати, що НІКОЛІ рішень у цій темі не працювало на мене, доки я не перейшов на моновідступний шрифт. Після заміни на монорозміщений шрифт я спробував кожен метод, і всі вони справді працюють. Сподіваюсь, це допоможе комусь у майбутньому ...
Рідний кодер,

чи є простий спосіб змінити поточний код на 4 з 2 режиму відступу?
Чарлі Паркер

Я не можу бачити жодної користі, щоб НЕ використовувати одношвидкий шрифт при кодуванні, мушу визнати.
Френк Бейлі

65

Перейдіть у меню Файл -> Налаштування

Тут є 3 різні варіанти.

  1. М'які вкладки
  2. Довжина вкладки
  3. Тип вкладки

Я зробив кілька тестувань і прийшов до цих висновків щодо того, що кожен робить.

М'які вкладки - якщо це ввімкнено, це використовуватиме пробіли за замовчуванням (тобто для нових файлів).

Довжина вкладки - наскільки широко відображається символ вкладки або скільки пробілів вставлено для вкладки, якщо ввімкнено м'які вкладки.

Тип вкладки - це визначає режим відступу для використання для існуючих файлів. Якщо встановити його для автоматичного використання, він буде використовувати наявний відступ (вкладки або пробіли). Якщо встановити його на м'який або жорсткий, воно змусить пробіли або вкладки незалежно від наявних відступів. Найкраще залишити це на авто.

Примітка: Soft = пробіли, hard = tab


Ви також можете говорити про Atomic Soft Tabs ?
neeh

3
чи є простий спосіб змінити поточний код на 4 з 2 режиму відступу?
Чарлі Паркер

1
Дякуємо, що допомогли з’ясувати деякі з питань використання lingo Atom для розуміння цієї проблеми.
MiFiHiBye


15

ОС X:

  1. Перейти до Atom -> prefrencesабоCMD + ,

  2. Прокрутіть униз і виберіть «Довжина вкладки», яку ви бажаєте.

введіть тут опис зображення


11

Ви можете спробувати перейти до "Atom> Налаштування> Редактор" і встановити довжину Tab на 4.

введіть тут опис зображення

Це для mac. Для вікон вам доведеться знайти відповідне меню.



6

Пізно до партії, але чіткий спосіб зробити це на основі проекту - додати файл .editorconfig до кореня проекту. Врятує вас від необхідності змінювати налаштування Atom, коли ви працюєте над кількома проектами одночасно.

Це зразок дуже базової установки, яку я зараз використовую. Працює для Atom, ST тощо ...

http://editorconfig.org/

# Automatically add new line to end of all files on save.
[*]
insert_final_newline = true

# 2 space indentation for SASS/CSS
[*.{scss,sass,css}]
indent_style = space
indent_size = 2

# Set all JS to tab => space*2
[js/**.js]
indent_style = space
indent_size = 2

Я майже повністю відкинув Атома, поки не побачив цього. Налаштування config.cson, здається, нічого не роблять для існуючих файлів. Дякую!
вбивство

3

Це вбудовано в ядро: Дивіться Settings ⇒ Tab Typeта вибирайте auto:

Якщо встановлено значення "auto", редактор автоматично визначає тип вкладки на основі вмісту буфера (він використовує перше провідне пробіл у рядку без коментарів) або використовує значення налаштування конфігурації Soft Tabs, якщо авто- виявлення не вдається.

Ви також можете поглянути на пакет автоматичного виявлення відступу . З документів:

Автоматично виявляти відступи відкритих файлів. Він переглядає кожен відкритий файл і встановлює конкретні параметри для вкладки (жорсткі / м'які вкладки, довжина вкладки) на основі вмісту файлу, а не завжди використовує параметри за замовчуванням редактора.

Можливо, у вас є атом, налаштований на використання 4 пробілів для вкладок, але відкрийте проект рейки, який за замовчуванням має 2 пробіли. Без цього пакету вам доведеться глобально змінити налаштування табуляції або ризикувати виникненням невідповідних інтервалів між вашими файлами.


Якщо ви використовуєте "auto", і це неправильно (у моєму випадку вирішено використовувати пробіли, коли я хочу вкладки, у цьому конкретному файлі), як ви (за допомогою швидкого меню чи натискання клавіш, не заглиблюючись у налаштування) змінили свою думку? Я не думаю, що автоматичне виявлення не вдалося, воно просто помилилося. Він не вводить жорстку вкладку для мене. Я робив пошук і заміну скрізь, але все ж клавіша вкладки вставляє 4 пробіли.
Ед Рандалл

Я б не використав, search-and-replaceя б використав палітру команд convert spaces to tabs(або щось подібне). Я думаю, що це працювало для мене в минулому.
jcuenod

3

У мене просто була така ж проблема, і жодна з вищезгаданих пропозицій не спрацювала. Нарешті я спробував зняти прапорець "Атомні м'які вкладки" в меню "Налаштування редактора", яке спрацювало.


О! Ось що це означає! Мені було цікаво, чому мої клавіші зі стрілками пропускають пробіли, коли \tу файлі не було жодного …
Ендрю

2

Якщо ви використовуєте Babel, ви можете також обов’язково оновити пакет "Мова Babel". Для мене, незважаючи на те, що в основних редакторах основного редактора було встановлено значення "2" вкладки, однаковий параметр у конфігурації мови Babel змінив її на 4.

Atom -> Preferences -> Packages -> (Search for Babel) -> Grammar -> Tab Length

Переконайтесь у відповідній граматиці. Там є "Граматика Javascript Jabel ES6", "Граматика розширення мови", а також "Регулярне вираження". Ви, мабуть, хочете, щоб оновлення було послідовно.


2

Управління вкладками дає хороший контроль аналогічно описаному у вашому запитанні.

Також приємним для розробників JavaScript є довжина вкладки ESLint для використання ESLint config.

Або якщо ви використовуєте .editorconfigдля визначення правил відступу конкретні для проекту, є EditorConfig


1

Якщо параметри відступів глобальних вкладок / пробілів більше не відповідають вашим потребам (IE, ви виявите, що працюєте зі застарілими базами кодів із різноманітними форматами відступу, і вам потрібно швидко перемикатися між ними, і автоматичне виявлення не працює), ви можете спробувати вкладку -контроль плагіна, який на зразок дублює функціональність меню на екрані екрана.


1

Коли автоматичне виявлення відступу Atom стало безнадійно неправильним і відмовилося дозволити мені ввести буквальний символ Tab, я врешті-решт знайшов розширення "Force-Tab" - це дало мені управління назад. Я хотів утримати shift-tab для виходу з ладу, тому встановив ctrl-tab, щоб вставити жорстку вкладку. У своїй клавіші я додав:

'atom-text-editor': 'ctrl-tab': 'force-tab:insert-actual-tab'


1

Якщо ви використовуєте версію 1.21.1:

  1. Клацніть на Перегляд пакунків / налаштувань / Відкрити
  2. Виберіть "Редактор" на панелі ліворуч
  3. Прокрутіть вниз, поки не з’явиться "Довжина вкладки"
  4. Відредагуйте значення. Мені подобається встановити його на 4.

Тепер просто закрийте активну панель вкладок і ви закінчите.


0

Усі найпопулярніші відповіді тут - це чудові відповіді, і вони включатимуть пробіли для вкладок, але в них пропущено одне. Як застосувати пробіли замість вкладок до існуючого коду.

Для цього просто виберіть увесь код, який ви хочете відформатувати, а потім перейдіть до меню Правка-> Лінії-> Автовідступ і він зафіксує все вибране.

Крім того, ви можете просто вибрати весь код, який ви хочете відформатувати, а потім використати Ctrl Shift P та шукати автоматичний відступ. Просто натисніть на нього в результатах пошуку, і він зафіксує все вибране.


0

Зміна конфігурації мови

Я змінив налаштування вкладки за замовчуванням, і це все ще не вплинуло під час редагування моїх файлів, які були файлами Python. Він також не змінився, коли я змінив налаштування "*" в ~ / .atom / config.cson. Я не маю хорошого пояснення ні для одного з них.

Однак, коли я додав наступне до свого config.cson, мені вдалося змінити вкладку в моїх файлах Python на 2 пробіли:

'.source.python':
  editor:
    tabLength: 2

Завдяки цьому ресурсу для рішення: Клавіша Tab не дотримується довжини вкладки

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.