Problème sur le filtre extraire_multi
#3318
Closed
opened 8 years ago by gilles.vincent
·
9 comments
No Branch/Tag Specified
1.8
1.9.1
1.9.2
2.0
2.1
3.0
3.1
3.2
4.0
4.1
4.2
boutons-danger
coquille_doc
debug_ecrire_fichier
dev-sortable
dev/autoloader
dev/hasard_fixe
dev/instituer_ergo
dev/issue_4626_menu_squelettes
dev/issue_5447_exporter_csv
dev_infos_image
fix/valider_url_distante
fix_issue_5454
fix_modifier_login
issue_4101
issue_4678
issue_4705
issue_4717
issue_4836
issue_4946
issue_5258
issue_5344
issue_5427_bis
issue_5483_find_script_jquery
issue_5487_info_maj
master
v1.8.3+b
v1.9.1+i
v1.9.2+f
v1.9.2+g
v1.9.2+h
v1.9.2+i
v1.9.2+j
v1.9.2+k
v1.9.2+m
v1.9.2+n
v1.9.2+o
v1.9.2+p
v2.0.0
v2.0.1
v2.0.10
v2.0.11
v2.0.12
v2.0.13
v2.0.14
v2.0.15
v2.0.16
v2.0.17
v2.0.18
v2.0.19
v2.0.2
v2.0.20
v2.0.21
v2.0.22
v2.0.23
v2.0.24
v2.0.25
v2.0.26
v2.0.3
v2.0.5
v2.0.6
v2.0.7
v2.0.8
v2.0.9
v2.1.0
v2.1.1
v2.1.10
v2.1.11
v2.1.12
v2.1.13
v2.1.14
v2.1.15
v2.1.16
v2.1.17
v2.1.18
v2.1.19
v2.1.2
v2.1.20
v2.1.21
v2.1.22
v2.1.23
v2.1.24
v2.1.25
v2.1.26
v2.1.27
v2.1.28
v2.1.29
v2.1.3
v2.1.30
v2.1.4
v2.1.5
v2.1.6
v2.1.7
v2.1.8
v2.1.9
v3.0.0
v3.0.0-alpha.1
v3.0.0-beta
v3.0.0-beta.2
v3.0.0-rc
v3.0.1
v3.0.10
v3.0.11
v3.0.12
v3.0.13
v3.0.14
v3.0.15
v3.0.16
v3.0.17
v3.0.18
v3.0.19
v3.0.2
v3.0.20
v3.0.21
v3.0.22
v3.0.23
v3.0.24
v3.0.25
v3.0.26
v3.0.27
v3.0.28
v3.0.3
v3.0.4
v3.0.5
v3.0.6
v3.0.7
v3.0.8
v3.0.9
v3.1.0
v3.1.0-alpha
v3.1.0-beta
v3.1.0-rc
v3.1.0-rc.2
v3.1.0-rc.3
v3.1.1
v3.1.10
v3.1.11
v3.1.12
v3.1.13
v3.1.14
v3.1.15
v3.1.2
v3.1.3
v3.1.4
v3.1.5
v3.1.6
v3.1.7
v3.1.8
v3.1.9
v3.2-alpha.1
v3.2.0
v3.2.0-alpha.1
v3.2.0-beta
v3.2.0-beta.2
v3.2.0-beta.3
v3.2.1
v3.2.10
v3.2.11
v3.2.12
v3.2.13
v3.2.14
v3.2.15
v3.2.16
v3.2.17
v3.2.2
v3.2.3
v3.2.4
v3.2.5
v3.2.6
v3.2.7
v3.2.8
v3.2.9
v4.0.0
v4.0.0-alpha
v4.0.0-beta
v4.0.1
v4.0.2
v4.0.3
v4.0.4
v4.0.5
v4.0.6
v4.0.7
v4.0.8
v4.0.9
v4.1.0
v4.1.0-alpha
v4.1.0-beta
v4.1.0-rc
v4.1.1
v4.1.2
v4.1.3
v4.1.4
v4.1.5
v4.1.6
v4.1.7
v4.2.0-alpha
v4.2.0-alpha2
Labels
Amélioration, nouvelle fonctionnalité APIs authentification base de données bug
Ca ne fonctionne pas code généré compilo css divers documentation doublon
Ce ticket est un doublon ergonomie espace privé filtres et balises formulaires Inscription installation invalide
Ticket invalide javascript langues LDAP plugin PostgreSQL refusé
Ignoré, c'est comme Ca... sécurité traduction
Apply labels
Clear labels
accessibilité
amélioration
Amélioration, nouvelle fonctionnalité APIs authentification base de données bug
Ca ne fonctionne pas code généré compilo css divers documentation doublon
Ce ticket est un doublon ergonomie espace privé filtres et balises formulaires Inscription installation invalide
Ticket invalide javascript langues LDAP plugin PostgreSQL refusé
Ignoré, c'est comme Ca... sécurité traduction
No Label
accessibilité
amélioration
APIs
authentification
base de données
bug
code généré
compilo
css
divers
documentation
doublon
ergonomie
espace privé
filtres et balises
formulaires
Inscription
installation
invalide
javascript
langues
LDAP
plugin
PostgreSQL
refusé
sécurité
traduction
Milestone
Set milestone
Clear milestone
No items
No Milestone
Projects
Clear projects
No project
Assignees
Assign users
Clear assignees
No Assignees
3 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.
No due date set.
Dependencies
This issue currently doesn't have any dependencies.
Reference in new issue
There is no content yet.
Delete Branch '%!s(MISSING)'
Deleting a branch is permanent. It CANNOT be undone. Continue?
No
Yes
La traduction ne fonctionne pas correctement pour la page de la liste des plugins.
Lorsqu'on est dans le cas suivant : compte en portugais brésilien ET langue principale dans la même langue
La page des gestion des plugins en affiche certains en allemand (comme facteur) ou en arabe (comme spip-bonux)
Et d'autres sont en français.
..
Observé en SPIP 3.0 et SPIP 3.1
A mon avis assez urgent à corriger
Ne se produit pas en spip 2.1
Après enquête la liste des plugins ne passe pas par ecrire/inc/traduire.php
Trouvé ! Le nom des plugins utilise des champs multi - Et c'est le premier champ qui est pris en compte, même si ce n'est pas le [fr] - Ce qui n'est pas cohérent avec le fonctionnement de inc/traduire.php
Voici le patch proposé sur le filtre extraire_multi()
Index: inc/filtres.php
--- inc/filtres.php (revision 21636)
+++ inc/filtres.php (working copy)
-1926,6 +1926,9
$trads = extraire_trads($reg[1]);
if ($l = approcher_langue($trads, $lang)) {
$trad = $trads[$l];
Le patch ne passait pas bien.
Le voici
Dans la liste des plugins il y a un mélange, car pour certains c'est des multis, et pour d'autres il y a des fichiers de lang dédiés au paquet (à partir de SPIP 3).
Mais j'ai l'impression que c'est la même erreur quand il s'agit de chaîne de langue : apparemment, lorsqu'il n'y a pas de traduction dans la langue en cours, SPIP ne prend pas la langue d'origine (qu'on ne sait pas détecter d'ailleurs !) qui est le français dans l'immense majorité des cas. Mais il prend la première langue dans l'ordre des codes de langue, donc souvent l'arabe.
Ainsi, nos amis basques ont-illes une liste des plugins en grande partie en arabe, ce qui n'est vraiment pas très pratique pour gérer leur site !
Ce ticket doit-il donc rester propre à extraire_multi ou bien est-il plus général ?
Non, ce problème est lié uniquement au traitement de la balise multi qui est différent du traitement des chaines de langues.
D'ailleurs mon ticket, à l'origine, portait sur le choix "en dur" qui consiste à prendre le français comme langue par défaut dans les chaines de traductions (ce qui fonctionne très bien) --- Mais cette logique n'est pas la même dans les balises multi, qui parfois (pour un tri alphabétique) commence par l'arabe ou l'allemand. Et c'est là qu'est le problème.
Pardon, le ticket (avec le patch) sur le choix du français par défaut, en l'absence de traduction, dans les chaines de langues, c'est celui-ci : http://core.spip.org/issues/3292
Corrigé, le patch etait inexact car il faut bien typographier en fr dans le cas ou on prend fr au lieu de la langue courante
Statut changé à Fermé