我正在做一个项目(Ubuntu 使用手册(如果您好奇的话)需要 TeX 才能创建 PDF 文档。但是当我们几乎全部翻译完后,我发现我的语言(阿斯图里亚语)没有连字符模式。实际上,几乎没有任何东西。:)
因此,我开始创建一个新的,这涉及在晦涩的互联网地牢中进行一些艰苦的挖掘,以获得一些关于如何做到这一点的文档。 ;)
我的方法是创建一个带连字符的单词列表(当我 100% 确定时是词源的,否则是音节的),来自我们的阿斯佩尔单词表。当我得到一个合适的列表时,我会使用连字生成器(我不记得脚本的实际名称)来获取阿斯图里亚语连字文件,然后我会尝试在我的 TeX Live 安装下安装以进行测试,然后我会将其上传到 TeX 存储库。
不,开放办公室连字符不是一种选项(它仍然不存在)。
我的问题是:我还缺少什么才能为我的语言提供可用的连字功能?我完全错了吗?这行不通吗?
先感谢您。
答案1
生成连字模式的标准方法是使用 PatGen。
有一篇关于自定义模式生成的 TUGboat 文章:按需连字 还有CTAN 上的 PatGen2 教程。
答案2
一旦你有了模式文件(如前所述,从单词列表生成模式文件的标准方法是使用 PatGen),你需要编辑发行版的 language.dat 文件并重新生成格式,因为连字模式仅在 iniTeX 时加载(LuaTeX 除外)。然后你可以将文件发送到我们以便包含在 TeX Live 中 :-)
答案3
连字模式基本上可以通过两种方式创建。
1.和patgen
形态学、词源学等规则。你需要输入patgen
一大串带连字符的单词,并设置一些晦涩难懂的参数。 这里有一个教程。这是一个反复试验的任务,尽管有一些尝试使生成更容易,例如pypatgen
。
2.用手写音节、正字法等系统规则。如果你的语言属于这一类,那就别再用手写音节、正字法等系统规则了。patgen
彻底忘掉它吧。实际上,许多连字模式都是以这种方式创建的,也许有特别指定重复规则的工具。
在这方面,有一个用 TeX 编写的有趣工具,名为mkpattern
。例如,
\input mkpatter.tex
&Va={a e o}
&Vp={i u}
&Vi={&Va u}
&C-={b c d f g h k m n p q s t v w x z}
&C={&C- l r}
\begin{pseudopatterns}
1&{C}
2&{C}&{C-}
a1a e1e o1o zo2o 2&{Va}&{Vp}.
&{Vi}1i&{Va+} 2i&{Va+}.
\end{pseudopatterns}
\end{}
生成了以下模式(我删除了一些空行):
\patterns{
1b 1c 1d 1f 1g 1h 1k 1m 1n 1p 1q 1s 1t 1v 1w 1x 1z 1l 1r
2bb 2bc 2bd 2bf 2bg 2bh 2bk 2bm 2bn 2bp 2bq 2bs 2bt 2bv 2bw 2bx 2bz
2cb 2cc 2cd 2cf 2cg 2ch 2ck 2cm 2cn 2cp 2cq 2cs 2ct 2cv 2cw 2cx 2cz
2db 2dc 2dd 2df 2dg 2dh 2dk 2dm 2dn 2dp 2dq 2ds 2dt 2dv 2dw 2dx 2dz
2fb 2fc 2fd 2ff 2fg 2fh 2fk 2fm 2fn 2fp 2fq 2fs 2ft 2fv 2fw 2fx 2fz
2gb 2gc 2gd 2gf 2gg 2gh 2gk 2gm 2gn 2gp 2gq 2gs 2gt 2gv 2gw 2gx 2gz
2hb 2hc 2hd 2hf 2hg 2hh 2hk 2hm 2hn 2hp 2hq 2hs 2ht 2hv 2hw 2hx 2hz
2kb 2kc 2kd 2kf 2kg 2kh 2kk 2km 2kn 2kp 2kq 2ks 2kt 2kv 2kw 2kx 2kz
2mb 2mc 2md 2mf 2mg 2mh 2mk 2mm 2mn 2mp 2mq 2ms 2mt 2mv 2mw 2mx 2mz
2nb 2nc 2nd 2nf 2ng 2nh 2nk 2nm 2nn 2np 2nq 2ns 2nt 2nv 2nw 2nx 2nz
2pb 2pc 2pd 2pf 2pg 2ph 2pk 2pm 2pn 2pp 2pq 2ps 2pt 2pv 2pw 2px 2pz
2qb 2qc 2qd 2qf 2qg 2qh 2qk 2qm 2qn 2qp 2qq 2qs 2qt 2qv 2qw 2qx 2qz
2sb 2sc 2sd 2sf 2sg 2sh 2sk 2sm 2sn 2sp 2sq 2ss 2st 2sv 2sw 2sx 2sz
2tb 2tc 2td 2tf 2tg 2th 2tk 2tm 2tn 2tp 2tq 2ts 2tt 2tv 2tw 2tx 2tz
2vb 2vc 2vd 2vf 2vg 2vh 2vk 2vm 2vn 2vp 2vq 2vs 2vt 2vv 2vw 2vx 2vz
2wb 2wc 2wd 2wf 2wg 2wh 2wk 2wm 2wn 2wp 2wq 2ws 2wt 2wv 2ww 2wx 2wz
2xb 2xc 2xd 2xf 2xg 2xh 2xk 2xm 2xn 2xp 2xq 2xs 2xt 2xv 2xw 2xx 2xz
2zb 2zc 2zd 2zf 2zg 2zh 2zk 2zm 2zn 2zp 2zq 2zs 2zt 2zv 2zw 2zx 2zz
2lb 2lc 2ld 2lf 2lg 2lh 2lk 2lm 2ln 2lp 2lq 2ls 2lt 2lv 2lw 2lx 2lz
2rb 2rc 2rd 2rf 2rg 2rh 2rk 2rm 2rn 2rp 2rq 2rs 2rt 2rv 2rw 2rx 2rz
%
a1a e1e o1o zo2o
2ai. 2au.
2ei. 2eu.
2oi. 2ou.
}