O ReSharper fornece uma variedade de recursos para obter informações adicionais sobre o código, selecionar e destacar blocos estruturais de código e aplicar transformações de código locais.
O ReSharper estende o suporte para realce padrão do Visual Studio com o realce personalizado de itens de código em diferentes linguagens. Por exemplo, você pode diferenciar facilmente entre variáveis locais e campos no seu código. Para ativar o realce do ReSharper, acesse ReSharper | Options | Code Inspection | Settings e selecione Color Identifiers. A cor personalizada de cada item é configurável.
As ações de contexto do ReSharper reduzem consideravelmente seu trabalho de digitação, introduzindo rapidamente pequenas alterações de código sob o cursor. Por exemplo, você pode alterar modificadores de acesso, gerar código que verifica a existência de valores nulos, converter foreach
em for
(e vice-versa) com apenas alguns pressionamentos de tecla. Se uma ou mais ações de contexto estiverem disponíveis para a posição atual do sinal de intercalação, o ReSharper exibirá o ícone de martelo : você pode clicar nesse ícone ou pressionar Alt+Enter para selecionar uma ação apropriada.
Esse recurso insere os elementos de sintaxe necessários (chaves, pontos-e-vírgulas, etc.) e prepara você para iniciar a próxima instrução, evitando malabarismos excessivos com o sinal de intercalação. Enquanto você trabalha, lembre-se do atalho padrão para esse recurso: Ctrl+Shift+Enter.
A Instrução completa (também conhecida como inserção inteligente) vem para salvar em vários cenários, incluindo parênteses de fechamento automático, adicionando pontos-e-vírgulas, preenchendo instruções if
, while
e for
e assim por diante.
Se um literal de string contiver alguma outra linguagem formal, o ReSharper poderá fornecer inspeção de código, correções rápidas, preenchimento de código, ações de contexto e muitos outros recursos específicos para essa linguagem diretamente dentro desse trecho.
Quando uma linguagem formal dentro de um literal de string não pode ser detectada automaticamente, o ReSharper permite marcar manualmente o literal como contendo linguagem específica, usando o menu ativado com Alt+Enter ou adicionando o seguinte comentário imediatamente antes do literal de string: /*language=html|regexp*/
.
O ReSharper fornece um rico conjunto de ferramentas para trabalhar com expressões regulares em C#. Você pode analisar rapidamente expressões existentes e localizar e corrigir erros. Ao digitar novas expressões, o ReSharper ajuda com preenchimento automático e validação.
É possível escolher ReSharper | Tools | Validate Regular Expression no menu para inserir várias strings de amostra e ver como a sua expressão regular corresponde a essas strings. Usando essa caixa de diálogo, você pode corrigir sua expressão e ter a certeza de que receberá a correspondência esperada.
Essa parte do IntelliSense do Visual Studio também é estendida no ReSharper. Quando você chama um método, o pop-up Parameter Info mostra todas as assinaturas e parâmetros do método disponíveis com a documentação relevante em uma dica de ferramenta. A dica de ferramenta aparece automaticamente enquanto você digita, ou você pode exibi-la pressionando Ctrl+Shift+Espaço. Enquanto você está adicionando novos argumentos, o ReSharper desativa todas as assinaturas que se tornaram incompatíveis.
Em C#, sempre que você coloca o sinal de intercalação imediatamente antes/depois de um parêntese/colchete/chave de fechamento, o caractere de abertura correspondente é realçado, e vice-versa (essa opção é configurável).
No VB.NET, o código Sub
ou Function
correspondente é realçado quando o sinal de intercalação é colocado em qualquer ponto dentro ou depois de End Sub
ou End Function
. A palavra-chave correspondente e sua linha são realçadas sempre que você coloca o sinal de intercalação na palavra-chave de abertura (esse recurso também é configurável).
Em XML, as tags correspondentes são realçadas de maneira discreta, permitindo que você veja a estrutura completa de tags.
Se um trecho de código correspondente sair da tela, um pop-up apropriado será exibido para sua conveniência.
Quando um nome de tipo não pode ser resolvido porque você se esqueceu de emitir a diretiva de importação de namespace correspondente no código-fonte, é exibido um pequeno pop-up sugerindo um ou mais tipos para importar. Basta pressionar Alt+Enter, e a diretiva de importação de namespace apropriada será inserida automaticamente. Além disso, você não perderá a posição atual do sinal de intercalação.
Para arquivos de marcação em aplicativos Web, o ReSharper é capaz de importar controles de usuário (arquivos ascx) automaticamente com base em seus usos.
Quando você digita (
, [
, "
ou '
no editor, um caractere emparelhado é inserido automaticamente (sempre que apropriado). Esse recurso pode ser facilmente desativado, mas você não deve ter receio de inserir muitos parênteses, colchetes ou aspas finais por engano: se os parênteses ou as aspas de fechamento já existirem, o ReSharper não adicionará os extras.
Em XML, assim que você digita aspas ou um colchete de abertura, o par de fechamento é exibido automaticamente.
Duplique rapidamente qualquer linha (bloco) de código, colocando o sinal de intercalação nessa linha no editor (ou, respectivamente, selecionando um bloco) e pressionando Ctrl+D.
O ReSharper permite que você mude rapidamente a ordem dos elementos do código pressionando uma tecla — ou melhor quatro: Ctrl+Shift+Alt+Cima/Baixo/Esquerda/Direita. Especificamente, você pode mover membros para cima e para baixo, reordenar parâmetros e argumentos, mover instruções dentro de um bloco, mover instruções para fora ou dentro de um bloco, mover tags XML para cima e para baixo, bem como mover atributos XML para esquerda/direita e assim por diante.
Para ver a documentação de uma determinada classe, método/função ou outro símbolo diretamente no editor, posicione o sinal de intercalação em um símbolo de código e pressione Ctrl+Shift+F1. A documentação é exibida em uma janela pop-up com links clicáveis para outros recursos, em especial para a documentação da MSDN.
Insira ou exclua barras de comentários de qualquer bloco de código prontamente selecionando o bloco no editor e pressionando Ctrl+Alt+/ (para comentários de linha) ou Ctrl+Shift+/ (para comentários de bloco).
Também é possível usar Ctrl+Alt+/ para inserir ou excluir barras de comentários de uma linha de código no ponto em que o sinal de intercalação está localizado no editor caso nenhum código de bloco tenha sido selecionado. Nas mesmas circunstâncias, pressionar Ctrl+Shift+/ insere o comentário do bloco de abertura (/*
) e o comentário do bloco de fechamento (*/
) imediatamente antes e depois da posição do sinal de intercalação, ou remove o comentário quando o sinal de intercalação está dentro do bloco de código com barras de comentário.
O recurso "Extend Selection" ajuda a selecionar blocos de código de expansão sucessivamente. Ou seja, você pode selecionar facilmente qualquer expressão no código, posicionando o sinal de intercalação em qualquer lugar dentro dele e pressionando Ctrl+Alt+Direita algumas vezes. O recurso "Shrink Selection" funciona da maneira oposta e pode ser aplicado pressionando Ctrl+Alt+Esquerda.
Você também pode selecionar rapidamente o membro no qual o sinal de intercalação está inserido, ou mesmo seu tipo geral, pressionando Ctrl+Shift+[.
Quando você precisa digitar literais de string longos, o ReSharper o ajuda a dividi-los em várias linhas, adicionando as aspas e os caracteres extras necessários: enquanto o sinal de intercalação estiver dentro de um literal de string, pressione Enter ou Shift+Enter para dividir a string sem quebrar seu valor.
O ReSharper fornece um comando Colar especial que pode ser acessado pressionando Ctrl+Shift+V, que permite acessar o histórico da área de transferência e colar rapidamente qualquer um dos itens recentes copiados do Visual Studio para a área de transferência. O ReSharper começa a gravar os itens copiados no histórico da área de transferência assim que você inicia o Visual Studio, limpando o histórico no momento em que o Visual Studio é fechado.
Todos os atalhos de teclado fornecidos nesta página estão disponíveis no mapa de teclas "Visual Studio" padrão do ReSharper. Para obter detalhes sobre os dois mapas de teclas do ReSharper, consulte a Documentação do ReSharper.