Experimente M-x occur RET exp RET
- lista em um novo buffer todas as ocorrências do exp
no buffer atual.
Eu tenho usado um editor pouco conhecido chamado "FTE" (ou eFTE) por anos; tem um utilitário legal que pode exibir a lista de sub-rotinas / funções / classes (ou qualquer coisa assim - dependendo do que regexp você definir em seu arquivo de configuração) em um arquivo de texto fonte (C, C ++, Fortran, ... o que você tem). Esta função permite-me saltar rapidamente de um ponto para outro em um arquivo de origem. Talvez o atalho original em FTE seja ^I
(Control + I). O emacs tem uma funcionalidade semelhante? O Emacs é muito mais avançado que o FTE e eu ficaria surpreso se ninguém jamais desenvolvesse uma instalação desse tipo.
Obrigado Wirawan
Experimente M-x occur RET exp RET
- lista em um novo buffer todas as ocorrências do exp
no buffer atual.
A maioria das pessoas, é claro, dirá para você usar apenas um IDE moderno, mas eles não entendem o poder de% código%. Pessoalmente, eu uso ECB que faz com que meu emacs
seja assim:
Ajaneladomeionoladoesquerdoéalistadefunçõesdoarquivodeorigematual.Clicandonomeioonomemoveocursorparaadefiniçãodafunção.
Parainstalar,sigaasinstruçõesnositedoBCEparainstalaroECBe,emseguida,adicioneestalinhaaoseuemacs
(alterandoalocalizaçãodeacordo):
(add-to-list'load-path"~/.emacs-lisp/ecb/")
Outra opção é o CEDET , mas eu não o usei.
O Emacs possui algumas maneiras de obter essa funcionalidade.
O método do peso mais leve é feito por meio das tags , que, com a personalização adequada, podem servir à maioria das finalidades. Depois de criar um arquivo de tags (que é feito em um shell, por exemplo, cd /path/to/project; ctags -e -R .
) e selecioná-lo via M-x visit-tags-table RET /path/to/TAGS RET
, você pode, por exemplo, usar M-.
em uma chamada de função para ir para a definição de função , M-x tags-search
para percorrer os arquivos descritos na tabela de tags, & c. Consulte a página vinculada para uma descrição bastante detalhada das ferramentas disponíveis.
O método de maior peso é feito por Semântica , um léxico / analisador combinação implementada inteiramente no Emacs Lisp. Embora eu não esteja tão familiarizado com o Semântico quanto com as tags, a impressão que tenho é de que o Semantic incorre em um fardo de configuração inicial mais pesado, em troca de um resultado geralmente mais útil. Além da página de manual vinculada, (o artigo do Wiki Emacs) [ link pode ser uma ajuda adicional aqui
Use Imenu :
M-X imenu
tab
, All.Methods
tab
para ver todos os métodos Você disse "exibir a lista das sub-rotinas / funções / classes (ou qualquer coisa assim - dependendo de qual regexp você definir em seu arquivo de configuração) em um arquivo de texto de origem". Ignorando a parte em parêntesis no momento, à qual outros responderam, não está claro o que você quer dizer com uma função etc. sendo " em " um arquivo de origem.
Se você estiver perguntando sobre ver uma lista das funções, etc., que estão definidas em um determinado arquivo de origem, navegando entre suas definições, consulte Imenu
no Emacs. Veja o manual do Emacs, nó Imenu
. Veja também esta página EmacsWiki sobre Imenu :
Tags emacs source-code text-editors