Ver Mensaje Individual
  #1  
Antiguo 28-09-2015
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Reputación: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
Lightbulb IDE sin nombre

No es por desmerecer el excelente trabajo de nuestro querido Dec; al contrario. Sin embargo nunca se va a poder contentar a todo el mundo (creo que Woody Allen dijo que “La forma más segura de fracasar es intentar contentar a todo el mundo” o algo así), así que aquí ando en ello.

Hace ya años que llevaba pensando, y hace como dos programé un prototipo, una cosa pequeña. Lo llamé “edit” y llevo desde entonces usándolo de vez en cuando. Me gusta bastante y creo que tiene potencial, pero me cuesta mucho ponerme a añadirle todo lo que había planeado. Principalmente porque he estado haciéndolo con poca planificación por mi parte, pero también porque algunas cosas me parecen muy grandes y me abruma, a pesar de que creo que podría hacerlas sin problema.

Dado lo que estoy trabajando ahora con Gesbit, Allegro.pas y más proyectos laborales, veo que necesito terminarlo. Es una necesidad real, porque ni Vim ni Lazarus, que con todas sus virtudes y defectos es lo que más uso, hacen todo lo que necesito de la forma que lo necesito, y Small Edit no termina de encajarme. No voy a convenceros de que dejéis de usar Small Edit o lo que sea que uséis, ¡ni hablar! Simplemente necesito apoyo moral para terminar mi proyecto estando seguro de que es lo suficientemente distinto y útil como para merecer la pena el esfuerzo.

La idea que tengo es que sea un IDE completo:
  • Gestión de proyectos.
  • Múltiples lenguajes, con posibilidad de añadirnuevos manualmente.
  • Compilación y ejecución, posiblemente también depuración (vía GDB, por ejemplo). Evidentemente variará con el tipo de proyecto. Por ejemplo, si es Pascal compilar, si es PHP, abrir el navegador, etc.
  • Modo de edición Vim ó múltiple (Vim, ISO, IBM...). Lo ideal: que sea programable y de esta forma se elija o cree a discreción.
  • Plantillas de archivos y proyectos, con posibilidad de añadir más.
  • Evidentemente, extensiones.
Os enseño cómo está ahora:

A la izquierda, lista de directorios y archivos (no muestra todos, sólo aquellos que el editor “entiende”), a la derecha, lengüetas con los archivos abiertos hasta el momento. El menú contextual muestra las acciones disponibles para los directorios y archivos. Por desgracia, ahora mismo los directorios no se pueden renombrar ni borrar ya que necesita un trabajo extra, pero lo hará.


Configuración del “Proyecto”.


Configuración del “Entorno”. Lo de “Guardar automáticamente al perder el foco” significa que si cambiamos a otra aplicación, el editor guarda cualquier archivo que tenga la marca “modificado”. Acelera mucho el trabajo, aunque a veces pueda dar problemas al sobreescribir algo. Y no funciona siempre, por ejemplo, al menos en mi Linux, no guarda los archivos si cambias de tarea usando Alt-Tab.


También, e independientemente de la configuración, puede mostrarse y ocultarse la barra de menú pulsando F10, por lo que nunca se pierde.

La lista de lenguajes que "entiende", por ahora, son: Batch (MS-DOS), C/C++, CSS, HTML, INI, Java, Object Pascal, PHP, UNIX shell script, SQL y XML. Podría añadir fácilmente JavaScript, Perl, archivos de diferencia (diff), TeX, Python, VisualBasic y po (i18n), pero o bien no estaban disponibles la última vez que compilé (creo que es el caso de JavaScript), o no me apeteció en su momento (creo que esta fue la razón de no añadir VB, Python ni Perl).

Lo que me estoy planteando es rehacer usar una versión nueva que he hecho de mi BAScript. Es decir, hacer una base mínima con Lazarus y que toda la funcionalidad se haga usando BAScript. La idea detrás de esto es eso permitiría que el IDE se adaptara fácilmente al proyecto añadiendo o modificando funcionalidades mediante scripts.

¿Qué os parece?
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita