利用者:Hiro3600/kanji-code-check.js

提供:Wikisource

注意: 保存後、変更を確認するにはブラウザーのキャッシュを消去する必要がある場合があります。

  • Firefox / Safari: Shift を押しながら 再読み込み をクリックするか、Ctrl-F5 または Ctrl-R を押してください (Mac では ⌘-R)
  • Google Chrome: Ctrl-Shift-R を押してください (Mac では ⌘-Shift-R)
  • Internet Explorer / Microsoft Edge: Ctrl を押しながら 最新の情報に更新 をクリックするか、Ctrl-F5 を押してください
  • Opera: Ctrl-F5を押してください
// ボタン操作により、特定部分(classがmw-body-contentのDIV)に対し、漢字コードの種別を色別 
// 使用後、ページ再読み込みで復帰。

$(function() {
	var namespaceNumber = mw.config.get('wgNamespaceNumber');
	if (namespaceNumber !== 0) return;
	$("#p-namespaces>ul").append($("<li><br />判別 </li>").attr({'id': 'start_btn','title':'色別:\n統合漢字は薄黄色、互換漢字はピンク、\n拡張Aは薄水色、拡張Bは薄紫色'}).css({'color':'#0000ff','cursor':'pointer'}));
	$('#start_btn').click(function() {
			alert('漢字の種別をチェックします\n統合漢字は薄黄色、互換漢字はピンク、\n拡張Aは薄水色、拡張Bは濃ピンク色');
			
			$(".mw-body-content").each(function(){
				var txt = $(this).html();
				$(this).html(
					txt.replace(/[㐀-䶵]/g, "<span class=\"kexa\" >$&</span>") 	
						//CJK統合漢字拡張A(U+3400 ~ U+4DB5)
					.replace(/[\uf900-\ufad9]/g, "<span class=\"kgkn\" >$&</span>")  
						//CJK互換漢字(U+F900 ~ U+FAD9)
					.replace(/[\u4e00-\u9fd5]/g, "<span class=\"ktgo\" >$&</span>")  
						//CJK統合漢字(U+4E00 ~ U+9FD5)
					.replace(/[\uD840-\uD869][\uDC00-\uDED6]/g, "<span class=\"kexb\" >$&</span>") 	
						//CJK統合漢字拡張B(U+20000 ~ U+2A6D6):	サロゲートペア     	
					.replace(/[\uD87E][\uDC00-\uDE10]/g, "<span class=\"kgkh\" >$&</span>") 	
						//CJK互換漢字補助(U+2f800 ~ U+2fa1f):	サロゲートペア     	
					//.replace(/[\ue0100-\ue01ef]/g, "<span class=\"kivs\" >$&</span>")  
						//異体字セレクタ(U+E0100 ~ U+E01EF): 未対応
				);
			});
	$('.kexa').css('background-color', 'LightBlue');  //CJK統合漢字拡張A:背景は薄水色
	$('.kexb').css('background-color', 'DeepPink');  //CJK統合漢字拡張B:背景は濃ピンク色
	$('.kgkn').css('background-color', 'pink');  //CJK互換漢字:背景はピンク色
	$('.ktgo').css('background-color', 'lemonchiffon'); //CJK統合漢字:背景は薄黄色
	$('.kgkh').css('background-color', 'darkorange'); //CJK互換漢字補助:背景はオレンジ色
	});
});