[TOOLS] [IDE] Entornos IDE para Bennu

Started by SplinterGU, August 19, 2008, 04:22:43 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

DCelso

Lee un txt que viene dentro del rar. hay que eliminar un programa que también usa la extensión "*.prg" para sus programas.
O puedes cambiar la sintaxis en la opcíon del menú llamada "ver-cambiar sintaxis" y elegir la última.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Deschamps

#31
Quote from: izubiaurre on April 07, 2009, 02:56:40 PM(..) "Atajos de inserción de trozos de código pre-tipeados". ¿Me lo puede explicar cómo funciona esto y para qué puede servir? (..)

Es lo que se llama en algunos lados "plantillas de código" o code snippets. La idea es que aquellas líneas de código que uses con frecuencia puedan quedar almacenadas en una biblioteca, de manera que con una combinación de teclado se inserte automáticamente en el documento ese código, situando incluso el cursor donde interese, y añadiendo otras funconalidades, según el editor. Yo las uso con frecuencia en Code::Blocks y cuando uno se acostumbra a ellas, ahorra bastante tiempo, o al menos gana en comodidad.

Deschamps

Quote from: osk on November 13, 2008, 01:35:05 AM(..) aquí os paso un archivo (bennugd.lang) de especificación de resaltado de sintaxis para poder programar en Bennu con el Gedit del GNOME. Simplemente lo tenéis que copiar en /usr/share/gtksourceview-2.0/language-specs (..)

Una preguntilla: Con el compilador no hay problema, pero... ¿cómo debería definir una herramienta externa en gedit para que inicie el intérprete (bgdi) con el documento actual? Es que no doy con la manera de montar un script bash que elimine la extensión (.prg) de $GEDIT_CURRENT_DOCUMENT_NAME y tengo que llamarlo cada vez desde una consola.

SplinterGU

name=`echo $GEDIT_CURRENT_DOCUMENT_NAME | sed 's/.prg//g'`
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

josebita

Si lo he entendido bien, otra forma puede ser:

name=$(basename $GEDIT_CURRENT_DOCUMENT_NAME .prg)

SplinterGU

je, cierto, habia probado primero con basename, pero no me acordaba del 2do parametro... es mas, creo que lo utilice en algun script que subi por aca...

esa es la que hay que usar, la que dice josebita...

gracias...
Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Deschamps

Gracias a ambos por las respuestas :) Eso sí que es velocidad  :D

Creo que me precipité preguntando porque revisé después algo que ya tenía por ahí y me dio las pistas. Finalmente lo dejé así:

#!/bin/bash

FICHERO=`echo $GEDIT_CURRENT_DOCUMENT_NAME`
NOMBRE=`echo ${FICHERO%.*}`
echo "Compilando e interpretando: $FICHERO"
bgdc $FICHERO
bgdi $NOMBRE


De todos modos, tomo nota de la propuesta de josebita para utilizar basename.
Gracias de nuevo!

Deschamps

Hola de nuevo!

Ando leyendo mucho estos días por el wiki y el foro:) Y tengo preparadas algunas dudas que ya iré posteando, pero de momento voy documentándome y haciendo mis pinitos en este mundo que es completamente nuevo para mí. Pero a lo que iba, que me disperso...

En relación a los IDE's y sucedáneos, he leído por algún otro hilo que se ha intentado integrar BennuGD con Code::Blocks pero que quedó la cosa parada. Yo hace mucho que uso este IDE (como ya comenté, todos mis desarrollos han sido básicamente con C/C++, y C::B es para mí de lo mejor que se ha parido para ese propósito) y el hecho de ser multiplataforma y opensource hace que sea mi opción preferida, sin querer desmerecer Notepad++ y GEdit, que son otras alternativas impresionantes.

El caso es que trasteando la definición de lenguaje publicada por Osk para GEdit (gracias, por cierto, funciona de perlas) no me ha llevado más que unos minutos incorporar a C::B un lexer específico para BennuGD (aunque hay que depurarlo bastante, pero como inicio cumple su función), y añadiendo un par de herramientas (menú Tools) para compilar y arrancar el intérprete... ya se tiene un entorno operativo (al estilo del Notepad++ tuneado del Pack), con todas las maravillas que ofrece C::B de serie:


Pero esto es sólo un "apaño" bastante artesano. Mi pregunta es: ¿Hay alguien intentando integrar el compilador de BennuGD en Code::Blocks? Porque de ese modo, se podrían incorporar plantillas (templates) de proyectos y utilizar los menús standar para compilar, etc, como con cualquier otro de los compiladores soportados. Yo conozco medianamente las entrañas de C::B (de hecho, he desarrollado algún que otro plugin para él), pero lo tengo algo oxidado, porque hace mucho que me limito a compilar las revisiones actualizadas desde sus repositorios sin "tunear" su código fuente. Aún así, podría colaborar si alguien ha iniciado algo parecido o se animara a ponerlo en marcha.

Un saludo.

osk

Ostras, qué guay sería conseguir esto que dices. Lo siento, yo no tengo ni idea, pero si se logra conseguir que CodeBlocks (aparte de Notepad++ o Gedit) sea un editor recomendable para Bennu, habríamos hecho un gran paso adelante, creo.

Incluso pienso que se podría hacer un BennuPack para Windows tal como está más o menos, y un BennuPack para Linux cambiando alguna cosilla como por ejemplo precisamente el editor elegido, que podría ser perfectamente Code:Blocks (y/o alguno más)...
Gracias!!

SplinterGU

Download Lastest BennuGD Release: http://www.bennugd.org/node/2

Deschamps

Gracias por los comentarios, pero lo que he hecho es apenas nada.

Una de las cosas que más me gustan de Code::Blocks es que es extremadamente configurable, y lo que muestran las capturas no son más que el resultado de crear un par de lo que se denominan "herramientas" (que es algo casi idéntico al concepto de herramienta externa en Gedit), además de una llamada con comandos personalizados para compilar el fuente (pestaña "Advanced" en las propiedades del fichero), de manera que la salida del compilador se "integre" en la pestaña de mensajes, lo que permite acceder por ejemplo a las líneas con warnings o errores con un simple doble clic:


Por lo demás, lo único "descargable" que habría por el momento sería la definición de lenguaje usada por el resaltador de código (que también posibilita el autocompletado, como se ve en la imagen anterior), pero es tan primitiva la definición actual (apenas un copy/paste de las palabras clave que saqué del archivo de Osk) que le daré un lavado de cara en estos días para que sea presentable de manera podáis descargarla (usarla es tan simple como copiarla en la carpeta correspondiente).

Pero lo suyo sería integrar BennuGD en C::B, de manera que pueda configurarse la construcción standar de los proyectos con los cuadros de diálogo (incluyendo los flags de bgdc como casillas seleccionables, etc) y resto de herramientas (por soñar... gdb, por ejemplo). Pero no sé si podría ser muy complicado. Le echaré un vistazo y comento lo que vea. Pero preguntaba por si alguien anda ya metido en ello... por aquello de no hacer lo mismo dos veces.

Un saludo.


josebita

No es poco, cuando tengas algo usable, súbelo a algún lado y subo esto y el resaltador de sintaxis para gedit a mi ppa.

Sandman

Great job! I too am a very content Code::Blocks user and would *love* to use this plugin; hope it gets done.

I have one question: I see you added "BEGIN" and "begin" as keywords, but I tend to use "Begin". Will this cause me headaches? I mean, will it keep suggesting those two or could I add "Begin" to it? Perhaps this could be a setting in the future.

Thanks!

==== Translator ===

Great job! Yo también soy muy contenido Code::Blocks de usuario y el *amor* para utilizar este plugin, espero que se hace.

Tengo una pregunta: Veo que añade "BEGIN" y "begin" como palabras clave, pero tienden a utilizar "Begin". ¿Esto me causa dolores de cabeza? Quiero decir, ¿se sugiere mantener las dos o podría añadir "Begin" a ella? Tal vez esto podría ser un ajuste en el futuro.

Gracias!
-- Sandman

DCelso

I think that the solution is allow case insensitive for all keywords.
Monstruos Diabólicos

"A PAck of classic GAMEs For BennuGD" en desarrollo
http://code.google.com/p/apagame4be/

Deschamps

Quote from: Sandman on June 02, 2009, 07:28:11 PM(..) I see you added "BEGIN" and "begin" as keywords, but I tend to use "Begin". Will this cause me headaches? I mean, will it keep suggesting those two or could I add "Begin" to it? Perhaps this could be a setting in the future (..)

Well. I've started with BennuGD four days ago :) and I still haven't found language specifications in regards to keywords capitalization, so that I decided to include both (upper and lower case words) for the C::B BennuGD lexer as an start point. In Code::Blocks you can select (Settings/Editor/Code Completion.../Case sensitive matches) if you want to find any match writing "Begi" (starting with uppercase) but it could be completed only with those words already added to the lexer.

So, I think that it could be great defining those related language "standards" if it has any importance, or assuming one criterion as the reference code styling, at least. But I've not read about it (more time needed :))

Regards.

------------------------------------------------------

Español: Bueno, he empezado con BennuGD hace apenas cuatro días, y aún no he encontrado ninguna especificación sobre el lenguaje, en lo que se refiere a la "capitalización" para las palabras clave, de modo que he decidido incorporar ambas versiones (mayúsculas y minúsculas) para la definición de lenguaje en Code::Blocks. En este IDE puedes configurar (Settings/Editor/Code completion.../Case sensitive matches) si quieres encontrar coincidencias pero serán completadas sólo con las palabras añadidas a la definición.

Así, creo que estaría genial definir algún tipo de estándar relacionado con ese tema (si es que tiene importancia) o al menos asumir un criterio como referente para el estilo de programación. Pero aún no he leído sobre ello (necesito algo más de tiempo :)).

Un saludo.