Aller au contenu

GO Print

OCTOPRINT: sortie de la version finale 1.8.0


Messages recommandés

Depuis quelques heures, la version 1.8.0 est disponible pour mettre à jour la version précédente (1.7.3).

La notification devrait apparaitre dans l'interface Web pour vous proposer d'effectuer cette mise à jour.

Principal changement: Python n'est plus supporté qu'en version 3

Le journal de cette »release» est >>><<<, l’article du blog >>> ici <<<.

A noter: cette maj s'est bien déroulée sur mes RPi (3B, 4, 0v2). Le seul échec a eu lieu pour la carte OrangePi Zero 2 (un script de mise à jour est disponible sur mon dépôt).

Me reste à faire la «francisation» de l'interface. Mon fichier permettant de le faire pour la version 1.7.3 fonctionne «presque», les menus restent en anglais alors que ce n'était pas le cas pour la version 1.7.3 🤔… J'investigue (si la chaleur actuelle me laisse un peu de répit).

🙂

Modifié (le) par fran6p
  • Merci ! 1
Lien vers le commentaire
Partager sur d’autres sites

La Màj fonctionne aussi sur un Raspberry PI 0 2W 😉

Et comme je l'avais en anglais, il est resté en anglais ... mais je viens d'installer la langue française et ça fonctionne... 😉😉

Lien vers le commentaire
Partager sur d’autres sites

Il y a 20 heures, RFN_31 a dit :

mais je viens d'installer la langue française et ça fonctionne..

Y compris les menus en français ?

Mes Octoprint étaient en langue française quand j'ai mis à jour et au redémarrage après l'installation les menus sont «repassés» en anglais alors que le reste des textes est en français… Je teste actuellement ma «préversion»  i18n française qui semble résoudre ce soucis (il y a gros à traduire / modifier) mais ça prend du temps pour un autre test en cours.

Un autre «soucis» que je rencontrais : ayant plusieurs matériels (Raspberry PI (3B, 3B+, 4B, Zero 2, RPI400, …) ainsi qu'une carte Orange Pi Zero 2), j'avais régulièrement des impossibilités de mettre à jour l'ensemble des matériels en même temps à cause de cette limitation. La solution quand on a un compte Github est de créer un «Personal Access Tokens» puis de l'ajouter dans le fichier config.yaml (section «softwareupdate»). La version 1.8.0 d'Octoprint facilite cet ajout sans avoir l'obligation de modifier manuellement le fichier de configuration (une erreur dans celui-ci et Octoprint ne démarrera pas / plus 😞 ).

Il faudrait que je fasse un «tutoriel» sur les Tokens Github 🤔

🙂

Lien vers le commentaire
Partager sur d’autres sites

Le terminal reste en anglais, les plugins aussi (du moins ceux que j'utilise) sinon tout me semble bien en français y compris les paramètres.

[Edit] le menu d'arrêt reste en anglais...

Modifié (le) par RFN_31
  • +1 1
Lien vers le commentaire
Partager sur d’autres sites

Pour avoir des extensions en français, il faudrait pour chacune en faire une 😞 Pour certaines ce serait «faisable» pour d'autres il faudrait aller modifier les fichiers Python directement (qu'il faudrait refaire si une mise a jour avait lieu)…

Pas simple donc

🙂

  • +1 1
Lien vers le commentaire
Partager sur d’autres sites

A voir si le développeur n'a pas prévu un fichier des expressions qu'il suffirait de traduire mais j'ai un peu de mal à trouver où sont les plugins ...

Si c'est faisable, il suffit ensuite de contacter l'auteur via github pour lui proposer la chose.

Modifié (le) par RFN_31
Lien vers le commentaire
Partager sur d’autres sites

Certaines extensions sont plus ou moins prévues pour être traduites (si sur le Github de l'extension existe un dossiers «translations» alors c'est faisable). Il faut tout de même que l'auteur est prévu l’internationalisation (raccourci en i18n (18 caractères entre le «i» et le «n»)) dans ses fichiers python et javacript  en précédant les chaines de texte «traduisibles» par   _("...") pour Jinja / Python ou par gettext("...") pour JavaScript).

Si cet effort n'a pas été réalisé par l'auteur, la seule manière de faire est de traduire directement les fichiers Python, Jinja, Javascript mais à la prochaine mise à jour de l'extension, adieu les traductions 😞

Une fois traduit et empaqueté «correctement» on peut effectivement réaliser une «pull request» auprès de l'auteur mais ça nécessite de «forker» le dépôt avant de faire cette PR.

Sur mon dépôt concernant les diverses documentations que je mets ici de temps en temps sous forme de tutoriels, je me suis fait un «pense bête» concernant les étapes permettant de franciser (espagnoliser, indonésionniser, esperantoiser, …) une extension (fonctionne également pour franciser Octoprint).

Révélation

AIDE MÉMOIRE

Comment traduire une extension dans sa langue natale

1 Cloner l’extension pour OctoPrint et entrer dans le répertoire créé:

git clone https://github.com/pseudo-github-auteur/Octoprint_nom-extension.git
cd Octoprint_nom-extension
virtualenv venv
source venv/bin/activate
pip install -e . [develop]

Le fichier modèle PO se trouve sous translations/messages.pot.

Le fichier PO de chaque langue se trouve sous translations/'code de langue'/LC_MESSAGES/messages.po.

Avant de commencer une traduction, s'assurer que le fichier modèle PO (.pot) est à jour et que les fichiers PO sont mis à jour en conséquence.

2 Faire d’abord un git pull, pour s'assurez que les ressources sont à jour.

Le fichier setup.py fourni prend en charge quelques commandes supplémentaires pour faciliter la gestion des traductions :

python setup.py babel_refresh

3 Effectuer une nouvelle extraction de toutes les chaînes traduisibles depuis la source de l’extension et mettre à jour tous les fichiers PO. De là, il sera possible d'éditer la traduction dans la langue souhaitée. Si celle-ci n'est pas encore disponible, la créer via :

python setup.py babel_new --locale=<locale>

4 Vérifier de temps en temps la traduction en cours. Pour ce faire, compiler les traductions dans leurs équivalents MO et JS et les "regroupez" avec l’extension :

python setup.py babel_compile
python setup.py babel_bundle --locale=<locale>

5 Démarrer OctoPrint (octoprint serve), regarder les résultats de la traduction. Pour demander une locale spécifique pour l'affichage de l'interface utilisateur, ajouter le paramètre de requête l18n avec la locale désirée à l'URL d'OctoPrint, exemple :

http://localhost:5000/?l18n=fr

Il est également possible de sélectionner cette langue dans les paramètres "Apparence" d'OctoPrint ou dans les paramètres utilisateur de votre navigateur.

BABEL readme

Les traductions de l'extension (plugin) sont placées dans le dossier «translations» au même niveau que le dossier de l’extension. Le fichier setup.py fourni supporte quelques commandes supplémentaires facilitant la gestion des traductions :

babel_extract

Extrait tous les messages traduisibles , marqués avec

  • _("...") de Jinja ou
  • gettext("...") de JavaScript)

ceci créera le fichier initial messages.pot.

babel_refresh

Relance l'extraction et met à jour le fichier messages.pot.

babel_new --locale=

Crée un nouveau dossier de traduction pour la locale <locale>.

babel_compile

Compile les traductions en fichiers mo, prêts à être utilisés dans OctoPrint.

babel_pack --locale= [ --author= ]

Empaquette la traduction pour la locale <locale>, comme pour un pack linguistique, cette traduction est installable manuellement par les utilisateurs de l'extension. Ceci est intéressant pour les langues que vous ne pouvez pas garantir de maintenir à jour vous-même à chaque nouvelle version de votre extension et pour lesquelles vous devez dépendre de contributeurs.

Si vous voulez regrouper les traductions avec votre extension, créez un nouveau dossier octoprint_nom-extension/translations. Lorsque ce dossier existe, une commande supplémentaire devient disponible :

babel_bundle --locale=

Déplace la traduction de la locale <locale> vers octoprint_nom-extension/translations, en l'intégrant à votre extension. C'est intéressant avec les langues dont vous pouvez garantir le maintien à jour par vous-même pour chaque nouvelle version de votre extension.

J'ai terminé le pack linguistique Octoprint pour la version 1.8.0 mais je n'ai pas réussi à ce que les menus soient en français alors qu'ils sont correctement traduits. Je n'avais pas ce comportement avec mes anciens packs et les versions précédentes d'Octoprint (1.7.3, 1.6.x, …). C'est peut-être dû à ma configuration «surchargée» d'extensions (j'ai installé avec la même configuration, le pack linguistique allemand et avec lui les menus sont bien traduits (en allemand «œuf corse»). Vraiment bizarre 🤔, j'en perds mon latin.

Pour tester, Il faudrait que j'installe une version 1.7.3 «brute» (sans extensions tierces), la mettre à jour en 1.8.0 et seulement alors installer le pack linguistique

Modifié (le) par fran6p
Lien vers le commentaire
Partager sur d’autres sites

  • 2 weeks later...

Oui, elle est terminée. Reste un «bug» que je n'arrive pas à résoudre: tout est bien en français sauf les titres et noms des onglets qui ne veulent pas passer en français. J'ai encore une ou deux corrections à faire car les caractères accentués sont parfois non «traduits» alors que la syntaxe HTML ( &nomlettreaccentuee; (ex: &eacute; pour le é)) est correcte, ça arrive quand le texte est dans un bouton ou une liste déroulante 🤔

Quelques textes restent en anglais car il n'ont pas été prévus pour être traduits (hors syntaxe Python, Jinja, , …).

🙂

Lien vers le commentaire
Partager sur d’autres sites

J'avais posté, il y a déjà quelques temps :

Sinon, félicitations pour ton test de la Sovol S4

🙂

Modifié (le) par fran6p
  • Merci ! 1
Lien vers le commentaire
Partager sur d’autres sites

il y a 9 minutes, mich0111 a dit :

Ça marche mais c'est rageant ces menus qui restent en anglais même si on peut très bien fonctionner comme ça.

Toutafé 😉

Pas vraiment le temps de m'en occuper (il faudrait faire une remontée de bug sur le Github d'Octoprint en détaillant le plus possible mais honnêtement ça me gonfle car il faut le faire uniquement en langue anglaise). Le pack linguistique allemand, lui, ne possède pas ce phénomène et c'est la seule langue en plus de l'anglais que l'autrice Foosel tolère dans les sources d'Octoprint 😞 Bien que comprenant l'allemand, il y a bien longtemps que je ne le pratique plus, de toute façon je préfère le français ou au pire l'anglais.

🙂

  • +1 1
Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
  • Sur cette page :   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
  • YouTube / Les Imprimantes 3D .fr

×
×
  • Créer...