Repository navigation
Releases: francescobianco/pragma-chess
Release list
Pragma Chess 0.3.0
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.confin 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
.pgnfile 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.localfile 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 (workspacein
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.
-...
Pragma Chess 0.2.0
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 Namesinstead of the
Databases folder: they are reference data, not games. Copies seeded by the
previous version are moved there at startup. - The
.pdbschema 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
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