由Chi ZJ2提出的对模板:Eye color的编辑请求:
与{{Hair color}}作类似处理,便于给任意瞳色添加注释。
新代码和旧代码相比仅仅多出了一堆{{#var:eye2}}。要加的地方有点杂,直接全文替换吧。
| 新代码 |
|---|
<includeonly>{{split|str={{{1}}}|ptn=$|name=eye}}<!--用于切分瞳色与注释
-->{{#vardefine:预处理
|{{#switch:{{#var:eye1}}|异色|異色={{#var:eye1}}
|#default= {{#if:{{#switch: {{Str_rightc|{{#var:eye1}}|1}} <!-- 如果“瞳色”最右边1个字符合下表 -->
|瞳
|色
= true }}
|{{Str_crop|{{#var:eye1}}|1}} <!-- 那么切掉最后1个字 -->
|{{#var:eye1}} <!-- 否则不进行切除 -->
}}
}}
}}<!--
-->{{#vardefine:瞳色
|{{#if:{{#switch: {{Str_left|{{#var:预处理}}|1}} <!-- 如果“瞳色”最左边1个字符合下表 -->
|浅 |淺
|深
|亮
|暗
|浓 |濃
|淡
|黑
|灰
|银 |銀
|碧
|墨
|玫
|土
|水
|翠
|钴 |鈷
= true }}
|{{#ifeq:{{Str_len|{{#var:预处理}}}}
|1 <!-- 且“瞳色”大于一个字(避免裁剪后一个字都不剩) -->
|{{#var:预处理}}
|{{Str_crop_left|{{#var:预处理}}|1}} <!-- 那么切掉开头1个字 -->
}}
|{{#var:预处理}} <!-- 否则不进行切除 -->
}}
}}<!--
-->{{#switch: {{#var:瞳色}}
| 粉
| 粉红 | 粉紅
| 洋紅 | 洋红
| 桃
| 桃紅 | 桃红 = {{ArticleCategory|粉瞳}}[[粉瞳|{{#var:预处理}}瞳]]{{#var:eye2}}<!-- 使用 #var:预处理 的原因是保留可能带有的前缀 -->
| 绯 | 緋
| 唐红 | 唐紅
| 赤
| 橙红 | 橙紅
| 紅 | 红 = {{ArticleCategory|红瞳}}[[红瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 紫
| 靛
| 蓝紫 | 藍紫 | 紫蓝 | 紫藍
| 雪青
| 紫紅 | 紫红 = {{ArticleCategory|紫瞳}}[[紫瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 青 | 靑
| 碧
| 藍 | 蓝
| 青蓝 | 青藍
| 蓝绿 | 藍綠
| 灰蓝 | 灰藍 | 蓝灰 | 藍灰
| 宝石蓝 | 寶石藍
| 天空蓝 | 天空藍
| 天蓝 | 天藍 = {{ArticleCategory|蓝瞳}}[[蓝瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 綠 | 绿
| 青绿 | 靑綠
| 军绿 | 軍綠
| 青灰
| 翡翠
| 祖母綠 | 祖母绿
| 黃綠 | 黄绿
| 灰綠 | 灰绿
| 綠褐 | 绿褐 | 綠棕 | 绿棕 | 棕绿 | 棕綠
| 墨綠 | 墨绿 = {{ArticleCategory|绿瞳}}[[绿瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 金
| 黃 | 黄
| 金黃 | 金黄
| 米
| 米黃 | 米黄
| 亞麻 | 亚麻
| 柠檬黄 | 檸檬黃
| 橄榄黄 | 橄欖黃
| 栀子黄 | 梔子黃
| 琥珀 = {{ArticleCategory|金瞳}}[[金瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 桔
| 桔黃 | 桔黄
| 橘
| 橘黃 | 橘黄
| 橙
| 橙黃 | 橙黄
| 橙褐 = {{ArticleCategory|橙瞳}}[[橙瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 褐
| 棕
| 棕褐
| 亞麻棕 | 亚麻棕
| 棕黑
| 栗
| 茶
| 咖啡
| 咖啡色
| 棕黃 | 棕黄
| 红棕 | 紅棕 | 棕红 | 棕紅
| 金褐 | 红褐 | 紅褐 | 黄褐 | 黃褐
| 酒红 | 酒紅 = {{ArticleCategory|棕瞳}}[[棕瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 黑
| 藍黑 | 蓝黑 = {{ArticleCategory|黑瞳}}[[黑瞳(瞳色)|{{#var:预处理}}瞳]]{{#var:eye2}}
| 灰
| 銀 | 银
| 銀白 | 银白
| 銀灰 | 银灰 = {{ArticleCategory|灰瞳}}[[灰瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 白 = {{ArticleCategory|白瞳}}[[白瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 异|異 = {{ArticleCategory|异色瞳}}[[异色瞳|{{#var:预处理}}色瞳]]{{#var:eye2}}
| 异色 | 異色 = {{ArticleCategory|异色瞳}}[[异色瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 彩虹 = {{ArticleCategory|彩虹瞳}}[[彩虹瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| 渐变 | 漸變 = {{ArticleCategory|渐变瞳}}[[渐变瞳|{{#var:预处理}}瞳]]{{#var:eye2}}
| #default = <!-- 容错程序,尽量接受“非常细化的颜色”:
-->{{#vardefine:最后一个字预处理
|{{Str_right|{{#var:预处理}}|{{#expr:{{Str_len|{{#var:预处理}}}}-1}} }} <!-- 取输入字符的最后一个字“x” -->
}}<!--
-->{{#vardefine:最后一个字
|{{#switch: {{#var:最后一个字预处理}}
| 银|銀 = 灰
| 黄|黃 = 金
| 褐 = 棕
| #default = {{#var:最后一个字预处理}}
}}<!--
-->}}<!--
-->{{#ifexist: Category:{{#var:最后一个字}}瞳 <!-- 检测“x瞳”分类是否存在 -->
| [[{{#var:最后一个字}}瞳{{#ifeq:{{#var:最后一个字}}|黑|(瞳色)}}|{{#var:预处理}}瞳]]{{#var:eye2}}{{ArticleCategory|{{#var:最后一个字}}瞳}} <!-- 存在[[分类:x瞳]],那么显示这个分类 -->
| {{#if:{{{ft|}}}|{{{1}}}|{{#var:预处理}}瞳{{ArticleCategory|错误瞳色}}}} <!-- 不存在这个分类,显示“错误瞳色”,如果容错开关打开,则原样输出 -->
}}
}}</includeonly><noinclude>{{Doc}}</noinclude>
|
——
Chi_ZJ2讨论 2024年9月3日 (二) 00:20 (CST)回复