Partilhar via


Criar uma extensão de Keymap do Azure Data Studio

Este tutorial demonstra como criar uma nova extensão do Azure Data Studio. A extensão cria associações de chave SSMS familiares no Azure Data Studio.

Neste artigo, vai aprender a:

  • Criar um projeto de extensão
  • Instale o gerador de extensões
  • Crie a sua extensão
  • Adicione ligações de teclas personalizadas à sua extensão
  • Teste a sua extensão
  • Empacote sua extensão
  • Publique sua extensão no mercado

Pré-requisitos

O Azure Data Studio é criado na mesma estrutura do Visual Studio Code, portanto, as extensões para o Azure Data Studio são criadas usando o Visual Studio Code. Para começar, você precisa dos seguintes componentes:

  • Node.js instalado e disponível no seu $PATH. Node.js inclui o npm, o Node.js Package Manager, que é usado para instalar o gerador de extensão.
  • Visual Studio Code para depurar a extensão.
  • A extensão de depuração do Azure Data Studio (opcional). Isso permite que você teste sua extensão sem precisar empacotá-la e instalá-la no Azure Data Studio.
  • Certifique-se de azuredatastudio que está no seu caminho. Para Windows, certifique-se de escolher a Add to Path opção em setup.exe. Para Mac ou Linux, execute o comando Instalar 'azuredatastudio' no PATH a partir da Paleta de Comandos no Azure Data Studio.

Instale o gerador de extensões

Para simplificar o processo de criação de extensões, construímos um gerador de extensões usando o Yeoman. Para instalá-lo, execute o código no prompt de comando abaixo:

npm install -g yo generator-azuredatastudio

Crie sua extensão de mapa de teclas

Para criar uma extensão:

  1. Inicie o gerador de extensões com o seguinte comando:

    yo azuredatastudio

  2. Escolha Novo Keymap na lista de tipos de extensão:

    Gerador de extensão

  3. Siga as etapas para preencher o nome da extensão (para este tutorial, use ssmskeymap2) e adicione uma descrição.

Concluir as etapas anteriores cria uma nova pasta. Abra a pasta no Visual Studio Code e você está pronto para criar sua própria extensão de vinculação de chave!

Adicionar um atalho de teclado

Etapa 1: encontrar os atalhos para substituir

Agora que temos nossa extensão pronta para uso, adicione alguns atalhos de teclado do SSMS (ou ligações de teclas) ao Azure Data Studio. Eu usei o Cheatsheet de Andy Mallon e a lista de atalhos de teclado do RedGate para me inspirar.

As principais coisas que vi faltando foram:

  • Execute uma consulta com o plano de execução real ativado. Isso é Ctrl+M no SSMS e não tem uma associação no Azure Data Studio.
  • Ter CTRL+SHIFT+E como uma segunda forma de executar uma consulta. Os comentários dos utilizadores indicaram que tal estava em falta.
  • Ter ALT+F1 executado sp_help. Adicionamos isso no Azure Data Studio, mas como essa associação já estava em uso, mapeamos para ALT+F2 .
  • Alterne a tela cheia (SHIFT + ALT + ENTER).
  • F8 para mostrar a visualização Servidores do Pesquisador / de Objetos.

É fácil encontrar e substituir essas ligações de chave. Execute Abrir Atalhos de Teclado para mostrar a guia Atalhos de Teclado no Azure Data Studio, procure consulta e escolha Alterar vinculação de Chave. Quando terminar de alterar a vinculação de teclas, você poderá ver o mapeamento atualizado no arquivo keybindings.json (execute Abrir atalhos de teclado para vê-lo).

Atalhos de teclado

Keybindings.json extensão

Etapa 2: adicionar atalhos à extensão

Para adicionar atalhos à extensão, abra o arquivo package.json (na extensão) e substitua a contributes seção pelo código abaixo:

"contributes": {
  "keybindings": [
    {
      "key": "shift+cmd+e",
      "command": "runQueryKeyboardAction"
    },
    {
      "key": "ctrl+cmd+e",
      "command": "workbench.view.explorer"
    },
    {
      "key": "alt+f1",
      "command": "workbench.action.query.shortcut1"
    },
    {
      "key": "shift+alt+enter",
      "command": "workbench.action.toggleFullScreen"
    },
    {
      "key": "f8",
      "command": "workbench.view.connections"
    },
    {
      "key": "ctrl+m",
      "command": "runCurrentQueryWithActualPlanKeyboardAction"
    }
  ]
}

Teste a sua extensão

Certifique-se de azuredatastudio que está no seu PATH executando o comando Install azuredatastudio in PATH no Azure Data Studio.

Verifique se a extensão de depuração do Azure Data Studio está instalada no Visual Studio Code.

Selecione F5 para iniciar o Azure Data Studio no modo de depuração com a extensão em execução:

Instalar a extensão

extensão do teste

Os mapas principais são uma das extensões mais rápidas de criar, por isso a sua nova extensão deve agora estar a funcionar com sucesso e pronta para partilhar.

Empacote sua extensão

Para compartilhar com outras pessoas, você precisa empacotar a extensão em um único arquivo. Isso pode ser publicado no Azure Data Studio extension Marketplace ou compartilhado entre sua equipe ou comunidade. Para fazer isso, você precisa instalar outro pacote npm a partir da linha de comando:

npm install -g vsce

Navegue até o diretório base da extensão e execute vsce package. Eu tive que adicionar algumas linhas extras para impedir que a ferramenta vsce reclamasse:

"repository": {
    "type": "git",
    "url": "https://github.com/kevcunnane/ssmskeymap.git"
},
"bugs": {
    "url": "https://github.com/kevcunnane/ssmskeymap/issues"
},

Uma vez feito isso, meu arquivo ssmskeymap-0.1.0.vsix foi criado e pronto para instalar e compartilhar com o mundo!

Instalar

Publique sua extensão no Marketplace

O Azure Data Studio extension Marketplace está em construção, mas o processo atual é hospedar a extensão VSIX em algum lugar (por exemplo, uma página de versão do GitHub) e, em seguida, enviar uma RP atualizando esse arquivo JSON com suas informações de extensão.

Próximos passos

Neste tutorial, ficou a saber como:

  • Criar um projeto de extensão
  • Instale o gerador de extensões
  • Crie a sua extensão
  • Adicione ligações de teclas personalizadas à sua extensão
  • Teste a sua extensão
  • Empacote sua extensão
  • Publique sua extensão no mercado

Esperamos que, depois de ler isso, você se inspire para criar sua própria extensão para o Azure Data Studio. Temos suporte para Dashboard Insights (gráficos bonitos que são executados em seu SQL Server), várias APIs específicas do SQL e um enorme conjunto existente de pontos de extensão herdados do Visual Studio Code.

Se você tem uma ideia, mas não sabe como começar, abra um problema ou tweete na equipe: azuredatastudio.

Você sempre pode consultar o guia de extensão de código do Visual Studio porque ele abrange todas as APIs e padrões existentes.

Para saber como trabalhar com T-SQL no Azure Data Studio, conclua o tutorial do Editor T-SQL: