Mettre en retrait le code dans le texte sublime 2?

500

Dans Visual Studio, je peux appuyer sur Ctrl+ K+ Dpour tout mettre en retrait afin que le code soit bien structuré et lisible. Existe-t-il un raccourci dans Sublime 2 pour faire de même?

Kimpo
la source
4
il s'agit d'une mise en retrait automatique et non d'un formatage automatique
Muhammad Umer

Réponses:

843

Vous pouvez le trouver dans EditLineReindent, mais il n'a pas de raccourci par défaut. Vous pouvez ajouter un raccourci en allant dans le menu PreferencesKeybindingsUser, puis y ajouter:

{ "keys": ["f12"], "command": "reindent", "args": {"single_line": false} }  

(exemple d'utilisation de la F12clé pour cette fonctionnalité)

Les fichiers de configuration utilisent la syntaxe JSON, donc ces accolades doivent être placées séparées par des virgules dans les crochets qui sont là par défaut. Si vous n'avez pas encore d'autres raccourcis clavier, alors votre fichier Keybindings→ entier Userressemblera à ceci, bien sûr:

[
    { "keys": ["f12"], "command": "reindent", "args": {"single_line": false}}
]
Bernd Elkemann
la source
28
alt + tab? qui est utilisé pour changer de fenêtre!
Bernd Elkemann
1
Oops! Cela montre que je suis sur un Mac. Peut-être l'onglet windows_key +?
gdelfino
3
@ NunoGonçalves le menu n'affiche pas le nouveau raccourci mais il devrait fonctionner. assurez-vous que vos préférences - Keybindings-User contiennent exactement ces lignes et enregistrez ce fichier . Assurez-vous également que ST sait quel type de type / syntaxe de fichier il doit utiliser (votre coloration syntaxique est-elle correcte?). Si cela ne fonctionne toujours pas, essayez une autre clé (par exemple, "f8" semble inutilisé), puis si cela ne fonctionne pas, vérifiez si les raccourcis clavier définis par l'utilisateur sont désactivés sur votre installation pour une raison quelconque.
Bernd Elkemann
2
N'ayant rien fait, il a soudainement commencé à fonctionner. :) Je suppose que le problème était entre le clavier et la chaise depuis le début :) Merci quand même. :)
Nuno Gonçalves
1
{"keys": ["f12"], "command": "reindent", "args": {"single_line": false}} réindentera tous les documents sans avoir à sélectionner ce que vous voulez
Alexis
277

La commande reindent ne fonctionne que sur les lignes actuellement sélectionnées, sauf si l'argument "single_line" est défini sur false.

{ "keys": ["f12"], "command": "reindent", "args": {"single_line": false} }

Maintenant, appuyer sur f12réindentera tout le document.

pseudo
la source
2
"ligne actuelle" peut être une sélection contenant plusieurs lignes.
gagarine
4
Cela devrait être la réponse acceptée (ou au moins fusionnée dans la réponse acceptée), car dans Visual Studio Ctrl + K + D reformatera également le document entier.
Jedidja
14
remplacez ["f12"] par ["ctrl + k", "ctrl + d"] par l'accord à deux pressions.
Fabian Tamp
25
[{"keys": ["ctrl + shift + f"], "command": "reindent", "args": {"single_line": false}}] Ceci est ma personnalisation, merci beaucoup !!!
duykhoa
1
Merci pour le "plus" ("args": {"single_line": false}) très utile!
Arthur
32

Personne ne semble aimer la ré-indentation de mac, alors voici comment je le fais:

[
   { "keys": ["command+shift+i"], "command": "reindent"}
]

Dans Préférences> Raccourci clavier - Utilisateur

Un autre conseil supplémentaire: ajouter

{ "keys": ["command+0"], "command": "focus_side_bar" }

pour avoir une navigation dans l'arborescence des fichiers de la barre latérale à l'aide du clavier.

Remarque: Ajoutez, à la fin de chaque {}, si vous avez plus d'un {} ensemble d'objets

star18bit
la source
veuillez ne pas utiliser de virgule (,) à la fin de la déclaration. Cela m'a donné une erreur. Tapez-le sans la virgule (,)
Gihanmu
1
si vous n'êtes pas un utilisateur Mac, utilisez ctrl au lieu de la commande {"touches": ["ctrl + shift + i"], "commande": "reindent"}
Juraj Petrik
29

Il n'y a pas de raccourci par défaut pour réindenter un fichier. Cependant, vous pouvez en créer un en suivant la réponse d' eznme ci-dessus.

Vous pouvez également utiliser la palette de commandes en appuyant sur:

  1. Control+ Shift+ P(ou + Maj + Psur un Mac)
  2. Tapez les premiers caractères de Reindent, par exemple:rein
  3. Appuyez sur Enterpour exécuter la commande
    (la première commande en haut devrait maintenant afficher l' indentation: lignes de réindentation )
TrinitronX
la source
19

Pour les intéressés , il est facile de changer , mais pour un amateur de Netbeans et le format automatique , vous pouvez modifier la clé de liaison de F12la ctrl+ shift+ Fpour utiliser votre clé bien - aimée obligatoire. La partie triste est que vous devez tout sélectionner pour formater le fichier entier. Netbeans a toujours le dessus. Si quelqu'un sait comment surmonter cette limitation, je suis à l'écoute. Sinon, réindentation heureuse (formatage automatique).

JeffBaumgardt
la source
4
Je ne sais pas si quelqu'un regarde toujours cela, mais pour répondre à @jeff. Utilisez "args": {"single_line": false} après avoir ajouté la commande et vous n'avez pas besoin de sélectionner de lignes pour la formater. Il formate l'intégralité du document pour vous. (Nick a mis la commande idiote)
Mr H
Le raccourci NetBeans est Alt + Shift + F (par défaut; Ctrl + Shift + F ouvre la recherche de projet), et est limité et pas nécessairement sensé (CSS ne fonctionne pas, et il peut garder de nouvelles lignes de code sur la même ligne). Le raccourci d'Eclipse est Ctrl + Shift + F, et c'est mieux à certains égards, et fonctionne sur CSS, mais a toujours un problème avec les nouvelles lignes de code. Les deux ont quelques problèmes avec les nouvelles lignes pour les attributs de ligne intérieure (comme en HTML), bien que vous puissiez configurer quelque peu (plus dans Eclipse).
Davicus
cmd + a sur mac ou ctrl + a sur windows sélectionnera automatiquement tout le texte pour vous dans la fenêtre actuelle. faites cela, puis quelle que soit la liaison de clé que vous avez choisie pour le retrait automatique pour reformater le fichier entier.
user137717
16

Pour mettre en retrait avec les mêmes clés que Visual Studio Ctrl+ K+ D(je suis un utilisateur de Visual Studio, je suis donc habitué à cette combinaison), je suggère:

[
{ "keys": ["ctrl+k", "ctrl+d"], "command": "reindent", "args": {"single_line": false} }
]

Écrivez ceci dans Préférences> Raccourcis clavier - Utilisateur

Sergio López
la source
7

C'est très simple. Allez àEdit=>Line=>Reindent

Junan Chakma
la source
6

Netbeans comme raccourci clavier

Aller à Preferences> Key Bindings> Useret ajoutez le code ci - dessous:

[
    { "keys": ["ctrl+shift+f"], "command": "reindent", "args": {"single_line": false} }
]

Usage

Ctrl+ Shift+F

Adrian Enriquez
la source
6

Sélectionnez tout le code que vous souhaitez mettre en retrait, puis appuyez sur Ctrl+ ]dans le texte Sublime pour mettre en retrait.

Pour les utilisateurs de macOS, utilisez command+ ]pour mettre en retrait et command+ [pour annuler le retrait.

MindBrain
la source
4

formateur de code .

simple à utiliser.


1. installer


2. appuyez sur ctrl+ alt+ f(par défaut)


C'est ça.

HIRA THAKUR
la source
ne fonctionne pas pour moi, il désactive simplement l'indentation sur toutes les lignes.
Je l'utilise depuis pas mal de temps, il se réveille bien. Quel est le problème. L'installation a-t-elle réussi?
HIRA THAKUR
1
Bien sûr que oui, je l'utilise contre des extraits HTML ... toutes les lignes ont supprimé leurs retraits.
2

Outre la fonction de «réindentation» intégrée, vous pouvez également installer d'autres plugins, tels que SublimeAStyleFormatter et CodeFormatter . Ces plugins sont meilleurs pour leur langue spécifique.

Jon
la source
2

Juste au cas où cela cesserait de fonctionner pour quelqu'un comme moi, dans OS X, la touche de commande est identifiée comme supertelle, elle devrait pouvoir faire quelque chose comme ceci:

[
    {
    "keys": ["super+i"], 
    "command": "reindent", 
    "args": {
        "single_line": 
        false}
    } 
]

dans ce cas, l'utilisation de command+ iva indenter tout votre code (éclipse comme :))

Ordiel
la source
1

J'avais l'habitude d'utiliser Alt+ Shift+ Fdans NetBeans, j'ai vérifié et il n'y a pas de collision dans le tableau de touches par défaut de sublime, alors je l'ai ajouté à mon sublime et je l'utilise sans aucun problème.

Eduardo
la source
1

Pour ceux qui aiment la liaison de clé par défaut pour IntelJ IDEA , sélectionnez Préférences > Paramètres - Utilisateur :

entrez la description de l'image ici

Et collez ce qui suit pour avoir le raccourci command+ shift+ lpour le retrait automatique:

[
   { "keys": ["command+shift+l"], "command": "reindent"}
]
Yuchen Zhong
la source
1

Vous pouvez ajouter un raccourci en allant dans le menu PréférencesRaccourcis clavierUtilisateur , puis y ajouter:

{ "keys": ["f12"], "command": "reindent", "args": {"single_line": false} }  
Love Kumar
la source
0

Pour la mise en forme automatique dans Sublime Text 2: installez le package: balise à partir de la palette de commandes, puis allez dans Edition -> Balise -> Balises de formatage automatique sur le document

evanjw
la source
0

Sélectionnez tout, ou tout ce que vous voulez ré-indenter et faites Alt+ E+ L+ R. C'est vraiment rapide et indolore.

bbandf
la source
0

Voici ma configuration pour sublime-keymap:

[
  {
    "keys": [",+=+="],
    "command": "reindent",
    "args": {
      "single_line": false
    }
  }
]

Pour les personnes vim , utilisez simplement ,==pour réindenter tout le fichier.

Alan Dong
la source
0
{ "keys": ["f12"], "command": "reindent", "args": {"single_line": false} } 

Vous pouvez obtenir l'option de réindentation en utilisant le code ci-dessus

Abhishek
la source
0

Ouvrez d'abord le texte sublime.
que les préférences ouvertes .
que d'ouvrir Key Bindings -User .
que de mettre le code ci-dessous

[{"touches": ["ctrl + shift + c"], "commande": "reindent"},]

J'utilise CtrlShiftCet vous utilisez également une autre touche de raccourci.

Er PDG Vora Mayur
la source