home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1998 January (DVD) / VPR980100.ISO / OLS / WIN32 / KAKIMAC / KAKIMACK.LZH / K_KNZCO1.MAC < prev    next >
Text File  |  1995-10-21  |  3KB  |  92 lines

  1. // k_knzCO1.mac 水銀水(Suigwinsui)/小田明夫(HGD01603)
  2. // 【機能】現代の漢字がある旧漢字あるいは異字体漢字の調査
  3.  
  4. // 【著作権など】なお、漢字対応テーブルは、下記によります。
  5. // 78  NBD00533 95/01/29   10255  258 B QKANJI2 .LZH VZで旧漢字/異体字変換
  6. // Copyright (C) 1995 by 上村 郁夫(Ikuo Kamimura) (NIFTY-Serve:NBD00533)
  7.  
  8. call starting;
  9. call setKanzi;
  10. call mainKyuuKanzi;
  11. call ending;
  12.  
  13. mainKyuuKanzi:
  14. if(selecting){// 選擇時
  15.     #sx=seltopx;#sy=seltopy;
  16.     #ex=selendx;#ey=selendy;
  17.     disabledraw;
  18.     escape;
  19.     call changeChrG;
  20.     enabledraw;
  21. }else{
  22.     message "●報告...当マクロを実行できません<m(_._)m> \n"+
  23.         "●理由...実行前に「範囲選択」することが必要です\n"+
  24.         "●対策...文字列選択や行選択をして、当マクロを実行して下さい。";
  25.     #ret=1;
  26.     goto ending;
  27. }
  28. return;
  29.  
  30. changeChrG://開始座標と終点座標を与えて、その間の旧漢字を現代漢字に変換する
  31.     moveto #sx,#sy;
  32.     while(1){
  33.         #cCH=#cCH+1;
  34.         #g=code;
  35.         if(#g==eof)break;
  36.         call chkCharG;// #c;
  37.         title "●調査中『現代漢字をもつ旧漢字\/異体字』...走査["+str(#cCH)+"]字 検出["+str(#gOK)+"]字";
  38.         right;
  39.         if((#ex==x && #ey==y)||#ey<y)break;
  40.     }
  41. return;
  42.  
  43. chkCharG://旧漢字<>現代漢字
  44. $g=char(#g);
  45. #c=strstr($O,$g);
  46. if(#c>=0){
  47.     #gOK=#gOK+1;
  48. }
  49. return;
  50.  
  51. setKanzi:
  52.  
  53. //--- 旧漢字テーブルtype.2.4 ---上村 郁夫(Ikuo Kamimura) (NIFTY-Serve:NBD00533)氏によるqkanji.txtを改変
  54. $O="亞惡蘆鰺壓菴圍爲醫毓弌壱壹壹稻飮婬隱夘鬱廐廏睿營曵榮頴衞咏驛圓烟艷鹽奧徃應歐毆鶯冲穩假價譁峩畫會觧囘壞恠懷繪蠏礙葢盖蠣鉤擴攪殼覺學斈嶽樂竈釡鬻勸卷歡灌罐觀諫鑒關陷陷舘鴈鳫顏噐竒朞棊弃歸皈氣龜僞戲犧卻糺舊據擧舉亰峽挾况狹堯曉亟區驅駈勳羣徑逕惠憇攜溪谿經繼莖螢輕頸鷄藝缺决儉剱釼劍劔劒圈檢權獻縣險顯驗嚴乕皷效廣恆晄稾鑛刧軣國嵳濟碎劑戝冱沍阪埼嵜碕櫻册雜皋參慘棧蠶讚贊殘絲帋齒亊兒辭濕貭實筱蘂蕋舍寫冩釋咒壽收穐龝讎從澁澀獸縱肅凖處敍敘甞奬獎將厰枩燒稱證乘剩塲壤孃條淨疊疂疉穰讓釀囑觸脣寢愼晉眞刄盡靫靱醋圖廚埀粹翆醉隨髓膸數樞丗畆淒棲聲靜齋攝竊專戰淺潛濳綫纎纖舩賤踐錢譱禪曾踈蘓溯鼡雙壯搜插爭窗總聰莊裝赱騷臟藏屬續卆夛墮柁橢躰對帶滯臺瀧擇澤鈬逹豎貍單擔膽團彈斷耻癡穉遲晝蟲鑄潴豬廰廳甼聽膓敕珎鎭壺遞鐡鐵銕纒轉點傳兔莵菟礪黨嶋嶌檮盜燈當迯鬪仂獨讀杤屆繩弍弐貮貳邇韭姙迺惱腦霸廢拜盃楳賣蠅凾發髮罸拔蠻祕檜冰濱冨拂佛幤竝閇篦變邊辯辧瓣舖穗寶寳峯萠襃豐冐皃沒夲飜槇儘萬滿簑簔脉梦壻麪默餠埜彌藥譯藪籔瘉涌豫餘與譽搖樣窰燿謠踴遙來亂覽畧澑畄龍兩凉獵暸粮鄰璢壘泪勵禮隸靈齡戀聨爐勞朖樓籠祿亙灣仞爼倅僭寃寇羃尅箚巵廁廈廝咯譟嚔阯埒罎弉匳侫嫻嫐爾崘篏迪彜弯髴悴慙懴戞扨擡旛曠桝檳椶樒蘗櫟殲徇冽淵渊烱熈熏犂豺貉貘瑯瑤瓔疇肬皹眦禀筺笋筝籘籤纃羇覊羹腟艫莓蕚蝨蟆蠎蠹衂袵襌諡譖貔贓躪體輙輛遒鑪鑽鬧濶齏飃鰮鳬鴟鵝鶫鷏麩囓";
  55.  
  56. return;
  57.  
  58. starting:
  59. // 上書きキャンセル
  60. if(overwrite){#overWrite=1;overwriteswitch;}
  61. if(imestate){
  62.     #imeON=1;
  63. }
  64. if(freecursor){
  65.     #freeCursChang=1;
  66.     config "r-";
  67. }
  68. #orgX=x;#orgY=y;//設定変更後のカーソル位置は変化する場合もあるが、これを初期位置とする
  69. #endCancelSelectStr=1;//マクロ終了時のカーソル位置
  70. return;
  71.  
  72. ending:
  73. if(#overWrite){if(!overwrite)overwriteswitch;}
  74. if(#freeCursChang){
  75.     config "r+";
  76. }
  77. if(#endCancelSelectStr){
  78.     moveto #orgX,#orgY;
  79.     escape;
  80. }
  81. if(#imeON)imeswitch;
  82. //moveto #orgX,#orgY;
  83. if(#cCH>0)message "●調査報告(旧/異→現)候補数\n"+
  84.     "───────────────\n"+
  85.     "・走査した範囲の全文字総数:"+str(#cCH)+"字"+
  86.     "\n・現代漢字をもつ旧/異体字数:"+str(#gOK)+"字\n"+
  87.     "───────────────\n";
  88.     if(#ret)endmacro;
  89. else endmacroall;
  90.  
  91.  
  92.