debian/0000755000000000000000000000000011775177360007204 5ustar debian/patches/0000755000000000000000000000000011775177325010634 5ustar debian/patches/0001-gcc-ftbfs-fixes.patch0000644000000000000000000001236111764444453015205 0ustar From: Debian Chinese Team Date: Sat, 9 Jun 2012 01:57:06 +0800 Subject: [PATCH] gcc ftbfs fixes --- src/display/fbvgaplanes.cpp | 1 + src/display/vgadev.cpp | 1 + src/global.h | 2 ++ src/graphdev.cpp | 2 ++ src/inputclient.cpp | 1 + src/inputmanager.cpp | 2 ++ src/inputmanager.h | 1 + src/winime.cpp | 8 ++++---- src/winime.h | 8 ++++---- 9 files changed, 18 insertions(+), 8 deletions(-) diff --git a/src/display/fbvgaplanes.cpp b/src/display/fbvgaplanes.cpp index d4729af..5647852 100644 --- a/src/display/fbvgaplanes.cpp +++ b/src/display/fbvgaplanes.cpp @@ -22,6 +22,7 @@ #ifdef USING_VGA #include #include +#include "global.h" #include "debug.h" #include "fbvgaplanes.h" diff --git a/src/display/vgadev.cpp b/src/display/vgadev.cpp index 3308f69..c02354f 100644 --- a/src/display/vgadev.cpp +++ b/src/display/vgadev.cpp @@ -33,6 +33,7 @@ #include #include #include +#include "global.h" #include "debug.h" #include "vgadev.h" #include "lrmi.h" diff --git a/src/global.h b/src/global.h index 18da59f..d1fb0bd 100644 --- a/src/global.h +++ b/src/global.h @@ -27,6 +27,8 @@ #define _(String) gettext (String) #define gettext_noop(String) (String) +#include + #include "graphdev.h" #include "hzdecoder.h" //class Console; diff --git a/src/graphdev.cpp b/src/graphdev.cpp index 787d086..15a3262 100644 --- a/src/graphdev.cpp +++ b/src/graphdev.cpp @@ -25,7 +25,9 @@ #include #include #include +#include #include +#include #include "debug.h" #include "display/fbdev.h" diff --git a/src/inputclient.cpp b/src/inputclient.cpp index ee0dd1b..7b77ae8 100644 --- a/src/inputclient.cpp +++ b/src/inputclient.cpp @@ -16,6 +16,7 @@ * * ***************************************************************************/ +#include #include "inputclient.h" Console* InputClient::mpCon = NULL; diff --git a/src/inputmanager.cpp b/src/inputmanager.cpp index 4a4e0d6..11f17ad 100644 --- a/src/inputmanager.cpp +++ b/src/inputmanager.cpp @@ -23,7 +23,9 @@ using namespace std; #include #include +#include #include +#include #include "global.h" #include "debug.h" diff --git a/src/inputmanager.h b/src/inputmanager.h index dccc8d7..decfdb3 100644 --- a/src/inputmanager.h +++ b/src/inputmanager.h @@ -26,6 +26,7 @@ using namespace std; #include #include +#include #include "mouse.h" #if defined(__FreeBSD__) diff --git a/src/winime.cpp b/src/winime.cpp index 0c52393..ee1500e 100644 --- a/src/winime.cpp +++ b/src/winime.cpp @@ -74,7 +74,7 @@ bool WinIme::InCodeSet(char c) const { return false; } //add a word to candilist then push rp forward -void WinIme::AddCandilist(char *&rp,unsigned int& buflen) { +void WinIme::AddCandilist(char *&rp,unsigned long& buflen) { assert(mpList->mCount < 10); assert(!IsHzCode1(*rp)); //*rp is last matched latter @@ -163,7 +163,7 @@ int WinIme::MatchWord(char *p, int len, int offset) { count--; break; } - AddCandilist(t,(unsigned int&)buflen); + AddCandilist(t,(unsigned long&)buflen); } //search next word else { if (len == 1) //special for first char @@ -250,7 +250,7 @@ int WinIme::Search(char c) { if (p == (char *) 0xffffffff) found = false; - p = (unsigned int) p + mpText; + p = (unsigned long) p + mpText; } //2nd level index else if (mNum == 1) { int l = strlen(mHead.mCodeSet); @@ -271,7 +271,7 @@ int WinIme::Search(char c) { if (p == (char *) 0xffffffff) found = false; - p = (unsigned int) p + mpText; + p = (unsigned long) p + mpText; } else if (mNum < mHead.mMaxCodes) { p = mpOffset[mNum - 1]; if (p == (char *) 0xffffffff) diff --git a/src/winime.h b/src/winime.h index c2f51ab..c7a57de 100644 --- a/src/winime.h +++ b/src/winime.h @@ -45,7 +45,7 @@ class WinIme { string GetName(); bool InCodeSet(char c) const; int Search(string& s, int start); - void SetCandilist(Candilist* p,unsigned len = 1000) { + void SetCandilist(Candilist* p,unsigned long len = 1000) { mpList = p; mCandilistBufLen = len; } @@ -69,7 +69,7 @@ class WinIme { return c >= 0xA1 && c <= 0xFE; } - void AddCandilist(char*& p,unsigned& buflen); + void AddCandilist(char*& p,unsigned long& buflen); void SkipNext(char*& rp); int MatchWord(char* p, int len, int offset); bool IsGB2312(char* p); @@ -87,8 +87,8 @@ class WinIme { char** mpIndex2; char* mpText; char* mpCur; //current search position - unsigned int mBufSize; - unsigned int mCandilistBufLen; + unsigned long mBufSize; + unsigned long mCandilistBufLen; WinImeHead mHead; }; #endif -- debian/patches/0006-enable-build-platforms.patch0000644000000000000000000002466011775177325016600 0ustar From: Aron Xu Date: Sat, 9 Jun 2012 01:57:07 +0800 Subject: [PATCH] enable build platforms --- configure.in | 2 +- src/console.cpp | 2 +- src/console.h | 3 ++- src/display/fbdev.h | 7 +++++++ src/display/fbvgaplanes.cpp | 14 ++++++++++---- src/encfilter.c | 1 + src/graphdev.cpp | 2 +- src/graphdev.h | 2 +- src/inputmanager.cpp | 2 +- src/inputmanager.h | 7 ++++--- src/main.cpp | 3 ++- src/mouse.cpp | 12 ++++++------ src/mouse.h | 13 ++++--------- src/zhcon.cpp | 22 ++++++++++++++-------- 14 files changed, 55 insertions(+), 37 deletions(-) --- a/configure.in +++ b/configure.in @@ -28,7 +28,7 @@ *-*-linux*) echo "Linux detected" ZHCON_ARCH="Linux";; -i?86-*-freebsd*) +*-*-*freebsd*) echo "FreeBsd detected" ZHCON_ARCH="FreeBSD" dnl gcc 2.95 on freebsd does not search /usr/local/include --- a/src/console.cpp +++ b/src/console.cpp @@ -1090,7 +1090,7 @@ // User settable table: what characters are to be considered alphabetic? // 256 bits -__u32 Console::mInWordLut[8] = { +uint32_t Console::mInWordLut[8] = { 0x00000000, // control chars 0x03FF0000, // digits 0x87FFFFFE, // uppercase and '_' --- a/src/console.h +++ b/src/console.h @@ -22,6 +22,7 @@ /** *@author ejoy */ +#include #include "global.h" #include "basefont.h" #include "window.h" @@ -143,7 +144,7 @@ void SelHighlight(const int begin, const int end); void SelPointer(const int offset); int InWord(const unsigned char c); - static __u32 mInWordLut[8]; + static uint32_t mInWordLut[8]; int AtColEdge(const int p); int mSelStart; // cleared by clear_selection --- a/src/display/fbdev.h +++ b/src/display/fbdev.h @@ -20,6 +20,13 @@ #ifndef FBDEV_H #define FBDEV_H +#include +#ifndef __ASSEMBLY__ + typedef uint8_t __u8; + typedef uint16_t __u16; + typedef uint32_t __u32; +#endif + #include "basefont.h" #include "graphdev.h" --- a/src/display/fbvgaplanes.cpp +++ b/src/display/fbvgaplanes.cpp @@ -28,7 +28,7 @@ #if defined(linux) #include -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #include static inline void outb(char value, unsigned short port) { @@ -58,7 +58,7 @@ #define mb() __asm__ __volatile__ ("lock; addl $0,0(%%esp)": : :"memory") #define rmb() mb() #define wmb() __asm__ __volatile__ ("": : :"memory") -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #define mb() #define rmb() #define wmb() @@ -130,9 +130,12 @@ #if defined(linux) ioperm(GRAPHICS_ADDR_REG, 1, 1); ioperm(GRAPHICS_DATA_REG, 1, 1); -#elif defined(__FreeBSD__) +#elif (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && defined(__i386__) i386_set_ioperm(GRAPHICS_ADDR_REG, 1, 1); i386_set_ioperm(GRAPHICS_DATA_REG, 1, 1); +#elif (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && defined(__x86_64__) + amd64_set_ioperm(GRAPHICS_ADDR_REG, 1, 1); + amd64_set_ioperm(GRAPHICS_DATA_REG, 1, 1); #endif SetDefaultMode(); } @@ -141,9 +144,12 @@ #if defined(linux) ioperm(GRAPHICS_ADDR_REG, 1, 0); ioperm(GRAPHICS_DATA_REG, 1, 0); -#elif defined(__FreeBSD__) +#elif (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && defined(__i386__) i386_set_ioperm(GRAPHICS_ADDR_REG, 1, 0); i386_set_ioperm(GRAPHICS_DATA_REG, 1, 0); +#elif (defined(__FreeBSD__) || defined(__FreeBSD_kernel__)) && defined(__x86_64__) + amd64_set_ioperm(GRAPHICS_ADDR_REG, 1, 0); + amd64_set_ioperm(GRAPHICS_DATA_REG, 1, 0); #endif } --- a/src/encfilter.c +++ b/src/encfilter.c @@ -37,6 +37,7 @@ #include #include #include +#include #include "encfilter.h" --- a/src/graphdev.cpp +++ b/src/graphdev.cpp @@ -32,7 +32,7 @@ #include "display/fbdev.h" #include "display/vgadev.h" -#if defined(linux) || defined(__FreeBSD__) +#if defined(linux) || defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #ifdef HAVE_GGI_LIB #include "display/libggi.h" #endif --- a/src/graphdev.h +++ b/src/graphdev.h @@ -21,7 +21,7 @@ #define GRPATHDEV_H #if defined(linux) #include -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #include "utypes.h" #endif #include --- a/src/inputmanager.cpp +++ b/src/inputmanager.cpp @@ -670,7 +670,7 @@ } } -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #include //#include #include --- a/src/inputmanager.h +++ b/src/inputmanager.h @@ -28,10 +28,11 @@ #include #include -#include "mouse.h" -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + #include #include #endif +#include "mouse.h" #define BUFSIZE 8192 class Zhcon; @@ -105,7 +106,7 @@ }; static KeyMap mKDSysMap[]; static KeyMap mKDInputMap[]; -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) static keymap_t mKDSysOld, mKDSysNew; static keymap_t mKDInputOld, mKDInputNew; #endif --- a/src/main.cpp +++ b/src/main.cpp @@ -31,9 +31,10 @@ #include #if defined(linux) #include -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) //#include #include + #include #endif #include "zhcon.h" #include "global.h" --- a/src/mouse.cpp +++ b/src/mouse.cpp @@ -21,7 +21,7 @@ #include "mouse.h" #include -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) Mouse* Mouse::pMouse = NULL; void Mouse::SignalProcess(int signo) { if (Mouse::pMouse != NULL) pMouse->Process(); @@ -29,7 +29,7 @@ #endif Mouse::Mouse() { -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) Mouse::pMouse = this; #endif mFd = -1; @@ -42,7 +42,7 @@ Mouse::~Mouse() { Close(); -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) Mouse::pMouse = NULL; #endif } @@ -90,7 +90,7 @@ event.vc,event.modifiers); printf("The button mask is 0x%02X\n",event.buttons); */ -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) memset(&mMiPrev, 0, sizeof(mMiPrev)); memset(&mTV1, 0, sizeof(mTV1)); memset(&mTV2, 0, sizeof(mTV2)); @@ -113,7 +113,7 @@ return; while (Gpm_Close()); // close all mouse stack mFd = -1; -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) signal(SIGUSR2, SIG_DFL); #endif } @@ -217,7 +217,7 @@ return; } } /* switch above */ -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) struct mouse_info mi; mi.operation = MOUSE_GETINFO; if (ioctl(mConFd, CONS_MOUSECTL, &mi) < 0) { --- a/src/mouse.h +++ b/src/mouse.h @@ -25,13 +25,8 @@ #ifdef HAVE_GPM_H #include -#elif defined(__FreeBSD__) - #if __FreeBSD__ < 5 - #include - #else - #include - #endif - +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) + #include #include //#include #include @@ -41,7 +36,7 @@ class Mouse { public: -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) static void SignalProcess(int signo); static Mouse* pMouse; #endif @@ -65,7 +60,7 @@ private: #ifdef HAVE_GPM_H Gpm_Connect mConn; -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) struct mouse_info mMiPrev; int mClicks; struct timeval mTV1; --- a/src/zhcon.cpp +++ b/src/zhcon.cpp @@ -30,14 +30,20 @@ #include #include #include -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #include //#include #include - #include + #if defined(__FreeBSD_kernel__) + #include + #else + #include + #endif #define TCSETA TIOCSETA #endif +#include + #include #include #include @@ -322,7 +328,7 @@ sigaction(SIGFPE, &act, NULL); VtSignalClean(); -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) ioctl(0, VT_RELDISP, 1); #endif @@ -338,7 +344,7 @@ // restore console blanking #if defined(linux) write(mConFd, "\033[9;10]",7); // default 10 minutes -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) int BlankTime = 5; // default 5 minutes ioctl(mConFd, CONS_BLANKTIME, &BlankTime); #endif @@ -406,7 +412,7 @@ t.c_cc[VTIME] = 0; #if defined(linux) t.c_line = 0; -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) t.c_cc[VDISCARD] = _POSIX_VDISABLE; t.c_cc[VLNEXT] = _POSIX_VDISABLE; t.c_cc[VSTART] = _POSIX_VDISABLE; @@ -428,7 +434,7 @@ #if defined(linux) // see kernel's console.c, function setterm_command write(mConFd, "\033[9;0]",6); -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) // man splash // see /usr/src/sys/dev/syscons/syscons.c int BlankTime = 0; @@ -639,7 +645,7 @@ //SetEncode(GB2312,GB2312); //FreeBsd use zh_CN.EUC instead of zh_CN.GB2312 //a broken locale? workaround it -#if defined (__FreeBSD__) +#if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) setenv("LC_CTYPE", "zh_CN.EUC", 1); #else if (mArgs.utf8_flag) @@ -691,7 +697,7 @@ bool r; #if defined(linux) r = GraphDev::Open(mArgs.drv_arg); -#elif defined(__FreeBSD__) +#elif defined(__FreeBSD__) || defined(__FreeBSD_kernel__) int xres = f.GetOption(string("x_resolution"), 640); int yres = f.GetOption(string("y_resolution"), 480); int depth = f.GetOption(string("color_depth"), 4); debian/patches/0008-default-to-utf8.patch0000644000000000000000000000241311764444453015167 0ustar From: Aron Xu Date: Sat, 9 Jun 2012 02:42:57 +0800 Subject: [PATCH] default to utf8 --- src/cmdline.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/cmdline.c b/src/cmdline.c index 5529683..179d7db 100644 --- a/src/cmdline.c +++ b/src/cmdline.c @@ -65,7 +65,7 @@ cmdline_parser_print_help (void) printf("\nUsage: zhcon [OPTIONS]... [FILES]...\n\n"); printf("%s\n"," -h, --help Print help and exit"); printf("%s\n"," -V, --version Print version and exit"); - printf("%s\n"," --utf8 use iconv filter to convert UTF-8 stream from/to system \n encoding (default=off)"); + printf("%s\n"," --utf8 use iconv filter to convert UTF-8 stream from/to system \n encoding (default=on)"); printf("%s\n"," --drv=STRING specify video driver (auto, fb, ggi, vga) (default=`auto')"); } @@ -219,7 +219,7 @@ cmdline_parser_internal (int argc, char * const *argv, struct gengetopt_args_inf static struct option long_options[] = { { "help", 0, NULL, 'h' }, { "version", 0, NULL, 'V' }, - { "utf8", 0, NULL, 0 }, + { "utf8", 0, NULL, 1 }, { "drv", 1, NULL, 0 }, { NULL, 0, NULL, 0 } }; -- debian/patches/0005-glibc-iconv-extension.patch0000644000000000000000000000172211764444453016444 0ustar From: Aron Xu Date: Sat, 9 Jun 2012 01:57:07 +0800 Subject: [PATCH] glibc iconv extension --- src/encfilter.c | 15 +++++++++++++++ 1 files changed, 15 insertions(+), 0 deletions(-) diff --git a/src/encfilter.c b/src/encfilter.c index 6964245..fa879fe 100644 --- a/src/encfilter.c +++ b/src/encfilter.c @@ -62,6 +62,21 @@ void CleanupEncodingFilter(void) int SetupEncodingFilter(const char* sysCoding) { +#ifdef __GLIBC__ + if (! strstr(sysCoding, "//TRANSLIT")) { + char *sysCodingTranslit; + + if ((sysCodingTranslit = malloc(strlen(sysCoding) + strlen("//TRANSLIT") + 1))) { + int ret; + + sprintf(sysCodingTranslit, "%s%s", sysCoding, "//TRANSLIT"); + ret = SetupEncodingFilter(sysCodingTranslit); + free((void *) sysCodingTranslit); + return ret; + } + } +#endif + assert(UseEncodingFilter); /* printf("setting utf8 filter for %s\n", sysCoding);*/ -- debian/patches/0007-better-jp-and-ko-handling.patch0000644000000000000000000000566511764462334017075 0ustar From: Aron Xu Date: Sat, 9 Jun 2012 02:42:21 +0800 Subject: [PATCH] better jp and ko handling --- doc/zhcon.1.in | 4 ++-- src/encfilter.c | 4 ++++ src/iconv_string.c | 6 ++++++ src/zhcon.conf | 2 +- src/zhcon.cpp | 2 +- 5 files changed, 14 insertions(+), 4 deletions(-) diff --git a/doc/zhcon.1.in b/doc/zhcon.1.in index 5758410..e45f1a0 100644 --- a/doc/zhcon.1.in +++ b/doc/zhcon.1.in @@ -18,7 +18,7 @@ UCDOS for M$\-DOG. * Full support for Linux FrameBuffer device(from 640x480x8bpp to 1024x768x32bpp) -* Multiple language support (GB2312, GBK, BIG5, JIS, KSCM) +* Multiple language support (GB2312, GBK, BIG5, JIS, KSC) * Gpm mouse support under GNU/Linux (in progress) @@ -63,7 +63,7 @@ CTRL_F3: set encode to BIG5 .br CTRL_F4: set encode to JIS .br -CTRL_F5: set encode to KSCM +CTRL_F5: set encode to KSC .br CTRL_F7: toggle between nativebar and overspot input style .br diff --git a/src/encfilter.c b/src/encfilter.c index 6351e8e..6bba2f2 100644 --- a/src/encfilter.c +++ b/src/encfilter.c @@ -63,6 +63,10 @@ void CleanupEncodingFilter(void) int SetupEncodingFilter(const char* sysCoding) { + /* For better support of JP and KR. */ + if(!strcmp(sysCoding, "jis")) sysCoding = "EUC-JP"; + if(!strcmp(sysCoding, "ksc")) sysCoding = "EUC-KR"; + #ifdef __GLIBC__ if (! strstr(sysCoding, "//TRANSLIT")) { char *sysCodingTranslit; diff --git a/src/iconv_string.c b/src/iconv_string.c index f2c4b52..11249ad 100644 --- a/src/iconv_string.c +++ b/src/iconv_string.c @@ -14,6 +14,12 @@ int iconv_string (const char* tocode, const char* fromcode, const char* start, const char* end, char** resultp, size_t* lengthp) { + /* For better support for JP and KR. */ + if (!strcmp(tocode, "ksc")) tocode = "EUC-KR"; + if (!strcmp(fromcode, "ksc")) fromcode = "EUC-KR"; + if (!strcmp(tocode, "jis")) tocode = "EUC-JP"; + if (!strcmp(fromcode, "jis")) fromcode = "EUC-JP"; + iconv_t cd = iconv_open(tocode,fromcode); size_t length; char* result; diff --git a/src/zhcon.conf b/src/zhcon.conf index f9dc7c9..2328c49 100644 --- a/src/zhcon.conf +++ b/src/zhcon.conf @@ -8,7 +8,7 @@ uniconpath = /usr/lib/unicon/ #defaultencode: default encoding can be :gb2312,gbk,big5,jis,ksc -defaultencode = gb2312 +defaultencode = gbk #autoencode: auto detect current Chinese encoding(GB2312 or BIG5) #when autoencode is set zhcon will try to detect current Chinese encoding diff --git a/src/zhcon.cpp b/src/zhcon.cpp index f8a960f..e08fa32 100644 --- a/src/zhcon.cpp +++ b/src/zhcon.cpp @@ -673,7 +673,7 @@ void Zhcon::InitLocale(ConfigFile& f){ } else if (s == "ksc") { //SetEncode(KSC,KSC); setenv("LC_CTYPE", "ko", 1); - mDefaultEncode = GBK; + mDefaultEncode = KSC; } else { throw runtime_error("unable to set default encode!"); } -- debian/patches/0003-use-destdir.patch0000644000000000000000000000737311764444453014474 0ustar From: Aron Xu Date: Sat, 9 Jun 2012 01:57:06 +0800 Subject: [PATCH] use destdir --- Makefile.am | 2 +- configure.in | 3 ++- doc/Makefile.am | 6 +++--- font/Makefile.am | 6 +++--- input/Makefile.am | 6 +++--- src/Makefile.am | 8 ++++---- src/zhcon.cpp | 2 +- 7 files changed, 17 insertions(+), 16 deletions(-) diff --git a/Makefile.am b/Makefile.am index 0d95335..e8ad59d 100644 --- a/Makefile.am +++ b/Makefile.am @@ -1,5 +1,5 @@ AUTOMAKE_OPTIONS = foreign EXTRA_DIST = README.utf8 README.BSD README.gpm bootstrap -SUBDIRS = src doc input font debian tools +SUBDIRS = src doc input font tools diff --git a/configure.in b/configure.in index debe13a..c6b9b11 100644 --- a/configure.in +++ b/configure.in @@ -184,10 +184,11 @@ if test "$useggi" = 'yes';then AC_DEFINE(HAVE_GGI_LIB) fi +AC_DEFINE_UNQUOTED([ZHCON_CONF], ["`eval echo $sysconfdir/zhcon.conf`"],[Description]) + AC_OUTPUT([Makefile doc/Makefile doc/zhcon.1 - debian/Makefile tools/Makefile font/Makefile input/Makefile diff --git a/doc/Makefile.am b/doc/Makefile.am index 3cc1523..6a23603 100644 --- a/doc/Makefile.am +++ b/doc/Makefile.am @@ -3,8 +3,8 @@ EXTRA_DIST = zhcon.1.in poem.big5 poem.gb poem.gb.utf8 bpsf.txt manual.tex manual.dvi manual.ps README.html default.css html.tar.gz install-data-local: - $(mkinstalldirs) $(mandir)/man1/ - $(INSTALL_DATA) $(top_builddir)/doc/zhcon.1 $(mandir)/man1/zhcon.1 + $(mkinstalldirs) $(DESTDIR)$(mandir)/man1/ + $(INSTALL_DATA) $(top_builddir)/doc/zhcon.1 $(DESTDIR)$(mandir)/man1/zhcon.1 uninstall-local: - -rm -f $(mandir)/man1/zhcon.1 + -rm -f $(DESTDIR)$(mandir)/man1/zhcon.1 diff --git a/font/Makefile.am b/font/Makefile.am index bf1853e..a73869a 100644 --- a/font/Makefile.am +++ b/font/Makefile.am @@ -1,8 +1,8 @@ EXTRA_DIST = *.bpsf install-data-local: - $(mkinstalldirs) $(libdir)/zhcon/font/ - $(INSTALL_DATA) $(srcdir)/*.bpsf $(libdir)/zhcon/font/ + $(mkinstalldirs) $(DESTDIR)$(libdir)/zhcon/font/ + $(INSTALL_DATA) $(srcdir)/*.bpsf $(DESTDIR)$(libdir)/zhcon/font/ uninstall-local: - -rm -f $(libdir)/zhcon/font/*.bpsf + -rm -f $(DESTDIR)$(libdir)/zhcon/font/*.bpsf diff --git a/input/Makefile.am b/input/Makefile.am index ff6b568..718711d 100644 --- a/input/Makefile.am +++ b/input/Makefile.am @@ -1,8 +1,8 @@ EXTRA_DIST = *.mb install-data-local: - $(mkinstalldirs) $(libdir)/zhcon/input/ - $(INSTALL_DATA) $(srcdir)/*.mb $(libdir)/zhcon/input/ + $(mkinstalldirs) $(DESTDIR)$(libdir)/zhcon/input/ + $(INSTALL_DATA) $(srcdir)/*.mb $(DESTDIR)$(libdir)/zhcon/input/ uninstall-local: - -rm -f $(libdir)/zhcon/input/*.mb + -rm -f $(DESTDIR)$(libdir)/zhcon/input/*.mb diff --git a/src/Makefile.am b/src/Makefile.am index 78d9f0b..fb1d85c 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -8,14 +8,14 @@ zhcon_LDADD = display/libdisplay.a SUBDIRS = display install-exec-local: - chmod 4755 $(bindir)/zhcon + chmod 4755 $(DESTDIR)$(bindir)/zhcon install-data-local: - $(mkinstalldirs) $(prefix)/etc - $(INSTALL_DATA) $(srcdir)/zhcon.conf $(prefix)/etc/zhcon.conf + $(mkinstalldirs) $(DESTDIR)/etc + $(INSTALL_DATA) $(srcdir)/zhcon.conf $(DESTDIR)/etc/zhcon.conf uninstall-local: - -rm -f $(prefix)/etc/zhcon.conf + -rm -f $(DESTDIR)/etc/zhcon.conf # set the include path found by configure INCLUDES= $(all_includes) diff --git a/src/zhcon.cpp b/src/zhcon.cpp index 672ae5c..9bd89b9 100644 --- a/src/zhcon.cpp +++ b/src/zhcon.cpp @@ -123,7 +123,7 @@ void Zhcon::Init() { string cfgfile = getenv("HOME"); cfgfile += "/.zhconrc"; if (access(cfgfile.c_str(), R_OK) != 0) - cfgfile = PREFIX "/etc/zhcon.conf"; + cfgfile = ZHCON_CONF; //for debug,a pause enable us to attach zhcon's pid in gdb //char c;cin>>c; -- debian/patches/0004-lc_ctype-instead-of-lc_all.patch0000644000000000000000000000416311764444453017314 0ustar From: Aron Xu Date: Sat, 9 Jun 2012 01:57:06 +0800 Subject: [PATCH] lc_ctype instead of lc_all --- src/zhcon.cpp | 20 ++++++++++---------- 1 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/zhcon.cpp b/src/zhcon.cpp index 9bd89b9..98b083e 100644 --- a/src/zhcon.cpp +++ b/src/zhcon.cpp @@ -358,7 +358,7 @@ void Zhcon::CleanUp() { if (mArgs.utf8_flag) CleanupEncodingFilter(); - setenv("LC_ALL", mOldLocale.c_str(), 1); + setenv("LC_CTYPE", mOldLocale.c_str(), 1); } char Zhcon::mCapBuf[512] = {0}; @@ -640,33 +640,33 @@ void Zhcon::InitLocale(ConfigFile& f){ //FreeBsd use zh_CN.EUC instead of zh_CN.GB2312 //a broken locale? workaround it #if defined (__FreeBSD__) - setenv("LC_ALL", "zh_CN.EUC", 1); + setenv("LC_CTYPE", "zh_CN.EUC", 1); #else if (mArgs.utf8_flag) - setenv("LC_ALL", "zh_CN.UTF-8", 1); + setenv("LC_CTYPE", "zh_CN.UTF-8", 1); else - setenv("LC_ALL", "zh_CN.GB2312", 1); + setenv("LC_CTYPE", "zh_CN.GB2312", 1); #endif mDefaultEncode = GB2312; } else if (s == "gbk") { if (mArgs.utf8_flag) - setenv("LC_ALL", "zh_CN.UTF-8", 1); + setenv("LC_CTYPE", "zh_CN.UTF-8", 1); else - setenv("LC_ALL", "zh_CN.GBK", 1); + setenv("LC_CTYPE", "zh_CN.GBK", 1); mDefaultEncode = GBK; } else if (s == "big5") { if (mArgs.utf8_flag) - setenv("LC_ALL", "zh_TW.UTF-8", 1); + setenv("LC_CTYPE", "zh_TW.UTF-8", 1); else - setenv("LC_ALL", "zh_TW.Big5", 1); + setenv("LC_CTYPE", "zh_TW.Big5", 1); mDefaultEncode = BIG5; } else if (s == "jis") { //SetEncode(JIS,JIS); - setenv("LC_ALL", "ja.JIS", 1); + setenv("LC_CTYPE", "ja.JIS", 1); mDefaultEncode = JIS; } else if (s == "ksc") { //SetEncode(KSC,KSC); - setenv("LC_ALL", "ko", 1); + setenv("LC_CTYPE", "ko", 1); mDefaultEncode = GBK; } else { throw runtime_error("unable to set default encode!"); -- debian/patches/0002-debian-561491-fix-x-mask.patch0000644000000000000000000000140411764444453016203 0ustar From: Debian Chinese Team Date: Sat, 9 Jun 2012 01:57:06 +0800 Subject: [PATCH] debian 561491 fix x mask --- src/display/lrmi.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/src/display/lrmi.c b/src/display/lrmi.c index 85c6fe6..5c74260 100644 --- a/src/display/lrmi.c +++ b/src/display/lrmi.c @@ -33,6 +33,13 @@ This software has NO WARRANTY. Use it at your own risk. #include "lrmi.h" +#if defined(__linux__) && !defined(TF_MASK) + #define TF_MASK X86_EFLAGS_TF + #define IF_MASK X86_EFLAGS_IF + #define VIF_MASK X86_EFLAGS_VIF + #define IOPL_MASK X86_EFLAGS_IOPL +#endif + #define REAL_MEM_BASE ((void *)0x10000) #define REAL_MEM_SIZE 0x10000 #define REAL_MEM_BLOCKS 0x100 -- debian/patches/series0000644000000000000000000000037711764444453012055 0ustar 0001-gcc-ftbfs-fixes.patch 0002-debian-561491-fix-x-mask.patch 0003-use-destdir.patch 0004-lc_ctype-instead-of-lc_all.patch 0005-glibc-iconv-extension.patch 0006-enable-build-platforms.patch 0007-better-jp-and-ko-handling.patch 0008-default-to-utf8.patch debian/zhcon.manpages0000644000000000000000000000001711764437515012037 0ustar debian/zhcon.1 debian/Makefile.am0000644000000000000000000000015411764437515011237 0ustar EXTRA_DIST = changelog conffiles config control copyright dirs docs postinst README.Debian rules templates debian/docs0000644000000000000000000000013011764437515010050 0ustar README README.utf8 THANKS TODO doc/bpsf.txt doc/manual.dvi doc/manual.ps doc/manual.tex debian/Makefile.in0000644000000000000000000002162211764446475011260 0ustar # Makefile.in generated by automake 1.9.2 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = debian DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ BUILD_INCLUDED_LIBINTL = @BUILD_INCLUDED_LIBINTL@ CATOBJEXT = @CATOBJEXT@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CXX = @CXX@ CXXCPP = @CXXCPP@ CXXDEPMODE = @CXXDEPMODE@ CXXFLAGS = @CXXFLAGS@ CYGPATH_W = @CYGPATH_W@ DATADIRNAME = @DATADIRNAME@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GENCAT = @GENCAT@ GLIBC21 = @GLIBC21@ GMSGFMT = @GMSGFMT@ HAVE_ASPRINTF = @HAVE_ASPRINTF@ HAVE_POSIX_PRINTF = @HAVE_POSIX_PRINTF@ HAVE_SNPRINTF = @HAVE_SNPRINTF@ HAVE_WPRINTF = @HAVE_WPRINTF@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INSTOBJEXT = @INSTOBJEXT@ INTLBISON = @INTLBISON@ INTLLIBS = @INTLLIBS@ INTLOBJS = @INTLOBJS@ INTL_LIBTOOL_SUFFIX_PREFIX = @INTL_LIBTOOL_SUFFIX_PREFIX@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LN_S = @LN_S@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAINT = @MAINT@ MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ MAKEINFO = @MAKEINFO@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGMERGE = @MSGMERGE@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ POSUB = @POSUB@ RANLIB = @RANLIB@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ USE_INCLUDED_LIBINTL = @USE_INCLUDED_LIBINTL@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ XGETTEXT = @XGETTEXT@ ZHCON_LOCALE_DIR = @ZHCON_LOCALE_DIR@ ac_ct_CC = @ac_ct_CC@ ac_ct_CXX = @ac_ct_CXX@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@ am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ EXTRA_DIST = changelog conffiles config control copyright dirs docs postinst README.Debian rules templates all: all-am .SUFFIXES: $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign debian/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --foreign debian/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh uninstall-info-am: tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-exec-am: install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-exec \ install-exec-am install-info install-info-am install-man \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \ uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: debian/rules0000755000000000000000000000024111775174210010250 0ustar #!/usr/bin/make -f %: touch config.rpath dh $@ --with autoreconf override_dh_auto_install: find . -type f -name zhcon -exec chrpath -d {} \; dh_auto_install debian/README.Debian0000644000000000000000000000226511764437515011251 0ustar zhcon for Debian ---------------- zhcon needs FrameBuffer support enabled in Linux kernel. I have removed all debconf stuff because framebuffer is default for several years in Debian kernel and other major Linux distributions. If you have a custom kernel, make sure you have the option enabled. -- Aron Xu Thu, 09 Jun 2011 17:24:01 +0800 zhcon need the framebuffer support, so you must rebuild the kernel with the framebuffer options by yourself. ;-) You should set kernel "Code maturity level options" to " Prompt for development and/or incomplete code/drivers", select "Support for frame buffer devices (EXPERIMENTAL)" option under "Console drivers", and choose one driver for your display card. Of cause, rebuild and start the new kernel. ;-) Maybe you should install kernel-package, it's a tool used for build debian kernel packages. -- Yu Guanghui , Thu, 23 Aug 2001 11:30:33 +0800 zhcon can work without framebuffer, but I didn't fully test. ZNPY is the default input method now. If it doesn't work for you, please reinstall zhcon, and permit it overwrite /etc/zhcon.conf. -- Yu Guanghui , Thu, 07 May 2003 02:14:26 +0800 debian/compat0000644000000000000000000000000211764437515010401 0ustar 7 debian/zhcon.10000644000000000000000000000525411764437515010414 0ustar .TH ZHCON "1" "June 2011" "Fast CJK console environment" "User Manual" .SH NAME zhcon \- fast CJK console environment for GNU/Linux and BSD .SH SYNOPSIS .B zhcon [\fIOPTIONS\fR]... [\fIFILES\fR]... .SH DESCRIPTION Zhcon is a fast Linux console system which supports framebuffer device. It can display Chinese, Japanese and Korean double byte characters. .PP Supported encodings are: GB2312, GBK, BIG5, JIS and KSC. .PP It can also use input methods (table based) from MS pwin98 and UCDOS for MS\-DOS. .TP \fB\-h\fR, \fB\-\-help\fR Print help and exit .TP \fB\-V\fR, \fB\-\-version\fR Print version and exit .TP \fB\-\-utf8\fR use iconv filter to convert UTF\-8 stream from/to system encoding (default=off) .TP \fB\-\-drv\fR=\fISTRING\fR specify video driver (auto, fb, ggi, vga) (default=`auto') If a program name is given as a command line argument, zhcon will run this program on start instead of a shell, and quit when the program exits. For example: .br zhcon screen .br will run screen in zhcon insteal of default user shell. .SH "CONFIGURATION FILE" On startup, zhcon first try to load configuration from ~/.zhconrc. If failed, it will use /etc/zhcon.conf by default. The configure file has many options that can be used to control the behavior of zhcon. See the comments in the file for instruction on customizing zhcon. .SH "KEY SUMMAY" .LP CTRL_ALT_H: active online help .br ALT_SPACE: open/close CJK mode .br CTRL_SPACE: open/close input method .br ALT_SPACE: show/hide input bar .br CTRL_,: toggle Full/Half char mode .br CTRL_.: toggle Chinese symbol .br CTRL_F1: set encode to GB2312 .br CTRL_F2: set encode to GBK .br CTRL_F3: set encode to BIG5 .br CTRL_F4: set encode to JIS .br CTRL_F5: set encode to KSCM .br CTRL_F7: toggle between nativebar and overspot input style .br CTRL_F9: toggle GB2312/BIG5 auto\-detect mode .br CTRL_F10: menu mode .br CTRL_ALT_1 \- CTRL_ALT_9: switch to input method 1 to 9 .br CTRL_ALT_0: English mode .br History mode keys: .br SHIFT_PAGEUP: scroll up half screen in history .br SHIFT_PAGEDOWN: scroll down half screen in history .br SHIFT_ARROWUP: scroll up one line in history .br SHIFT_ARROWDOWN: scroll down one in history .SH SEE ALSO .BR /usr/share/doc/zhcon/README.gz, .BR /usr/share/doc/zhcon/manual.ps.gz. .br .SH "AUTHORS" .LP ejoy .br Hu Yong .br Rick Lei .PP This manual page was written by Aron Xu , for the Debian project (and may be used by others). debian/changelog0000644000000000000000000002354311775177333011065 0ustar zhcon (1:0.2.6-10) unstable; urgency=low * Drop libggi support (Closes: #680238). -- Aron Xu Thu, 05 Jul 2012 10:13:44 +0800 zhcon (1:0.2.6-9) unstable; urgency=low * Now build on kfreebsd. * Update VCS-Browser field. * Std-ver: 3.9.2 -> 3.9.3, no change. * Better handling jp and ko when specified. * Default to use utf8. -- Aron Xu Sat, 09 Jun 2012 04:04:14 +0800 zhcon (1:0.2.6-8) unstable; urgency=low * Make it build on amd64, etc. * debian/control: Add Vcs-* fields. -- Aron Xu Sun, 03 Jul 2011 17:16:47 +0800 zhcon (1:0.2.6-7) unstable; urgency=low * New mainainer (Closes: #629012) * Switch to dh7 style, use compat=7, "quilt (3.0)" format standards-version 3.9.2. * Convert to quilt patch system: - Drop useless patches: input_amd64.patch, gcc-3.4.patch (applied upstream). - Set LC_CTYPE instead of LC_ALL, using any UTF-8 LC_CTYPE value available on the system is sufficient to function. (Closes: #243856) - Use Glibc iconv extension when available. (LP: #439697) * debian/postinst, debian/dirs: removed, useless. * Add libgpm-dev to build-dep to enable gpm support. * Drop debconf templates because framebuffer is enabled by default in a Debian kernel and other major Linux distributions. * Change to build on linux-any platforms because framebuffer does not exist on others. * Document options in manpage (Closes: #389421) * Acknowledge NMU (Closes: #561491, #513666, #560785) -- Aron Xu Thu, 09 Jun 2011 17:24:01 +0800 zhcon (1:0.2.6-6.1) unstable; urgency=low * Non-maintainer upload. * Fix FTBFS ("'IF_MASK' undeclared"). Thanks to Elías Alejandro for the patch. Closes: #561491 * Drop debian/conffiles that only lists files in /etc, that are automatically added to conffiles by dh_installdeb * Add real copyright mention to debian/copyright (taken from the output of "licensecheck") * Explicit reference tp GPL-2 test in debian.copyright * Add ${misc:Depends} to binary package dependencies and drop "debconf" (that will be added automatically) * Bump debhelper compatibility level to 7 * Replace "dh_clean -k" by dh_prep * No longer ignore errors from make in debian/rules * Use method recommended in autotools-dev to provide up-to-date config.{sub|guess} files. Consequently, build depend on autotools-dev * Fix pending l10n issues. Debconf translations: - Vietnamese (Clytie Siddall). Closes: #513666 - Simplified Chinese (Ji ZhengYu). Closes: #560785 -- Christian Perrier Fri, 25 Dec 2009 08:55:54 +0100 zhcon (1:0.2.6-6) unstable; urgency=low * Fix input method crash on amd64. (Closes:Bug#501912) * Fix FTBFS with GCC 4.4. (Closes:Bug#505347) -- Yu Guanghui Wed, 18 Feb 2009 21:45:46 +0800 zhcon (1:0.2.6-5.2) unstable; urgency=low * Non-maintainer upload. * Fix pending l10n issues. Debconf translations: - Swedish. Closes: #491962 - Finnish. Closes: #501936 - Ukrainian. Closes: #501978 - Unfuzzied Catalan and Vietnamese translations - Basque. Closes: #502251 - Italian. Closes: #502474 -- Christian Perrier Sun, 19 Oct 2008 08:51:48 +0200 zhcon (1:0.2.6-5.1) unstable; urgency=low * Non-maintainer upload. * Fix GCC 4.3 compatibility, patch by Cyril Brulebois (Closes: #461695) -- Moritz Muehlenhoff Thu, 20 Mar 2008 01:16:26 +0100 zhcon (1:0.2.6-5) unstable; urgency=low * Fixed FTBFS with GCC 4.3. (Closes:Bug#421056) -- Yu Guanghui Mon, 06 Aug 2007 14:10:57 +0800 zhcon (1:0.2.6-4.1) unstable; urgency=low * Non-maintainer upload to fix pending l10n issues. * Debconf translations: - Japanese. Closes: #400149 - Danish. Closes: #401624 - German. Closes: #402801 - Russian. Closes: #404430 - Spanish. Closes: #383085 -- Christian Perrier Thu, 8 Feb 2007 18:07:11 +0100 zhcon (1:0.2.6-4) unstable; urgency=low * manpage fix. -- Yu Guanghui Wed, 27 Sep 2006 00:44:55 +0800 zhcon (1:0.2.6-3) unstable; urgency=low * Added manpage. (Closes:Bug#389421) * Updated Czech translation. (Closes:Bug#389176) * Raised the priority of notice to high. (Closes:Bug#388990) -- Yu Guanghui Tue, 26 Sep 2006 20:05:15 +0800 zhcon (1:0.2.6-2) unstable; urgency=low * French templates translation update. (Closes:Bug#378224) * Portuguese templates translation. (Closes:Bug#381198) * zhcon doesn't depend on libgii0 (Closes:Bug#382116) * Closed old bugs, it was fixed ago. (Closes:Bug#323419) * Cleanup NMU fixed bugs.(Closes:Bug#292210,Bug#200071,Bug#293324, Bug#356438,Bug#112355,Bug#136609,Bug#332164,Bug#355948,Bug#198270, Bug#198751,Bug#250139,Bug#285970,Bug#287695,Bug#324284,Bug#324285, Bug#330619) -- Yu Guanghui Fri, 09 Aug 2006 15:38:19 +0800 zhcon (1:0.2.6-1.1) unstable; urgency=medium * NMU as part of the libgii/libggi transition. * Changed build-dependency on libggi2-dev to libggi2-dev (>= 1:2.2.1-4). Closes: #381649. -- Anibal Monsalve Salazar Wed, 09 Aug 2006 10:10:31 +1000 zhcon (1:0.2.6-1) unstable; urgency=low * New upstream release -- Yu Guanghui Thu, 6 Jul 2006 02:21:02 +0800 zhcon (1:0.2.4-1) unstable; urgency=low * New upstream release * already build with gcc-4.0. Closes: #323419 -- Yu Guanghui Tue, 25 Apr 2006 00:27:56 +0800 zhcon (1:0.2.3-8.1) unstable; urgency=HIGH * NMU * Forward ported patch from security team to prevent unauthorised file access [src/configfile.cpp, CAN-2005-0072]. Closes: #292210 -- Joey Hess Wed, 26 Jan 2005 15:10:36 -0500 zhcon (1:0.2.3-8) unstable; urgency=low * patch for gcc-3.4. (closes:Bug#264151) * added ja.po. (closes:Bug#259166) -- Yu Guanghui Sat, 7 Aug 2004 23:52:49 +0800 zhcon (1:0.2.3-7) unstable; urgency=low * Apply patch for PowerPC or other big endianness machines. Thanks for Ben Sittler 's patch. (closes:Bug#227640) -- Yu Guanghui Sun, 18 Jan 2004 21:48:25 +0800 zhcon (1:0.2.3-6.2) unstable; urgency=low * Non-maintainer upload * Switch to gettext for debconf templates. Closes: #198270 * French translation for debconf templates. Closes: #198751 * Russian translation for debconf templates. Closes: #136609 * German translation for debconf templates. Closes: #112355 -- Christian Perrier Tue, 26 Aug 2003 11:51:58 +0200 zhcon (1:0.2.3-6.1) unstable; urgency=low * Non-Maintainer Upload * Apply patch from Matt Kraai to fix build failure under GCC 3.3. (Closes: #200071) -- Joel Baker Sat, 23 Aug 2003 11:58:16 -0600 zhcon (1:0.2.3-6) unstable; urgency=low * Fix wrong .pyinput owner. * Make zhcon work with screen. -- Yu Guanghui Wed, 14 May 2003 22:45:39 +0800 zhcon (1:0.2.3-5) unstable; urgency=low * Build with unicon-im 3.0.4_9. -- Yu Guanghui Sat, 10 May 2003 17:04:45 +0800 zhcon (1:0.2.3-4) unstable; urgency=low * Fixed build error. -- Yu Guanghui Thu, 8 May 2003 01:11:34 +0800 zhcon (1:0.2.3-3) unstable; urgency=low * Fixed build error. -- Yu Guanghui Wed, 7 May 2003 19:12:58 +0800 zhcon (1:0.2.3-2) unstable; urgency=low * Add new build depend libncurses5-dev -- Yu Guanghui Wed, 7 May 2003 12:09:40 +0800 zhcon (1:0.2.3-1) unstable; urgency=low * New upstream release. * unicon input method work right now. * new words can be saved when use ZNPY * Change ZNPY as default input method. -- Yu Guanghui Wed, 7 May 2003 01:09:46 +0800 zhcon (1:0.2-4) unstable; urgency=low * Fixed some building error. -- Yu Guanghui Tue, 19 Mar 2002 18:52:04 +0800 zhcon (1:0.2-3) unstable; urgency=low * Ok, since we don't really need VGA mode and it causes portable problems, I will remove VGA support. (closes:Bug#138711) -- Yu Guanghui Mon, 18 Mar 2002 19:15:35 +0800 zhcon (1:0.2-2) unstable; urgency=low * Modified configure.in, zhcon should run on any arch linux. (closes:Bug#138505) -- Yu Guanghui Sat, 16 Mar 2002 10:07:39 +0800 zhcon (1:0.2-1) unstable; urgency=low * correct the debian version number. -- Yu Guanghui Mon, 11 Mar 2002 19:08:12 +0800 zhcon (0.2-1) unstable; urgency=low * New upstream release. * Build without unicon support. zhcon 0.2 still have trouble with unicon input method. -- Yu Guanghui Sun, 10 Mar 2002 19:37:19 +0800 zhcon (0.2b2-1) unstable; urgency=low * New upstream release. -- Yu Guanghui Sun, 3 Feb 2002 16:01:14 +0800 zhcon (0.14-5) unstable; urgency=low * Updated config.{sub,guess}. (closes:Bug#117421) -- Yu Guanghui Tue, 30 Oct 2001 19:45:25 +0800 zhcon (0.14-4) unstable; urgency=low * Removed the ltconfig flag --no-verify. This caused compile problem in other platform expect i386. -- Yu Guanghui Sat, 27 Oct 2001 19:25:28 +0800 zhcon (0.14-3) unstable; urgency=low * I only test it under i386 arch. If anyone successly use zhcon in other platform, please notice me. -- Yu Guanghui Wed, 24 Oct 2001 15:54:06 +0800 zhcon (0.14-2) unstable; urgency=low * Add spanish template file. (closes:Bug#110756) * Use the correct names for MS products.(closes:Bug#110052) -- Yu Guanghui Wed, 12 Sep 2001 17:43:29 +0800 zhcon (0.14-1) unstable; urgency=low * New upstream release -- Yu Guanghui Thu, 23 Aug 2001 12:00:00 +0800 zhcon (0.13-1) unstable; urgency=low * Initial Release. -- Yu Guanghui Thu, 23 Aug 2001 11:30:33 +0800 Local variables: mode: debian-changelog End: debian/copyright0000644000000000000000000000074311764437515011142 0ustar This package (zhcon) was Debianized by Yu Guanghui on Aug, 23 Aug 2001 10:38:03 +0800. It was downloaded from http://sourceforge.net/projects/zhcon Upstream Author: ejoy Hu Yong Copyright: © 2001-2002 by ejoy, huyong, rick This program is under the GPL license. On Debian GNU/Linux systems, the complete text of the GNU General Public License can be found in `/usr/share/common-licenses/GPL-2'. debian/source/0000755000000000000000000000000011764437515010503 5ustar debian/source/format0000644000000000000000000000001411764437515011711 0ustar 3.0 (quilt) debian/clean0000644000000000000000000000001511764437515010204 0ustar config.rpath debian/control0000644000000000000000000000221511775175776010620 0ustar Source: zhcon Section: utils Priority: optional Maintainer: Debian Chinese Team Uploaders: Aron Xu Build-Depends: debhelper (>= 7.0.50~), dh-autoreconf, chrpath, libncurses5-dev, bison, libpth-dev, unicon-imc2, libgpm-dev [linux-any], libbsd-dev [kfreebsd-any] Standards-Version: 3.9.3 Vcs-Git: git://anonscm.debian.org/chinese/zhcon.git Vcs-Browser: http://git.debian.org/?p=chinese/zhcon.git Package: zhcon Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Breaks: unicon-im (<< 3.0.4-9) Description: Fast console CJK system using FrameBuffer Zhcon is a fast Linux Console Chinese System which supports framebuffer device.It can display Chinese,Japanese or Korean double byte characters on console. . Features include: * Full support for Linux FrameBuffer device(from 640x480x8bpp to 1024x768x32bpp) * Multiple language support (GB2312,GBK,BIG5,JIS,KSC) * Auto-detect and convert between GB2312 and BIG5 encoding(like hztty) * Hot key to change language encoding on the fly * Can use input method from MS Windows 98 Chinese version or UCDOS for MS-DOS