Exemple: si j'ai un document avec une indentation de 2 espaces et que je souhaite qu'il ait une indentation de 4 espaces, comment puis-je le convertir automatiquement à l'aide de l'éditeur de texte sublime?
228
Exemple: si j'ai un document avec une indentation de 2 espaces et que je souhaite qu'il ait une indentation de 4 espaces, comment puis-je le convertir automatiquement à l'aide de l'éditeur de texte sublime?
Voici une astuce intéressante dans Sublime Text 2 ou 3 pour convertir votre espacement d'indentation dans un document.
TL; DR:
Conversion de 2 espaces à 4 espaces:
Assurez-vous que la largeur de tabulation est définie sur 2. Convertissez votre indentation à 2 espaces en tabulations, passez à la largeur de tabulation 4, puis reconvertissez-la en espaces.
La description détaillée:
Aller à:
View -> Indentation
Il devrait se lire:
Indent using spaces [x]
Tab width: 2
Sélectionner:
Convert Indentation to Tabs
Sélectionnez ensuite:
Tab width: 4
Convert Indentation to Spaces
Terminé.
En fait, j'ai trouvé qu'il était préférable pour ma raison d'avoir des préférences utilisateur définies comme suit:
Le
detect_indentation: false
est particulièrement important, car il oblige Sublime à honorer ces paramètres dans chaque fichier, par opposition auxView -> Indentation
paramètres.Si vous voulez avoir de la fantaisie, vous pouvez également définir un raccourci clavier pour ré-indenter automatiquement votre code (YMMV) en collant ce qui suit dans
Sublime -> Preferences -> Key Binding - User
:et pour visualiser l'espace blanc:
la source
J'ai trouvé, dans mon esprit, une solution plus simple que Magne:
Sur mac:
Sur les fenêtres ou autres plates-formes, changez
cmd+f
etalt+enter
avec ce que vousfind
et lesselect all
raccourcis clavier sont.Remarque: cette méthode est sujette à des "erreurs" si vous avez plus d'un espace dans votre code. C'est donc moins sûr que la méthode de Magne, mais c'est plus rapide (du moins pour moi).
la source
RubyFormat
vous pouvez simplement définir la taille d'onglet souhaitée, puis faire un reformatage du code. Dans le cas deRubyFormat
ce seraitcmd+shift+R
.Alors que la plupart des suggestions fonctionnent lors de la conversion de 2 -> 4 espaces. J'ai rencontré des problèmes lors de la conversion de 4 -> 2.
Voici ce que j'ai fini par utiliser:
Sublime Text 3/Packages/User/to-2.sublime-macro
la source
Si vous trouvez que la recherche et le remplacement sont plus rapides à utiliser, vous pouvez utiliser un remplacement regex comme celui-ci:
Find (regex):
(^|\G) {2}
(Au lieu de "{2}",<space>{2}
vous pouvez simplement écrire deux espaces. Utilisez-le ici pour plus de clarté.)Remplacez par 4 espaces, ou ce que vous voulez, comme
\t
.la source
J'ai écrit un plugin pour cela. Vous pouvez le trouver ici ou rechercher "ReIndent" dans le contrôle de package. Il fait principalement la même chose que Kyle Finley a écrit mais de manière pratique avec des raccourcis pour convertir entre 2 et 4 et vice-versa.
la source
Vous devez ajouter ce code à vos raccourcis clavier personnalisés:
en appuyant sur ctrl + f12, il réindentera votre fichier à une taille d'onglet de 4. si vous voulez une taille d'onglet différente, vous changez simplement le numéro de "valeur". Le format est un simple json.
la source
{ "keys": ["ctrl+f10"], "command": "set_setting", "args": {"setting": "translate_tabs_to_spaces", "value": 2} }, { "keys": ["ctrl+f11"], "command": "set_setting", "args": {"setting": "tab_size", "value": 2} }, { "keys": ["ctrl+f12"], "command": "set_setting", "args": {"setting": "tab_size", "value": 4} },
La chose la plus simple que j'ai faite était,
et cela a résolu mon problème.
Vous pouvez faire la même chose,
ainsi que par votre besoin.
Mentionné l'instantané de la même chose.
la source
Récemment, j'ai rencontré un problème similaire. J'utilisais l'éditeur sublime. ce n'est pas un problème avec le code mais avec l'éditeur.
La modification ci-dessous des paramètres de préférence a fonctionné pour moi.
Menu Texte sublime -> Préférences -> Paramètres: spécifiques à la syntaxe :
la source