Recuar o código no texto sublime 2?

500

No Visual Studio, posso pressionar Ctrl+ K+ Dpara recuar tudo, para que o código seja estruturado de maneira agradável e legível. Existe um atalho no Sublime 2 para fazer o mesmo?

Kimpo
fonte
4
este é auto recuo de não auto formatação
Muhammad Umer
possível duplicação de Como reformatar o código HTML usando o Sublime Text 2?
Borisano #

Respostas:

843

Você pode encontrá-lo em EditLineReindent, mas não possui um atalho por padrão. Você pode adicionar um atalho acessando o menu PreferencesKeybindingsUsere depois adicionando:

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

(exemplo de uso da F12chave para essa funcionalidade)

Os arquivos de configuração usam a sintaxe JSON, portanto, esses chavetas precisam ser separadas por vírgula entre colchetes que estão lá por padrão. Se você ainda não possui outras combinações de teclas, todo o seu arquivo KeybindingsUserserá assim, é claro:

[
    { "keys": ["f12"], "command": "reindent", "args": {"single_line": false}}
]
Bernd Elkemann
fonte
28
alt + tab? isso é usado para mudar de janelas!
Bernd Elkemann
1
Opa! Isso mostra que eu estou em um Mac. Talvez a aba windows_key +?
Gdelfino
3
@ NunoGonçalves o menu não mostra o novo atalho, mas deve funcionar. verifique se o seu Preferences - Keybindings-User contém exatamente essas linhas e salve esse arquivo . Verifique também se o ST sabe que tipo de tipo de arquivo / sintaxe deve ser usado (a sua sintaxe está correta?). Se ainda assim não funcionar, tente uma chave diferente (por exemplo, "f8" parece não ser usada) e, se isso não funcionar, verifique se as combinações de teclas definidas pelo usuário estão desabilitadas na sua instalação por algum motivo.
Bernd Elkemann
2
Não tendo feito nada, de repente começou a funcionar. :) Acho que o problema estava entre o teclado e a cadeira o tempo todo :) Obrigado mesmo assim. :)
Nuno Gonçalves
1
{ "Chaves": [ "f12"], "comando": "reindent", "args": { "single_line": false}} vai reindent todos os documentos sem necessidade de selecionar o que você quer
Alexis
277

O comando reindent funciona apenas nas linhas selecionadas no momento, a menos que o argumento "single_line" esteja definido como false.

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

Agora, pressionar pressionará f12o documento inteiro.

usuario
fonte
2
"linha atual" pode ser uma seleção com várias linhas.
Gagarine
4
Essa deve ser a resposta aceita (ou pelo menos mesclada com a aceita), pois no Visual Studio, Ctrl + K + D também reformatará o documento inteiro.
Jedidja
14
Troque ["f12"] por ["ctrl + k", "ctrl + d"] pelo acorde de duas vezes.
Fabian Tamp
25
[{"keys": ["ctrl + shift + f"], "command": "reindent", "args": {"single_line": false}}] Esta é a minha personalização, muito obrigado !!!
duykhoa
1
Obrigado pelo "mais" ("args": {"single_line": false}) muito útil!
Arthur
32

Ninguém parece amar a re-indentação do mac, então aqui como eu faço isso:

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

Em Preferências> Vinculação de teclas - Usuário

Mais uma dica extra: adicione

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

ter navegação na visualização em árvore de arquivos da barra lateral usando o teclado.

Nota: Adicione, no final de cada {}, se você tiver mais de um {} conjunto de objetos

star18bit
fonte
por favor, não use vírgula (,) no final da declaração. Isso me deu um erro. Digite sem a vírgula (,)
Gihanmu 19/04/2014
1
se você não for um usuário usar ctrl Mac em vez de comando { "chaves": [ "ctrl + shift + i"], "comando": "reindent"}
Juraj Petrik
29

Não há atalho padrão para reinserir um arquivo. No entanto, você pode criar um seguindo a resposta de eznme acima.

Você também pode usar a paleta de comandos pressionando:

  1. Control+ Shift+ P(ou + Shift + Pem um Mac)
  2. Digite os primeiros caracteres do Reindent, por exemplo:rein
  3. Pressione Enterpara executar o comando
    (o primeiro comando na parte superior deve agora mostrar Indentation: Reindent Lines )
TrinitronX
fonte
19

Para os interessados, é fácil alterar, mas para os amantes do Netbeans e do formato automático, você pode alterar a associação de teclas de F12para ctrl+ shift+ Fpara usar sua amada associação de teclas. A parte triste é que você precisa selecionar tudo para formatar o arquivo inteiro. O Netbeans ainda tem vantagem nisso. Se alguém souber superar essa limitação, sou todo ouvidos. Caso contrário, feliz reindentação (formatação automática).

JeffBaumgardt
fonte
4
Não tenho certeza se alguém ainda está vendo isso, mas responde a @jeff. Use, "args": {"single_line": false} após adicionar o comando e não será necessário selecionar as linhas para formatá-lo. Formata o documento inteiro para você. (Nick colocou no comando tolo)
Mr H
O atalho do NetBeans é Alt + Shift + F (por padrão; Ctrl + Shift + F abre a Pesquisa de Projeto) e é limitado e não necessariamente sensato (o CSS não funciona e pode manter novas linhas de código na mesma linha). O atalho do Eclipse é Ctrl + Shift + F, e é melhor em alguns aspectos, e funciona em CSS, mas ainda tem um problema com as novas linhas de código. Ambos têm alguns problemas com novas linhas para atributos de linha interna (como em HTML), embora você possa configurar um pouco (mais no Eclipse).
Davicus
cmd + a no mac ou ctrl + a no windows selecionará automaticamente todo o texto para você na janela atual. faça isso e, em seguida, qualquer combinação de teclas que você escolher para recuar automaticamente para reformatar o arquivo inteiro.
user137717
16

Para recuar com as mesmas teclas do Visual Studio Ctrl+ K+ D(eu sou um usuário do Visual Studio e estou acostumado a essa combinação), sugiro:

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

Escreva isso em Preferências> Key Bindings - User

Sergio López
fonte
7

É muito simples. Basta ir paraEdit=>Line=>Reindent

Junan Chakma
fonte
6

Netbeans como tecla de atalho

Ir para Preferences> Key Bindings> Usere adicionar o código abaixo:

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

Uso

Ctrl+ Shift+F

Adrian Enriquez
fonte
6

Selecione todo o código que pretende recuar e pressione Ctrl+ ]no texto sublime para recuar.

Para usuários do macOS, use command+ ]para recuar e command+ [para recuar.

MindBrain
fonte
4

formatador de código .

simples de usar.


1.Instalar


2.press ctrl+ alt+ f(padrão)


É isso aí.

HIRA THAKUR
fonte
não funciona para mim, apenas desativa o recuo em todas as linhas.
Estou usando há algum tempo. Está funcionando bem. Qual é o problema. A instalação foi bem sucedida.
HIRA THAKUR
1
Claro que sim, estou usando-o contra trechos de HTML ... todas as linhas tiveram seus recuos removidos. Parecendo um poema ... :(
2

Além da função incorporada 'reindent', você também pode instalar outros plugins, como SublimeAStyleFormatter e CodeFormatter . Esses plugins são melhores para o idioma especificado.

Jon
fonte
2

Caso isso pare de funcionar para alguém como eu, no OS X, a chave de comando é identificada como supertal, para que ele possa fazer algo assim:

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

neste caso, usar command+ iirá indentar todo o código (como eclipse :))

Ordiel
fonte
1

Eu costumava usar Alt+ Shift+ Fno NetBeans, verifiquei e não há colisão no conjunto de mapas de teclado padrão do sublime, então o adicionei ao meu sublime e o estou usando sem nenhum problema.

Eduardo
fonte
1

Para quem gosta da ligação de teclas padrão para IntelJ IDEA , selecione Preferências > Configurações - Usuário :

insira a descrição da imagem aqui

E cole o seguinte para obter o atalho command+ shift+ lpara recuo automático:

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

Você pode adicionar um atalho acessando o menu PreferênciasLigações de teclas → Usuário e , em seguida, adicione:

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

Para formatação automática no texto sublime 2: Instale o pacote: Tag na paleta de comandos e vá em Editar -> Tag -> Tags de formatação automática no documento

evanjw
fonte
0

Selecione tudo ou o que você deseja reentrar e faça Alt+ E+ L+ R. Isso é realmente rápido e indolor.

bbandf
fonte
0

Esta é a minha configuração para sublime-keymap:

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

Para as pessoas do vim , use apenas ,==para reindentar o arquivo inteiro.

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

Você pode obter a opção reindent usando o código acima

Abhishek
fonte
0

Primeiro abra o texto sublime.
do que preferências abertas .
do que abrir Key Bindings -User .
do que colocar o código abaixo

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

Eu uso CtrlShiftCe você também usa outra tecla de atalho.

Seu CEO Vora Mayur
fonte