Como posso pular para a definição de classe / método no editor de texto Atom?

135

Existe uma maneira fácil de fazer isso? No Aptana, usei Control+ clique e gostaria que houvesse uma maneira de fazer algo semelhante no Atom.

Andrômeda
fonte
1
Atom, por si própria não tem esse recurso, você pode instalar alguns pacotes que lidar com isso atom.io/packages/navigate
IROEGBU
@iroegbu Tentei o pacote, mas ele não funciona conforme o esperado e esse negócio de 'clique duplo para ir para a definição' também não é garantido, porque às vezes você simplesmente deseja selecionar algum nugget de código e o que ele faz é pular para um novo arquivo sem a opção de voltar (f3 não funciona).
precisa
1
Não uso Atom, você pode querer verificar para fora discuss.atom.io/t/is-there-a-simple-go-to-definition/11809
IROEGBU
Obrigado @iroegbu, definitivamente verei a página para ver o que aparece.
precisa

Respostas:

75

Eu tive o mesmo problema e atom-goto-definition (nome do pacote goto-definition ) funcionou como charme para mim. Por favor tente uma vez. Você pode fazer o download diretamente do Atom.

Este pacote está obsoleto. Por favor, verifique no Github.

Sitam Jana
fonte
1
Eu posso confirmar que isso funciona. Obrigado. A chave padrão de ligação é CTRL + ALT + ENTER
andromeda
3
Este é o único pacote que funciona em um projeto um pouco maior. Obrigado! Eu tentei Atom-ctags, símbolo-get, Goto pacotes e nenhum deles funcionou :-( Ou causado acidente átomo ou levou muito tempo..
Mi-La
Isso é bem lento, mas funciona. Meu projeto é pequeno, então eu realmente não acho que isso será bem dimensionado.
davegallant 31/01
50
Qual é a alternativa para este pacote obsoleto?
91818 Steven Shaw
1
autocomplete-python
Raj
32

Acredito que o problema com os pacotes "ir para" é que eles funcionariam de maneira diferente para cada idioma.

Se você usa Javascript, js-hyperclick e hyperclick (como os links de código foram descontinuados) podem fazer o que você precisa.


Use o symbols-viewpacote que permite a sua pesquisa e pule para a declaração de funções, mas apenas do arquivo aberto atual. Infelizmente, não conheço o equivalente de nenhum outro idioma.

Há também outro pacote que pode ser útil para acessar no Python: python-tools

Em maio de 2016, a versão recente do Atom agora suporta "Go-To" nativamente . No repositório do GitHub para este módulo, você obtém uma lista das seguintes chaves:

  • symbols-view:toggle-file-symbolspara Mostrar todos os símbolos no arquivo atual
  • symbols-view:toggle-project-symbolspara Mostrar todos os símbolos no projeto
  • symbols-view:go-to-declarationa Ir para o símbolo sob o cursor
  • symbols-view:return-from-declarationpara retorno do salto

captura de tela

Agora só tenho uma coisa faltando no Atom para isso: ligações de clique do mouse. Existe um problema em aberto no Github se alguém quiser seguir esse recurso.

cortopia
fonte
Obrigado, @corpy code-links parece uma boa idéia para js e vou experimentá-lo. Eu tive que me ajustar a um fluxo de trabalho que não inclui esse recurso, já que codifico principalmente em php.
andromeda
Eu não saberia sobre pacotes php. E isso pode ser um tiro no escuro, mas você já tentou símbolos-exibição em árvore ? Certamente não é o que você queria, mas pelo menos ele daria algum visual de navegação mais fácil se suas classes PHP / arquivos são longos
cortopy
Muito apreciado. Vou dar uma olhada e ver o que tem para oferecer.
andromeda
Você pode encontrar símbolos de arquivos de trilhos (.erb)?
Albert Català
python-tools funciona absolutamente bem para python [testado]. Instale usando este comando apm install python-tools. após a instalação, reinicie o seu editor atom e ele funcionará (por exemplo, ctrl + alt + g).
Kevin Patel
17

Eu também tive o mesmo problema. E eu acho a solução:

CTRL+ALT+G

Atualizar:

Graças ao @Joost, instale o pacote Atom python-tools para fazê-lo funcionar

Q-bart
fonte
15
Em 11 de julho de 2016, este comando parece não fazer nada.
fang Chen
Essa combinação inicia o Styleguide of Atom, que mostra todos os componentes da interface do usuário usados ​​no Atom. É útil como referência ao desenvolver temas e pacotes.
Javi Ps
Ctrl + Shift + g executam o Styleguide, Ctrl + Alt + g parece não fazer nada.
Pablo A
3
Só para você se perguntar de onde isso vem, CTRL+ALT+Gestá a ligação de chave padrão goto:definitionno python-toolspacote atom.
Joost
Você também precisa ter o Python instalado em sua máquina para python-toolso trabalho
BugShotGG
12

A funcionalidade já está presente no atom através do pacote Symbols View, que você não precisa instalar nada.

O comando que você está procurando é exibição de símbolos: vá para declaração (pule para o símbolo sob o cursor), que é vinculado por padrão a cmd-alt-down no macOS e ctrl-alt-down no Linux.

apenas observe que ele funcionará apenas se você tiver gerado tags para o seu projeto, através deste pacote ou via ctags ( exuberante ou não)

Edoardo
fonte
1
Por padrão, no Linux, você obtém o Emacs ctag. Como foi dito aqui para executar o pacote de instalação real (considerando isso e este parece o Atom usado atualmente). ctagsexuberant-ctags
Pablo A
4
" ctrl-alt-down no Linux" - Ótima escolha de teclas, não é como se isso fosse usado para se mover nas áreas de trabalho. Maldito átomo, por que tão complicado. : - \
Daniel
7

Esse recurso foi incorporado ao editor Atom (consulte: symbols-viewpackage ), mas você precisa gerar o arquivo de símbolos ctags para o seu projeto GH-9 , GH-20 .

Para fazer isso, instale o ctagscomando (por exemplo, brew install ctagsno macOS) e, em seguida:

  1. Anexe, vincule ou copie ctags-configpara o seu ~/.ctagsexemplo no macOS:

    ln -vs "$(find /Applications/Atom.app -name ctags-config -print -quit)" ~/.ctags
    
  2. Vá para a pasta do seu projeto e execute:

    cd your/project/directory
    ctags -R .
    
  3. Reinicie o editor Atom.


Como alternativa, você pode usar o symbol-genpacote para gerar o arquivo de símbolos ctags para o seu projeto com base nas opções encontradas no .ctagsarquivo. Você pode instalá-lo do Atom Package Manager por: apm install symbol-gen. Em seguida, pressione CMD- Alt- Gpara gerar o arquivo de tags para o seu projeto.


Depois de seguir acima, você pode usar a opção Ir para declaração no menu de contexto.

No macOS, você também pode usar os seguintes atalhos de teclado:

  • CMD- Rpara pular para uma função / método no editor atual
  • Alt- CMD- Downpara ir para a declaração.
kenorb
fonte
4

Para resolver isso, você precisará instalar apenas 2 pacotes. Siga os passos abaixo.

  1. Abra o atom, vá para Packages (barra superior) -> View Settings -> Install Packages / Themes .

  2. Digite "goto" no campo de pesquisa e clique no botão de pacotes à direita.

  3. Instale as versões "goto (1.8.3)" e "goto-definition (1.1.9)" ou posterior. Verifique se os dois estão ativados após o download.
  4. Se necessário, você pode reiniciar o atom (para algumas pessoas).
  5. Deve poder trabalhar agora. Clique com o botão direito do mouse no método / attr / qualquer coisa e selecione "Goto Definition"
Allan Mwesigwa
fonte
2

Confira o pacote goto :

Este é um substituto para o pacote de exibição de símbolos interno do Atom, que usa os arquivos de sintaxe do próprio Atom para identificar símbolos em vez de ctags. O projeto ctags é muito útil, mas nunca vai acompanhar todas as novas sintaxes Atom que serão criadas à medida que o Atom cresce.

Comandos:

  • cmd-r - Ir para símbolo de arquivo
  • cmd-shift-r - Ir para o símbolo do projeto
  • cmd-alt-down - Declaração de Goto
  • Índice de reconstrução
  • Invalidar índice

Link aqui: https://atom.io/packages/goto (ou pesquise "goto" no instalador do pacote)

Abram
fonte
1

Use atom-ctags como um pacote para a linguagem C com tudo que você precisa:

  • Ctags geradas para o seu projeto. Autocompletar.
  • Vá para a declaração: Ctrl+ Alt+ Downe Alt+ Clique por padrão.
  • Existem opções personalizáveis ​​para a ação Clique.
Aleksandr Fadeev
fonte
Não podemos retornar à declaração usando Alt + Clique com o Botão Direito?
user1519240
Você pode retornar, mas para retornar, você deve ir a algum lugar antes de tudo. Depois de fazer "Alt + Click", você pode retornar com "Alt + Left Click", é claro. E então "Alt + Clique com o Botão Direito" para "retornar" para a frente.
Aleksandr Fadeev
Se você tentar este pacote e, em seguida, removê-lo lembre-se de também reativar símbolos-view: apm enable symbols-view.
Pablo A
1

Desde novembro de 2018, o pacote autocomplete-python oferece essa funcionalidade com esta combinação de teclas:

Ctrl+ Alt+G

com o cursor do mouse na chamada de função.

gccallie
fonte
0

Aqui estão os atalhos para mac e windows:

Para Mac: comando + G

Para Windows: CTRL + ALT + G

Dinesh Bhatia
fonte