Asi läheb päris teemast mööda jubahannovene kirjutas:Mina proovisin ka ca 6 kuud tagasi Dvoraki eestindatud versiooni.
Asjal on jumet. Umbes kahenädalaga sain asja rahuldavalt selgeks. Kuid eestikeelest tulenevalt on ka mõned tõelised ebamugavused sees. Näiteks ei meeldi mulle: V (.) L (P) ja I (F).
Võibolla peaks kamba peale täiesti eesti oma dvoraki laotuse kokku panema? Nii nagu hr. Dvorak on mõelnud.
Ei saa leidma kuidas ma saan kirjutaga kaks sümboli
Moderaator: Moderaatorid
Tegin eesti keele korpuse (täpsemalt tasakaalus korpuse, vt http://www.cl.ut.ee/korpused/grammatikakorpus/ ) põhjal märkide sageduse analüüsi. Valimis on ca 18 miljonit sõna tänapäevase eesti keele tekstidest (ilukirjandus, ajakirjandus ja teadus, igal umbes kolmandik). Toon siin ära 60 kõige sagedasemat märki:
See on klaviatuuripaigutuse loomiseks statistiliselt täiesti ammendava mahuga valim.
Kood: Vali kõik
märk kordi
18782504
a 10821607
e 9134646
i 8593680
s 7543992
t 6276683
l 5563395
u 5102986
n 4381918
k 4167579
d 3390660
m 3333622
o 3141928
r 2599878
v 1970438
g 1734834
p 1577967
j 1501446
h 1439797
, 1299187
. 1284806
ä 1202816
õ 1023255
b 751143
ü 727866
" 383513
ö 253764
- 134236
f 110217
? 94502
! 77746
1 77728
0 69597
: 65933
c 56892
9 51044
) 44937
( 44667
” 41613
2 40789
5 33201
– 32346
y 29812
3 26727
z 23298
4 23296
w 19955
6 19324
8 19154
7 17527
; 17073
— 15426
š 12060
' 11793
x 8019
ž 5552
/ 5459
* 4676
% 2624
q 2029Kõike hääd,
WK
WK
Jutumärgid („”), pikk sidekriips, need väikesed 2 ja 3 (ruut-, kuup-) ja kraadimärk ei teeks ka kuskil alt-klahvi all paha. Tegelen sellega, et teada saada, mis tähed üksteise kõrval kõige tihedamini on.
Viimati muutis KristjanS, 22.10.2008, 11:34, muudetud 1 kord kokku.
Ubuntu Brainstorm: Have a device manager
Seadmehalduriga peaks saama jälgida riistvara, juhtprogrammi vahetada, ning vastavalt juhtprogrammile seadistusi muuta.
Seadmehalduriga peaks saama jälgida riistvara, juhtprogrammi vahetada, ning vastavalt juhtprogrammile seadistusi muuta.
Vokaalid võiksid koonduda vasakule esimesele reale. Konsonandid paremale nagu ingliskeelsel dvorakil.
Võibolla tuleks kaaluda mõtet minna teatavale kompromissile ja jätta osa tähti oma kohtadele. Nii on uut paigutust tunduvalt kergem õppida. Algus läheb kiiremini ja vb ei lööda niipalju käega.
Mina pakun välja need võiks olla: A,K,L,M,(N)
Võibolla tuleks kaaluda mõtet minna teatavale kompromissile ja jätta osa tähti oma kohtadele. Nii on uut paigutust tunduvalt kergem õppida. Algus läheb kiiremini ja vb ei lööda niipalju käega.
Mina pakun välja need võiks olla: A,K,L,M,(N)
Pole mõtet väga, mul läks kaks päeva enne kui ma harjusin h- ja k-tähtede vahetamisega ära. Ja ma vahetasin need sellepärast ära, et k-täht esineb eesti keeles tunduvalt sagedamini, kui h-täht, samas inglise keeles on olukord täpselt vastupidine.
Tähtis oleks aga mingid õppeprogrammid valmistada, et õppimine kiiremini sujuks.
e: Jäin jänni. Lootsin et need on siis puhtad tekstifailid mida saab kohe töödelda, aga seal on igasugust muud jama ja kõigele lisaks ei kasuta see UTF-8 kodeeringut, st. erimärgid on sellisel kujul: ä.
Tähtis oleks aga mingid õppeprogrammid valmistada, et õppimine kiiremini sujuks.
e: Jäin jänni. Lootsin et need on siis puhtad tekstifailid mida saab kohe töödelda, aga seal on igasugust muud jama ja kõigele lisaks ei kasuta see UTF-8 kodeeringut, st. erimärgid on sellisel kujul: ä.
Ubuntu Brainstorm: Have a device manager
Seadmehalduriga peaks saama jälgida riistvara, juhtprogrammi vahetada, ning vastavalt juhtprogrammile seadistusi muuta.
Seadmehalduriga peaks saama jälgida riistvara, juhtprogrammi vahetada, ning vastavalt juhtprogrammile seadistusi muuta.
Kood: Vali kõik
#1 se 593394
#2 st 580039
#3 is 501184
#4 ta 439403
#5 as 402923
#6 te 402176
#7 le 394686
#8 us 389897
#9 al 387867
#10 es 385541
#11 li 372707
#12 el 369756
#13 ma 354414
#14 va 338508
#15 in 330989
#16 ja 315070
#17 tu 296451
#18 mi 293869
#19 si 291646
#20 id 272453
#21 .
268238
#22 ku 265172
#23 on 263910
#24 ka 247184
#25 at 243329
#26 da 241395
#27 an 240317
#28 ni 239507
#29 ri 234822
#30 ik 233852
#31 it 226871
#32 ne 221892
#33 et 219889
#34 ti 218811
#35 ko 218081
#36 ol 211670
#37 ud 207925
#38 ad 205354
#39 ks 204706
#40 en 202374
#41 la 201670
#42 na 190748
#43 me 188727
#44 nd 186129
#45 sa 185413
#46 ra 184326
#47 ar 183336
#48 il 181738
#49 ei 181557
#50 ga 177355
#51 ul 164661
#52 de 164002
#53 er 163863
#54 ak 160783
#55 am 159665
#56 im 154765
#57 ts 147958
#58 em 144072
#59 su 140635
#60 nu 136639
#61 ek 131912
#62 re 130396
#63 gi 126960
#64 ed 122810
#65 ke 121897
#66 lt 118572
#67 ut 116556
#68 ki 114264
#69 he 112812
#70 du 112585
#71 õi 112329
#72 eg 111236
#73 av 110308
#74 di 108788
#75 gu 107542
#76 lu 107317
#77 ju 106980
#78 ai 104584
#79 pa 103288
#80 ea 102199
#81 ha 99623
#82 or 99515
#83 ur 98388
#84 un 96204
#85 ng 95013
#86 võ 94277
#87 ah 93476
#88 vi 93237
#89 ab 91664
#90 ig 91631
#91 ag 90023
#92 pe 88128
#93 mu 85516
#94 är 84743
#95 ev 84589
#96 aj 82541
#97 ge 82010
#98 ro 80538
#99 om 80199
#100 ui 78248
Mis vahenditega te need tulemused saite?
Ubuntu Brainstorm: Have a device manager
Seadmehalduriga peaks saama jälgida riistvara, juhtprogrammi vahetada, ning vastavalt juhtprogrammile seadistusi muuta.
Seadmehalduriga peaks saama jälgida riistvara, juhtprogrammi vahetada, ning vastavalt juhtprogrammile seadistusi muuta.
Proovisin alguses bashis kirjutada. Aga see katse ei kandnud kogenematuse tõttu vilja. Kuna perli ka ei mäleta, siis võtsin käsurea PHP ette.
Kood siin:
[php]
<?php
$count = array();
$input = file('./data/koik_lehed');
foreach ($input as $line) {
for ($i = 10; $i < strlen($line)-1; $i++) {
$fchar = strtolower($line[$i]);
$schar = strtolower($line[$i+1]);
if ($fchar == " ") continue;
if ($schar == " ") continue;
if ($schar == $fchar) continue;
$count[$fchar.$schar]++;
}
}
arsort($count, SORT_NUMERIC);
$i = 1;
foreach ($count as $key=>$value) {
echo "#".$i."\t".$key ." ". $value."\n";
if ($i++ > 100) break;
}[/php]
Kood siin:
[php]
<?php
$count = array();
$input = file('./data/koik_lehed');
foreach ($input as $line) {
for ($i = 10; $i < strlen($line)-1; $i++) {
$fchar = strtolower($line[$i]);
$schar = strtolower($line[$i+1]);
if ($fchar == " ") continue;
if ($schar == " ") continue;
if ($schar == $fchar) continue;
$count[$fchar.$schar]++;
}
}
arsort($count, SORT_NUMERIC);
$i = 1;
foreach ($count as $key=>$value) {
echo "#".$i."\t".$key ." ". $value."\n";
if ($i++ > 100) break;
}[/php]
Neid on tegelikult ju vähemalt 2:KristjanS kirjutas:pikk sidekriips
– kuni-kriips (ndash)
— mõttekriips (mdash)
Enamasti kasutatakse ka mõttekriipsuna kuni-kriipsu, lihtsalt ümbritsevate tühikutega, kuigi tüpograafiliselt oleks korrektne neid eristada. Ilmselt sobib kuni-kriips klaviatuurile.
Lisaks on ka
― horisontaaljoon (?) (horbar)
aga see pole ilmselt nii oluline.
Korpused on mul puhtale UTF-8 tekstile üle viiduna olemas, ka kõrvuti asetsevate märkide analüüsija on tehtud, aga üks veider perli kala oli risti jalus. Leidsin sellele lahenduse ja kui koju jõuan, siis jagan ka pisut statsitikat...
Kõike hääd,
WK
WK
Siin siis lubatud eesti tähestiku naabrite statistika. Keskmises veerus on täht, vasakul sellest on kõige levinum eelnev täht, paremal kõige levinum järgnev täht. Mida kaugema põhitähest, seda vähem levinud, ära toodud 10 kõige levinumat naabrit kummalgi pool:
Tekstimassiivi oli 110 MB mainitud korpusest, huvi korral võin ka selle kusagile üles riputada.
Kasutatud skript ka:
Katsetajatele: 110 mega näris mu skript ca 7 minutit, nii et ärge väga ära ehmatage, kui tükk aega vastuseks A-d ega O-d ei kosta, kannatage ära.
Kood: Vali kõik
aglnkdjvmt a sltndarmgk
lõräomieua b aieurloksü
mtuernoasi c hoakeilurt
öüorlenaui d aeiurslmno
rhkdmnetls e sletinmdrg
ruflsnioae f ioeartlufü
üäorulinea g aiuerlonms
csõiüuäeoa h eatiuokväj
kgtrienmsl i sndkitlmgr
õieouhsrla j auäoeõüinj
rühokuseai k uasoeikõüä
õätüiuloae l eialtumjdg
sümrluoiae m aieuõmäbop
tälõnueoai n aieudngtäo
inhslrtpok o lnormshtdg
ämsoupiõea p aeioäurõps
udnoersaic q uivatqgdlo
rõtpiouäea r iaeoudvgtj
nüostkueai s etiauksoõü
nrelšoiuat š eaiotkvušn
rzodutenia z hiaeozuknw
lürinouead ž ieaundüäok
nothulieas t aeuisotlär
dlmgjusntk u sdlutnirmk
tslohuirea v aiõeäuoslk
zrydwskaoe w aieoswhnrc
õnjlptsmkv õ intrulhpeõ
hmlktnpäjv ä riälhengkt
vnrlkpsmtö ö ödretlskgi
hrlmnptsük ü lühdktsmnr
éäyrxoauie x iaxetpvulo
dsonteakrl y aonldstepw
Kasutatud skript ka:
Kood: Vali kõik
#!/usr/bin/perl
# analüüsime kõrvuti asetsemist ja sõnaalgust, sisendtekst peab olema UTF-8 kodeeringus
# kasutamine kujul ./markide_naabrite_sagedus.pl < analyysitav.txt
# või
# cat analyysitav.txt | ./markide_naabrite_sagedus.pl
#
# väljundist saab kõigepealt teksti populaarsemate esitähtede statistika
# ja siis juba tähtede sõbralikumate naabrite tabel: keskmises veerus on
# kõnealune tähemärk, sellest vasakule jäävad kõige popimad eelnevad tähemärgid
# (mida lähemal, seda levinum), paremale jälle järgnevad (samuti: mida lähemal, seda enam kordi)
#
# skripti kirjutas Wanradt Koell 2008. a pimedate sügisõhtute leevendamiseks
# ja eesti dvoraki-laotuse edendamiseks
# seesamust võib kasutada ja levitada tingimusel, et esmakordsel käivitamisel naeratatakse
# ning levitamisel ja muutmisel säilitatakse käesolev päis järeltulevatele põlvedele
use strict;
use locale;
use utf8;
binmode STDIN, ":utf8";
binmode STDOUT, ":utf8";
my %margid = (); # siia kogume statistika
while (<>) {
chomp;
my $rida = $_;
$rida =~ s/\P{IsAlpha}/ /ig; # kõik mittetähed tühikuteks
my @sonad = split(/\s+/, $rida); # tekitame sõnade pinu
&Loendaja(@sonad);
}
&PopimadEsitahed();
&ParimadNaabrid();
exit(0);
##########################
##
## Loendaja loeb üle reas olevate sõnade märkide naabrid
sub Loendaja {
my (@sonad) = @_;
foreach my $sona ( @sonad ) {
$sona = lc($sona);
my ($jrk, $eel) = ();
foreach my $mrk ( split(//, $sona) ) {
if (!$jrk) { # peab järge levinumate esitähtede üle
$margid{$mrk}{esimene}++;
$jrk++;
}
else { # eelmise ja järgmise märgi arvestus
$margid{$mrk}{eelmine}{$eel}++;
$margid{$eel}{jargmine}{$mrk}++;
}
$eel = $mrk; # vajalik eelmise/järgmise arvestuses
}
}
}
##
##
##
## ParimadNaabrid väljastab iga märgi eelnevate ja järgnevate naabrite pingerea (10)
sub ParimadNaabrid {
foreach my $mrk (sort keys %margid) {
my ($eelnevad, $jargnevad) = ();
$eelnevad = substr( join("", sort { $margid{$mrk}{eelmine}{$a} <=> $margid{$mrk}{eelmine}{$b} } keys %{ $margid{$mrk}{eelmine} } ), -10); # sorteerime välja kõige lähemad eelnevad naabrid, ühendame ja jätame alles ainult 10 viimast (st kõige popimat)
$jargnevad = substr( join("", sort { $margid{$mrk}{jargmine}{$b} <=> $margid{$mrk}{jargmine}{$a} } keys %{ $margid{$mrk}{jargmine} } ), 0, 10); # sorteerime välja kõige lähemad järgnevad naabrid, ühendame ja jätame alles ainult 10 esimest (st kõige popimat)
printf ( "%10s %s %s\n", $eelnevad, $mrk, $jargnevad ); ## väljastame: kuni 10 eelnevat, märgi enda, kuni 10 järgnevat
}
}
##
##
##
## PopimadEsitahed väljastab sõnade esitähtede pingerea
sub PopimadEsitahed {
my %hash = ();
foreach (sort keys %margid ) { # vahe-hashi täitmine
$hash{$_} = $margid{$_}{esimene};
}
my @keys = sort { $hash{$b} <=> $hash{$a} } keys %hash; # sorteerime kõige levinumad esitähed pinusse
foreach ( @keys ) { # väljastame märgi ja leviku
print "$_\t$hash{$_}\n";
}
}
##
##
__END__
Kõike hääd,
WK
WK
Vastavalt wk valimile koostasin OO Arvutustabelit kasutades väikese analüüsi, millised võiks olla kodurea tähed. Nüüd tuleks mõelda milline võiks olla nende järjestus.wk kirjutas:Tegin eesti keele korpuse (täpsemalt tasakaalus korpuse, vt http://www.cl.ut.ee/korpused/grammatikakorpus/ ) põhjal märkide sageduse analüüsi. Valimis on ca 18 miljonit sõna tänapäevase eesti keele tekstidest (ilukirjandus, ajakirjandus ja teadus, igal umbes kolmandik). Toon siin ära 60 kõige sagedasemat märki:See on klaviatuuripaigutuse loomiseks statistiliselt täiesti ammendava mahuga valim.Kood: Vali kõik
märk kordi 18782504 a 10821607 e 9134646 i 8593680 s 7543992 t 6276683 l 5563395 u 5102986 n 4381918 k 4167579 d 3390660 m 3333622 o 3141928 r 2599878 v 1970438 g 1734834 p 1577967 j 1501446 h 1439797 , 1299187 . 1284806 ä 1202816 õ 1023255 b 751143 ü 727866 " 383513 ö 253764 - 134236 f 110217 ? 94502 ! 77746 1 77728 0 69597 : 65933 c 56892 9 51044 ) 44937 ( 44667 ” 41613 2 40789 5 33201 – 32346 y 29812 3 26727 z 23298 4 23296 w 19955 6 19324 8 19154 7 17527 ; 17073 — 15426 š 12060 ' 11793 x 8019 ž 5552 / 5459 * 4676 % 2624 q 2029
- Manused
-
- kodurida.xls
- Kodurea tähed.
ods formaati ei saanud kahjuks kasutada. Meie armas foorum seda standardit kahjuks veel ei toeta. - (98.5 KiB) Allalaaditud 569 korda
Küsimus/märkus punase joone kohta tabelis: kodureal on enamikul klaviatuuridest 11 klahvi (qwerty paigutuse asdfghjkl + öä), mitte 9 - või peavad need kaks viimast klahvi kindlasti mingiks muuks otstarbeks jääma?
Hilisem lisandus: pakun hannovene tabeli põhjal välja sellise paigutuse:
üõjäögydrvwq
uieaokstlnm (a ja s on "märgiga" klahvid)
zxcpbfh,.-
Veel hilisem lisandus: kes julgeb, võib proovida: http://pastebin.com/m26ebfe88
(ülevalt "download", terminalis $ sudo bash /kataloog-kuhu-salvestati/m26ebfe88 , klaviatuuripaigutuseks valida "ee (dvorak-est)".)
Hilisem lisandus: pakun hannovene tabeli põhjal välja sellise paigutuse:
üõjäögydrvwq
uieaokstlnm (a ja s on "märgiga" klahvid)
zxcpbfh,.-
Veel hilisem lisandus: kes julgeb, võib proovida: http://pastebin.com/m26ebfe88
"Sleep, she is for the weak."
Hmm, oleks vist parem jah tegelikult. Öösel ei osanud g-le paremat kohta leida kui k kohal ja b-le p kõrval.
(Kui kedagi huvitab, siis vastavate parandustega skript on siin: http://eesti-dvorak.pastebin.com/m4de67b1b )
(Kui kedagi huvitab, siis vastavate parandustega skript on siin: http://eesti-dvorak.pastebin.com/m4de67b1b )
Viimati muutis v6lur, 29.10.2008, 13:26, muudetud 2 korda kokku.
"Sleep, she is for the weak."
Toetan neid muudatusi, aga pakun ka mõningaid omalt poolt, selline laotus:hannovene kirjutas:g ja b on ebamugava kohapeal, vähemalt minule tundub nii. võibolla peaks ära vahetama g<->y ja b<->f
Kood: Vali kõik
üöäõjygdrvwq
oieaukstlmn
zxcpfbh,.-Kõike hääd,
WK
WK
m, n ja h asukoht jäi mulle segaseks, kas mõtlesid nii:hannovene kirjutas:proovin esmalt välja pakutud klaverit siin ...
(ka need read kirjutan)
pean tunnistama, et m asukoht on tülikas - kätt peab liigutama
teeks veel sellise vangerduse, et vahetaks h ja m ära. Alt on m-i lihtsam kätte saada.
üöäõjbgdrpwq
oieaukstlnh
zxcvfym,.-
?
"Sleep, she is for the weak."


