summaryrefslogtreecommitdiff
path: root/Build/source
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2013-08-11 22:53:04 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2013-08-11 22:53:04 +0000
commit1c1ad254bc2ef588b6e6c7975209d31aa99f3b73 (patch)
tree87c54feffc3bc3acfcae8d6152589c390e1a14a4 /Build/source
parente2563cede9ce7068f20c7f5898d18bcf25e0837c (diff)
Allow file names with 0x5c in (e)pTeX on Windows.
git-svn-id: svn://tug.org/texlive/trunk@31414 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source')
-rw-r--r--Build/source/texk/web2c/eptexdir/ChangeLog4
-rw-r--r--Build/source/texk/web2c/eptexdir/eptex.defines1
-rw-r--r--Build/source/texk/web2c/euptexdir/ChangeLog4
-rw-r--r--Build/source/texk/web2c/euptexdir/euptex.defines1
-rw-r--r--Build/source/texk/web2c/ptexdir/ChangeLog5
-rw-r--r--Build/source/texk/web2c/ptexdir/kanji.h9
-rw-r--r--Build/source/texk/web2c/ptexdir/ptex-base.ch32
-rw-r--r--Build/source/texk/web2c/ptexdir/ptex.defines1
-rw-r--r--Build/source/texk/web2c/uptexdir/ChangeLog5
-rw-r--r--Build/source/texk/web2c/uptexdir/kanji.h4
-rw-r--r--Build/source/texk/web2c/uptexdir/uptex.defines1
11 files changed, 67 insertions, 0 deletions
diff --git a/Build/source/texk/web2c/eptexdir/ChangeLog b/Build/source/texk/web2c/eptexdir/ChangeLog
index a442175ae53..718384997ac 100644
--- a/Build/source/texk/web2c/eptexdir/ChangeLog
+++ b/Build/source/texk/web2c/eptexdir/ChangeLog
@@ -1,3 +1,7 @@
+2013-08-12 TANAKA Takuji <KXD02663@nifty.ne.jp>
+
+ * eptex.defines: Allow file names with 0x5c in (e)pTeX on Windows.
+
2013-06-11 Peter Breitenlohner <peb@mppmu.mpg.de>
Update to e-pTeX 130605 from Hironori Kitagawa.
diff --git a/Build/source/texk/web2c/eptexdir/eptex.defines b/Build/source/texk/web2c/eptexdir/eptex.defines
index 7b23a7f519d..2a58e7b57c0 100644
--- a/Build/source/texk/web2c/eptexdir/eptex.defines
+++ b/Build/source/texk/web2c/eptexdir/eptex.defines
@@ -26,6 +26,7 @@
@define function UCStoUTF8 ();
@define function toUCS ();
+@define function notkanjicharseq ();
@define function checkkanji ();
@define function ischarascii ();
@define function ischarkanji ();
diff --git a/Build/source/texk/web2c/euptexdir/ChangeLog b/Build/source/texk/web2c/euptexdir/ChangeLog
index b597c68e3fb..6de187d01f1 100644
--- a/Build/source/texk/web2c/euptexdir/ChangeLog
+++ b/Build/source/texk/web2c/euptexdir/ChangeLog
@@ -1,3 +1,7 @@
+2013-08-12 TANAKA Takuji <KXD02663@nifty.ne.jp>
+
+ * euptex.defines: Allow file names with 0x5c in (e)pTeX on Windows.
+
2013-06-11 Peter Breitenlohner <peb@mppmu.mpg.de>
Update to e-upTeX 130605 from Hironori Kitagawa.
diff --git a/Build/source/texk/web2c/euptexdir/euptex.defines b/Build/source/texk/web2c/euptexdir/euptex.defines
index cd7947b2859..42d385120cc 100644
--- a/Build/source/texk/web2c/euptexdir/euptex.defines
+++ b/Build/source/texk/web2c/euptexdir/euptex.defines
@@ -32,6 +32,7 @@
@define function UCStoUTF8 ();
@define function toUCS ();
+@define function notkanjicharseq ();
@define function checkkanji ();
@define function ischarascii ();
@define function ischarkanji ();
diff --git a/Build/source/texk/web2c/ptexdir/ChangeLog b/Build/source/texk/web2c/ptexdir/ChangeLog
index 2ac0a23339b..30d0a5ec999 100644
--- a/Build/source/texk/web2c/ptexdir/ChangeLog
+++ b/Build/source/texk/web2c/ptexdir/ChangeLog
@@ -1,3 +1,8 @@
+2013-08-12 TANAKA Takuji <KXD02663@nifty.ne.jp>
+
+ * kanji.h, ptex-base.ch, ptex.defines: Allow file names with 0x5c in
+ (e)pTeX on Windows.
+
2013-06-18 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/ptex.am: Move PTEXENC_RULE to ../Makefile.am.
diff --git a/Build/source/texk/web2c/ptexdir/kanji.h b/Build/source/texk/web2c/ptexdir/kanji.h
index 9c8f43b8601..75482fe4cca 100644
--- a/Build/source/texk/web2c/ptexdir/kanji.h
+++ b/Build/source/texk/web2c/ptexdir/kanji.h
@@ -15,6 +15,15 @@
#define KANJI
#endif
+/* allow file names with 0x5c in (e)pTeX on windows */
+#if defined(WIN32)
+#include <kpathsea/knj.h>
+#define not_kanji_char_seq(a,b) (!(is_cp932_system && isknj(a) && isknj2(b)))
+#else
+#define not_kanji_char_seq(a,b) (1)
+#endif
+#define notkanjicharseq not_kanji_char_seq
+
#if !defined(WIN32)
extern int sjisterminal;
#endif
diff --git a/Build/source/texk/web2c/ptexdir/ptex-base.ch b/Build/source/texk/web2c/ptexdir/ptex-base.ch
index 5bac4890118..fabc9971fb1 100644
--- a/Build/source/texk/web2c/ptexdir/ptex-base.ch
+++ b/Build/source/texk/web2c/ptexdir/ptex-base.ch
@@ -114,6 +114,7 @@ var k,@!l:KANJI_code; {small indices or counters}
pseudoprinting}
@!trick_buf2:array[0..ssup_error_line] of 0..2; {pTeX: buffer for KANJI}
@!kcode_pos: 0..2; {pTeX: denotes whether first byte or second byte of KANJI}
+@!prev_char: ASCII_code;
@z
@x [5.55] l.1519 - pTeX: Initialize the kcode_pos
@@ -2406,6 +2407,37 @@ else if (cur_cmd>active_char)or(cur_chr>255) then
end;
@z
+@x pTeX for Windows, treat filename with 0x5c
+@p procedure begin_name;
+begin area_delimiter:=0; ext_delimiter:=0; quoted_filename:=false;
+end;
+@y
+@p procedure begin_name;
+begin area_delimiter:=0; ext_delimiter:=0; quoted_filename:=false; prev_char:=0;
+end;
+@z
+
+@x pTeX for Windows, treat filename with 0x5c
+else begin str_room(1); append_char(c); {contribute |c| to the current string}
+ if IS_DIR_SEP(c) then
+ begin area_delimiter:=cur_length; ext_delimiter:=0;
+ end
+ else if c="." then ext_delimiter:=cur_length;
+ more_name:=true;
+ end;
+end;
+@y
+else begin str_room(1); append_char(c); {contribute |c| to the current string}
+ if (IS_DIR_SEP(c)and(not_kanji_char_seq(prev_char,c))) then
+ begin area_delimiter:=cur_length; ext_delimiter:=0;
+ end
+ else if c="." then ext_delimiter:=cur_length;
+ more_name:=true;
+ end;
+ prev_char:=c;
+end;
+@z
+
@x [29.526] l.10668 - pTeX: scan file name
loop@+begin if (cur_cmd>other_char)or(cur_chr>255) then {not a character}
begin back_input; goto done;
diff --git a/Build/source/texk/web2c/ptexdir/ptex.defines b/Build/source/texk/web2c/ptexdir/ptex.defines
index b8729a1839b..5cffc9cbe0e 100644
--- a/Build/source/texk/web2c/ptexdir/ptex.defines
+++ b/Build/source/texk/web2c/ptexdir/ptex.defines
@@ -20,6 +20,7 @@
@define function fromSJIS ();
@define function fromKUTEN ();
+@define function notkanjicharseq ();
@define function checkkanji ();
@define function ischarascii ();
@define function ischarkanji ();
diff --git a/Build/source/texk/web2c/uptexdir/ChangeLog b/Build/source/texk/web2c/uptexdir/ChangeLog
index faeb71a0ad1..0c46092ccc4 100644
--- a/Build/source/texk/web2c/uptexdir/ChangeLog
+++ b/Build/source/texk/web2c/uptexdir/ChangeLog
@@ -1,3 +1,8 @@
+2013-08-12 TANAKA Takuji <KXD02663@nifty.ne.jp>
+
+ * kanji.h, uptex.defines: Allow file names with 0x5c
+ in (e)pTeX on Windows.
+
2013-06-28 Peter Breitenlohner <peb@mppmu.mpg.de>
* am/uptex.am: upbibtex-web2c also depends on web2c/cvtbib.sed.
diff --git a/Build/source/texk/web2c/uptexdir/kanji.h b/Build/source/texk/web2c/uptexdir/kanji.h
index 8540869c5c7..a00f41d9eff 100644
--- a/Build/source/texk/web2c/uptexdir/kanji.h
+++ b/Build/source/texk/web2c/uptexdir/kanji.h
@@ -15,6 +15,10 @@
#define KANJI
#endif
+/* (e)upTeX does not allow file names with 0x5c */
+#define not_kanji_char_seq(a,b) (1)
+#define notkanjicharseq not_kanji_char_seq
+
#if !defined(WIN32)
extern int sjisterminal;
#endif
diff --git a/Build/source/texk/web2c/uptexdir/uptex.defines b/Build/source/texk/web2c/uptexdir/uptex.defines
index 28b644e35ff..11d8db3afdf 100644
--- a/Build/source/texk/web2c/uptexdir/uptex.defines
+++ b/Build/source/texk/web2c/uptexdir/uptex.defines
@@ -32,6 +32,7 @@
@define function fromKUTEN ();
@define function fromUCS ();
+@define function notkanjicharseq ();
@define function checkkanji ();
@define function ischarascii ();
@define function ischarkanji ();