Llevo más de un año intentando usar Emacs como IDE de C / C ++. Hasta ahora solo he tenido un éxito marginal, pero me he topado con algunas paredes de ladrillo en el camino. Actualmente estoy tratando de usar CEDET, pero me está costando entender cómo usarlo de manera efectiva.
Las características que busco en un IDE son las siguientes:
- Gestión de "proyectos" de software. Quiero que mi IDE tenga una idea de todos los archivos que componen mi proyecto actual para que pueda realizar funciones como buscar y reemplazar dentro de mi proyecto. (Sería bueno si también pudiera lograr esto sin ensuciar mi árbol fuente con muchos archivos de soporte. ¿Por qué necesito más de un archivo de proyecto centralizado por proyecto?)
- La capacidad de construir el proyecto actual desde el IDE, independientemente del búfer que estoy visitando actualmente. Necesito poder vincular una clave que construirá el proyecto actual.
- Error al reportar. No quiero tener que leer más de 500 líneas de salida para encontrar los errores que informaron las herramientas de compilación. Preferiblemente, los errores aparecen en su propio búfer con una línea por error.
- Una conciencia de los símbolos dentro del proyecto y dónde se definen. Quiero saltar a una definición de símbolo, ya sea que viva en mis archivos de proyecto o en los archivos de inclusión del sistema.
- Depuración visual Quiero tener una lista de observación de variables locales que se actualizan automáticamente a medida que paso por el código. Quiero poder establecer puntos de interrupción en el código, ver qué línea de código se ejecutará a continuación.
Sé que cada una de estas características existe porque he tenido cada una de ellas trabajando en un momento u otro usando EDE, Semantic, GDB, etc. El problema es que nunca he podido tener todas estas funciones funcionando al mismo tiempo , porque cada pieza generalmente debe configurarse por sí misma, y generalmente es demasiado trabajo descubrir cómo configurarlas todas a la vez y hacer que funcionen juntas.
¿Qué soluciones existen para convertir Emacs en un IDE C / C ++ con todas las funciones? ¿Siempre tiene que configurar todo poco a poco o hay una manera de configurar todas las funciones a la vez?
EDITAR: Una buena respuesta a esta pregunta no tiene que cumplir exactamente con los cinco criterios dados. Simplemente proporcioné la lista para dar una idea más concreta del tipo de características que quiero ver antes de considerar un IDE como "con todas las funciones". Es muy posible que CEDET cumpla con los requisitos, pero todavía tengo que encontrar un tutorial paso a paso que funcione sobre cómo configurarlo desde cero.