尚未收集仓库信息。
尚未检测到更新。GitHub 发布版本后会显示在这里。
Éditeur de diagrammes libre et natif pour Linux, compatible .vsdx (non affilié à Microsoft)
翻译准备中
取自仓库 README
正在加载完整 README。
查看完整 README ↗Éditeur de diagrammes libre et natif pour Linux, à l'ergonomie familière pour les
habitués de Microsoft Visio : ruban, gabarits de formes, connecteurs dynamiques, connexion
automatique, repères d'alignement… et compatible avec les fichiers .vsdx.
Application Qt 6 (PyQt6), intégrée au bureau (GNOME, KDE, Wayland et X11). Site du projet : https://joss943.github.io/LinXdiagram/
Projet indépendant, non affilié à Microsoft, ni approuvé ou soutenu par Microsoft. Microsoft, Visio et Office sont des marques du groupe Microsoft, citées uniquement pour indiquer la compatibilité (voir THIRD_PARTY_NOTICES.md).
./run.sh # lancer depuis les sources
./install.sh # installer pour l'utilisateur (~/.local), avec entrée de menu
./install.sh --uninstall # désinstaller
Dépendances : Python ≥ 3.11 et PyQt6 (sudo dnf install python3-pyqt6 sur Fedora,
sudo apt install python3-pyqt6 python3-pyqt6.qtsvg sur Debian/Ubuntu). La police
Carlito (métriquement identique à Calibri) est utilisée si elle est installée.
| Onglet | Fonctions |
|---|---|
| Accueil | Coller, couper, copier, reproduire la mise en forme ; police, taille, A⁺/A⁻, effacer la mise en forme, gras, italique, souligné, barré, casse ; alignements ; Pointeur, Connecteur, Texte, outils de dessin (rectangle, ellipse, ligne, forme libre, arc) dont Stylo à main levée (Ctrl+7) ; Styles rapides (35 styles), Remplissage, Trait (couleur, épaisseur, tirets, flèches), Effets (ombre, lumière, dégradé) ; Aligner, Position (Aligner automatiquement et espacer, espacement automatique, distribuer), Premier plan, Arrière-plan, Grouper ; Modifier la forme, Calques, Sélectionner par type, Rechercher / Remplacer |
| Insertion | Page vierge, page d'arrière-plan (cartouche, logo, filigrane affichés derrière les pages qui l'utilisent), dupliquer, renommer, supprimer ; Images ; Conteneur (entoure la sélection ; onglet contextuel Format du conteneur : styles, ajuster au contenu, sélectionner le contenu, désassembler ; déplacer un conteneur déplace ses formes), Légende, Connecteur ; Lien (web ou page du document) ; Zone de texte, Info-bulle d'écran, Symbole ; Champ (date, heure, numéro et nombre de pages, nom de page, nom de fichier, titre, auteur), mis à jour automatiquement |
| Création | Orientation, Taille, Taille automatique, Mise en page ; Thèmes et Variantes ; Arrière-plans, Bordures et titres ; Redisposer la page, Connecteurs, sauts de ligne |
| Données | Créer à partir de données (organigramme ou diagramme de flux depuis un CSV), lier chaque forme à plusieurs fichiers CSV locaux par clé et actualiser toutes les sources à la demande, noms de colonnes préfixés automatiquement en cas de conflit, graphiques de données (étiquette et valeur, valeur seule ou pastille de statut avec couleurs configurables), fenêtre Données de forme, Rapports de forme (CSV). À l’export VSDX, les graphiques deviennent des annotations vectorielles statiques et séparables dans Visio ; les métadonnées LinXdiagram rétablissent leur association et leurs règles de couleur au réimport. |
| Processus | Sous-processus à partir de la sélection, Vérifier le diagramme, fenêtre Problèmes |
| Diagramme de flux interfonctionnel (contextuel) | Couloir (avant / après), Séparateur, nouveau diagramme horizontal ou vertical, Disposer les couloirs, Orientation du diagramme, Faire pivoter les étiquettes, Styles, Barre de titre, Séparateurs |
Modèle « Diagramme de flux interfonctionnel » et gabarit dédié : couloirs horizontaux ou verticaux, séparateurs de phases, cadre avec barre de titre.
Onglet contextuel « Diagramme de flux interfonctionnel », affiché dès qu'on utilise des couloirs, comme dans Visio : Couloir (avant/après), Séparateur, nouveau diagramme horizontal ou vertical, Disposer les couloirs, Orientation du diagramme (passe d'horizontal à vertical en gardant chaque forme dans son couloir et sa phase, et met la page en portrait ou en paysage), Faire pivoter les étiquettes des couloirs, galerie de styles, cases Barre de titre et Séparateurs.
Comportement de Visio : les couloirs restent accolés ; glisser un couloir le réordonne et emmène ses formes ; redimensionner un couloir décale les suivants ; insérer un couloir au milieu pousse ceux du dessous ; supprimer un couloir supprime son contenu et referme l'espace ; supprimer le cadre supprime toute la structure ; un nouveau séparateur coupe la phase où on le dépose sans rallonger le diagramme ; les nouveaux couloirs reprennent le style de leurs voisins. Tout est annulable.
Étiquettes de couloir verticales, intérieur des couloirs « transparent » aux clics (sélection par zone, formes posées dessus).
Créer à partir de données : une colonne « Fonction » dans le CSV produit directement un diagramme interfonctionnel, une ligne par fonction, étapes dans l'ordre du processus.
« Vérifier le diagramme » signale les étapes posées hors de tout couloir.
Export .vsdx : étiquettes verticales comprises, et cadre, couloirs et phases enregistrés comme
conteneurs Visio (User.msvStructureType, cellule Relationships), avec l'appartenance de
chaque forme à son couloir et à sa phase. Import des couloirs, séparateurs et cadres des
fichiers Visio.
Et aussi : AutoConnect avec mini-barre des formes rapides au survol des flèches bleues, collage dynamique ou statique des connecteurs, saisie directe du texte, poignées de rotation, grille dynamique, annulation illimitée, raccourcis clavier de Visio (Ctrl+1/2/3, Ctrl+Maj+F/B, Ctrl+Maj+G/U, Ctrl+R/L, Ctrl+H/J, F5…).
Exports : PDF (multipage, vectoriel), PNG, JPEG, SVG, .vsdx ; impression avec aperçu.
Le format VSDX est un paquet ZIP de parties XML publié par Microsoft (spécification ouverte [MS-VSDX]). LinXdiagram lit et écrit ce format directement, à partir de cette spécification et du comportement de libvisio (la bibliothèque de LibreOffice issue de la rétro-ingénierie du format) pour les points que la documentation ne précise pas. Aucun code de Microsoft n'est utilisé ni décompilé.
.vsd (Visio 2010 et antérieur) n'est pas lu — convertissez-le
d'abord en .vsdx..lxd en JSON strictement validé : liste blanche des champs, nombres finis
et bornés, tailles et quantités limitées, empreinte SHA-256 contre l'altération.packaging/flatpak) : bac à sable sans accès réseau.Aucune donnée n'est collectée ni transmise par LinXdiagram : pas de service cloud, de télémétrie ni de compte. Les liens web sont ouverts uniquement sur demande dans le navigateur du système. Tout reste sur votre ordinateur ; le nom de connexion du système n'est jamais inscrit dans les documents. Détails et emplacements des fichiers locaux : PRIVACY.md.
Toutes les commandes sont accessibles au clavier (raccourcis, recherche de commandes Alt+Q, navigation par Tab) et l'interface suit le thème clair ou sombre. Le site du projet vise le niveau AA des WCAG 2.1 (norme européenne EN 301 549).
Code sous licence MIT © 2026 Joss943 et les contributeurs — voir LICENSE. Composants tiers, polices, spécification [MS-VSDX] et marques : THIRD_PARTY_NOTICES.md. Signaler une faille : SECURITY.md. Contribuer : CONTRIBUTING.md.
python3 -m unittest discover -s tests -t .
LINX_TEST_LIBREOFFICE=1 python3 -m unittest tests.test_vsdx # + vérification par LibreOffice
Les tests couvrent la cryptographie, les fichiers malveillants, le format, le routage des connecteurs, la disposition automatique, l'import/export Visio et l'interface (souris et clavier simulés).
install.sh : installation utilisateur (menu, icône, type de fichier .lxd,
association .vsdx).packaging/rpm/linxdiagram.spec : paquet RPM pour Fedora.packaging/flatpak/ : manifeste Flatpak (runtime KDE + PyQt BaseApp).| Module | Rôle |
|---|---|
style.py, icons.py, ribbon.py, titlebar.py | Charte Visio, icônes, ruban, barre de titre |
stencils.py | Gabarits de formes (géométrie, points de connexion, zone de texte) |
items.py | Formes et connecteurs (poignées, rotation, texte, collage) |
scene.py | Interactions, magnétisme, repères, connexion automatique, opérations |
routing.py, layout.py | Routage des connecteurs, disposition automatique |
commands.py, document.py | Annulation/rétablissement, pages, document |
fileformat.py, security.py | Format .lxd validé, chiffrement, fichiers |
vsdx.py | Import/export Microsoft Visio |
export.py | PDF, PNG, JPEG, SVG, impression |
mainwindow.py, panes.py, canvas.py, backstage.py, widgets.py, dialogs.py, presentation.py | Interface |
quickstyles.py, datavis.py, swimlanes.py | Styles rapides et variantes, création à partir de données, couloirs |
| Volet Formes | Mes formes > Favoris : clic droit > « Ajouter aux Favoris » sur une forme ou une sélection, puis glisser-déposer ; renommer ou supprimer par clic droit dans le volet |
| Révision | Orthographe (F7, dictionnaires Hunspell du système, hors ligne, dictionnaire personnel) ; Commentaires (nouveau, précédent, suivant, supprimer, volet), verrouiller les formes, protéger le document |
| Affichage | Plein écran (présentation page par page), règle (repères tirés des règles, avec aimantation des formes ; les ramener sur la règle ou Suppr les efface), grille, grille dynamique, AutoConnect, points de connexion, magnétisme, Zoom, Ajuster à la fenêtre, Largeur de page, Nouvelle fenêtre, Volets des tâches |
| Développeur | ShapeSheet ; Opérations sur les formes (Union, Combiner, Fragmenter, Intersecter, Soustraire), Forme libre, Arc, Crayon ; import / export .vsdx, propriétés du document |