Comment changer le mode d'indentation dans Atom?
Je n'ai pas encore été capable de comprendre cela. Atom semble utiliser des espaces comme mode d'indentation par défaut. Je préfère avoir des onglets à la place. Sublime Text a construit dans la fonctionnalité de commutation et de conversion indentation.
Quelqu'un a découvert comment changer le mode d'indentation D'Atom?
Quelques captures d'écran de Sublime Text:
14 réponses
Voir onglets souples et Longueur des onglets sous Paramètres > Paramètres de L'éditeur.
Pour basculer rapidement les modes d'indentation, vous pouvez utiliser Ctrl-Shift-P et rechercher Editor: basculer les onglets souples.
Allez dans Fichier - > Paramètres
Il y a 3 options différentes ici.
- Onglets Souples
- Longueur De Tabulation
- Type D'Onglet
J'ai fait quelques tests et je suis arrivé à ces conclusions sur ce que chacun fait.
Soft Tabs - activer cela signifie qu'il utilisera des espaces par défaut (c'est-à-dire pour les nouveaux fichiers).
Longueur de tabulation - La largeur du caractère de tabulation s'affiche ou le nombre d'espaces insérés pour un tabulation si permettre.
Type de tabulation - détermine le mode d'indentation à utiliser pour les fichiers existants. Si vous le définissez sur auto, il utilisera l'indentation existante (onglets ou espaces). Si vous le définissez sur soft ou hard, il forcera les espaces ou les onglets indépendamment de l'indentation existante. Mieux vaut laisser cela sur auto.
Remarque: Soft = espaces, dur = tab
Ajouter à votre ~/.atom/config.cson
editor:
tabLength: 4
OS X:
Aller à
Atom -> prefrences
ouCMD + ,
Faites Défiler vers le bas et sélectionnez Onglet"Longueur" que vous préférez.
Ajouter @ Manbroski réponse ici qui a fonctionné pour moi:
Essayer Ctrl-Shift-P
Editor: Toggle Soft Tabs
Vous pouvez essayer d'aller dans "Atom > Preferences > Editor" et définir la longueur de L'onglet sur 4.
Ceci est pour mac. Pour windows, vous devrez trouver le menu approprié.
En retard à la partie, mais une façon propre de le faire sur une base par projet, est d'ajouter un .editorconfig fichier à la racine du projet. Vous évite d'avoir à modifier les paramètres D'Atom lorsque vous travaillez sur plusieurs projets simultanément.
Ceci est un exemple d'une configuration très basique que j'utilise actuellement. Fonctionne pour Atom, ST, etc...
# 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
C'est intégré dans la base: Voir Settings ⇒ Tab Type
et choisissez auto
:
Lorsqu'il est défini sur "auto", l'éditeur détecte automatiquement le type d'onglet en fonction du contenu du tampon (il utilise le premier espace principal sur une ligne non-commentaire), ou utilise la valeur du paramètre de configuration des onglets souples si la détection automatique échoue.
Vous pouvez également jeter un oeil au paquet Auto Detect Indentation. De la docs:
Détecte automatiquement l'indentation des fichiers ouverts. Il regarde chaque fichier ouvert et définit les paramètres d'onglet spécifiques au fichier (onglets durs / soft, longueur de l'onglet) en fonction du contenu du fichier au lieu d'utiliser toujours les paramètres par défaut de l'éditeur.
Vous pouvez avoir atom configuré pour utiliser 4 espaces pour les onglets mais ouvrir un projet rails qui a par défaut 2 espaces. Sans ce package, vous devrez modifier vos paramètres tabstop globalement ou risquer d'avoir un espacement de plomb incohérent dans vos fichiers.
Si les paramètres d'indentation des onglets/espaces globaux ne correspondent plus à vos besoins (C'est-à-dire que vous travaillez avec des bases de code héritées avec des formats d'indentation variés, et que vous devez basculer rapidement entre eux, et que la détection automatique ne fonctionne pas), vous pouvez essayer le plugin tab-control, qui duplique en quelque sorte la fonctionnalité
Si vous utilisez Babel, vous pouvez également vous assurer de mettre à jour votre package "Language Babel". Pour moi, même si j'avais la longueur de L'onglet définie sur 2 dans Mes paramètres de l'éditeur principal, le même paramètre dans la configuration de Babel de la langue le remplacait par 4.
Atom -> Preferences -> Packages -> (Search for Babel) -> Grammar -> Tab Length
Assurez-vous de la grammaire appropriée, il y a "Babel ES6 JavaScript Grammar", "language-babel-extension Grammar" ainsi que "Regular Expression". Vous voulez probablement mettre à jour tous d'être cohérent.
Tab Control donne un bon contrôle de la même manière que celui décrit dans votre question.
Aussi bien, pour les développeurs JavaScript, est ESLint Tab Length pour utiliser ESLint config.
Ou si vous utilisez un .editorconfig
pour définir des règles d'indentation spécifiques au projet, il y a EditorConfig
Quand Atom auto-indent-detection s'est désespérément trompé et a refusé de me laisser taper un caractère de tabulation littéral, j'ai finalement trouvé l'extension 'Force-Tab' - qui m'a redonné le contrôle. Je voulais garder shift-tab pour surpasser, alors définissez Ctrl-tab pour insérer un onglet dur. Dans mon keymap j'ai ajouté:
'atom-text-editor':
'ctrl-tab': 'force-tab:insert-actual-tab'
J'ai juste eu le même problème, et aucune des suggestions ci-dessus n'a fonctionné. Enfin, j'ai essayé de décocher "Atomic Soft tabs" dans le menu des paramètres de L'éditeur, ce qui a fonctionné.
Si vous utilisez la version 1.21.1:
- Cliquez sur Packages / Paramètres / Open
- sélectionnez "Editeur" sur le panneau latéral gauche
- Scrool vers le bas jusqu'à ce que vous voyez "Longueur de tabulation"
- Modifier la valeur. J'aime à 4.
Maintenant, fermez simplement le volet onglet actif et vous avez terminé.