210 votes

Visual Studio Code - Convertir les espaces en tabulations

J'ai à la fois des fichiers TypeScript et HTML dans mon projet, dans les deux fichiers les tabulations sont converties en espaces.

Je veux désactiver la conversion automatique et m'assurer que mon projet n'utilise que des tabulations.

Modifier :

Avec ce paramètre, cela semble fonctionner dans les fichiers HTML mais pas dans les fichiers TypeScript.

{
  "editor.insertSpaces": false 
}

22 votes

C'est au-delà de moi pourquoi les IDE préfèrent convertir les tabulations en espaces. Si je voulais des espaces, j'appuierais sur la barre d'espacement 4 fois pour chaque indentation... comme un sauvage.

363voto

v-andrew Points 7022

Il y a 3 options dans .vscode/settings.json:

// Le nombre d'espaces qu'un onglet équivaut.
"editor.tabSize": 4,

// Insérer des espaces en appuyant sur Tab.
"editor.insertSpaces": true,

// Lors de l'ouverture d'un fichier, `editor.tabSize` et `editor.insertSpaces` seront détectés en fonction du contenu du fichier.
"editor.detectIndentation": true

editor.detectIndentation le détecte à partir de votre fichier, vous devez le désactiver. Si cela n'a pas aidé, vérifiez que vous n'avez pas de paramètres avec une priorité plus élevée. Par exemple, lorsque vous les enregistrez dans les paramètres utilisateur, ils pourraient être écrasés par les paramètres de l'espace de travail qui se trouvent dans votre dossier de projet.

Mise à jour:

Pour accéder à ces paramètres, vous pouvez ouvrir Fichier » Préférences » Paramètres, cliquez sur l'icône de réglage Gérer en bas à gauche, ou utilisez le raccourci clavier :

<strong>CTRL</strong>+<strong>,</strong> (Windows, Linux)

+<strong>,</strong> (Mac)

Mise à jour:

Maintenant vous avez une alternative pour modifier ces options manuellement.
Cliquez sur le sélecteur Espaces:4 en bas à droite de l'éditeur :
Ln44, Col .  [Espaces:4] . UTF-8 with BOM . CTRLF . HTML . :)

MODIFIER :
Pour convertir l'indentation existante d'espaces en tabulations, appuyez sur <strong>Ctrl</strong>+<strong>Shift</strong>+<strong>P</strong> et tapez :

>Convertir l'indentation en tabulations

Cela changera l'indentation de votre document en fonction des paramètres définis pour des tabulations.

1 votes

@Paramètres Viragos settings.json

3 votes

Comment puis-je exécuter cette commande pour tous les fichiers de mon espace de travail.

2 votes

Comment convertir l'indentation en tabulations de manière permanente pour tous mes fichiers et projets dans VSCode ?

164voto

Eric Bole-Feysot Points 558

Pour modifier les paramètres de tabulation, cliquez sur la zone de texte à droite du texte Ln/Col dans la barre d'état en bas à droite de la fenêtre de vscode.

Le nom peut être Taille de tabulation ou Espaces.

Un menu s'affichera avec toutes les actions et paramètres disponibles.

description de l'image ici

4 votes

Pour moi, cela ne modifie que ces paramètres pour le fichier particulier que je suis en train de consulter. Les autres fichiers dans le projet conservent leurs anciens paramètres. Comment le configureriez-vous de manière universelle?

0 votes

Je remplace généralement tous mes fichiers en une seule fois, si nécessaire, en effectuant une recherche de projet pour le regex simple ` {4}` et en le remplaçant par \t (pour les tabulations). Je jette généralement un œil aux correspondances pour m'assurer que rien ne se cassera comme des littéraux de chaîne multi-lignes, etc. Appliquez évidemment ces paramètres pour que vos nouvelles indentations soient également les caractères souhaités !

47voto

carlsborg Points 1068

Ctrl+Shift+P, puis "Convertir l'indentation en tabulations"

0 votes

Est-il possible de le faire pour une sélection et non pour l'ensemble du fichier ?

1 votes

Est-il possible de le faire pour un dépôt entier et non pas seulement un fichier ?

0 votes

@dbrane Oui. Si vous mettez en surbrillance un bloc de code dans un fichier, la conversion s'applique uniquement à la sélection. Au fait, sur Mac, le combo touche est + P (alt/option + P).

8voto

Vinicios Torres Points 71

Dans mon cas, le problème était l'extension JS-CSS-HTML Formatter installée après la mise à jour de janvier. La propriété par défaut indent_char est un espace. Je l'ai désinstallée et le comportement étrange s'arrête.

0 votes

Oh oui, c'était en effet le véritable problème pour moi. J'ai passé beaucoup de temps à bidouiller les paramètres dans VS Code. Finalement, désactiver cette extension a résolu le problème.

7voto

Rohan Kumar Points 18192

Les paramètres ci-dessous ont bien fonctionné pour moi,

"editor.insertSpaces": false,
"editor.formatOnSave": true, // seulement si vous voulez un formatage automatique lors de l'enregistrement du fichier
"editor.detectIndentation": false

Les paramètres ci-dessus seront reflétés et appliqués à tous les fichiers. Vous n'avez pas besoin d'indenter/formater chaque fichier manuellement.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X