Skip to content

Instantly share code, notes, and snippets.

@Saqoosha
Last active February 28, 2020 04:16
Show Gist options
  • Star 3 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Saqoosha/494315111b8e2bc19ea5 to your computer and use it in GitHub Desktop.
Save Saqoosha/494315111b8e2bc19ea5 to your computer and use it in GitHub Desktop.
El Capitan の日本語入力で DvorakJP ref: http://qiita.com/Saqoosha/items/83622981fe1fec6bb5e0
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import re
apple = {}
for line in open('RomajiRule_Default_original.txt', 'r'):
line = line.strip()
if len(line) > 0 and line[0] == '#':
continue
data = line.split('\t')
if len(data) < 2:
continue
# print data
apple[data[0]] = data
diff = []
for line in open('dvorakjp-edited.txt', 'r'):
data = line.strip().split('\t')
if data[0] not in apple:
diff.append([data[0], ''.join(data[1:]).decode('utf-8')])
# print data[0] + '\t' + ''.join(data[1:])
def compare(s1, s2):
for i,j in zip(s1, s2):
if ord(i) < ord(j):
return -1
elif ord(i) > ord(j):
return 1
if len(s1) < len(s2):
return -1
elif len(s1) > len(s2):
return 1
else:
return 0
def strcmp(x, y):
n = len(x[1]) - len(y[1])
if n == 0:
return compare(x[1], y[1])
else:
return n
p = re.compile(r'[,\.;]')
for t in sorted(diff, cmp=strcmp):
n = len(t[1])
if n > 1:
t.append(('0,' * (n - 1) + '%d') % len(t[0]))
if p.search(t[0]):
t[0] = '#' + t[0]
t.append(u'# 無効')
print '\t'.join(t).encode('utf-8')
cd /System/Library/Input\ Methods/JapaneseIM.app/Contents/Resources
cp RomajiRule_Default.txt RomajiRule_Default_org.txt
cp ~/Desktop/RomajiRule_Default.txt .
cnp きゅう 2,1,1 # x: 落ちる
cnp きゅう 2,1,0 # x: "cんゅ"
cnp きゅう -2,1,0 # x: 落ちる
cnp きゅう -1,2,0 # x: 落ちる
cnp きゅう -0,2,1 # x: "cんう"
cnp きゅう 0,1,2 # x: "ゅんp"
cnp きゅう -0,1,2 # x: "ゅんp"
cnp きゅう 0,-1,2 # x: 落ちる
cnp きゅう 1,2,0 # x: "きんp"
cnp きゅう -1,2,0 # x: 落ちる
cnp きゅう -0,1,1 # x: 落ちる
cnp きゅう -1,1,1 # x: 落ちる
cnp きゅう 1,1,1 # x: きゅp
cnp きゅう 0,0,3 # o: "きゅう" 1 word
cnp きゅう 0,0,-3 # o: "きゅう" 1 word
cnp きゅう 0,3,0 # x: "きゅ|う"
cnp きゅう 0,-3,0 # x: きゅう -> ゅ
cnp きゅう 3,0,0 # x: "き|ゅう"
cnp きゅう -3,0,0 # x: バックスペースで削除できない
cd /System/Library/Input\ Methods/JapaneseIM.app/Contents/Resources
cp RomajiRule_Default.txt RomajiRule_Default_org.txt
cp ~/Desktop/RomajiRule_Default.txt .
cnp きゅう 2,1,1 # x: 落ちる
cnp きゅう 2,1,0 # x: "cんゅ"
cnp きゅう -2,1,0 # x: 落ちる
cnp きゅう -1,2,0 # x: 落ちる
cnp きゅう -0,2,1 # x: "cんう"
cnp きゅう 0,1,2 # x: "ゅんp"
cnp きゅう -0,1,2 # x: "ゅんp"
cnp きゅう 0,-1,2 # x: 落ちる
cnp きゅう 1,2,0 # x: "きんp"
cnp きゅう -1,2,0 # x: 落ちる
cnp きゅう -0,1,1 # x: 落ちる
cnp きゅう -1,1,1 # x: 落ちる
cnp きゅう 1,1,1 # x: きゅp
cnp きゅう 0,0,3 # o: "きゅう" 1 word
cnp きゅう 0,0,-3 # o: "きゅう" 1 word
cnp きゅう 0,3,0 # x: "きゅ|う"
cnp きゅう 0,-3,0 # x: きゅう -> ゅ
cnp きゅう 3,0,0 # x: "き|ゅう"
cnp きゅう -3,0,0 # x: バックスペースで削除できない
#
#
#
#
- ー 1
a あ 1
i い
u う 1
e え 1
o お 1
ka か 2
ki き 2
ku く
ke け
ko こ
ca か
ci き
cu く
ce け
co こ
sa さ
si し
su す
se せ
so そ
ta た
ti ち
tu つ
te て
to と
na な
ni に
nu ぬ
ne ね
no の
ha は
hi ひ
hu ふ
fu ふ
he へ
ho ほ
ma ま
mi み
mu む
me め
mo も
ya や
yi い
yu ゆ
ye いぇ -2,0
yo よ
ra ら
ri り
ru る
re れ
ro ろ
wa わ
wi うぃ -2,0
wu う
we うぇ -2,0
wo を
wyi ゐ
wye ゑ
#n ん
nn ん
n' ん
n’ ん
########################
la ぁ
li ぃ
lu ぅ
le ぇ
lo ぉ
ltu っ
ltsu っ
lya ゃ
lyi ぃ
lyu ゅ
lye ぇ
lyo ょ
lwa ゎ
lka ヵ
lke ヶ
########################
xa ぁ
xi ぃ
xu ぅ
xe ぇ
xo ぉ
xtu っ
xtsu っ
xya ゃ
xyu ゅ
xyo ょ
xwa ゎ
xka ヵ
xke ヶ
########################
n- ん- 1,1
# na
nb んb 1,1
nc んc 1,1
nd んd 1,1
# ne
nf んf 1,1
ng んg 1,1
nh んh 1,1
# ni
nj んj 1,1
nk んk 1,1
nl んl 1,1
nm んm 1,1
# nn
# no
np んp 1,1
nq んq 1,1
nr んr 1,1
ns んs 1,1
nt んt 1,1
# nu
nv んv 1,1
nw んw 1,1
nx んx 1,1
# ny
nz んz 1,1
ny ny 1,1 # !!!!!
########################
ga が
gi ぎ
gu ぐ
ge げ
go ご
za ざ
zi じ
zu ず
ze ぜ
zo ぞ
da だ
di ぢ
du づ
de で
do ど
ba ば
bi び
bu ぶ
be べ
bo ぼ
va ゔぁ -2,0
vi ゔぃ -2,0
vu ゔ
ve ゔぇ -2,0
vo ゔぉ -2,0
pa ぱ
pi ぴ
pu ぷ
pe ぺ
po ぽ
########################
kya きゃ -3,0
kyi きぃ -3,0
kyu きゅ -3,0
kye きぇ -3,0
kyo きょ -3,0
kwa くぁ -3,0
kwi くぃ -3,0
kwu くぅ -3,0
kwe くぇ -3,0
kwo くぉ -3,0
qa くぁ -2,0
qi くぃ -2,0
qu くぅ -2,0
qe くぇ -2,0
qo くぉ -2,0
# New
qwa くゎ -3,0 # New
qwi くぃ -3,0 # New
qwu くぅ -3,0 # New
qwe くぇ -3,0 # New
qwo くぉ -3,0 # New
sha しゃ -3,0
shi し 3
shu しゅ -3,0
she しぇ -3,0
sho しょ -3,0
sya しゃ -3,0
syi しぃ -3,0
syu しゅ -3,0
sye しぇ -3,0
syo しょ -3,0
swa すぁ -3,0
swi すぃ -3,0
swu すぅ -3,0
swe すぇ -3,0
swo すぉ -3,0
cha ちゃ -3,0
chi ち
chu ちゅ -3,0
che ちぇ -3,0
cho ちょ -3,0
cya ちゃ -3,0
cyi ちぃ -3,0
cyu ちゅ -3,0
cye ちぇ -3,0
cyo ちょ -3,0
tya ちゃ -3,0
tyi ちぃ -3,0
tyu ちゅ -3,0
tye ちぇ -3,0
tyo ちょ -3,0
tsa つぁ -3,0
tsi つぃ -3,0
tsu つ
tse つぇ -3,0
tso つぉ -3,0
tha てゃ -3,0
thi てぃ -3,0
thu てゅ -3,0
the てぇ -3,0
tho てょ -3,0
twa とぁ -3,0
twi とぃ -3,0
twu とぅ -3,0
twe とぇ -3,0
two とぉ -3,0
nya にゃ -3,0
nyi にぃ -3,0
nyu にゅ -3,0
nye にぇ -3,0
nyo にょ -3,0
hya ひゃ -3,0
hyi ひぃ -3,0
hyu ひゅ -3,0
hye ひぇ -3,0
hyo ひょ -3,0
fa ふぁ -2,0
fi ふぃ -2,0
fu ふ
fe ふぇ -2,0
fo ふぉ -2,0
fya ふゃ -3,0
fyi ふぃ -3,0
fyu ふゅ -3,0
fye ふぇ -3,0
fyo ふょ -3,0
mya みゃ -3,0
myi みぃ -3,0
myu みゅ -3,0
mye みぇ -3,0
myo みょ -3,0
rya りゃ -3,0
ryi りぃ -3,0
ryu りゅ -3,0
rye りぇ -3,0
ryo りょ -3,0
wha うぁ -3,0
whi うぃ -3,0
whu う 3
whe うぇ -3,0
who うぉ -3,0
########################
gya ぎゃ -3,0
gyi ぎぃ -3,0
gyu ぎゅ -3,0
gye ぎぇ -3,0
gyo ぎょ -3,0
gwa ぐぁ -3,0
gwi ぐぃ -3,0
gwu ぐぅ -3,0
gwe ぐぇ -3,0
gwo ぐぉ -3,0
ja じゃ -2,0
ji じ
ju じゅ -2,0
je じぇ -2,0
jo じょ -2,0
jya じゃ -3,0
jyi じぃ -3,0
jyu じゅ -3,0
jye じぇ -3,0
jyo じょ -3,0
zya じゃ -3,0
zyi じぃ -3,0
zyu じゅ -3,0
zye じぇ -3,0
zyo じょ -3,0
dya ぢゃ -3,0
dyi ぢぃ -3,0
dyu ぢゅ -3,0
dye ぢぇ -3,0
dyo ぢょ -3,0
dha でゃ -3,0
dhi でぃ -3,0
dhu でゅ -3,0
dhe でぇ -3,0
dho でょ -3,0
dwa どぁ -3,0
dwi どぃ -3,0
dwu どぅ -3,0
dwe どぇ -3,0
dwo どぉ -3,0
bya びゃ -3,0
byi びぃ -3,0
byu びゅ -3,0
bye びぇ -3,0
byo びょ -3,0
vya ゔゃ -3,0
vyi ゔぃ -3,0
vyu ゔゅ -3,0
vye ゔぇ -3,0
vyo ゔょ -3,0
pya ぴゃ -3,0
pyi ぴぃ -3,0
pyu ぴゅ -3,0
pye ぴぇ -3,0
pyo ぴょ -3,0
########################
kk っk 1,1
ss っs 1,1
tt っt 1,1
# nn
hh っh 1,1
mm っm 1,1
yy っy 1,1
rr っr 1,1
ll っl 1,1
ww っw 1,1
bb っb 1,1
cc っc 1,1
dd っd 1,1
ff っf 1,1
gg っg 1,1
jj っj 1,1
pp っp 1,1
qq っq 1,1
vv っv 1,1
xx っx 1,1
zz っz 1,1
########################
う゛ ゔ
か゛ が
き゛ ぎ
く゛ ぐ
け゛ げ
こ゛ ご
さ゛ ざ
し゛ じ
す゛ ず
せ゛ ぜ
そ゛ ぞ
た゛ だ
ち゛ ぢ
つ゛ づ
て゛ で
と゛ ど
は゛ ば
ひ゛ び
ふ゛ ぶ
へ゛ べ
ほ゛ ぼ
は゜ ぱ
ひ゜ ぴ
ふ゜ ぷ
へ゜ ぺ
ほ゜ ぽ
########################
# DvorakJP added by Saqoosha (2015.10.3)
xyi ぃ
xye ぇ
ca か
ci き
cu く
ce け
co こ
lha ゃ
lhu ゅ
lho ょ
c’ かい 0,2
k’ かい 0,2
#c; かん 0,2 # 無効
#k; かん 0,2 # 無効
g’ がい 0,2
#g; がん 0,2 # 無効
cni きぃ 0,3
khi きぃ 0,3
cne きぇ 0,3
khe きぇ 0,3
cna きゃ 0,3
kha きゃ 0,3
cnu きゅ 0,3
khu きゅ 0,3
cno きょ 0,3
kho きょ 0,3
cx きん 0,2
kx きん 0,2
gni ぎぃ 0,3
gne ぎぇ 0,3
gna ぎゃ 0,3
gnu ぎゅ 0,3
gno ぎょ 0,3
gx ぎん 0,2
cp くう 0,2
kp くう 0,2
ck くん 0,2
gp ぐう 0,2
gk ぐん 0,2
#c. けい 0,2 # 無効
#k. けい 0,2 # 無効
cj けん 0,2
kj けん 0,2
#g. げい 0,2 # 無効
gj げん 0,2
#c, こう 0,2 # 無効
#k, こう 0,2 # 無効
cq こん 0,2
kq こん 0,2
#g, ごう 0,2 # 無効
gq ごん 0,2
s’ さい 0,2
#s; さん 0,2 # 無効
z’ ざい 0,2
#z; ざん 0,2 # 無効
sx しん 0,2
zhi じぃ 0,3
zhe じぇ 0,3
zha じゃ 0,3
zhu じゅ 0,3
zho じょ 0,3
jx じん 0,2
zx じん 0,2
sp すう 0,2
sk すん 0,2
zp ずう 0,2
zk ずん 0,2
#s. せい 0,2 # 無効
sj せん 0,2
#z. ぜい 0,2 # 無効
zj ぜん 0,2
#s, そう 0,2 # 無効
sq そん 0,2
#z, ぞう 0,2 # 無効
zq ぞん 0,2
t’ たい 0,2
#t; たん 0,2 # 無効
d’ だい 0,2
#d; だん 0,2 # 無効
tni ちぃ 0,3
tne ちぇ 0,3
tna ちゃ 0,3
tnu ちゅ 0,3
tno ちょ 0,3
tx ちん 0,2
dni ぢぃ 0,3
dne ぢぇ 0,3
dna ぢゃ 0,3
dnu ぢゅ 0,3
dno ぢょ 0,3
dx ぢん 0,2
tp つう 0,2
tk つん 0,2
dp づう 0,2
dk づん 0,2
#t. てい 0,2 # 無効
tj てん 0,2
#d. でい 0,2 # 無効
dj でん 0,2
#t, とう 0,2 # 無効
tq とん 0,2
#d, どう 0,2 # 無効
dq どん 0,2
#n; なん 0,2 # 無効
nhi にぃ 0,3
nhe にぇ 0,3
nha にゃ 0,3
nhu にゅ 0,3
nho にょ 0,3
#n. ねい 0,2 # 無効
#n, のう 0,2 # 無効
h’ はい 0,2
#h; はん 0,2 # 無効
b’ ばい 0,2
#b; ばん 0,2 # 無効
p’ ぱい 0,2
#p; ぱん 0,2 # 無効
hni ひぃ 0,3
hne ひぇ 0,3
hna ひゃ 0,3
hnu ひゅ 0,3
hno ひょ 0,3
hx ひん 0,2
bni びぃ 0,3
bne びぇ 0,3
bna びゃ 0,3
bnu びゅ 0,3
bno びょ 0,3
bx びん 0,2
phi ぴぃ 0,3
pni ぴぃ 0,3
phe ぴぇ 0,3
pne ぴぇ 0,3
pha ぴゃ 0,3
pna ぴゃ 0,3
phu ぴゅ 0,3
pnu ぴゅ 0,3
pho ぴょ 0,3
pno ぴょ 0,3
px ぴん 0,2
fni ふぃ 0,3
hp ふう 0,2
fne ふぇ 0,3
fna ふゃ 0,3
fnu ふゅ 0,3
fno ふょ 0,3
fk ふん 0,2
hk ふん 0,2
bp ぶう 0,2
bk ぶん 0,2
pk ぷん 0,2
#h. へい 0,2 # 無効
hj へん 0,2
#b. べい 0,2 # 無効
bj べん 0,2
#p. ぺい 0,2 # 無効
pj ぺん 0,2
#h, ほう 0,2 # 無効
hq ほん 0,2
#b, ぼう 0,2 # 無効
bq ぼん 0,2
#p, ぽう 0,2 # 無効
pq ぽん 0,2
m’ まい 0,2
#m; まん 0,2 # 無効
mni みぃ 0,3
mne みぇ 0,3
mna みゃ 0,3
mnu みゅ 0,3
mno みょ 0,3
mx みん 0,2
mp むう 0,2
mk むん 0,2
#m. めい 0,2 # 無効
mj めん 0,2
#m, もう 0,2 # 無効
mq もん 0,2
y’ やい 0,2
#y; やん 0,2 # 無効
yp ゆう 0,2
yk ゆん 0,2
#y, よう 0,2 # 無効
yq よん 0,2
r’ らい 0,2
#r; らん 0,2 # 無効
rhi りぃ 0,3
rhe りぇ 0,3
rha りゃ 0,3
rhu りゅ 0,3
rho りょ 0,3
rx りん 0,2
rp るう 0,2
rk るん 0,2
#r. れい 0,2 # 無効
rj れん 0,2
#r, ろう 0,2 # 無効
rq ろん 0,2
w’ わい 0,2
#w; わん 0,2 # 無効
#y. いぇい 0,0,2 # 無効
wx うぃん 0,0,2
#w. うぇい 0,0,2 # 無効
wj うぇん 0,0,2
cnx きぃん 0,0,3
kyx きぃん 0,0,3
#cn. きぇい 0,0,3 # 無効
#ky. きぇい 0,0,3 # 無効
cnj きぇん 0,0,3
kyj きぇん 0,0,3
cn’ きゃい 0,0,3
ky’ きゃい 0,0,3
#cn; きゃん 0,0,3 # 無効
#ky; きゃん 0,0,3 # 無効
cnp きゅう 0,0,3
kyp きゅう 0,0,3
cnk きゅん 0,0,3
kyk きゅん 0,0,3
#cn, きょう 0,0,3 # 無効
#cn, きょう 0,0,3 # 無効
#ky, きょう 0,0,3 # 無効
cnq きょん 0,0,3
kyq きょん 0,0,3
gnx ぎぃん 0,0,3
#gn. ぎぇい 0,0,3 # 無効
gnj ぎぇん 0,0,3
gn’ ぎゃい 0,0,3
#gn; ぎゃん 0,0,3 # 無効
gnp ぎゅう 0,0,3
gnk ぎゅん 0,0,3
#gn, ぎょう 0,0,3 # 無効
gnq ぎょん 0,0,3
shx しぃん 0,0,3
#sh. しぇい 0,0,3 # 無効
shj しぇん 0,0,3
sh’ しゃい 0,0,3
#sh; しゃん 0,0,3 # 無効
shp しゅう 0,0,3
shk しゅん 0,0,3
#sh, しょう 0,0,3 # 無効
shq しょん 0,0,3
zhx じぃん 0,0,3
#j. じぇい 0,0,2 # 無効
#zh. じぇい 0,0,3 # 無効
zhj じぇん 0,0,3
j’ じゃい 0,0,2
zh’ じゃい 0,0,3
#j; じゃん 0,0,2 # 無効
#zh; じゃん 0,0,3 # 無効
jp じゅう 0,0,2
zhp じゅう 0,0,3
jk じゅん 0,0,2
zhk じゅん 0,0,3
#j, じょう 0,0,2 # 無効
#zh, じょう 0,0,3 # 無効
jq じょん 0,0,2
zhq じょん 0,0,3
chx ちぃん 0,0,3
tnx ちぃん 0,0,3
#ch. ちぇい 0,0,3 # 無効
#tn. ちぇい 0,0,3 # 無効
chj ちぇん 0,0,3
tnj ちぇん 0,0,3
ch’ ちゃい 0,0,3
tn’ ちゃい 0,0,3
#ch; ちゃん 0,0,3 # 無効
#tn; ちゃん 0,0,3 # 無効
chp ちゅう 0,0,3
tnp ちゅう 0,0,3
chk ちゅん 0,0,3
tnk ちゅん 0,0,3
#ch, ちょう 0,0,3 # 無効
#tn, ちょう 0,0,3 # 無効
chq ちょん 0,0,3
tnq ちょん 0,0,3
dnx ぢぃん 0,0,3
#dn. ぢぇい 0,0,3 # 無効
dnj ぢぇん 0,0,3
dn’ ぢゃい 0,0,3
#dn; ぢゃん 0,0,3 # 無効
dnp ぢゅう 0,0,3
dnk ぢゅん 0,0,3
#dn, ぢょう 0,0,3 # 無効
dnq ぢょん 0,0,3
tch っch 0,0,3
thx てぃん 0,0,3
dhx でぃん 0,0,3
nhx にぃん 0,0,3
#nh. にぇい 0,0,3 # 無効
nhj にぇん 0,0,3
nh’ にゃい 0,0,3
#nh; にゃん 0,0,3 # 無効
nhp にゅう 0,0,3
nhk にゅん 0,0,3
#nh, にょう 0,0,3 # 無効
nhq にょん 0,0,3
hnx ひぃん 0,0,3
#hn. ひぇい 0,0,3 # 無効
hnj ひぇん 0,0,3
hn’ ひゃい 0,0,3
#hn; ひゃん 0,0,3 # 無効
hnp ひゅう 0,0,3
hnk ひゅん 0,0,3
#hn, ひょう 0,0,3 # 無効
hnq ひょん 0,0,3
bnx びぃん 0,0,3
#bn. びぇい 0,0,3 # 無効
bnj びぇん 0,0,3
bn’ びゃい 0,0,3
#bn; びゃん 0,0,3 # 無効
bnp びゅう 0,0,3
bnk びゅん 0,0,3
#bn, びょう 0,0,3 # 無効
bnq びょん 0,0,3
phx ぴぃん 0,0,3
#ph. ぴぇい 0,0,3 # 無効
phj ぴぇん 0,0,3
ph’ ぴゃい 0,0,3
#ph; ぴゃん 0,0,3 # 無効
php ぴゅう 0,0,3
phk ぴゅん 0,0,3
#ph, ぴょう 0,0,3 # 無効
#py, ぴょう 0,0,3 # 無効
phq ぴょん 0,0,3
f’ ふぁい 0,0,2
#f; ふぁん 0,0,2 # 無効
fx ふぃん 0,0,2
#f. ふぇい 0,0,2 # 無効
fj ふぇん 0,0,2
#f, ふぉう 0,0,2 # 無効
fq ふぉん 0,0,2
fp ふゅう 0,0,2
mnx みぃん 0,0,3
#mn. みぇい 0,0,3 # 無効
mnj みぇん 0,0,3
mn’ みゃい 0,0,3
#mn; みゃん 0,0,3 # 無効
mnp みゅう 0,0,3
mnk みゅん 0,0,3
#mn, みょう 0,0,3 # 無効
mnq みょん 0,0,3
rhx りぃん 0,0,3
#rh. りぇい 0,0,3 # 無効
rhj りぇん 0,0,3
rh’ りゃい 0,0,3
#rh; りゃん 0,0,3 # 無効
rhp りゅう 0,0,3
rhk りゅん 0,0,3
#rh, りょう 0,0,3 # 無効
rhq りょん 0,0,3
@Apochrosi
Copy link

Do you by any chance know what the numbers in the third column mean and how they work?

@Saqoosha
Copy link
Author

I changed it and test the behavior but I couldn't get what the value means.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment