模板讨论:MolFormNav
![]() | 本页是以往讨论的存档。请勿编辑本页。若您想发起新讨论或重启现有讨论,请在当前讨论页进行。 |
能否建立一个类似{{DisambigNav}}的用于消歧义页的化学同系物导航模板
导航 | ||
---|---|---|
B4 | ||
C3 | C4 | C5 |
D4 | ||
C4 | - | 4C |
如右侧:
设想是这样的,同系物列于两侧,比方说C4H8O的左侧是C3H6O,右侧是C5H8O,上方是不饱和度+1的C4H6O,下方是不饱和度-1的C4H10O,这样在小分子上可能没有多大意义,但是到了如睾酮的C19H28O2这里,就可以快速找到去甲睾酮C18H26O2、甲基睾酮C20H30O2、脱氢睾酮C19H26O2和二氢睾酮C19H30O2。--Htmlzycq(留言) 2022年2月6日 (日) 08:44 (UTC)
另外,能不能再加一个维度,比如左上右下,C4H8O的一个方向是C4H8,另一个方向是C4H8O2,这样类似于羟基XX,脱氧XX也能快速找到了,顺便@Leiem :--Htmlzycq(留言) 2022年2月8日 (二) 12:50 (UTC)
同系物导航 | ||
---|---|---|
C19H30O2 | ||
C18H26O2 | C19H28O2 | C20H30O2 |
C19H26O2 | ||
C19H28O | C19H28O3 |
同系物导航 | ||
---|---|---|
C4H10O | ||
C3H6O | C4H8O | C5H10O |
C4H6O | ||
C4H8 | C4H8O2 |
@Htmlzycq:这个样子?Ghren🐦🕑 2022年2月13日 (日) 18:39 (UTC)
@ghrenghren:谢谢,就是这样,只不过C19H28O1的1能不能去掉才符合书写规范。另外,如果还有N、S等原子的话,阁下这个模板方便改进吗?不过就含有C、H、O的已经占有消歧义条目的大多数了--Htmlzycq(留言) 2022年2月15日 (二) 17:00 (UTC)
- @Htmlzycq我化学不好,但是技术上来说不难写。改好了。--Ghren🐦🕐 2022年2月15日 (二) 17:25 (UTC)
谢谢啦,在下把两个版本都拿去研究研究--Htmlzycq(留言) 2022年2月16日 (三) 01:42 (UTC)
@ghrenghren:,在下在{{MolFormDisambigNav}}里依样画葫芦加了一个S的代码,不过这样代码越来越长了。另外想问一下阁下用户页里的User:Ghrenghren/27/Chem是拿来缩短代码长度的吗?能否在{{MolFormDisambigNav}}里试一下?--Htmlzycq(留言) 2022年2月16日 (三) 04:47 (UTC)
- 这个是用来确保O1可以显示为O、O0可以不显示的。这样的话代码可以简洁得多。稍后我再试试。--Ghren🐦🕐 2022年2月16日 (三) 05:01 (UTC)
- 如果数字0不显示,那么多加几个元素在同一个template里不至于让模板更长( --Leiem(留言·签名·维基调查) 2022年2月17日 (四) 16:52 (UTC)
{{MolFormDisambigNav}}的化学式
同系物导航 | ||
---|---|---|
CH3NO | ||
CHNO | C2H3NO | |
CHN | CHNO2 | |
CO | CH2N2O
|
如右侧,CHNO的这个模板链接到包含C0H-1NO这样不存在的化学式,要怎样修正才能去掉C1中的1,不显示C0这样的部分以及移除H-1这样不存在的化学式?--氢氰酸留言区 2022年10月12日 (三) 03:10 (UTC)
- 话说之前这是怎么解决的?--Leiem(留言·签名·维基调查) 2022年10月12日 (三) 07:46 (UTC)
- {{MolFormDisambigNav/N}}的源代码中含有
|0 = |1 = N
这个部分,应该就是解决这个问题用的,而{{MolFormDisambigNav/O}}和{{MolFormDisambigNav/S}}也有类似的部分。--氢氰酸留言区 2022年10月12日 (三) 13:13 (UTC)- 如果你真的想动手的话,请先阅读Help:模板及里面大部分内连,尤其是Help:解析器函数的部分,你看到的
|0 = |1 = N
就是用解析器函数里面的switch函数去处理的。起码要先看懂{{#switch ... }}
的}}
是在哪边结束,整段看懂switch在干嘛,再回去对你想处理的部分进行处理。好比说我们先以上方十字正中间的区块为例,实际上只有 '''
C<sub>{{{C|}}}</sub>
H<sub>{{{H|}}}</sub>
{{#if:{{{N|}}}|N{{#ifeq:{{{N|}}}|1||<sub>{{{N|}}}</sub>}}}}
{{#if:{{{O|}}}|O{{#ifeq:{{{O|}}}|1||<sub>{{{O|}}}</sub>}}}}
{{#if:{{{S|}}}|S{{#ifeq:{{{S|}}}|1||<sub>{{{S|}}}</sub>}}}}
'''- 里面的N、O、S都有针对 1 的情况使用
{{#ifeq:{{{N|}}}|1||<sub>{{{N|}}}</sub>}}
,你对照C的那行就可以发现没有这样的处理。--Anghualee(留言) 2022年10月12日 (三) 20:46 (UTC) - 另外在你看懂之后,打算开始改之前,建议阅读Wikipedia:关于沙盒,并利用沙盒进行测试。理论上感觉测试完之后应该还有个喊人审阅,把沙盒页面转正的机制跟说明,不过我还没找到。--Anghualee(留言) 2022年10月12日 (三) 20:57 (UTC)
- 了解了,非常感谢。现在已经修好了。--氢氰酸留言区 2022年10月19日 (三) 12:56 (UTC)
- 如果你真的想动手的话,请先阅读Help:模板及里面大部分内连,尤其是Help:解析器函数的部分,你看到的
- {{MolFormDisambigNav/N}}的源代码中含有
- 一些杂原子似乎在模板中不会显示,例如C6H15FSi的氟和硅。--Leiem(留言·签名·维基调查) 2022年10月18日 (二) 03:21 (UTC)
- 处理的时候应该可以将Si等同于C、F(以及其它化学式索引里的Cl、Br、I)等同于H?--Leiem(留言·签名·维基调查) 2022年10月18日 (二) 03:22 (UTC)
- 是否要在模板里面扩充F、Cl、Br、I、P、Si这几个元素?(不过我觉得Si和P不常用就是了)--氢氰酸留言区 2022年10月19日 (三) 13:01 (UTC)
- 磷的话有变价(PR3、PR5、P2R4、P2R2、RCP之类的),可能要单独处理,As和P类似。Sb、Bi以及B可以参考N;Si、Ge和Sn可以参考C;还有就是固定价态的金属,比如碱金属相当于H、碱土金属相当于1⁄2个H。--Leiem(留言·签名·维基调查) 2022年10月21日 (五) 02:22 (UTC)
- Cl加了,F打算加,Br和I较罕见不确定,P的同系物不知道是加PH还是加磷酸基(因为加磷酸基更常见),剩下的元素应该没多大用。--氢氰酸留言区 2022年10月21日 (五) 07:59 (UTC)
- 好像可以参考硫,因为硫也有可变价态,CH3SCH3、CH3S(O)CH3、CH3S(O2)CH3(或C2H5SO3H)。--Leiem(留言·签名·维基调查) 2022年10月25日 (二) 02:16 (UTC)
- S目前的源代码和O一样……--氢氰酸留言区 2022年10月25日 (二) 08:21 (UTC)
- 但是C2H6O2S等条目内的模板并未报错。--Leiem(留言·签名·维基调查) 2022年11月1日 (二) 07:01 (UTC)
- 亚砜和砜分别有RSOR'和ROSOR'这些不含超价硫的同分异构体(至于是否真的存在不重要),而磷的化合物也差不多,所以应该不需要考虑它们的可变价态。--氢氰酸留言区 2022年11月1日 (二) 15:32 (UTC)
- 但是C2H6O2S等条目内的模板并未报错。--Leiem(留言·签名·维基调查) 2022年11月1日 (二) 07:01 (UTC)
- S目前的源代码和O一样……--氢氰酸留言区 2022年10月25日 (二) 08:21 (UTC)
- 那这样的话可以照着硫来改。--Leiem(留言·签名·维基调查) 2022年11月10日 (四) 02:28 (UTC)
- 已加F和P。--氢氰酸留言区 2022年11月13日 (日) 11:20 (UTC)
- 好像可以参考硫,因为硫也有可变价态,CH3SCH3、CH3S(O)CH3、CH3S(O2)CH3(或C2H5SO3H)。--Leiem(留言·签名·维基调查) 2022年10月25日 (二) 02:16 (UTC)
- Cl加了,F打算加,Br和I较罕见不确定,P的同系物不知道是加PH还是加磷酸基(因为加磷酸基更常见),剩下的元素应该没多大用。--氢氰酸留言区 2022年10月21日 (五) 07:59 (UTC)
- 磷的话有变价(PR3、PR5、P2R4、P2R2、RCP之类的),可能要单独处理,As和P类似。Sb、Bi以及B可以参考N;Si、Ge和Sn可以参考C;还有就是固定价态的金属,比如碱金属相当于H、碱土金属相当于1⁄2个H。--Leiem(留言·签名·维基调查) 2022年10月21日 (五) 02:22 (UTC)
- 是否要在模板里面扩充F、Cl、Br、I、P、Si这几个元素?(不过我觉得Si和P不常用就是了)--氢氰酸留言区 2022年10月19日 (三) 13:01 (UTC)
- 我上次概略看过模板的印象是里面只有 C, H, N, O, S 这五个,因此其他如 F 跟 Si 之类的显示呈现,可能不在该模板适用范围。除非要进行对应的扩充。--Anghualee(留言) 2022年10月19日 (三) 00:19 (UTC)
- 处理的时候应该可以将Si等同于C、F(以及其它化学式索引里的Cl、Br、I)等同于H?--Leiem(留言·签名·维基调查) 2022年10月18日 (二) 03:22 (UTC)