Fork de Xournal++ pour musiciens — annotation de partitions et mode concert
- C++ 94.3%
- Lua 1.9%
- CMake 1.6%
- Shell 0.7%
- Python 0.6%
- Other 0.8%
|
Some checks failed
Upload translatable strings to Crowdin / Upload translatable strings to Crowdin (push) Has been cancelled
- README.md réécrit : présentation Leggio, fonctionnalités, build, install, roadmap - CHANGEMENTS.md : session 4 — installation GNOME, fix symlinks toolbar/pagetemplates - CMakeLists.txt : install explicite des fichiers .ini générés pour éviter les symlinks morts Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .github | ||
| 00_doc | ||
| cmake | ||
| debian | ||
| desktop | ||
| development | ||
| linux-setup | ||
| man | ||
| palettes | ||
| plugins | ||
| po | ||
| readme | ||
| resources | ||
| resources-templates | ||
| rpm/fedora | ||
| scripts | ||
| src | ||
| test | ||
| ui | ||
| .clang-format | ||
| .clang-tidy | ||
| .editorconfig | ||
| .git-blame-ignore-revs | ||
| .gitignore | ||
| ABOUT-NLS | ||
| appimagecraft.yml | ||
| AUTHORS | ||
| CHANGELOG.md | ||
| CMakeLists.txt | ||
| CONTRIBUTING.md | ||
| copyright.txt | ||
| crowdin.yml | ||
| Doxyfile | ||
| LICENSE | ||
| package_description | ||
| README.md | ||
Leggio
Leggio est un logiciel d'annotation de partitions et de gestion de concerts pour musiciens, tournant sous Linux (Fedora / GNOME).
Leggio désigne le pupitre à partitions en italien.
Basé sur Xournal++, Leggio apporte une interface et des fonctionnalités taillées pour deux cas d'usage musicaux complémentaires : l'annotation de partitions au quotidien, et le mode concert sur scène.
Fonctionnalités
Annotation de partitions
- Annotation PDF au stylet ou à la souris (nuances, doigtés, corrections)
- Bibliothèque de partitions : import PDF, vignettes, tags, recherche
- Annotations sauvegardées automatiquement liées à chaque partition
Mode concert (F5)
- Interface entièrement épurée : aucune barre visible
- Navigation pédale Bluetooth (AirTurn DUO BT500 et compatibles)
- Touches fléchées et Page_Down/Page_Up → page suivante/précédente
- Sortie du mode concert par double-tap en bas de l'écran (sans clavier)
Bibliothèque
- Import de partitions PDF avec titre, compositeur et tags
- Navigation par tags ou recherche plein texte
- Ouverture en un tap (bouton Ouvrir) ou double-clic
Base technique
| Élément | Détail |
|---|---|
| Base | Fork de Xournal++ |
| Langage | C++20 |
| UI | GTK3 / Cairo |
| Build | CMake + Ninja |
| Format | PDF + XOJ/XOPP |
| Plateforme | Linux (Fedora) |
| App ID | io.github.leggio.leggio |
Compilation
Prérequis (Fedora)
sudo dnf install -y \
cmake ninja-build gcc-c++ \
gtk3-devel glib2-devel libxml2-devel \
poppler-glib-devel librsvg2-devel \
libzip-devel lua-devel \
portaudio-devel libsndfile-devel \
gtksourceview4-devel qpdf-devel \
sqlite-devel help2man gettext
Build
cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo -G Ninja
ninja -C build
Lancer (build dev)
./build/leggio-wrapper
Installer comme application GNOME
cmake --install build --prefix ~/.local
# Fichier desktop
cp desktop/io.github.leggio.leggio.desktop.in \
~/.local/share/applications/io.github.leggio.leggio.desktop
# Icône GNOME (nom = App ID)
cp ui/pixmaps/leggio.svg \
~/.local/share/icons/hicolor/scalable/apps/io.github.leggio.leggio.svg
# Mise à jour du cache icônes
gtk-update-icon-cache -f -t ~/.local/share/icons/hicolor/
Structure du projet
leggioapp/
├── 00_doc/ # Documentation projet
│ ├── PROJET.md # Vision et statut
│ ├── CHANGEMENTS.md # Journal technique
│ └── BUILD.md # Guide de compilation
├── src/core/
│ ├── library/ # Bibliothèque de partitions (Leggio)
│ │ ├── LibraryDatabase.h/cpp # Couche SQLite
│ │ ├── LibraryDialog.h/cpp # Interface GTK
│ │ ├── LibraryManager.h/cpp # Logique métier
│ │ └── LibraryScore.h # Modèle de données
│ ├── control/ # Contrôleurs principaux
│ └── gui/ # Interface GTK
├── ui/
│ ├── pixmaps/leggio.svg # Logo pupitre
│ └── toolbar.ini # Configuration toolbar
└── desktop/
└── io.github.leggio.leggio.desktop.in
Roadmap
- Phase 1 — Fondations : renommage, mode concert, navigation pédale
- Phase 2 — Bibliothèque de partitions
- Phase 3 — Gestion de setlist
- Phase 4 — Support écran externe / projecteur
- Phase 5 — Outils d'annotation musicaux (nuances, articulations)
Projet personnel — Julien