模組討論: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)