docs: lint

This commit is contained in:
windingwind 2024-12-26 14:52:05 +01:00
parent 8e9b488875
commit fa00a4bb42
2 changed files with 36 additions and 36 deletions

View File

@ -1,4 +1,5 @@
# Modèle d'extension Zotero # Modèle d'extension Zotero
[![zotero target version](https://img.shields.io/badge/Zotero-7-green?style=flat-square&logo=zotero&logoColor=CC2936)](https://www.zotero.org) [![zotero target version](https://img.shields.io/badge/Zotero-7-green?style=flat-square&logo=zotero&logoColor=CC2936)](https://www.zotero.org)
[![Using Zotero Plugin Template](https://img.shields.io/badge/Using-Zotero%20Plugin%20Template-blue?style=flat-square&logo=github)](https://github.com/windingwind/zotero-plugin-template) [![Using Zotero Plugin Template](https://img.shields.io/badge/Using-Zotero%20Plugin%20Template-blue?style=flat-square&logo=github)](https://github.com/windingwind/zotero-plugin-template)
@ -20,6 +21,7 @@ Ceci est un modèle pour développer une extension pour [Zotero](https://www.zot
> 👁 Surveillez ce dépôt afin d'être informé des corrections et des mises à jour. > 👁 Surveillez ce dépôt afin d'être informé des corrections et des mises à jour.
## Exetensions développées sur la base de ce modèle ## Exetensions développées sur la base de ce modèle
[![GitHub Repo stars](https://img.shields.io/github/stars/windingwind/zotero-better-notes?label=zotero-better-notes&style=flat-square)](https://github.com/windingwind/zotero-better-notes) [![GitHub Repo stars](https://img.shields.io/github/stars/windingwind/zotero-better-notes?label=zotero-better-notes&style=flat-square)](https://github.com/windingwind/zotero-better-notes)
[![GitHub Repo stars](https://img.shields.io/github/stars/windingwind/zotero-pdf-preview?label=zotero-pdf-preview&style=flat-square)](https://github.com/windingwind/zotero-pdf-preview) [![GitHub Repo stars](https://img.shields.io/github/stars/windingwind/zotero-pdf-preview?label=zotero-pdf-preview&style=flat-square)](https://github.com/windingwind/zotero-pdf-preview)
[![GitHub Repo stars](https://img.shields.io/github/stars/windingwind/zotero-pdf-translate?label=zotero-pdf-translate&style=flat-square)](https://github.com/windingwind/zotero-pdf-translate) [![GitHub Repo stars](https://img.shields.io/github/stars/windingwind/zotero-pdf-translate?label=zotero-pdf-translate&style=flat-square)](https://github.com/windingwind/zotero-pdf-translate)
@ -131,6 +133,7 @@ S'active avec `Shift+P`.
- registerAlertPromptExample - registerAlertPromptExample
## Guide de démarrage rapide ## Guide de démarrage rapide
### 0. Pré-requis ### 0. Pré-requis
1. Installez une version beta de Zotero: <https://www.zotero.org/support/beta_builds> 1. Installez une version beta de Zotero: <https://www.zotero.org/support/beta_builds>
@ -186,10 +189,11 @@ S'active avec `Shift+P`.
> Créez un profil de développement (Optionnel) > Créez un profil de développement (Optionnel)
> Démarrez la version beta de Zotero avec `/path/to/zotero -p`. Créez un nouveau profil et utilisez-le comme profil de développement. Ne le faites qu'une seule fois ! > Démarrez la version beta de Zotero avec `/path/to/zotero -p`. Créez un nouveau profil et utilisez-le comme profil de développement. Ne le faites qu'une seule fois !
```sh
cp .env.example .env ```sh
vim .env cp .env.example .env
``` vim .env
```
Si vous développez plus d'une extension, vous pouvez stocker le chemin bin et le chemin profile dans les variables d'environnement du système, qui peuvent être omises ici. Si vous développez plus d'une extension, vous pouvez stocker le chemin bin et le chemin profile dans les variables d'environnement du système, qui peuvent être omises ici.
@ -202,6 +206,7 @@ S'active avec `Shift+P`.
### 3. Codez ! ### 3. Codez !
Démarrez le serveur de développement avec `npm start`: Démarrez le serveur de développement avec `npm start`:
- Il fera La pré-construction de l'extension en mode développement - Il fera La pré-construction de l'extension en mode développement
- Il démarrera Zotero avec l'extension chargée depuis `build/` - Il démarrera Zotero avec l'extension chargée depuis `build/`
- Il surveillera `src/**` et `addon/**`. - Il surveillera `src/**` et `addon/**`.
@ -238,6 +243,7 @@ Vous pouvez également :
Exécutez `npm run build` construire l'extension en mode production : t le xpi pour l'installation et le code construit se trouve dans le dossier `build`. Exécutez `npm run build` construire l'extension en mode production : t le xpi pour l'installation et le code construit se trouve dans le dossier `build`.
Étapes de la construction : Étapes de la construction :
- Créez/videz `build/`. - Créez/videz `build/`.
- Copiez `addon/**` dans `build/addon/**`. - Copiez `addon/**` dans `build/addon/**`.
- Remplacez les espaces réservés : utilisez `replace-in-file` pour remplacer les mots-clés et les configurations définis dans `package.json` dans les fichiers non-construits (`xhtml`, `json`, et al.). - Remplacez les espaces réservés : utilisez `replace-in-file` pour remplacer les mots-clés et les configurations définis dans `package.json` dans les fichiers non-construits (`xhtml`, `json`, et al.).
@ -275,14 +281,11 @@ npm run release
Le modèle définit `prerelease` comme la version beta de l'extension, lorsque vous sélectionnez une version `prerelease` dans Bumpp (avec `-` dans le numéro de version). Le script de construction créera un nouveau `update-beta.json` pour l'utilisation de la prerelease, ce qui assure que les utilisateurs de la version normale ne seront pas en mesure de mettre à jour vers la version beta. Seuls les utilisateurs qui ont téléchargé et installé manuellement la version bêta seront en mesure de mettre à jour automatiquement vers la prochaine version bêta. Le modèle définit `prerelease` comme la version beta de l'extension, lorsque vous sélectionnez une version `prerelease` dans Bumpp (avec `-` dans le numéro de version). Le script de construction créera un nouveau `update-beta.json` pour l'utilisation de la prerelease, ce qui assure que les utilisateurs de la version normale ne seront pas en mesure de mettre à jour vers la version beta. Seuls les utilisateurs qui ont téléchargé et installé manuellement la version bêta seront en mesure de mettre à jour automatiquement vers la prochaine version bêta.
Lorsque la prochaine version normale sera mise à jour, `update.json` et `update-beta.json` seront tous deux mis à jour (sur la version spéciale `release`, voir ci-dessus) afin que les utilisateurs de la version normale et de la version bêta puissent se mettre à jour vers la nouvelle version normale. Lorsque la prochaine version normale sera mise à jour, `update.json` et `update-beta.json` seront tous deux mis à jour (sur la version spéciale `release`, voir ci-dessus) afin que les utilisateurs de la version normale et de la version bêta puissent se mettre à jour vers la nouvelle version normale.
> [!WARNING] > [!WARNING]
> La distinction entre les versions des extensions compatibles avec Zotero 6 et Zotero 7 devrait être strictement faite en configurant `applications.zotero.strict_min_version` dans `addons.__addonID__.updates[]` de `update.json` respectivement, afin que Zotero le reconnaisse correctement, voir <https://www.zotero.org/support/dev/zotero_7_for_developers#updaterdf_updatesjson>. > La distinction entre les versions des extensions compatibles avec Zotero 6 et Zotero 7 devrait être strictement faite en configurant `applications.zotero.strict_min_version` dans `addons.__addonID__.updates[]` de `update.json` respectivement, afin que Zotero le reconnaisse correctement, voir <https://www.zotero.org/support/dev/zotero_7_for_developers#updaterdf_updatesjson>.
## Détails ## Détails
### À propos des hooks ### À propos des hooks
@ -303,10 +306,8 @@ Lorsque la prochaine version normale sera mise à jour, `update.json` et `update
> Voir aussi [`src/index.ts`] (https://github.com/windingwind/zotero-plugin-template/blob/main/src/index.ts) > Voir aussi [`src/index.ts`] (https://github.com/windingwind/zotero-plugin-template/blob/main/src/index.ts)
L'extension 'bootstrappé' fonctionne dans un bac à sable, qui n'a pas de variables globales par défaut comme `Zotero` ou `window`, que nous avions l'habitude d'avoir en superposition dans la fenêtre d'environnement des extensions. L'extension 'bootstrappé' fonctionne dans un bac à sable, qui n'a pas de variables globales par défaut comme `Zotero` ou `window`, que nous avions l'habitude d'avoir en superposition dans la fenêtre d'environnement des extensions.
Ce modèle enregistre les variables suivantes avec une portée globale : Ce modèle enregistre les variables suivantes avec une portée globale :
```ts ```ts
@ -315,7 +316,6 @@ Zotero, ZoteroPane, Zotero_Tabs, window, document, rootURI, ztoolkit, addon;
### Création d'une API pour les éléments de l'extension ### Création d'une API pour les éléments de l'extension
Le modèle d'extension fournit de nouvelles API pour les extensions 'bootstrappées'. Nous avons deux raisons d'utiliser ces APIs, au lieu de `createElement/createElementNS` : Le modèle d'extension fournit de nouvelles API pour les extensions 'bootstrappées'. Nous avons deux raisons d'utiliser ces APIs, au lieu de `createElement/createElementNS` :
- En mode bootstrap, les extensions doivent nettoyer tous les éléments de l'interface utilisateur à la sortie (désactivation ou désinstallation), ce qui est très ennuyeux. En utilisant `createElement`, le modèle de l'eextensions va maintenir ces éléments. Il suffit de lancer `unregisterAll` à la sortie. - En mode bootstrap, les extensions doivent nettoyer tous les éléments de l'interface utilisateur à la sortie (désactivation ou désinstallation), ce qui est très ennuyeux. En utilisant `createElement`, le modèle de l'eextensions va maintenir ces éléments. Il suffit de lancer `unregisterAll` à la sortie.
@ -340,6 +340,7 @@ Recherchez le label de l'interface utilisateur dans les fichiers `.xhtml`/`.flt`
### Structure des répertoires ### Structure des répertoires
Cette section montre la structure des répertoires d'un modèle. Cette section montre la structure des répertoires d'un modèle.
- Tous les fichiers de code `.js/.ts` sont dans `./src` ; - Tous les fichiers de code `.js/.ts` sont dans `./src` ;
- Les fichiers de configuration des addons : `./addon/manifest.json` ; - Les fichiers de configuration des addons : `./addon/manifest.json` ;
- Fichiers d'interface utilisateur : `./addon/content/*.xhtml`. - Fichiers d'interface utilisateur : `./addon/content/*.xhtml`.

View File

@ -7,7 +7,6 @@
[English](../README.md) | [简体中文](./README-zhCN.md) | [Français](./README-frFR.md) [English](../README.md) | [简体中文](./README-zhCN.md) | [Français](./README-frFR.md)
- 开发指南 - 开发指南
- [📖 插件开发文档](https://zotero-chinese.com/plugin-dev-guide/) (中文版,尚不完善) - [📖 插件开发文档](https://zotero-chinese.com/plugin-dev-guide/) (中文版,尚不完善)
- [📖 Zotero 7 插件开发文档](https://www.zotero.org/support/dev/zotero_7_for_developers) - [📖 Zotero 7 插件开发文档](https://www.zotero.org/support/dev/zotero_7_for_developers)