- écoute freshrss:load-more sur document (script async possiblement exécuté avant le parsing de <body>) - ne replie jamais après coup un article qui commence au-dessus de l'écran : la page sauterait et des articles non vus seraient marqués lus - README : l'image officielle n'a pas git, installation depuis l'hôte Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
78 lines
2.6 KiB
Markdown
78 lines
2.6 KiB
Markdown
# Read More — extension FreshRSS
|
||
|
||
Replie les articles du **mode lecture** à une hauteur réduite, avec un bouton
|
||
**« Lire plus »** qui déroule l'article complet sur place.
|
||
|
||
Objectif : parcourir rapidement une liste d'articles (newsletters de veille, sur
|
||
smartphone notamment) et passer au suivant d'un geste quand le sujet n'intéresse pas.
|
||
Le passage automatique en « lu » au défilement continue de fonctionner : un article
|
||
replié est simplement plus court, il est donc marqué lu plus tôt.
|
||
|
||
## Prérequis
|
||
|
||
- FreshRSS **1.30.4** ou plus récent.
|
||
- Option FreshRSS *Configuration → Lecture → Marquer un article comme lu… « au défilement de
|
||
la page »* activée (sinon rien n'est marqué lu au défilement, avec ou
|
||
sans cette extension).
|
||
|
||
## Installation (Docker)
|
||
|
||
Le dépôt est directement le dossier de l'extension. L'image officielle
|
||
`freshrss/freshrss` ne contient pas `git` : on clone **depuis l'hôte** dans le
|
||
volume monté sur `/var/www/FreshRSS/extensions`.
|
||
|
||
**Volume monté depuis un dossier de l'hôte** (`./extensions:/var/www/FreshRSS/extensions`) :
|
||
|
||
```sh
|
||
git clone https://git.siteop.biz/vincentb99/freshrss-read-more.git ./extensions/freshrss-read-more
|
||
```
|
||
|
||
**Volume Docker nommé** (ex. `freshrss_extensions`) :
|
||
|
||
```sh
|
||
docker run --rm -v freshrss_extensions:/ext alpine/git \
|
||
clone https://git.siteop.biz/vincentb99/freshrss-read-more.git /ext/freshrss-read-more
|
||
```
|
||
|
||
Les fichiers doivent être lisibles par le serveur web du conteneur (c'est le cas par
|
||
défaut d'un clone). Puis dans FreshRSS : *Configuration → Extensions → Read More → activer*.
|
||
|
||
### Mise à jour
|
||
|
||
Même principe, depuis l'hôte :
|
||
|
||
```sh
|
||
git -C ./extensions/freshrss-read-more pull
|
||
# ou, volume nommé :
|
||
docker run --rm -v freshrss_extensions:/ext alpine/git -C /ext/freshrss-read-more pull
|
||
```
|
||
|
||
puis recharger la page dans le navigateur.
|
||
|
||
## Réglage
|
||
|
||
Icône engrenage de l'extension : **hauteur repliée** en pixels (250 par défaut, entre
|
||
100 et 2000). Un article dont le contenu fait moins de 1,5 × cette hauteur n'est pas
|
||
replié.
|
||
|
||
## Comportement
|
||
|
||
- Mode lecture uniquement ; vues normale et globale inchangées.
|
||
- « Lire plus » déplie sur place, sans recharger ni modifier l'état lu/non lu.
|
||
- Les articles chargés au fil du défilement sont repliés aussi.
|
||
|
||
## Développement
|
||
|
||
```sh
|
||
npm install
|
||
npm run test:unit # tests unitaires (jsdom)
|
||
bash tests/e2e/setup.sh # FreshRSS 1.30.4 de test sur http://localhost:8080
|
||
npx playwright install chromium
|
||
npm run test:e2e # tests bout-en-bout
|
||
bash tests/e2e/setup.sh --down # arrêt et nettoyage
|
||
```
|
||
|
||
## Licence
|
||
|
||
MIT
|