Agenda

Avril
2024

L M M J V S D
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Jour avec événement(s)
Jour férié
MER
MER
Carte des utilisateurs
Login
 Connexion
Glossaire
icon_npds_glossaire

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | Autres

En ligne

Il y a actuellement 175 visiteur(s) et 0 membre(s) en ligne.

Devenez membre privilégié en cliquant ici

Chat anonyme -1
sondage 2
Test sondage
Résultats  Anciens sondages
  • Votes : 1321
  • Commentaire(s) : 5
Galeries Photo
Activité du Site

Pages vues depuis 20/04/2015 : 25 304 366

  • Nb. de membres 44
  • Nb. d'articles 4
  • Nb. de forums 50
  • Nb. de sujets 9
  • Nb. de critiques 2

Top 10  Statistiques

Github jpb
Bloc 2 affichant une galerie

Index du forum »»  Road map développement »» traduction

traduction#1480

2Contributeur(s)
Nicolas2jpb
2 Modérateur(s)
phrjpb
Nicolas2 Nicolas2icon_post
oui les insomnies sont a répétition chez moi depuis la fermeture de ma boite !

je te met ici en vrac mes premières remarques
toute remarque et ou critique est toujours bon a prendre a fin de faire évoluer les rouages du code !

tout cela est bien séduisant ! faudra que j'essai tout ça !
bon test 🤪

- oui la gestion des langue est vraiment un bouffe temps !!!
je confirme que cela prend énormément de temps.

- oui on pourrait faire mieux !
ont peut toujours faire mieux !

est on sûr que les recherche dans les tableaux sont plus rapide que les switch sur les variables ?
alors la pas vraiment fait de teste a ce niveau la dans le code j'ais plus penser au coter pratique et rapide de l'écriture des fichiers fichiers langues.

les système d'argument serait bien entendu un GROS plus
pour les arguments sa tu peut te baser sur mon code et ne prendre qu'une toute petit partie de mon code sans difficulté et qui n'impose pas une refonte complète du système de traduction, sa se résume en 4/6 ligne (voir premier post).

le fait de passer par la console
la console et un plus pour ceux qui aime faire en ligne de commande contrairement a une admin graphique, mais oui le mode console peut être forger en une partie graphique via l'administration. personnellement je préfère le mode console qui et bien plus pratique et plus rapide pour moi, mais la ce n'est qu'un question de gout et couleur lol
après il et vrais qu'un simple utilisateur de base se retrouvera perdue en mode console et préfèrera une administration graphique qui serais plus simple pour lui...

pense qu'on a aussi l'os des traductions qui sont embarqué dans les meta_mot dans la base ....
la je n'est pas pris en compte cette partie des métas en bdd mais peut être pris en compte assez facilement, enfin je pense !

je me doute que le temps passer a mettre tout le core en Français représente des heures de taf...

ici je ne dit pas qu'il faut changer le system de traduction par mon code, juste quelque réflexion après si cela donne des idées c'est gagnant !

merci d'avoir pris le temp d'avoir poster ces remarques constructive , pour moi c'est plus un terrain de jeux qu'autre chose... 😄
 Message édité par : Nicolas2 / 06-03-2021 13:02
jpb jpbicon_post
question bête : dans le système des paramètres est ce que ces paramètres sont traduits eux même autrement dit imbriqué le système de trad aussi dans les paramètre ? c'est à mon avis indispensable pour tirer profit au maximum du système ?..

?? vois tu ce que je veux dire ?? ou j'ai manqué quelque chose ?
L'eau goutte à  goutte finit toujours par percer la pierre...
Nicolas2 Nicolas2icon_post
ba pour moi les paramètres doivent être vue comme un ajout de variable, un count par exemple et non une chaine a traduire, puisque ta chaine et bien traduite via __d();

après je ne voie pas la logique de faire __d('je traduit sa {0} ', 'et c'est cool');

ce que j'ais écrit plus haut étais des Example : __m('geoloc', 'test du module geoloc pour voir, {0}', 'good');

ou sinon

__d('je traduit sa {0} ', __d('et c'est cool'));

par exemple :
$count = 9;
__('il y a {0} paramètre{1}', $count, ($count == 0 ? '' : 's'));

{0} => $count;
{1} => ($count == 0 ? '' : 's')

ce qui te donne : il y a 9 paramètres

tu a tester ?
 Message édité par : Nicolas2 / 07-03-2021 12:27
jpb jpbicon_post
__d('je traduit sa {0} ', __d('et c'est cool'));

oui ce serait top ! car cela permet de réduire considérablement la taille des fichiers langues ! (peut etre pas la vitesse ...) en offrant la possibilité de construire des phrases simple (ce qui est en principe le cas) avec des occurences ...

exemples :
__d('Vous avez {0} {1} ',$nb_message, __d('messages'));
__d('Vous avez {0} {1} ',$nb_utilisateur, __d('utilisateur en attente de validation'));

etc ...etc ...etc

les possibilté d'optimisation des fichiers langues seraient donc extrêmement nombreuses
inconvénient (cela hache un peu le code dans les fichier php et le rendrait un pe umoins lisible que translate("") )

on utilise ou pas les paramètre et on utilise ou pas la trad des paramètres ...

L'eau goutte à  goutte finit toujours par percer la pierre...
Nicolas2 Nicolas2icon_post
exemples :
__d('Vous avez {0} {1} ',$nb_message, __d('messages'));
__d('Vous avez {0} {1} ',$nb_utilisateur, __d('utilisateur en attente de validation'));

comme ca :
__d('Vous avez {0} messages', $nb_message);
__d('Vous avez {0} utilisateur en attente de validation', $nb_utilisateur);

ou

__d('Vous avez {nb_message} messages', ['nb_message' => $nb_message]);
__d('Vous avez {nb_message} utilisateur en attente de validation', ['nb_message' => $nb_utilisateur]);

les possibilté d'optimisation des fichiers langues seraient donc extrêmement nombreuses
oui

inconvénient (cela hache un peu le code dans les fichier php et le rendrait un pe umoins lisible que translate("") )
non pour moi plus lisible puisque si tu écrit :

echo __d('Vous avez {0} message(s)', $nb_message);

echo __d('Vous avez {0} message(s)', count($nb_message)); pour le (s) de (message) voir avec un count de $nb_message : count($nd_message)

$count = count($nb_message);
echo __d('Vous avez {0} message{1}', $count, ($count == 0 ? '' : 's'));

et avec translate sa te donnais

echo translate(''Vous avez ") . $nb_message . translate('messages');
 Message édité par : Nicolas2 / 07-03-2021 15:35
Nicolas2 Nicolas2icon_post
en fait dans les paramètres tu ne mais pas de trad sauf vraiment qua exceptionnel, le paramètre tu utilise plus si tu a des variables dynamique a faire passer a ta traduction

Example :


$message = translate("Bonjour")." $fname :\n\n".translate("Votre ami")." $yname ".translate("a trouvé cet article intéressant et a souhaité vous l'envoyer.")."\n\n".aff_langue($title)."\n".translate("Date :")." $time\n".translate("Sujet : ")." ".aff_langue($topictext)."\n\n".translate("L'article")." : $nuke_url/article.php?sid=$sid&archive=$archive\n\n";




$url = "$nuke_url/article.php?sid=$sid&archive=$archive\n\n";

$message = __("Bonjour {0} Votre ami {1} a trouvé cet article intéressant et a souhaité vous l'envoyer. {2} Date: {3} Sujet: {4} Lire l'article a cette adresse: {5}",
$fname."\n\n", //0
$yname, // 1
"\n\n".aff_langue($title)."\n", // 2
$time, // 3
aff_langue($topictext), // 4
$url); // 5


ou si tu préfère tu peut même l'écrire comme sa



$arguments = array(
'fname' => "nicolas", // $fname
'yname' => "jpb", // $yname
'title' => "un article de teste\n", // aff_langue($title)
'time' => "le 25/02/21", // $time
'topictext' => "le texte de l'article.", // aff_langue($topictext)
'url' => "$nuke_url/article.php?sid=$sid&archive=$archive", // l'url
'htmlentities' => false
);

$messages = __("Bonjour {fname}\n\n Votre ami {yname} a trouvé cet article intéressant et a souhaité vous l'envoyer.\n\n {title} Date: {time} Sujet: {topictext}\n\n Lire l'article a cette adresse: {url}", $arguments);

echo $messages;


htmlentities = false // te permet de laisser l'affichage du html s'exécuter

Bonjour nicolas

Votre ami jpb a trouvé cet article intéressant et a souhaité vous l'envoyer.

un article de teste Date: le 25/02/21 Sujet: le texte de l'article.

Lire l'article a cette adresse: http://www.mini-nova.local/article.php?sid=1&archive=0
 Message édité par : Nicolas2 / 07-03-2021 15:19