Skip to content

Releases: francescobianco/pragma-chess

Pragma Chess 0.3.0

Choose a tag to compare

@github-actions github-actions released this 05 Oct 10:53

What's new

Added

  • Chapters: a project is now a collection of chapters, as a study or a
    chess book, and a chapter holds games one after the other. The move list
    shows the whole chapter, a light rule where each game begins and its
    numbering starting again. File ▸ New Chapter…, Switch Chapter and Manage
    Chapters… (reorder, rename, add, delete).
  • Paragraphs between the moves: right-click the move list ▸ Insert
    Paragraph and write right there, set as in a book (its own face, each
    paragraph indented). Insert Game Break starts a new game in the chapter.
  • New games, set-up positions, pastes, training and online games, and
    games opened from the list, are added to the chapter instead of
    replacing the game on the board.
  • File ▸ Project Settings…: a name for the project, shown in the title bar
    (with the chapter, when there are several).
  • Game ▸ Save Game to Another Database… saves the game without opening
    that database.
  • Options ▸ Personal Settings…: your name, year of birth and FIDE ID. Your
    name goes on your side of new games, set-up positions and training games
    (a player marked as Me in the open database still wins). They are kept in
    .pragma-chess.conf in the Pragma folder, which Sync carries to your
    other computers.
  • Board style, in Options ▸ Personal Settings…: Pragma Classic (the brown
    board and the pieces of chess books) or Lichess Alpha (lichess.org's
    green board and Alpha pieces).
  • Game ▸ Set Up Position… draws a position on a board — pieces, side to
    move, castling, en passant, move number, or a FEN — and starts a game from
    it. Moves on the board not saved yet can be discarded, saved to the open
    database or saved to another one, which is not opened.
  • Edit ▸ Paste is a menu: Paste FEN, Paste Line (a new game with the moves
    on the clipboard) and Paste Line from Current Position (Ctrl+Alt+V, plays
    them from the board: added at the end of the game, a variation elsewhere).
  • A new source, PGN file: a .pgn file on this computer kept in step with
    the database, in the direction you choose — Read and write, Read only or
    Write only. The file can be created while connecting it. Games saved,
    changed or annotated reach the file a few seconds later; games added or
    edited in the file come into the database. Nothing is deleted on either
    side, and a game changed on both sides is kept twice.
  • Options ▸ Folder Settings… chooses where this computer keeps the Pragma
    folder, or just the databases, projects, books or opening names. The new
    folders are used from the next start; files are not moved.
  • Folder sync notices a file deleted by hand from the Pragma folder (it no
    longer comes back by itself) and asks: Delete Everywhere, Restore, or Ask
    Me Later. Each computer keeps what it last synced in a hidden
    .pragma-chess.local file of its Pragma folder, which is never uploaded.
  • Manage Files…, in the Sync Settings, lists the files on the server and
    deletes the ones you no longer want from every synced device, after a
    confirmation.
  • With a Git repository, a sync that only receives or finds nothing new no
    longer makes a commit, and each commit is named after the files it
    changes ("Update Databases/Games.pdb; add Projects/Study.pch").
  • A database deleted in the mobile app is no longer sent back to it, and
    the computer asks whether to delete it there too or keep it. Delete
    Everywhere… warns first, then moves it to the trash and deletes it from
    the sync folder on the server and from the other computers that sync
    with it.
  • In the games list the players you marked as "me" are in bold.
  • Play online. Game ▸ Play Online… plays against a person on
    lichess.org: connect the platform from the dialog (it signs you in with
    your browser), choose clock, colour and rated or casual, and find an
    opponent. While looking and while playing, the engine, Explain, Training
    Mode and the Opening Tree are off: it is you against your opponent. The
    finished game is saved in the open database. Connections are yours on
    this computer, not the project's. The toolbar has a Play Online button
    after New Training; tick "Remember for this session" in the dialog and
    it looks for an opponent without asking.
  • Training plays the book. While the position is in the opening book,
    the engine answers with a book move, each as often as its weight says —
    tune the weights in the Opening Tree to train against the lines you want.
    Out of the book it plays its own move; the tutor judges your moves as
    before.
  • Book weights. Right-clicking a move of the Opening Tree offers Adjust
    Weight (+5% to +100%, the same downwards, and Zero Weight): the share
    of the move changes, the other moves give or take in proportion to what
    they have, the sum stays 100%, and the book in use is written. The move
    you changed glows for a moment and is marked with ↑, ↓ or = for where it
    went in the new order.
  • Variations. Play a move that is not the next one of the game and it
    becomes a variation, shown in the Moves panel — still the classic table,
    one move a cell — in a row under the move it replaces;
    variations nest, are followed by clicking their moves, and are saved with
    the game — at once when it comes from the database — and written to and
    read from PGN. A game's moves are never overwritten any more: the old
    "the new line becomes a game of its own" is gone.
  • A guide. Help ▸ Pragma Chess Guide (F1) explains the application
    topic by topic, in the language of the interface. Type in the search field
    and the list shows the topics that match, each with the words found.
  • About Pragma Chess now credits the clubs that support the project —
    the first is ASD Circolo del Re, Castelvetrano Scacchi — and what the
    application is built with. Qt's notice is a button there, so the Help menu
    has a single About entry.
  • Annotations. Right-click a move of the move list: Annotations lists
    the symbols (!!, !, !?, ?!, ?, ??, □ and the assessments of the position,
    from +− to −+), each with what it means. They are shown in the move list,
    saved with the game and written to PGN; pasted PGN keeps them.
  • The same menu has Copy ▸ Copy Move and Copy Line up to Here.
  • The games list ends with a Line column: the first moves of each game,
    cut with “…” where the column ends.
  • Right-click a column title of the games list to hide the column or show a
    hidden one. The choice is stored in the database, so each database opens
    with its own columns.
  • A tutor in Training Mode. When your move is an inaccuracy, a mistake,
    a blunder or lets a winning chance go, the engine does not answer: the Engine panel
    says so and offers to take the move back, to explain it on the board or to
    go on. It needs no extra analysis: it reads the jump in the evaluation.
  • New Training has Remember for this session: once ticked, the toolbar
    button starts a training with that colour without asking, until the
    application is closed. Game ▸ New Training… always asks.
  • The toolbar has an icon each for the opening book, the engine and the
    database, with a drop-down list to choose another; the tooltip says which
    one is in use.
  • ChessBase files as a source. Database ▸ Connect Source… ▸ ChessBase
    files
    imports the games of a ChessBase database (.cbh) on this computer
    into the open database, main lines with players, event, date, result,
    ratings and ECO, and picks up games added to it later. When the file is not
    on the computer the sync says so and can ignore the source there.
  • Trash. Right-click a game of the list and choose Move Game to Trash.
    The database tree ends with Trash, where a game can be restored or
    deleted, with Recent (trashed in the last seven days) and Old under
    it. A game in the trash is in no other list and is not searched.
  • Optimize Database. Deleting is never immediate: Database ▸ Database
    Settings… ▸ Optimize Database
    removes the deleted games for good and
    compacts the file. Trashing, deleting and optimizing reach the other
    devices through the sync, so a deleted game does not come back.
  • Manage Engines marks the engine in use, and Use This Engine switches
    to the one selected; the choice is saved with the project.
  • The Android app hides the games a computer trashed or deleted, and asks to
    be updated when a database was made by a newer version of Pragma Chess.

Changed

  • File ▸ Sync… is now Options ▸ Sync Settings…, and File ▸ Sync Now is the
    toolbar's first button.
  • Options ▸ Board Settings… is now Graphics Settings…, and chooses the
    appearance too: follow the system, or always light, or always dark. It is
    kept on each computer, so each one can match its own desktop.
  • A little less space between the board and the Moves panel, the five
    buttons under the board are exactly under its middle, and the Moves
    panel's header lines up with the Opening Tree's to the pixel; the
    separators between panels are a light bar whose ends carry the grey of
    the panels' frames, so the frames' lines run on across them.
  • Resizing or showing a panel marks the project as changed, so Save
    Project keeps the new proportions; resizing the window keeps the
    proportions of the panels, so the project file does not depend on the
    window's size.
  • File ▸ New Project keeps the database, the engine and the panels as
    they are and starts a new, empty game seen from White's side, with
    Training Mode off.
  • Opening a game from the games list turns Training Mode off: a stored
    game is for studying, and the engine must not play moves in it.
  • Project files store the panels in clear: which are shown and their
    shares of the window in per cent, with two decimals (workspace in
    the .pch), so a
    project looks the same on another screen and can be read and edited by
    hand. Older projects are still read.
  • View lists the panels as Moves, Opening Tree, Engine and, last, Games
    List.
    -...
Read more

Pragma Chess 0.2.0

Choose a tag to compare

@github-actions github-actions released this 02 Oct 18:05

What's new

Added

  • Android app (beta). A board with navigation buttons, a native side
    menu, a local "My Games" database, games entered on the phone and analysis
    with any chess engine app installed on the phone (Open Exchange, as in
    DroidFish). The APK is linked from the README.
  • Phone Link. Options ▸ Connect Mobile App… shows a pairing QR code and
    the connected phones. Phone and computer find each other over Nostr relays
    and exchange databases over a WebRTC data channel.
  • One corpus across devices. Every database and every game has a
    universal id, so copies on the phone and on several computers are merged
    game by game (the newer version wins a conflict) and the phone carries
    databases from one computer to another.
  • Duplicate databases are merged. Files that are the same database are
    merged into one without losing games, and the merge propagates to the
    other devices through the folder sync.
  • Manage Engines. Engine ▸ Manage Engines… creates and edits engines
    (executable, threads, hash); Detect Engines adds the UCI engines
    installed on the computer. Engine ▸ Use Engine chooses the engine for
    analysis, saved in the project.
  • Stockfish is bundled. The installers ship Stockfish 19 as the default
    engine, so a new installation analyses right away; its source is attached
    to every release.
  • Database Settings. Database ▸ Database Settings… sets what a database
    is (Game Collection or Opening Book), its name and a description, stored in
    the file so they travel with it.
  • Filter games by the board. The database tree has a Board branch:
    Position lists the games in which the position on the board occurs,
    whatever the move order, and Variant the games that begin with exactly
    the moves played so far. Both follow the board, with live counts.
  • Repertoire. Right-click a move of the Opening Tree to add it to your
    repertoire or remove it. Repertoire moves are listed first, in bold. The
    mark is stored in the Polyglot book itself, which still works in engines
    and other programs.
  • Database results in the Opening Tree. A Database column shows how
    many games of the open database reach the position after each book move,
    and how many White won, drew and Black won.
  • Italian translation of the desktop interface.
  • Opening names in English and Italian, chosen in Options ▸ Opening
    Names
    ; until one is chosen they follow the interface language.
  • Book ▸ New Book… creates a copy of the shipped book under a new name.
  • Options ▸ Board Settings… places the captured pieces beside or below the
    board and shows whose turn it is with a dot beside the board.
  • Permanent download links: every release also carries each package under a
    name without the version, so the README always links the latest installer.

Changed

  • The move list draws the pieces with the figurines of chess books (SkakNew,
    bundled as the "Pragma Figurine" font).
  • The captured pieces moved from the game controls to a column beside the
    board, next to the player who took them, greyed out so they do not draw
    the eye.
  • The menus are now Game, Book, Engine, Database.
  • The opening names databases live in Books/Opening Names instead of the
    Databases folder: they are reference data, not games. Copies seeded by the
    previous version are moved there at startup.
  • The .pdb schema is now version 5 (database properties, universal ids for
    databases and games). Older files are upgraded when opened.

Fixed

  • The status bar text keeps clear of the window edges (rounded corners on
    macOS).

Install

System Download
Windows 10/11 (64-bit) PragmaChess-0.2.0-windows-x64-setup.exe Installer. A portable .zip is also available.
macOS 12+ on Apple Silicon PragmaChess-0.2.0-macos-arm64.dmg Open it and drag Pragma Chess to Applications.
Ubuntu 24.04+ / Debian 13+ pragma-chess_0.2.0_amd64.deb sudo apt install ./pragma-chess_0.2.0_amd64.deb
Fedora pragma-chess-0.2.0-1.*.x86_64.rpm sudo dnf install ./pragma-chess-0.2.0-1.*.x86_64.rpm

Stockfish is bundled as the default engine;
any other UCI engine can be added in Engine ▸ Manage Engines….

macOS: the app is not notarized by Apple yet. The first time, macOS says it
cannot check it: open System Settings ▸ Privacy & Security and click
Open Anyway (or run xattr -dr com.apple.quarantine "/Applications/Pragma Chess.app").

Windows: SmartScreen may warn about an unrecognized app: click
More info ▸ Run anyway.

SHA256SUMS.txt lists the checksums of every file. Each package is also
attached without the version in its name (PragmaChess-windows-x64-setup.exe,
…): those are the files behind the permanent "latest version" links of the
README.

Full Changelog: v0.1.0...v0.2.0

Pragma Chess 0.1.0

Choose a tag to compare

@github-actions github-actions released this 28 Sep 18:12

Install

System Download
Windows 10/11 (64-bit) PragmaChess-0.1.0-windows-x64-setup.exe Installer. A portable .zip is also available.
macOS 12+ on Apple Silicon PragmaChess-0.1.0-macos-arm64.dmg Open it and drag Pragma Chess to Applications.
Ubuntu 24.04+ / Debian 13+ pragma-chess_0.1.0_amd64.deb sudo apt install ./pragma-chess_0.1.0_amd64.deb
Fedora pragma-chess-0.1.0-1.*.x86_64.rpm sudo dnf install ./pragma-chess-0.1.0-1.*.x86_64.rpm

An engine is not bundled: install Stockfish
(or any UCI engine) and Pragma Chess finds it. The Linux packages recommend it.

macOS: the app is not notarized by Apple yet. The first time, macOS says it
cannot check it: open System Settings ▸ Privacy & Security and click
Open Anyway (or run xattr -dr com.apple.quarantine "/Applications/Pragma Chess.app").

Windows: SmartScreen may warn about an unrecognized app: click
More info ▸ Run anyway.

SHA256SUMS.txt lists the checksums of every file. Each package is also
attached without the version in its name (PragmaChess-windows-x64-setup.exe,
…): those are the files behind the permanent "latest version" links of the
README.

Full Changelog: https://github.com/francescobianco/pragma-chess/commits/v0.1.0