OSDN Git Service

* Writing is changed.
authorkonn <konn@1a406e8e-add9-4483-a2c8-d8cac5b7c224>
Sun, 18 Jun 2006 05:16:21 +0000 (05:16 +0000)
committerkonn <konn@1a406e8e-add9-4483-a2c8-d8cac5b7c224>
Sun, 18 Jun 2006 05:16:21 +0000 (05:16 +0000)
git-svn-id: svn+ssh://svn.sourceforge.jp/svnroot/modchxj/mod_chxj/trunk@960 1a406e8e-add9-4483-a2c8-d8cac5b7c224

16 files changed:
doc/modchxj.html
doc/modchxj.sdoc
include/chxj_chtml10.h
include/chxj_chtml20.h
include/chxj_chtml30.h
include/chxj_hdml.h
include/chxj_jhtml.h
include/chxj_xhtml_mobile_1_0.h
include/mod_chxj.h
src/chxj_chtml10.c
src/chxj_chtml20.c
src/chxj_chtml30.c
src/chxj_hdml.c
src/chxj_jhtml.c
src/chxj_xhtml_mobile_1_0.c
src/mod_chxj.c

index a9309d7..2856d32 100644 (file)
@@ -714,26 +714,26 @@ function setOHPHandler() {
 <li> <a href="#doc1_238" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\95\8e\9a\83R\81[\83h\82ð\95Ï\8a·\82µ\82½\82¢\8fê\8d\87(EXPERIMENTAL)</a>
 <li> <a href="#doc1_282" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\83f\83B\83\8c\83N\83e\83B\83u</a>
 </ul>
-<li> <a href="#doc1_367" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\91Î\89\9e\82·\82éCHTML\83^\83O</a>
-<li> <a href="#doc1_1075" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\93Æ\8e©\8ag\92£\83^\83O</a>
-<li> <a href="#doc1_1112" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\95\8e\9a\83R\81[\83h</a>
-<li> <a href="#doc1_1115" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\8aG\95\8e\9a\82É\82Â\82¢\82Ä</a>
+<li> <a href="#doc1_375" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\91Î\89\9e\82·\82éCHTML\83^\83O</a>
+<li> <a href="#doc1_1083" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\93Æ\8e©\8ag\92£\83^\83O</a>
+<li> <a href="#doc1_1120" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\95\8e\9a\83R\81[\83h</a>
+<li> <a href="#doc1_1123" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\8aG\95\8e\9a\82É\82Â\82¢\82Ä</a>
 <ul>
-<li> <a href="#doc1_1120" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\8aG\95\8e\9a\95Ï\8a·\92è\8b`</a>
+<li> <a href="#doc1_1128" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\8aG\95\8e\9a\95Ï\8a·\92è\8b`</a>
 </ul>
-<li> <a href="#doc1_1165" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\83f\83o\83C\83X\92è\8b` device_data.xml</a>
-<li> <a href="#doc1_1168" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\83C\83\81\81[\83W\89æ\91\9c\95Ï\8a·\8b@\94\</a>
+<li> <a href="#doc1_1173" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\83f\83o\83C\83X\92è\8b` device_data.xml</a>
+<li> <a href="#doc1_1176" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\83C\83\81\81[\83W\89æ\91\9c\95Ï\8a·\8b@\94\</a>
 <ul>
-<li> <a href="#doc1_1177" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\83T\83\80\83l\83C\83\8b\83\82\81[\83h</a>
-<li> <a href="#doc1_1183" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\95Ç\8e\86\83\82\81[\83h</a>
-<li> <a href="#doc1_1189" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">EzGet\83\82\81[\83h</a>
-<li> <a href="#doc1_1195" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82»\82Ì\91¼\82Ì\8b@\94\</a>
+<li> <a href="#doc1_1185" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\83T\83\80\83l\83C\83\8b\83\82\81[\83h</a>
+<li> <a href="#doc1_1191" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\95Ç\8e\86\83\82\81[\83h</a>
+<li> <a href="#doc1_1197" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">EzGet\83\82\81[\83h</a>
+<li> <a href="#doc1_1203" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82»\82Ì\91¼\82Ì\8b@\94\</a>
 </ul>
-<li> <a href="#doc1_1226" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82p\82q\83R\81[\83h\8fo\97Í\8b@\94\</a>
+<li> <a href="#doc1_1234" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82p\82q\83R\81[\83h\8fo\97Í\8b@\94\</a>
 <ul>
-<li> <a href="#doc1_1228" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82p\82q\83R\81[\83h\8fo\97Í\83n\83\93\83h\83\89\82Ì\93o\98^</a>
-<li> <a href="#doc1_1234" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82p\82q\83R\81[\83h\83\\81[\83X\83t\83@\83C\83\8b\82Ì\90Ý\92u</a>
-<li> <a href="#doc1_1258" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82p\82q\83R\81[\83h\82Ì\93®\93I\8fo\97Í\8b@\94\</a>
+<li> <a href="#doc1_1236" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82p\82q\83R\81[\83h\8fo\97Í\83n\83\93\83h\83\89\82Ì\93o\98^</a>
+<li> <a href="#doc1_1242" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82p\82q\83R\81[\83h\83\\81[\83X\83t\83@\83C\83\8b\82Ì\90Ý\92u</a>
+<li> <a href="#doc1_1266" onmouseover="hilightSelflink(this)" onmouseout="normal(this)">\82p\82q\83R\81[\83h\82Ì\93®\93I\8fo\97Í\8b@\94\</a>
 </ul>
 </ul>
 </div>
@@ -1120,24 +1120,28 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 <td>\91æ3\83p\83\89\83\81\81[\83^</td>
 <td>\95\8e\9a\83R\81[\83h\82ð\8ew\92è\82µ\82Ü\82·\81B\82±\82±\82Å\8ew\92è\82µ\82½\95\8e\9a\83R\81[\83h\82©\82ç&quot;CP932&quot;\82É\95Ï\8a·\82µ\82Ü\82·\81B\8ew\92è\82Å\82«\82é\95\8e\9a\83R\81[\83h\82Íiconv -l\83R\83}\83\93\83h\82É\82æ\82Á\82Ä\8am\94F\82·\82é\82±\82Æ\82ª\82Å\82«\82Ü\82·\81B\95Ï\8a·\82µ\82È\82­\82Ä\97Ç\82¢\8fê\8d\87\82ÍNONE\82ð\8ew\92è\82µ\82Ä\82­\82¾\82³\82¢\81B</td>
 </tr>
+<tr class="odd">
+<td>\91æ4\83p\83\89\83\81\81[\83^</td>
+<td>\8fÈ\97ª\82µ\82½\8fê\8d\87\82Í\81A\8cg\91Ñ\83y\81[\83W\82©\82ç\82Ì\95Ï\8a·\82ð\88Ó\96¡\82µ\82Ü\82·\81BPC\97p\83y\81[\83W\82©\82ç\82Ì\95Ï\8a·\82ð\8ds\82¤\8fê\8d\87\82Í&quot;PC&quot;\82ð\91æ\8el\83p\83\89\83\81\81[\83^\82É\8ew\92è\82µ\82Ü\82·\81B</td>
+</tr>
 </tbody>
 </table>
 </div>
 
 
-<div id="doc1_360" class="caption">ex)</div>
+<div id="doc1_368" class="caption">ex)</div>
 <pre class="program" style="margin-top:0">
     ChxjConvertRule &quot;^/chxj.+$/&quot; EngineOn EUC-JP
   
 </pre></ol>
 
 
-<h2 id="doc1_367">\91Î\89\9e\82·\82éCHTML\83^\83O</h2>
+<h2 id="doc1_375">\91Î\89\9e\82·\82éCHTML\83^\83O</h2>
 
 <p class="first_ja">\95Ï\8a·\89Â\94\\82È\82b\82g\82s\82l\82k\83^\83O\82Í\88È\89º\82Ì\82Æ\82¨\82è\82Å\82·\81B</p>
 
 <div class="table">
-<table id="doc1_369" class="data" rules="groups">
+<table id="doc1_377" class="data" rules="groups">
 <caption>\91Î\89\9e\83^\83O\88ê\97\97</caption>
 <colgroup span="7">
 <col>
@@ -1356,7 +1360,7 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 <td align="center">\81\9b</td>
 <td align="center">\81\9b</td>
 <td align="center">\81\9b</td>
-<td align="left"><span class="note"><a href="#doc1_924" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="\95K\82¸\95Â\82\82Ä\82­\82¾\82³\82¢\81B\82»\82Ì\82¤\82¿\91Î\89\9e\82µ\82Ü\82·\81B"><sup>(7)</sup></a></span></td>
+<td align="left"><span class="note"><a href="#doc1_932" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="\95K\82¸\95Â\82\82Ä\82­\82¾\82³\82¢\81B\82»\82Ì\82¤\82¿\91Î\89\9e\82µ\82Ü\82·\81B"><sup>(7)</sup></a></span></td>
 </tr>
 <tr class="even">
 <td></td>
@@ -1419,18 +1423,18 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 
 <div class="footnote">
 <ol>
-<li id="doc1_924" value="7"> \95K\82¸\95Â\82\82Ä\82­\82¾\82³\82¢\81B\82»\82Ì\82¤\82¿\91Î\89\9e\82µ\82Ü\82·\81B</ol>
+<li id="doc1_932" value="7"> \95K\82¸\95Â\82\82Ä\82­\82¾\82³\82¢\81B\82»\82Ì\82¤\82¿\91Î\89\9e\82µ\82Ü\82·\81B</ol>
 </div>
 
 
-<h2 id="doc1_1075">\93Æ\8e©\8ag\92£\83^\83O</h2>
+<h2 id="doc1_1083">\93Æ\8e©\8ag\92£\83^\83O</h2>
 
 
 <ol>
 <li> <p>&lt;CHXJ:IF&gt;<br></br></p>
-<p>&lt;CHXJ:IF&gt;\83^\83O\82Æ&lt;/CHXJ:IF&gt;\83^\83O\82Å\82Í\82³\82Ü\82ê\82½\83^\83O\82â\83e\83L\83X\83g\82Í\81A\95Ï\8a·\82¹\82¸\82É<b>\82»\82Ì\82Ü\82Ü</b><span class="note"><a href="#doc1_1085" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="\95Ï\8a·\82µ\82Ü\82¹\82ñ\82Ì\82Å\92\8d\88Ó\82ª\95K\97v\82Å\82·"><sup>(8)</sup></a></span>\8fo\97Í\82µ\82Ü\82·\81B\95K\90{\82Ì\91®\90«\82Æ\82µ\82Älang\82ª\82 \82è\82Ü\82·\81Blang\91®\90«\82ð\8ew\92è\82·\82é\82±\82Æ\82É\82æ\82Á\82Ä\81A\97á\82¦\82Î\81A<b>\81uHDML\8b@\82Ì\8fê\8d\87\82Ì\82Ý\8fo\97Í\82³\82¹\82é\81v</b>\82Æ\82¢\82Á\82½\82±\82Æ\82ð\89Â\94\\82É\82µ\82Ü\82·\81B<br></br><br></br>ex)</p>
+<p>&lt;CHXJ:IF&gt;\83^\83O\82Æ&lt;/CHXJ:IF&gt;\83^\83O\82Å\82Í\82³\82Ü\82ê\82½\83^\83O\82â\83e\83L\83X\83g\82Í\81A\95Ï\8a·\82¹\82¸\82É<b>\82»\82Ì\82Ü\82Ü</b><span class="note"><a href="#doc1_1093" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="\95Ï\8a·\82µ\82Ü\82¹\82ñ\82Ì\82Å\92\8d\88Ó\82ª\95K\97v\82Å\82·"><sup>(8)</sup></a></span>\8fo\97Í\82µ\82Ü\82·\81B\95K\90{\82Ì\91®\90«\82Æ\82µ\82Älang\82ª\82 \82è\82Ü\82·\81Blang\91®\90«\82ð\8ew\92è\82·\82é\82±\82Æ\82É\82æ\82Á\82Ä\81A\97á\82¦\82Î\81A<b>\81uHDML\8b@\82Ì\8fê\8d\87\82Ì\82Ý\8fo\97Í\82³\82¹\82é\81v</b>\82Æ\82¢\82Á\82½\82±\82Æ\82ð\89Â\94\\82É\82µ\82Ü\82·\81B<br></br><br></br>ex)</p>
 
-<div id="doc1_1095" class="caption">HTML\95\8f\91\92\86\82ÉHDML\8b@\82Ì\8fê\8d\87\82Ì\82Ý\97L\8cø\82É\82µ\82½\82¢\83^\83O\81A\82Ü\82½\82Í\95\8f\91\82ª\82 \82é\8fê\8d\87</div>
+<div id="doc1_1103" class="caption">HTML\95\8f\91\92\86\82ÉHDML\8b@\82Ì\8fê\8d\87\82Ì\82Ý\97L\8cø\82É\82µ\82½\82¢\83^\83O\81A\82Ü\82½\82Í\95\8f\91\82ª\82 \82é\8fê\8d\87</div>
 <pre class="program" style="margin-top:0">
        &lt;CHXJ:IF lang=&quot;HDML&quot; &gt;
          &lt;NODISPLAY&gt;
@@ -1444,7 +1448,7 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 <p><br></br></p>
 <p>ex)</p>
 
-<div id="doc1_1099" class="caption">i-Mode\82Ì\82Ý\8fo\97Í\82µ\82½\82¢\95\8f\91\82ª\82 \82é\8fê\8d\87</div>
+<div id="doc1_1107" class="caption">i-Mode\82Ì\82Ý\8fo\97Í\82µ\82½\82¢\95\8f\91\82ª\82 \82é\8fê\8d\87</div>
 <pre class="program" style="margin-top:0">
        &lt;CHXJ:IF lang=&quot;chtml&quot; &gt;
          \83V\81[\83N\83\8c\83b\83g\83R\81[\83h\82ª\82Ç\81[\82Ì\82±\81[\82Ì\81B
@@ -1455,7 +1459,7 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 <p><br></br></p>
 <p>\82Ü\82½\81Alang\91®\90«\82Í\81A\95¡\90\94\8ew\92è\82·\82é\82±\82Æ\82à\89Â\94\\82Å\82·\81B<br></br></p>
 
-<div id="doc1_1105" class="caption">HDML\8b@,J-PHONE\8b@\82Í\88È\89º\82ð\8fo\97Í\82µ\82Ü\82·</div>
+<div id="doc1_1113" class="caption">HDML\8b@,J-PHONE\8b@\82Í\88È\89º\82ð\8fo\97Í\82µ\82Ü\82·</div>
 <pre class="program" style="margin-top:0">
        &lt;CHXJ:IF lang=&quot;chtml&quot; lang=&quot;jhtml&quot;&gt;
        \82 \82È\82½\82Ì\8cg\91Ñ\82Í\81AHDML\8b@\82©J-HTML\8b@\82Å\82·\81B
@@ -1468,30 +1472,30 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 
 <div class="footnote">
 <ol>
-<li id="doc1_1085" value="8"> \95Ï\8a·\82µ\82Ü\82¹\82ñ\82Ì\82Å\92\8d\88Ó\82ª\95K\97v\82Å\82·</ol>
+<li id="doc1_1093" value="8"> \95Ï\8a·\82µ\82Ü\82¹\82ñ\82Ì\82Å\92\8d\88Ó\82ª\95K\97v\82Å\82·</ol>
 </div>
 
 
-<h2 id="doc1_1112">\95\8e\9a\83R\81[\83h</h2>
+<h2 id="doc1_1120">\95\8e\9a\83R\81[\83h</h2>
 
 <p class="first_ja">\95\8e\9a\83R\81[\83h\82Í\81A\8aG\95\8e\9a\82Ì\93ü\8fo\97Í\82ª\82 \82é\8aÖ\8cW\8fã\81AShift_JIS\82Ì\82Ý\82Æ\82µ\82Ä\82¢\82Ü\82·\81B</p>
 
-<h2 id="doc1_1115">\8aG\95\8e\9a\82É\82Â\82¢\82Ä</h2>
+<h2 id="doc1_1123">\8aG\95\8e\9a\82É\82Â\82¢\82Ä</h2>
 
-<p class="first_ja">i-Mode\97p\82Ì\8aG\95\8e\9a\82ð\8f\91\82¢\82Ä\82¨\82¯\82Î\81A\83A\83N\83Z\83X\82µ\82½\83L\83\83\83\8a\83A\82É\82æ\82Á\82Ä\81Amod_chxj\82ª\91Î\89\9e\82Ì\8aG\95\8e\9a\82É\8e©\93®\95Ï\8a·\82µ\82Ü\82·\81B\83\\81[\83X\82É2byte\82Ì\83o\83C\83i\83\8a\83R\81[\83h\82ð\92¼\90Ú\8f\91\82¢\82Ä\82à\81A\82P\82O\90i\8eQ\8fÆ\95\8e\9a\97ñ<span class="note"><a href="#doc1_1117" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="\82P\82U\90i\8eQ\8fÆ\95\8e\9a\97ñ\82É\82Í\91Î\89\9e\82µ\82Ä\82¢\82Ü\82¹\82ñ"><sup>(9)</sup></a></span>\81i&amp;#XXX;\82Ì\8c`\81j\82Å\8f\91\82¢\82Ä\82à\81A\82Ç\82¿\82ç\82Å\82à\95Ï\8a·\91Î\8fÛ\82É\82È\82è\82Ü\82·\81B\82P\82O\90i\8eQ\8fÆ\95\8e\9a\97ñ\82Å\8f\91\82¢\82½\8fê\8d\87\82Í\81Amod_chxj\82É\82æ\82è\81A\8e©\93®\82Å\82Q\83o\83C\83g\83R\81[\83h\82É\95Ï\8a·\82µ\82Ü\82·\81B</p>
+<p class="first_ja">i-Mode\97p\82Ì\8aG\95\8e\9a\82ð\8f\91\82¢\82Ä\82¨\82¯\82Î\81A\83A\83N\83Z\83X\82µ\82½\83L\83\83\83\8a\83A\82É\82æ\82Á\82Ä\81Amod_chxj\82ª\91Î\89\9e\82Ì\8aG\95\8e\9a\82É\8e©\93®\95Ï\8a·\82µ\82Ü\82·\81B\83\\81[\83X\82É2byte\82Ì\83o\83C\83i\83\8a\83R\81[\83h\82ð\92¼\90Ú\8f\91\82¢\82Ä\82à\81A\82P\82O\90i\8eQ\8fÆ\95\8e\9a\97ñ<span class="note"><a href="#doc1_1125" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="\82P\82U\90i\8eQ\8fÆ\95\8e\9a\97ñ\82É\82Í\91Î\89\9e\82µ\82Ä\82¢\82Ü\82¹\82ñ"><sup>(9)</sup></a></span>\81i&amp;#XXX;\82Ì\8c`\81j\82Å\8f\91\82¢\82Ä\82à\81A\82Ç\82¿\82ç\82Å\82à\95Ï\8a·\91Î\8fÛ\82É\82È\82è\82Ü\82·\81B\82P\82O\90i\8eQ\8fÆ\95\8e\9a\97ñ\82Å\8f\91\82¢\82½\8fê\8d\87\82Í\81Amod_chxj\82É\82æ\82è\81A\8e©\93®\82Å\82Q\83o\83C\83g\83R\81[\83h\82É\95Ï\8a·\82µ\82Ü\82·\81B</p>
 
 <div class="footnote">
 <ol>
-<li id="doc1_1117" value="9"> \82P\82U\90i\8eQ\8fÆ\95\8e\9a\97ñ\82É\82Í\91Î\89\9e\82µ\82Ä\82¢\82Ü\82¹\82ñ</ol>
+<li id="doc1_1125" value="9"> \82P\82U\90i\8eQ\8fÆ\95\8e\9a\97ñ\82É\82Í\91Î\89\9e\82µ\82Ä\82¢\82Ü\82¹\82ñ</ol>
 </div>
 
 
-<h3 id="doc1_1120">\8aG\95\8e\9a\95Ï\8a·\92è\8b`</h3>
+<h3 id="doc1_1128">\8aG\95\8e\9a\95Ï\8a·\92è\8b`</h3>
 
-<p class="first_ja">\8aG\95\8e\9a\82Ì\95Ï\8a·\82É\8aÖ\82·\82é\93®\8dì\82ð\95Ï\82¦\82½\82¢\8fê\8d\87\81i\97á\82¦\82Î\81u\83n\81[\83g\82ª\82 \82Á\82½\82ç\81A\82`\82t\82Ì\8fê\8d\87\82Í\83X\83y\81[\83h\82É\81v\82Æ\82©\81A\81u\95Ï\8a·\92è\8b`\82ª\82¨\82©\82µ\82¢\81v\82Æ\82¢\82Á\82½\8fê\8d\87\81j\82Í\81Aemoji.xml\83t\83@\83C\83\8b\82ð\92¼\90Ú\95Ò\8fW\82·\82é\82±\82Æ\82É\82æ\82Á\82Ä\92è\8b`\82ð\95Ï\8dX\82·\82é\82±\82Æ\82ª\89Â\94\\82Å\82·\81Bemoji.xml\82ÍXML\83t\83@\83C\83\8b\82Æ\82È\82Á\82Ä\82¢\82Ü\82·\82Ì\82Å\81Avi\93\99\82Å\8aÈ\92P\82É\92è\8b`\82ð\95Ï\8dX\82·\82é\82±\82Æ\82ª\82Å\82«\82Ü\82·<span class="note"><a href="#doc1_1122" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="\8cµ\96§\82É\82ÍXML\82É\82È\82Á\82Ä\82¢\82È\82¢\82Ì\82Å\81A\93ú\96{\8cê\82Ì\8bL\8fq\82Í\82r\82i\82h\82r\82Å\82¨\8aè\82¢\82µ\82Ü\82·\81B"><sup>(10)</sup></a></span>\81B</p>
+<p class="first_ja">\8aG\95\8e\9a\82Ì\95Ï\8a·\82É\8aÖ\82·\82é\93®\8dì\82ð\95Ï\82¦\82½\82¢\8fê\8d\87\81i\97á\82¦\82Î\81u\83n\81[\83g\82ª\82 \82Á\82½\82ç\81A\82`\82t\82Ì\8fê\8d\87\82Í\83X\83y\81[\83h\82É\81v\82Æ\82©\81A\81u\95Ï\8a·\92è\8b`\82ª\82¨\82©\82µ\82¢\81v\82Æ\82¢\82Á\82½\8fê\8d\87\81j\82Í\81Aemoji.xml\83t\83@\83C\83\8b\82ð\92¼\90Ú\95Ò\8fW\82·\82é\82±\82Æ\82É\82æ\82Á\82Ä\92è\8b`\82ð\95Ï\8dX\82·\82é\82±\82Æ\82ª\89Â\94\\82Å\82·\81Bemoji.xml\82ÍXML\83t\83@\83C\83\8b\82Æ\82È\82Á\82Ä\82¢\82Ü\82·\82Ì\82Å\81Avi\93\99\82Å\8aÈ\92P\82É\92è\8b`\82ð\95Ï\8dX\82·\82é\82±\82Æ\82ª\82Å\82«\82Ü\82·<span class="note"><a href="#doc1_1130" onmouseover="hilightSelflink(this)" onmouseout="normal(this)" title="\8cµ\96§\82É\82ÍXML\82É\82È\82Á\82Ä\82¢\82È\82¢\82Ì\82Å\81A\93ú\96{\8cê\82Ì\8bL\8fq\82Í\82r\82i\82h\82r\82Å\82¨\8aè\82¢\82µ\82Ü\82·\81B"><sup>(10)</sup></a></span>\81B</p>
 <p><br></br>\88È\89º\82É\81Aemoji.xml\83t\83@\83C\83\8b\82Ì\88ê\95\94\82ð\8bL\82µ\82Ü\82·\81B</p>
 
-<div id="doc1_1127" class="caption">emoji.xml</div>
+<div id="doc1_1135" class="caption">emoji.xml</div>
 <pre class="program" style="margin-top:0">
 &lt;?xml encoding=&quot;Shift_JIS&quot; &gt;
 
@@ -1527,52 +1531,52 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 
 <div class="footnote">
 <ol>
-<li id="doc1_1122" value="10"> \8cµ\96§\82É\82ÍXML\82É\82È\82Á\82Ä\82¢\82È\82¢\82Ì\82Å\81A\93ú\96{\8cê\82Ì\8bL\8fq\82Í\82r\82i\82h\82r\82Å\82¨\8aè\82¢\82µ\82Ü\82·\81B</ol>
+<li id="doc1_1130" value="10"> \8cµ\96§\82É\82ÍXML\82É\82È\82Á\82Ä\82¢\82È\82¢\82Ì\82Å\81A\93ú\96{\8cê\82Ì\8bL\8fq\82Í\82r\82i\82h\82r\82Å\82¨\8aè\82¢\82µ\82Ü\82·\81B</ol>
 </div>
 
 
-<h2 id="doc1_1165">\83f\83o\83C\83X\92è\8b` device_data.xml</h2>
+<h2 id="doc1_1173">\83f\83o\83C\83X\92è\8b` device_data.xml</h2>
 
 <p class="first_ja">mod_chxj\82Ì\93®\8dì\82ð\8c\88\92è\95t\82¯\82é\8fd\97v\82È\92è\8b`\82Å\82·\81B\95Ï\8a·\91Î\8fÛ\82Ì\92[\96\96\82Í\91S\82Ä\81Adevice_data.xml\83t\83@\83C\83\8b\82É\92è\8b`\82³\82ê\82é\95K\97v\82ª\82 \82è\82Ü\82·\81B\92è\8b`\82³\82ê\82Ä\82¢\82È\82¢\92[\96\96\82Í\81Amod_chxj\82Æ\82µ\82Ä\82Í\81A\94F\8e¯\82·\82é\82±\82Æ\82ª\82Å\82«\82Ü\82¹\82ñ\81B\94F\8e¯\82Å\82«\82È\82¢\8fê\8d\87\82É\82Í\81A\82b\82g\82s\82l\82k\82ð\82»\82Ì\82Ü\82Ü\8fo\97Í\82µ\82Ü\82·\81B</p>
 
-<h2 id="doc1_1168">\83C\83\81\81[\83W\89æ\91\9c\95Ï\8a·\8b@\94\</h2>
+<h2 id="doc1_1176">\83C\83\81\81[\83W\89æ\91\9c\95Ï\8a·\8b@\94\</h2>
 
 <p class="first_ja">mod_chxj\82É\82Í\81AJPEG\81AGIF\81APNG\81ABMP\83t\83@\83C\83\8b\82ð\92u\82¢\82Ä\82¨\82­\82¾\82¯\82Å\81A\83f\83o\83C\83X\92è\8b`\82É\8f]\82Á\82Ä\81A\82»\82ê\82¼\82ê\82Ì\83L\83\83\83\8a\83A\91Î\89\9e\82Ì\83t\83H\81[\83}\83b\83g\82É\95Ï\8a·\82·\82é\8b@\94\\82ª\82 \82è\82Ü\82·\81B\89æ\91\9c\82Ì\83T\83C\83Y\81i\8fc\82w\89¡\81j\82à\81A\92[\96\96\82Ì\89æ\96Ê\83T\83C\83Y\82É\8d\87\82í\82¹\82Ä\95Ï\8a·\82µ\82Ü\82·\81B\89æ\91\9c\82Ì\83T\83C\83Y\81i\83o\83C\83g\90\94\81j\82É\82Â\82¢\82Ä\82Í\81A\83f\83o\83C\83X\92è\8b`\92\86\82Ì\83L\83\83\83b\83V\83\85\83T\83C\83Y\82ð\8c©\82Ä\81A\82»\82Ì\92l\82æ\82è\82à\8f¬\82³\82­\82È\82é\82æ\82¤\82É<b>\93w\97Í</b>\82µ\82Ü\82·\82ª\81A\8c³\82Ì\89æ\91\9c\82ª\91å\82«\82·\82¬\82é\8fê\8d\87\82â\81A\95¡\8eG\82È\89æ\91\9c\82Ì\8fê\8d\87\82É\82Í\81A\83L\83\83\83b\83V\83\85\83T\83C\83Y\82æ\82è\82à\8f¬\82³\82­\82Å\82«\82¸\82É\95\\8e¦\82Å\82«\82È\82¢\8fê\8d\87\82ª\82 \82è\82Ü\82·\81B<br></br>\82»\82ê\82¼\82ê\82Ì\83^\83O\82Å\8ew\92è\82·\82é\8fê\8d\87\82É\82Í\81A\83t\83@\83C\83\8b\96¼\82Ì\8ag\92£\8eq\81i.jpg\82â.gif\93\99\81j\82ð\82Í\82¸\82µ\82½\8c`\82Å\8ew\92è\82µ\82Ü\82·\81B<br></br>\96{\8b@\94\\82É\82Í\82R\82Â\82Ì\83\82\81[\83h\82ª\91\8dÝ\82µ\82Ü\82·\81B\82»\82Ì\83\82\81[\83h\82ð\88È\89º\82É\8bL\82µ\82Ü\82·\81B</p>
 
-<h3 id="doc1_1177">\83T\83\80\83l\83C\83\8b\83\82\81[\83h</h3>
+<h3 id="doc1_1185">\83T\83\80\83l\83C\83\8b\83\82\81[\83h</h3>
 
 <p class="first_ja">\92[\96\96\91¤\89æ\96Ê\83T\83C\83Y\82Ì\96ñ\82R\95ª\82Ì\82P\92ö\93x\82Ì\83T\83C\83Y\81i\8fc\82w\89¡\81j\82É\89æ\91\9c\82ð\8fk\8f¬\95\\8e¦\82µ\82Ü\82·\81B</p>
 
-<div id="doc1_1179" class="caption">\83T\83\80\83l\83C\83\8b\83\82\81[\83\8eg\97p\97á</div>
+<div id="doc1_1187" class="caption">\83T\83\80\83l\83C\83\8b\83\82\81[\83\8eg\97p\97á</div>
 <pre class="program" style="margin-top:0">
   &lt;IMG SRC=&quot;/img/logo?Mode=Thumbnail&quot;&gt;
   
 </pre>
 
 
-<h3 id="doc1_1183">\95Ç\8e\86\83\82\81[\83h</h3>
+<h3 id="doc1_1191">\95Ç\8e\86\83\82\81[\83h</h3>
 
 <p class="first_ja">\92[\96\96\91¤\89æ\96Ê\82Ì\83T\83C\83Y\82É\83}\83b\83`\82·\82é\83T\83C\83Y\82É\8ag\91å\81E\8fk\8f¬\82µ\82Ü\82·\81B\89¡\92·\82Ì\89æ\91\9c\82Ì\8fê\8d\87\82É\82Í\81A\8fc\95\9d\82ð\8d\87\82í\82¹\82½\8cã\82É\8d\89E\82ð\83g\83\8a\83~\83\93\83O\82µ\82Ü\82·\81B</p>
 
-<div id="doc1_1185" class="caption">\95Ç\8e\86\83\82\81[\83\8eg\97p\97á</div>
+<div id="doc1_1193" class="caption">\95Ç\8e\86\83\82\81[\83\8eg\97p\97á</div>
 <pre class="program" style="margin-top:0">
   &lt;IMG SRC=&quot;/img/logo?Mode=WP&quot;&gt;
   
 </pre>
 
 
-<h3 id="doc1_1189">EzGet\83\82\81[\83h</h3>
+<h3 id="doc1_1197">EzGet\83\82\81[\83h</h3>
 
 <p class="first_ja">\95Ç\8e\86\83_\83E\83\93\83\8d\81[\83h\82ð\8ds\82¢\82½\82¢\8fê\8d\87\82É\8eg\97p\82µ\82Ü\82·\81BEzGET\83\82\81[\83h\82Í\81A\95Ç\8e\86\83\82\81[\83h\82Å\8fo\97Í\82³\82ê\82é\89æ\91\9c\83T\83C\83Y\82Æ\93¯\88ê\83T\83C\83Y\82Ì\89æ\91\9c\82ª\8eg\97p\82³\82ê\82Ü\82·\81B</p>
 
-<div id="doc1_1191" class="caption">EzGet\83\82\81[\83\8eg\97p\97á</div>
+<div id="doc1_1199" class="caption">EzGet\83\82\81[\83\8eg\97p\97á</div>
 <pre class="program" style="margin-top:0">
   &lt;A HREF=&quot;/img/logo?Mode=EzGet&quot;&gt;
   
 </pre>
 
 
-<h3 id="doc1_1195">\82»\82Ì\91¼\82Ì\8b@\94\</h3>
+<h3 id="doc1_1203">\82»\82Ì\91¼\82Ì\8b@\94\</h3>
 
 <p class="first_ja">\83\82\81[\83h\82Ì\91¼\82É\81A\89æ\91\9c\83T\83C\83Y\81i\8fc\82w\89¡\81j\82ð\92¼\90Ú\8ew\92è\82·\82é\82±\82Æ\82à\89Â\94\\82Å\82·\81B<b>w</b>\83p\83\89\83\81\81[\83^\81A<b>h</b>\83p\83\89\83\81\81[\83^\82ð\8eg\97p\82µ\82Ä\8ew\92è\82µ\82Ü\82·\81B</p>
 
@@ -1580,7 +1584,7 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 <li> w\83p\83\89\83\81\81[\83^<br></br>\89¡\95\9d\82ð\8ew\92è\82µ\82Ü\82·\81B
 <li> h\83p\83\89\83\81\81[\83^<br></br>\8fc\95\9d\82ð\8ew\92è\82µ\82Ü\82·\81B
 
-<div id="doc1_1215" class="caption">w/h\83p\83\89\83\81\81[\83\8eg\97p\97á</div>
+<div id="doc1_1223" class="caption">w/h\83p\83\89\83\81\81[\83\8eg\97p\97á</div>
 <pre class="program" style="margin-top:0">
   &lt;IMG SRC=&quot;/img/logo?w=100&amp;h=200&quot;&gt;
   
@@ -1590,25 +1594,25 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 
 <p>\8fã\8bL\91S\82Ä\82Ì\83\82\81[\83h\81A\83p\83\89\83\81\81[\83^\82Í\82f\82d\82s\83\8a\83N\83G\83X\83g\82Æ\82µ\82Ä\82Ì\82Ý\8eg\97p\82Å\82«\82Ü\82·\81B</p>
 
-<h2 id="doc1_1226">\82p\82q\83R\81[\83h\8fo\97Í\8b@\94\</h2>
+<h2 id="doc1_1234">\82p\82q\83R\81[\83h\8fo\97Í\8b@\94\</h2>
 
 
-<h3 id="doc1_1228">\82p\82q\83R\81[\83h\8fo\97Í\83n\83\93\83h\83\89\82Ì\93o\98^</h3>
+<h3 id="doc1_1236">\82p\82q\83R\81[\83h\8fo\97Í\83n\83\93\83h\83\89\82Ì\93o\98^</h3>
 
 <p class="first_ja">\82p\82q\83R\81[\83h\8fo\97Í\8b@\94\\82ð\8eg\97p\82·\82é\82É\82Í\81A\82p\82q\83R\81[\83h\83n\83\93\83h\83\89\82ð\93o\98^\82µ\82Ü\82·\81Bhttpd.conf\82É\88È\89º\82Ì\8bL\8fq\82ð\92Ç\89Á\82µ\82Ü\82·\81B</p>
 
-<div id="doc1_1230" class="caption">httpd.conf</div>
+<div id="doc1_1238" class="caption">httpd.conf</div>
 <pre class="program" style="margin-top:0">
   AddHandler chxj-qrcode .qrc
 </pre>
 
 <p>\82È\82¨\81A\83n\83\93\83h\83\89\82ð\93o\98^\82µ\82È\82¢\82Å\82à\81A\8fo\97Í\83t\83B\83\8b\83^\81[\82ð\8co\97R\82³\82¹\82é\82±\82Æ\82Å\81A\82p\82q\83R\81[\83h\82ð\8fo\97Í\82³\82¹\82é\82±\82Æ\82à\89Â\94\\82Å\82·\81B\81i\81¦\82p\82q\83R\81[\83h\82Ì\93®\93I\8fo\97Í\82ð\8eQ\8fÆ\81j</p>
 
-<h3 id="doc1_1234">\82p\82q\83R\81[\83h\83\\81[\83X\83t\83@\83C\83\8b\82Ì\90Ý\92u</h3>
+<h3 id="doc1_1242">\82p\82q\83R\81[\83h\83\\81[\83X\83t\83@\83C\83\8b\82Ì\90Ý\92u</h3>
 
 <p class="first_ja">\83n\83\93\83h\83\89\82ð\93o\98^\82µ\82½\82ç\81A\82»\82Ì\93o\98^\82µ\82½\8ag\92£\8eq\82ð\8e\9d\82Â\83t\83@\83C\83\8b\82ð\97p\88Ó\82µ\82Ü\82·\81B</p>
 
-<div id="doc1_1236" class="caption">\97á\81Fa.qrc</div>
+<div id="doc1_1244" class="caption">\97á\81Fa.qrc</div>
 <pre class="program" style="margin-top:0">
   &lt;?xml version=1.0 ?&gt;
   
@@ -1631,11 +1635,11 @@ ChxjConvRule &quot;^/chxj.+$&quot; &quot;EngineOn&quot; &quot;EUC-JP&quot;
 <li> data\83^\83Odata\83^\83O\82Í\81A\82p\82q\83R\81[\83h\82É\8fo\97Í\82·\82é\83f\81[\83^\82ð\8ew\92è\82µ\82Ü\82·\81B\89ü\8ds\82µ\82½\8fê\8d\87\82Í\81A\89ü\8ds\95\8e\9a\82à\82p\82q\83R\81[\83h\93à\82É\95\84\8d\86\89»\82³\82ê\82Ü\82·\81B</ol>
 
 
-<h3 id="doc1_1258">\82p\82q\83R\81[\83h\82Ì\93®\93I\8fo\97Í\8b@\94\</h3>
+<h3 id="doc1_1266">\82p\82q\83R\81[\83h\82Ì\93®\93I\8fo\97Í\8b@\94\</h3>
 
 <p class="first_ja">\83v\83\8d\83O\83\89\83\80\93\99\82ð\8eg\97p\82µ\81A\93®\93I\82É\82p\82q\83R\81[\83h\82ð\8fo\97Í\82µ\82½\82¢\8fê\8d\87\82Í\81A\8fã\8bL\82Ì.qrc\83t\83@\83C\83\8b\82Ì\93à\97e\82ð\82»\82Ì\82Ü\82ÜOutputFilter\82É\92Ê\82µ\82Ä\82 \82°\82ê\82Î\82n\82j\82Å\82·\81B</p>
 
-<div id="doc1_1260" class="caption">php\82Å\82p\82q\83R\81[\83h\82ð\93®\93I\82É\8fo\97Í\82·\82é\97á</div>
+<div id="doc1_1268" class="caption">php\82Å\82p\82q\83R\81[\83h\82ð\93®\93I\82É\8fo\97Í\82·\82é\97á</div>
 <pre class="program" style="margin-top:0">
     &lt;php
       $version = $_POST[&quot;version&quot;];
index a92b740..77fb968 100644 (file)
@@ -399,6 +399,9 @@ ChxjConvRule "^/chxj.+$" "EngineOn" "EUC-JP"
     <tr>
       <td>Âè3¥Ñ¥é¥á¡¼¥¿</td><td>ʸ»ú¥³¡¼¥É¤ò»ØÄꤷ¤Þ¤¹¡£¤³¤³¤Ç»ØÄꤷ¤¿Ê¸»ú¥³¡¼¥É¤«¤é"CP932"¤ËÊÑ´¹¤·¤Þ¤¹¡£»ØÄê¤Ç¤­¤ëʸ»ú¥³¡¼¥É¤Ïiconv -l¥³¥Þ¥ó¥É¤Ë¤è¤Ã¤Æ³Îǧ¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£ÊÑ´¹¤·¤Ê¤¯¤ÆÎɤ¤¾ì¹ç¤ÏNONE¤ò»ØÄꤷ¤Æ¤¯¤À¤µ¤¤¡£</td>
     </tr>
+    <tr>
+      <td>Âè4¥Ñ¥é¥á¡¼¥¿</td><td>¾Êά¤·¤¿¾ì¹ç¤Ï¡¢·ÈÂÓ¥Ú¡¼¥¸¤«¤é¤ÎÊÑ´¹¤ò°ÕÌ£¤·¤Þ¤¹¡£PCÍÑ¥Ú¡¼¥¸¤«¤é¤ÎÊÑ´¹¤ò¹Ô¤¦¾ì¹ç¤Ï"PC"¤òÂè»Í¥Ñ¥é¥á¡¼¥¿¤Ë»ØÄꤷ¤Þ¤¹¡£</td>
+    </tr>
   </tbody>
   </table>
   <program title="ex)">
index e68cd19..8b123ac 100644 (file)
@@ -31,10 +31,11 @@ typedef struct _ctml10_t {
 
     device_table*      spec;
     mod_chxj_config*   conf;
+    chxjconvrule_entry* entryp;
 } chtml10_t;
 
 /*----------------------------------------------------------------------------*/
 /* Prototype                                                                  */
 /*----------------------------------------------------------------------------*/
-char* chxj_exchange_chtml10( request_rec* r, device_table* spec, const char* src, apr_size_t srclen, apr_size_t *dstlen);
+char* chxj_exchange_chtml10( request_rec* r, device_table* spec, const char* src, apr_size_t srclen, apr_size_t *dstlen, chxjconvrule_entry* entryp);
 #endif
index f44a0e0..ca2327b 100644 (file)
@@ -20,7 +20,7 @@
 /*#define DUMP_CHTML20 ""*/
 #include "mod_chxj.h"
 /*----------------------------------------------------------------------------*/
-/* Structure for HDML                                                         */
+/* Structure for CHTML2.0                                                     */
 /*----------------------------------------------------------------------------*/
 typedef struct _ctml20_t {
     Doc*               doc;
@@ -30,6 +30,7 @@ typedef struct _ctml20_t {
 
     device_table*      spec;
     mod_chxj_config*   conf;
+    chxjconvrule_entry* entryp;
 } chtml20_t;
 
 /*----------------------------------------------------------------------------*/
@@ -41,5 +42,6 @@ chxj_exchange_chtml20(
                   device_table* spec,
                   const char* src,
                   apr_size_t srclen,
-                  apr_size_t *dstlen);
+                  apr_size_t *dstlen,
+                  chxjconvrule_entry* entryp);
 #endif
index a7e0771..744d38a 100644 (file)
@@ -20,7 +20,7 @@
 /* #define DUMP_CHTML30 "" */
 #include "mod_chxj.h"
 /*----------------------------------------------------------------------------*/
-/* Structure for HDML                                                         */
+/* Structure for CHTML3.0                                                     */
 /*----------------------------------------------------------------------------*/
 typedef struct _chtml30_t {
     Doc*               doc;
@@ -30,6 +30,7 @@ typedef struct _chtml30_t {
 
     device_table*      spec;
     mod_chxj_config*   conf;
+    chxjconvrule_entry* entryp;
 } chtml30_t;
 
 /*----------------------------------------------------------------------------*/
@@ -41,5 +42,6 @@ chxj_exchange_chtml30(
   device_table*   spec,
   const char*     src,
   apr_size_t      srclen,
-  apr_size_t*     dstlen);
+  apr_size_t*     dstlen,
+  chxjconvrule_entry* entryp);
 #endif
index 542fdc4..63743ef 100644 (file)
@@ -89,11 +89,19 @@ typedef struct _hdml_t {
   device_table* spec;
 
   mod_chxj_config*  conf;
+
+  chxjconvrule_entry* entryp;
 } hdml_t;
 /*============================================================================*/
 /* Prototype declaration.                                                     */
 /*============================================================================*/
-char* chxj_exchange_hdml(request_rec* r, device_table* spec, const char* src, apr_size_t srclen, apr_size_t* dstlen) ;
+char* chxj_exchange_hdml(
+  request_rec*        r, 
+  device_table*       spec,
+  const char*         src,
+  apr_size_t          srclen,
+  apr_size_t*         dstlen,
+  chxjconvrule_entry* entryp) ;
 char* qs_out_apr_pstrcat(request_rec* r, char* o, char* s, int* len);
 char* qs_conv_istyle_to_format(request_rec* r, char* is);
 
index a171753..de9d46b 100644 (file)
@@ -20,7 +20,7 @@
 /* #define DUMP_JHTML "" */
 #include "mod_chxj.h"
 /*----------------------------------------------------------------------------*/
-/* Structure for HDML                                                         */
+/* Structure for J-PHONE HTML                                                 */
 /*----------------------------------------------------------------------------*/
 typedef struct _jhtml_t {
     Doc* doc;
@@ -30,6 +30,7 @@ typedef struct _jhtml_t {
 
     device_table*    spec;
     mod_chxj_config* conf;
+    chxjconvrule_entry* entryp;
 } jhtml_t;
 
 /*----------------------------------------------------------------------------*/
@@ -41,5 +42,6 @@ chxj_exchange_jhtml(
   device_table* spec,
   const char* src,
   apr_size_t srclen,
-  apr_size_t *dstlen);
+  apr_size_t *dstlen,
+  chxjconvrule_entry* entryp) ;
 #endif
index ef40735..4cc33de 100644 (file)
@@ -30,11 +30,18 @@ typedef struct _xhtml_t {
 
     device_table*    spec;
     mod_chxj_config*   conf;
+    chxjconvrule_entry* entryp;
 } xhtml_t;
 
 /*----------------------------------------------------------------------------*/
 /* Prototype                                                                  */
 /*----------------------------------------------------------------------------*/
-char* chxj_exchange_xhtml_mobile_1_0(request_rec* r, device_table* spec, const char* src, apr_size_t srclen, apr_size_t *dstlen);
+char* chxj_exchange_xhtml_mobile_1_0(
+  request_rec* r,
+  device_table* spec,
+  const char* src,
+  apr_size_t srclen,
+  apr_size_t *dstlen,
+  chxjconvrule_entry* entryp) ;
 
 #endif
index 3304c5b..0e5df68 100644 (file)
@@ -179,6 +179,7 @@ typedef struct {
   int        flags;
   int        action;
   char       *encoding;
+  int        pc_flag;
 } chxjconvrule_entry;
 
 typedef struct {
@@ -209,6 +210,11 @@ typedef struct {
 
 #define CONVRULE_FLAG_NOTMATCH        (0x00000001)
 
+#define CONVRULE_PC_FLAG_ON_CMD       "PC"
+
+#define CONVRULE_PC_FLAG_ON_BIT       (0x00000001)
+#define CONVRULE_PC_FLAG_OFF_BIT      (0x00000002)
+
 typedef struct {
   apr_shm_t*          client_shm;
   apr_global_mutex_t* client_lock;
index ed2e6b9..de44755 100644 (file)
@@ -99,7 +99,9 @@ chxj_exchange_chtml10(
   device_table* spec,
   const char* src,
   apr_size_t srclen,
-  apr_size_t *dstlen)
+  apr_size_t *dstlen,
+  chxjconvrule_entry* entryp
+)
 {
   char*     dst = NULL;
   char*     ss;
@@ -121,6 +123,8 @@ chxj_exchange_chtml10(
   /* The CHTML structure is initialized.                                      */
   /*--------------------------------------------------------------------------*/
   s_init_chtml10(&chtml10, &doc, r, spec);
+  chtml10.entryp = entryp;
+
   ap_set_content_type(r, "text/html; charset=Windows-31J");
 
   /*--------------------------------------------------------------------------*/
index 65e6c7c..8063e23 100644 (file)
@@ -99,7 +99,9 @@ chxj_exchange_chtml20(
   device_table* spec,
   const char* src,
   apr_size_t srclen,
-  apr_size_t *dstlen)
+  apr_size_t *dstlen,
+  chxjconvrule_entry* entryp
+)
 {
   char*     dst = NULL;
   char*     ss;
@@ -121,6 +123,9 @@ chxj_exchange_chtml20(
   /* The CHTML structure is initialized.                                      */
   /*--------------------------------------------------------------------------*/
   s_init_chtml20(&chtml20, &doc, r, spec);
+
+  chtml20.entryp = entryp;
+
   ap_set_content_type(r, "text/html; charset=Windows-31J");
 
   /*--------------------------------------------------------------------------*/
@@ -1445,10 +1450,10 @@ s_chtml20_start_input_tag(chtml20_t* chtml20, Node* node)
     /* CHTML 2.0                                                              */
     /*------------------------------------------------------------------------*/
     chtml20->out = apr_pstrcat(r->pool, 
-                    chtml20->out, 
-                    " istyle=\"", 
-                    istyle, "\" ", 
-                    NULL);
+                      chtml20->out, 
+                      " istyle=\"", 
+                      istyle, "\" ", 
+                      NULL);
 
   /*--------------------------------------------------------------------------*/
   /* The figure is default for the password.                                  */
index 0682503..661b3ef 100644 (file)
@@ -99,7 +99,9 @@ chxj_exchange_chtml30(
   device_table* spec,
   const char* src,
   apr_size_t srclen,
-  apr_size_t *dstlen)
+  apr_size_t *dstlen,
+  chxjconvrule_entry* entryp
+)
 {
   char*     dst = NULL;
   char*     ss;
@@ -122,6 +124,9 @@ chxj_exchange_chtml30(
   /* The CHTML structure is initialized.                                      */
   /*--------------------------------------------------------------------------*/
   s_init_chtml30(&chtml30, &doc, r, spec);
+
+  chtml30.entryp = entryp;
+
   ap_set_content_type(r, "text/html; charset=Windows-31J");
 
   /*--------------------------------------------------------------------------*/
index cc027bc..e6d8023 100644 (file)
@@ -98,7 +98,9 @@ chxj_exchange_hdml(request_rec* r,
                    device_table* spec, 
                    const char* src, 
                    apr_size_t srclen, 
-                   apr_size_t* dstlen)
+                   apr_size_t* dstlen,
+                   chxjconvrule_entry* entryp
+)
 {
   char*     dst = NULL;
   char*     buf = NULL;
@@ -120,6 +122,9 @@ chxj_exchange_hdml(request_rec* r,
   /* initialize hdml structure                                                */
   /*--------------------------------------------------------------------------*/
   s_init_hdml(&hdml,&doc,r, spec);
+
+  hdml.entryp = entryp;
+
   ap_set_content_type(r, "text/x-hdml; charset=Shift_JIS");
   /*--------------------------------------------------------------------------*/
   /* DEBUG                                                                    */
index cfde91a..818264d 100644 (file)
@@ -87,7 +87,9 @@ chxj_exchange_jhtml(
   device_table* spec,
   const char* src,
   apr_size_t srclen,
-  apr_size_t *dstlen)
+  apr_size_t *dstlen,
+  chxjconvrule_entry* entryp
+)
 {
   char*     dst = NULL;
   char*     ss;
@@ -109,6 +111,9 @@ chxj_exchange_jhtml(
   /* The CHTML structure is initialized.                                      */
   /*--------------------------------------------------------------------------*/
   s_init_jhtml(&jhtml, &doc, r, spec);
+
+  jhtml.entryp = entryp;
+
   ap_set_content_type(r, "text/html; charset=Windows-31J");
 
   /*--------------------------------------------------------------------------*/
@@ -1477,7 +1482,8 @@ s_jhtml_start_input_tag(jhtml_t* jhtml, Node* node)
     /*------------------------------------------------------------------------*/
     /* CHTML 2.0                                                              */
     /*------------------------------------------------------------------------*/
-    if (type && (*type == 'p' || *type == 'P') && strcasecmp(type, "password") == 0) {
+    if (type && (*type == 'p' || *type == 'P') && strcasecmp(type, "password") == 0
+    && ! jhtml->entryp->pc_flag ) {
       jhtml->out = apr_pstrcat(r->pool, 
                     jhtml->out, 
                     " mode=\"", 
index 232476b..7754cc1 100644 (file)
@@ -101,7 +101,9 @@ chxj_exchange_xhtml_mobile_1_0(
   device_table*   spec,
   const char*     src,
   apr_size_t      srclen,
-  apr_size_t*     dstlen)
+  apr_size_t*     dstlen,
+  chxjconvrule_entry* entryp
+)
 {
   char*     dst = NULL;
   char*     ss;
@@ -125,6 +127,9 @@ chxj_exchange_xhtml_mobile_1_0(
   /* The XHTML structure is initialized.                                      */
   /*--------------------------------------------------------------------------*/
   s_init_xhtml(&xhtml, &doc, r, spec);
+
+  xhtml.entryp = entryp;
+
   ap_set_content_type(r, "text/html; charset=Windows-31J");
 
   /*--------------------------------------------------------------------------*/
@@ -1546,7 +1551,8 @@ s_xhtml_1_0_start_input_tag(xhtml_t* xhtml, Node* node)
   /*--------------------------------------------------------------------------*/
   if (type && istyle == NULL 
   && (*type == 'p' || *type == 'P') 
-  && strcasecmp(type, "password") == 0) {
+  && strcasecmp(type, "password") == 0
+  && ! xhtml->entryp->pc_flag) {
     if (max_length) {
       xhtml->out = apr_pstrcat(r->pool, 
                       xhtml->out, 
index 5f81c58..5b9471c 100644 (file)
@@ -110,7 +110,7 @@ chxj_exchange(request_rec *r, const char** src, apr_size_t* len)
       /*----------------------------------------------------------------------*/
       DBG(r,"select DoCoMo i-Mode 1.0 ");
       tmp = chxj_encoding(r, *src, (apr_size_t*)len);
-      dst = chxj_exchange_chtml10(r, spec, tmp, *len, len);
+      dst = chxj_exchange_chtml10(r, spec, tmp, *len, len, entryp);
       break;
 
     case CHXJ_SPEC_Chtml_2_0:
@@ -119,7 +119,7 @@ chxj_exchange(request_rec *r, const char** src, apr_size_t* len)
       /*----------------------------------------------------------------------*/
       DBG(r,"select DoCoMo i-Mode 2.0 ");
       tmp = chxj_encoding(r, (char*)*src, (apr_size_t*)len);
-      dst = chxj_exchange_chtml20(r, spec, tmp, *len, len);
+      dst = chxj_exchange_chtml20(r, spec, tmp, *len, len, entryp);
       break;
    
     case CHXJ_SPEC_Chtml_3_0:
@@ -128,7 +128,7 @@ chxj_exchange(request_rec *r, const char** src, apr_size_t* len)
       /*----------------------------------------------------------------------*/
       DBG(r,"select DoCoMo i-Mode 3.0 ");
       tmp = chxj_encoding(r, *src, (apr_size_t*)len);
-      dst = chxj_exchange_chtml30(r, spec, tmp, *len, len);
+      dst = chxj_exchange_chtml30(r, spec, tmp, *len, len, entryp);
       break;
     
     case CHXJ_SPEC_Chtml_4_0:
@@ -137,7 +137,7 @@ chxj_exchange(request_rec *r, const char** src, apr_size_t* len)
       /*----------------------------------------------------------------------*/
       DBG(r,"select DoCoMo i-Mode 4.0 ");
       tmp = chxj_encoding(r, *src, (apr_size_t*)len);
-      dst = chxj_exchange_chtml30(r, spec, tmp, *len, len);
+      dst = chxj_exchange_chtml30(r, spec, tmp, *len, len, entryp);
       break;
 
     case CHXJ_SPEC_Chtml_5_0:
@@ -146,7 +146,7 @@ chxj_exchange(request_rec *r, const char** src, apr_size_t* len)
       /*----------------------------------------------------------------------*/
       DBG(r,"select DoCoMo i-Mode 5.0 ");
       tmp = chxj_encoding(r, *src, (apr_size_t*)len);
-      dst = chxj_exchange_chtml30(r, spec, tmp, *len, len);
+      dst = chxj_exchange_chtml30(r, spec, tmp, *len, len, entryp);
       break;
 
     case CHXJ_SPEC_XHtml_Mobile_1_0:
@@ -155,7 +155,7 @@ chxj_exchange(request_rec *r, const char** src, apr_size_t* len)
       /*----------------------------------------------------------------------*/
       DBG(r,"select XHTML Mobile 1.0");
       tmp = chxj_encoding(r, *src, (apr_size_t*)len);
-      dst = chxj_exchange_xhtml_mobile_1_0(r, spec, tmp, *len, len);
+      dst = chxj_exchange_xhtml_mobile_1_0(r, spec, tmp, *len, len, entryp);
       break;
 
     case CHXJ_SPEC_Hdml:
@@ -164,7 +164,7 @@ chxj_exchange(request_rec *r, const char** src, apr_size_t* len)
       /*----------------------------------------------------------------------*/
       DBG(r,"select HDML");
       tmp = chxj_encoding(r, *src, (apr_size_t*)len);
-      dst = chxj_exchange_hdml(r, spec, tmp, *len, len);
+      dst = chxj_exchange_hdml(r, spec, tmp, *len, len, entryp);
       break;
 
     case CHXJ_SPEC_Jhtml:
@@ -173,7 +173,7 @@ chxj_exchange(request_rec *r, const char** src, apr_size_t* len)
       /*----------------------------------------------------------------------*/
       DBG(r,"select JHTML");
       tmp = chxj_encoding(r, *src, (apr_size_t*)len);
-      dst = chxj_exchange_jhtml(r, spec, tmp, *len, len);
+      dst = chxj_exchange_jhtml(r, spec, tmp, *len, len, entryp);
       break;
 
     default:
@@ -790,7 +790,7 @@ chxj_merge_per_dir_config(apr_pool_t *p, void *basev, void *addv)
 
 
 static int
-chxj_command_parse_take3(const char* arg, char** prm1, char** prm2, char** prm3)
+chxj_command_parse_take4(const char* arg, char** prm1, char** prm2, char** prm3, char** prm4)
 {
   int isquoted;
   char* strp;
@@ -822,6 +822,7 @@ chxj_command_parse_take3(const char* arg, char** prm1, char** prm2, char** prm3)
   if (! *strp) {
     *prm2 = strp;
     *prm3 = strp;
+    *prm4 = strp;
     return 1;
   }
 
@@ -850,7 +851,8 @@ chxj_command_parse_take3(const char* arg, char** prm1, char** prm2, char** prm3)
 
   if (! *strp) {
     *prm3 = strp;
-    return 1;
+    *prm4 = strp;
+    return 0;
   }
 
   *strp++ = '\0';
@@ -876,6 +878,34 @@ chxj_command_parse_take3(const char* arg, char** prm1, char** prm2, char** prm3)
   }
   *strp = '\0';
 
+  if (! *strp) {
+    *prm4 = strp;
+    return 0;
+  }
+
+  *strp++ = '\0';
+
+  for (;*strp == ' '||*strp == '\t'; strp++);
+
+  isquoted = 0; 
+  if (*strp == '"') { 
+    isquoted = 1;
+    strp++;
+  }
+  *prm4 = strp;
+  for (; *strp != '\0'; strp++) {
+    if ((isquoted && (*strp == ' ' || *strp == '\t'))
+    ||  (*strp == '\\' && (*(strp+1) == ' ' || *(strp+1) == '\t'))) {
+      strp++;
+      continue;
+    }
+
+    if ((!isquoted && (*strp == ' ' || *strp == '\t'))
+    ||  (isquoted  && *strp == '"'))
+      break;
+  }
+  *strp = '\0';
+
   return 0;
 }
 
@@ -1003,6 +1033,7 @@ cmd_convert_rule(cmd_parms *cmd, void* mconfig, const char *arg)
   char* prm1;
   char* prm2;
   char* prm3;
+  char* prm4;
   int mode;
   char* pstate;
   char* action;
@@ -1024,7 +1055,7 @@ cmd_convert_rule(cmd_parms *cmd, void* mconfig, const char *arg)
   newrule->flags  = 0;
   newrule->action = 0;
 
-  if (chxj_command_parse_take3(arg, &prm1, &prm2, &prm3))
+  if (chxj_command_parse_take4(arg, &prm1, &prm2, &prm3, &prm4))
     return "ChxjConvertRule: bad argument line";
 
   newrule->pattern = apr_pstrdup(cmd->pool, prm1);
@@ -1063,6 +1094,11 @@ cmd_convert_rule(cmd_parms *cmd, void* mconfig, const char *arg)
     newrule->encoding = apr_pstrdup(cmd->pool, prm3);
   else
     newrule->encoding = apr_pstrdup(cmd->pool, "none");
+
+  newrule->pc_flag = CONVRULE_PC_FLAG_OFF_BIT;
+  if (*prm4)
+    if (strcasecmp(CONVRULE_PC_FLAG_ON_CMD, prm4) == 0)
+      newrule->pc_flag = CONVRULE_PC_FLAG_ON_BIT;
   
   return NULL;
 }