Discussion:
Convertir texte QWERTY>AZERTY
(trop ancien pour répondre)
povkom
2005-05-16 07:55:04 UTC
Permalink
Bonjour à tous,

Existerait-t'il un utilitaire (ou autre) capable de transformer un
texte saisi avec un clavier QWERTY en un texte AZERTY.
ex.: le si;ple fqit de penser ;e trqnsporte 0 des ;illiqrds d4qnn2es
lu;i7res

Merci d'avance
Serge Pajak
2005-05-16 08:08:06 UTC
Permalink
Post by povkom
Existerait-t'il un utilitaire (ou autre) capable de transformer un
texte saisi avec un clavier QWERTY en un texte AZERTY.
ex.: le si;ple fqit de penser ;e trqnsporte 0 des ;illiqrds d4qnn2es
lu;i7res
Je ne sais pas s'il existe un utilitaire tout prêt pour faire cela, mais
tu peux toujours le faire "à la main", à grands coups de
rechercher/remplacer dans un éditeur de texte.

Dans le menu clavier (celui avec le drapeau), avec Show Keyboard View tu
peux afficher la disposition des touches sur un clavier qwerty et
azerty, pour savoir quelle lettre doit remplacer quelle autre. C'est un
peu fastidieux, mais si ton texte est long cela peut en valoir la peine.

Mais, par curiosité, comment est-ce que tu as pu te retrouver avec un
texte entièrement tapé sur le mauvais clavier ??
--
Serge Pajak
povkom
2005-05-16 08:14:34 UTC
Permalink
Post by Serge Pajak
Je ne sais pas s'il existe un utilitaire tout prêt pour faire cela, mais
tu peux toujours le faire "à la main", à grands coups de
rechercher/remplacer dans un éditeur de texte.
Dans le menu clavier (celui avec le drapeau), avec Show Keyboard View tu
peux afficher la disposition des touches sur un clavier qwerty et
azerty, pour savoir quelle lettre doit remplacer quelle autre. C'est un
peu fastidieux, mais si ton texte est long cela peut en valoir la peine.
C'est pour m'éviter tout ça que je recherche un éventuel assistant ;-)
Post by Serge Pajak
Mais, par curiosité, comment est-ce que tu as pu te retrouver avec un
texte entièrement tapé sur le mauvais clavier ??
Je ne sais pas exactement; je rends service
Je peux me renseigner
JPaul
2005-05-16 08:16:28 UTC
Permalink
Post by povkom
Existerait-t'il un utilitaire (ou autre) capable de transformer un
texte saisi avec un clavier QWERTY en un texte AZERTY.
ex.: le si;ple fqit de penser ;e trqnsporte 0 des ;illiqrds d4qnn2es
lu;i7res
Dans le terminal :
echo 'le si;ple fqit de penser ;e trqnsporte 0 des ;illiqrds d4qnn2es
lu;i7res'|sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g
-e s/0/à/g -e s/7/è/g
le simple fait de penser me transporte à des milliards d'années
lumières


Autrement dit :
Si le fichier à traduire s'appelle truc et que tu veux obtenir trac :

sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g truc >trac



Maintenant tu peux aussi mettre la ligne
sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g

dans un script appelé machin et faire la commande

bash machin <truc >trac

Attention ! la ligne de conversion est à compléter sur le même modèle :
je n'ai traduit que les caractères de ton exemple. Et ne pas oublier de
neutraliser avec un anti-slash \ les caractères qui posent problème,
tels que : ; ' , " etc...

JPaul.
--
/==/==\\-\ Jean-Paul BLANC
/ /--/--//\\ quelque-part (somewhere)
|/| L |\\\ en (in)
\/|| = |||\\\ FRANCE
povkom
2005-05-16 08:25:06 UTC
Permalink
Post by JPaul
echo 'le si;ple fqit de penser ;e trqnsporte 0 des ;illiqrds d4qnn2es
lu;i7res'|sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g
-e s/0/à/g -e s/7/è/g
le simple fait de penser me transporte à des milliards d'années
lumières
sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g truc >trac
Maintenant tu peux aussi mettre la ligne
sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g
dans un script appelé machin et faire la commande
bash machin <truc >trac
je n'ai traduit que les caractères de ton exemple. Et ne pas oublier de
neutraliser avec un anti-slash \ les caractères qui posent problème,
tels que : ; ' , " etc...
JPaul.
Ca commence à devenir beaucoup plus intéressant
Merci pour cette solution
Jacques
2005-05-17 06:33:21 UTC
Permalink
Post by povkom
Ca commence à devenir beaucoup plus intéressant
Merci pour cette solution
Attention toutefois si tu as un ; signe de ponctuation, il sera
remplacépar un m. :-)

Jacques
Serge Pajak
2005-05-17 08:28:26 UTC
Permalink
Post by Jacques
Attention toutefois si tu as un ; signe de ponctuation, il sera
remplacépar un m. :-)
Si le texte a été entièrement tapé sur un clavier qwerty par quelqu'un
qui pensait être sur un azerty, les ; apparaîtreront comme des virgules.
Sinon c'est vraiment inextricable.

D'ailleurs je me demande toujours comment ça peut arriver :-)
--
Serge Pajak
jose.campos+ (José Campos)
2005-05-17 09:10:08 UTC
Permalink
Post by Serge Pajak
D'ailleurs je me demande toujours comment ça peut arriver :-)
Peut-être le texte a-t-il été tapé par une personne mal-voyante.
Mais ce n'est qu'une hypothèse. À moins que ça ne soit une nouvelle
méthode de cryptage ;-)
--
4 Jo "Distance, n. The only thing that the rich are willing
3 for the poor to call theirs, and keep."
2 Ambrose Bierce. The Devil's Dictionary.
1....'....12.....'....24.....'....36.....'....48.....'....60.....'....72
Christian Fauchier
2005-05-16 10:26:36 UTC
Permalink
Post by JPaul
sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g truc >trac
Dans le même ordre d'idée et pour faire un peu plus court, à la place de
sed on peut aussi utiliser la commande tr :

tr ";q0427" "maà'éè"

Chaque caractère de la première chaîne est remplacé par le caractère de
même rang dans la deuxième.

A++
--
Christian
povkom
2005-05-16 11:33:00 UTC
Permalink
Post by Christian Fauchier
Post by JPaul
sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g truc >trac
Dans le même ordre d'idée et pour faire un peu plus court, à la place de
tr ";q0427" "maà'éè"
Chaque caractère de la première chaîne est remplacé par le caractère de
même rang dans la deuxième.
A++
De mieux en mieux et de plus en plus court
povkom
2005-05-16 11:47:55 UTC
Permalink
Post by Christian Fauchier
Post by JPaul
sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g truc >trac
Dans le même ordre d'idée et pour faire un peu plus court, à la place de
tr ";q0427" "maà'éè"
Chaque caractère de la première chaîne est remplacé par le caractère de
même rang dans la deuxième.
A++
Le gros problème reste à première vue l'impossibilité de convertir tous
les caractères
un Q QWERTY devenant un A AZERTY, le A QWERTY doit également devenir un
Q AZERTY
Comment résoudre cela ??
Serge Pajak
2005-05-16 11:54:57 UTC
Permalink
Post by povkom
un Q QWERTY devenant un A AZERTY, le A QWERTY doit également devenir un
Q AZERTY
tr "aq" "qa"

En tapant toutes les touches de chaque clavier, dans le même ordre
(c'est le plus dur) et en rajoutant un \ pour les caractères spéciaux,
tu devrais obtenir avec tr quelque chose comme ça:

tr "qwertyuiopasdfghjkl\;" "azertyuiopqsdfghjklm"

qui remplace tous les a en q, et tous les q en a, idem pour ";" et
"m"... c'est pas bon ?
--
Serge Pajak
povkom
2005-05-16 12:02:23 UTC
Permalink
Post by Serge Pajak
Post by povkom
un Q QWERTY devenant un A AZERTY, le A QWERTY doit également devenir un
Q AZERTY
tr "aq" "qa"
En tapant toutes les touches de chaque clavier, dans le même ordre
(c'est le plus dur) et en rajoutant un \ pour les caractères spéciaux,
tr "qwertyuiopasdfghjkl\;" "azertyuiopqsdfghjklm"
qui remplace tous les a en q, et tous les q en a, idem pour ";" et
"m"... c'est pas bon ?
je ne pense pas que cela soit bon (pas encore testé néanmoins)
ton A transformé en Q (désolé) va logiquement se reconvertir en A et
ainsi de suite...
Olivier Goldberg
2005-05-16 12:34:51 UTC
Permalink
Post by Serge Pajak
tr "qwertyuiopasdfghjkl\;" "azertyuiopqsdfghjklm"
qui remplace tous les a en q, et tous les q en a, idem pour ";" et
"m"... c'est pas bon ?
Mais avec ça, ne va-t-on pas avoir le premier "q" transformé en "a",
puis retransformé en "q" un poil plus loin?
--
Olivier Goldberg, étudiant, macaddict, plongeur CMAS ***
Pour le courrier personnel, écrire à:
olivier (arobase) ogoldberg (point) net
AIM/iChat/Skype: Nept47
Serge Pajak
2005-05-16 16:10:35 UTC
Permalink
Post by Olivier Goldberg
Mais avec ça, ne va-t-on pas avoir le premier "q" transformé en "a",
puis retransformé en "q" un poil plus loin?
Ça n'a pas l'air:

[titanium:~] pajak% echo "qwertyasdf" | tr "qaw" "aqz"
azertyqsdf

Le q s'est transformé en a, et l'est resté. Il n'y a pas de "deuxième
passe" qui aurait changé ce a en q ensuite. Et à première vue l'ordre
dans lequel on rentre les séries de caractrères à traduire dans tr ne
change pas la sortie.

Vous avez un exemple de commande qui ne marche pas ?
--
Serge Pajak
Olivier Goldberg
2005-05-16 16:29:30 UTC
Permalink
Post by Serge Pajak
Vous avez un exemple de commande qui ne marche pas ?
Non, c'était juste pour savoir!
--
Olivier Goldberg, étudiant, macaddict, plongeur CMAS ***
Pour le courrier personnel, écrire à:
olivier (arobase) ogoldberg (point) net
AIM/iChat/Skype: Nept47
SbM
2005-05-17 15:36:16 UTC
Permalink
Post by Olivier Goldberg
Post by Serge Pajak
Vous avez un exemple de commande qui ne marche pas ?
Non, c'était juste pour savoir!
Ca marche, effectivement, contrairement à une succession de
chercher/remplacer, qui aurait entraîné le dysfonctionnement que tu
suggères.
--
[SbM]
<http://sebastienmarty.free.fr> - <http://tradintosh.free.fr>
<http://sbm.ordinotheque.free.fr> - <http://palmiciel.free.fr>
"If the French were really intelligent, they'd speak English" (W. Sheed)
povkom
2005-05-16 18:11:41 UTC
Permalink
Post by Serge Pajak
[titanium:~] pajak% echo "qwertyasdf" | tr "qaw" "aqz"
azertyqsdf
Le q s'est transformé en a, et l'est resté. Il n'y a pas de "deuxième
passe" qui aurait changé ce a en q ensuite. Et à première vue l'ordre
dans lequel on rentre les séries de caractrères à traduire dans tr ne
change pas la sortie.
Vous avez un exemple de commande qui ne marche pas ?
Ca a l'air d'être OK

echo
'qbcdefghijkl;noparstuvzxywQBCDEFGHIJKL:NOPARSTUVZXYW...2457890-=>' |
tr "\;qazwQ\:MAZW23457890\-\=\>" "maqwzAM\:QWZé\"\'\(è\!çà\)\-\."
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ...é'(è!çà)-.
JPaul
2005-05-17 19:52:02 UTC
Permalink
Post by Christian Fauchier
Dans le même ordre d'idée et pour faire un peu plus court, à la place de
tr ";q0427" "maà'éè"
Tiens, c'est vrai... jl'avions oublié celui-là.

JPaul.
--
/==/==\\-\ Jean-Paul BLANC
/ /--/--//\\ quelque-part (somewhere)
|/| L |\\\ en (in)
\/|| = |||\\\ FRANCE
jose.campos+ (José Campos)
2005-05-16 08:23:15 UTC
Permalink
Post by povkom
Bonjour à tous,
Existerait-t'il un utilitaire (ou autre) capable de transformer un
texte saisi avec un clavier QWERTY en un texte AZERTY.
ex.: le si;ple fqit de penser ;e trqnsporte 0 des ;illiqrds d4qnn2es
lu;i7res
Si tu maîtrise AppleScript, peut-être pourrais-tu essayer d'adapter
ce script, initialement prévu pour remplacer les caractères accentués en
entités HTML, inspiré par Roberto (alias Le Cantinier) que je salue ici.

Ça donnait ceci, mais il faudra sans doute passer par une étape
intermédiaire :

8<--
considering case
set Original to {"à", "À", "á"}

set Modifie to {"&agrave;", "&Agrave;", "&aacute;", "&Aacute;"}



set ull1 to the clipboard

set ull2 to ""
repeat with i from 1 to (the number of characters of ull1)
set mychar to character i of ull1
repeat with j from 1 to (count items of Original)
if item j of Original = character i of ull1 then
set mychar to (item j of Modifie)
end if
end repeat
set ull2 to ull2 & mychar
end repeat

set the clipboard to ull2 as text
end considering

8<--
Post by povkom
Merci d'avance
De rien, si ça aide,
--
4 Jo "Distance, n. The only thing that the rich are willing
3 for the poor to call theirs, and keep."
2 Ambrose Bierce. The Devil's Dictionary.
1....'....12.....'....24.....'....36.....'....48.....'....60.....'....72
povkom
2005-05-16 08:52:06 UTC
Permalink
Post by jose.campos+ (José Campos)
Si tu maîtrise AppleScript, peut-être pourrais-tu essayer d'adapter
ce script, initialement prévu pour remplacer les caractères accentués en
entités HTML, inspiré par Roberto (alias Le Cantinier) que je salue ici.
Je ne maitrise rien mais cette solution reste envisageable quoiqu'un
peu plus ardue.

Merci également
Benoit Leraillez
2005-05-16 09:50:26 UTC
Permalink
Post by povkom
Je ne maitrise rien mais cette solution reste envisageable quoiqu'un
peu plus ardue.
Comparons les deux phrases suivantes et demandons à un bébé programmeur
lequel est le plus compréhensible :

sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g

ou

considering case

set fichierAmodifier to the clipboard
--set fichierAmodifier to choose file
set caractereFoireux to {";", "a", "q", "4", "2", "0", "7"}
set caractereCorrect to {"m", "q", "a", "/'", "é", "à", "è"}
set textAmodifer to content of fichierAmodifer
set texteCorrige to ""

repeat with i from 1 to (the number of characters of textAmodifer)
set characterToTest to character i of textAmodifer

repeat with j from 1 to (count items of caractereFoireux)
if item j of caractereFoireux = character i of textAmodifer then
set caracterToTest to (item j of caractereCorrect)
end if
end repeat

set texteCorrige to texteCorrige & caracterToTest
end repeat

set the clipboard to texteCorrige as text
end considering

Maintenant je ne dis pas lequel est le plus rapide des deux ;-)
--
Nos émissions ont pour vocation de rendre le cerveau disponible :
c'est-à-dire de le divertir, de le détendre pour le préparer entre
deux pubs. Ce que nous vendons à Coca-Cola, c'est du temps de cerveau
humain disponible. (P. Le Lay - TF1)
povkom
2005-05-16 11:31:57 UTC
Permalink
In article
Post by Benoit Leraillez
Comparons les deux phrases suivantes et demandons à un bébé programmeur
sed -e s/\;/m/g -e s/a/q/g -e s/q/a/g -e s/4/\'/g -e s/2/é/g -e s/0/à/g
-e s/7/è/g
ou
considering case
set fichierAmodifier to the clipboard
--set fichierAmodifier to choose file
set caractereFoireux to {";", "a", "q", "4", "2", "0", "7"}
set caractereCorrect to {"m", "q", "a", "/'", "é", "à", "è"}
set textAmodifer to content of fichierAmodifer
set texteCorrige to ""
repeat with i from 1 to (the number of characters of textAmodifer)
set characterToTest to character i of textAmodifer
repeat with j from 1 to (count items of caractereFoireux)
if item j of caractereFoireux = character i of textAmodifer then
set caracterToTest to (item j of caractereCorrect)
end if
end repeat
set texteCorrige to texteCorrige & caracterToTest
end repeat
set the clipboard to texteCorrige as text
end considering
Maintenant je ne dis pas lequel est le plus rapide des deux ;-)
Alors là évidemment, vu sous cet angle... ;-)
Benoit Leraillez
2005-05-16 12:08:29 UTC
Permalink
Post by povkom
Alors là évidemment, vu sous cet angle... ;-)
Bin oui ;-)

D'autant que j'ai zappé le « set fichierAmodifier to choose file »
avec un « -- » mais on peut aussi s'électioner un choose folder et
ensuite laisser le script agir ou enregistrer le tout en appli qui
fonctionnera par D&D du fichier incriminé en ajoutant une vérification
qu'il s'agit bien d'un fichier texte, prendre Xcode et faire une belle
interface... Bref on a le choix entre connaître la ligne de commande et
man ou AppleScript et son petit language guide (tout de même). Commme
quoi le man est nécessaire dans tous les cas de figure pour débuter ;-)
--
Nos émissions ont pour vocation de rendre le cerveau disponible :
c'est-à-dire de le divertir, de le détendre pour le préparer entre
deux pubs. Ce que nous vendons à Coca-Cola, c'est du temps de cerveau
humain disponible. (P. Le Lay - TF1)
povkom
2005-05-16 12:21:25 UTC
Permalink
In article
Post by Benoit Leraillez
Post by povkom
Alors là évidemment, vu sous cet angle... ;-)
Bin oui ;-)
D'autant que j'ai zappé le « set fichierAmodifier to choose file »
avec un « -- » mais on peut aussi s'électioner un choose folder et
ensuite laisser le script agir ou enregistrer le tout en appli qui
fonctionnera par D&D du fichier incriminé en ajoutant une vérification
qu'il s'agit bien d'un fichier texte, prendre Xcode et faire une belle
interface... Bref on a le choix entre connaître la ligne de commande et
man ou AppleScript et son petit language guide (tout de même). Commme
quoi le man est nécessaire dans tous les cas de figure pour débuter ;-)
Ma question reste néanmoins la même...
Comment procéder pour tous les caractères sans effacer les
transformations successives ? (voir ma réponse à Serge)
Benoit Leraillez
2005-05-16 12:36:43 UTC
Permalink
Post by povkom
Ma question reste néanmoins la même...
Comment procéder pour tous les caractères sans effacer les
transformations successives ? (voir ma réponse à Serge)
Le script que t'a donné José Campos fais cela car si tu relis le
script on prend les caractères de texteAmodifier un à un et on les met
dans texteCorrige donc dans deux variables différentes ce qui fait qu'à
aucun moment il n'est possible qu'un a transmormé en q en soit à nouveau
traité puisque le q est allé s'asseoir ailleurs.
--
Nos émissions ont pour vocation de rendre le cerveau disponible :
c'est-à-dire de le divertir, de le détendre pour le préparer entre
deux pubs. Ce que nous vendons à Coca-Cola, c'est du temps de cerveau
humain disponible. (P. Le Lay - TF1)
Continuer la lecture sur narkive:
Résultats de recherche pour 'Convertir texte QWERTY>AZERTY' (Questions et réponses)
6
réponses
configurer mon clavier AZERTY en QWERTZ?
démarré 2007-02-28 06:01:20 UTC
informatique et internet
Loading...