[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[mgp-users-jp 00670] mgp-snap 991206 (Re: Re: iso8859-2 ?)



うかいです。

Subject: Forward: [mgp-users-jp 00669] Re: iso8859-2 ?
From: Fumitoshi UKAI <ukai@debian.or.jp>
Message-ID: <87r9h0bap8.wl@linden.jp.hpl.hp.com>
> 西田です。
> 細かいbugをいくつか fixしました。

ありがとうございます。

> あまり時間がとれなかったので、大きな修正はできませんでした。
> とりあえず、fixしたのは以下のものです。もし問題が解決していない場合は
> 教えて下さい。
>
>	1: xfontで iso8859-2を指定すると落ちる 
>		(mgp-users-jp 00652)
>	2: bgimageやbgradを使っている画面をresizeすると落ちる
>		(mgp-users-jp 00654)
>	3: mouse buttonで rakugaki modeを抜けるとdotをうってしまう
>		(mgp-users-jp 00657)

以上のは fix していました。
ただ 以下の patch がないと文字が表示されませんでしたが? (^^;

Index: draw.c
===================================================================
RCS file: /var/cvs/debian/mgp/draw.c,v
retrieving revision 1.1.1.7
retrieving revision 1.1.1.7.2.1
diff -u -r1.1.1.7 -r1.1.1.7.2.1
--- draw.c	1999/12/06 14:41:50	1.1.1.7
+++ draw.c	1999/12/06 15:31:05	1.1.1.7.2.1
@@ -1205,7 +1205,7 @@
 			/* fall through */
 		case MODE_UNKNOWN:
 		case MODE_X:
-break;
+/* break; */
 			char_len = draw_onechar_x(state, code,
 				state->linewidth, 0, char_size[caching],
 				registry, (len == (charset16 ? 2 : 1)) ? 1 : 0);


> それから、現在のmgpの仕様では、truetype fontで扱えるのは、ASCIIと
> 日本語だけです。(Unicode mapを追加すればいいのですが。)

わかりました。
# Linux/glibc2 だと iconv()使えば簡単にできるかなぁ…

あと、Debianパッケージにする時にあてたもろもろのパッチを
なげておきます。

* emgembed.pl も自動生成されるものなので distcleanで削除 (Imakefile.in)
* VFLib2.so を先にチェックしないと失敗する (configure.in)
* /usr/lib にもある libpng.so もチェック (configure.in)
* vflibなフォントがインストールされていなくて vfontcap がそのように
  なっていない場合に mgp -x vflib としても vflib を使おうとして
  動かないのを fix (font.c)
* gs に pnmraw+ がなかったので pnmraw に変更 (mgp.h)
* #define GUNZIP する時は #ifndef GUNZIPの時だと思う (mgp.h)

です。

Index: Imakefile.in
===================================================================
RCS file: /var/cvs/debian/mgp/Imakefile.in,v
retrieving revision 1.1.1.5
retrieving revision 1.1.1.5.4.1
diff -u -r1.1.1.5 -r1.1.1.5.4.1
--- Imakefile.in	1999/11/29 14:57:55	1.1.1.5
+++ Imakefile.in	1999/12/06 15:31:05	1.1.1.5.4.1
@@ -127,7 +127,7 @@
 
 distclean:: clean
 	-/bin/rm -f config.status config.log config.cache ctlwords.h
-	-/bin/rm -f scanner.c grammar.c tokdefs.h mgp.0 mgp2ps.0
+	-/bin/rm -f scanner.c grammar.c tokdefs.h mgp.0 mgp2ps.0 mgpembed.pl
 	-/bin/rm -f contrib/mgp2html.pl contrib/mgp2latex.pl
 	for i in $(SUBDIRS); do \
 		(cd $$i; if [ -f Makefile ]; then make distclean; fi); \
Index: configure.in
===================================================================
RCS file: /var/cvs/debian/mgp/configure.in,v
retrieving revision 1.1.1.5
retrieving revision 1.1.1.5.4.1
diff -u -r1.1.1.5 -r1.1.1.5.4.1
--- configure.in	1999/11/29 14:57:56	1.1.1.5
+++ configure.in	1999/12/06 15:31:05	1.1.1.5.4.1
@@ -145,13 +145,8 @@
 		if test x$shlib2 = x; then
 			$shlib2=no
 		fi
-		if test -d $dir/lib -a -f $dir/lib/$shlib1; then
-			ac_cv_vf_libdir="$dir/lib"
- 			ac_cv_vf_libpath=$shlib1
-		elif test -d $dir/lib -a -f $dir/lib/libVFlib.a; then
-			ac_cv_vf_libdir="$dir/lib"
-			ac_cv_vf_libpath="libVFlib.a"
-		elif test -d $dir/lib -a -f $dir/lib/$shlib2; then
+		# first check vflib2 - ukai 1999/07/17
+		if test -d $dir/lib -a -f $dir/lib/$shlib2; then
 			ac_cv_vf_libname=VFlib2
 			ac_cv_vf_libdir="$dir/lib"
  			ac_cv_vf_libpath=$shlib2
@@ -159,6 +154,12 @@
 			ac_cv_vf_libname=VFlib2
 			ac_cv_vf_libdir="$dir/lib"
 			ac_cv_vf_libpath="libVFlib2.a"
+		elif test -d $dir/lib -a -f $dir/lib/$shlib1; then
+			ac_cv_vf_libdir="$dir/lib"
+ 			ac_cv_vf_libpath=$shlib1
+		elif test -d $dir/lib -a -f $dir/lib/libVFlib.a; then
+			ac_cv_vf_libdir="$dir/lib"
+			ac_cv_vf_libpath="libVFlib.a"
 		fi
 		if test -d $dir/include -a -f $dir/include/VF.h; then
 			ac_cv_vf_hdrdir="$dir/include"
@@ -230,11 +231,15 @@
 	fi
 fi
 
-for i in /usr/pkg /usr/local; do
+for i in /usr/pkg /usr/local /usr; do
 	if test -f $i/include/png.h -a -f $i/lib/libpng.a; then
 		LIBS="$LIBS -L$i/lib"
 		OPTFLAGS="$OPTFLAGS -I$i/include"
-		DEPLIBS="$DEPLIBS $i/lib/libpng.a"
+		if test -f $i/lib/libpng.so; then
+			LIBS="$LIBS -lpng"	
+		else
+			DEPLIBS="$DEPLIBS $i/lib/libpng.a"
+		fi
 		AC_CHECK_LIB(png, png_write_init)
 		AC_DEFINE(USE_PNG)
 		break
Index: font.c
===================================================================
RCS file: /var/cvs/debian/mgp/font.c,v
retrieving revision 1.1.1.4
retrieving revision 1.1.1.4.10.1
diff -u -r1.1.1.4 -r1.1.1.4.10.1
--- font.c	1999/07/18 04:11:39	1.1.1.4
+++ font.c	1999/12/06 15:31:05	1.1.1.4.10.1
@@ -379,6 +379,9 @@
 {
 	static char *prev_vfcap;
 
+	if ((mgp_flag & FL_NOVFLIB)) {
+		return;
+	}
 	if (prev_vfcap != vfcap_name) {
 		/*
 		 * Because the string specified by %vfcap is stored in
@@ -406,6 +409,9 @@
 	if (vfont_fd < 0) {
 		fprintf(stderr, "Can't open vffont %s (vfcap=%s)\n",
 			fontname, vfcap_name);
+#if 1 /* warning message, 1999/09/28 ukai */
+		fprintf(stderr, "If you don't need vffont, try '-x vflib'\n");
+#endif
 		cleanup(-1);
 	}
 }
Index: mgp.h
===================================================================
RCS file: /var/cvs/debian/mgp/mgp.h,v
retrieving revision 1.1.1.5
retrieving revision 1.1.1.5.4.1
diff -u -r1.1.1.5 -r1.1.1.5.4.1
--- mgp.h	1999/11/29 14:57:56	1.1.1.5
+++ mgp.h	1999/12/06 15:31:05	1.1.1.5.4.1
@@ -112,7 +112,9 @@
 #define SHRINK_DELAY	00500
 #define EXEC_DELAY  20000
 
-#define	DEFAULT_GSDEV	"pnmraw+"
+/* Debian's gs doesn't have pnmraw+ device -- ukai */
+/* #define	DEFAULT_GSDEV	"pnmraw+" */
+#define	DEFAULT_GSDEV	"pnmraw"
 
 #define RCFILE		".mgprc"
 
@@ -120,8 +122,8 @@
 #ifndef UUDECODE
 #define	UUDECODE	"/usr/bin/uudecode"
 #endif
-#ifndef UUDECODE
-#define	GUNZIP		"/usr/contrib/bin/gunzip"
+#ifndef GUNZIP
+#define	GUNZIP		"/usr/bin/gunzip"
 #endif
 
 #define MAXPAGE		512

-- 
鵜飼文敏