Tableaux de révision des Hiragana, Katakana (sans trans.)

Discussions et questions et sur la langue, la littérature, les matériels pédagogiques et les écoles.
Répondre
samz
bienvenu(e)
bienvenu(e)
Messages : 20
Inscription : 02 nov. 2008, 08:12

Tableaux de révision des Hiragana, Katakana (sans trans.)

Message par samz »

Bonjour,
Pour réviser les syllabaires Hiragana et Katakana, je n'arrivais pas à me concentré sur le symbole sans que mon regard ne dévie vers la réponse (en Romaji) à côté de celui-ci dans les tableaux Hiragana et Katakana courant.
Il est aussi 'trop' facile de réviser lorsque les syllabes sont placées dans l'ordre usuelle: a,i,u,e,o.
J'ai donc développé ce petit script PHP construisant dans un ordre aléatoire les tableaux, Hiragana, Katakana, Romaji et double (Hiragana + Katakana). Une case ne contient que la syllabe (ou Romaji) sans sa transcription.

Tout commentaire est le bienvenue.
Merci et bonne révision.

URL: http://www.airfirst.ch/hkr/
UTILISATION:
- rafraichir/recharger la page pour générer de nouveaux tableaux aléatoires.
- imprimer la/les page(s).
- réviser là et quand vous le souhaitez.

** NOTE1: les syllabes ne s'affichent pas correctement si le script est sur un serveur local (Ex.: http://localhost/hkr/ )
** NOTE2. Par intérêt général j'étudie le japonais avec la méthode "40 leçons pour parler japonais" de la série "Langues pour tous". J'apprécie particulièrement cette méthode pour:
- sa structure, chaque nouveau élément est expliqué.
- sa progression assez lente.

LE SCRIPT PHP:

Code : Tout sélectionner

<?PHP
/*
********************** Construction aléatoire des tableaux de révision HIRAGANAS, KATAKANAS, ROMAJIS
Distribué sous licence GNU: GNU.ORG/licenses
Version 1.5 - Novembre 2008
*/
//SYLLABAIRE DES HIRAGANAS
$Hira=array('あ', 'い', 'う', 'え', 'お', 'か', 'き', 'く', 'け', 'こ', 'さ', 'し', 'す', 'せ', 'そ', 'た', 'ち', 'つ', 'て', 'と', 'な', 'に', 'ぬ', 'ね', 'の', 'は', 'ひ', 'ふ', 'へ', 'ほ', 'ま', 'み', 'む', 'め', 'も', 'ら', 'り', 'る', 'れ', 'ろ', 'や', 'ゆ', 'よ', 'わ', 'を', 'ん', 'が', 'ぎ', 'ぐ', 'げ', 'ご', 'ざ', 'じ', 'ず', 'ぜ', 'ぞ', 'だ', 'じ', 'ず', 'で', 'ど', 'ば', 'び', 'ぶ', 'べ', 'ぼ', 'ぱ', 'ぴ', 'ぷ', 'ぺ', 'ぽ', 'きゃ', 'きゅ', 'きょ', 'ぎゃ', 'ぎゅ', 'ぎょ', 'しゃ', 'しゅ', 'しょ', 'じゃ', 'じゅ', 'じょ', 'ちゃ', 'ちゅ', 'ちょ', 'にゃ', 'にゅ', 'にょ', 'ひゃ', 'ひゅ', 'ひょ', 'びゃ', 'びゅ', 'びょ', 'ぴゃ', 'ぴゅ', 'ぴょ', 'りゃ', 'りゅ', 'りょ');
//SYLLABAIRE DES KATAKANAS
$Kana=array('ア', 'イ', 'ウ', 'エ', 'オ', 'カ', 'キ', 'ク', 'ケ', 'コ', 'サ', 'シ', 'ス', 'セ', 'ソ', 'タ', 'チ', 'ツ', 'テ', 'ト', 'ナ', 'ニ', 'ヌ', 'ネ', 'ノ', 'ハ', 'ヒ', 'フ', 'ヘ', 'ホ', 'マ', 'ミ', 'ム', 'メ', 'モ', 'ラ', 'リ', 'ル', 'レ', 'ロ', 'ヤ', 'ユ', 'ヨ', 'ワ', 'ヲ', 'ン', 'ガ', 'ギ', 'グ', 'ゲ', 'ゴ', 'ザ', 'ジ', 'ズ', 'ゼ', 'ゾ', 'ダ', 'ジ', 'ズ', 'デ', 'ド', 'バ', 'ビ', 'ブ', 'ベ', 'ボ', 'パ', 'ピ', 'プ', 'ペ', 'ポ', 'キャ', 'キュ', 'キョ', 'ギャ', 'ギュ', 'ギョ', 'シャ', 'シュ', 'ショ', 'ジャ', 'ジュ', 'ジョ', 'チャ', 'チュ', 'チョ', 'ニャ', 'ニュ', 'ニョ', 'ヒャ', 'ヒュ', 'ヒョ', 'ビャ', 'ビュ', 'ビョ', 'ピャ', 'ピュ', 'ピョ', 'リャ', 'リュ', 'リョ');
//ROMAJIS
$Roma=array('a', 'i', 'u', 'e', 'o', 'ka', 'ki', 'ku', 'ke', 'ko', 'sa', 'shi', 'su', 'se', 'so', 'ta', 'chi', 'tsu', 'te', 'to', 'na', 'ni', 'nu', 'ne', 'no', 'ha', 'hi', 'fu', 'he', 'ho', 'ma', 'mi', 'mu', 'me', 'mo', 'ra', 'ri', 'ru', 're', 'ro', 'ya', 'yu', 'yo', 'wa', 'wo', 'n', 'ga', 'gi', 'gu', 'ge', 'go', 'za', 'ji', 'zu', 'ze', 'zo', 'da', 'ji', 'zu', 'de', 'do', 'ba', 'bi', 'bu', 'be', 'bo', 'pa', 'pi', 'pu', 'pe', 'po', 'kya', 'kyu', 'kyo', 'gya', 'gyu', 'gyo', 'sha', 'shu', 'sho', 'zya', 'zyu', 'zyo', 'cha', 'chu', 'cho', 'nya', 'nyu', 'nyo', 'hya', 'hyu', 'hyo', 'bya', 'byu', 'byo', 'pya', 'pyu', 'pyo', 'rya', 'ryu', 'ryo');

$Dual=array_merge($Hira,$Kana); //HIRAGANAS & KATAKANAS
$Rom2=array_merge($Roma,$Roma); //Double ROMAJIS

//Mixe aléatoirement les éléments d'un tableau associatif
function ShuffleAss($arr){
	while(count($arr)>0){
		$val=array_rand($arr);
		$new_arr[$val]=$arr[$val];
		unset($arr[$val]);}
	return $new_arr;
}
//Associe les Kana à leur ROMAJI
$HiraAss=array(); for($i=0;$i<count($Hira);$i++){$HiraAss[$Roma[$i]."_".$i]=$Hira[$i];}
$KanaAss=array(); for($i=0;$i<count($Kana);$i++){$KanaAss[$Roma[$i]."_".$i]=$Kana[$i];}
$RomaAss=array(); for($i=0;$i<count($Roma);$i++){$RomaAss[          "_".$i]=$Roma[$i];}
$DualAss=array(); for($i=0;$i<count($Rom2);$i++){$DualAss[$Rom2[$i]."_".$i]=$Dual[$i];}
//Mixe les tableaux
$HiraMix=ShuffleAss($HiraAss);
$KanaMix=ShuffleAss($KanaAss);
$RomaMix=ShuffleAss($RomaAss);
$DualMix=ShuffleAss($DualAss);
//Construit un tableau HTML contenant les données d'un tableau 'STANDARD' PHP
//*** Utilisé dans les versions antérieures
function TableREG($Data){
	$LonD=count($Data);
	$Line=(int)(sqrt(count($Data)));
	$Coll=$Line+1;
	$n=0;
	echo "<table>";
	for($i=0;$i<$Line;$i++){
		echo " <tr>\n";
		for($j=0;$j<$Coll;$j++){
			$cell=$n<$LonD?$Data[$n]:"&nbsp;";
			$n++;
			echo "  <td>".$cell."</td>\n";
		}
		echo " </tr>\n";
	}
	echo "</table>\n";
}
//Construit un tableau HTML contenant les données d'un tableau ASSOCIATIF PHP
function TableAss($Data){
	$LonD=count($Data);
	$Line=(int)(sqrt(count($Data)));
	$Coll=$Line+1;
	reset($Data);
	echo "<table>";
	for($i=0;$i<$Line;$i++){
		echo " <tr>\n";
		for($j=0;$j<$Coll;$j++){
			$val=current($Data);
			if($val!=""){
				list($title)=split("_",key($Data),2);
				$title=$title==""?"":"title=' ".$title." '";
				echo "  <td $title>".$val."</td>\n";
			}else{
				echo "  <td>&nbsp;</td>\n";
			}
			next($Data);
		}
		echo " </tr>\n";
	}
	echo "</table>\n";
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Revision HKR</title>
<style type="text/css">
<!--
HTML,*{margin:0Px;padding:0Px}
BODY  {font-family:"MS Trbuchet",Arial,sans-serif;font-size:20Px;margin:10Px;cursor:default;}
TABLE {border-collapse:collapse;font-size:20Px;width:100%;padding:5Px;margin:0 0 10Px 0;}
TH    {background-color:#CCCC99;white-space:nowrap}
TH,TD {vertical-align:top; padding:5Px;border:1Px solid #6E6E6E;}
TH    {font-weight:bold;font-size:12Px;}
H1    {font-size:18Px;margin:0 0 5Px 0;}
HR    {height:1Px;color:#666666;}
LI    {list-style-position:inside;}
P     {margin:0 0 5Px 0;padding:0Px;text-align:justify;}
A      {text-decoration:none;color:#0000CC;}
A:hover{text-decoration:underline;color:#993300;}
-->
</style>
</head>
<body>
<?PHP
echo "<H1>Hiragana</H1>";
TableAss($HiraMix);
echo "<H1>Katakana</H1>";
TableAss($KanaMix);
echo "<H1>R&ocirc;maji</H1>";
TableAss($RomaMix);
echo "<H1>Hiragana & Katakana</H1>";
TableAss($DualMix);
?>
</body>
</html>
Avatar de l’utilisateur
bcg
vénérable
vénérable
Messages : 3452
Inscription : 30 juin 2004, 09:00
Localisation : Tokyo
Contact :

Re: Tableaux de révision des Hiragana, Katakana (sans trans.)

Message par bcg »

Bonjour,

Merci pour ce tableau. C'est une bonne idée.
Je l'ai testé sur mon serveur et ça marche bien. Donc, merci pour le code aussi! :)
Est-il possible de le rendre public même s'il est placé sur un autre serveur, à condition de mettre un lien vers votre site?
samz
bienvenu(e)
bienvenu(e)
Messages : 20
Inscription : 02 nov. 2008, 08:12

Re: Tableaux de révision des Hiragana, Katakana (sans trans.)

Message par samz »

RevisionHKR: version 1.6

CORRECTIONS:
- 2 doublons dans la liste des Hiragana: じ,ず, remplacés par ぢ,づ (manquants)
- 2 doublons dans la liste des Katakana: ジ,ズ, remplacés par ヂ,ヅ (manquants)
AJOUTS:
- lien vers le code source du script (Clic droit > Sauver sous..., Puis changer l'extension en "php"). Car même en format CODE, le PHP/HTML/CSS est parfois altéré par le moteur du forum.
- lien pour générer de nouveaux tableaux (càd recharger la page).

URL: http://www.airfirst.ch/hkr/

PS.
- La mention "Distribué sous licence GNU: GNU.ORG/licenses", c'est juste pour faire un peu sérieux, et vous donner mon accord pour utiliser, modifier, dupliquer, distribuer ce script comme bon vous semble (mais sans but commercial), afin d'en faire profiter gratuitement tous ceux qui apprennent les syllabaires japonais. Si j'ai bien compris les termes de cette licences ;)
- Vous avez donc mon accord pour poser ce script sur le serveur où vous êtes autorisé à le faire.
- La page http://www.airfirst.ch/hkr/ est posée sur l'hébergement annuel d'un ami, et disparaitra s'il ne le renouvelle pas. Raison pour laquelle j'ai publier le code source dans mon message plus haut. OK bon, voici un miroir sur mon hébergement (avec une espérance de vie de quelques années): http://acc.jexiste.ch/JPN/RevisionHKR.php

Je voulais joindre le code source zippé (2.5 Ko), mais j'ai obtenu l'erreur: "Désolé, le quota de fichiers joints a été atteint." ??
Bien à vous.
Avatar de l’utilisateur
bcg
vénérable
vénérable
Messages : 3452
Inscription : 30 juin 2004, 09:00
Localisation : Tokyo
Contact :

Re: Tableaux de révision des Hiragana, Katakana (sans trans.)

Message par bcg »

Bonjour,

Merci pour ces précisions et les corrections.
La limite de volume pour l'envoi des fichiers joints a été modifiée. Vous pouvez désormais joindre des fichiers.
samz a écrit :... Je voulais joindre le code source zippé (2.5 Ko), mais j'ai obtenu l'erreur: "Désolé, le quota de fichiers joints a été atteint."...
samz
bienvenu(e)
bienvenu(e)
Messages : 20
Inscription : 02 nov. 2008, 08:12

Voici la version 1.8

Message par samz »

Bonsoir,
Voici la version 1.8 (Revision18.php) de cet outil de révision des syllabaires japonais. Dans le dossier de mes contributions en relation avec le Japon:

http://acc.jexiste.ch/JPN/

Cette version permet de réviser les syllabaires en ligne grâce l'affichage de la solution en cliquant la cellule de la syllabe étudiée. Un second clic masque la solution.
Préférez la révision en ligne afin d'économiser du papier ;)

Le code source ci-dessous.
Revision18.ZIP
Une idée pour améliorer cet outils? Je vous écoute.
Bien à vous et bonne révision.
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 54 invités