Há mais de um ano, eu uso o Emacs como um IDE C / C ++. Até agora, tive apenas um sucesso marginal, mas encontrei algumas paredes de tijolos ao longo do caminho. Atualmente, estou tentando usar o CEDET, mas estou tendo dificuldades para entender como usá-lo de forma eficaz.
Os recursos que estou procurando em um IDE são os seguintes:
- Gerenciamento de "projetos" de software. Quero que meu IDE tenha uma noção de todos os arquivos que compõem meu projeto atual, para que eu possa executar funções como pesquisar e substituir dentro do meu projeto. (Seria bom se eu também pudesse conseguir isso sem encher minha árvore de origem com muitos arquivos de suporte. Por que preciso de mais de um arquivo de projeto centralizado por projeto?)
- A capacidade de criar o projeto atual a partir do IDE, independentemente do buffer que estou visitando no momento. Eu preciso ser capaz de vincular uma chave que criará o projeto atual.
- Relatório de erros. Não quero ter que ler mais de 500 linhas de saída para encontrar os erros que foram relatados pelas ferramentas de compilação. De preferência, os erros aparecem em seu próprio buffer com uma linha por erro.
- Uma conscientização dos símbolos dentro do projeto e onde eles são definidos. Quero pular para uma definição de símbolo, esteja ele nos meus arquivos de projeto ou nos arquivos de inclusão do sistema.
- Depuração visual. Quero ter uma lista de observação de variáveis locais que são atualizadas automaticamente à medida que passo no código. Eu quero poder definir pontos de interrupção no código, ver qual linha de código será executada a seguir.
Sei que cada um desses recursos existe porque já trabalhei cada um deles usando EDE, Semântica, GDB, etc. O problema é que nunca consegui ter todos esses recursos funcionando ao mesmo tempo. , porque cada peça geralmente precisa ser configurada sozinha e geralmente é muito trabalho descobrir como configurar todas elas de uma vez e fazê-las trabalhar juntas.
Quais soluções existem para transformar o Emacs em um IDE C / C ++ completo? Você sempre precisa configurar tudo aos poucos ou existe uma maneira de configurar todos os recursos de cada vez?
EDIT: uma boa resposta a esta pergunta não precisa atender exatamente todos os cinco dos critérios fornecidos. Simplesmente forneci a lista para fornecer uma idéia mais concreta do tipo de recursos que gostaria de ver antes de considerar um IDE "completo". É bem possível que o CEDET se encaixe na conta, mas ainda preciso encontrar um tutorial passo a passo sobre como configurá-lo do zero.