《切韵》记录了南北朝时期标准汉语的音系。这一时期的标准汉语一般称为早期中古汉语(Early Middle Chinese),因此切韵拟音J(Qieyun Reconstruction J)实际上就是早期中古汉语的拟音。J为拟音的版本号,代表2020年,来自unt的字母纪年法(Alphabetic Year Numbering)。
“废话少说,放码过来”(Talk is cheap. Show me the code)。切韵拟音J一改以往中古汉语拟音以音值和证据为导向的方式,而是以音系和工程为导向,“先码后文”地实现切韵拟音的流水线生产。文章分成两篇先后发布:
- 音系规则和代码实现
- 语音描写和拟音说明
切韵拟音J已在《切韵》音系自动推导器中上线,可选择“unt切韻擬音J”后点击“加載”使用。特别感谢 思無邪SyiMyuZya 和 三日月 綾香 的帮助支持。
目录
音系规则和代码实现
因为音位、区别性特征(distinctive feature)、音系规则(phonological rule)等已在推导方案代码中用 /** ... */
式注释写出,所以下面直接摘录推导方案完整代码,但是把这些注释打开到正文中以便阅读。想阅读音系部分的人直接忽略下文代码部分,只看正文和注释部分即可。原始代码见unt_j.js。
const is = (x) => 音韻地位.屬於(x.replace(/ /g, ''));
下面语音学术语对应的音韵学术语将用〈全角尖括号〉在语音学术语后注明。代码中的流程控制开关用绿框表明。音系规则代号用紫底表明。
一、流程控制开关
音韵地位对应音位开关:
开关 | 默认 | 说明 |
---|---|---|
肴豪韵韵核归为低元音 | 关 | 关闭:e͇w əw(实现为 œ͇w ʌw),打开:a͇w aw |
音系规则开关:
开关 | 默认 | 说明 |
---|---|---|
祭泰夬废韵尾推导为ɹ | 开 | 4关闭:-j,打开:-ɹ |
要推导松元音 | 开 | 5普通用户请保持打开,否则后面一些推导可能出错 |
要推导二合元音 | 开 | 6关闭:iə ɨə ia ɨa,打开:iɛ ɨɜ iæ ɨɐ |
要推导a | 开 | 7关闭:a,打开:a ɑ |
庄组臻摄开口推导为ɹ̩ | 开 | 9关闭:in,打开:ɹ̩n。不包括合口“率”小韵 |
豪覃韵韵核推导为ʌ | 开 | 10关闭:əw əm,打开:ʌw ʌm |
肴凡韵韵核推导为œ | 开 | 11关闭:e͇w βəm,打开:œ͇w βœm |
精三寅合口介音推导为ɥ | 关 | 12关闭:sʷɹ-,打开:sʷɥ-。关闭 |
蒸幽韵合口增生ɹ滑音 | 开 | 13“冰”,关闭:pîŋ,打开:pɹîŋ |
云母推导为ɹ | 开 | 14关闭:ɣɹ- ɣj̈-,打开:ɹ-。不论三 B 还是三 C |
见系非三推导为软腭后音 | 开 | 15包含匣母 |
晓母非三推导为软腭后音 | 开 | 16按常理,需要见系非三推导为软腭后音打开才能打开 |
通江宕摄推导为软腭后音 | 开 | 17如果要推导a没有打开,那么不推导宕摄韵尾 |
侯韵裂化为ɘu | 开 | 18关闭:u,打开:ɘu |
精组非后高元音省略介音 | 开 | 21“踪”,关闭:tsɹʉ̂ɜɴ,打开:tsʉ̂ɜɴ |
后处理开关:
开关 | 默认 | 说明 |
---|---|---|
知组写成卷舌塞音 | 关 | 关闭:tɹ,打开:二等 ʈ、三等 ʈɹ |
中元音写成半低元音 | 关 | 关闭:e o,打开:ɛ ɔ。不转换ə |
ɑ写成a | 开 | |
半元音介音写成元音 | 关 | |
半元音韵尾写成元音 | 关 | |
二等元音写成r音钩 | 关 | |
二等元音写成双下横线 | 关 | 关闭:下等号a͇(U+0347 ),打开:双下横线a̳(U+0333 )。一些字体(如Times New Roman、Arial)把这两个附加符号弄反了,为了显示的效果要打开。只在二等元音写成r音钩关闭时有效 |
声调开关:
开关 | 默认 | 说明 |
---|---|---|
声调分阴阳 | 开 | |
声调写成五度标记 | 关 | |
声调附加符号写在音节前 | 关 | 只在声调写成五度标记关闭时有效 |
二、音节结构
切韵拟音J的音节结构是CʷGVCᵀ。
Cʷ:辅音或唇化辅音,作为声母(initial)
G:滑音(glide),作为介音(medial)
V:单元音或二合元音,作为韵核(nucleus)。成音节辅音[ɹ̩]也可以作韵核〈臻韵〉
C:辅音,作为韵尾(coda)。韵核和韵尾加在一起叫作韵基(rime)
ᵀ:声调(tone)
介音和韵尾可有可无,声母、韵核、声调是必须出现的。
三、音韵地位对应音位(及其代码实现)和区别性特征
1. 辅音的特征
发声态和调音方式:
[±voi] | 带声(voice) |
[±sg] | 展声门(spread glottis),即辅音送气。注意 |
[±son] | 响音(sonorant)性,包括鼻音和近音(本文的响音不包含元音)。相反的 |
[±stop] | 塞音性,包括鼻塞音(即鼻音)和口塞音(即爆发音和塞擦音)。包含鼻音的“塞音”严格来说应该叫 occlusive 而非 stop,本文从简直接用 |
[±fric] | 擦音(fricative)性。本文将塞擦音也算入 |
调音部位:
[LAB] | 唇(labial) | |
[±rnd] | 圆唇(round),包括唇化辅音和圆唇元音 | |
[COR] | 舌冠(coronal),即锐音(acute)。本文为了简便将硬腭辅音也算入舌冠音。本文从简仍然使用“锐音、钝音”的叫法,但不用 | |
[±ant] | 前部(anterior)。前部锐音包括齿–龈、龈,后部锐音包括龈后、卷舌、龈–腭等 | |
[±r] | r色彩 | |
[DOR] | 舌面(dorsal) | |
[±high] | 高,对辅音而言 |
2. 音韵地位对应辅音音位
详见下面代码实现。
// 函数:将声母的音韵地位转换为音位,不含开合信息
// 介音音位和条件变体也在下面列出,以说明其区别性特征,尽管在代码中用不到
function getInitialWithoutRounding() {
return {
// 不送气 送气 浊阻音 浊响音
// 清阻音 清阻音
//〈全清〉 〈次清〉 〈全浊〉 〈次浊〉
// −voi −voi +voi +voi
// −sg +sg −sg −sg
// −son −son −son +son
幫: 'p', 滂: 'pʰ', 並: 'b', 明: 'm', // +stop, −fric; LAB 双唇塞音 〈帮组/唇音〉
帮三C介音: 'β', // −stop, −fric; LAB 双唇近音
端: 't', 透: 'tʰ', 定: 'd', 泥: 'n', // +stop, −fric; COR, +ant 齿龈塞音 〈端组/舌头音〉
精: 'ts', 清: 'tsʰ', 從: 'dz', // +stop, +fric; COR, +ant 齿龈塞擦音〈精组/齿头音〉
心: 's', 邪: 'z', // −stop, +fric; COR, +ant 齿龈擦音 〈精组/齿头音〉
來: 'l', // −stop, −fric; COR, +ant 齿龈近音 〈来母/半舌音〉
知: 'tɹ', 徹: 'tɹʰ', 澄: 'dɹ', 孃: 'nɹ', // +stop, −fric; COR, −ant, +r 卷舌塞音 〈知组/舌上音〉
莊: 'tʂ', 初: 'tʂʰ', 崇: 'dʐ', // +stop, +fric; COR, −ant, +r 卷舌塞擦音〈庄组/正齿音〉
生: 'ʂ', 俟: 'ʐ', // −stop, +fric; COR, −ant, +r 卷舌擦音 〈庄组/正齿音〉
钝三B介音: 'ɹ', // −stop, −fric; COR, −ant, +r 龈后近音
日: 'ɲ', // +stop, −fric; COR, −ant, −r 龈腭塞音 〈日母/半齿音〉
章: 'tɕ', 昌: 'tɕʰ', 常: 'dʑ', // +stop, +fric; COR, −ant, −r 龈腭塞擦音〈章组/正齿音〉
書: 'ɕ', 船: 'ʑ', // −stop, +fric; COR, −ant, −r 龈腭擦音 〈章组/正齿音〉
以: 'j', // −stop, −fric; COR, −ant, −r 硬腭近音 〈以母/喉音〉
見: 'k', 溪: 'kʰ', 羣: 'ɡ', 疑: 'ŋ', // +stop, −fric; DOR (+high) 软腭前塞音〈见组/牙音〉
匣: 'ɣ', 云: 'ɣ', // −stop, +fric; DOR (+high) 软腭前擦音〈影组/喉音〉
见三C介音: 'j̈', // −stop, −fric; DOR (+high) 软腭前近音
見1: 'q', 溪1: 'qʰ', 疑1: 'ɴ', // +stop, −fric; DOR (−high) 软腭后塞音【带1的是非三等变体】
曉1: 'χ', 匣1: 'ʁ', // −stop, +fric; DOR (−high) 软腭后擦音
影: 'ʔ', // +stop, −fric 喉塞音 〈影组/喉音〉
曉: 'h', // −stop, +fric 喉擦音 〈影组/喉音〉
}[音韻地位.母];
}
const is全清 = is('幫端精心知莊生章書見影曉母'); // [−voi, −sg, −son]
const is次清 = is('滂透清 徹初 昌 溪 母'); // [−voi, +sg, −son]
const is全浊 = is('並定從邪澄崇俟常船羣 匣母'); // [+voi, −sg, −son]
const is次浊 = is('明泥來 孃 日以疑云 母'); // [+voi, −sg, +son]
const is清 = is全清 || is次清;
// 云母已按推导后的结果 [ɹ] 算入次浊
const is锐前 = is('端精組 或 來母 一二四等'); // [COR, +ant]
const is锐后 = is('知莊章組 或 日以母'); // [COR, −ant]
const is锐 = is锐前 || is锐后 || is('來母'); // [COR]
// 来母按推导后只有非三等 [l] 算入前部锐音,但来母三等 [lɹ] 不算前部也不算后部
// 函数:将声母的音韵地位转换为音位,包含开合信息
function getInitial() {
let result = getInitialWithoutRounding();
// 音韵学术语开合对应 [±rnd]。如果主要调音部位就是 [LAB]〈帮组〉,那么本文一律视为 [−rnd]
// 没有开合对立的韵母一般视为开口,但虞韵本文视为鱼韵对应的合口;平行地,钟韵也视为合口
// 𠑆𦑣䎎小韵算合口
if (is('合口 或 虞鍾韻 或 知組 嚴凡韻') && !is('幫組')) { // [+rnd]
result += 'ʷ';
result = result.replace('ʰʷ', 'ʷʰ');
} // else [−rnd]
return result;
}
// 函数:将软腭前音转换为软腭后音
function velarToUvular(consonant) {
switch (consonant[0]) {
case 'k': return 'q' + consonant.substring(1);
case 'ɡ': return 'ɢ' + consonant.substring(1);
case 'ŋ': return 'ɴ' + consonant.substring(1);
case 'ɣ': return 'ʁ' + consonant.substring(1);
}
return consonant;
}
// 函数:将知组转换为卷舌塞音
function retroflexToStop(consonant) {
switch (consonant.substring(0, 2)) {
case 'tɹ': return 'ʈ' + consonant.substring(2);
case 'dɹ': return 'ɖ' + consonant.substring(2);
case 'nɹ': return 'ɳ' + consonant.substring(2);
}
return consonant;
}
// 函数:将介音的音韵地位转换为音位,不含开合信息
function getGlide() {
if (is('云母 灰韻')) return 'ɹ'; // “倄”小韵
// 一二四等无介音
if (!is('三等')) return '';
// 锐音声母三等介音一律用 /ɹ/
if (is锐) return 'ɹ';
// 钝音声母分三 A、B、C
if (is('重紐B類 或 庚臻韻')) return 'ɹ';
if ('抑𡊁烋'.includes(字頭)) return 'ɹ'; // 蒸韵“抑𡊁”二字、幽韵“烋”字归三 B
if (is('云母 支脂祭眞臻仙宵麻庚清蒸幽侵鹽韻')) return 'ɹ'; // 云母前元音韵归三 B
if (is('重紐A類 或 麻蒸清幽韻')) return 'j'; // 三 A
return 'j̈'; // 三 C
}
// 函数:将韵尾的音韵地位转换为音位
function getCoda() {
if (is('通江宕梗曾攝')) return is('入聲') ? 'k' : 'ŋ';
if (is('深咸攝')) return is('入聲') ? 'p' : 'm';
if (is('臻山攝')) return is('入聲') ? 't' : 'n';
if (is('佳韻')) return ''; // 从蟹摄中排除无韵尾的佳韵
if (is('微韻 或 蟹攝')) return 'j';
if (is('幽韻 或 效攝')) return 'w';
return '';
}
3. 元音的特征
[±high] | 高 |
[±low] | 低 |
[±front] | 前 |
[±back] | 后 |
[±rnd] | 圆唇(round) |
[±tense] | 紧。三子韵及其对应的三寅韵是松元音,三丑韵及其对应的三寅韵是紧元音,非三等韵都是紧元音 |
[±divII] | 二等(division-II)。本文不指定它的具体语音实现 |
列表如下。[ʉ] 是音位变体,也加入下表
4. 音韵地位对应元音音位
详见下面代码实现。
// 函数:将韵核的音韵地位转换为音位
function getNucleus() {
// 松元音
// 韵尾: m j n w
if (is('侵 微 眞臻欣文 韻')) return 'ɪ'; // +high, −tense
if (is('鹽嚴凡祭廢仙 元 宵韻')) return 'ɜ'; // −high, −tense
// 紧元音
if (選項.肴豪韵韵核归为低元音) {
if (is('肴韻')) return 'a͇';
if (is('豪韻')) return 'a';
}
// 脂韵、尤韵的韵基也可分别视为 /ɪj/、/ɪw/,本文从简直接视为紧元音 /i/、/u/
// 韵尾: ŋ m j n w
if (is('脂蒸 幽韻')) return 'i'; // +high, −low, +front, −back, −rnd, +tense
if (is('之 韻')) return 'ɨ'; // +high, −low, −front, −back, −rnd, +tense
if (is('尤東 侯韻')) return 'u'; // +high, −low, −front, +back, +rnd, +tense
if (is('佳耕咸皆山肴韻')) return 'e͇'; // −high, −low, +divII, −rnd, +tense
if (is(' 江 韻')) return 'œ͇'; // −high, −low, +divII, +rnd, +tense
if (is(' 青添齊先蕭韻')) return 'e'; // −high, −low, +front, −back, −rnd, +tense
if (is(' 登覃咍痕豪韻')) return 'ə'; // −high, −low, +front, −back, −rnd, +tense
if (is('模冬 灰魂 韻')) return 'o'; // −high, −low, +front, −back, −rnd, +tense
if (is('麻庚銜夬刪 韻 二等')) return 'a͇';
// −high, +low, +divII, −rnd, +tense
if (is('麻庚 韻 三等') ||
is('歌唐談泰寒 韻')) return 'a'; // −high, +low, −front, −back, −rnd, +tense
// 二合元音
if (is('支韻')) return 'iə'; // +front, −back, −rnd, +tense
if (is('魚虞鍾韻')) return 'ɨə'; // −front, −back, −rnd, +tense
if (is('清韻')) return 'ia'; // +front, −back, −rnd, +tense
if (is('陽韻')) return 'ɨa'; // +front, −back, −rnd, +tense
throw new Error('无元音规则');
}
// 函数:将半元音转换为元音
function semivowelToVowel(consonant) {
switch (consonant) {
case 'j': return 'i';
case 'ɥ': return 'y';
case 'j̈': return 'ɨ';
case 'ɥ̈': return 'ʉ';
case 'w': return 'u';
}
return consonant;
}
5. 声调
本文从简,声调无视音系层级范式,直接转换为最终形式。
声调写成五度标记、声调分阴阳、声调附加符号写在音节前 也在这里应用。详见下面代码实现。
// 函数:将声调的音韵地位转换为语音
function getTone() {
if (選項.声调写成五度标记) {
if (選項.声调分阴阳) {
if (is('平聲')) return is清 ? '˦˧' : '˨˩';
if (is('上聲')) return !is全浊 ? '˦˥' : '˨˧';
if (is('去聲')) return is清 ? '˥˦˥' : '˧˨˧';
if (is('入聲')) return !is全浊 ? '˥' : '˨˩';
} else {
if (is('平聲')) return '˧˩';
if (is('上聲')) return '˧˥';
if (is('去聲')) return '˦˨˦';
if (is('入聲')) return '˧';
}
} else {
if (選項.声调分阴阳) {
if (is('平聲')) return is清 ? '̂' : '̏';
if (is('上聲')) return !is全浊 ? '̋' : '̌';
if (is('去聲')) return is清 ? '᷇' : '᷅';
if (is('入聲')) return !is全浊 ? '́' : '̀';
} else {
if (is('平聲')) return 選項.声调附加符号写在音节前 ? 'ˋ' : '̀'; // 写在音节前时直接用独立的附加符号
if (is('上聲')) return 選項.声调附加符号写在音节前 ? 'ˊ' : '́';
if (is('去聲')) return 選項.声调附加符号写在音节前 ? 'ˉ' : '̄';
if (is('入聲')) return '';
}
}
throw new Error('无声调规则');
}
四、音系规则(及其代码实现)
// 获取音节的各部分
let initial = getInitial();
let glide = getGlide();
let nucleus = getNucleus();
let coda = getCoda();
let tone = getTone();
1 介音在后部锐音后被声母吸收而删除
/**
G -> ∅ / [COR, −ant]__
*/
if (is('知莊章組 或 日以母')) glide = '';
2 舌面介音被唇音或唇化声母同化〈帮组或合口三 A、C〉
/**
j -> ɥ / [+rnd]__
j̈ -> ɥ̈ / [+rnd]__
β / [LAB, −rnd]__
*/
if (initial.includes('ʷ')) {
glide = glide.replace('j', 'ɥ');
} else if (is('幫組')) {
if (glide == 'j̈') glide = 'β';
}
3 唇化的声母j实现为ɥ〈以母合口〉
/**
jʷ -> ɥ
*/
if (initial == 'jʷ') initial = 'ɥ';
4 j韵尾在低元音和中松元音后〈祭泰夬废〉实现为 ɹ
/**
j -> ɹ / {[+low], [−high, −tense]}__
*/
if (選項.祭泰夬废韵尾推导为ɹ && is('去聲')) {
if (nucleus.includes('a') || nucleus == 'ɜ') {
if (coda == 'j') coda = 'ɹ';
}
}
5 松元音的前后被前接辅音的锐钝同化
/**
ɪ -> i / [COR]__
ɨ / 其他环境
ɜ -> e / [COR]__
ə / 其他环境
*/
if (選項.要推导松元音) {
if ([...'ɹjɥ'].includes(glide) || is锐) { // 不包含 glide 为零的情况,所以用 [...'ɹjɥ']
if (nucleus == 'ɪ') nucleus = 'i';
if (nucleus == 'ɜ') nucleus = 'e';
} else {
if (nucleus == 'ɪ') nucleus = 'ɨ';
if (nucleus == 'ɜ') nucleus = 'ə';
}
}
6 二合元音的后滑音(off-glide)部分被元音的前后同化
/**
ə -> ɛ / i__
-> ɜ / ɨ__
a -> æ / i__
-> ɐ / ɨ__
*/
if (選項.要推导二合元音) {
if (nucleus == 'iə') nucleus = 'iɛ';
if (nucleus == 'ɨə') nucleus = 'ɨɜ';
if (nucleus == 'ia') nucleus = 'iæ';
if (nucleus == 'ɨa') nucleus = 'ɨɐ';
}
7 一等韵的韵核
三等韵的韵核
/**
a -> a / {[COR, +ant, −rnd]G, [COR, −ant]}__
-> ɑ / 其他环境
*/
if (選項.要推导a && nucleus == 'a') {
nucleus = 'ɑ';
if (is锐 && glide && !initial.includes('ʷ') || is锐后 || !is锐 && [...'ɹjɥ'].includes(glide)) {
// 音系规则本来不限制韵尾,但章组谈韵有“㶒譫”两小韵,需要归到 ɑ,所以在这里过滤
if ('ŋk'.includes(coda)) nucleus = 'a'; // 注意 'ŋk'.includes(coda) 包含的是 ŋ、k 和零韵尾这 3 种
}
}
8 央高元音被唇音或唇化声母同化(包括二合元音ɨɜ -> ʉɜ〈虞钟阳韵〉)
/**
ɨ -> ʉ / [LAB]__
*/
if (initial.includes('ʷ') || initial == 'ɥ' || glide == 'β') {
nucleus = nucleus.replace('ɨ', 'ʉ');
}
9 i在卷舌咝音和龈韵尾之间〈庄组真臻欣韵开口〉舌冠化为ɹ̩
/**
i -> ɹ̩ / [COR, −ant, +r, +fric, −rnd]__[COR]
*/
if (選項.庄组臻摄开口推导为ɹ̩ && is('莊組') && !initial.includes('ʷ') && [...'nt'].includes(coda)) {
if (nucleus == 'i') nucleus = 'ɹ̩';
}
10 零介音、唇音或唇化韵尾前的ə〈豪覃韵〉实现为ʌ
/**
ə -> ʌ / 非G__[LAB]
*/
if (選項.豪覃韵韵核推导为ʌ && !glide && [...'mpw'].includes(coda)) {
if (nucleus == 'ə') nucleus = 'ʌ';
}
11 e͇w〈肴韵〉、βəm〈凡韵〉的韵核实现为圆唇元音
/**
e͇ -> œ͇ / __w
{e, ə} -> œ / [LAB]G__m
*/
// 先转换𠑆𦑣䎎小韵,它们属于凡韵
if (is锐 && initial.includes('ʷ') && [...'mp'].includes(coda)) {
if (nucleus == 'e') nucleus = 'ə';
}
if (選項.肴凡韵韵核推导为œ) {
if (nucleus == 'e͇' && coda == 'w') nucleus = 'œ͇';
if (nucleus == 'ə' && (initial.includes('ʷ') || is('幫組')) && [...'mp'].includes(coda)) nucleus = 'œ';
}
12 齿龈阻音〈端精组〉后的介音接前元音时被同化(圆唇时可选)
/**
G -> j / [COR, +ant, −son, −rnd]__[+front]
ɥ / [COR, +ant, −son, +rnd]__[+front]
*/
if (is锐前 && 'ieæa'.includes(nucleus[0])) {
if (!initial.includes('ʷ')) {
if (glide) glide = 'j';
} else if (選項.精三寅合口介音推导为ɥ) {
if (glide) glide = 'ɥ';
}
}
13 i在唇音或唇化声母和软腭韵尾之间〈蒸幽韵〉增生ɹ滑音
/**
G -> ɹ / [LAB]__i[DOR]
*/
if (選項.蒸幽韵合口增生ɹ滑音 && (initial.includes('ʷ') || is('幫組')) && nucleus == 'i' && [...'ŋkw'].includes(coda)) {
glide = 'ɹ';
}
14 接介音的ɣ〈云母〉实现为ɹ
/**
ɣG -> ɹ
ɣʷG -> ɹʷ
*/
if (選項.云母推导为ɹ && initial.includes('ɣ') && glide) {
initial = initial.replace('ɣ', 'ɹ'); // ɹ 视为声母
glide = '';
}
15 软腭音直接后接元音时〈见系和匣母非三等〉实现为软腭后音
/**
[DOR] -> [−high] / __V
*/
if (選項.见系非三推导为软腭后音 && !glide) {
initial = velarToUvular(initial);
}
16 h直接后接元音时〈晓母非三等〉实现为软腭后音
/**
h -> χ / __V
*/
if (選項.晓母非三推导为软腭后音 && !glide) {
initial = initial.replace('h', 'χ');
}
17 圆唇元音和低非前元音后的软腭韵尾〈通江宕摄〉实现为软腭后音
/**
[DOR] -> [+back] / {[+round], [+low, −front]}__
*/
if (選項.通江宕摄推导为软腭后音) {
if ('ʉuoœɑ'.includes(nucleus[0]) || (nucleus.includes('ɐ') && 選項.要推导a)) {
coda = velarToUvular(coda);
}
}
18 u在钝音声母和无介音齿龈声母后〈侯韵〉裂化
/**
u -> u / [COR, −ant]__#
ɘu / 其他__#
*/
if (選項.侯韵裂化为ɘu && nucleus == 'u' && !coda) {
nucleus = 'ɘu';
if (is锐后 || is('云母') || glide) nucleus = 'u';
}
19 高元音 + 半元音韵尾〈微幽韵〉实现为二合元音
/**
j -> i / [+high]__
w -> u / [+high]__
*/
if ('iɨʉuɪ'.includes(nucleus)) {
if (coda == 'j') coda = 'i';
if (coda == 'w') coda = 'u';
}
20 移除与韵核同部位介音
/**
[DOR, +son] -> ∅ / C__[+high, −back]
*/
if ('iɨʉ'.includes(nucleus[0])) {
if (['j', 'ɥ', 'j̈', 'ɥ̈'].includes(glide)) glide = '';
}
21 齿龈音〈端精组〉接非后高元音时省略介音
/**
{j, ɥ} -> ∅ / [COR, +ant, −son]__[+high, +front, −back]
G -> ∅ / [COR, +ant, −son]__[+high, −front, −back]
*/
if (選項.精组非后高元音省略介音 && is锐前) {
if (nucleus[0] == 'i' && [...'jɥ'].includes(glide)) glide = '';
if ('ɨʉ'.includes(nucleus[0])) glide = '';
}
五、后处理的代码实现
if (選項.知组写成卷舌塞音 && is('知組 或 來母')) {
initial = retroflexToStop(initial);
if (is('知組 三等')) glide = 'ɹ'; // 还原出三等介音
if ('iɨʉ'.includes(nucleus[0])) glide = ''; // 再次应用音系规则 (21)。平行地,也要应用给来母
}
if (選項.中元音写成半低元音) {
nucleus = nucleus.replace('e', 'ɛ');
nucleus = nucleus.replace('o', 'ɔ');
}
if (選項.ɑ写成a) {
nucleus = nucleus.replace('ɑ', 'a');
}
if (選項.半元音介音写成元音) {
glide = semivowelToVowel(glide);
}
if (選項.半元音韵尾写成元音) {
coda = semivowelToVowel(coda);
}
if (is('二等')) {
if (選項.二等元音写成r音钩) {
nucleus = nucleus.replace('͇', '˞');
} else if (選項.二等元音写成双下横线) {
nucleus = nucleus.replace('͇', '̳');
}
}
if (選項.声调写成五度标记) return initial + glide + nucleus + coda + tone;
if (選項.声调附加符号写在音节前) {
if (選項.声调分阴阳) return '\xA0' + tone + initial + glide + nucleus + coda; // 需要用无中断空格(U+00A0),否则位于行首的空格可能被浏览器忽略
return tone + initial + glide + nucleus + coda;
}
// 声调附加符号写在韵核主体上
if (nucleus.includes('͇') || nucleus.includes('̳') || nucleus == 'ɘu' || nucleus == 'ɹ̩') return initial + glide + nucleus + tone + coda;
return initial + glide + nucleus[0] + tone + nucleus.substring(1) + coda;
知乎专栏·凭风苑中的本章:切韵拟音J:音系规则和代码实现 – 知乎
语音描写
一、辅音
双唇 | 齿龈 | 卷舌 | 龈腭 | 软腭前 | 软腭后 | 喉 | |||||
---|---|---|---|---|---|---|---|---|---|---|---|
爆发音 | p | t | tɹ | k | q | ʔ | |||||
pʰ | tʰ | tɹʰ | kʰ | qʰ | |||||||
b | d | dɹ | ɡ | ||||||||
塞擦音 | ts | tʂ | tɕ | ||||||||
tsʰ | tʂʰ | tɕʰ | |||||||||
dz | dʐ | dʑ | |||||||||
擦音 | s | ʂ | ɕ | χ | h | ||||||
z | ʐ | ʑ | ʁ | ||||||||
鼻音 | m | n | nɹ | ɲ | ŋ | ɴ | |||||
近音 | (β) | l | ɹ | j ɥ | (j̈ ɥ̈) | (w) |
除双唇音和w外,所有辅音都有对应的唇化辅音〈合口〉(加ʷ;特别地,j、j̈对应的唇化辅音是ɥ、ɥ̈(2~3))。除ɥ、ɥ̈外,唇化辅音未列入表中。β、j̈、ɥ̈只能作介音,w只能作韵尾,在表格中加括号。
音节首辅音
首先把锐音(钝音、锐音是什么?)的被动调音部位分布列成表,先一目了然再介绍:
齿–龈、龈 | 卷舌 | 龈后 | 龈–腭 | 硬腭 |
---|---|---|---|---|
t | tɹ | tɹ | ||
ts | tʂ | tɕ | tɕ | |
n | nɹ | nɹ | ɲ | ɲ |
(ɹ) | ɹ | j | ||
l | l | l |
齿龈〈端精组〉指齿–龈音(denti-alveolar)或龈音(alveolar),梦(YM1-J8.10-1,见本文附录)表明齿龈音后无介音时倾向于舌尖音(apical,s̺、z̺等),有介音时倾向于舌叶音(laminal,s̻、z̻等)。
龈腭指龈后音(postalveolar)、龈–腭音(alveolo-palatal)或硬腭音。tɕ、tɕʰ、dʑ、ɕ、ʑ〈章组〉是龈–腭音或龈后音。ɲ〈日母〉是硬腭音或龈–腭音。j、ɥ〈以母、唇牙喉三A介音〉是硬腭音。r音(rhotic)ɹ〈云母、唇牙喉三B介音〉类似英语的r,既可以是龈后的,也可以是舌面隆起的(bunched-r,扩展国际音标写作
tɹ、tɹʰ、dɹ、nɹ〈知组〉是卷舌音(retroflex)或龈后音,它们是爆发音和鼻音,或非咝塞擦音和擦除阻鼻音;也可以写成“ʈ、ʈʰ、ɖ、ɳ”(知组写成卷舌塞音)。和ɹ一样,它们可能通过舌面隆起而非卷起舌尖来实现r色彩(“tɹ”中的“ɹ”正好可以暗示这一点,所以本文不用“ʈ、ʈʰ、ɖ、ɳ”的写法),但不是真正的硬腭音(所以本文排除了这个回答提出的“c˞、c˞ʰ、ɟ˞、ɲ˞”写法)。tʂ、tʂʰ、dʐ、ʂ、ʐ〈庄组〉是卷舌音。l〈来母〉是齿–龈音、龈音、龈后音或卷舌音。
软腭分为软腭前音(介于软腭和硬腭之间)和软腭后音(介于软腭和小舌之间),后者本文用小舌辅音表示。二者没有对立(15~17)。软腭后音ɴ、q作韵尾时有一定的唇化。h也可以是软腭音
介音处可以出现j/ɥ、ɹ、j̈/β/ɥ̈。β是双唇近音
音节尾辅音
韵尾处可以出现j/ɹ、w、m/p、n/t、ŋ/k、ɴ/q,其中鼻音和爆发音都和现代标准汉语一样是无闻除阻(no audible release,m̚、p̚等)的。ɹ作韵尾时可以是
成音节辅音
ɹ̩,带r色彩的龈后音。例字:臻tʂɹ̩̂n、栉tʂɹ̩́t。仅出现在非唇化卷舌咝音声母〈庄组开口〉和齿龈韵尾〈臻摄〉之间,跟i互补(9)。
辅音例字
帮pâɴ | 端tʷân | 知tɹîɛ | 居kɨ̂ | 见qe᷇n | 影ʔɹa̋ŋ | |
滂pʰâɴ | 透tʰɘu᷇ | 彻tɹʰét | 去kʰɨ̋ɜ | 溪qʰêj | ||
並běŋ | 定de᷅ŋ | 澄dɹȁ͇ŋ | 群ɡʷʉ̏n | |||
精tsîæŋ | 庄tʂâɴ | 章tɕɨ̂ɐɴ | ||||
清tsʰîæŋ | 初tʂʰɨ̂ɜ | 昌tɕʰɨ̂ɐɴ | ||||
从dzʷʉ̏ɜɴ | 崇dʐȕɴ | 常dʑɨ̏ɐɴ | ||||
心sîm | 生ʂâ͇ŋ | 书ɕɨ̂ɜ | 晓χe̋w | 许hɨ̋ɜ | ||
邪zjȁ | 俟ʐɨ̌ | 船ʑʷȅn | 匣ʁà͇p | |||
明mɹȁŋ | 泥nȅj | 娘nɹȁɴ | 日ɲít | 疑ŋɨ̏ | 五ɴő | |
非pβʉ̂i | 来lə̏j | 云ɹʷʉ̏n | ||||
以jɨ̋ | 建kj̈ə᷇n | |||||
匀ɥȉn | 阙kʷʰɥ̈ə́t | 幺ʔêw |
单元格为蓝色的是不能作声母的 β、j̈、ɥ̈、w。例字为斜体的是非音韵学术语的例字。
二、元音
二等元音 | 单元音 | 二合元音 | ||||||
---|---|---|---|---|---|---|---|---|
不圆 | 圆 | 前 | 央 | 后 | 前 | 央 | 后 | |
高 | i | ɨ (ʉ) | u | iu | ɨi (ʉi) | (ɘu) | ||
中 | e͇ | œ͇ | e | ə (œ) | (ʌ) o | iɛ | ɨɜ (ʉɜ) | |
低 | a͇ | a | iæ | ɨɐ (ʉɐ) |
加括号的元音是变体:ʉ〈文韵、微合韵核〉是
二等(division-II)元音的具体音质需要进一步的实验语音学研究来回答,本文临时(ad hoc)且即兴(ad lib)地直接在元音下加“二”表示:e͇、a͇、œ͇*1 。二等音质可能是 r 化
i后接软腭音ŋ、k、w〈蒸幽韵〉时偏后,介于前和央之间。ɹi后接ŋ、k、w〈蒸幽韵〉和 m、p〈蒸幽韵〉时整体发成略圆唇、略带舌叶发音的、介于
e、o是中元音。œ是央元音。ʌw〈豪韵〉可以是
iɛ〈支韵〉、ɨɜ〈鱼韵〉、ʉɜ〈虞韵〉是前响二合元音(falling diphthong)[iɛ̯、ɨɜ̯、ʉɜ̯],后滑音ɛ、ɜ只表示运动方向,不一定实际达到。ɘu〈侯韵〉是后响二合元音(rising diphthong)[ɘ̯u]。其他二合元音的响度分布需要进一步的实验语音学研究来回答,但至少它们不是简单的介音 + 单元音或单元音 + 韵尾,宜整体分析为二合元音(19)。本文把iɛ、ɨɜ、ʉɜ分析为渐开二合元音(opening diphthong),但也可以分析为渐央二合元音(centering diphthong)/iə、ɨə、ʉə/(6)。类似地,iæ〈清韵〉、ɨɐ〈阳开〉、ʉɐ〈阳合〉也可以直接分析为
元音例字
组首的蓝色字是上一章中的元音音位。单元格为蓝色的是上面提到的变体。例字为楷体的是非音韵学术语的例字。省略声调标注。
三、声调
早期中古汉语的声调在时间上可分为相互独立的两个组分,用附加符号描述比用五度标记法(Chao tone letters)更合适:
平 ˋ | 上 ˊ | 去 ˉ | 入 | |
---|---|---|---|---|
阴 ˊ | 金 kɹîm | 草 tsʰʌ̋w | 蔚 ʔʷʉ᷇i | 雪 sʷɹét |
阳 ˋ | 茶 dɹȁ͇ | 杏 ʁǎ͇ŋ | 靛 de᷅n | 褐 ʁàt |
第一组分(阴ˊ、阳ˋ)是冗余的,因为它可由声母的清浊响阻决定:清音一定是ˊ〈阴〉,浊阻音〈全浊〉一定是ˋ〈阳〉,响音〈次浊〉可能是ˊ也可能是ˋ。在某些口音里,响音声母音节声调第一组分的高低取决于第二组分的高–非高。ˋ可能伴随弛声(slack voice),需要进一步的实验语音学研究。
第二组分可以是ˋ〈平声〉、ˊ〈上声〉、ˉ〈去声〉,也可以没有〈入声〉。ˊ是高调,并且结尾可能伴随喉部紧张;ˋ、ˉ是非高调但具体音高不明,而且因口音而异,需要进一步的实验语音学研究。当韵尾是塞音,声调的第二组分为零,可能是因为清音无法承载音高。
此外因为第一组分是冗余的,所以也可以只标第二组分(声调分阴阳):
平 | 上 | 去 | 入 | |
---|---|---|---|---|
例字 | 天 tʰèn | 子 tsɨ́ | 圣 ɕīæŋ | 哲 tɹet |
连读变调可能不存在,具体情况需要进一步的实验语音学研究来回答。
unt的发音
unt所读的各声调音高曲线如下:(录音于 2020.8.31)
基于 unt 的发音,可将附加符号翻译成五度标记法描述(声调写成五度标记)如下:
平 | 上 | 去 | 入 | |
---|---|---|---|---|
阴 | 金 kɹim˦˨ | 草 tsʰʌw˦˥ | 蔚 ʔʷʉi˦˧˦ | 雪 sʷɹet˥ |
阳 | 茶 dɹa͇˨˩ | 杏 ʁa͇ŋ˨˧ | 靛 den˧˨˧ | 褐 ʁat˨˩ |
四、音节配列
音节首(声母 + 介音)和韵基的搭配见下表,详细规则见下文:
知乎专栏·凭风苑中的本章:切韵拟音J:语音描写 – 知乎
拟音说明
一、从三C₁⁺ 韵到松元音
本章一律以平声赅入声。
1. 三等韵的分类
《切韵》音系音节分类的首要特征就是三等–非三等,今天我们知道了它们的差别在音节结构上——是否有滑音作介音。那么三等韵接下来要怎样划分呢?很多人只关心音值上的差异:三A、B韵的韵核是前元音,三C韵的韵核是非前元音。这种观察是肤浅的。一个更底层、更音系学的观察是,一部分三C韵具有特殊性:它们不和锐音声母相拼。这部分三C韵称作三C₁
三等韵的5条原则是:
- C₁
类 ⇔ 不能拼锐音声母*4 - A类或B类 ⇔ 有重纽
- A类 ⇔ 和钝音声母相拼的音节在韵图中列在四等
- A类 ⇔ 和唇音声母〈帮组〉相拼的音节在汉越音(越南语汉字音)中龈化(alveolarize,越南语的明母重纽
A类为什么会变成d?) - C₁
类或C₂ 类 ⇔ 所拼的帮组爆发音在后世擦化(spirantize)〈轻唇化〉
重纽的定义是:同一个三等韵下存在声母、开合、声调相同的两个音节的现象。现在我们知道这种对立是发生在介音上,并且将两类音节按照第3、4条规则分为A、B类。重纽现象只发生在钝音声母后,锐音声母后没有这种对立,不过上表中A、B类拼锐音都写成“+”。
特别地,侵韵和盐韵只在ʔ〈影母〉有A类(且和影母B类对立),其余钝音声母后只有B类(《广韵》侵韵溪母上声和盐韵群母平声、溪母上声有重出小韵,不可靠)。这个状况就像清末民国北京话ai韵只在零声母有齐齿呼(崖yái,为什么周杰伦与费玉清的《千里之外》中的「崖」同时出现了yái和yá两种读音?),其余声母后只有开口呼、合口呼。很好理解,这是因为没有声母时音节首对介音的承载能力更强。祭韵则事实上在所有声母后都没有重纽对立(《广韵》疑母去声有对立,不可靠)。表格中我们径直把侵、盐、祭韵放在A、B韵里。
根据第1、2条规则可列出如下拼合关系:
锐音 | 钝音 | |
---|---|---|
A类 | ± | + |
B类 | ∓ | + |
C₁ | − | + |
C₂ | + | + |
不仅A、B在锐音后是互补的,AB和C₁
在继续讨论三等韵的分类之前,我们需要先解决那些不合原则的韵。
清韵和庚三尽管韵目不同,但从互补关系上看是一对重纽,所以“有重纽”在表格中加括号;清韵是A类,庚三是B类。庚三虽然有锐音,但仅限卷舌咝音〈庄组〉后,而且是和庚二互补的,所以“拼锐音”在表格中加括号(同时,和清韵也是互补的,所以不违反锐音重纽)。臻韵和真韵、欣韵互补,是卷舌咝音〈庄组〉后韵核r化的变体,它可以是AB类也可以是C₂
之、鱼、欣、严不拼唇音声母,从互补关系上看分别是尤、虞、文、凡对应的“开口”韵,而且之、鱼的韵核是非前元音,指向C₂
2. 不合原则的三等韵:蒸韵和幽韵
蒸韵在《切韵》的常见传世增订本《广韵》中没有重纽对立,但在宋濂跋唐写本王仁昫《刊谬补缺切韵》(通称《王三》,故宫博物院藏)中是有的,影母入声有“忆”(扵力反)、“抑”(扵棘反*5 )两小韵对立。“抑”小韵在《广韵》中被并入“忆”小韵,于是没有重纽对立了。敦煌《毛诗音》残卷中的反切高度区分ABC类,也显示“忆”和“抑”不同类,说明《王三》的该重纽对立是可靠的。《王三》蒸韵只在影母有重纽,这和侵韵、盐韵的情形一样。
对于其他声母后蒸韵的归类,我们需要参考《毛诗音》。《毛诗音》蒸韵的分布情况如下:(《切韵》蒸职韵「忆抑」的重纽对立是否可靠?)
B | C | |
---|---|---|
帮组 | + | |
锐音(除庄组外) | + | |
锐音(庄组) | + | |
见影组开口 | + | + |
见影组合口 | + |
《毛诗音》见影组开口的对立除了影母入声“抑”(B)和“亿檍”(C)外,还有见母入声“棘”(B)和“亟”(C)。帮组后的蒸韵是B类,确实符合它后世不轻唇化、在汉越音中也不龈化的现象。但是,《毛诗音》的B–C重纽违反了第2条原则,本文不能接受。不过考虑到现代标准汉语ing的实际音值也变化多端,就好理解了:就算蒸韵见组开口真的是A类
从音系学的角度,我们可以认为“抑”小韵以外的所有蒸韵在底层都是A类,随即被ŋ后拉变成A̠类。在唇音和唇化声母后,A̠类的介音
幽韵同样在《广韵》中没有重纽对立,但在敦煌唐写本《切韵》残卷(Or.8210/S.2071,通称《切三》,大英图书馆藏)中有晓母平声“飍”(香幽反*6 )、“烋”*7 (许彪反)两小韵对立:
《王三》也一样有对立。“烋”小韵在《广韵》中被并入“飍”小韵,于是没有重纽对立了。根据《王三》可系联出帮组和“烋”小韵是B类,其他见影组A类。《毛诗音》反切尽管只有5字,但显示出相同情形(其中的“休”出自“無棄爾勞,以為王休”,美也,俗写作“烋”):
A | B | |
---|---|---|
帮组 | 缪 | |
见母 | 樛赳纠 | |
晓母 | 休 |
帮组后是B类、见影组后一般是A类,这个情形和蒸韵是一样的。或者说,幽韵本来就和蒸韵一样:韵核是i,韵尾是软腭音。帮组后幽韵是B类不仅使“彪”不轻唇化,r介音还很可能加速了“彪”的裂化,今韵核是低元音,就像“帅”ʂʷi᷇〈生母脂韵合口去声〉的裂化一样。韵图把幽韵统一列在四等,和尤韵合并,可能是后人失去重纽对立后的一种重分析。我们干脆和蒸韵一样算A̠、B̠类。
3. 不合原则的三等韵:麻三和戈三,幽韵和尤韵
麻三和戈三的状况和其他三等韵都不一样:
锐音 | 钝音 | |
---|---|---|
麻三 | + | − |
戈三 | − | + |
而且它们都不拼唇音声母,无法用后两条原则判断是AB还是C。不过我们知道戈韵韵核的实际音值是非前元音,所以它不是A、B类,仅此来看戈三像C₁
麻三和戈三在A、B、C的分类面前呈现一种无性别(agender)状态,在哪一类上都不显“性”,所以本文专门新增一类:麻三和戈三是C₀
锐音 | 钝音 | |
---|---|---|
三C₀⁺ | 无对立 | 无对立 |
三C₁⁺ | 无对立 | 有对立 |
三C₂⁺ | 有对立 | 有对立 |
0、1、2恰好有了新的含义:对立的级别(class)。于是三Cᵢ⁺
到了中古晚期,三C介音前移,C₀
幽韵虽然是AB类,但锐音却只有一个来母的“鏐蟉”小韵(另有“稵”子幽切、“犙”山幽切两小韵是切语讹误,本为子絲切、山函切,见《新撰字镜》),并且“鏐”字又收在尤韵。于是,幽韵和尤韵在锐音后实际上没有对立:
锐音 | 钝音 | |
---|---|---|
幽韵 | − | + |
尤韵 | + | + |
根据最开始的标准,以及从尤之“开合相配”的角度看,尤韵是C₂
4. 三等韵的分类da Capo*8
现在可以重画三等韵的分类表了。由于三Cᵢ⁺
这时,C₁⁺
这一格局和现代汉语太像了:
-∅ | -ng | -n | -w | -j | |
---|---|---|---|---|---|
高 | i ü ï u | ||||
中 | ie üe e uo | ing iong eng ong | in ün en un | iu ou | ei uei |
低 | ia a ua | iang ang uang | ian üan an uan | iao ao | ai uai |
现代汉语的是开音节韵核有三组韵核,闭音节韵核只有两组,开、闭音节韵核占据的元音空间不同(梦YM1-J7.1,见本文附录)。从韵辙(十三辙)看,开音节的前后元音不能通押(i不能押
5. 三等韵的介音
由上述讨论,本文指定钝音后的A、B、C三类都是不同的介音。以往有人根据如下互补关系而把A和C合并(因为都不是r音),或是把B和C合并(因为都是非前元音音色):
锐 | 央 | r | |
---|---|---|---|
A | + | − | − |
B | + | + | + |
C | − | + | − |
是没有必然道理的,正如我们不把现代汉语j组辅音并入g组、zh组、z组中的任何一者(尽管它们都和j组互补):
锐 | 央 | r | |
---|---|---|---|
j、q、x | + | − | − |
zh、ch、sh | + | + | + |
g、k、h | − | + | − |
我们完全可以把特征的方向翻转以使3种介音“变得”没有交集:
钝 | 前 | r | |
---|---|---|---|
A | − | + | − |
B | − | − | + |
C | + | − | − |
不承认第三种介音和不承认第三种性别一样是刻板、倒退的。
B类介音是r音,可能的选择有ɹ、ɻ、ɹj、j˞,本文直接写ɹ。不用ɻ的原因是它要更像
C类介音的痕迹最弱,本文拟作是和声母同部位的近音。对唇音来说,就是双唇近音
A类介音是j,无需讨论。它和以母是同一个音素。这3类介音的对立对母语者而言并不困难,例如黄雀飞(私人通信)指出
以上说的是钝音后的情况。卷舌和龈腭锐音后的三等介音理论上也是同部位的近音ɹ或j,但那些咝音〈庄组和章组〉已经是塞擦音了,它们不再多余带一个介音。日本汉字音也显示着这一点。这在汉语中也丝毫不奇怪,上海话的研究已经表明上海话的龈–腭音后没有介音,黄雀飞作为母语者也早就指出邵阳话龈–腭音后没有介音。认为
齿龈音〈精组〉后的介音不能省略,因为要和非三等字区分(如“速”súq和“肃”sɹúq)。尽管精组三等在韵图都列在四等,但根据日本汉字音和梦(YM1-J8.10-1,见本文附录)来看,精组三C₂
(精组后) | 三AB | 三C₂ |
---|---|---|
开口 | j | ɹ |
合口 | ɹʷ | ɹʷ |
“撮口呼”的特殊倾向我们再熟悉不过了,看现代标准汉语老派口音
细 | 洪 | |
---|---|---|
开 | jɛn | an |
合 | ɥan | wan |
一些不分“决、角”的冀鲁、中原官话
细 | 洪 | |
---|---|---|
开 | iə | (ɯ)ɤ |
合 | yɤ~yo | uɤ~uo |
(简言之,其
都呈现出这种齐齿呼独立,而撮口呼同开口呼、合口呼的状况——只不过这一语音事实经常被不负责任地无视。
6. 松紧元音
回到韵核。三C₁⁺
- 谴 /kʰjɜ̄n/ → [kʰje᷇n]
- 骞 /kʰɹɜ̀n/ → [kʰɹên]
- 建 /kj̈ɜ̄n/ → [kj̈ə᷇n]
如果声母是锐音,那么直接实现为前元音(这就是锐音不拼三C₁
- 箭 /tsjɜ̄n/ → [tsje᷇n]
- 战 /tɕɜ̄n/ → [tɕe᷇n]
- 展 /tɹɜ́n/ → [tɹe̋n]
三C₂⁺
脂、蒸、幽的韵核是i,尤、东的韵核是u,无需讨论。之韵是和三C介音同部位的ɨ。
7. 二合元音:支、鱼、虞、钟
支、鱼、虞、钟的韵核在早期中古汉语里是前响二合元音
正因为是二合元音,所以它们在锐音后不需要介音就能对立了。
至于这组元音是
8. 二合元音:清韵、阳韵
上面说到清韵和庚三是互补的,但清韵、阳韵在卷舌塞音〈知组〉后有对立,如“贞”(清韵)、“张”(阳韵)的对立。因为锐音后不分辨三等的几类介音,所以这个对立不能靠介音,只能靠韵核或韵尾。那么,“贞”、“张”的音位有几种可能的方案:
- /tɹɜŋ、tɹaŋ/
- /tɹiɛŋ、tɹaŋ/
- /tɹiæŋ、tɹaŋ/
- /tɹaŋ、tɹɑŋ/
- /tɹajŋ、tɹawŋ/
- /tɹaŋ、tɹaɴ/
首先观察到《切韵》清韵和庚韵是分开的,暗示着清韵更高,于是可以有方案1,/tɹɜŋ/(音节首是锐音,实现为
不妨先跳过清韵,看看阳韵和庚三要怎样处理。如果把庄组庚三移至庚二(因为互补,见上文),那么阳韵和庚三就互补了。假如把它们都处理成
[ɑŋ] / 锐音声母后
[aŋ] / 钝音声母 + 锐音介音后
[ɑŋ] / 钝音声母 + 钝音介音后
在锐音介音后实现为前元音,在锐音声母后却实现为后元音,这大有问题,说明阳韵和庚三不能处理成相同的韵核。阳韵的非前元音性必须是韵核自带的(或者按照上面方案5、6,是韵尾自带的),而不能靠介音;但同时,它的韵核又不能是独立的
清韵的方案3获胜。清韵和阳韵的韵核分别是
9. 轻唇化和知组塞擦化
(未完待续)
附录
梦(YM1-J7.1)
(7:40)想怎样用分子轨道图来画现代汉语元音:
梦(YM1-J8.10-1)
(6:18)在一个废墟般的园林中,我遇到一位friends(兽娘)*A 。我把她带到屋子里,然后她念,“松”(松树;三等)是
*1 用附加符号下等号(
U+0347
)代替。但注意一些字体(包括Times New Roman、Arial)把它和附加符号双下横线(U+0333
)弄反了。*2 见高本汉《北京话语音读本》(A Mandarin Phonetic Reader in the Pekinese Dialect),原文为瑞典方言字母(形近ᴓч̵)。显然,北京话“而”不可能是这个发音。
*3 A、B的命名提出于周法高《广韵重纽的研究》(《中央研究院历史语言研究所集刊》第十三本,1945),C的命名提出于周法高《古音中的三等韵兼论古音的写法》(《中央研究院历史语言研究所集刊》第十九本,1948),C₁、C₂
的命名提出于周法高《论上古音和切韵音》(香港中文大学《中国文化研究所学报》第3卷第2期,1970)。 *4 “⇔”的意思是等价。
*5 《王三》“抑”小韵切语漫漶不清,这里使用《切韵》增字本残页(Or.8210/S.6013,大英图书馆藏)、项元汴跋唐写本《刊谬补缺切韵》(通称《王二》,故宫博物院藏)和五代本《切韵》(P.2014,法国国家图书馆藏)的切语,它们的“抑”小韵都是独立的。孙愐《唐韵》残卷也分“忆”、“抑”,但“抑”小韵缺损。
*6 《广韵》原文为“飍,驚風。香幽切,又風幽切”。这个“風幽切”实际上是误搬了“驫”的音。《文选》左思《吴都赋》“驫𩣊飍矞”,六臣注音“驫,必由(反)”、“飍,香幽(反)”。
*7 《切三》作“𠇾”,《王三》《王二》作“休”。《王三》注“加‘火’,失”,可能是王仁昫认为《切韵》作“烋”是错的,去掉了“灬”。
*8 da capo是音乐术语,意思是从头再次演奏。
*A 动画《兽娘动物园》中的拟人化野生动物。
谢谢~L我可能不会出专文了,因为实在没有精力再去写它
嗯嗯,我知道了。
另外,问一下这个“未完待续”什么时候继续更新呐?
这篇就更不会更新了🤣
(其实我甚至想删除它,但算了)
求续。话说现在的这个切韵拟音允许使用utau朗读吗?
允许,但最好事先联系作者(也就是我)
催更