Olá Habr!
A temporada de atualizações de verão do IDE baseado no IntelliJ continua e, nesta série, contaremos o que o novo RubyMine aprendeu nas versões 2018.1 e lançado no outro dia,
RubyMine 2018.2 .

Sumário
Executar / Depurar qualquer coisaConclusão do código PostfixRenderização de gráfico em marcdownAnálise de código aprimoradaSuporte e aprimoramentos Chruby para gerenciadores de versão RubyReiniciando testes com falhaYamlAnexando um depurador a processos remotosJavascriptGitAlgo maisExecutar / Depurar qualquer coisa
A discussão em nosso
bate-papo personalizado do Slack levou à criação de uma ferramenta conveniente para iniciar várias configurações e comandos -
Executar qualquer coisa . O princípio de seu trabalho é um pouco semelhante ao
Search Everywhere . No entanto, em vez de procurar qualquer coisa, Run Anything clicando duas vezes em
Ctrl permite executar qualquer coisa: tarefas de rake,
rails s
, testes e outras configurações, bem como comandos do console.

Além disso, se você pressionar
Shift ao chamar Executar qualquer coisa, a ferramenta alternará para o modo
Debug Anything , que permite iniciar convenientemente o depurador.

A propósito, como você pode ver, o RubyMine se lembra de comandos e scripts lançados anteriormente e no futuro os oferecerá na lista suspensa.
Mais detalhes .
Conclusão do código Postfix
Esse recurso permite modificar, inverter e complementar expressões sem precisar retornar ao início da linha, para, por exemplo, inserir uma condição. Agora você pode simplesmente encerrar e selecionar
if
. O IDE colocará a condição no início da linha automaticamente. Se houver várias opções possíveis, o RubyMine oferecerá para selecionar o que você precisa na lista.

Uma lista completa dos modelos de postfix suportados pode ser encontrada nas configurações (
Preferências / Configurações | Editor | Geral | Conclusão do Postfix ). Você também pode desativar os irrelevantes lá.
Mais detalhes .
Renderização de gráfico em marcdown
Uma visualização dos arquivos de remarcação aprendeu a desenhar diagramas que estão no código. Insira
puml
antes do código do gráfico no arquivo
.md
para que o RubyMine pegue a sintaxe e exiba o gráfico em uma visualização.
Mais detalhes .

Observe que o suporte ao Markdown é fornecido por meio de um
plug -
in compatível com outros IDEs do JetBrains. No RubyMine e no IntelliJ IDEA Ultimate, o plug-in é instalado por padrão.
Análise de código aprimorada
Reescrevemos substancialmente a inferência de tipo e o mecanismo de análise de arquivos Ruby. Graças a isso, o preenchimento automático e a navegação de código melhoraram significativamente.

Como você pode ver na imagem, uma nova ação apareceu para visualizar o tipo de variável. Você pode chamá-lo pressionando
Ctrl + Shift + P (
Exibir | Tipo de expressão ).
Mais detalhes .
Também na nova versão, o preenchimento automático e a navegação para modelos com relacionamentos polimórficos estão disponíveis.
Mais detalhes .

Suporte e aprimoramentos Chruby para gerenciadores de versão Ruby
A nova versão adiciona suporte para chruby e asdf. Ao mesmo tempo, todos os gerenciadores de versão suportados (RVM, rbenv, chruby e asdf) ficaram disponíveis ao se conectar via WSL, Docker, bem como através de SSH e outras conexões remotas.
Lembre-se de que você pode configurar o SDK remoto da seguinte maneira:
Preferências / Configurações | Idiomas e estruturas | SDK e gemas Ruby | Novo controle remoto .

Reiniciando testes com falha
Agora, depois de executar os testes, você pode reiniciar separadamente apenas aqueles que falharam. Basta clicar no ícone correspondente.

Um novo recurso também está disponível ao usar predefinições como
rake test
rake spec
e
rake spec
.
Yaml
O suporte a YAML foi amplamente expandido para todos os IDEs baseados em IntelliJ. Primeiro, adicionamos a capacidade de formatar o código em arquivos
.yml
. Para formatar, use a combinação de teclas ⌥⌘L / Ctrl + Alt + L (
Código | Reformatar código ).
Mais detalhes .

Houve uma navegação no código, preenchimento automático e busca pelo uso de âncoras (
&
) e seus links (
*
).

Além disso, âncoras e links podem ser renomeados em uma ação (
Shift + F6 ). Para evitar conflitos, o IDE avisará que você está tentando usar o nome de uma âncora existente.
Mais detalhes .

Outras melhorias incluem suporte ao esquema JSON para preenchimento automático das configurações correspondentes no YAML, bem como a capacidade de copiar o caminho para o valor nos arquivos YAML.
Mais detalhes .


Anexando um depurador a processos remotos
Na versão 2016.3,
anunciamos a possibilidade de anexar um depurador à execução de processos locais e prometemos adicionar a capacidade de ingressar em processos remotos. Na versão mais recente, implementamos o prometido!
Para iniciar a depuração, conecte-se ao servidor remoto via SSH (
Preferências / Configurações | Ruby SDK e Gems | Novas remotas | Credenciais SSH ). Certifique-se de incluir o caminho para o intérprete Ruby.

Além disso, você pode associar a versão local do aplicativo àquela em execução no servidor (
Editar mapeamentos de caminhos ). Isso simplificará o posicionamento de pontos de interrupção em qualquer lugar do aplicativo para posterior depuração.

Agora você está pronto para depurar processos remotos! Para começar, selecione
Executar | Anexe ao processo ou localize a ação apropriada chamando a janela Find Action (
Help | Find Action ), conforme mostrado na figura:

Leia mais sobre como configurar a depuração de processos remotos
em nosso blog .
Javascript
- Adicionado um conjunto de novas adições de código rápido ( Alt + Enter ) para JavaScript e TypeScript: interface de implemento, criar classe derivada, implementar membros de uma interface ou classe abstrata, gerar casos para 'switch' e outros.
- Os novos recursos do TypeScript 2.9 e TypeScript 3.0 estão agora disponíveis no IDE.
- Adicionado Anotação com o tipo JSDoc e outras correções rápidas do TypeScript Language Service.
- Agora você pode extrair componentes React ( Refatorar | Extrair componente ) e converter componentes de classe em componentes funcionais (e vice-versa).
- Nos arquivos
.vue
, o .vue
tornou-se disponível para eventos e seus manipuladores.
Você pode aprender mais sobre as melhorias do JavaScript no vídeo:
Git
Os arquivos que contêm conflitos agora estão convenientemente agrupados em
Mesclar conflitos . Ao clicar em
Resolver, é esperado que você entre na caixa de diálogo
Arquivos mesclados com conflitos .

Outra nova opção conveniente,
Procurar repositório na revisão , permite exibir versões anteriores do repositório. Você pode ativar a opção chamando o menu de contexto na confirmação necessária no log do Git. O IDE abrirá a janela da ferramenta Projeto, na qual você pode visualizar versões anteriores dos arquivos do aplicativo.

Na nova versão, você pode confirmar as alterações ignorando a caixa de diálogo
Push . Para fazer isso, desmarque a caixa de seleção correspondente em
Preferências / Configurações | Controle de versão | Git . Se você pressionar
Confirmar e Enviar (⌥⌘K | Ctrl + Alt + K) na próxima vez que confirmar na caixa de diálogo
Confirmar Alterações , o IDE não exibirá adicionalmente a caixa de diálogo Enviar, mas enviará imediatamente as alterações para o repositório.

Algo mais
Na nova versão, você também encontrará o CoffeeScript aprimorado, a capacidade de usar diferentes contas do GitHub, ícones atualizados e suporte para a barra de toque nos macbooks.
Você pode baixar a nova versão na página
O que há de novo . Lembramos que nos primeiros 30 dias você pode usar o RubyMine gratuitamente.