Código VS - Adicionar um novo arquivo no diretório de trabalho selecionado

100

Estou tentando obter um atalho para adicionar um novo arquivo na minha pasta de trabalho atual. Então, eu navego para o explorer usando cmd+shift+ee quando chego à pasta quero criar uma nova classe, eu faço o cmd+nque cria um novo arquivo, mas não é salvo em nenhum lugar (estou tentando obter um comportamento semelhante ao que ReSharper faz, por exemplo )

Existe algum outro atalho para obter o arquivo criado na pasta em que você está em foco no explorer? Essencialmente, eu gostaria que a caixa de texto preenchesse o nome e o arquivo seria salvo automaticamente para que eu não recebesse o prompt mais tarde.

Estou usando como referência a seguinte página: https://code.visualstudio.com/docs/customization/keybindings

Carlos Torrecillas
fonte

Respostas:

233

O cmd+ncomando está vinculado por padrão, workbench.action.files.newUntitledFilemas o que você deseja é o comando explorer.newFileque, por padrão, não está vinculado a um atalho.

Editar arquivo de atalhos

Pressione Cmd+ Shift+ pdigite keye pressione EnterPreferences: Open Keyboard Shortcuts (JSON)

Isso abrirá o arquivo keybindings.json que armazena combinações de teclas personalizadas especificadas pelo usuário atual do VS Code.

Digite o seguinte no arquivo de ligações personalizadas (presumivelmente, você precisa inserir em cmd+nvez de, ctrl+nmas estou no Windows, portanto não posso testar

[
  { "key": "ctrl+n", "command": "explorer.newFile" }
]

Se você quiser que isso seja aplicado apenas quando o explorador estiver focado, você pode adicionar uma condição quando:

{ "key": "ctrl+n", "command": "explorer.newFile", "when": "explorerViewletFocus" }

Desta forma, quando qualquer outro componente estiver focado, pressionar Ctrl+ nirá executar o comando padrão de novo arquivo

Editar usando atalhos de interface do usuário

Pressione Cmd+ Shift+ pdigite keye pressione EnterPreferences: Open Keyboard Shortcuts

Isso abrirá a IU de preferências de atalho do teclado.

Digite explorer.newFilea pesquisa para encontrar o novo comando de arquivo, clique duas vezes nele para abrir o modal de captura de atalho e pressione a combinação de teclas que deseja associar a este comando.

ndonohoe
fonte
1
Isso é exatamente o que eu estava procurando. Muito obrigado por isso!
Carlos Torrecillas
1
Tão simples, mas tão poderoso! Obrigado!
kolrie
2
Isso criará o novo arquivo na pasta focada no momento. É possível criar o novo arquivo a partir da raiz do projeto?
Oliver Joseph Ash
Existe alguma razão para "key": "a"que não funcione? Funciona apenas se eu fizer issocmd+n
Grant
@OliverJosephAsh Esta extensão fará isso por você: marketplace.visualstudio.com/… . Ele permite que você digite o caminho exato relativo à raiz do projeto em que deseja criar um arquivo (ou vários arquivos de uma vez).
SUM1
20

Para adicionar arquivos ou pastas, adicione as seguintes linhas a keybindings.json:

Resposta atualizada em 2020/02/10 (Agradecimentos a @AbrahamHernandez, que forneceu o comentário).

[
  { "key": "ctrl+n",
    "command": "explorer.newFile",
    "when": "!editorFocus" },

  { "key": "ctrl+shift+n",
    "command": "explorer.newFolder",
    "when": "!editorFocus" }
]

Essas ligações estarão ativas se o editor não estiver focado.

Eles também são acionados se a janela de depuração estiver ativa. Isso não é perfeito, mas o contexto explorerFocusserá adicionado em um futuro próximo: consulte GitHub

Gregor Woiwode
fonte
Isso não funcionou para mim: Me dá workbench.actionnão encontrado
abranhe
2
@AbrahamHernandez tente alterar os comandos para explorer.newFileeexplorer.newFolder
mysl
6

Você pode usar este método se não quiser criar um atalho.

  1. Navegue até o explorador via cmd+ shift+e
  2. Vá para a pasta em que deseja criar um novo arquivo / pasta.
  3. Abra o seletor de arquivos via cmd+ shift+p
  4. Então digite New File ou New Foldere digite.

É assim que você cria um novo arquivo / pasta sem tocar no mouse. :)

Fatih Bulut
fonte
1
Fui para os atalhos de teclado (abrir com ctrl+K ctrl+S) e adicionei um para explorer.newFilepular as etapas 3 e 4.
Rafi
Eu acho que a etapa 3 deveria ser cmd+shift+p?
Rafi de
1
@Rafi você está certo. Eu adicionei à mensagem. Obrigado.
Fatih Bulut
0

Você pode fazer isso em duas etapas:

  1. Cmd + Shift + E: Abra o explorador com
  2. Ctrl + N: Crie um novo arquivo na pasta atual e nomeie-o.

Na verdade, gosto dessa abordagem, em vez da mágica de um clique, porque cada etapa é mais clara e você não precisa configurar nada.

Lehoang
fonte