維基百科討論:HanAssist

頁面內容不支援其他語言。
維基百科,自由的百科全書


HanAssist第四版

下列討論已經關閉,請勿修改。如有任何意見,請在合適的討論頁提出,而非再次編輯本討論。

HanAssist是一個wgULS及類似函數的替代品。舊版本文檔請參見Wikipedia:HanAssist

倉庫地址:https://github.com/diskdance/HanAssist

第四版API本體變化不大,主要是調用方式:

  1. 杜絕了污染全局空間的問題。原先API會暴露到全局空間(mw.libs),現在採用了ResourceLoader的模塊化設計。小工具需要先添加HanAssist的依賴,然後按照如下方式使用:
    const { conv, convByVar, batchConv } = require('ext.gadget.HanAssist'); // 注意大小写
    
    // 对应wgULS
    conv( { hans: '一天一苹果,医生远离我。', hant: '一天一蘋果,醫生遠離我。' } );
    
    // 对应wgUVS
    convByVar( { hans: '一天一苹果,医生远离我。', hant: '一天一蘋果,醫生遠離我。' } );
    
    // 批量处理
    mw.messages.set( batchConv( {
    	'article': { hans: '条目', hant: '條目' },
    	'category': { hans: '分类', hant: '分類' },
    	'categories': { hans: '分类', hant: '分類' },
    	'image': { hans: '文件', hant: '檔案' },
    	'images': { hans: '文件', hant: '檔案' },
    	'minute': '分',
    	'minutes': '分',
    	'second': '秒',
    	'seconds': '秒',
    	'week': '周',
    	'weeks': '周',
    	'search': { hans: '搜索', hant: '搜尋' },
    	'SearchHint': { hans: '搜索包含$1的页面', hant: '搜尋包含$1的頁面' },
    	'web': { hans: '站点', hant: '站點' },
    } ) );
    
    mw.msg( 'categories' );
    mw.msg( 'SearchHint', 'Apple' );
    
    用戶腳本則需要動態加載:
    mw.loader.using( 'ext.gadget.HanAssist' ).then( ( require ) => {
    	const { conv, convByVar } = require( 'ext.gadget.HanAssist' );
    	// 在此处使用
    } );
    
    其他的加載方式不保證可用。
  2. 函數採用更直觀的命名方式。
  3. 現在在傳入不合法的參數的時候會給出警告信息。

以上。--碟之舞📀💿 2023年7月26日 (三) 10:20 (UTC)

小工具已經部署到中文Beta Cluster,各位可以先試試效果。--碟之舞📀💿 2023年7月26日 (三) 10:22 (UTC)
「其他的加載方式不保證可用。」意味著舊腳本需要維護更新?會有人來做嗎。--YFdyh000留言2023年7月26日 (三) 15:22 (UTC)
不是這個意思。--碟之舞📀💿 2023年7月27日 (四) 03:33 (UTC)
(-)反對,使用v4的載入法將導致該腳本必須以非常糟糕的方式(技術細節:v4載入法必然需要將HanAssist注入ResourceLoader才能使用,變成如果要在無此小工具的站點載入將必須汙染ResourceLoader)才能被站外引用,這顯然不是一個合適的作法--SunAfterRain 2023年7月27日 (四) 15:15 (UTC)
@SunAfterRain:已經解決。--碟之舞📀💿 2023年7月28日 (五) 04:38 (UTC)
(+)支持--Taeas留言2023年7月28日 (五) 05:36 (UTC)
上方所述的問題已經解決,如果沒有問題的話能否開始公示?--碟之舞📀💿 2023年8月2日 (三) 13:21 (UTC)
我覺得可以。--Taeas留言2023年8月3日 (四) 02:04 (UTC)
部署方案:
  1. 中文維基百科測試集群處複製此小工具的原始碼和小工具定義。
  2. 移除site-libwgU*S的相關內容,由HanAssist接管,可參考測試集群配置。
  3. ext.gadget.HanAssist添加為site-lib的依賴項。
公示7日,2023年8月11日 (五) 03:44 (UTC) 結束,抄送@Xiplus、@安憶
以上。--碟之舞📀💿 2023年8月4日 (五) 03:43 (UTC)
公示結束且期間無異議。--碟之舞📀💿 2023年8月11日 (五) 03:58 (UTC)
MediaWiki_talk:Gadget-HanAssist.js#編輯請求_2023-08-11。--碟之舞📀💿 2023年8月11日 (五) 04:06 (UTC)
@Xiplus、@AnYiLin:見上。--碟之舞📀💿 2023年8月11日 (五) 04:08 (UTC)

本討論已關閉,請勿修改。如有任何意見,請在合適的討論頁提出,而非再次編輯本討論。