Nie byłem w stanie tego rozgryźć. Atom wydaje się używać spacji jako domyślnego trybu wcięcia. Wolę jednak mieć zakładki. Sublime Text ma wbudowaną funkcję przełączania i konwertowania wcięć.
Ktoś dowiedział się, jak zmienić tryb wcięcia Atom?
Niektóre zrzuty ekranu z Sublime Text:
indentation
atom-editor
Jon Koops
źródło
źródło
Odpowiedzi:
Zobacz Miękkie zakładki i Długość zakładki w Ustawienia> Ustawienia edytora .
Aby szybko przełączać tryby wcięcia, możesz użyć Ctrl-Shift-P i wyszukać Edytor: Przełącz miękkie tabulatory .
źródło
Ctrl-Shift-P
Editor: Toggle Soft Tabs
Przejdź do Plik -> Ustawienia
Istnieją tutaj 3 różne opcje.
Przeprowadziłem testy i doszedłem do tych wniosków na temat tego, co każdy z nich robi.
Miękkie tabulatory - włączenie tej opcji oznacza, że domyślnie będzie używać spacji (tj. Dla nowych plików).
Długość tabulatora - jak szeroki jest wyświetlany znak tabulatora lub ile spacji jest wstawianych dla tabulatora, jeśli włączone są tabulatory miękkie.
Typ zakładki - określa tryb wcięcia, który ma być używany dla istniejących plików. Jeśli ustawisz na auto, użyje istniejącego wcięcia (tabulatory lub spacje). Ustawienie go na miękki lub twardy spowoduje wymuszenie spacji lub tabulatorów niezależnie od istniejącego wcięcia. Najlepiej pozostawić to na auto.
Uwaga: Soft = spacje, hard = tab
źródło
Dodaj to do swojego
~/.atom/config.cson
źródło
OS X:
Idź do
Atom -> prefrences
lubCMD + ,
Przewiń w dół i wybierz „Długość tabulatora” , który wolisz.
źródło
Możesz spróbować przejść do „Atom> Preferencje> Edytor” i ustawić Długość tabulacji na 4.
To jest dla Mac. W przypadku systemu Windows musisz znaleźć odpowiednie menu.
źródło
Dodanie tutaj odpowiedzi @Manbroski , która zadziałała dla mnie:
próbować
Ctrl-Shift-P
Editor: Toggle Soft Tabs
źródło
Późnym przyjęciem, ale czystym sposobem na zrobienie tego dla każdego projektu, jest dodanie pliku .editorconfig do katalogu głównego projektu. Oszczędza Ci konieczności zmiany ustawień Atomu podczas pracy nad kilkoma projektami jednocześnie.
To jest przykład bardzo podstawowej konfiguracji, której obecnie używam. Działa dla Atom, ST itp.
http://editorconfig.org/
źródło
Jest to wbudowane w rdzeń: Zobacz
Settings ⇒ Tab Type
i wybierzauto
:Możesz także zajrzeć do pakietu Auto Detect Indentation . Z dokumentów:
źródło
search-and-replace
użyłbym palety poleceńconvert spaces to tabs
(lub czegoś takiego). Myślę, że to działało dla mnie w przeszłości.Właśnie miałem ten sam problem i żadna z powyższych sugestii nie zadziałała. W końcu spróbowałem odznaczyć „Atomowe miękkie karty” w menu Ustawienia edytora, które działało.
źródło
\t
w aktach ...Jeśli używasz Babel, możesz również chcieć zaktualizować swój pakiet „Language Babel”. Dla mnie, mimo że ustawiłem Długość tabulacji na 2 w ustawieniach głównego edytora, to samo ustawienie w konfiguracji Language Babel zastępowało ją 4.
Atom -> Preferences -> Packages -> (Search for Babel) -> Grammar -> Tab Length
Upewnij się, że masz odpowiednią gramatykę, jest tam „Gramatyka JavaScript Babel ES6”, „Gramatyka języka-babel-rozszerzenie” oraz „Wyrażenie regularne”. Prawdopodobnie chcesz zaktualizować je wszystkie, aby były spójne.
źródło
Kontrola kart daje niezłą kontrolę w sposób podobny do opisanego w twoim pytaniu.
Również dla programistów JavaScript ładna jest długość tabulatora ESLint do używania konfiguracji ESLint.
Lub jeśli używasz
.editorconfig
do definiowania reguł wcięcia specyficznych dla projektu, istnieje EditorConfigźródło
Jeśli globalne ustawienia wcięcia tabulacji / spacji nie odpowiadają już Twoim potrzebom (np. Pracujesz ze starszymi kodami bazowymi o różnych formatach wcięcia i musisz szybko przełączać się między nimi, a automatyczne wykrywanie nie działa), możesz wypróbować tabulator -kontrola wtyczki, która powiela funkcjonalność menu na twoim zrzucie ekranu.
źródło
Kiedy automatyczne wykrywanie atomu pomogło beznadziejnie pomylić i odmówiło mi wpisania dosłownego znaku Tab, w końcu znalazłem rozszerzenie „Force-Tab” - co dało mi kontrolę. Chciałem zachować klawisz shift dla tabulacji, więc ustaw ctrl-tab, aby wstawić twardą kartę. W mojej mapie klawiszy dodałem:
'atom-text-editor': 'ctrl-tab': 'force-tab:insert-actual-tab'
źródło
Jeśli używasz wersji 1.21.1:
Teraz wystarczy zamknąć aktywny panel kart i gotowe.
źródło
Wszystkie najpopularniejsze odpowiedzi tutaj są świetnymi odpowiedziami i będą włączać spacje dla kart, ale we wszystkich brakuje jednej rzeczy. Jak zastosować spacje zamiast tabulatorów do istniejącego kodu.
Aby to zrobić, po prostu wybierz cały kod, który chcesz sformatować, a następnie przejdź do Edycja-> Linie-> Auto wcięcie, a wszystko naprawi.
Alternatywnie możesz po prostu wybrać cały kod, który chcesz sformatować, a następnie użyć Ctrl Shift P i wyszukać Auto wcięcie. Po prostu kliknij go w wynikach wyszukiwania, a wszystko naprawi.
źródło
Zmiana konfiguracji specyficznej dla języka
Zmieniłem domyślne ustawienia kart i nadal nie miało to wpływu podczas edycji moich plików, które były plikami Python. Nie zmieniło się również, gdy zmodyfikowałem ustawienie „*” w ~ / .atom / config.cson. Nie mam dobrego wytłumaczenia dla żadnego z nich.
Jednak gdy dodałem następujące elementy do pliku config.cson, mogłem zmienić tabulację w moich plikach Python na 2 spacje:
Dzięki temu zasobowi dla rozwiązania: Klawisz Tab nie szanuje długości tabulatora
źródło