Hanterm-xf is a fast and functional X-terminal emulator. Although development of Hanterm-xf ceased long ago, I find hanterm-xf very useful because it has built-in Korean input system and displays Latin, Korean and Unicode well. Trying to find the hanterm-xf source was not so easy, but I found it here with Yahoo! search. I downloaded hanterm-xf-2.0.6-177.tar.gz Compiling Hanterm-xf requires the following development packages to be installed:
- gcc
- g77
- make
- libncursesw5-dev
- libxft-dev
- libxaw7-dev
Before compiling hanterm-xf, I had to make some symbolic links in /usr/include.
ln -s ncursesw /usr/include/ncurses
ln -s freetype2/freetype /usr/include
I unpacked the hanterm-xf source and entered the source directory:
tar xzvf hanterm-xf-2.0.6-177.tar.gz
cd hanterm-xf-2.0.6-177
I ran ./configure
for hanterm-xf as follows:
./configure --prefix=/usr --host=i586-pc-linux-gnu --enable-doublechars --enable-freetype --enable-i18n --disable-input-method --disable-maximize --enable-pty-handshake --disable-tek4014 --enable-toolbar --disable-vt52 --enable-wide-chars --enable-chat --enable-now-chat
I had to modify the LIBS line of Makefile in order to successfully link hanterm with libncursesw5 later. Basically, I appended -lncursesw at the end of the LIBS line.
LIBS = -lXft -lfreetype -lXrender -lXrender -lXaw -lXmu -lXext -lXt -lSM -lICE -lX11 -lnsl -lncursesw
Then, I compiled hanterm-xf as follows:
make
make install
Packaging Hanterm-xf 2.0.6
I made a package of hanterm-xf with the following contents:
/usr/bin/hanterm
/usr/share/hangul_keyboard/2bul.kbd
/usr/share/hangul_keyboard/3bul_390.kbd
/usr/share/hangul_keyboard/3bul_final.kbd
/usr/share/hangul_keyboard/dvorak.map
/usr/share/hangul_keyboard/dvorak_2bul.kbd
/usr/share/hangul_keyboard/dvorak_3bul_390.kbd
/usr/share/hangul_keyboard/dvorak_3bul_final.kbd
/usr/share/man/man1/hanterm.1.gz
/etc/X11/app-defaults/Hanterm
/etc/X11/app-defaults/Hanterm-color
You can download my hanterm-xf packages here.
My .Xresources Setting for Hanterm-xf
To run hanterm-xf, you need a monospace Latin font and a Korean font. Before running hanterm-xf, put hanterm settings in your .Xresources file. The following is my hanterm settings in .Xresrources.
Hanterm*title: Hanterm
Hanterm*iconName: Hanterm
Hanterm*statusHangulLabel: [KO]
Hanterm*statusEnglishLabel: [EN]
Hanterm*statusWansungLabel: [WANS]
Hanterm*statusJohabLabel: [JHAB]
Hanterm*statusSebyolLabel: [3B]
Hanterm*statusDubyolLabel: [2B]
Hanterm*hangulKeyboard: 2
Hanterm*saveLines: 1024
Hanterm*VT100*color0: black
Hanterm*VT100*color1: red
Hanterm*VT100*color2: green3
Hanterm*VT100*color3: orange
Hanterm*VT100*color4: blue
Hanterm*VT100*color5: purple1
Hanterm*VT100*color6: DarkTurquoise
Hanterm*VT100*color7: grey90
Hanterm*VT100*color8: grey60
Hanterm*VT100*color9: salmon
Hanterm*VT100*color10: PaleGreen1
Hanterm*VT100*color11: khaki1
Hanterm*VT100*color12: DeepSkyBlue
Hanterm*VT100*color13: orchid1
Hanterm*VT100*color14: cyan
Hanterm*VT100*color15: white
Hanterm*background: black
Hanterm*foreground: gray90
Hanterm*rightScrollBar: on
Hanterm*Scrollbar*width: 16
Hanterm*Scrollbar*background: grey75
Hanterm*Scrollbar*foreground: grey30
Hanterm*SimpleMenu*background: DeepSkyBlue
Hanterm*SimpleMenu*foreground: black
Hanterm*VT100.cursorBlink: true
Hanterm*VT100.cursorColor: orange
Hanterm*VT100.hanCursorColor: DarkTurquoise
Hanterm*VT100.cutNewline: false
Hanterm*VT100.cutToBeginningOfLine: false
Hanterm*VT100.Translations: #override \n\
~Shift ~Ctrl ~MetaBackSpace: string(0x7F)\n\
~Shift ~Ctrl ~MetaDelete: string(0x1b) string("[3~")\n\
~Shift ~Ctrl ~MetaHome: string(0x1b) string("[1~")\n\
~Shift ~Ctrl ~MetaEnd: string(0x1b) string("[4~")\n\
Shift ~Ctrl ~Metaspace: toggle-hangul()\n\
~Shift Ctrl ~Metaspace: hanja-input()\n\
~Shift Ctrl ~MetaBackSpace: code-input()\n\
~Shift Ctrl ~MetaReturn: toggle-chat()\n\
~Shift ~Ctrl MetaUp: change-code()\n\
~Shift ~Ctrl MetaLeft: change-keyboard()\n\
~Shift ~Ctrl ~Meta: scroll-back(5,line)\n\
~Shift ~Ctrl ~Meta: scroll-forw(5,line)\n\
Shift ~Ctrl ~Meta: scroll-back(1,line)\n\
Shift ~Ctrl ~Meta: scroll-forw(1,line)\n\
~Shift Ctrl ~Meta: scroll-back(1,halfpage)\n\
~Shift Ctrl ~Meta: scroll-forw(1,halfpage)\n\
~Shift ~Ctrl Meta: scroll-back(1,page)\n\
~Shift ~Ctrl Meta: scroll-forw(1,page)
Hanterm*Font: -*-dejavu sans mono-medium-r-normal-*-*-110-*-*-*-*-iso8859-1
Hanterm*hangulFont: -*-hysinmyeongjo-medium-r-normal--*-130-*-*-*-*-ksc5601.1987-0
Hanterm*SimpleMenu*fontSet: -urw-Nimbus Sans L-regular-r-normal-*-*-110-*-*-p-*-iso8859-1,-hanyang-hygothic-medium-r-normal-*-*-110-*-*-*-*-ksc5601.1987-0
Hanterm*VT100*colorULMode: off
Hanterm*VT100*colorBDMode: off
Hanterm*VT100*colorBD: blue
Hanterm*VT100*colorUL: red
Hanterm*charClass: 37-38:48,42-43:48,45-47:48,63-64:48
Hanterm*pointerColor: DeepSkyBlue
Hanterm*pointerColorBackground: grey40
Hanterm*pointerShape: right_ptr
Hanterm*beNiceToColormap: false