Primeros pasos e interfaz
Introducción
blunderDB es un programa para crear bases de datos de posiciones de backgammon. Su principal fortaleza es ofrecer un único lugar donde agregar las posiciones que un jugador ha encontrado (en línea, en torneos) y poder reestudiarlas filtrándolas según diversos filtros combinables de forma arbitraria. blunderDB también puede usarse para crear catálogos de posiciones de referencia.
Las posiciones se almacenan en una base de datos representada por un archivo .db. La aplicación de escritorio abre este archivo directamente, nunca una dirección de red: el modo servidor es otro modo del mismo binario, y se pasa de uno a otro exportando o migrando la base, no apuntando la aplicación hacia una URL.
Interacciones principales
Las principales interacciones posibles con blunderDB son:
añadir una nueva posición,
modificar una posición existente,
copiar la imagen del tablero al portapapeles (PNG) mediante CTRL-X, o con el análisis completo mediante CTRL-X CTRL-X,
eliminar una posición existente,
buscar una o varias posiciones,
importar partidos desde diferentes fuentes (XG, GNUbg, BGBlitz, Jellyfish, HedgeHog), incluidos los comentarios de los archivos XG,
navegar por las jugadas de una partida importada,
organizar las posiciones en colecciones,
organizar las partidas en torneos.
El usuario puede etiquetar libremente las posiciones mediante etiquetas y anotarlas con comentarios.
Descripción de la interfaz
La interfaz de blunderDB se compone, de arriba abajo, de:
[arriba] la barra de herramientas, que reúne todas las principales operaciones que pueden realizarse sobre la base de datos,
[en el centro] la zona de visualización principal, que permite mostrar o editar posiciones de backgammon,
[abajo] la barra de estado, que presenta diversa información sobre la base de datos o la posición actual, e integra la línea de comandos.
Pueden mostrarse paneles para:
mostrar los datos de análisis asociados a la posición actual procedentes de eXtreme Gammon (XG), GNUbg o BGBlitz,
mostrar, añadir o modificar comentarios,
buscar y filtrar posiciones según criterios combinables,
mostrar y gestionar las colecciones de posiciones (panel de colecciones),
mostrar la lista de partidas importadas y navegar por las jugadas de una partida (panel de partidas),
mostrar y gestionar los torneos (panel de torneos),
mostrar las estadísticas de rendimiento (panel Stats),
calcular el EPC (Effective Pip Count) de una posición de bearoff (panel Eval),
entrenarse con ejercicios de cálculo (panel Entrenamiento),
estudiar las posiciones mediante repetición espaciada (panel Anki),
transcribir un partido a mano (panel Transcripción),
ver los metadatos de la base de datos (panel Metadatos).
La altura del panel se ajusta arrastrando su asa; es la misma de una pestaña a otra.
Pueden mostrarse ventanas modales para:
mostrar la ayuda de blunderDB, cuyo campo de búsqueda (/ coloca en él el cursor) selecciona las apariciones del texto introducido, sin distinguir mayúsculas ni acentos (ENTRAR pasa a la siguiente, MAYÚS-ENTRAR a la anterior),
mostrar el catálogo de visitas guiadas (ver Visitas guiadas y base de ejemplo),
configurar la exportación de la base de datos,
configurar blunderDB, en particular el idioma de la interfaz (véase Configuración).
La zona de visualización principal pone a disposición del usuario:
un tablero para mostrar o editar una posición de backgammon,
el nivel y el propietario del cubo,
el pip count de cada jugador,
la puntuación de cada jugador,
los dados a jugar. Si no se muestra ningún valor en los dados, la posición de los dados indica qué jugador tiene el turno y que la posición es una decisión de cubo. Cuando la decisión de cubo es una respuesta a un doblaje (aceptar/pasar), el cubo propuesto se muestra en el centro del tablero, con el valor ofrecido.
El portapapeles es el gesto corriente; guardar es la otra necesidad — la ilustración de un artículo, de un mensaje de foro, de una lección. El SVG se ofrece porque el tablero lo es: es la forma que sobrevive a una ampliación, la que se pone en un documento sin desenfocarla. El PNG deriva de él, igual que la copia al portapapeles: un solo renderizado, tres destinos, así que ninguno puede divergir de los demás. Este menú no aparece en el panel Eval ni en el panel Búsqueda, donde el botón derecho ya sirve para poner las fichas del otro color. Véase Llevar una posición al panel Eval para llevar una posición al panel Eval.
La barra de estado está estructurada de izquierda a derecha con la siguiente información:
la línea de comandos, accesible pulsando la tecla ESPACIO,
un mensaje informativo relacionado con una operación realizada por el usuario,
el índice de la posición actual, seguido del número de posiciones en la biblioteca actual (o la información de jugada/partida al navegar por un partido),
el contador de la biblioteca — «412 posiciones · 38 blunders · 5 partidos» — donde cada número abre lo que cuenta: las posiciones, la búsqueda
E>con el umbral de la biblioteca (lanzada al instante, como si se hubiera escrito, y guardada en el historial de búsquedas), o la lista de partidos. Cuando la lista en pantalla no es toda la biblioteca (búsqueda, colección, partido), la cifra de blunders se escribe «12 / 340 blunders»: los blunders de esa lista, luego los de la biblioteca, con el mismo umbral; una lista de más de 20 000 posiciones no se cuenta y conserva solo el total. Una cifra que no se puede seguir es una decoración. El umbral de los blunders es el de la biblioteca, ajustado en la pestaña Biblioteca de la configuración y compartido con las estadísticas: dos umbrales harían decir dos cosas a la misma palabra. El contador promete exactamente lo que abre su enlace, incluso para una posición jugada de varias maneras, que vale su coste más elevado. En una biblioteca muy grande (más de 200 000 filas) el contador no recorre las tablas: un número precedido de «≈» es una estimación (una cota superior, pues las filas eliminadas dejan huecos). Si las posiciones son estimadas, el número de blunders, que no tiene una estimación honesta, es la última cuenta exacta, conservada mientras ninguna escritura pueda cambiarla. Tras una importación o una modificación aparece como «?» mientras se hace una nueva cuenta en segundo plano, y luego vuelve por sí solo; una biblioteca abierta en solo lectura no vuelve a contar y conserva «?» hasta que la instancia que escribe en ella haya rehecho la cuenta. El enlace lanza la búsqueda, que da la cuenta exacta. Los dos números de blunders son enlaces distintos: el primero lanza la subbúsquedass E>en la lista en pantalla, el segundo la búsqueda en toda la biblioteca; cuando solo se muestra el total, hay un único enlace.
Nota
En el caso de posiciones resultantes de una búsqueda del usuario, el número de posiciones indicado en la barra de estado corresponde al número de posiciones filtradas.
La pestaña Anki lleva una insignia cuando hay tarjetas por repasar, en todos los mazos. Esa cifra es la razón de abrir la pestaña; no tiene nada que hacer detrás de ella. Cero no muestra nada: una insignia que dice «0» es ruido.
El comando log abre el registro de actividad: las últimas doscientas líneas del archivo de registro, un botón para copiarlas — lo necesario para adjuntar un informe a un aviso — y otro para abrir la carpeta que las contiene. El registro no se filtra ni se reformatea: un registro que se embellece es un registro que ya no se puede citar.
El comando grid abre la hoja de contactos: la lista recorrida — resultados de una búsqueda, biblioteca, colección — como una cuadrícula de minitableros, dibujados como el tablero, en páginas de veinticuatro. Se abre en la página de la posición actual, cuya miniatura aparece enmarcada; un clic o INTRO sobre una miniatura abre su posición en el tablero y cierra la hoja, y se recorre por completo con el teclado (véase Hoja de contactos). No se abre ni en modo edición ni en un match, que se recorre por sus jugadas.
En el historial de búsquedas del panel Búsqueda, cada token de un comando guardado se muestra como una etiqueta con nombre — Sin contacto, Error de jugada — en vez de un token pelado. El comando exacto queda en la ayuda emergente, porque es el que se relanza; y un token que blunderDB no reconoce se muestra tal cual en vez de traducido a lo más parecido.
Pestañas de vistas
Bajo la barra de herramientas, una barra de pestañas permite trabajar con varias vistas en paralelo. Cada vista es un espacio de trabajo independiente que conserva su propia lista de posiciones, el índice de la posición actual, la posición mostrada, el análisis y la jugada seleccionada, el panel activo, el comentario en curso, así como el contexto de navegación en una partida. Así es posible, por ejemplo, mantener una búsqueda abierta en una vista mientras se recorre una partida en otra.
Crear una vista: hacer clic en el botón + de la barra de pestañas (llamado + Nueva vista mientras solo haya una vista) o pulsar CTRL-T. La nueva vista comienza como una copia de la vista actual.
Cerrar una vista: hacer clic en la cruz de la pestaña o pulsar CTRL-W. La última vista no se puede cerrar.
Cambiar de vista: hacer clic en una pestaña, pulsar CTRL-Re Pág / CTRL-Av Pág (o MAYÚS-J / MAYÚS-K) para pasar a la vista anterior / siguiente, o CTRL-1 a CTRL-9 para ir directamente a la n-ésima vista de la biblioteca activa.
Renombrar una vista: hacer doble clic en la pestaña, escribir el nuevo nombre y validar con INTRO.
Una vista dejada en el panel Eval vuelve a él tal como se dejó: con su tablero borrador y, al salir del panel, con la posición que estudiaba. El último tablero borrador del panel Eval también es propio de cada vista.
Las vistas se guardan con el estado de sesión de la base de datos y se restauran al reabrirla.
Varias bibliotecas abiertas
Varias bases de datos pueden permanecer abiertas al mismo tiempo. Cada una forma un grupo de pestañas: en la barra, un encabezado de color lleva el nombre del archivo, seguido de las vistas de esa biblioteca, cuyo borde superior retoma el mismo color. Solo una biblioteca está activa a la vez: es la que leen y escriben los paneles, la búsqueda, las importaciones y el asistente.
Con una sola biblioteca abierta, la barra no muestra ningún encabezado: solo el título de la ventana nombra la base.
Abrir una biblioteca en un nuevo grupo: botón ⧉ Otra biblioteca a la derecha de la barra de pestañas (solo ⧉ en cuanto hay dos grupos abiertos), CTRL-MAYÚS-O, o el comando
open_group(og). La biblioteca activa hasta entonces sigue abierta en su grupo. CTRL-O, en cambio, reemplaza la biblioteca del grupo activo; la ayuda emergente del botón Abrir de la barra de herramientas recuerda ambos atajos.Cambiar de biblioteca: hacer clic en una pestaña de otro grupo activa su biblioteca y esa vista de una sola vez; hacer clic en el encabezado del grupo lo devuelve a la vista donde se dejó. CTRL-MAYÚS-Re Pág / CTRL-MAYÚS-Av Pág pasan a la biblioteca anterior / siguiente; CTRL-Re Pág / CTRL-Av Pág (o MAYÚS-J / MAYÚS-K) recorren las vistas de todos los grupos de forma consecutiva.
Cerrar un grupo: la cruz de su encabezado cierra la biblioteca y sus vistas. Cerrar el grupo activo muestra su vecino; la barra de estado nombra la biblioteca cerrada y la mostrada.
El encabezado del grupo activo lleva el nombre en blanco sobre su color; los de los demás grupos, el nombre sobre el fondo de la barra, subrayado en la parte superior con su color. Se suceden seis colores: un séptimo grupo retoma el primero. Las vistas se numeran dentro de su biblioteca: una base abierta en un nuevo grupo empieza en «#1», y CTRL-1 … CTRL-9 apuntan a las vistas del grupo activo. Cuando las pestañas ya no caben en el ancho de la ventana, la barra se desplaza (rueda del ratón, o el cambio de vista que trae la pestaña mostrada a la pantalla) en lugar de reducirlas.
El cambio es inmediato: cada grupo conserva en memoria sus vistas, su lista de posiciones, la posición actual, los criterios de búsqueda (incluso mientras se escriben, sin haber lanzado la búsqueda), la lista de matches, los contadores y el desplazamiento de cada lista del panel, y los recupera sin releer la base. Una biblioteca abierta en un nuevo grupo parte de un formulario de búsqueda en blanco: los matches y torneos elegidos en un grupo nunca se aplican en otro. El trabajo en curso también lo acompaña: un borrador de transcripción, una lección, una revisión de Anki, la cola de estudio y la Dirección abierta se encuentran tal como se dejaron. Lo que pudo cambiar durante la ausencia se relee justo después de mostrarse: los contadores siempre, la lista de matches si su número ha cambiado o si una tarea en segundo plano ha escrito en la biblioteca durante la ausencia. Las listas propias de cada base (colecciones, torneos, mazos de Anki, borradores, Duelos, historial de búsqueda, filtros guardados) se releen en la biblioteca mostrada.
Un mismo archivo no se abre en dos grupos: al reabrirlo se muestra el grupo que ya lo contiene.
Las tareas en segundo plano siguen ligadas a su biblioteca: una importación de archivos de matches, la carpeta vigilada y el análisis GammonNet por lotes continúan en el grupo donde empezaron cuando se muestra otro, y nunca escriben en la biblioteca mostrada. Su progreso y su informe permanecen en su grupo: mientras no se muestra, su encabezado lleva un indicador, que parpadea mientras la tarea trabaja y queda fijo cuando termina. Al volver al grupo, el indicador desaparece, la barra de estado dice lo que hizo la tarea y se relee la lista de matches. El análisis automático que sigue a una importación se lanza en la biblioteca de la importación. La carpeta vigilada pertenece al grupo donde se inició: los archivos de matches se importan allí en segundo plano, mientras que una base por fusionar o un texto de posición espera a que ese grupo vuelva a mostrarse. Cerrar un grupo detiene sus tareas y su vigilancia.
Copiar de una biblioteca a otra. Una fila arrastrada sobre la cabecera de otro grupo se copia allí, en un sentido o en el otro: una partida de la lista de partidas, una colección de la lista de colecciones, una posición de una colección abierta, la posición mostrada (se toma por su contador «n / N» en la barra de estado) o la lección que se está leyendo (por su nombre en la barra de la lección). La cabecera de destino se rodea de un punteado. La copia es la del comando transfer: la selección de una exportación, fusionada por la importación nativa, con los análisis, los comentarios y las jugadas realizadas; una colección se lleva sus posiciones, una partida su transcripción. Lo que la biblioteca de llegada ya contiene no se vuelve a copiar: copiar de A a B y luego de B a A no crea ningún duplicado, y nada allí dice de dónde viene la copia. La copia se ejecuta en segundo plano, ligada al grupo de llegada: su cabecera lleva la pastilla y, al volver, la barra de estado dice cuántas posiciones y partidas son nuevas y cuántas ya estaban.
La cesta reúne filas de varias bibliotecas para verterlas de una vez. MAYÚS-B pone en ella la posición mostrada, o la retira, como b para la Pila; una fila arrastrada sobre la cesta también entra. La cesta, a la derecha de la barra de pestañas, muestra su recuento; un clic abre su menú (Verter en … cada grupo, Vaciar la cesta), y arrastrarla sobre la cabecera de un grupo la vierte allí. Vive en memoria, nunca en una base: cerrar un grupo retira sus filas, y desaparece al cerrar blunderDB. Una posición aún en borrador debe guardarse primero.
El candado de una cabecera bloquea su grupo: ya no se vierte nada en él, ni arrastrando ni desde la cesta, y la barra de estado lo dice. El bloqueo no afecta ni a las importaciones ni a los cambios hechos en el grupo; un segundo clic lo quita.
El cambio de grupo sigue rechazado, con el clic como con el teclado, con un mensaje en la barra de estado que nombra la causa y dice dónde detenerla, cuando lo que se ejecuta sigue a la pantalla: un rollout, cuyo resultado se muestra sobre la posición del tablero (rollout stop); la visualización de un torneo, que sirve la biblioteca mostrada en la red del club (se detiene en la Dirección); un Duelo en curso, que ocupa el tablero y sus vistas; una sesión de entrenamiento, cuyo cronómetro y registro no siguen a ningún grupo; y, por último, mientras dura, la importación de archivos que solo la interfaz sabe leer (textos de posición, importados uno a uno) o la fusión de una base. Al cerrar blunderDB solo se guarda la sesión de la biblioteca activa, y no la lista de grupos: en el siguiente arranque, blunderDB reabre la última base activa.
Lo que saben las otras bibliotecas: la pestaña En otro lugar
La pestaña En otro lugar (CTRL-MAYÚS-A) indica, para la posición mostrada, lo que saben de ella las otras bibliotecas abiertas en grupos. La posición se encuentra allí por su identidad de tablero (su hash), no por su número: un mismo número designa dos posiciones distintas en dos bases. Cada biblioteca tiene su bloque, bordeado con el color de su grupo:
su análisis: la mejor jugada, o la mejor acción de cubo, y el motor que la encontró. Un análisis valorado con una tabla de equidad de partida distinta de la de la biblioteca activa lleva la mención otra MET;
sus comentarios, cada uno con su autor, o su firmante y el estado de la firma, como en el panel de comentarios;
las partidas en las que se jugó la posición: jugadores, torneo, fecha, número de jugada, jugada o decisión realizada y su coste. El veredicto (buena, error, pifia) se emite con los umbrales de la biblioteca activa, no con los de la otra; un coste calculado con otra MET no se compara y queda marcado como otra MET. A partir de 50 partidas, se listan las 50 importadas más recientemente y se indica el total;
sus posiciones vecinas, las cinco más próximas, en miniaturas con su distancia.
Una biblioteca que no contiene la posición lo dice y muestra igualmente sus vecinas. Abrir allí, un clic en una partida o en una miniatura activa el grupo de esa biblioteca y muestra allí la posición. No se escribe nada en ninguna base. El botón ⟳ vuelve a leer las otras bibliotecas.
El intercambio en el sitio. La tecla x muestra, en lugar del tablero, en el mismo lugar y con el mismo tamaño, la posición de la otra biblioteca, bajo una banda de su color que recuerda su nombre, su mejor jugada y el número de sus comentarios. Mantenida, la tecla devuelve el tablero al soltarla; pulsada brevemente, el intercambio permanece mostrado hasta la siguiente pulsación. Cambiar de posición o de ventana también devuelve el tablero. El grupo activo, la vista y la lista no cambian. La posición mostrada es, por defecto, la misma posición en la primera otra biblioteca que la contiene; el botón Fijar bajo una miniatura de la pestaña En otro lugar elige en cambio esa vecina, hasta Soltar o un cambio de grupo.
La pantalla dividida. En una pantalla grande, el botón ◫ de la barra de pestañas (CTRL-MAYÚS-X) divide la ventana en dos paneles del mismo ancho. Uno lleva el grupo activo, completo; el otro un visor de solo lectura de otra biblioteca abierta (de la misma, si solo hay una): su tablero, el análisis de la posición y su comentario. El visor recorre toda la biblioteca, una partida reproducida jugada a jugada (el juego, la jugada y lo que se jugó aparecen sobre el tablero) o una colección, a elegir en su lista desplegable, con sus botones ⏮ ◀ ▶ ⏭. Se abre donde se dejó esa biblioteca. Nada de lo que muestra se escribe en ningún sitio. Hacer clic en el visor, fuera de sus botones, activa su biblioteca: los dos paneles intercambian sus papeles y cada biblioteca conserva su lado; CTRL-MAYÚS-RE PÁG / AV PÁG hace lo mismo con el teclado. Por debajo de 1280 píxeles de ancho, la pantalla dividida se rechaza y se propone el intercambio en el sitio (x); se cierra si la ventana se vuelve demasiado estrecha.
Configuración
El botón de configuración (icono en forma de rueda dentada) situado en la barra de herramientas, a la izquierda del botón de ayuda, abre la ventana de configuración de blunderDB. Está organizada en diez pestañas:
Interfaz — tema, idioma, escala de visualización, posición del panel, paso de PageUp / PageDown (10, 50, 100, 500 o 1 000 posiciones, o el 10 % de la lista), registros, comprobación de actualizaciones, su nombre y posiciones vecinas;
Colores del tablero — los colores del tablero;
Biblioteca — lo que pertenece a la base de datos abierta: los umbrales de error y de blunder, descritos más abajo;
Mantenimiento — el estado de salud de la base de datos, una línea por operación, descrito más abajo;
Corpus — los duplicados al importar, los alias de jugadores y de eventos y la búsqueda de duplicados probables (véase la importación de partidas);
Bearoff — las tablas de bearoff utilizadas por el panel Eval;
gammonNet — los ajustes del evaluador integrado, descritos más abajo;
Carpeta vigilada — la importación automática de los partidos que llegan a una carpeta, descrita más abajo;
Asistente y MCP — el servidor MCP local y el asistente interno, descritos a continuación;
Identidad del emisor — la clave que firma tus marcas de origen, descrita en la sección Distribuir una base de datos: origen y contraseña.
La pestaña Interfaz empieza con un tema: seguir el sistema, claro, oscuro, contraste alto o imprimible. El tema ajusta los colores de la interfaz y propone una paleta de tablero — una interfaz oscura alrededor de un tablero claro no es un tema oscuro, es la mitad de uno, ya que el tablero ocupa la mayor parte de la ventana.
Usted conserva la última palabra, y el mecanismo lo garantiza en vez de prometerlo: la pestaña Colores sigue ajustando el tablero directamente, y un color elegido después del tema es suyo. Al arrancar solo se aplican los tokens de la interfaz, nunca la paleta del tablero — la que usted ha ajustado ya está cargada, y reescribirla en cada lanzamiento borraría su trabajo una sesión cada vez. Véase ADR-0038.
Seguir el sistema es el valor por defecto: obedece a la preferencia claro/oscuro del escritorio, incluso cuando cambia a mitad de sesión. Una herramienta no impone su claro o su oscuro a un escritorio que ya ha decidido.
La pestaña Interfaz permite también elegir el idioma entre inglés, francés, alemán, italiano, español, finés, japonés, griego y ruso. Toda la interfaz (barra de herramientas, paneles, mensajes, ayuda) se traduce al idioma seleccionado. La elección de idioma se guarda y se conserva de una sesión a otra.
La pestaña Biblioteca reúne lo que pertenece al archivo abierto y no a la máquina. Está vacía mientras no haya ninguna base de datos abierta, y lo dice.
Lleva en primer lugar los dos umbrales que deciden el vocabulario de toda la aplicación: una decisión es un error en cuanto su coste alcanza el umbral de error, y ese error es un blunder en cuanto alcanza el umbral de blunder. Todo blunder es un error, así que el primer umbral no puede superar al segundo, y blunderDB rechaza el par invertido. Los valores se introducen en equidad — «0,080» — la unidad de todas las tablas; la línea de comandos, por su parte, habla en milipuntos, de modo que el umbral 0,080 se escribe E>80 en una búsqueda.
Estos umbrales siguen al archivo, no al ordenador: la misma base de datos cuenta los mismos blunders dondequiera que se abra, blunderdb info los muestra, y blunderdb edit --error-threshold / --blunder-threshold los ajusta. No viajan en una exportación: un umbral es un hábito de lectura, no un hecho de las posiciones.
Se proponen tres preajustes con un solo clic, cada uno con el nombre del programa que trazó esa línea: blunderDB (0,050 / 0,100), XG (0,020 / 0,080) y gnubg (0,040 / 0,080). Por defecto, una biblioteca lee 0,050 y 0,100.
Lo que cambian, en pantalla: el número de blunders del contador de la barra de estado y la búsqueda que prepara su enlace, las columnas «Errores» y «Blunders» de las estadísticas y de la tabla de jugadores, las marcas de las jugadas en la ficha de un match (Panel de Partidas), y la lista de posiciones que blunderDB propone revisar después de una importación.
La línea Espacio recuperable de la pestaña Mantenimiento incluye el botón Compactar, que recupera el espacio en disco dejado por las eliminaciones (partidas, torneos, purgas): la base de datos nunca se reduce sola al eliminar datos, hay que pedir esta compactación explícitamente. La operación puede tardar en una base grande. La copia compactada se escribe junto al archivo y luego lo reemplaza: se necesita, temporalmente, aproximadamente el tamaño de la base de datos en espacio libre en su volumen, y no en memoria RAM. Si otro programa tiene la base abierta (una segunda instancia en solo lectura, por ejemplo), el archivo no se reemplaza: la base se compacta en el lugar, lo que requiere aproximadamente el doble de su tamaño en espacio libre, y un archivo temporal va a la carpeta temporal del sistema, o a la que designa la variable de entorno SQLITE_TMPDIR: con un /tmp pequeño, apúntela al volumen de la base. blunderDB se niega a iniciar la operación, con un mensaje que dice qué falta (espacio en disco, o menos de 512 MB de memoria disponible), en lugar de arriesgar una compactación interrumpida. Se pide una confirmación antes de lanzar la operación. El resultado — el espacio ganado, en megabytes — se muestra después en la barra de estado. La misma operación está disponible en línea de comandos mediante blunderdb vacuum (véase Interfaz de línea de comandos (CLI)).
Tras una compactación en el sitio, blunderDB comprueba que el archivo se ha reducido de verdad. En Windows, el sistema se niega a acortar un archivo que otro programa mantiene abierto de ciertas maneras: la compactación termina entonces con un mensaje que lo indica — cierre el otro programa y vuelva a lanzarla — en lugar de anunciar una ganancia que no se ha producido.
El botón Abrir la carpeta de registros, en la pestaña Interfaz, abre la carpeta que contiene el registro de la aplicación — útil para adjuntar detalles a un informe de error, sobre todo cuando blunderDB se ha iniciado desde un acceso directo o un doble clic, sin terminal asociada que muestre nada.
La casilla Buscar actualizaciones al iniciar, de la misma pestaña, desactivada por defecto, consulta una vez por arranque la página de últimas versiones del repositorio de GitHub y muestra en la barra de estado un mensaje si hay una versión más reciente — nunca una ventana que impida trabajar. Esta comprobación queda automáticamente desactivada en una instalación hecha mediante un gestor de paquetes (Flatpak, Homebrew, un paquete de la distribución…): entonces es ese canal el que gestiona las actualizaciones, no blunderDB.
Dos ajustes de la pestaña Interfaz gobiernan la clasificación de las posiciones vecinas (token like, véase Panel de Búsqueda): el número de vecinas devueltas, y la distancia máxima más allá de la cual una posición deja de serlo. Esta distancia vale cero por defecto, es decir, ningún límite: la escala depende de la fase de la partida, y un valor elegido aquí se leería como una medida. El token like<12 impone la suya para una búsqueda, sin tocar el ajuste.
La pestaña Colores del tablero permite personalizar los colores del tablero. Cada elemento dispone de su propio selector de color: el fondo, el borde, las flechas claras y oscuras, las fichas del jugador 1 y del jugador 2, los dados, los puntos de los dados y el cubo de dobles. El botón Restablecer devuelve todos los colores predeterminados. Al igual que el idioma, los colores elegidos se conservan de una sesión a otra.
La pestaña Bearoff gestiona las tablas de bearoff del panel Eval (véase Panel Eval). No están ni incrustadas en el ejecutable ni se descargan: blunderDB las calcula en la máquina que las usa, y el resultado es idéntico byte a byte a lo que produce gnubg — la huella SHA-256 se verifica antes de aceptar una tabla.
Las dos tablas corrientes (TS-06-06 para el veredicto de cubo, OS-06 para el EPC) se calculan en el primer arranque, en segundo plano y sin preguntar: unos seis segundos en un núcleo, durante los cuales la aplicación se usa normalmente. El panel Eval solo lo menciona si se pone allí una posición que necesita una tabla que aún no está lista.
La pestaña muestra el dominio activo y su origen, el estado de la tabla de un lado que lee el EPC, la carpeta donde vive todo esto, y la lista de las tablas presentes con su tamaño y su veredicto. Cada fila se elimina individualmente, tras confirmación.
Verificada o sin verificar. Una tabla verificada tiene exactamente los bytes que gnubg produce para su dominio: su huella SHA-256 figura en blunderDB y se ha vuelto a encontrar. Las huellas registradas para las tablas one-sided (OS-06 a OS-10) son las que produce la herramienta makebearoff de GNUbg 1.08. Una tabla sin verificar está bien formada pero su dominio no tiene huella registrada — no se le reprocha nada, simplemente nadie la ha comparado con la referencia. Una tabla corrupta se contradice a sí misma y nunca se lee; se recalcula.
Calcular una tabla más amplia. El dominio se elige en una lista de dos familias, junto con el número de núcleos a dedicarle (por defecto todos menos uno, para que la máquina siga siendo utilizable):
cubo exacto (dos lados), de TS-06-06 a TS-06-15: amplía el dominio donde la probabilidad de victoria y el veredicto de cubo se leen en lugar de estimarse;
EPC fuera del cuadro (un lado), de OS-06 a OS-10: amplía la distancia a la que una ficha puede estar sin que el bloque EPC se calle. Este barrido solo lee posiciones más pequeñas que la que calcula, así que es secuencial por construcción y el número de núcleos no le sirve de nada — el selector lo dice atenuándose.
Antes de lanzar nada, la pestaña indica tres cifras para el dominio elegido: el tamaño en disco, la memoria necesaria durante el cálculo y el tiempo que debería tardar en esta máquina. Este último empieza como estimación y se vuelve medida: cada cálculo suficientemente amplio registra su propia velocidad y la conserva. Un dominio que la memoria disponible no permite se ofrece atenuado, con la razón — «harían falta 24 GB y quedan 12» es una respuesta, una fila ausente no lo sería.
Como orden de magnitud, en una máquina de dieciséis hilos: TS-06-09 pesa 191 MB y tarda una decena de segundos, TS-06-11 pesa 1,2 GB y unos minutos, TS-06-13 supera lo que la mayoría de las máquinas pueden mantener en memoria. Del lado de un lado, en un núcleo: OS-07 pesa 4,9 MB y tarda 17 s, OS-08 15 MB y 1 min 20, OS-10 117 MB y media hora.
Pausa y reanudación. Durante el cálculo, el progreso muestra el tiempo restante medido y dos botones distintos: Pausa y Cancelar. La pausa escribe el estado del cálculo junto a la tabla; relanzarlo continúa donde se detuvo en lugar de empezar de nuevo. Cancelar no guarda nada. Cerrar la ventana de configuración no interrumpe nada — el cálculo continúa en segundo plano.
Un cálculo en pausa se reencuentra en el siguiente arranque, con su nombre y su cifra («TS-06-09 interrumpida al 43 %»), con Reanudar y Eliminar. Nada se reinicia solo: es el usuario quien pidió la parada.
La pestaña permite por último apuntar a un archivo .bd de dos lados externo, por ejemplo una base producida por el propio gnubg: gana la tabla con el dominio más amplio.
La pestaña Mantenimiento muestra el estado de salud de la base: una línea por operación, con su recuento, su última ejecución (fecha y resultado: terminada, cancelada o fallida) y su acción. Solo el cálculo de las partidas sin estadísticas se lanza solo, al abrir.
Posiciones sin análisis — las posiciones que no tienen ningún análisis; la acción es el análisis gammonNet descrito más abajo. Las posiciones que gammonNet se niega a evaluar (una danza, un marcador fuera de la tabla de partida) permanecen en este recuento, que por tanto no llega necesariamente a cero.
Análisis gammonNet obsoletos — descritos más abajo.
Partidas sin estadísticas — las partidas cuyas estadísticas aún no están calculadas; la acción las calcula todas. Una base abierta en escritura que las tiene las calcula por sí misma en segundo plano, por lotes: la barra de estado muestra el progreso de esta línea y su botón de cancelación, los distintivos de los torneos y la pestaña Jugadores del panel Estadísticas esperan al final del cálculo, y el resto de la aplicación sigue siendo utilizable. Abrir otra base lo detiene. En solo lectura, o en línea de comandos, la primera lectura de las estadísticas las calcula, lo que puede ser largo en una base grande: el panel Estadísticas muestra entonces ese número, que abre esta pestaña.
Columnas de análisis — las columnas que consultan la búsqueda y las estadísticas son una proyección de los análisis almacenados, que permanecen intactos: la acción las recalcula sin reimportar nada.
Errores de los movimientos jugados — puntúa los movimientos jugados que aún no tienen error.
Análisis en formato antiguo — reescribe en formato binario los análisis que una versión anterior almacenaba en JSON.
Papelera — el número de entradas de la papelera, que la abre.
Espacio recuperable — el espacio libre del archivo, que la compactación descrita más arriba devuelve al disco.
Un recuento costoso (lee una tabla entera) espera al botón Contar. Un recuento de posiciones abre esas posiciones en la lista; el de las partidas sin estadísticas abre esas partidas en el panel de partidas. Una operación se ejecuta en segundo plano: su progreso y un botón de cancelación se muestran en la barra de estado, y solo se ejecuta a la vez una operación que escribe en la base de datos — un análisis gammonNet, un rollout u otra operación de mantenimiento en curso hace rechazar la siguiente, con el nombre de la que ocupa la base. En una base abierta en solo lectura, las acciones están desactivadas. Las mismas operaciones existen en línea de comandos (blunderdb maintenance).
La pestaña gammonNet ajusta el evaluador integrado (véase ADR-0011). En ella se regulan dos profundidades de búsqueda, con nombre propio y guardadas por separado — bajar una nunca modifica la otra:
Profundidad de visualización — la comodidad interactiva durante la edición del tablero; nunca se escribe en la base.
Profundidad de análisis — lo que el lote de análisis posterior a la importación escribe en el Análisis de una posición.
Ambas valen por defecto 2-ply, la configuración canónica. El menú marca con un ⚠ las profundidades 3-ply y 4-ply, cuyo coste por posición supera con mucho el de 2-ply. La pestaña ofrece también la poda (por defecto k=12) y el número de jugadas candidatas mostradas (por defecto 10), así como una casilla analizar automáticamente tras la importación que, una vez activada, comprueba después de cada importación si quedan posiciones sin ningún análisis (ni gammonNet, ni XG, ni GNUbg, ni BGBlitz — la regla es « una evaluación solo rellena un hueco », nunca un reemplazo) y, en su caso, lanza en segundo plano un análisis gammonNet a la profundidad de análisis configurada. La línea Posiciones sin análisis de la pestaña Mantenimiento relanza manualmente el mismo repaso, útil para una biblioteca constituida antes de que existiera esta función.
Una aceptación o un rechazo es evaluado por gammonNet sobre la decisión del que dobla, antes del doble. Un veredicto gammonNet escrito sobre tal respuesta por una versión anterior de blunderDB juzgaba el redoble del receptor: se elimina al abrir la biblioteca, o al importar una base que lo contiene. La aceptación o el rechazo vuelve a ser una posición sin análisis, ausente de las estadísticas hasta que la línea Posiciones sin análisis de la pestaña Mantenimiento (o el análisis automático tras la importación) la reevalúe.
La línea Análisis gammonNet obsoletos de la pestaña Mantenimiento cubre el caso inverso: una posición ya analizada por gammonNet, pero cuyo análisis almacenado fue escrito por una versión de motor más antigua que la que se ejecuta, o a una profundidad distinta de la profundidad de análisis configurada más arriba, se señala allí como obsoleta y se reevalúa. Una posición que además lleva un análisis XG, GNUbg o BGBlitz nunca es tocada por este lote, sea cual sea su contenido gammonNet — la protección de ADR-0013 sigue siendo incondicional. El recuento de las posiciones obsoletas lee cada análisis gammonNet de la base: espera al botón Contar. El lote recalcula su propia lista en el momento de empezar.
Ambos lotes son acotados, visibles y cancelables, nunca un demonio silencioso: su profundidad, su progreso (posiciones analizadas / total, desde 0 al iniciar) y un botón de cancelación aparecen en la barra de estado durante toda su duración, y desaparecen una vez terminados en favor de un mensaje que resume el resultado — cuántas posiciones fueron analizadas, cuántas fueron rechazadas (una posición que gammonNet declina evaluar, como una puntuación de partida fuera del alcance de su tabla, lo cual nunca es un fallo) y cuántas fallaron (reintentadas, sin cambios, en la siguiente ejecución). Cerrar la aplicación durante uno u otro no pierde nada: cada posición analizada se escribe sobre la marcha, y la siguiente ejecución retoma exactamente donde el análisis se había detenido, sin ningún registro que llevar. La cancelación, como el cierre, interrumpe también la posición que se está calculando, que queda sin análisis.
Solo un trabajo escribe en la biblioteca a la vez: un lote gammonNet, un rollout almacenado o una operación de mantenimiento. Un lote o una operación lanzados desde la pestaña Mantenimiento se rechazan mientras haya otro trabajo en curso, y la barra de estado nombra ese trabajo; el lote que lanza una importación, una transcripción o un duelo espera, en cambio, a que termine, y la barra de estado lo anuncia como « en espera » hasta que arranca.
La misma pestaña contiene el ajuste de los rollouts lanzados desde el panel Análisis (véase Rollouts), conservado de una sesión a otra: Rápido (216 partidas, truncadas a 7 medias jugadas), Estándar (1296 partidas, truncadas a 11 medias jugadas) o Libre, donde se pueden editar todos los parámetros — truncamiento, partidas mínimas y máximas (múltiplos de 36), límite de JSD, profundidad (ply), número de candidatas, semilla y número de procesos.
Tabla de equidad de partido de la base. En la parte inferior de la pestaña, la lista Tabla de equidad de partido (MET) de la base elige la tabla con la que gammonNet valora los marcadores de partido: Kazaross-XG2, integrada y por defecto, o una tabla importada de un archivo .xml de GNUbg mediante el botón Importar una MET .xml…. La elección pertenece a la base, no a la aplicación: abrir otra base es recuperar su tabla. Solo se leen las tablas explícitas (no las tablas paramétricas zadeh o mec); más allá de la longitud de una tabla importada, la tabla integrada toma el relevo. Una tabla se identifica por sus valores, no por su nombre: importar el Kazaross-XG2.xml de GNUbg no añade nada, es la tabla integrada. Cada análisis calculado por gammonNet registra la tabla con la que se calculó; los análisis importados (XG, GNUbg, BGBlitz) se consideran calculados con Kazaross-XG2. Un análisis a un marcador de partido calculado con una tabla distinta de la actual se marca como MET distinta en el panel de análisis y se excluye de las estadísticas (promedios de error, PR, clasificaciones, cara a cara); un análisis en money game nunca lo es. Cambiar de tabla no reescribe ningún análisis: solo cambia lo que retienen las comparaciones.
La evaluación en directo del panel y la matriz del cubo se valoran con la tabla de la base, como los análisis que guarda. Una tabla viaja con los análisis que la citan: la exportación de una base se la lleva, y la importación de una base la añade a la base que la recibe, sin duplicados (una tabla ya presente se reconoce por sus valores) y sin hacerla actual. Un análisis de gammonNet sustituido por el de otro motor (XG, GNUbg) vuelve a considerarse calculado con Kazaross-XG2.
Un partido importado sin análisis obtiene así un PR. Es el caso de un partido jugado en línea, o de un fichero Jellyfish .mat, que nadie ha pasado por XG: blunderDB conocía sus posiciones y las jugadas realizadas, pero ningún análisis decía cuánto valían. Una vez pasado el lote, la jugada realmente hecha se compara con la clasificación de gammonNet y la diferencia alimenta el PR, la tasa de error, las peores decisiones y todos los demás indicadores, exactamente como en un partido analizado por XG. La comparación no inventa nada: la jugada realizada viene de la tabla de jugadas del partido, escrita en la importación, llevara el fichero un análisis o no.
Una base analizada con una versión anterior a esta no necesita volver a evaluarse: blunderdb repair recalcula las columnas a partir de los análisis y las jugadas ya almacenados y devuelve su PR a esos partidos (véase repair).
Una reserva honesta: una posición se identifica por su estructura, de modo que una posición encontrada dos veces — bien jugada una vez, mal la otra — solo lleva una diferencia, la de su primera aparición registrada. No es propio de este cálculo: una biblioteca XG tiene exactamente la misma forma.
Carpeta vigilada
La pestaña Carpeta vigilada pide a blunderDB que mire una carpeta mientras se ejecuta e importe cada fichero de partido que aparezca en ella. Jugar una sesión en eXtreme Gammon, volver a blunderDB, y encontrar los partidos ya ahí.
Nada se adivina. Mientras no se designe una carpeta no hay vigilancia: blunderDB no empieza a leer un directorio porque haya supuesto dónde viven sus partidos. El botón Proponer mira los lugares habituales de esta máquina y solo propone uno si existe de verdad; si no, lo dice, y designar la carpeta le corresponde a usted.
Tres puntos merecen conocerse antes de marcar la casilla:
Solo se importan los ficheros que aparecen. Lo que la carpeta ya contiene cuando arranca la vigilancia se registra como conocido y se deja en paz: apuntar una vigilancia a cuatro años de partidos no debe importarlos todos. Para importar lo que hay, use la importación de carpeta, que existe para eso — y ambas se componen muy bien, la importación primero, la vigilancia después.
Un fichero se importa solo cuando su tamaño se ha estabilizado. Un partido que otro programa está escribiendo crece de un vistazo a otro; importarlo a medio escribir daría un error de análisis sobre el que nadie puede actuar. blunderDB espera, pues, a ver dos veces el mismo fichero sin cambios.
La importación es silenciosa. Estaba estudiando una posición cuando llegaron sus partidas: quitarle la pantalla sería el peor momento. El modo, la búsqueda activa, la pestaña y la posición mostrada no se mueven; la lista de posiciones no se recarga y muestra las partidas nuevas en la próxima recarga. La importación se hace sin ventana, y la barra de estado muestra un banner con el recuento de partidas importadas, omitidas (duplicados) y fallidas, con un botón que abre el informe completo si lo desea. Todo lo demás es idéntico a una importación manual: los mismos duplicados detectados, el mismo lote de importación, el mismo análisis automático si está activado.
El intervalo por defecto es de diez segundos; el mínimo es de dos. La carpeta no se recorre recursivamente: una carpeta vigilada es el sitio donde una herramienta deposita sus partidos, no un árbol que explorar. Un recurso de red desmontado no detiene la vigilancia ni hace que su contenido pase por nuevo a su regreso.
La misma vigilancia existe en línea de comandos, con blunderdb import --type batch --dir <carpeta> --watch (véase Interfaz de línea de comandos (CLI)): es la forma que puede usar un servidor, una tarea programada o un script.
Sincronizar dos máquinas
Copiar la base .db de una máquina a otra, o guardarla en una carpeta sincronizada (Syncthing, Dropbox…), acaba dañándola: SQLite escribe junto a la base archivos de diario que una sincronización de archivos copia en desorden. blunderDB sincroniza en cambio dos bibliotecas mediante exportaciones incrementales depositadas en una carpeta que la otra máquina vigila. El transporte es a su elección — Syncthing, memoria USB, correo electrónico: no hay servidor ni cuenta.
En la máquina A, en la ventana de exportación, elija Toda la biblioteca, marque Solo lo nuevo desde la última exportación a esta carpeta y designe la carpeta con Elegir la carpeta…. Cada exportación escribe allí un archivo
sync-<machine>-<date>.dbque contiene solo lo que ha entrado en la biblioteca desde la exportación anterior a esa misma carpeta; la primera lo contiene todo.En la máquina B, convierta esa carpeta en la carpeta vigilada. Cada archivo
.dbque aparece en ella se fusiona sin vista previa, como con la importación de una base: una posición ya conocida no se duplica, una partida ya conocida se reconoce, las colecciones y las lecciones se fusionan por su nombre.Haga lo mismo en el otro sentido, con una segunda carpeta.
Lo que conviene saber:
La marca de «última sincronización» está en quien exporta, una por carpeta de destino, y solo avanza cuando el archivo está completo. La máquina que recibe no registra nada. Una exportación que falla deja la marca en su sitio: la siguiente lleva las mismas filas.
La sincronización se hace solo por adición. Una eliminación no se propaga: eliminar una partida en A no la elimina en B. Una modificación in situ tampoco: un comentario reescrito, una partida renombrada, un análisis rehecho en una posición ya enviada. Salen las posiciones, partidas, torneos, colecciones, lecciones y comentarios entrados desde la última exportación; una colección vuelve a salir también cuando se le ha añadido una posición, y una posición cuando se le ha añadido un comentario. Un comentario reescrito no vuelve a salir, porque la máquina que recibe nunca reemplaza un texto que ya tiene: para transmitir una corrección, añádala como un comentario nuevo. Los filtros guardados y los mazos de Anki no forman parte: una exportación de Toda la biblioteca sin la casilla los incluye.
Lo que una máquina ha recibido vuelve una vez a la otra, puesto que es nuevo en su biblioteca; la otra lo reconoce sin añadir nada, y el siguiente intercambio está vacío.
Un archivo llegado mientras blunderDB estaba cerrado no se pierde: al iniciarse la vigilancia, cada
.dbya presente en la carpeta se fusiona, a diferencia de los archivos de partidas. La máquina que recibe no anota lo que ha leído; por tanto, en cada inicio vuelve a fusionar todos los archivos que la carpeta aún contiene, sin añadir nada, pero al precio del tiempo de releerlos. Elimine de vez en cuando los archivossync-…ya recibidos para que este inicio siga siendo rápido.Una exportación incremental nunca sobrescribe un archivo. El archivo anterior quizá contenga filas que la otra máquina aún no ha recibido: una exportación a un nombre de archivo ya ocupado se rechaza. Indique la carpeta, y cada exportación toma allí un nombre nuevo.
Un archivo reescrito con un nombre ya visto se fusiona de nuevo: la vigilancia reconoce un archivo por su nombre, su tamaño y su fecha de modificación.
La biblioteca abierta nunca se fusiona consigo misma: si se encuentra en la carpeta vigilada, la vigilancia la omite.
Una exportación que ha tenido que descartar filas (señaladas en el registro) no hace avanzar la marca: la siguiente las reintenta, con todo lo que las sigue.
Una exportación nunca se ve a medio escribir: se escribe con un nombre oculto y luego se renombra de golpe. Un archivo protegido con contraseña (
.dbx) no es recogido por la vigilancia, que no puede pedir la contraseña.
En línea de comandos, blunderdb export --type database --incremental --file <carpeta> por un lado y blunderdb import --type batch --dir <carpeta> --watch por el otro (véase Interfaz de línea de comandos (CLI)). El servidor acepta "incremental": true en /v1/exports.sqlite (véase Modo headless (servidor)).
Asistente y MCP
La pestaña Asistente y MCP regula dos cosas, ambas desactivadas por defecto.
El servidor MCP local ofrece las herramientas de blunderDB (búsqueda, lectura de una posición y de su análisis, estadísticas de un jugador, cuestionarios…) a un asistente que habla el Model Context Protocol, como Claude Desktop o Claude Code, mientras la ventana esté abierta. Solo escucha en esta máquina, en la dirección http://127.0.0.1:<port>/mcp (puerto 8765 por defecto), y rechaza una petición procedente de una página web. Añade dos herramientas de visualización: abrir una vista sobre una búsqueda y mostrar una posición. Las herramientas solo leen, salvo si Permitir la escritura está marcada: entonces pueden guardar una posición, comentarla, crear y llenar una colección, calificar una tarjeta Anki y guardar un rollout junto al análisis de una posición; nada se borra. Sin ventana abierta, blunderdb mcp sirve las mismas herramientas (véase Interfaz de línea de comandos (CLI)).
El asistente interno es un cliente de esas mismas herramientas. No incorpora ningún modelo: se dirige a un proveedor compatible con OpenAI — Ollama en esta máquina por defecto, o Groq, OpenRouter, Gemini, Anthropic u otra dirección. Es remota toda dirección fuera de esta máquina, sea cual sea el proveedor elegido: sus frases y los resultados de las herramientas salen entonces de la máquina, la pestaña lo indica y espera su acuerdo para esa dirección concreta; otra dirección lo vuelve a pedir. La clave de API va al llavero del sistema, nunca a la base de datos ni al archivo de ajustes. El modelo propuesto por defecto para Ollama, qwen2.5:7b, es un punto de partida, no una recomendación: no se hace ninguna recomendación de modelo sin una puntuación del banco de medición incluido con el código fuente.
Una vez activado, el asistente es una subpestaña Asistente del panel Búsqueda. Una frase — «mis errores de más de 50 milipuntos en la carrera» — abre una nueva vista con su nombre, lanza en ella la búsqueda y cambia a ella; sus tokens permanecen en el historial de búsquedas. Lo que devuelven las herramientas procede de la base; lo que escribe el modelo se marca como Texto libre del modelo. El asistente solo propone una modificación si la casilla Dejar que el asistente proponga cambios (cada uno confirmado) está marcada — un ajuste distinto de la escritura del servidor MCP local — y cada modificación que prepara se muestra y solo se realiza tras Confirmar.
La ventana de configuración también incluye ajustes de visualización de la interfaz. Un control deslizante de escala de la interfaz permite agrandar o reducir todos los elementos, lo que resulta útil en pantallas de alta densidad o para mejorar la legibilidad. Los atajos CTRL-+, CTRL– y CTRL-0 ajustan la misma escala, como en un navegador. Un menú posición de los paneles determina la ubicación de los paneles (búsqueda, partidas, análisis) con respecto al tablero: abajo, al lado o automática (en este caso el lado se elige en las pantallas anchas para aprovechar mejor el espacio disponible). Como los demás ajustes, estas opciones se conservan de una sesión a otra.
Visitas guiadas y base de ejemplo
Para facilitar la toma de contacto, blunderDB ofrece visitas guiadas de la interfaz. El catálogo de visitas se abre desde la barra de herramientas o con el comando tutorial (alias tour). Hay siete visitas disponibles: una visita general de la interfaz, y visitas dedicadas a la búsqueda de posiciones, a la revisión de partidos, a la revisión de torneos, al panel Eval, al repaso Anki y a las estadísticas. Cada visita resalta los elementos correspondientes de la interfaz, paso a paso, abre de paso el panel del que habla, y puede repetirse en cualquier momento. En el primer arranque, la visita general se propone automáticamente.
El comando demo carga una base de ejemplo que permite descubrir las funcionalidades de la herramienta sin importar las propias partidas: tres partidas (dos de ellas agrupadas en un torneo) analizadas por eXtreme Gammon, BGBlitz y gammonNet, tres colecciones temáticas, comentarios etiquetados (#blunder, #cube) y un mazo Anki con su registro de repasos. Los jugadores, el torneo y el lugar son ficticios. Las visitas guiadas se apoyan en esta base cuando no hay ninguna base abierta.
Edición de posiciones
Pulsar la tecla TAB abre el panel de búsqueda y permite editar una posición en el tablero para añadirla a la base de datos o para definir una estructura de posición que buscar. La distribución de las fichas, el cubo, la puntuación y el turno pueden modificarse con el ratón (véase Editar una posición).
Truco
Consulte Atajos de teclado para ver los atajos disponibles.
La línea de comandos
La línea de comandos, integrada en la barra de estado, permite realizar todas las funcionalidades de blunderDB disponibles en la interfaz gráfica: operaciones generales sobre la base de datos, navegación por las posiciones, visualización del análisis o de los comentarios, búsqueda de posiciones según filtros… Tras una primera toma de contacto con la interfaz, se recomienda utilizar progresivamente la línea de comandos, que permite un uso potente y fluido de blunderDB, especialmente para las funcionalidades de búsqueda de posiciones.
Para abrir la línea de comandos, pulse la tecla ESPACIO. Para enviar una consulta y cerrar la línea de comandos, pulse la tecla INTRO.
blunderDB ejecuta las consultas enviadas por el usuario siempre que sean válidas y modifica inmediatamente el estado de la base de datos si procede. No se requieren acciones de guardado explícitas por parte del usuario.
Truco
Consulte la lista de comandos para ver la lista de comandos disponibles en la línea de comandos.
La paleta de comandos
La paleta de comandos (CTRL-MAYÚS-P) encuentra por un nombre aproximado lo que ya no se sabe dónde buscar: un comando de la línea de comandos, una pestaña, un filtro de la biblioteca o un match. Las letras tecleadas deben aparecer en orden, no necesariamente juntas, sin distinguir mayúsculas ni acentos: «mtzcb» encuentra la matriz del cubo, «lyon» los matches de un torneo de Lyon.
Las flechas eligen, INTRO ejecuta, ESC cierra. Un comando se ejecuta como si se hubiera tecleado; s y ss abren la línea de comandos para escribir en ella los filtros; un filtro se ejecuta como con un doble clic en la biblioteca; un match se abre como con un doble clic en el panel de matches.
Cuando hay una Dirección abierta, la paleta añade el torneo: jugadores, mesas, matches en curso y pruebas (véase la búsqueda rápida).