116 lines
5.3 KiB
Markdown
116 lines
5.3 KiB
Markdown
# 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)
|