模块讨论:Unstrip
本页是以往讨论的存档。请勿编辑本页。若您想发起新讨论或重启现有讨论,请在当前讨论页进行。 |
在WP:subst时,无法清除Nowiki标签问题
如题。
- 问题描述:
- 如何在WP:subst时清除Nowiki标签
- 问题症状:
- 目前已知在WP:subst时,清除Nowiki标签的动作皆无效,纯文字处理清除的方式已由User:Sunny00217测试发现也无效。
- en:Wikipedia:Village_pump_(technical)#How_to_using_unstripNowiki_in_subst:_?英文维基人觉得subst时本来就不能移除Nowiki标签而无法提供协助。
- 问题起因:
- User:Sunny00217在User talk:A2569875/存档/2020年/1-3月#模块:TemplateParameters报告模板在WP:subst阶段时,本来应该被unstripNowiki函数清除的部分在WP:subst阶段时不会执行清除,进一步的测试表明,unstripNowiki在WP:subst与没有WP:subst的输出是不同的,且可以视为unstripNowiki在WP:subst阶段不会执行。然而透过nowiki防止维基代码被提前解析的这个需求本来就存在,而对应模板当然也有可能有WP:subst的需求,因此我认为此属BUG,见下方测试。-- 娜娜奇🐰鲜果茶☕(宇帆·☎️·☘️) 2020年2月5日 (三) 08:53 (UTC)
- 一般情况
- 输入“
<nowiki>[[1]]</nowiki>
”到unstripNowiki函数:- 输出→“[[1]]”
- 输出的原码为→“
<nowiki>[[1]] </nowiki>
” - 描述:十分正常地将
<nowiki></nowiki>
清除了。
- 输入“
<nowiki>[[1]]</nowiki>
”到unstripNowiki函数,并将unstripNowiki函数回传值移除首个与末个字元:- 输出→“'"`UNIQ--nowiki-00000008-QINU`"'”
- 输出的原码为→“
'"`UNIQ--nowiki-00000009-QINU`"'
” - 描述:十分正常地将
<nowiki></nowiki>
清除,移除首个与末个字元正常。
- 输入“
- WP:subst情况
- 输入“
<nowiki>[[1]]</nowiki>
”到unstripNowiki函数:- 输出→“[[1]]”
- 输出的原码为→“
<nowiki>[[1]]</nowiki>
” - 描述:异常。内容似乎是原封不动地被输出。
- (附注:可参考Special:滥用日志/3160999(subst前的diff纪录)、Special:Diff/58001233(subst后的diff纪录))
- 输入“
<nowiki>[[1]]</nowiki>
”到unstripNowiki函数,并将unstripNowiki函数回传值移除首个与末个字元:- 输出→“'"`UNIQ--nowiki-00000021-QINU`"'”
- 输出的原码为→“
'"`UNIQ--nowiki-00000022-QINU`"'
” - 描述:异常。unstripNowiki函数似乎没有执行,本来应该被unstripNowiki转为纯文字的mw:Strip_marker似乎原封不动地被输出,导致移除首个与末个字元后mw:Strip_marker损毁。
- (附注:可参考Special:滥用日志/3160999(subst前的diff纪录)、Special:Diff/58001233(subst后的diff纪录))
- 输入“
- safesubst情况
- 输入“
<nowiki>[[1]]</nowiki>
”到unstripNowiki函数:- 输出→“[[1]]”
- 输出的原码为→“
<nowiki>[[1]]</nowiki>
” - 描述:异常。同上,疑似unstripNowiki函数无效或失灵没有运行。
- (附注:可参考Special:滥用日志/3160999(subst前的diff纪录)、Special:Diff/58001233(subst后的diff纪录))
- 输入“
<nowiki>[[1]]</nowiki>
”到unstripNowiki函数,并将unstripNowiki函数回传值移除首个与末个字元:- 输出→“'"`UNIQ--nowiki-00000029-QINU`"'”
- 输出的原码为→“
'"`UNIQ--nowiki-0000002A-QINU`"'
” - 描述:异常。同上,疑似unstripNowiki函数无效或失灵没有运行。
- (附注:可参考Special:滥用日志/3160999(subst前的diff纪录)、Special:Diff/58001233(subst后的diff纪录))
- 输入“
- 可参考Special:滥用日志/3160999(subst前的diff纪录)、Special:Diff/58001233(subst后的diff纪录)
- 从上方结果分析可见,unstripNowiki函数在Subst阶段时,回传值仍为mw:Strip_marker,移除首个与末个字元破坏了mw:Strip_marker而导致Strip_marker失效,这意味着unstripNowiki函数在Subst阶段时根本不起作用。不晓得是Bug还是技术限制。
- 可参考Special:滥用日志/3160999(subst前的diff纪录)、Special:Diff/58001233(subst后的diff纪录)
- 前往英文维基询问如何完成“subst阶段移除Nowiki”en:Wikipedia:Village_pump_(technical)#How_to_using_unstripNowiki_in_subst:_?却得到了“我误解模板运作”的答案,不知道是我表达不清还是鸡同鸭讲,或者根本是技术限制,因此想到这里请求支援。-- 娜娜奇🐰鲜果茶☕(宇帆·☎️·☘️) 2020年2月5日 (三) 08:53 (UTC)
根据程式码[1]有很高的几率是技术限制。--180.217.106.185(留言) 2020年2月13日 (四) 05:00 (UTC)