Mostrando entradas con la etiqueta Haiku. Mostrar todas las entradas
Mostrando entradas con la etiqueta Haiku. Mostrar todas las entradas

sábado, 11 de noviembre de 2023

Atributos en Haiku (Parte 1) - Creando un gestor de Tareas simple

A diferencia que otros sistemas operativos, el sistema de archivos BeFS se maneja como si fuera una base de datos, es decir, que los programas y archivos pueden tener atributos, como si de campos de una tabla se tratase. En otros sistemas existen los atributos pero no se lleva tan al extremo como en Haiku, por ejemplo si un archivo es un ejecutable, si el usuario en cuestión tiene permiso de lectura/escritura, etc. Pero esta capacidad de Haiku va más allá.

En una entrada anterior vimos los atributos multimedia y en esta, veremos un ejemplo práctico, crearemos un GESTOR DE TAREAS usando archivos de texto y los atributos del sistema :-)

Lo primero que haremos es entrar en el programa "Tipos de Archivo" y añadiremos uno nuevo en el grupo "text" dejándolo tal que así.

He añadido la extensión .tsk (task) para que automáticamente se reconozcan estos archivos como una tarea.

Los campos son los siguientes (Todos tienen el checkbox de "EDITABLE" activado:

  • Finalizado: Booleano (SI/NO)
  • Fecha (Fecha/Hora)
  • Categoría (Cadena)

Una vez hecho esto creé una carpeta llamada "Tareas" en el HOME y tras esto, creé un archivo de texto, botón derecho sobre el archivo, add-ons, tipo de archivo y elegimos tarea. ¡Listo!

Ponemos la vista de lista detallada y hacemos clic derecho en los atributos, yo he quitado todos y dejado sólo los de las tareas y se ve tal que así. (Podemos navegar entre los atributos pulsándolos y moviéndonos hacia adelante con TAB y hacia atrás con MAYUS+TAB)

Como estos archivos son archivos de texto puedes añadir comentarios en su contenido, como por ejemplo hice yo en el de "Escribir entrada sobre Atributos"

Luego, para agilizar la creación de tareas, he copiado una tarea en blanco en el directorio: ~/config/settings/Tracker/Tracker New Templates


Así podremos crear una tarea simplemente haciendo clic con el botón derecho Menú NUEVO>>Nueva Tarea

Trabajar con los atributos es fácil y puede hacernos la vida más fácil aún en el uso diario, desde una base de datos de libros hasta una base de datos de alumnos de una academia.

En 5 minutos podemos hacer cosas interesantes usando los atributos, como podemos observar.

En la siguiente entrada crearemos un script de bash para añadir las tareas desde la terminal usando los comandos de la terminal para dicho fin y además, aprenderemos a indexarlos, para ver qué atributos se indexan y cuáles no para las búsquedas.

Un saludo!


sábado, 4 de noviembre de 2023

[Curiosidad] de BeInput a YOSHI

Tras la vuelta a Haiku-OS me daba pena haber perdido el script BeInput, con megaupload, iespana, bebits y haikuware caido lo daba por perdido puesto que no creí que nadie lo hubiera utilizado. Pero vamos a hacer arqueología, la idea de BeInput surgió tras preguntar si existía en Haiku algo como gtkdialog, dicha pregunta fue formulada en el grupo de correo de Haiku-OS en abril de 2009 tras probar éste en la distribución GNU/Linux incluída en el Acer Aspire One. 

 Me quedaba algo de pena no haber finalizado el script en condiciones y, para mi sorpresa y tras algún rato buscando en Internet, el día 9 de octubre encuentro (por total sorpresa) el script en el foro de YAB y me dedico a arreglar algunas cositas dejando en el ToDO establecer el título del botón y también determinar el tipo de ventana (Modal, resizable, etc.) pero existe desde 2016 YOSHI, que precisamente crea interfaces con YAB desde un script de BASH de forma mucho más completa puesto que podemos crear una interfaz de forma fácil, resumiendo un script de YAB de 100 líneas aproximadamente en uno de BASH de unas 20. Y no sólo crea una caja de texto; YOSHI puede crear checkboxes, listboxes, pestañas, menús, separadores, cargar imágenes, iconos, etc. Así que ya con lo que me falta por publicar, lo dejo lo más finalizado posible y empezar a usar YOSHI en mis pruebas.

El día 1 de noviembre buscando por los diferentes repositorios encuentro tinput, que según su descripción hace lo mismo que BeInput y como he dicho anteriormente no me gusta duplicar trabajo, como Jim Saxton (bbjimmy) es mantenedor de YAB pensé que si era un script de YAB creado por el mantenedor del lenguaje, podría compararlos y ver cómo lo ha hecho él (Y aprender algo de paso). Mi sorpresa fue mayúscula al abrir el archivo con StyledEdit: 
 #!yab 
 # Tinput 1.0 (c) 2015 
 # jim Saxton, Fat Elk Software 
 # based on BeInput by 
 # Tanausu Gomez Garcia (_-Caleb-_)
¡Lo había basado en BeInput! Esto significaba que BeInput le fue útil a alguien y lo mejoró, cosa de la que me siento extremadamente feliz. No sé si alguien se baja mis cosas y las usa pero esta es la primera prueba fehaciente de que al menos 1 persona lo había hecho y fue, precisamente con mi primer script de YAB (Y mi primera aportación a Haiku) en el que la versión original no sabía ni declarar un String en condiciones ni YAB funcionaba en condiciones. 

Todo lo que tenía pendiente de arreglar en BeInput lo había hecho él y mejorado en 2015 (Supongo que tras el mensaje del foro de YAB), conservando todo lo posible del código original. 
  • Ventana centrada independientemente de la resolución de pantalla.
  • Tipos de ventana seleccionable
  • Personalización del texto del título, botón y etiqueta
  • Capacidad de poner texto en 2 líneas
  • Mensaje de ayuda al iniciar el script sin argumentos
  • A parte de que el código era más limpio, incluyendo rutinas, etc.


 Al día siguiente entré al IRC, al canal oficial de YAB y se lo menciono a bbjimmy y desde luego le di las gracias por el script tinput, le comenté que yo había buscado BeInput y dado por perdido hasta hace poco y que lo había mejorado hasta ver su tinfo, a lo que me comenta que, ojo al dato: llevó esa idea al extremo en YOSHI. 

 Con esta curiosidad histórica, no sólo tengo la prueba de que le ha sido útil a alguien, si no que ese primer script malísimo con un código horriblemente tosco, como dije fue mi primera experiencia con Haiku sin virtualizar, mi primera aportación y desde luego, es importante mantenerlo vivo, o al menos online con fines históricos. 

Tras la publicación de esta entrada archivaré el proyecto en Codeberg (donde hace unos días también subí el script original con propósitos históricos y de preservación) y trabajaré con un repositoiro para tinput (Las mejoras, si hubiese alguna, partirán de ese proyecto). 

 Así que, las vueltas que da la vida, yo estoy dejando de lado BeInput para usar YOSHI porque es mejor concepto, más completo y mejor ejecutado y resulta que YOSHI fue creado porque a bbjimmy le agradó el concepto de BeInput y lo convirtió en lo que debía ser en un futuro. (Y en la idea original).

Espero que la lectura os haya sido grata, tanto como a mi, encontrarme con una cudiosidad de esta índole, puesto que es la primera vez que me ocurre. 

 Un saludo a todos.

viernes, 27 de octubre de 2023

[Píldora] Mejorar nuestra experiencia con Tracker



La experiencia con Tracker si vienes de otros gestores de archivos puede parecer 'tosca' al principio.

Para ello en esta entrada voy a comentar algunos detalles para mejorar la experiencia de usuario.

Se da por hecho que no has cambiado la tecla de control (ALT) para los atajos de teclado.

1 - Atajos de teclado

ALT + K                              Alinea los iconos.


MAYUSCULA+ALT+K        Ordena los iconos.


ALT + Y                              Reajusta la ventana para mostrar todos los iconos.


ALT + N                                         Crea un nuevo directorio.
OPT(Tecla Windows)+ALT+T       Abre una terminal en el directorio actual.
ALT + W                                        Cierra la ventana activa.

2 - Preferencias por defecto de la carpeta

Cada carpeta tiene una configuración determinada, pero podemos crear una plantilla 'por defecto' para todas las nuevas carpetas.

Sólo tenemos que abrir la carpeta /boot/home/config/settings/Tracker/DefaultFolderTemplate y crear nuestros ajustes, una vez hecho, todas las nuevas carpetas tendrán esa configuración. El tipo de vista y preferencias que uses en ese directorio serán los que se apliquen cuando se cree un directorio nuevo.


3 - Ocultar carpetas con . delante

En Haiku-OS no se usan las carpetas "ocultas" de GNU/Linux (Por ejemplo ~/.config para las configuraciones, es más, crear scripts y/o apps que usen esta carpeta está mal visto entre los desarrolladores y usuarios del sistema.

Si bien en las preferencias de Tracker se pueden ocultar marcando el checkbox correspondiente, lo más correcto es guardar las configuraciones en "~/config/settings/".




4 - Atributos
El sistema de archivo BeFS funciona como una base de datos, eso implica que se pueden añadir atributos extras a los básicos (Fecha de creación, moificación, etc.) En los archivos multimedia podemos añadir uno que, para los que tenemos un disco duro lleno de películas o música es brutal: "Valoración", podemos puntuar nuestras películas y/o música del 1 al 10 y podremos verlo reflejado en Tracker.


Para valorar un archivo multimedia lo haremos desde el Reproductor multimedia y para visualizarlo desde tracker, en vista de lista, clicando con el botón derecho en los atributos y marcando que se vean las valoraciones.

También existen atributos específicos para People y Mail hasta donde conozco.