Files
Pena/docs/1-fonctionnel/1.2-Fonctionnalites.md

116 lines
5.3 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Fonctionnalités
Cette page liste l'ensemble des fonctionnalités visibles par l'utilisateur, regroupées par
thème.
## 1. Ouverture de documents
### Ouvrir un fichier Markdown
- Bouton **« Ouvrir un fichier Markdown »** sur l'écran d'accueil.
- Ouvre un sélecteur de fichiers natif, filtré sur l'extension `.md`.
- Une fois le fichier ouvert, la barre latérale liste **tous les `.md` du dossier parent**,
ce qui permet de basculer entre fichiers voisins.
### Ouvrir un dossier wiki
- Bouton **« Ouvrir un dossier wiki »** sur l'écran d'accueil.
- Ouvre un sélecteur de dossier natif.
- Tous les fichiers `.md` du dossier **et de ses sous-dossiers** sont listés (récursivement).
- Les fichiers et dossiers cachés (commençant par `.`) sont ignorés.
- Si un fichier `Home.md` ou `home.md` est présent à la racine, il est affiché en premier ;
sinon, c'est le premier fichier par ordre alphabétique.
## 2. Documents récents
- L'écran d'accueil affiche une section **« Récents »** (masquée si vide).
- Chaque entrée affiche une icône (📁 pour un dossier, 📄 pour un fichier), le nom et le
chemin parent.
- Un clic réouvre directement le fichier ou le dossier.
- Jusqu'à **8 entrées** sont conservées, sans doublon, dans le stockage local (localStorage,
clé `pena_recents`).
## 3. Navigation dans la documentation
### Barre latérale en arborescence
- Affiche la structure complète du dossier ouvert sous forme d'arbre.
- Les dossiers sont des sections repliables/dépliables (chevron).
- Fichiers et dossiers sont triés par **ordre naturel** : les préfixes numériques
sont comparés comme des nombres (`10` vient après `9`, et non après `1`).
- Dossiers et fichiers partagent la **même typographie** (taille et graisse) ;
seul le chevron ▶ distingue visuellement un dossier.
- Si un dossier contient un `home.md`, son nom devient un lien cliquable.
- Le document actuellement affiché est **surligné**, et les dossiers parents sont
automatiquement dépliés.
- Plusieurs niveaux de profondeur sont gérés avec une indentation progressive.
### Liens entre documents
- Les **liens Markdown relatifs** vers d'autres fichiers `.md`
(ex. `[autre page](../section/page.md)`) sont fonctionnels : un clic charge le document
cible dans Pena, sans quitter l'application. Les chemins relatifs (`../`, `./`) sont
résolus correctement.
- Les **liens externes** (`http://`, `https://`) s'ouvrent dans le navigateur par défaut
(nouvel onglet, avec `rel="noopener noreferrer"`).
- Les **ancres internes** (`#section`) restent des ancres de page.
## 4. Rendu Markdown
Le rendu prend en charge le standard **CommonMark** ainsi que les extensions suivantes :
| Extension | Exemple |
|---|---|
| Tableaux | `\| col A \| col B \|` |
| Texte barré | `~~barré~~` |
| Liens automatiques | une URL nue devient un lien cliquable |
| Listes de tâches | `- [ ] à faire` / `- [x] fait` |
Autres éléments rendus : titres `h1``h6`, code inline, blocs de code, citations
(blockquotes), listes, images (largeur adaptée), et liens.
## 5. Coloration syntaxique du code
- Les blocs de code délimités par triple backtick sont **colorés syntaxiquement** via
`syntect`.
- Le thème de coloration intégré est **`base16-ocean.dark`**.
- La syntaxe **TypeScript** est fournie en plus des syntaxes par défaut.
### Bouton « Copier » sur les blocs de code
- Chaque bloc de code affiche un bouton **« Copier »** en haut à droite.
- Un clic copie le contenu du bloc dans le presse-papiers.
- Un retour visuel temporaire (« Copié ! ») confirme l'action.
## 6. Personnalisation de l'apparence
Voir la page dédiée [Thèmes et personnalisation](1.4-Themes-et-personnalisation.md). En résumé :
- **6 thèmes rapides** prêts à l'emploi (Défaut, Mode sombre, Sépia, Grand texte,
Accent émeraude, Shell Indigo).
- Un **éditeur CSS** intégré, organisé en 4 onglets thématiques, permettant d'écrire son
propre CSS appliqué au rendu.
- Les choix sont **persistés** localement et réappliqués au démarrage suivant.
## 7. Fenêtre et barre de titre personnalisée
- L'application utilise une **barre de titre maison** (la décoration native est désactivée).
- Elle affiche le titre du document courant et propose les boutons **réduire**,
**agrandir / restaurer** et **fermer**.
- La fenêtre se déplace en glissant la barre de titre.
## 8. Rechargement automatique (live-reload)
- À l'ouverture d'un fichier ou d'un dossier, l'application **surveille** en continu son
contenu sur le disque.
- Quand le **document affiché** est modifié (par un éditeur externe, un `git pull`, etc.),
il est **rechargé automatiquement** — plus besoin de revenir à l'accueil et de rouvrir le
dossier.
- Quand un fichier `.md` est **ajouté ou supprimé** dans le dossier ouvert, la **sidebar**
se met à jour automatiquement pour refléter la nouvelle arborescence (le dossier du
document courant reste déplié).
- La surveillance s'arrête au retour à l'accueil et se réinitialise à chaque nouvelle
ouverture. Détails techniques :
[Surveillance de fichiers](../2-technique/2.2-Commandes-Tauri.md#surveillance-de-fichiers-watch).
## Voir aussi
- [Interface](1.3-Interface.md)
- [Thèmes et personnalisation](1.4-Themes-et-personnalisation.md)
- [Vue d'ensemble](1.1-Vue-d-ensemble.md)