i18n: add data-i18n to all body text in help-ai through help-astuces
- 94 <p>, <li>, <h3>, <h4> elements now have data-i18n - AI Editor section: 16 English translations provided - 251 new keys total across all sections - Remaining 80 placeholder keys in sharing/webhooks/backups/security/tips - en.json: 1068 -> 1162, fr.json: 1068 -> 1162
This commit is contained in:
+94
-94
@@ -3665,7 +3665,7 @@
|
||||
|
||||
<section class="help-section" id="help-ai">
|
||||
<h2 data-i18n="auto.c4922a99">🤖 Intelligence Artificielle dans l'Éditeur</h2>
|
||||
<p>
|
||||
<p data-i18n="help.desc_b5f89b3b">
|
||||
ObsiGate intègre un assistant IA directement
|
||||
dans l'éditeur de texte. Pour l'activer,
|
||||
configurez au moins un provider AI dans le
|
||||
@@ -3675,12 +3675,12 @@
|
||||
|
||||
<h3 data-i18n="help.activation">Activation</h3>
|
||||
<ol>
|
||||
<li>
|
||||
<li data-i18n="help.desc_f53badcd">
|
||||
Ajoutez votre clé API dans
|
||||
<code>.env</code> :
|
||||
<code>DEEPSEEK_API_KEY=sk-...</code>
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_ba4578ae">
|
||||
Redémarrez le conteneur :
|
||||
<code
|
||||
>docker compose down && docker compose
|
||||
@@ -3698,18 +3698,18 @@
|
||||
</ol>
|
||||
|
||||
<h3 data-i18n="help.toolbar_section">Barre d'outils AI</h3>
|
||||
<p>
|
||||
<p data-i18n="help.desc_803161e5">
|
||||
La barre d'outils contient les boutons suivants
|
||||
:
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_e0525213">
|
||||
<strong>✦ AI</strong><span data-i18n="help.desc_3ace259e"> — Complétion inline
|
||||
(</span><kbd>Ctrl+J</kbd>). <span data-i18n="help.ai_completes">Complète</span>
|
||||
automatiquement le texte là où se trouve le
|
||||
curseur.
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_11cf9e8a">
|
||||
<strong data-i18n="auto.a105a2d9">Éditer ▾</strong><span data-i18n="help.desc_a0ec890a"> — Menu de
|
||||
modification du texte sélectionné :</span><ul>
|
||||
<li>
|
||||
@@ -3718,7 +3718,7 @@
|
||||
Améliore la qualité, la clarté et le
|
||||
flux du texte
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_a6cb3b26">
|
||||
🔤
|
||||
<strong
|
||||
>Fix spelling & grammar</strong
|
||||
@@ -3726,17 +3726,17 @@
|
||||
: Corrige les fautes d'orthographe
|
||||
et de grammaire
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_5a53de53">
|
||||
📏 <strong>Make shorter</strong> :
|
||||
Rend le texte plus concis tout en
|
||||
préservant l'information
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_e36f3eaa">
|
||||
📐 <strong>Make longer</strong> :
|
||||
Ajoute des détails, exemples ou
|
||||
explications
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_3d4e9189">
|
||||
📋
|
||||
<strong>Simplify language</strong> :
|
||||
Simplifie le langage, évite le
|
||||
@@ -3744,7 +3744,7 @@
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_5524e921">
|
||||
<strong>Ton ▾</strong> — Change le ton du
|
||||
texte :
|
||||
<ul>
|
||||
@@ -3752,13 +3752,13 @@
|
||||
💼 <strong>Professional</strong> :
|
||||
Ton formel et professionnel
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_759926ee">
|
||||
💬 <strong>Casual</strong> : <span data-i18n="help.ai_tone_casual">Ton</span>
|
||||
décontracté et conversationnel
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_7ab5be50">
|
||||
<strong>Traduire ▾</strong><span data-i18n="help.desc_1c130d89"> — Traduit le
|
||||
texte sélectionné vers une autre langue :</span><ul>
|
||||
<li>
|
||||
@@ -3768,7 +3768,7 @@
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_47e1e10f">
|
||||
<strong data-i18n="auto.ce4eb802">Générer ▾</strong><span data-i18n="help.desc_991307d6"> — Génère du
|
||||
contenu à partir de la sélection :</span><ul>
|
||||
<li>
|
||||
@@ -3776,11 +3776,11 @@
|
||||
Explique le texte sélectionné de
|
||||
façon claire
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_e5cf90b2">
|
||||
📝 <strong>Summarize</strong> :
|
||||
Résume le texte de façon concise
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_f2d4e369">
|
||||
✏️
|
||||
<strong>Continue writing</strong> :
|
||||
Continue l'écriture à partir du
|
||||
@@ -3788,12 +3788,12 @@
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_aec0ad2c">
|
||||
<strong data-i18n="auto.62c3d50d">💬 Réécrire</strong><span data-i18n="help.desc_c63f02cc"> — Réécrit le
|
||||
texte selon vos instructions personnalisées.
|
||||
Une boîte de dialogue vous demande votre
|
||||
instruction.</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_d9e8ab0b">
|
||||
<strong data-i18n="auto.0257e77f">🧰 Boîte ▾</strong> — Outils de
|
||||
conversion :
|
||||
<ul>
|
||||
@@ -3803,19 +3803,19 @@
|
||||
Transforme le texte en liste
|
||||
Markdown
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_13d206d4">
|
||||
📊
|
||||
<strong>Convert to table</strong> :
|
||||
Transforme en tableau Markdown
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_50a33a05">
|
||||
⚙️
|
||||
<strong
|
||||
>Generate frontmatter</strong
|
||||
>
|
||||
: Génère un bloc YAML frontmatter
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_fa126609">
|
||||
🔷
|
||||
<strong>Convert to canvas</strong> :
|
||||
Convertit en diagramme Mermaid.js
|
||||
@@ -3826,26 +3826,26 @@
|
||||
|
||||
<h3 data-i18n="help.096367af">Indicateurs visuels</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_7ff2fa21">
|
||||
Pendant une requête AI, un toast
|
||||
<strong
|
||||
>⏳ AI: traitement en cours...</strong
|
||||
>
|
||||
s'affiche
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_a13f7f2c">
|
||||
Une fois terminé,
|
||||
<strong data-i18n="auto.4d281c6c">AI: texte traité ✓</strong> confirme
|
||||
le succès
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_32e3d66d">
|
||||
En cas d'erreur de clé API :
|
||||
<strong data-i18n="auto.13eb7a51">AI: clé API invalide</strong>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h3 data-i18n="help.2dad2bfd">Sauvegarde automatique</h3>
|
||||
<p>
|
||||
<p data-i18n="help.desc_19cfa369">
|
||||
L'éditeur sauvegarde automatiquement après 2
|
||||
secondes d'inactivité. Le bouton de sauvegarde
|
||||
<strong data-i18n="help.ai_flash_green">flashe en vert</strong> brièvement pour
|
||||
@@ -3875,7 +3875,7 @@
|
||||
<td><code>gemini-2.0-flash</code></td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>
|
||||
<p data-i18n="help.desc_555e0305">
|
||||
Pour changer de provider par défaut :
|
||||
<code>AI_DEFAULT_PROVIDER=openrouter</code>
|
||||
</p>
|
||||
@@ -3886,29 +3886,29 @@
|
||||
<h2 data-i18n="help.8c65b2f2">🔗 Partage et Webhooks</h2>
|
||||
|
||||
<h3 data-i18n="help.public_shares">Publication publique</h3>
|
||||
<p>
|
||||
<p data-i18n="help.desc_13d90039">
|
||||
ObsiGate permet de partager des documents via un
|
||||
lien public temporaire.
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_7e86626c">
|
||||
<strong data-i18n="help.share_button">Bouton Partager</strong><span data-i18n="help.desc_d66e911c"> : Dans les
|
||||
actions du fichier, génère un lien unique</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_985d759b">
|
||||
<strong>Token unique</strong><span data-i18n="help.desc_04493800"> : 64
|
||||
caractères hexadécimaux, impossible à
|
||||
deviner</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_ec5f7a26">
|
||||
<strong>Expiration configurable</strong><span data-i18n="help.desc_858681a1"> :
|
||||
Durée de vie en heures</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_071da87a">
|
||||
<strong>Lecture seule</strong><span data-i18n="help.desc_e47d2328"> : La vue
|
||||
publique n'affiche que le contenu sans
|
||||
édition</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_2c220763">
|
||||
<strong>Gestion des liens</strong><span data-i18n="help.desc_5e9a7fd9"> : Liste
|
||||
et révocation dans les Configurations</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_cfe362a7">
|
||||
<strong data-i18n="help.pdf_export">Export PDF</strong><span data-i18n="help.desc_e93517a5"> : Téléchargement
|
||||
du document partagé en PDF via</span><code>/s/{token}/pdf</code>
|
||||
</li>
|
||||
@@ -3918,7 +3918,7 @@
|
||||
<!-- 🪝 Webhooks -->
|
||||
<section class="help-section" id="help-webhooks">
|
||||
<h2 data-i18n="help.29afa01d">🪝 Webhooks</h2>
|
||||
<p>
|
||||
<p data-i18n="help.desc_a9c2c520">
|
||||
Les webhooks permettent à ObsiGate de
|
||||
<strong
|
||||
data-i18n="help.webhook_notify">notifier automatiquement des services
|
||||
@@ -3932,23 +3932,23 @@
|
||||
|
||||
<h3 data-i18n="help.use_cases">Cas d'usage</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_2349271d">
|
||||
<strong data-i18n="help.ci_cd">Automatisation CI/CD</strong><span data-i18n="help.desc_1ba39cc4"> :
|
||||
Déclencher un build quand une note de
|
||||
procédure est mise à jour</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_d915c72b">
|
||||
<strong data-i18n="header.sync_status">Synchronisation</strong><span data-i18n="help.desc_d9cdaa89"> : Copier
|
||||
les nouveaux fichiers vers un autre système
|
||||
(SharePoint, Google Drive)</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_cc8e35ba">
|
||||
<strong>Notifications</strong><span data-i18n="help.desc_6f7c5889"> : Alerter un
|
||||
canal Slack/Discord quand un document est
|
||||
créé</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_660051b0">
|
||||
<strong data-i18n="help.external_audit">Audit externe</strong><span data-i18n="help.desc_599f3242"> : Logger
|
||||
toutes les modifications dans une base de
|
||||
données externe</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_89a8f5de">
|
||||
<strong data-i18n="auto.a232672b">Déploiement</strong><span data-i18n="help.desc_2f2c16b5"> : Publier un
|
||||
article de blog quand un fichier est marqué</span><code>publish: true</code>
|
||||
</li>
|
||||
@@ -4180,7 +4180,7 @@
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<p>
|
||||
<p data-i18n="help.desc_39e97b2f">
|
||||
<em
|
||||
data-i18n="help.webhook_note">Note : l'événement
|
||||
<code>file_modified</code> est réservé pour
|
||||
@@ -4191,7 +4191,7 @@
|
||||
</p>
|
||||
|
||||
<h3 data-i18n="help.77f4f06e">Format du payload</h3>
|
||||
<p>
|
||||
<p data-i18n="help.desc_56760d7f">
|
||||
Chaque webhook reçoit un <code>POST</code> avec
|
||||
<code>Content-Type: application/json</code> :
|
||||
</p>
|
||||
@@ -4203,7 +4203,7 @@
|
||||
overflow-x: auto;
|
||||
font-size: 0.78rem;
|
||||
"
|
||||
><code>{
|
||||
data-i18n="help.desc_c1f72521"><code>{
|
||||
"event": "file_created",
|
||||
"timestamp": "2026-06-03T14:30:00.123456+00:00",
|
||||
"data": {
|
||||
@@ -4226,7 +4226,7 @@
|
||||
overflow-x: auto;
|
||||
font-size: 0.78rem;
|
||||
"
|
||||
><code>X-ObsiGate-Signature: sha256=9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08</code></pre>
|
||||
data-i18n="help.desc_3db2812f"><code>X-ObsiGate-Signature: sha256=9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08</code></pre>
|
||||
<p>
|
||||
Pour vérifier côté récepteur : calculez
|
||||
<code>HMAC-SHA256(corps_brut, secret)</code> et
|
||||
@@ -4236,27 +4236,27 @@
|
||||
</p>
|
||||
|
||||
<h3 data-i18n="config.title">Configuration</h3>
|
||||
<p>
|
||||
<p data-i18n="help.desc_b6169f2e">
|
||||
Les webhooks se gèrent dans le modal
|
||||
<strong data-i18n="header.menu_config">Configurations</strong> (⚙️ menu
|
||||
Options), section Webhooks. Réservé aux
|
||||
administrateurs.
|
||||
</p>
|
||||
<ol>
|
||||
<li>
|
||||
<li data-i18n="help.desc_a601f22e">
|
||||
Allez dans ⚙️ Configurations → onglet
|
||||
Webhooks
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_c992f2e5">
|
||||
Remplissez :
|
||||
<strong data-i18n="config.webhook_name_placeholder">Nom</strong> (descriptif),
|
||||
<strong data-i18n="config.webhook_url_placeholder">URL</strong> (endpoint cible),
|
||||
<strong>Secret</strong> (optionnel)
|
||||
</li>
|
||||
<li data-i18n="auto.7c9cdc3c">Cochez les événements à écouter</li>
|
||||
<li>Cliquez <strong data-i18n="config.add_webhook">Ajouter</strong></li>
|
||||
<li data-i18n="help.desc_f58da6e1">Cliquez <strong data-i18n="config.add_webhook">Ajouter</strong></li>
|
||||
</ol>
|
||||
<p>
|
||||
<p data-i18n="help.desc_3da1896a">
|
||||
Les webhooks peuvent être activés/désactivés,
|
||||
modifiés ou supprimés à tout moment. Le
|
||||
<code>last_fired_at</code> indique la dernière
|
||||
@@ -4274,22 +4274,22 @@
|
||||
overflow-x: auto;
|
||||
font-size: 0.78rem;
|
||||
"
|
||||
><code>from flask import Flask, request\nimport hmac, hashlib\n\napp = Flask(__name__)\nWEBHOOK_SECRET = "mon-secret" # même que dans ObsiGate\n\[email protected]("/webhook", methods=["POST"])\ndef webhook():\n # Vérifier la signature\n signature = request.headers.get("X-ObsiGate-Signature", "")\n body = request.get_data()\n expected = "sha256=" + hmac.new(\n WEBHOOK_SECRET.encode(), body, hashlib.sha256\n ).hexdigest()\n if not hmac.compare_digest(signature, expected):\n return "Invalid signature", 403\n\n payload = request.get_json()\n print(f"Événement: {payload['event']}")\n print(f"Fichier: {payload['data']['vault']}/{payload['data']['path']}")\n return "OK", 200\n\napp.run(port=5000)</code></pre>
|
||||
data-i18n="help.desc_6d68fbc9"><code>from flask import Flask, request\nimport hmac, hashlib\n\napp = Flask(__name__)\nWEBHOOK_SECRET = "mon-secret" # même que dans ObsiGate\n\[email protected]("/webhook", methods=["POST"])\ndef webhook():\n # Vérifier la signature\n signature = request.headers.get("X-ObsiGate-Signature", "")\n body = request.get_data()\n expected = "sha256=" + hmac.new(\n WEBHOOK_SECRET.encode(), body, hashlib.sha256\n ).hexdigest()\n if not hmac.compare_digest(signature, expected):\n return "Invalid signature", 403\n\n payload = request.get_json()\n print(f"Événement: {payload['event']}")\n print(f"Fichier: {payload['data']['vault']}/{payload['data']['path']}")\n return "OK", 200\n\napp.run(port=5000)</code></pre>
|
||||
|
||||
<h4 data-i18n="help.d1ea1dc6">n8n / Make (no-code)</h4>
|
||||
<ol>
|
||||
<li>
|
||||
<li data-i18n="help.desc_6bc48f59">
|
||||
Créez un
|
||||
<strong>Webhook Trigger</strong> dans n8n ou
|
||||
Make
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_7819b56f">
|
||||
Copiez l'URL générée (ex:
|
||||
<code
|
||||
>https://n8n.monserveur.com/webhook/abc123</code
|
||||
>)
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_7b45490b">
|
||||
Dans ObsiGate, ajoutez un webhook pointant
|
||||
vers cette URL
|
||||
</li>
|
||||
@@ -4314,7 +4314,7 @@
|
||||
overflow-x: auto;
|
||||
font-size: 0.78rem;
|
||||
"
|
||||
><code># Exemple avec curl + jq dans un script bash
|
||||
data-i18n="help.desc_fc9391f3"><code># Exemple avec curl + jq dans un script bash
|
||||
WEBHOOK_URL="https://discord.com/api/webhooks/..."
|
||||
OBSIGATE_SECRET="mon-secret"
|
||||
|
||||
@@ -4345,19 +4345,19 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
|
||||
<h3 data-i18n="help.381abec7">Limitations actuelles</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_85effb89">
|
||||
Timeout de <strong>5 secondes</strong> par
|
||||
requête — les webhooks sont "fire and
|
||||
forget" (pas de retry)
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_dc4d7186">
|
||||
Les modifications détectées par le watcher
|
||||
filesystem (watchdog)
|
||||
<strong data-i18n="auto.98c547ea">ne déclenchent pas</strong> de
|
||||
webhooks — seules les opérations via l'API
|
||||
REST sont prises en compte
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_d3a71d97">
|
||||
<code>file_modified</code> n'est pas encore
|
||||
dispatché (réservé pour version future)
|
||||
</li>
|
||||
@@ -4377,15 +4377,15 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
avant chaque modification destructive.
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_7671e56a">
|
||||
<strong data-i18n="help.before_write">Avant écriture</strong> : Sauvegarde
|
||||
du contenu original dans
|
||||
<code>.obsigate-backup/</code>
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_e7e3157a">
|
||||
<strong>Timestamp</strong><span data-i18n="help.desc_31e7253b"> : Chaque backup
|
||||
est horodaté</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_a69804cd">
|
||||
<strong data-i18n="auto.41d7c6af">Répertoire dédié</strong> :
|
||||
<code>.obsigate-backup/</code> dans le
|
||||
répertoire de la vault
|
||||
@@ -4398,16 +4398,16 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
dans un journal.
|
||||
</p>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_a974f7a6">
|
||||
<strong>Journal</strong> : Fichier
|
||||
<code>data/audit.log</code> au format JSON
|
||||
lines
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_3c4711b8">
|
||||
<strong data-i18n="auto.598a0ca7">Événements tracés</strong><span data-i18n="help.desc_9f321d1e"> :
|
||||
Écritures, suppressions, changements de
|
||||
configuration</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_68c2b170">
|
||||
<strong>Rotation</strong><span data-i18n="help.desc_19cf5730"> : Rotation
|
||||
automatique à 10 Mo</span></li>
|
||||
</ul>
|
||||
@@ -4419,48 +4419,48 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
|
||||
<h3 data-i18n="help.c48fb18a">Authentification</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_7708f226">
|
||||
<strong>JWT + Argon2id</strong><span data-i18n="help.desc_8f0bffe3"> : Tokens JWT
|
||||
avec mots de passe hachés Argon2id</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_b54c21ef">
|
||||
<strong data-i18n="auto.72e515fa">Contrôle d'accès par vault</strong>
|
||||
: Chaque utilisateur voit uniquement ses
|
||||
vaults
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_f952db17">
|
||||
<strong>Refresh tokens</strong> : Cookies
|
||||
HttpOnly avec rotation automatique
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_1577912b">
|
||||
<strong data-i18n="help.rate_limiting">Rate limiting</strong> : 10
|
||||
tentatives / 15 min par IP + verrouillage
|
||||
compte
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_d646b709">
|
||||
<strong>Compte admin</strong><span data-i18n="help.desc_5fc28b7d"> : Créé
|
||||
automatiquement au premier démarrage</span></li>
|
||||
</ul>
|
||||
|
||||
<h3 data-i18n="help.83f1d9ca">Protection</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_bc08f215">
|
||||
<strong>Secret redactor</strong><span data-i18n="help.desc_9846fc07"> : Masque
|
||||
JWT, clés API, tokens GitHub dans les
|
||||
aperçus</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_7f1d0512">
|
||||
<strong>Path traversal</strong> : Validation
|
||||
des chemins contre les attaques
|
||||
<code>../</code>
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_9d0e39d0">
|
||||
<strong>Headers CSP</strong> :
|
||||
Content-Security-Policy, X-Frame-Options,
|
||||
XSS-Protection
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_1f11691c">
|
||||
<strong data-i18n="help.atomic_writes">Atomic writes</strong><span data-i18n="help.desc_752789ab"> : Écriture
|
||||
via fichier temporaire + renommage atomique</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_723ed8db">
|
||||
<strong>Non-root Docker</strong> : Conteneur
|
||||
tourne avec UID 1000
|
||||
</li>
|
||||
@@ -4472,44 +4472,44 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
|
||||
<h3 data-i18n="auto.559ef1da">Workflow recommandé</h3>
|
||||
<ol>
|
||||
<li>
|
||||
<li data-i18n="help.desc_625112fd">
|
||||
<strong data-i18n="auto.678711b5">Sélectionnez un contexte</strong><span data-i18n="help.desc_39979e71"> :
|
||||
Choisissez un vault pour réduire le bruit</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_9186a3a3">
|
||||
<strong>Explorez l'arborescence</strong> :
|
||||
Naviguez dans les dossiers
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_93902d18">
|
||||
<strong data-i18n="help.tip_use_tags">Utilisez les tags</strong> : Filtrez
|
||||
par tags pour affiner
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_cdf7bb46">
|
||||
<strong>Recherchez intelligemment</strong><span data-i18n="help.desc_ae213f54"> :
|
||||
Combinez opérateurs et texte libre</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_5396ed9e">
|
||||
<strong>Profitez de l'historique</strong><span data-i18n="help.desc_71eeb16a"> :
|
||||
Réutilisez vos recherches fréquentes</span></li>
|
||||
</ol>
|
||||
|
||||
<h3 data-i18n="help.fe388b67">Optimisations</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_1a04ae18">
|
||||
<strong data-i18n="help.tip_hide_sidebar">Masquez la sidebar</strong> : Plus
|
||||
d'espace pour le contenu
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_0f9a1e5b">
|
||||
<strong
|
||||
data-i18n="help.tip_sidebar_filter">Utilisez le filtrage sidebar</strong
|
||||
>
|
||||
: Plus rapide que la recherche globale pour
|
||||
trouver un fichier
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_6902f20d">
|
||||
<strong data-i18n="auto.3be698f6">Favorisez les opérateurs</strong> :
|
||||
<code>tag:</code> et
|
||||
<code>vault:</code> accélèrent la recherche
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_664b1d09">
|
||||
<strong data-i18n="help.breadcrumb_clickable">Breadcrumb cliquable</strong> :
|
||||
Repositionnez rapidement la sidebar
|
||||
</li>
|
||||
@@ -4517,28 +4517,28 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
|
||||
<h3 data-i18n="help.2a92203f">Trucs et astuces</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_58d2326f">
|
||||
<strong>Navigation visuelle</strong> : Le
|
||||
breadcrumb repositionne automatiquement la
|
||||
sidebar
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_698d92ec">
|
||||
<strong>Gestion de l'espace</strong><span data-i18n="help.desc_287be69c"> :
|
||||
Réduisez les sections Vaults/Tags selon vos
|
||||
besoins</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_e6129268">
|
||||
<strong>Confort de lecture</strong> :
|
||||
Ajustez la largeur de la sidebar
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_5374685a">
|
||||
<strong>Mobile-friendly</strong> : Utilisez
|
||||
le bouton hamburger sur mobile
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_443b76b5">
|
||||
<strong data-i18n="help.wikilinks">Wikilinks</strong> : Naviguez entre
|
||||
notes comme dans Obsidian
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_0739c6a9">
|
||||
<strong>Images</strong> : Support complet
|
||||
des syntaxes Obsidian
|
||||
</li>
|
||||
@@ -4546,36 +4546,36 @@ curl -X POST https://votre-serveur.com/webhook \
|
||||
|
||||
<h3 data-i18n="help.advanced_use_cases">Cas d'usage avancés</h3>
|
||||
<ul>
|
||||
<li>
|
||||
<li data-i18n="help.desc_87b348c3">
|
||||
<strong data-i18n="auto.b86ba5ea">Recherche multi-critères</strong> :
|
||||
<code
|
||||
>tag:docker tag:linux vault:IT
|
||||
nginx</code
|
||||
>
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_40c92863">
|
||||
<strong>Exploration par tags</strong> :
|
||||
Cliquez sur un tag dans une note pour voir
|
||||
toutes les notes similaires
|
||||
</li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_26f81732">
|
||||
<strong data-i18n="auto.4fa5d7c2">Édition rapide</strong><span data-i18n="help.desc_cb6f0bfd"> : Ouvrez
|
||||
l'éditeur, modifiez, sauvegardez</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_99c6f0ec">
|
||||
<strong data-i18n="help.export">Export</strong><span data-i18n="help.desc_f9083ce5"> : Téléchargez des
|
||||
fichiers pour backup ou partage</span></li>
|
||||
<li>
|
||||
<li data-i18n="help.desc_ecf302ae">
|
||||
<strong data-i18n="auto.79f6e1dd">Multi-fenêtres</strong><span data-i18n="help.desc_9cb5974c"> : Ouvrez
|
||||
plusieurs notes dans des onglets séparés</span></li>
|
||||
</ul>
|
||||
</section>
|
||||
|
||||
<div class="help-footer">
|
||||
<p>
|
||||
<p data-i18n="help.desc_eebf177f">
|
||||
<strong>ObsiGate v1.7.0</strong> - Porte
|
||||
d'entrée web pour vos vaults Obsidian
|
||||
</p>
|
||||
<p>
|
||||
<p data-i18n="help.desc_188bc423">
|
||||
Pour plus d'informations, consultez le
|
||||
<a
|
||||
href="https://git.dracodev.net/Projets/ObsiGate"
|
||||
|
||||
Reference in New Issue
Block a user