Update build instructions for XClock, remove hard Xaw dependency, package neXtaw, etc.
This commit is contained in:
parent
70094bdf79
commit
d440edee3b
0
mbase/ROX-Filer
Normal file
0
mbase/ROX-Filer
Normal file
0
mbase/alsa-lib
Normal file
0
mbase/alsa-lib
Normal file
0
mbase/alsa-plugins
Normal file
0
mbase/alsa-plugins
Normal file
0
mbase/alsa-utils
Normal file
0
mbase/alsa-utils
Normal file
0
mbase/epic
Normal file
0
mbase/epic
Normal file
0
mbase/fbv-git
Normal file
0
mbase/fbv-git
Normal file
11
mbase/gnugrep/build
Executable file
11
mbase/gnugrep/build
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
export CFLAGS="$CFLAGS -Wno-error -static"
|
||||||
|
|
||||||
|
./configure \
|
||||||
|
--prefix=/usr
|
||||||
|
|
||||||
|
make
|
||||||
|
make DESTDIR="$1" install
|
||||||
|
|
||||||
|
install -Dm755 src/grep "$1/usr/bin/ggrep"
|
1
mbase/gnugrep/checksums
Normal file
1
mbase/gnugrep/checksums
Normal file
@ -0,0 +1 @@
|
|||||||
|
667e15e8afe189e93f9f21a7cd3a7b3f776202f417330b248c2ad4f997d9373e
|
1
mbase/gnugrep/sources
Normal file
1
mbase/gnugrep/sources
Normal file
@ -0,0 +1 @@
|
|||||||
|
https://ftp.gnu.org/gnu/grep/grep-3.6.tar.xz
|
1
mbase/gnugrep/version
Normal file
1
mbase/gnugrep/version
Normal file
@ -0,0 +1 @@
|
|||||||
|
3.6 1
|
0
mbase/liberation-fonts
Normal file
0
mbase/liberation-fonts
Normal file
1
mbase/neXtaw
Symbolic link
1
mbase/neXtaw
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../ports/neXtaw
|
1
mbase/norm.txt
Normal file
1
mbase/norm.txt
Normal file
@ -0,0 +1 @@
|
|||||||
|
9base-mod 9wm ROX-Filer alsa-lib alsa-plugins alsa-utils atk autoconf automake axel baselayout bash binutils bison bzip2 cairo cmake curl cyrus-sasl diffutils dropbear dtach-git epic eudev expat fbv-git ffmpeg file flex fontconfig freetype-harfbuzz fribidi fvwm3-git gavin-bc-git gcc gccmakedep-git gdk-pixbuf gettext-tiny giblib giflib git glib gmp gnugrep gnutls gperf gtk+2 gtk2-engines-clearlooks gv gzip hicolor hummingbird-git iana-etc imake-git imlib2 inetutils intltool kiss-mod lame leafpad less libICE libSM libX11 libXScrnSaver libXau libXaw3d-git libXcomposite libXcursor libXdamage libXdmcp libXext libXfixes libXfont2 libXft libXi libXinerama libXmu libXpm libXrandr libXrender libXt libXtst libXxf86vm libarchive libass libbson-git libdrm libelf libepoxy liberation-fonts libevdev libevent libexif libffi libfontenc libgcrypt libgpg-error libinput libjpeg-turbo libmbim libmpc libnl libogg libpcap libpciaccess libpng libressl libtheora libtool libusb libvorbis libvpx libxcb libxkbfile libxml2 libxshmfence links2 linux-headers llvm lxtask lz4 m4 make man-pages-posix mandoc mesa meson mpfr mtdev mtm-git mtpaint-git nasm ncurses net-tools nettle nilfs-utils nmap oksh opus otawk-git pango patch pciutils pcre perl perl-xml pidgin pixman pkgconf procps-ng purple-discord-git python ruby samurai sbase-git-mod scrot sdl2 sed shadow shared-mime-info shellcheck-bin slock sqlite ssu stalonetray sxiv sysklogd-git syslinux sysmgr tabbed tcpdump tine-git tt++ tzdata ubase-git-mod usbutils util-linux x265 xbitmaps xcalc xcb-proto xcb-util xcb-util-image xcb-util-keysyms xcb-util-wm xcompmgr xdm xev xf86-input-libinput xf86-video-amdgpu xfsprogs xinit xinput xkbcomp xkeyboard-config xless xmessage xorg-cf xorg-fontutil xorg-server xorg-util-macros xorgproto xosview xrdb xset xsetroot xssstart xterm xtrans xvidcore xvkbd xwallpaper xz zlib zstd
|
@ -1 +0,0 @@
|
|||||||
../ports/psmisc-git
|
|
0
mbase/scrot
Normal file
0
mbase/scrot
Normal file
0
mbase/sxiv
Normal file
0
mbase/sxiv
Normal file
0
mbase/tzdata
Normal file
0
mbase/tzdata
Normal file
0
mbase/xf86-input-libinput
Normal file
0
mbase/xf86-input-libinput
Normal file
0
mbase/xorg-server
Normal file
0
mbase/xorg-server
Normal file
0
mbase/xwallpaper
Normal file
0
mbase/xwallpaper
Normal file
9
ports/ffmpeg/diffutils/build
Executable file
9
ports/ffmpeg/diffutils/build
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
export CFLAGS="$CFLAGS -static"
|
||||||
|
|
||||||
|
./configure \
|
||||||
|
--prefix=/usr
|
||||||
|
|
||||||
|
make
|
||||||
|
make DESTDIR="$1" install
|
1
ports/ffmpeg/diffutils/checksums
Normal file
1
ports/ffmpeg/diffutils/checksums
Normal file
@ -0,0 +1 @@
|
|||||||
|
b3a7a6221c3dc916085f0d205abf6b8e1ba443d4dd965118da364a1dc1cb3a26 diffutils-3.7.tar.xz
|
1
ports/ffmpeg/diffutils/sources
Normal file
1
ports/ffmpeg/diffutils/sources
Normal file
@ -0,0 +1 @@
|
|||||||
|
https://ftp.gnu.org/gnu/diffutils/diffutils-3.7.tar.xz
|
1
ports/ffmpeg/diffutils/version
Normal file
1
ports/ffmpeg/diffutils/version
Normal file
@ -0,0 +1 @@
|
|||||||
|
3.7 1
|
@ -1,2 +1,3 @@
|
|||||||
|
perl-xml make
|
||||||
gtk+2
|
gtk+2
|
||||||
intltool make
|
intltool make
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
perl-xml make
|
||||||
gettext-tiny make
|
gettext-tiny make
|
||||||
gtk+2
|
gtk+2
|
||||||
intltool make
|
intltool make
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
ghostscript
|
||||||
freetype-harfbuzz
|
freetype-harfbuzz
|
||||||
libICE
|
libICE
|
||||||
libSM
|
libSM
|
||||||
|
@ -5,3 +5,7 @@
|
|||||||
|
|
||||||
make
|
make
|
||||||
make DESTDIR="$1" install
|
make DESTDIR="$1" install
|
||||||
|
|
||||||
|
#ln -s "/usr/include/X11/Xaw3d" "$1/usr/include/X11/Xaw"
|
||||||
|
#ln -s "/usr/lib/pkgconfig/xaw3d.pc" "/usr/lib/pkgconfig/xaw7.pc"
|
||||||
|
#ln -s "/usr/lib/libXaw3d.so" "$1/usr/lib/libXaw7.so"
|
||||||
|
8
ports/neXtaw/build
Executable file
8
ports/neXtaw/build
Executable file
@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
./configure \
|
||||||
|
--prefix=/usr \
|
||||||
|
|
||||||
|
make
|
||||||
|
make DESTDIR="$1" install
|
||||||
|
install -Dm644 nextaw.pc "$1/usr/lib/pkgconfig/nextaw.pc"
|
1
ports/neXtaw/checksums
Normal file
1
ports/neXtaw/checksums
Normal file
@ -0,0 +1 @@
|
|||||||
|
7cfe6706b9a76620389e04a7a87f06786c8a6606829c3157c3e9e45a805bb584
|
12
ports/neXtaw/files/nextaw.pc
Normal file
12
ports/neXtaw/files/nextaw.pc
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
prefix=/usr
|
||||||
|
exec_prefix=${prefix}
|
||||||
|
libdir=${exec_prefix}/lib
|
||||||
|
includedir=${prefix}/include
|
||||||
|
|
||||||
|
Name: neXtaw
|
||||||
|
Description: Xaw with N*XTSTEP look and feel
|
||||||
|
Version: 1.0.13
|
||||||
|
Requires: xproto xt
|
||||||
|
Requires.private: x11 xext xt xmu xpm
|
||||||
|
Cflags: -I${includedir}
|
||||||
|
Libs: -L${libdir} -lneXtaw
|
2
ports/neXtaw/sources
Normal file
2
ports/neXtaw/sources
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
http://siag.nu/pub/neXtaw/neXtaw-0.15.1.tar.gz
|
||||||
|
files/nextaw.pc
|
1
ports/neXtaw/version
Normal file
1
ports/neXtaw/version
Normal file
@ -0,0 +1 @@
|
|||||||
|
0.15.1 1
|
12
ports/neXtaw/xaw7.pc
Normal file
12
ports/neXtaw/xaw7.pc
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
prefix=/usr
|
||||||
|
exec_prefix=${prefix}
|
||||||
|
libdir=${exec_prefix}/lib
|
||||||
|
includedir=${prefix}/include
|
||||||
|
|
||||||
|
Name: Xaw
|
||||||
|
Description: X Athena Widgets Library, version 7
|
||||||
|
Version: 1.0.13
|
||||||
|
Requires: xproto xt
|
||||||
|
Requires.private: x11 xext xt xmu xpm
|
||||||
|
Cflags: -I${includedir}
|
||||||
|
Libs: -L${libdir} -lneXtaw
|
@ -1,5 +1,8 @@
|
|||||||
#!/bin/sh -e
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
# Patch Clock.c to compile with other Xaws
|
||||||
|
sed -e 's/XpmReadFileToPixmap(dpy, RootWindowOfScreen(screen), name, &pmap,//g' clock.c.new | sed -e 's/&shapemask, NULL);//g' > Clock.c.new ; mv Clock.c.new Clock.c
|
||||||
|
|
||||||
./configure \
|
./configure \
|
||||||
--prefix=/usr
|
--prefix=/usr
|
||||||
|
|
||||||
|
@ -2,7 +2,6 @@ libICE
|
|||||||
libSM
|
libSM
|
||||||
libX11
|
libX11
|
||||||
libXau
|
libXau
|
||||||
libXaw make
|
|
||||||
libXext
|
libXext
|
||||||
libXft
|
libXft
|
||||||
libXmu
|
libXmu
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
libX11
|
libX11
|
||||||
libXaw make
|
|
||||||
libXmu
|
libXmu
|
||||||
|
libXaw
|
||||||
libXt
|
libXt
|
||||||
|
@ -3,6 +3,5 @@ automake make
|
|||||||
libICE
|
libICE
|
||||||
libSM
|
libSM
|
||||||
libX11
|
libX11
|
||||||
libXaw
|
|
||||||
libXt
|
libXt
|
||||||
xorg-server
|
xorg-server
|
||||||
|
BIN
ports/xterm/xterm-359.tgz
Normal file
BIN
ports/xterm/xterm-359.tgz
Normal file
Binary file not shown.
250
ports/xterm/xterm-359/256colres.h
Normal file
250
ports/xterm/xterm-359/256colres.h
Normal file
@ -0,0 +1,250 @@
|
|||||||
|
/*
|
||||||
|
* This header file was generated by ./256colres.pl
|
||||||
|
*/
|
||||||
|
/* $XTermId: 256colres.h,v 1.11 2007/06/12 00:44:23 tom Exp $ */
|
||||||
|
|
||||||
|
#ifndef included_256colres_h
|
||||||
|
#define included_256colres_h
|
||||||
|
|
||||||
|
COLOR_RES("16", screen.Acolors[16], DFT_COLOR("rgb:00/00/00")),
|
||||||
|
COLOR_RES("17", screen.Acolors[17], DFT_COLOR("rgb:00/00/5f")),
|
||||||
|
COLOR_RES("18", screen.Acolors[18], DFT_COLOR("rgb:00/00/87")),
|
||||||
|
COLOR_RES("19", screen.Acolors[19], DFT_COLOR("rgb:00/00/af")),
|
||||||
|
COLOR_RES("20", screen.Acolors[20], DFT_COLOR("rgb:00/00/d7")),
|
||||||
|
COLOR_RES("21", screen.Acolors[21], DFT_COLOR("rgb:00/00/ff")),
|
||||||
|
COLOR_RES("22", screen.Acolors[22], DFT_COLOR("rgb:00/5f/00")),
|
||||||
|
COLOR_RES("23", screen.Acolors[23], DFT_COLOR("rgb:00/5f/5f")),
|
||||||
|
COLOR_RES("24", screen.Acolors[24], DFT_COLOR("rgb:00/5f/87")),
|
||||||
|
COLOR_RES("25", screen.Acolors[25], DFT_COLOR("rgb:00/5f/af")),
|
||||||
|
COLOR_RES("26", screen.Acolors[26], DFT_COLOR("rgb:00/5f/d7")),
|
||||||
|
COLOR_RES("27", screen.Acolors[27], DFT_COLOR("rgb:00/5f/ff")),
|
||||||
|
COLOR_RES("28", screen.Acolors[28], DFT_COLOR("rgb:00/87/00")),
|
||||||
|
COLOR_RES("29", screen.Acolors[29], DFT_COLOR("rgb:00/87/5f")),
|
||||||
|
COLOR_RES("30", screen.Acolors[30], DFT_COLOR("rgb:00/87/87")),
|
||||||
|
COLOR_RES("31", screen.Acolors[31], DFT_COLOR("rgb:00/87/af")),
|
||||||
|
COLOR_RES("32", screen.Acolors[32], DFT_COLOR("rgb:00/87/d7")),
|
||||||
|
COLOR_RES("33", screen.Acolors[33], DFT_COLOR("rgb:00/87/ff")),
|
||||||
|
COLOR_RES("34", screen.Acolors[34], DFT_COLOR("rgb:00/af/00")),
|
||||||
|
COLOR_RES("35", screen.Acolors[35], DFT_COLOR("rgb:00/af/5f")),
|
||||||
|
COLOR_RES("36", screen.Acolors[36], DFT_COLOR("rgb:00/af/87")),
|
||||||
|
COLOR_RES("37", screen.Acolors[37], DFT_COLOR("rgb:00/af/af")),
|
||||||
|
COLOR_RES("38", screen.Acolors[38], DFT_COLOR("rgb:00/af/d7")),
|
||||||
|
COLOR_RES("39", screen.Acolors[39], DFT_COLOR("rgb:00/af/ff")),
|
||||||
|
COLOR_RES("40", screen.Acolors[40], DFT_COLOR("rgb:00/d7/00")),
|
||||||
|
COLOR_RES("41", screen.Acolors[41], DFT_COLOR("rgb:00/d7/5f")),
|
||||||
|
COLOR_RES("42", screen.Acolors[42], DFT_COLOR("rgb:00/d7/87")),
|
||||||
|
COLOR_RES("43", screen.Acolors[43], DFT_COLOR("rgb:00/d7/af")),
|
||||||
|
COLOR_RES("44", screen.Acolors[44], DFT_COLOR("rgb:00/d7/d7")),
|
||||||
|
COLOR_RES("45", screen.Acolors[45], DFT_COLOR("rgb:00/d7/ff")),
|
||||||
|
COLOR_RES("46", screen.Acolors[46], DFT_COLOR("rgb:00/ff/00")),
|
||||||
|
COLOR_RES("47", screen.Acolors[47], DFT_COLOR("rgb:00/ff/5f")),
|
||||||
|
COLOR_RES("48", screen.Acolors[48], DFT_COLOR("rgb:00/ff/87")),
|
||||||
|
COLOR_RES("49", screen.Acolors[49], DFT_COLOR("rgb:00/ff/af")),
|
||||||
|
COLOR_RES("50", screen.Acolors[50], DFT_COLOR("rgb:00/ff/d7")),
|
||||||
|
COLOR_RES("51", screen.Acolors[51], DFT_COLOR("rgb:00/ff/ff")),
|
||||||
|
COLOR_RES("52", screen.Acolors[52], DFT_COLOR("rgb:5f/00/00")),
|
||||||
|
COLOR_RES("53", screen.Acolors[53], DFT_COLOR("rgb:5f/00/5f")),
|
||||||
|
COLOR_RES("54", screen.Acolors[54], DFT_COLOR("rgb:5f/00/87")),
|
||||||
|
COLOR_RES("55", screen.Acolors[55], DFT_COLOR("rgb:5f/00/af")),
|
||||||
|
COLOR_RES("56", screen.Acolors[56], DFT_COLOR("rgb:5f/00/d7")),
|
||||||
|
COLOR_RES("57", screen.Acolors[57], DFT_COLOR("rgb:5f/00/ff")),
|
||||||
|
COLOR_RES("58", screen.Acolors[58], DFT_COLOR("rgb:5f/5f/00")),
|
||||||
|
COLOR_RES("59", screen.Acolors[59], DFT_COLOR("rgb:5f/5f/5f")),
|
||||||
|
COLOR_RES("60", screen.Acolors[60], DFT_COLOR("rgb:5f/5f/87")),
|
||||||
|
COLOR_RES("61", screen.Acolors[61], DFT_COLOR("rgb:5f/5f/af")),
|
||||||
|
COLOR_RES("62", screen.Acolors[62], DFT_COLOR("rgb:5f/5f/d7")),
|
||||||
|
COLOR_RES("63", screen.Acolors[63], DFT_COLOR("rgb:5f/5f/ff")),
|
||||||
|
COLOR_RES("64", screen.Acolors[64], DFT_COLOR("rgb:5f/87/00")),
|
||||||
|
COLOR_RES("65", screen.Acolors[65], DFT_COLOR("rgb:5f/87/5f")),
|
||||||
|
COLOR_RES("66", screen.Acolors[66], DFT_COLOR("rgb:5f/87/87")),
|
||||||
|
COLOR_RES("67", screen.Acolors[67], DFT_COLOR("rgb:5f/87/af")),
|
||||||
|
COLOR_RES("68", screen.Acolors[68], DFT_COLOR("rgb:5f/87/d7")),
|
||||||
|
COLOR_RES("69", screen.Acolors[69], DFT_COLOR("rgb:5f/87/ff")),
|
||||||
|
COLOR_RES("70", screen.Acolors[70], DFT_COLOR("rgb:5f/af/00")),
|
||||||
|
COLOR_RES("71", screen.Acolors[71], DFT_COLOR("rgb:5f/af/5f")),
|
||||||
|
COLOR_RES("72", screen.Acolors[72], DFT_COLOR("rgb:5f/af/87")),
|
||||||
|
COLOR_RES("73", screen.Acolors[73], DFT_COLOR("rgb:5f/af/af")),
|
||||||
|
COLOR_RES("74", screen.Acolors[74], DFT_COLOR("rgb:5f/af/d7")),
|
||||||
|
COLOR_RES("75", screen.Acolors[75], DFT_COLOR("rgb:5f/af/ff")),
|
||||||
|
COLOR_RES("76", screen.Acolors[76], DFT_COLOR("rgb:5f/d7/00")),
|
||||||
|
COLOR_RES("77", screen.Acolors[77], DFT_COLOR("rgb:5f/d7/5f")),
|
||||||
|
COLOR_RES("78", screen.Acolors[78], DFT_COLOR("rgb:5f/d7/87")),
|
||||||
|
COLOR_RES("79", screen.Acolors[79], DFT_COLOR("rgb:5f/d7/af")),
|
||||||
|
COLOR_RES("80", screen.Acolors[80], DFT_COLOR("rgb:5f/d7/d7")),
|
||||||
|
COLOR_RES("81", screen.Acolors[81], DFT_COLOR("rgb:5f/d7/ff")),
|
||||||
|
COLOR_RES("82", screen.Acolors[82], DFT_COLOR("rgb:5f/ff/00")),
|
||||||
|
COLOR_RES("83", screen.Acolors[83], DFT_COLOR("rgb:5f/ff/5f")),
|
||||||
|
COLOR_RES("84", screen.Acolors[84], DFT_COLOR("rgb:5f/ff/87")),
|
||||||
|
COLOR_RES("85", screen.Acolors[85], DFT_COLOR("rgb:5f/ff/af")),
|
||||||
|
COLOR_RES("86", screen.Acolors[86], DFT_COLOR("rgb:5f/ff/d7")),
|
||||||
|
COLOR_RES("87", screen.Acolors[87], DFT_COLOR("rgb:5f/ff/ff")),
|
||||||
|
COLOR_RES("88", screen.Acolors[88], DFT_COLOR("rgb:87/00/00")),
|
||||||
|
COLOR_RES("89", screen.Acolors[89], DFT_COLOR("rgb:87/00/5f")),
|
||||||
|
COLOR_RES("90", screen.Acolors[90], DFT_COLOR("rgb:87/00/87")),
|
||||||
|
COLOR_RES("91", screen.Acolors[91], DFT_COLOR("rgb:87/00/af")),
|
||||||
|
COLOR_RES("92", screen.Acolors[92], DFT_COLOR("rgb:87/00/d7")),
|
||||||
|
COLOR_RES("93", screen.Acolors[93], DFT_COLOR("rgb:87/00/ff")),
|
||||||
|
COLOR_RES("94", screen.Acolors[94], DFT_COLOR("rgb:87/5f/00")),
|
||||||
|
COLOR_RES("95", screen.Acolors[95], DFT_COLOR("rgb:87/5f/5f")),
|
||||||
|
COLOR_RES("96", screen.Acolors[96], DFT_COLOR("rgb:87/5f/87")),
|
||||||
|
COLOR_RES("97", screen.Acolors[97], DFT_COLOR("rgb:87/5f/af")),
|
||||||
|
COLOR_RES("98", screen.Acolors[98], DFT_COLOR("rgb:87/5f/d7")),
|
||||||
|
COLOR_RES("99", screen.Acolors[99], DFT_COLOR("rgb:87/5f/ff")),
|
||||||
|
COLOR_RES("100", screen.Acolors[100], DFT_COLOR("rgb:87/87/00")),
|
||||||
|
COLOR_RES("101", screen.Acolors[101], DFT_COLOR("rgb:87/87/5f")),
|
||||||
|
COLOR_RES("102", screen.Acolors[102], DFT_COLOR("rgb:87/87/87")),
|
||||||
|
COLOR_RES("103", screen.Acolors[103], DFT_COLOR("rgb:87/87/af")),
|
||||||
|
COLOR_RES("104", screen.Acolors[104], DFT_COLOR("rgb:87/87/d7")),
|
||||||
|
COLOR_RES("105", screen.Acolors[105], DFT_COLOR("rgb:87/87/ff")),
|
||||||
|
COLOR_RES("106", screen.Acolors[106], DFT_COLOR("rgb:87/af/00")),
|
||||||
|
COLOR_RES("107", screen.Acolors[107], DFT_COLOR("rgb:87/af/5f")),
|
||||||
|
COLOR_RES("108", screen.Acolors[108], DFT_COLOR("rgb:87/af/87")),
|
||||||
|
COLOR_RES("109", screen.Acolors[109], DFT_COLOR("rgb:87/af/af")),
|
||||||
|
COLOR_RES("110", screen.Acolors[110], DFT_COLOR("rgb:87/af/d7")),
|
||||||
|
COLOR_RES("111", screen.Acolors[111], DFT_COLOR("rgb:87/af/ff")),
|
||||||
|
COLOR_RES("112", screen.Acolors[112], DFT_COLOR("rgb:87/d7/00")),
|
||||||
|
COLOR_RES("113", screen.Acolors[113], DFT_COLOR("rgb:87/d7/5f")),
|
||||||
|
COLOR_RES("114", screen.Acolors[114], DFT_COLOR("rgb:87/d7/87")),
|
||||||
|
COLOR_RES("115", screen.Acolors[115], DFT_COLOR("rgb:87/d7/af")),
|
||||||
|
COLOR_RES("116", screen.Acolors[116], DFT_COLOR("rgb:87/d7/d7")),
|
||||||
|
COLOR_RES("117", screen.Acolors[117], DFT_COLOR("rgb:87/d7/ff")),
|
||||||
|
COLOR_RES("118", screen.Acolors[118], DFT_COLOR("rgb:87/ff/00")),
|
||||||
|
COLOR_RES("119", screen.Acolors[119], DFT_COLOR("rgb:87/ff/5f")),
|
||||||
|
COLOR_RES("120", screen.Acolors[120], DFT_COLOR("rgb:87/ff/87")),
|
||||||
|
COLOR_RES("121", screen.Acolors[121], DFT_COLOR("rgb:87/ff/af")),
|
||||||
|
COLOR_RES("122", screen.Acolors[122], DFT_COLOR("rgb:87/ff/d7")),
|
||||||
|
COLOR_RES("123", screen.Acolors[123], DFT_COLOR("rgb:87/ff/ff")),
|
||||||
|
COLOR_RES("124", screen.Acolors[124], DFT_COLOR("rgb:af/00/00")),
|
||||||
|
COLOR_RES("125", screen.Acolors[125], DFT_COLOR("rgb:af/00/5f")),
|
||||||
|
COLOR_RES("126", screen.Acolors[126], DFT_COLOR("rgb:af/00/87")),
|
||||||
|
COLOR_RES("127", screen.Acolors[127], DFT_COLOR("rgb:af/00/af")),
|
||||||
|
COLOR_RES("128", screen.Acolors[128], DFT_COLOR("rgb:af/00/d7")),
|
||||||
|
COLOR_RES("129", screen.Acolors[129], DFT_COLOR("rgb:af/00/ff")),
|
||||||
|
COLOR_RES("130", screen.Acolors[130], DFT_COLOR("rgb:af/5f/00")),
|
||||||
|
COLOR_RES("131", screen.Acolors[131], DFT_COLOR("rgb:af/5f/5f")),
|
||||||
|
COLOR_RES("132", screen.Acolors[132], DFT_COLOR("rgb:af/5f/87")),
|
||||||
|
COLOR_RES("133", screen.Acolors[133], DFT_COLOR("rgb:af/5f/af")),
|
||||||
|
COLOR_RES("134", screen.Acolors[134], DFT_COLOR("rgb:af/5f/d7")),
|
||||||
|
COLOR_RES("135", screen.Acolors[135], DFT_COLOR("rgb:af/5f/ff")),
|
||||||
|
COLOR_RES("136", screen.Acolors[136], DFT_COLOR("rgb:af/87/00")),
|
||||||
|
COLOR_RES("137", screen.Acolors[137], DFT_COLOR("rgb:af/87/5f")),
|
||||||
|
COLOR_RES("138", screen.Acolors[138], DFT_COLOR("rgb:af/87/87")),
|
||||||
|
COLOR_RES("139", screen.Acolors[139], DFT_COLOR("rgb:af/87/af")),
|
||||||
|
COLOR_RES("140", screen.Acolors[140], DFT_COLOR("rgb:af/87/d7")),
|
||||||
|
COLOR_RES("141", screen.Acolors[141], DFT_COLOR("rgb:af/87/ff")),
|
||||||
|
COLOR_RES("142", screen.Acolors[142], DFT_COLOR("rgb:af/af/00")),
|
||||||
|
COLOR_RES("143", screen.Acolors[143], DFT_COLOR("rgb:af/af/5f")),
|
||||||
|
COLOR_RES("144", screen.Acolors[144], DFT_COLOR("rgb:af/af/87")),
|
||||||
|
COLOR_RES("145", screen.Acolors[145], DFT_COLOR("rgb:af/af/af")),
|
||||||
|
COLOR_RES("146", screen.Acolors[146], DFT_COLOR("rgb:af/af/d7")),
|
||||||
|
COLOR_RES("147", screen.Acolors[147], DFT_COLOR("rgb:af/af/ff")),
|
||||||
|
COLOR_RES("148", screen.Acolors[148], DFT_COLOR("rgb:af/d7/00")),
|
||||||
|
COLOR_RES("149", screen.Acolors[149], DFT_COLOR("rgb:af/d7/5f")),
|
||||||
|
COLOR_RES("150", screen.Acolors[150], DFT_COLOR("rgb:af/d7/87")),
|
||||||
|
COLOR_RES("151", screen.Acolors[151], DFT_COLOR("rgb:af/d7/af")),
|
||||||
|
COLOR_RES("152", screen.Acolors[152], DFT_COLOR("rgb:af/d7/d7")),
|
||||||
|
COLOR_RES("153", screen.Acolors[153], DFT_COLOR("rgb:af/d7/ff")),
|
||||||
|
COLOR_RES("154", screen.Acolors[154], DFT_COLOR("rgb:af/ff/00")),
|
||||||
|
COLOR_RES("155", screen.Acolors[155], DFT_COLOR("rgb:af/ff/5f")),
|
||||||
|
COLOR_RES("156", screen.Acolors[156], DFT_COLOR("rgb:af/ff/87")),
|
||||||
|
COLOR_RES("157", screen.Acolors[157], DFT_COLOR("rgb:af/ff/af")),
|
||||||
|
COLOR_RES("158", screen.Acolors[158], DFT_COLOR("rgb:af/ff/d7")),
|
||||||
|
COLOR_RES("159", screen.Acolors[159], DFT_COLOR("rgb:af/ff/ff")),
|
||||||
|
COLOR_RES("160", screen.Acolors[160], DFT_COLOR("rgb:d7/00/00")),
|
||||||
|
COLOR_RES("161", screen.Acolors[161], DFT_COLOR("rgb:d7/00/5f")),
|
||||||
|
COLOR_RES("162", screen.Acolors[162], DFT_COLOR("rgb:d7/00/87")),
|
||||||
|
COLOR_RES("163", screen.Acolors[163], DFT_COLOR("rgb:d7/00/af")),
|
||||||
|
COLOR_RES("164", screen.Acolors[164], DFT_COLOR("rgb:d7/00/d7")),
|
||||||
|
COLOR_RES("165", screen.Acolors[165], DFT_COLOR("rgb:d7/00/ff")),
|
||||||
|
COLOR_RES("166", screen.Acolors[166], DFT_COLOR("rgb:d7/5f/00")),
|
||||||
|
COLOR_RES("167", screen.Acolors[167], DFT_COLOR("rgb:d7/5f/5f")),
|
||||||
|
COLOR_RES("168", screen.Acolors[168], DFT_COLOR("rgb:d7/5f/87")),
|
||||||
|
COLOR_RES("169", screen.Acolors[169], DFT_COLOR("rgb:d7/5f/af")),
|
||||||
|
COLOR_RES("170", screen.Acolors[170], DFT_COLOR("rgb:d7/5f/d7")),
|
||||||
|
COLOR_RES("171", screen.Acolors[171], DFT_COLOR("rgb:d7/5f/ff")),
|
||||||
|
COLOR_RES("172", screen.Acolors[172], DFT_COLOR("rgb:d7/87/00")),
|
||||||
|
COLOR_RES("173", screen.Acolors[173], DFT_COLOR("rgb:d7/87/5f")),
|
||||||
|
COLOR_RES("174", screen.Acolors[174], DFT_COLOR("rgb:d7/87/87")),
|
||||||
|
COLOR_RES("175", screen.Acolors[175], DFT_COLOR("rgb:d7/87/af")),
|
||||||
|
COLOR_RES("176", screen.Acolors[176], DFT_COLOR("rgb:d7/87/d7")),
|
||||||
|
COLOR_RES("177", screen.Acolors[177], DFT_COLOR("rgb:d7/87/ff")),
|
||||||
|
COLOR_RES("178", screen.Acolors[178], DFT_COLOR("rgb:d7/af/00")),
|
||||||
|
COLOR_RES("179", screen.Acolors[179], DFT_COLOR("rgb:d7/af/5f")),
|
||||||
|
COLOR_RES("180", screen.Acolors[180], DFT_COLOR("rgb:d7/af/87")),
|
||||||
|
COLOR_RES("181", screen.Acolors[181], DFT_COLOR("rgb:d7/af/af")),
|
||||||
|
COLOR_RES("182", screen.Acolors[182], DFT_COLOR("rgb:d7/af/d7")),
|
||||||
|
COLOR_RES("183", screen.Acolors[183], DFT_COLOR("rgb:d7/af/ff")),
|
||||||
|
COLOR_RES("184", screen.Acolors[184], DFT_COLOR("rgb:d7/d7/00")),
|
||||||
|
COLOR_RES("185", screen.Acolors[185], DFT_COLOR("rgb:d7/d7/5f")),
|
||||||
|
COLOR_RES("186", screen.Acolors[186], DFT_COLOR("rgb:d7/d7/87")),
|
||||||
|
COLOR_RES("187", screen.Acolors[187], DFT_COLOR("rgb:d7/d7/af")),
|
||||||
|
COLOR_RES("188", screen.Acolors[188], DFT_COLOR("rgb:d7/d7/d7")),
|
||||||
|
COLOR_RES("189", screen.Acolors[189], DFT_COLOR("rgb:d7/d7/ff")),
|
||||||
|
COLOR_RES("190", screen.Acolors[190], DFT_COLOR("rgb:d7/ff/00")),
|
||||||
|
COLOR_RES("191", screen.Acolors[191], DFT_COLOR("rgb:d7/ff/5f")),
|
||||||
|
COLOR_RES("192", screen.Acolors[192], DFT_COLOR("rgb:d7/ff/87")),
|
||||||
|
COLOR_RES("193", screen.Acolors[193], DFT_COLOR("rgb:d7/ff/af")),
|
||||||
|
COLOR_RES("194", screen.Acolors[194], DFT_COLOR("rgb:d7/ff/d7")),
|
||||||
|
COLOR_RES("195", screen.Acolors[195], DFT_COLOR("rgb:d7/ff/ff")),
|
||||||
|
COLOR_RES("196", screen.Acolors[196], DFT_COLOR("rgb:ff/00/00")),
|
||||||
|
COLOR_RES("197", screen.Acolors[197], DFT_COLOR("rgb:ff/00/5f")),
|
||||||
|
COLOR_RES("198", screen.Acolors[198], DFT_COLOR("rgb:ff/00/87")),
|
||||||
|
COLOR_RES("199", screen.Acolors[199], DFT_COLOR("rgb:ff/00/af")),
|
||||||
|
COLOR_RES("200", screen.Acolors[200], DFT_COLOR("rgb:ff/00/d7")),
|
||||||
|
COLOR_RES("201", screen.Acolors[201], DFT_COLOR("rgb:ff/00/ff")),
|
||||||
|
COLOR_RES("202", screen.Acolors[202], DFT_COLOR("rgb:ff/5f/00")),
|
||||||
|
COLOR_RES("203", screen.Acolors[203], DFT_COLOR("rgb:ff/5f/5f")),
|
||||||
|
COLOR_RES("204", screen.Acolors[204], DFT_COLOR("rgb:ff/5f/87")),
|
||||||
|
COLOR_RES("205", screen.Acolors[205], DFT_COLOR("rgb:ff/5f/af")),
|
||||||
|
COLOR_RES("206", screen.Acolors[206], DFT_COLOR("rgb:ff/5f/d7")),
|
||||||
|
COLOR_RES("207", screen.Acolors[207], DFT_COLOR("rgb:ff/5f/ff")),
|
||||||
|
COLOR_RES("208", screen.Acolors[208], DFT_COLOR("rgb:ff/87/00")),
|
||||||
|
COLOR_RES("209", screen.Acolors[209], DFT_COLOR("rgb:ff/87/5f")),
|
||||||
|
COLOR_RES("210", screen.Acolors[210], DFT_COLOR("rgb:ff/87/87")),
|
||||||
|
COLOR_RES("211", screen.Acolors[211], DFT_COLOR("rgb:ff/87/af")),
|
||||||
|
COLOR_RES("212", screen.Acolors[212], DFT_COLOR("rgb:ff/87/d7")),
|
||||||
|
COLOR_RES("213", screen.Acolors[213], DFT_COLOR("rgb:ff/87/ff")),
|
||||||
|
COLOR_RES("214", screen.Acolors[214], DFT_COLOR("rgb:ff/af/00")),
|
||||||
|
COLOR_RES("215", screen.Acolors[215], DFT_COLOR("rgb:ff/af/5f")),
|
||||||
|
COLOR_RES("216", screen.Acolors[216], DFT_COLOR("rgb:ff/af/87")),
|
||||||
|
COLOR_RES("217", screen.Acolors[217], DFT_COLOR("rgb:ff/af/af")),
|
||||||
|
COLOR_RES("218", screen.Acolors[218], DFT_COLOR("rgb:ff/af/d7")),
|
||||||
|
COLOR_RES("219", screen.Acolors[219], DFT_COLOR("rgb:ff/af/ff")),
|
||||||
|
COLOR_RES("220", screen.Acolors[220], DFT_COLOR("rgb:ff/d7/00")),
|
||||||
|
COLOR_RES("221", screen.Acolors[221], DFT_COLOR("rgb:ff/d7/5f")),
|
||||||
|
COLOR_RES("222", screen.Acolors[222], DFT_COLOR("rgb:ff/d7/87")),
|
||||||
|
COLOR_RES("223", screen.Acolors[223], DFT_COLOR("rgb:ff/d7/af")),
|
||||||
|
COLOR_RES("224", screen.Acolors[224], DFT_COLOR("rgb:ff/d7/d7")),
|
||||||
|
COLOR_RES("225", screen.Acolors[225], DFT_COLOR("rgb:ff/d7/ff")),
|
||||||
|
COLOR_RES("226", screen.Acolors[226], DFT_COLOR("rgb:ff/ff/00")),
|
||||||
|
COLOR_RES("227", screen.Acolors[227], DFT_COLOR("rgb:ff/ff/5f")),
|
||||||
|
COLOR_RES("228", screen.Acolors[228], DFT_COLOR("rgb:ff/ff/87")),
|
||||||
|
COLOR_RES("229", screen.Acolors[229], DFT_COLOR("rgb:ff/ff/af")),
|
||||||
|
COLOR_RES("230", screen.Acolors[230], DFT_COLOR("rgb:ff/ff/d7")),
|
||||||
|
COLOR_RES("231", screen.Acolors[231], DFT_COLOR("rgb:ff/ff/ff")),
|
||||||
|
COLOR_RES("232", screen.Acolors[232], DFT_COLOR("rgb:08/08/08")),
|
||||||
|
COLOR_RES("233", screen.Acolors[233], DFT_COLOR("rgb:12/12/12")),
|
||||||
|
COLOR_RES("234", screen.Acolors[234], DFT_COLOR("rgb:1c/1c/1c")),
|
||||||
|
COLOR_RES("235", screen.Acolors[235], DFT_COLOR("rgb:26/26/26")),
|
||||||
|
COLOR_RES("236", screen.Acolors[236], DFT_COLOR("rgb:30/30/30")),
|
||||||
|
COLOR_RES("237", screen.Acolors[237], DFT_COLOR("rgb:3a/3a/3a")),
|
||||||
|
COLOR_RES("238", screen.Acolors[238], DFT_COLOR("rgb:44/44/44")),
|
||||||
|
COLOR_RES("239", screen.Acolors[239], DFT_COLOR("rgb:4e/4e/4e")),
|
||||||
|
COLOR_RES("240", screen.Acolors[240], DFT_COLOR("rgb:58/58/58")),
|
||||||
|
COLOR_RES("241", screen.Acolors[241], DFT_COLOR("rgb:62/62/62")),
|
||||||
|
COLOR_RES("242", screen.Acolors[242], DFT_COLOR("rgb:6c/6c/6c")),
|
||||||
|
COLOR_RES("243", screen.Acolors[243], DFT_COLOR("rgb:76/76/76")),
|
||||||
|
COLOR_RES("244", screen.Acolors[244], DFT_COLOR("rgb:80/80/80")),
|
||||||
|
COLOR_RES("245", screen.Acolors[245], DFT_COLOR("rgb:8a/8a/8a")),
|
||||||
|
COLOR_RES("246", screen.Acolors[246], DFT_COLOR("rgb:94/94/94")),
|
||||||
|
COLOR_RES("247", screen.Acolors[247], DFT_COLOR("rgb:9e/9e/9e")),
|
||||||
|
COLOR_RES("248", screen.Acolors[248], DFT_COLOR("rgb:a8/a8/a8")),
|
||||||
|
COLOR_RES("249", screen.Acolors[249], DFT_COLOR("rgb:b2/b2/b2")),
|
||||||
|
COLOR_RES("250", screen.Acolors[250], DFT_COLOR("rgb:bc/bc/bc")),
|
||||||
|
COLOR_RES("251", screen.Acolors[251], DFT_COLOR("rgb:c6/c6/c6")),
|
||||||
|
COLOR_RES("252", screen.Acolors[252], DFT_COLOR("rgb:d0/d0/d0")),
|
||||||
|
COLOR_RES("253", screen.Acolors[253], DFT_COLOR("rgb:da/da/da")),
|
||||||
|
COLOR_RES("254", screen.Acolors[254], DFT_COLOR("rgb:e4/e4/e4")),
|
||||||
|
COLOR_RES("255", screen.Acolors[255], DFT_COLOR("rgb:ee/ee/ee")),
|
||||||
|
|
||||||
|
#endif /* included_256colres_h */
|
93
ports/xterm/xterm-359/256colres.pl
Executable file
93
ports/xterm/xterm-359/256colres.pl
Executable file
@ -0,0 +1,93 @@
|
|||||||
|
#! /usr/bin/perl
|
||||||
|
# $XTermId: 256colres.pl,v 1.16 2007/06/08 23:58:37 tom Exp $
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# this file is part of xterm
|
||||||
|
#
|
||||||
|
# Copyright 1999-2002,2007 by Thomas E. Dickey
|
||||||
|
#
|
||||||
|
# All Rights Reserved
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
# copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
# Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
# holders shall not be used in advertising or otherwise to promote the
|
||||||
|
# sale, use or other dealings in this Software without prior written
|
||||||
|
# authorization.
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# Construct a header file defining default resources for the 256-color model
|
||||||
|
# of xterm. This is modeled after the 256colors2.pl script.
|
||||||
|
|
||||||
|
# use the resources for colors 0-15 - usually more-or-less a
|
||||||
|
# reproduction of the standard ANSI colors, but possibly more
|
||||||
|
# pleasing shades
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
our ( $line1, $line2, $line3 );
|
||||||
|
our ( $red, $green, $blue, $gray );
|
||||||
|
our ( $level, $code, @steps );
|
||||||
|
|
||||||
|
print <<EOF;
|
||||||
|
/*
|
||||||
|
* This header file was generated by $0
|
||||||
|
*/
|
||||||
|
/* \$XTermId\$ */
|
||||||
|
|
||||||
|
#ifndef included_256colres_h
|
||||||
|
#define included_256colres_h
|
||||||
|
|
||||||
|
EOF
|
||||||
|
|
||||||
|
$line1="COLOR_RES(\"%d\",";
|
||||||
|
$line2="\tscreen.Acolors[%d],";
|
||||||
|
$line3="\tDFT_COLOR(\"rgb:%2.2x/%2.2x/%2.2x\")),\n";
|
||||||
|
|
||||||
|
# colors 16-231 are a 6x6x6 color cube
|
||||||
|
for ($red = 0; $red < 6; $red++) {
|
||||||
|
for ($green = 0; $green < 6; $green++) {
|
||||||
|
for ($blue = 0; $blue < 6; $blue++) {
|
||||||
|
$code = 16 + ($red * 36) + ($green * 6) + $blue;
|
||||||
|
printf($line1, $code);
|
||||||
|
printf($line2, $code);
|
||||||
|
printf($line3,
|
||||||
|
($red ? ($red * 40 + 55) : 0),
|
||||||
|
($green ? ($green * 40 + 55) : 0),
|
||||||
|
($blue ? ($blue * 40 + 55) : 0));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# colors 232-255 are a grayscale ramp, intentionally leaving out
|
||||||
|
# black and white
|
||||||
|
$code=232;
|
||||||
|
for ($gray = 0; $gray < 24; $gray++) {
|
||||||
|
$level = ($gray * 10) + 8;
|
||||||
|
$code = 232 + $gray;
|
||||||
|
printf($line1, $code);
|
||||||
|
printf($line2, $code);
|
||||||
|
printf($line3,
|
||||||
|
$level, $level, $level);
|
||||||
|
}
|
||||||
|
|
||||||
|
print <<EOF;
|
||||||
|
|
||||||
|
#endif /* included_256colres_h */
|
||||||
|
EOF
|
82
ports/xterm/xterm-359/88colres.h
Normal file
82
ports/xterm/xterm-359/88colres.h
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
/*
|
||||||
|
* This header file was generated by ./88colres.pl
|
||||||
|
*/
|
||||||
|
/* $XTermId: 88colres.h,v 1.11 2007/06/12 00:44:21 tom Exp $ */
|
||||||
|
|
||||||
|
#ifndef included_88colres_h
|
||||||
|
#define included_88colres_h
|
||||||
|
|
||||||
|
COLOR_RES("16", screen.Acolors[16], DFT_COLOR("rgb:00/00/00")),
|
||||||
|
COLOR_RES("17", screen.Acolors[17], DFT_COLOR("rgb:00/00/8b")),
|
||||||
|
COLOR_RES("18", screen.Acolors[18], DFT_COLOR("rgb:00/00/cd")),
|
||||||
|
COLOR_RES("19", screen.Acolors[19], DFT_COLOR("rgb:00/00/ff")),
|
||||||
|
COLOR_RES("20", screen.Acolors[20], DFT_COLOR("rgb:00/8b/00")),
|
||||||
|
COLOR_RES("21", screen.Acolors[21], DFT_COLOR("rgb:00/8b/8b")),
|
||||||
|
COLOR_RES("22", screen.Acolors[22], DFT_COLOR("rgb:00/8b/cd")),
|
||||||
|
COLOR_RES("23", screen.Acolors[23], DFT_COLOR("rgb:00/8b/ff")),
|
||||||
|
COLOR_RES("24", screen.Acolors[24], DFT_COLOR("rgb:00/cd/00")),
|
||||||
|
COLOR_RES("25", screen.Acolors[25], DFT_COLOR("rgb:00/cd/8b")),
|
||||||
|
COLOR_RES("26", screen.Acolors[26], DFT_COLOR("rgb:00/cd/cd")),
|
||||||
|
COLOR_RES("27", screen.Acolors[27], DFT_COLOR("rgb:00/cd/ff")),
|
||||||
|
COLOR_RES("28", screen.Acolors[28], DFT_COLOR("rgb:00/ff/00")),
|
||||||
|
COLOR_RES("29", screen.Acolors[29], DFT_COLOR("rgb:00/ff/8b")),
|
||||||
|
COLOR_RES("30", screen.Acolors[30], DFT_COLOR("rgb:00/ff/cd")),
|
||||||
|
COLOR_RES("31", screen.Acolors[31], DFT_COLOR("rgb:00/ff/ff")),
|
||||||
|
COLOR_RES("32", screen.Acolors[32], DFT_COLOR("rgb:8b/00/00")),
|
||||||
|
COLOR_RES("33", screen.Acolors[33], DFT_COLOR("rgb:8b/00/8b")),
|
||||||
|
COLOR_RES("34", screen.Acolors[34], DFT_COLOR("rgb:8b/00/cd")),
|
||||||
|
COLOR_RES("35", screen.Acolors[35], DFT_COLOR("rgb:8b/00/ff")),
|
||||||
|
COLOR_RES("36", screen.Acolors[36], DFT_COLOR("rgb:8b/8b/00")),
|
||||||
|
COLOR_RES("37", screen.Acolors[37], DFT_COLOR("rgb:8b/8b/8b")),
|
||||||
|
COLOR_RES("38", screen.Acolors[38], DFT_COLOR("rgb:8b/8b/cd")),
|
||||||
|
COLOR_RES("39", screen.Acolors[39], DFT_COLOR("rgb:8b/8b/ff")),
|
||||||
|
COLOR_RES("40", screen.Acolors[40], DFT_COLOR("rgb:8b/cd/00")),
|
||||||
|
COLOR_RES("41", screen.Acolors[41], DFT_COLOR("rgb:8b/cd/8b")),
|
||||||
|
COLOR_RES("42", screen.Acolors[42], DFT_COLOR("rgb:8b/cd/cd")),
|
||||||
|
COLOR_RES("43", screen.Acolors[43], DFT_COLOR("rgb:8b/cd/ff")),
|
||||||
|
COLOR_RES("44", screen.Acolors[44], DFT_COLOR("rgb:8b/ff/00")),
|
||||||
|
COLOR_RES("45", screen.Acolors[45], DFT_COLOR("rgb:8b/ff/8b")),
|
||||||
|
COLOR_RES("46", screen.Acolors[46], DFT_COLOR("rgb:8b/ff/cd")),
|
||||||
|
COLOR_RES("47", screen.Acolors[47], DFT_COLOR("rgb:8b/ff/ff")),
|
||||||
|
COLOR_RES("48", screen.Acolors[48], DFT_COLOR("rgb:cd/00/00")),
|
||||||
|
COLOR_RES("49", screen.Acolors[49], DFT_COLOR("rgb:cd/00/8b")),
|
||||||
|
COLOR_RES("50", screen.Acolors[50], DFT_COLOR("rgb:cd/00/cd")),
|
||||||
|
COLOR_RES("51", screen.Acolors[51], DFT_COLOR("rgb:cd/00/ff")),
|
||||||
|
COLOR_RES("52", screen.Acolors[52], DFT_COLOR("rgb:cd/8b/00")),
|
||||||
|
COLOR_RES("53", screen.Acolors[53], DFT_COLOR("rgb:cd/8b/8b")),
|
||||||
|
COLOR_RES("54", screen.Acolors[54], DFT_COLOR("rgb:cd/8b/cd")),
|
||||||
|
COLOR_RES("55", screen.Acolors[55], DFT_COLOR("rgb:cd/8b/ff")),
|
||||||
|
COLOR_RES("56", screen.Acolors[56], DFT_COLOR("rgb:cd/cd/00")),
|
||||||
|
COLOR_RES("57", screen.Acolors[57], DFT_COLOR("rgb:cd/cd/8b")),
|
||||||
|
COLOR_RES("58", screen.Acolors[58], DFT_COLOR("rgb:cd/cd/cd")),
|
||||||
|
COLOR_RES("59", screen.Acolors[59], DFT_COLOR("rgb:cd/cd/ff")),
|
||||||
|
COLOR_RES("60", screen.Acolors[60], DFT_COLOR("rgb:cd/ff/00")),
|
||||||
|
COLOR_RES("61", screen.Acolors[61], DFT_COLOR("rgb:cd/ff/8b")),
|
||||||
|
COLOR_RES("62", screen.Acolors[62], DFT_COLOR("rgb:cd/ff/cd")),
|
||||||
|
COLOR_RES("63", screen.Acolors[63], DFT_COLOR("rgb:cd/ff/ff")),
|
||||||
|
COLOR_RES("64", screen.Acolors[64], DFT_COLOR("rgb:ff/00/00")),
|
||||||
|
COLOR_RES("65", screen.Acolors[65], DFT_COLOR("rgb:ff/00/8b")),
|
||||||
|
COLOR_RES("66", screen.Acolors[66], DFT_COLOR("rgb:ff/00/cd")),
|
||||||
|
COLOR_RES("67", screen.Acolors[67], DFT_COLOR("rgb:ff/00/ff")),
|
||||||
|
COLOR_RES("68", screen.Acolors[68], DFT_COLOR("rgb:ff/8b/00")),
|
||||||
|
COLOR_RES("69", screen.Acolors[69], DFT_COLOR("rgb:ff/8b/8b")),
|
||||||
|
COLOR_RES("70", screen.Acolors[70], DFT_COLOR("rgb:ff/8b/cd")),
|
||||||
|
COLOR_RES("71", screen.Acolors[71], DFT_COLOR("rgb:ff/8b/ff")),
|
||||||
|
COLOR_RES("72", screen.Acolors[72], DFT_COLOR("rgb:ff/cd/00")),
|
||||||
|
COLOR_RES("73", screen.Acolors[73], DFT_COLOR("rgb:ff/cd/8b")),
|
||||||
|
COLOR_RES("74", screen.Acolors[74], DFT_COLOR("rgb:ff/cd/cd")),
|
||||||
|
COLOR_RES("75", screen.Acolors[75], DFT_COLOR("rgb:ff/cd/ff")),
|
||||||
|
COLOR_RES("76", screen.Acolors[76], DFT_COLOR("rgb:ff/ff/00")),
|
||||||
|
COLOR_RES("77", screen.Acolors[77], DFT_COLOR("rgb:ff/ff/8b")),
|
||||||
|
COLOR_RES("78", screen.Acolors[78], DFT_COLOR("rgb:ff/ff/cd")),
|
||||||
|
COLOR_RES("79", screen.Acolors[79], DFT_COLOR("rgb:ff/ff/ff")),
|
||||||
|
COLOR_RES("80", screen.Acolors[80], DFT_COLOR("rgb:2e/2e/2e")),
|
||||||
|
COLOR_RES("81", screen.Acolors[81], DFT_COLOR("rgb:5c/5c/5c")),
|
||||||
|
COLOR_RES("82", screen.Acolors[82], DFT_COLOR("rgb:73/73/73")),
|
||||||
|
COLOR_RES("83", screen.Acolors[83], DFT_COLOR("rgb:8b/8b/8b")),
|
||||||
|
COLOR_RES("84", screen.Acolors[84], DFT_COLOR("rgb:a2/a2/a2")),
|
||||||
|
COLOR_RES("85", screen.Acolors[85], DFT_COLOR("rgb:b9/b9/b9")),
|
||||||
|
COLOR_RES("86", screen.Acolors[86], DFT_COLOR("rgb:d0/d0/d0")),
|
||||||
|
COLOR_RES("87", screen.Acolors[87], DFT_COLOR("rgb:e7/e7/e7")),
|
||||||
|
|
||||||
|
#endif /* included_88colres_h */
|
96
ports/xterm/xterm-359/88colres.pl
Executable file
96
ports/xterm/xterm-359/88colres.pl
Executable file
@ -0,0 +1,96 @@
|
|||||||
|
#!/usr/bin/perl
|
||||||
|
# $XTermId: 88colres.pl,v 1.17 2007/06/08 23:57:23 tom Exp $
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# this file is part of xterm
|
||||||
|
#
|
||||||
|
# Copyright 1999-2005,2007 by Thomas E. Dickey
|
||||||
|
# Copyright 1999-2000 by Steve Wall
|
||||||
|
#
|
||||||
|
# All Rights Reserved
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
# copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
# Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
# holders shall not be used in advertising or otherwise to promote the
|
||||||
|
# sale, use or other dealings in this Software without prior written
|
||||||
|
# authorization.
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# Made from 256colres.pl
|
||||||
|
|
||||||
|
# Construct a header file defining default resources for the
|
||||||
|
# 88-color model of xterm.
|
||||||
|
|
||||||
|
# use the resources for colors 0-15 - usually more-or-less a
|
||||||
|
# reproduction of the standard ANSI colors, but possibly more
|
||||||
|
# pleasing shades
|
||||||
|
|
||||||
|
use strict;
|
||||||
|
|
||||||
|
our ( $line1, $line2, $line3 );
|
||||||
|
our ( $red, $green, $blue, $gray );
|
||||||
|
our ( $level, $code, @steps );
|
||||||
|
|
||||||
|
print <<EOF;
|
||||||
|
/*
|
||||||
|
* This header file was generated by $0
|
||||||
|
*/
|
||||||
|
/* \$XTermId\$ */
|
||||||
|
|
||||||
|
#ifndef included_88colres_h
|
||||||
|
#define included_88colres_h
|
||||||
|
|
||||||
|
EOF
|
||||||
|
|
||||||
|
$line1="COLOR_RES(\"%d\",";
|
||||||
|
$line2="\tscreen.Acolors[%d],";
|
||||||
|
$line3="\tDFT_COLOR(\"rgb:%2.2x/%2.2x/%2.2x\")),\n";
|
||||||
|
@steps=(0,139,205,255);
|
||||||
|
|
||||||
|
# colors 16-79 are a 4x4x4 color cube
|
||||||
|
for ($red = 0; $red < 4; $red++) {
|
||||||
|
for ($green = 0; $green < 4; $green++) {
|
||||||
|
for ($blue = 0; $blue < 4; $blue++) {
|
||||||
|
$code = 16 + ($red * 16) + ($green * 4) + $blue;
|
||||||
|
printf($line1, $code);
|
||||||
|
printf($line2, $code);
|
||||||
|
printf($line3,
|
||||||
|
int (@steps[$red]),
|
||||||
|
int (@steps[$green]),
|
||||||
|
int (@steps[$blue]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# colors 80-87 are a grayscale ramp, intentionally leaving out
|
||||||
|
# black and white
|
||||||
|
for ($gray = 0; $gray < 8; $gray++) {
|
||||||
|
$level = ($gray * 23.18181818) + 46.36363636;
|
||||||
|
if( $gray > 0 ) { $level += 23.18181818; }
|
||||||
|
$code = 80 + $gray;
|
||||||
|
printf($line1, $code);
|
||||||
|
printf($line2, $code);
|
||||||
|
printf($line3,
|
||||||
|
int($level), int($level), int($level));
|
||||||
|
}
|
||||||
|
|
||||||
|
print <<EOF;
|
||||||
|
|
||||||
|
#endif /* included_88colres_h */
|
||||||
|
EOF
|
48
ports/xterm/xterm-359/AAA_README_VMS.txt
Normal file
48
ports/xterm/xterm-359/AAA_README_VMS.txt
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
http://dickey.his.com/xterm/xterm.html
|
||||||
|
|
||||||
|
Downloaded 1.22 variant (current Linux version) on 18-JAN-2000.
|
||||||
|
|
||||||
|
Port stalled for a few days because OpenVMS X11 lacks XtGravity.
|
||||||
|
|
||||||
|
X11KIT shared libraries almost work, but missing _XA_ symbols
|
||||||
|
for some reason.
|
||||||
|
|
||||||
|
Copied X11KIT [.xaw3d] and [.xmu] into [.lib], put together simplified
|
||||||
|
build procedures. Made a few mods. Merged in some changes from
|
||||||
|
Patrick Young. Now these build mostly ok except for tons of bcopy
|
||||||
|
related warnings and problems with LAYOUT.C.
|
||||||
|
|
||||||
|
Merged changes from Xterm021 into here.
|
||||||
|
|
||||||
|
Made changes here and there to get it all to work.
|
||||||
|
|
||||||
|
25-JAN-2000, more or less done. Logging doesn't work but PRINT
|
||||||
|
does, as does regular VT emulation, TEK emulation, 80 and 132 wide
|
||||||
|
modes. The resource file needs work. Cleaned up a really nasty problem
|
||||||
|
with infinite loops on copy/paste in button.c (see tt_pasting).
|
||||||
|
|
||||||
|
To build this, if you have DECC, DW 1.2-5 and VMS 7.2-1 (the latter
|
||||||
|
probably doesn't matter) do:
|
||||||
|
|
||||||
|
$ @make
|
||||||
|
|
||||||
|
in the top directory. Expect a bunch of I and W warnings, but nothing
|
||||||
|
worse. Then define a foreign symbol for xterm for the resulting .exe.
|
||||||
|
|
||||||
|
26-JAN-2000. Enabled logging. When this is turned on from the menu
|
||||||
|
it creates a new file SYS$SCRATCH:XTERM_LOG.TXT and writes everything that
|
||||||
|
goes to the screen into it. This may slow down output a bit as each block
|
||||||
|
of data read must be copied to disk. The log file has RMS format stream-lf
|
||||||
|
and typically has a <CR> at the end of each line.
|
||||||
|
|
||||||
|
27-JAN-2000. Discovered a bug when doing an X11 paste into an EDT session,
|
||||||
|
had to add a tt_start_read() in button.c after the paste to reenable the
|
||||||
|
read AST. Rearranged code in VMS.C to make the compiler happy and
|
||||||
|
eliminate warnings.
|
||||||
|
|
||||||
|
David Mathog
|
||||||
|
mathog@seqaxp.bio.caltech.edu
|
||||||
|
Manager, sequence analysis facility, biology division, Caltech
|
||||||
|
|
||||||
|
|
||||||
|
$XFree86: xc/programs/xterm/AAA_README_VMS.txt,v 1.2 2000/06/13 02:28:37 dawes Exp $
|
75
ports/xterm/xterm-359/COPYING
Normal file
75
ports/xterm/xterm-359/COPYING
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
--- $XTermId: COPYING,v 1.3 2020/01/12 22:53:35 tom Exp $
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Copyright 1996-2019,2020 by Thomas E. Dickey
|
||||||
|
|
||||||
|
All Rights Reserved
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
copy of this software and associated documentation files (the
|
||||||
|
"Software"), to deal in the Software without restriction, including
|
||||||
|
without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included
|
||||||
|
in all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
holders shall not be used in advertising or otherwise to promote the
|
||||||
|
sale, use or other dealings in this Software without prior written
|
||||||
|
authorization.
|
||||||
|
|
||||||
|
Copyright 1987, 1988 X Consortium
|
||||||
|
|
||||||
|
Permission to use, copy, modify, distribute, and sell this software and its
|
||||||
|
documentation for any purpose is hereby granted without fee, provided that
|
||||||
|
the above copyright notice appear in all copies and that both that
|
||||||
|
copyright notice and this permission notice appear in supporting
|
||||||
|
documentation.
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in
|
||||||
|
all copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||||
|
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||||
|
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
Except as contained in this notice, the name of the X Consortium shall not be
|
||||||
|
used in advertising or otherwise to promote the sale, use or other dealings
|
||||||
|
in this Software without prior written authorization from the X Consortium.
|
||||||
|
|
||||||
|
Copyright 1987, 1988 by Digital Equipment Corporation, Maynard, Massachusetts.
|
||||||
|
|
||||||
|
All Rights Reserved
|
||||||
|
|
||||||
|
Permission to use, copy, modify, and distribute this software and its
|
||||||
|
documentation for any purpose and without fee is hereby granted,
|
||||||
|
provided that the above copyright notice appear in all copies and that
|
||||||
|
both that copyright notice and this permission notice appear in
|
||||||
|
supporting documentation, and that the name of Digital Equipment
|
||||||
|
Corporation not be used in advertising or publicity pertaining to
|
||||||
|
distribution of the software without specific, written prior permission.
|
||||||
|
|
||||||
|
DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
|
||||||
|
ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
|
||||||
|
DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
|
||||||
|
ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
||||||
|
WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
|
||||||
|
ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
|
||||||
|
SOFTWARE.
|
||||||
|
|
||||||
|
-- vile: txtmode
|
||||||
|
-------------------------------------------------------------------------------
|
875
ports/xterm/xterm-359/INSTALL
Normal file
875
ports/xterm/xterm-359/INSTALL
Normal file
@ -0,0 +1,875 @@
|
|||||||
|
-- $XTermId: INSTALL,v 1.184 2020/07/25 17:58:05 tom Exp $
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
-- Copyright 1997-2019,2020 by Thomas E. Dickey
|
||||||
|
--
|
||||||
|
-- All Rights Reserved
|
||||||
|
--
|
||||||
|
-- Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
-- copy of this software and associated documentation files (the
|
||||||
|
-- "Software"), to deal in the Software without restriction, including
|
||||||
|
-- without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
-- distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
-- permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
-- the following conditions:
|
||||||
|
--
|
||||||
|
-- The above copyright notice and this permission notice shall be included
|
||||||
|
-- in all copies or substantial portions of the Software.
|
||||||
|
--
|
||||||
|
-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
-- IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
-- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
-- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
-- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
--
|
||||||
|
-- Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
-- holders shall not be used in advertising or otherwise to promote the
|
||||||
|
-- sale, use or other dealings in this Software without prior written
|
||||||
|
-- authorization.
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
Xterm was originally built as part of the X Window System source tree, using
|
||||||
|
imake to generate a Makefile from Imakefile.
|
||||||
|
|
||||||
|
An example Imakefile is provided for legacy use.
|
||||||
|
|
||||||
|
The preferred method uses the configure script to generate a Makefile from
|
||||||
|
Makefile.in
|
||||||
|
|
||||||
|
Options:
|
||||||
|
-------
|
||||||
|
|
||||||
|
Autoconf configure scripts recognize two types of application-defined
|
||||||
|
options, enable/disable and with/without. The latter, by convention, are
|
||||||
|
used for denoting inclusion of external packages, while the former denote
|
||||||
|
enabling/disabling of internal features. The configure --help option lists
|
||||||
|
the available options. This script uses "enable" and "disable" to indicate
|
||||||
|
the sense of the default behavior.
|
||||||
|
|
||||||
|
The options (in alphabetic order):
|
||||||
|
|
||||||
|
--disable-256-color disable 256-color support
|
||||||
|
|
||||||
|
Do not compile-in code that interprets SGR 38 and 48 for 256-colors.
|
||||||
|
If this feature is disabled, the 88-color feature will be used.
|
||||||
|
|
||||||
|
--disable-88-color disable 88-color support
|
||||||
|
|
||||||
|
Do not compile-in code that interprets SGR 38 and 48 for 88-colors.
|
||||||
|
The 256-color option overrides this.
|
||||||
|
|
||||||
|
--disable-16-color disable 16-color support
|
||||||
|
|
||||||
|
Do not compile-in code to recognize aixterm-style control sequences
|
||||||
|
that support color values 8-15.
|
||||||
|
|
||||||
|
Most color applications know only about 8 ANSI colors, but some
|
||||||
|
(e.g., ones built with ncurses) do.
|
||||||
|
|
||||||
|
--disable-active-icon disable X11R6.3 active-icon feature
|
||||||
|
|
||||||
|
Do not compile-in code to support the active-icon feature. This is
|
||||||
|
not configured on systems (e.g., X11R5) which lack the library
|
||||||
|
support needed.
|
||||||
|
|
||||||
|
Xterms with an active icon continue to respond to input and update
|
||||||
|
their display when iconified. Not all window managers support
|
||||||
|
active icons. Those that do include fvwm, olvwm and mwm.
|
||||||
|
|
||||||
|
--disable-ansi-color disable ANSI color
|
||||||
|
|
||||||
|
Do not compile-in code for ANSI colors.
|
||||||
|
|
||||||
|
--disable-blink-cursor disable support for blinking cursor
|
||||||
|
|
||||||
|
Do not compile-in code that implements a blinking cursor. The blinking
|
||||||
|
cursor is enabled either by resource setting or by popup menu entry.
|
||||||
|
|
||||||
|
--disable-bold-color disable PC-style mapping of bold colors
|
||||||
|
|
||||||
|
Do not compile-in code that maps colors 8-15 to bold versions of
|
||||||
|
colors 0-7.
|
||||||
|
|
||||||
|
Some applications have hardcoded logic that assumes this. It does
|
||||||
|
not interfere with the 16-color support.
|
||||||
|
|
||||||
|
--disable-boxchars disable fallback-support for box chars
|
||||||
|
|
||||||
|
Do not compile-in code to generate approximations for box/graphic
|
||||||
|
characters.
|
||||||
|
|
||||||
|
Most fonts do not contain the vt100-style graphic characters in
|
||||||
|
positions 0-31. Many applications use the line-drawing characters,
|
||||||
|
e.g., to make boxes. When xterm loads a font, it checks if those
|
||||||
|
characters are present, and draws its own if they are missing.
|
||||||
|
|
||||||
|
--disable-broken-st disallow broken string-terminators,
|
||||||
|
|
||||||
|
Do not compile-in code that works around a bug in some ISDN routers
|
||||||
|
(and possibly other applications written by the same people): they
|
||||||
|
send an unterminated control string in their banner text, making xterm
|
||||||
|
freeze.
|
||||||
|
|
||||||
|
The workaround tells xterm to stop processing the control string when
|
||||||
|
it receives one of the whitespace control characters such as newline.
|
||||||
|
That was the behavior before patch #171.
|
||||||
|
|
||||||
|
See also --enable-broken-osc
|
||||||
|
|
||||||
|
--disable-c1-print disallow -k8 option for printable 128-159,
|
||||||
|
|
||||||
|
Use this option to suppress support for nonstandard use of codes
|
||||||
|
128-159, which normally are considered control characters. Some users
|
||||||
|
have fonts which use those positions. The default value for the
|
||||||
|
allowC1Printable resource is false, so this feature does not impact
|
||||||
|
normal users.
|
||||||
|
|
||||||
|
--disable-color-class disable color class resources
|
||||||
|
|
||||||
|
Use this option to change most of the color resources to use Foreground
|
||||||
|
as the color class. This is the older (before patch #157) behavior
|
||||||
|
which has the drawback that setting the Foreground resource on most
|
||||||
|
platforms prevents use of color since the class is evaluated before
|
||||||
|
the instance.
|
||||||
|
|
||||||
|
--disable-color-mode disable default colorMode resource
|
||||||
|
|
||||||
|
Do not compile-in code that sets the default value of the colorMode
|
||||||
|
resource to ``true''.
|
||||||
|
|
||||||
|
--disable-desktop disable install of xterm desktop files
|
||||||
|
|
||||||
|
Do not install the xterm desktop files, used in menus.
|
||||||
|
These use the icons installed in the --with-icondir option.
|
||||||
|
Use the environment variable $DESKTOP_FLAGS to supply options
|
||||||
|
required by desktop-file-install.
|
||||||
|
|
||||||
|
Note: If desktop-utils is not found they will not be installed anyway.
|
||||||
|
|
||||||
|
--disable-direct-color disable direct color support
|
||||||
|
|
||||||
|
Do not compile-in code that interprets SGR 38 and 48 for direct colors.
|
||||||
|
This feature extends the 256-color feature.
|
||||||
|
|
||||||
|
--disable-doublechars disable support for double-size chars
|
||||||
|
|
||||||
|
Do not compile-in code that supports font-manipulation needed to
|
||||||
|
implement vt100-style double-sized characters.
|
||||||
|
|
||||||
|
--disable-echo test: display "compiling" commands
|
||||||
|
|
||||||
|
Modify the generated Makefile so that most compiler options are
|
||||||
|
not shown. This makes it simpler to read a build log and see the
|
||||||
|
actual warning messages.
|
||||||
|
|
||||||
|
--disable-fifo-lines enable FIFO-storage for saved-lines
|
||||||
|
|
||||||
|
With patch #244, xterm by default stores saved-lines in a FIFO
|
||||||
|
(circular buffer), which improves performance when the number of saved
|
||||||
|
lines is large. Disable this option to revert to the pre-244 layout.
|
||||||
|
|
||||||
|
--disable-freetype disable freetype library-support
|
||||||
|
|
||||||
|
Do not use freetype libraries if they are found. Normally they will
|
||||||
|
be used automatically.
|
||||||
|
|
||||||
|
--disable-full-tgetent disable check for termcap library
|
||||||
|
|
||||||
|
Do not look for the tgetent() function specifically in the termcap
|
||||||
|
library, accept the first library (from termlib, ncurses and curses)
|
||||||
|
which contains this function rather than continuing to search for
|
||||||
|
a termcap implementation rather than terminfo. The former would
|
||||||
|
supply the complete $TERMCAP data needed for some legacy programs.
|
||||||
|
|
||||||
|
--disable-highlighting disable support for color highlighting
|
||||||
|
|
||||||
|
Do not compile-in code that allows the selected region to be a
|
||||||
|
different color than the reverse of foreground/background colors.
|
||||||
|
|
||||||
|
See the discussion of highlightColor in the manual.
|
||||||
|
|
||||||
|
--disable-i18n disable internationalization
|
||||||
|
|
||||||
|
Do not compile-in code to handle multi-byte characters. This is
|
||||||
|
related to, but not identical with the input method logic.
|
||||||
|
|
||||||
|
--disable-imake disable use of imake for definitions
|
||||||
|
|
||||||
|
Do not attempt to use imake to determine compiler options.
|
||||||
|
|
||||||
|
The main.c file has many ifdef's which rely on obscure combinations
|
||||||
|
known only to imake. The configure script implements only a
|
||||||
|
portion of the tests needed to supplant imake.
|
||||||
|
|
||||||
|
--disable-initial-erase disable setup for stty erase
|
||||||
|
|
||||||
|
Do not compile-in code which aligns the stty erase and the backarrow
|
||||||
|
key. When compiled-in, xterm will optionally use the pty's sense
|
||||||
|
of stty erase and apply that to the backarrow mode (sending 8 or 127),
|
||||||
|
or go the other way, setting stty erase to match xterm's configuration.
|
||||||
|
|
||||||
|
--disable-input-method disable input-method
|
||||||
|
|
||||||
|
Do not compile-in code for "input method". This is an X11R6
|
||||||
|
feature which deals with translation of composite characters.
|
||||||
|
|
||||||
|
Some users report problems with their configuration, e.g., messages
|
||||||
|
stating that there is no input method defined for the given preedit
|
||||||
|
type. If you do not need input method (and are troubled by the
|
||||||
|
warning messages), it is safe to disable this option.
|
||||||
|
|
||||||
|
--disable-leaks test: free permanent memory, analyze leaks
|
||||||
|
|
||||||
|
Compile-in code which frees memory which might confuse a leak-testing
|
||||||
|
tool. Normally these chunks of memory are retained as long as xterm
|
||||||
|
is running.
|
||||||
|
|
||||||
|
--disable-luit disable support for luit filter (Unicode translation)
|
||||||
|
|
||||||
|
Luit is a filter that can be run between an arbitrary application and a
|
||||||
|
UTF-8 terminal emulator. It will convert application output from the
|
||||||
|
locale's encoding into UTF-8, and convert terminal input from UTF-8
|
||||||
|
into the locale's encoding.
|
||||||
|
|
||||||
|
This is normally enabled, relying upon "--enable-wide-chars".
|
||||||
|
|
||||||
|
--disable-maximize disable actions for iconify/deiconify/maximize/restore
|
||||||
|
|
||||||
|
Do not compile-in code that implements runtime 'actions' for
|
||||||
|
iconifying, maximizing, etc.
|
||||||
|
|
||||||
|
Most users will find that the window manager is more suitable for
|
||||||
|
this sort of manipulation than putting the capabilities into xterm.
|
||||||
|
|
||||||
|
--disable-num-lock disable NumLock keypad support
|
||||||
|
|
||||||
|
Do not compile-in code that looks for the actual NumLock key to
|
||||||
|
support vt100/vt220 keypad translation.
|
||||||
|
|
||||||
|
This is used in xterm to simplify logic, and to workaround some
|
||||||
|
quirks of the keyboard tables. Use the ``numLock'' resource to
|
||||||
|
disable this feature if you must customize xterm in some other way.
|
||||||
|
|
||||||
|
(The same ifdef controls the metaSendsEscape support).
|
||||||
|
|
||||||
|
--disable-openpty disable openpty, prefer other interfaces
|
||||||
|
|
||||||
|
Do not check for, or use openpty(). Instead, use other interfaces such
|
||||||
|
as posix_openpt(). Modern (sic) BSD systems should have a workable
|
||||||
|
openpty() interface. Older systems may not.
|
||||||
|
|
||||||
|
--disable-paste64 disable support for bracketed paste mode
|
||||||
|
|
||||||
|
Do not compile-in code to support bracketed paste mode, along with
|
||||||
|
functions for setting/getting the selection data, termed "paste64".
|
||||||
|
|
||||||
|
(see ctlseqs.ms description of OSC 52, and DECSET 2004).
|
||||||
|
|
||||||
|
--disable-pty-handshake disable support for pty handshakes
|
||||||
|
|
||||||
|
This feature is used to ensure that the child process's terminal modes
|
||||||
|
match the parent's. In particular, it addresses a problem where the
|
||||||
|
terminal size is not defined in the stty settings.
|
||||||
|
|
||||||
|
--disable-rectangles disable VT420 rectangle support
|
||||||
|
|
||||||
|
Do not compile-in code to support VT420 rectangle control-sequences.
|
||||||
|
|
||||||
|
--disable-regex disable regular-expression selections
|
||||||
|
|
||||||
|
Do not compile-in code to support the "regex" option for multiple
|
||||||
|
mouse clicks.
|
||||||
|
|
||||||
|
--disable-rightbar disable right-scrollbar support
|
||||||
|
|
||||||
|
Do not compile-in code that supports a scrollbar on the right.
|
||||||
|
|
||||||
|
Left/right scrollbars are a matter of taste. Some older libraries
|
||||||
|
(e.g., X11R5) do not perform the geometry computation correctly,
|
||||||
|
leaving the right scrollbar incorrectly positioned after changing
|
||||||
|
the font size.
|
||||||
|
|
||||||
|
--disable-rpath-hack don't add rpath options for additional libraries
|
||||||
|
|
||||||
|
By default, the configure script looks for libraries in unusual places
|
||||||
|
and adds an rpath linker option to help.
|
||||||
|
|
||||||
|
--disable-samename disable check for redundant name-change
|
||||||
|
|
||||||
|
Do not compile-in code that suppresses redundant updates to the
|
||||||
|
titlebar when the text has not changed.
|
||||||
|
|
||||||
|
--disable-screen-dumps disable XHTML and SVG screen dumps
|
||||||
|
|
||||||
|
Do not compile-in code that provides XHTML and SVG screen dumps.
|
||||||
|
|
||||||
|
--disable-selection-ops disable selection operations
|
||||||
|
|
||||||
|
Do not compile-in code to support the actions which allow users
|
||||||
|
to bind keys that use the selection or extract data from the screen.
|
||||||
|
|
||||||
|
--disable-session-mgt enable support for session management
|
||||||
|
|
||||||
|
Do not compile-in code which adds simple session management hooks
|
||||||
|
which are used when closing an xterm. Normally the code is
|
||||||
|
compiled-in, except for systems which do not support it.
|
||||||
|
|
||||||
|
--disable-setgid disable setgid
|
||||||
|
|
||||||
|
Do not install xterm using setuid/setgid permissions. Drop setgid
|
||||||
|
permissions on startup.
|
||||||
|
|
||||||
|
--disable-setuid disable setuid
|
||||||
|
|
||||||
|
Do not install xterm using setuid/setgid permissions. Drop setuid
|
||||||
|
permissions on startup.
|
||||||
|
|
||||||
|
--disable-sixel-graphics disable support for sixel-graphics
|
||||||
|
|
||||||
|
Do not compile-in code to support sixel-graphics
|
||||||
|
|
||||||
|
--disable-sun-fkeys
|
||||||
|
|
||||||
|
Do not compile-in code to support Sun-style function keys.
|
||||||
|
|
||||||
|
--disable-tcap-fkeys disable termcap function-keys
|
||||||
|
|
||||||
|
Do not compile-in code to support feature which allows xterm to use the
|
||||||
|
function-key definitions from the termcap/terminfo entry which it used
|
||||||
|
to set the $TERM variable on startup.
|
||||||
|
|
||||||
|
--disable-tcap-query disable termcap query/report
|
||||||
|
|
||||||
|
Do not compile-in code to support DCS '+' control sequence, which
|
||||||
|
allows an application to ask xterm what control sequences it would
|
||||||
|
transmit for specified function keys, given the termcap or terminfo
|
||||||
|
names.
|
||||||
|
|
||||||
|
--disable-tek4014 disable tek4014 emulation
|
||||||
|
|
||||||
|
Do not compile-in code to support Tektronix 4014 emulation.
|
||||||
|
|
||||||
|
This reduces the executable size by 17% (checked 1999/3/13).
|
||||||
|
|
||||||
|
Some people use the Tektronix emulation (which has been in xterm
|
||||||
|
for many years) as an example of code bloat, though this is not an
|
||||||
|
accurate impression.
|
||||||
|
|
||||||
|
--disable-vt52 disable VT52 emulation
|
||||||
|
|
||||||
|
Do not compile-in code to support vt52 emulation.
|
||||||
|
|
||||||
|
A genuine vt100 emulates a vt52.
|
||||||
|
|
||||||
|
--disable-wide-attrs disable wide-attribute support
|
||||||
|
|
||||||
|
Xterm's base attributes include all of those used in DEC terminals.
|
||||||
|
ISO 6429 defines a few more which historically have found little use.
|
||||||
|
Some people find these amusing.
|
||||||
|
|
||||||
|
This is normally enabled. The direct-colors feature relies upon it.
|
||||||
|
|
||||||
|
--disable-wide-chars disable wide-character support
|
||||||
|
|
||||||
|
The wide-character code supports Unicode and UTF-8.
|
||||||
|
|
||||||
|
This is normally enabled.
|
||||||
|
|
||||||
|
--disable-ziconbeep disable -ziconbeep option
|
||||||
|
|
||||||
|
Do not compile-in code that modifies the icon's title and sounds a
|
||||||
|
beep when they receive output.
|
||||||
|
|
||||||
|
--enable-16bit-chars enable 16-bit characters support
|
||||||
|
|
||||||
|
Enable wide-character support, but store only 16-bits for each wide
|
||||||
|
character. Unicode values can be larger than 16-bits, up to 21-bits.
|
||||||
|
This uses less memory, but is less complete. However, most languages
|
||||||
|
are covered by the 16-bit encoding.
|
||||||
|
|
||||||
|
--enable-alt-sends-esc set default altSendsEscape resource (default: no)
|
||||||
|
|
||||||
|
This sets the default resource value, which is shown in the manpage.
|
||||||
|
|
||||||
|
--enable-backarrow-key set default backarrowKey resource (default: true)
|
||||||
|
|
||||||
|
This sets the default resource value, which is shown in the manpage.
|
||||||
|
|
||||||
|
--enable-backarrow-is-erase set default backarrowKeyIsErase resource (default: false)
|
||||||
|
|
||||||
|
This sets the default resource value, which is shown in the manpage.
|
||||||
|
|
||||||
|
--enable-broken-osc allow broken Linux OSC-strings
|
||||||
|
|
||||||
|
Compile-in code to accommodate scripts that write Linux's malformed
|
||||||
|
palette control strings without checking. The result makes xterm
|
||||||
|
appear to freeze. This workaround makes xterm ignore the strings,
|
||||||
|
and is compiled-in by default for Linux.
|
||||||
|
|
||||||
|
--enable-builtin-xpms compile-in icon data
|
||||||
|
|
||||||
|
Compile-in X pixmap data for these icons:
|
||||||
|
filled-xterm
|
||||||
|
mini.xterm
|
||||||
|
xterm-color
|
||||||
|
xterm
|
||||||
|
at these sizes
|
||||||
|
16x16
|
||||||
|
32x32
|
||||||
|
48x48
|
||||||
|
|
||||||
|
--enable-dabbrev enable dynamic-abbreviation support
|
||||||
|
|
||||||
|
Compile-in support for "dabbrev-expand()" action and related key
|
||||||
|
translation.
|
||||||
|
|
||||||
|
--enable-dec-locator enable DECterm Locator support
|
||||||
|
Add support for DEC Locator control sequences for xterm:
|
||||||
|
|
||||||
|
DECEFR - Enable Filter Rectangle
|
||||||
|
DECELR - Enable Locator Reports
|
||||||
|
DECSLE - Select Locator Events
|
||||||
|
DECRQLP - Request Locator Position
|
||||||
|
|
||||||
|
This allows the xterm mouse to be used with applications that use the
|
||||||
|
DEC Locator sequences, such as VAX Tpu, or SMG$ based applications.
|
||||||
|
|
||||||
|
--enable-delete-is-del set default deleteIsDEL resource (default: maybe)
|
||||||
|
|
||||||
|
This sets the default resource value, which is shown in the manpage.
|
||||||
|
|
||||||
|
--enable-double-buffer enable double-buffering
|
||||||
|
|
||||||
|
Set the initial value of the "buffered" resource, which tells
|
||||||
|
xterm to use double-buffering for display to reduce flicker.
|
||||||
|
|
||||||
|
--enable-env-terminfo setenv $TERMINFO if --with-own-terminfo gives value
|
||||||
|
|
||||||
|
Use the custom terminfo directory specified in "--with-own-terminfo"
|
||||||
|
as the $TERMINFO variable for the shells spawned by xterm. Setting
|
||||||
|
this variable makes most curses (and termcap) applications look in
|
||||||
|
that directory for terminal descriptions.
|
||||||
|
|
||||||
|
--enable-exec-xterm enable "spawn-new-terminal" action
|
||||||
|
|
||||||
|
If your platform supports the process filesystem "cwd" link,
|
||||||
|
compile-in support for the "spawn-new-terminal" action, which
|
||||||
|
allows you to define a key translation that runs a new xterm
|
||||||
|
using the same working directory as the current process within
|
||||||
|
xterm.
|
||||||
|
|
||||||
|
--enable-hp-fkeys enable support for HP-style function keys
|
||||||
|
|
||||||
|
Compile-in code to support HP-style function keys.
|
||||||
|
|
||||||
|
--enable-load-vt-fonts enable load-vt-fonts() action
|
||||||
|
|
||||||
|
Compile-in code that allows user to define load different VT-font
|
||||||
|
definitions at runtime.
|
||||||
|
|
||||||
|
--enable-logfile-exec enable exec'd logfile filter
|
||||||
|
|
||||||
|
Compile-in code that allows logging piped via an external filter.
|
||||||
|
|
||||||
|
--enable-logging enable logging
|
||||||
|
|
||||||
|
Compile-in code that allows logging.
|
||||||
|
|
||||||
|
Logging was disabled in X11R5 xterm because of security problems.
|
||||||
|
They were addressed in X11R6, but the feature was not reinstated
|
||||||
|
because of concerns (long past) about xterm running as root-setuid.
|
||||||
|
|
||||||
|
--enable-meta-sends-esc set default metaSendsEscape resource (default: no)
|
||||||
|
|
||||||
|
This sets the default resource value, which is shown in the manpage.
|
||||||
|
|
||||||
|
--enable-mini-luit enable support for poor man's luit filter (Latin-9)
|
||||||
|
|
||||||
|
Provide built-in support for Latin-9, relying on having specified
|
||||||
|
Unicode (ISO10646) fonts and setting the locale resource to "checkfont".
|
||||||
|
|
||||||
|
This sets "--enable-luit" as a side-effect.
|
||||||
|
|
||||||
|
--enable-narrowproto enable narrow prototypes for X libraries
|
||||||
|
|
||||||
|
Originally xterm was built using imake rather than a configure script.
|
||||||
|
One feature of imake that is not possible to guess within the
|
||||||
|
configure script is the wide-prototype compile-time definition
|
||||||
|
NARROWPROTO. When this is not set properly, the Athena widget
|
||||||
|
scrollbars do not work properly. xterm's configure script has a
|
||||||
|
fallback case which allows disabling imake. However, this is moot
|
||||||
|
with the X.org "modular" build, whose compiler options are unrelated to
|
||||||
|
imake or older versions of any libraries that it may distribute. In
|
||||||
|
this case, the configure script needs some help. Use this option to
|
||||||
|
enable or disable NARROW proto (and disable imake with the
|
||||||
|
--disable-imake option) to match the whims of X.org hackers.
|
||||||
|
|
||||||
|
For instance
|
||||||
|
|
||||||
|
configure --disable-imake --disable-narrowproto
|
||||||
|
|
||||||
|
--enable-pty-erase set default ptyInitialErase resource (default: false)
|
||||||
|
|
||||||
|
This sets the default resource value, which is shown in the manpage.
|
||||||
|
|
||||||
|
--enable-readline-mouse enable support for mouse in readline applications
|
||||||
|
|
||||||
|
Compile-in code to support predecessor to bracketed paste mode, i.e.,
|
||||||
|
provide functions for setting/getting the selection data. Essentially
|
||||||
|
this puts xterm into a mode that sends special function-key strings to
|
||||||
|
bracket the data.
|
||||||
|
|
||||||
|
(The "paste64" feature, which fits xterm's protocol better, is
|
||||||
|
configured by default).
|
||||||
|
|
||||||
|
--enable-sco-fkeys enable support for SCO-style function keys
|
||||||
|
|
||||||
|
Compile-in code to support SCO-style function keys.
|
||||||
|
|
||||||
|
--enable-regis-graphics enable support for ReGIS graphics
|
||||||
|
|
||||||
|
Compile-in code to support experimental ReGIS graphics
|
||||||
|
|
||||||
|
--enable-toolbar enable pulldown menus on toolbar
|
||||||
|
|
||||||
|
Compile-in code that builds a toolbar with pulldown menus. The
|
||||||
|
normal popup menus are still available.
|
||||||
|
|
||||||
|
This is an experimental option. As of patch #206, it is known to
|
||||||
|
work well with fvwm, but not as well with some other window managers,
|
||||||
|
e.g., KDE's Kwin and IceWM.
|
||||||
|
|
||||||
|
In addition to isolated layout problems, it is reported that some
|
||||||
|
flavors of the Athena widget library perform badly with ISO-10646
|
||||||
|
fonts. You can work around those by setting the menu fonts to
|
||||||
|
an ISO-8859 variant in your X resources.
|
||||||
|
|
||||||
|
--enable-trace test: set to enable debugging traces
|
||||||
|
|
||||||
|
Compile-in code to trace xterm's internal states.
|
||||||
|
|
||||||
|
This is a debugging feature. It causes xterm to produce two files
|
||||||
|
(Trace-parent.out and Trace-child.out).
|
||||||
|
|
||||||
|
--enable-warnings test: turn on GCC compiler warnings
|
||||||
|
|
||||||
|
Modify the generate Makefile to turn on gcc compiler warnings.
|
||||||
|
|
||||||
|
I use this option regularly, and correct all but a few (difficult)
|
||||||
|
problems.
|
||||||
|
|
||||||
|
--enable-xmc-glitch test: enable xmc magic-cookie emulation
|
||||||
|
|
||||||
|
Compile-in code that simulates the terminfo "magic cookie" glitch.
|
||||||
|
|
||||||
|
This is for testing ncurses.
|
||||||
|
|
||||||
|
--with-Xaw3d link with Xaw 3d library
|
||||||
|
|
||||||
|
Look for, compile and link with the Xaw 3d widget library.
|
||||||
|
|
||||||
|
--with-Xaw3dxft link with Xaw 3d xft library
|
||||||
|
|
||||||
|
Look for, compile and link with the Xaw 3d xft widget library.
|
||||||
|
|
||||||
|
--with-XawPlus link with Athena-Plus library
|
||||||
|
|
||||||
|
Look for, compile and link with the Xaw Plus widget library.
|
||||||
|
|
||||||
|
--with-app-class=XXX X resource class (default: XTerm)
|
||||||
|
|
||||||
|
Rename the X resource class, e.g., for packaging a development version
|
||||||
|
of xterm with different result names.
|
||||||
|
|
||||||
|
--with-app-defaults=DIR directory in which to install resource files (default: EPREFIX/lib/X11/app-defaults)
|
||||||
|
|
||||||
|
autoconf scripts assume that all of the files should be installed
|
||||||
|
under the same top-level directory. But X applications defaults
|
||||||
|
must be installed into a special directory, e.g.,
|
||||||
|
|
||||||
|
/usr/X11/lib/app-defaults
|
||||||
|
|
||||||
|
However, there is no standard for this pathname. The manual page
|
||||||
|
for X notes that the environment variable $XUSERFILESEARCHPATH can
|
||||||
|
specify a list of places where X searches for applications defaults.
|
||||||
|
Also, it may look in $XAPPLRESDIR, but that usually is not related
|
||||||
|
to where xterm might be installed. To keep it simple, the configure
|
||||||
|
script uses
|
||||||
|
|
||||||
|
EPREFIX/lib/X11/app-defaults
|
||||||
|
|
||||||
|
as the default (EPREFIX is --prefix). That makes it work normally
|
||||||
|
for most systems if --prefix is /usr. For other installs, e.g., to
|
||||||
|
/usr/local, you should use this option to customize the location to
|
||||||
|
match your system configuration.
|
||||||
|
|
||||||
|
Use --with-app-defaults=auto to ask the configure script to look in
|
||||||
|
a list of well-known locations for an existing directory.
|
||||||
|
|
||||||
|
Use --without-app-defaults or --with-app-defaults=no to disable the
|
||||||
|
feature.
|
||||||
|
|
||||||
|
--with-dmalloc test: use Gray Watson's dmalloc library
|
||||||
|
|
||||||
|
Check for and link with dmalloc.
|
||||||
|
|
||||||
|
--with-dbmalloc test: use Conor Cahill's dbmalloc library
|
||||||
|
|
||||||
|
Check for and link with dbmalloc.
|
||||||
|
|
||||||
|
--with-desktop-category=XXX one or more desktop categories or auto
|
||||||
|
This is a list of names. The configure script maps blanks and commas
|
||||||
|
to semicolons (";") which are used by the desktop utilities as a
|
||||||
|
separator.
|
||||||
|
|
||||||
|
The default value "auto" tells the configure script to look
|
||||||
|
at existing ".desktop" files for xterm and common terminal
|
||||||
|
emulators, to use those. If none are found, the script uses this
|
||||||
|
default:
|
||||||
|
System;TerminalEmulator;
|
||||||
|
|
||||||
|
--with-freetype-config configure script to use for FreeType
|
||||||
|
|
||||||
|
Use a specific option value to tell the configure script to try
|
||||||
|
just one of the variations:
|
||||||
|
|
||||||
|
"pkg*", e.g., pkg-config or pkgconfig uses whatever pkg-config
|
||||||
|
script was found.
|
||||||
|
|
||||||
|
otherwise, the parameter value is used as the name of the script
|
||||||
|
to try, using --cflags and --libs options.
|
||||||
|
|
||||||
|
Use --without-freetype-config to enable the --with-freetype-cflags
|
||||||
|
and --with-freetype-libs options.
|
||||||
|
|
||||||
|
The default value "auto" tells the configure script to try the
|
||||||
|
pkg-config script first, then freetype-config and finally xft-config.
|
||||||
|
|
||||||
|
--with-freetype-cflags -D/-I options for compiling with FreeType library
|
||||||
|
|
||||||
|
Override options provided by xft-config or freetype-config.
|
||||||
|
|
||||||
|
--with-freetype-libs -L/-l options for linking with FreeType library
|
||||||
|
|
||||||
|
Override options provided by xft-config or freetype-config.
|
||||||
|
|
||||||
|
--with-icon-name=NAME override icon name (default: xterm-color)
|
||||||
|
|
||||||
|
xterm comes with a choice of icons:
|
||||||
|
|
||||||
|
xterm-color: depicts a conventional terminal image, and is the default
|
||||||
|
icon used for icon-themes.
|
||||||
|
|
||||||
|
mini.xterm: a more iconic choice which is readily identifiable at
|
||||||
|
small sizes. This is used for window decoration, e.g., the
|
||||||
|
icon at the upper left corner in many window managers.
|
||||||
|
|
||||||
|
--with-icon-symlink=NAME create symbolic links to icon name (default: NONE)
|
||||||
|
|
||||||
|
This is a workaround for certain systems which translate icon names
|
||||||
|
containing "xterm", e.g., "xterm-color" into the single icon "xterm".
|
||||||
|
The option should also be harmless on a properly configured system.
|
||||||
|
|
||||||
|
If the option is used, its default value is "xterm". For each icon,
|
||||||
|
the makefile will strip the suffix (e.g., ".png"), as well as the part
|
||||||
|
of the filename which denotes the size (e.g., "_32x32" in an xpm file),
|
||||||
|
and constructs a link with that name to the icon.
|
||||||
|
|
||||||
|
If the option is unused, its default value is "NONE" (no link is made).
|
||||||
|
|
||||||
|
--with-icondir=DIR directory in which to install icon files (default: no)
|
||||||
|
|
||||||
|
The X libraries may automatically search these locations:
|
||||||
|
|
||||||
|
$HOME/.icons
|
||||||
|
$XDG_DATA_DIRS/icons
|
||||||
|
/usr/share/pixmaps
|
||||||
|
|
||||||
|
Alternatively, the last may be actually
|
||||||
|
/usr/X11R6/share/pixmaps
|
||||||
|
|
||||||
|
Use --with-icondir=auto to tell the configure script to search for
|
||||||
|
an existing directory from its list of well-known system locations.
|
||||||
|
|
||||||
|
See also
|
||||||
|
http://standards.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html
|
||||||
|
http://www.freedesktop.org/software/icon-theme/
|
||||||
|
|
||||||
|
By default, the option is disabled; it is useful only for the
|
||||||
|
--with-icon-theme option.
|
||||||
|
|
||||||
|
--with-icon-theme=XXX install icons into desktop theme (hicolor)
|
||||||
|
|
||||||
|
Install png and svg icons into the given desktop theme and customize
|
||||||
|
the .desktop files to use that theme. If no theme name is given,
|
||||||
|
the default is "hicolor". If this option is not given, the desktop
|
||||||
|
file will use the pixmap files.
|
||||||
|
|
||||||
|
--with-man2html[=XXX] use XXX rather than groff
|
||||||
|
|
||||||
|
Specify an alternative program to use for converting manpages and
|
||||||
|
control sequences document to html. The default value for the option
|
||||||
|
is "man2html". If the "man2html" script is not found, then "groff" is
|
||||||
|
used with groff's special options.
|
||||||
|
|
||||||
|
The "man2html" script reads formatted nroff output from its standard
|
||||||
|
input, and writes html to its standard output. Other input/output
|
||||||
|
conventions are not currently supported.
|
||||||
|
|
||||||
|
See
|
||||||
|
http://invisible-island.net/scripts
|
||||||
|
http://invisible-island.net/scripts/man2html.html
|
||||||
|
|
||||||
|
for an up-to-date version of "man2html".
|
||||||
|
|
||||||
|
--with-neXtaw link with neXT Athena library
|
||||||
|
|
||||||
|
Look for, compile and link with the neXT Athena widget library.
|
||||||
|
|
||||||
|
--with-own-terminfo=P set default $TERMINFO (default: from environment)
|
||||||
|
|
||||||
|
Modify the generated Makefile to set the target for the 'install-ti'
|
||||||
|
rule to point to the given directory.
|
||||||
|
|
||||||
|
If you have the $TERMINFO variable defined in your environment, the
|
||||||
|
configure script may use that value, if it matches an existing
|
||||||
|
directory. If no option and no variable are are given, the configure
|
||||||
|
script uses /usr/lib/terminfo, if it exists.
|
||||||
|
|
||||||
|
You do not have to run "make install-ti", if there is already a
|
||||||
|
workable terminfo description. Be advised, however, that the
|
||||||
|
common variety of "xterm-color" is not suited for xterm, but is
|
||||||
|
directed to other variations (such as nxterm) which do not
|
||||||
|
support the background-color erase capability.
|
||||||
|
|
||||||
|
--with-pixmapdir=DIR directory in which to install pixmaps (DATADIR/pixmaps)
|
||||||
|
|
||||||
|
Specify directory in which to install ".xpm" files.
|
||||||
|
|
||||||
|
--with-pcre use PCRE for regular-expressions
|
||||||
|
|
||||||
|
If regular expressions are not disabled (--disable-regex), use PCRE
|
||||||
|
rather than the POSIX regular expressions.
|
||||||
|
|
||||||
|
--with-pcre2 use PCRE2 for regular-expressions
|
||||||
|
|
||||||
|
If regular expressions are not disabled (--disable-regex), use PCRE2
|
||||||
|
rather than the POSIX regular expressions.
|
||||||
|
|
||||||
|
--with-pkg-config{=path} enable/disable use of pkg-config
|
||||||
|
|
||||||
|
The configure script looks for certain libraries which have well
|
||||||
|
established pkg-config scripts, and will use those settings if
|
||||||
|
available. Not all pkg-config scripts work; this option suppresses
|
||||||
|
the check and relies on normal library search paths.
|
||||||
|
|
||||||
|
--with-reference=XXX program to use as permissions-reference
|
||||||
|
|
||||||
|
To install xterm with setuid permissions, the scripts usually compare
|
||||||
|
it with a previous install. That works well for individual
|
||||||
|
maintainers, but can be a problem for packagers who may be
|
||||||
|
cross-compiling, etc. This option lets the package builder specify
|
||||||
|
the file used for permissions reference.
|
||||||
|
|
||||||
|
--with-setuid=XXX use the given setuid user
|
||||||
|
|
||||||
|
Install xterm setuid'd to the given user. If no parameter value
|
||||||
|
is given, assume it is root.
|
||||||
|
|
||||||
|
See also --with-utmp-setgid and --with-utempter, which manipulate
|
||||||
|
the setgid group.
|
||||||
|
|
||||||
|
--with-tty-group=XXX use XXX for the tty-group
|
||||||
|
|
||||||
|
If xterm is installed setuid'd to root, change the group of the tty
|
||||||
|
device to the given value on startup. Three cases are possible:
|
||||||
|
|
||||||
|
a) If this option is not given, the configure script will attempt to
|
||||||
|
find a suitable value (usually "tty"), and verify that it exists in
|
||||||
|
the group database.
|
||||||
|
|
||||||
|
b) If the option value is given, it will use the value even if it does
|
||||||
|
not exist in the group database (allowing packagers to work about
|
||||||
|
deficient environments).
|
||||||
|
|
||||||
|
c) If the option is disabled, e.g., --without-tty-group, the
|
||||||
|
permissions change will use the group-id of the process.
|
||||||
|
|
||||||
|
If xterm is not installed setuid'd to root, this option is not needed,
|
||||||
|
since it cannot change the tty device's ownership.
|
||||||
|
|
||||||
|
--with-valgrind test: use valgrind
|
||||||
|
|
||||||
|
Activate the --disable-leaks option, and ensure that "-g" is added to
|
||||||
|
CFLAGS.
|
||||||
|
|
||||||
|
--without-xinerama do not use Xinerama extension for multiple screens
|
||||||
|
|
||||||
|
Xinerama is an X server extension that allows multiple physical
|
||||||
|
screens to behave as a single screen. If you do not need the feature
|
||||||
|
(or do not want the extra library dependency), use this option to
|
||||||
|
suppress it.
|
||||||
|
|
||||||
|
--with-xpm=DIR use Xpm library for colored icon, may specify path
|
||||||
|
|
||||||
|
Use Xpm library to show colored icon in window decoration, e.g.,
|
||||||
|
title area.
|
||||||
|
|
||||||
|
Use --without-xpm to suppress this feature.
|
||||||
|
|
||||||
|
--with-xterm-symlink=XXX make symbolic link to installed xterm
|
||||||
|
|
||||||
|
If any of the configure options to modify the program name i.e.,
|
||||||
|
--program-prefix, --program-suffix or --program-transform-name
|
||||||
|
are given, this option allows the makefile to create a symbolic link,
|
||||||
|
e.g., to "xterm" on install. The option value gives the name for
|
||||||
|
the link, which defaults to "xterm".
|
||||||
|
|
||||||
|
Use --without-xterm-symlink to disable a link to "xterm" if none
|
||||||
|
is wanted.
|
||||||
|
|
||||||
|
Corresponding links are also made for "resize", "uxterm" and
|
||||||
|
"koi8rxterm", as well as the xterm manpage.
|
||||||
|
|
||||||
|
--with-terminal-id[=V] set default decTerminalID (default: vt100)
|
||||||
|
|
||||||
|
Set the default emulation level.
|
||||||
|
|
||||||
|
DEC terminals vt52/vt100/vt220/etc form a series where succeeding
|
||||||
|
models emulate features of the older terminals. While most
|
||||||
|
features of these terminals are recognized by xterm at all levels,
|
||||||
|
a few behave differently according to the emulation level.
|
||||||
|
|
||||||
|
You can always override this with the command-line option "-ti".
|
||||||
|
|
||||||
|
--with-terminal-type=T set default $TERM (default: xterm)
|
||||||
|
|
||||||
|
Set the default value for $TERM. Xterm supports legacy termcap
|
||||||
|
applications by constructing a modified version of the $TERMCAP
|
||||||
|
variable at initialization, which supplies the resulting screen
|
||||||
|
size. It also sets $TERM, if not already set, for use by programs
|
||||||
|
running within xterm.
|
||||||
|
|
||||||
|
The default value "xterm", can be overridden to avoid conflict
|
||||||
|
with older versions of xterm, e.g., those that do not implement
|
||||||
|
vt220 emulation.
|
||||||
|
|
||||||
|
You can always override this with the command-line option "-tn".
|
||||||
|
|
||||||
|
--with-utempter use utempter library for access to utmp
|
||||||
|
|
||||||
|
The utempter library is a set-uid wrapper for the utmp facility.
|
||||||
|
On systems with Unix98 pty's, xterm can use this library when
|
||||||
|
available so it need not be installed set-uid.
|
||||||
|
|
||||||
|
--with-utmp-setgid=XXX use setgid for access to utmp
|
||||||
|
|
||||||
|
The option value specifies a group to use when installing.
|
||||||
|
xterm will be installed with setgid privilege to this group.
|
||||||
|
At runtime, xterm will drop the setuid privilege immediately
|
||||||
|
after opening the pseudo-terminal, and will have only the
|
||||||
|
group privilege needed to access the utmp file. This relies
|
||||||
|
on having POSIX setuid behavior.
|
||||||
|
|
||||||
|
-- vile:txtmode
|
338
ports/xterm/xterm-359/Imakefile
Normal file
338
ports/xterm/xterm-359/Imakefile
Normal file
@ -0,0 +1,338 @@
|
|||||||
|
XCOMM $XTermId: Imakefile,v 1.123 2019/11/02 21:50:51 tom Exp $
|
||||||
|
XCOMM
|
||||||
|
XCOMM Attention xterm porters
|
||||||
|
XCOMM
|
||||||
|
XCOMM
|
||||||
|
XCOMM Xterm assumes that bcopy can handle overlapping arguments. If your
|
||||||
|
XCOMM bcopy (or memcpy) cannot, write a routine called bcopy and link it in
|
||||||
|
XCOMM or add -Dbcopy=mybcopy to the DEFINES list below.
|
||||||
|
XCOMM
|
||||||
|
|
||||||
|
/* Uncomment SCROLLBAR_RIGHT if you want the scroll bar to be on the right */
|
||||||
|
SCROLLBAR_RIGHT = -DSCROLLBAR_RIGHT
|
||||||
|
|
||||||
|
/* Define UTF8support to compile-in support for UTF-8 */
|
||||||
|
#define UTF8support
|
||||||
|
|
||||||
|
/*
|
||||||
|
* setgid mode works for systems that do not require setuid to open pty.
|
||||||
|
*
|
||||||
|
* This feature could also be applied to FreeBSD, but requires the installer
|
||||||
|
* to define a "utmp" group as well as chgrp the utmp file to match.
|
||||||
|
*
|
||||||
|
* Note: InstallXtermSetUID is always defined; InstallXtermSetGID is defined
|
||||||
|
* in newer imake configurations.
|
||||||
|
*/
|
||||||
|
#if !defined(InstallXtermSetGID) && !InstallXtermSetUID
|
||||||
|
#if defined(OpenBSDArchitecture) || \
|
||||||
|
(defined(LinuxArchitecture) && \
|
||||||
|
(LinuxCLibMajorVersion == 6))
|
||||||
|
#define InstallXtermSetGID YES
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Override the set uid/gid flags to use the utempter library.
|
||||||
|
*/
|
||||||
|
#if defined(UseUtempter)
|
||||||
|
#undef InstallXtermSetUID /* imake sets this */
|
||||||
|
#undef InstallXtermSetGID /* we set this */
|
||||||
|
#define InstallXtermSetUID NO
|
||||||
|
#define InstallXtermSetGID NO
|
||||||
|
UTMPLIB = -lutempter
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Fixes to allow compile with X11R5, etc.
|
||||||
|
*/
|
||||||
|
#ifndef InstGidFlags
|
||||||
|
#define InstGidFlags -m 2755 -g utmp
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef InstUidFlags
|
||||||
|
#define InstUidFlags -m 4711
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef XkbClientDefines
|
||||||
|
#define XkbClientDefines /**/
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef InstallXtermSetUID
|
||||||
|
#define InstallXtermSetUID NO
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef InstallXtermSetGID
|
||||||
|
#define InstallXtermSetGID NO
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef XkbClientDepLibs
|
||||||
|
#define XkbClientDepLibs /**/
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef XkbClientLibs
|
||||||
|
#define XkbClientLibs /**/
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* This must come before setting DEFINES */
|
||||||
|
#if InstallXtermSetGID
|
||||||
|
CSGIDFLAGS = -DUSE_UTMP_SETGID
|
||||||
|
INSTSETIDFLAGS = InstGidFlags
|
||||||
|
#elif InstallXtermSetUID
|
||||||
|
INSTSETIDFLAGS = InstUidFlags
|
||||||
|
#else
|
||||||
|
INSTSETIDFLAGS = NullParameter
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Compensate for broken imake configuration.
|
||||||
|
*/
|
||||||
|
#ifdef LinuxGnuSourceDefines
|
||||||
|
# ifdef UseInstalled
|
||||||
|
IMAKEDEFINES = -D_DEFAULT_SOURCE -U_XOPEN_SOURCE -D_XOPEN_SOURCE=600
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef SpecialCObjectRule
|
||||||
|
#define SpecialCObjectRule(module,ignore,defines) \
|
||||||
|
module.o: ; $(CC) -c defines $(CFLAGS) module.c
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef ProgramTargetName
|
||||||
|
#define ProgramTargetName(program) program
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* add -DWTMP and -DLASTLOG if you want them; make sure that bcopy can
|
||||||
|
* handle overlapping copies before using it.
|
||||||
|
*/
|
||||||
|
#if SetTtyGroup /* turn on in config/machine.cf */
|
||||||
|
TTYGROUPDEF = -DUSE_TTY_GROUP
|
||||||
|
#endif
|
||||||
|
#ifdef UsePUCCPtyd /* turn on in config/site.def */
|
||||||
|
PUCCPTYDDEF = -DPUCC_PTYD /* does not need to be setuid */
|
||||||
|
PTYLIB = -lpucc
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(NetBSDArchitecture) || \
|
||||||
|
defined(OpenBSDArchitecture) || \
|
||||||
|
defined(FreeBSDArchitecture) || \
|
||||||
|
(defined(LinuxArchitecture) && \
|
||||||
|
(LinuxCLibMajorVersion == 6) && (LinuxCLibMinorVersion < 1))
|
||||||
|
PTYLIB = -lutil
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef DarwinArchitecture
|
||||||
|
/* dyld can deadlock if a signal comes in when it is looking up a symbol */
|
||||||
|
LOCAL_LDFLAGS = -Wl,-bind_at_load
|
||||||
|
#endif
|
||||||
|
|
||||||
|
OSMAJORVERSION = OSMajorVersion
|
||||||
|
OSMINORVERSION = OSMinorVersion
|
||||||
|
|
||||||
|
/* none of these can be expected to use termcap unless emulated by terminfo */
|
||||||
|
#if defined(NTOArchitecture) || \
|
||||||
|
defined(OpenBSDArchitecture) || \
|
||||||
|
defined(SGIArchitecture) || \
|
||||||
|
defined(SunArchitecture) || \
|
||||||
|
defined(NetBSDArchitecture) || \
|
||||||
|
defined(OpenBSDArchitecture) || \
|
||||||
|
defined(FreeBSDArchitecture) || \
|
||||||
|
defined(LinuxArchitecture)
|
||||||
|
TERMCAPDEFINES=-DUSE_TERMINFO -DHAVE_TIGETSTR -DHAVE_TERM_H
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(OS2Architecture) && !defined(__GNU__) && !defined(Minix3Architecture)
|
||||||
|
#if defined(UseUtempter)
|
||||||
|
UTMPDEF = -DUSE_UTEMPTER
|
||||||
|
#else
|
||||||
|
UTMPDEF = -DUTMP
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef UTF8support
|
||||||
|
UTF8_OPTION = -DOPT_WIDE_CHARS -DOPT_LUIT_PROG
|
||||||
|
UTF8SRC = charclass.c precompose.c wcwidth.c xutf8.c
|
||||||
|
UTF8OBJ = charclass.o precompose.o wcwidth.o xutf8.o
|
||||||
|
#endif
|
||||||
|
#if BuildXftLibrary
|
||||||
|
#define XRenderSupport
|
||||||
|
#endif
|
||||||
|
#ifdef XRenderSupport
|
||||||
|
XRFDEF = -DXRENDERFONT -DXFREE86_FT2
|
||||||
|
XRFLIBS = XftClientLibs
|
||||||
|
XRFDEPLIBS = XftClientDepLibs
|
||||||
|
XRFINCLUDES = $(XFTINCLUDES)
|
||||||
|
#endif
|
||||||
|
#if !HasPutenv
|
||||||
|
PUTENVDEF = -DNOPUTENV
|
||||||
|
#endif
|
||||||
|
#ifdef RegisXTerm
|
||||||
|
SIXELDEF = -DOPT_REGIS_GRAPHICS=1
|
||||||
|
#endif
|
||||||
|
#ifdef SixelXTerm
|
||||||
|
SIXELDEF = -DOPT_SIXEL_GRAPHICS=1
|
||||||
|
#endif
|
||||||
|
#ifdef TraceXTerm
|
||||||
|
TRACEDEF = -DOPT_TRACE=1
|
||||||
|
#endif
|
||||||
|
MAIN_DEFINES = $(UTMPDEF) $(TTYGROUPDEF) $(PUCCPTYDDEF) $(CSGIDFLAGS) \
|
||||||
|
-DOSMAJORVERSION=$(OSMAJORVERSION) \
|
||||||
|
-DOSMINORVERSION=$(OSMINORVERSION)
|
||||||
|
MISC_DEFINES = /* -DALLOWLOGGING -DALLOWLOGFILEEXEC */
|
||||||
|
XKB_DEFINES = XkbClientDefines
|
||||||
|
PATH_DEFINES = -DPROJECTROOT=$(PROJECTROOT)
|
||||||
|
DEFINES = $(XKB_DEFINES) $(TERMCAPDEFINES) $(FEATURE_DEFINES) $(SCROLLBAR_RIGHT) $(UTF8_OPTION) $(XRFDEF) $(PATH_DEFINES) $(PUTENVDEF) $(IMAKEDEFINES) $(SIXELDEF) $(TRACEDEF)
|
||||||
|
INCLUDES = -I. $(XRFINCLUDES)
|
||||||
|
|
||||||
|
MAINSRC = main.c
|
||||||
|
MAINOBJ = main.o
|
||||||
|
DUMPSSRC = html.c svg.c
|
||||||
|
DUMPSOBJ = html.o svg.o
|
||||||
|
#ifdef RegisXTerm
|
||||||
|
SIXELSRC = graphics_regis.c
|
||||||
|
SIXELOBJ = graphics_regis.o
|
||||||
|
#endif
|
||||||
|
#ifdef SixelXTerm
|
||||||
|
SIXELSRC = graphics_sixel.c
|
||||||
|
SIXELOBJ = graphics_sixel.o
|
||||||
|
#endif
|
||||||
|
#ifdef TraceXTerm
|
||||||
|
TRACESRC = trace.c
|
||||||
|
TRACEOBJ = trace.o
|
||||||
|
#endif
|
||||||
|
SRCS1 = button.c cachedGCs.c charproc.c charsets.c cursor.c \
|
||||||
|
data.c doublechr.c fontutils.c input.c \
|
||||||
|
linedata.c menu.c misc.c print.c ptydata.c scrollback.c \
|
||||||
|
screen.c scrollbar.c tabs.c util.c version.c xstrings.c \
|
||||||
|
xtermcap.c TekPrsTbl.c Tekproc.c VTPrsTbl.c \
|
||||||
|
$(MAINSRC) $(EXTRASRC) $(UTF8SRC) $(SIXELSRC) $(TRACESRC) $(DUMPSSRC)
|
||||||
|
OBJS1 = button.o cachedGCs.o charproc.o charsets.o cursor.o \
|
||||||
|
data.o doublechr.o fontutils.o input.o \
|
||||||
|
linedata.o menu.o misc.o print.o ptydata.o scrollback.o \
|
||||||
|
screen.o scrollbar.o tabs.o util.o version.o xstrings.o \
|
||||||
|
xtermcap.o TekPrsTbl.o Tekproc.o VTPrsTbl.o \
|
||||||
|
$(MAINOBJ) $(EXTRAOBJ) $(UTF8OBJ) $(SIXELOBJ) $(TRACEOBJ) $(DUMPSOBJ)
|
||||||
|
SRCS2 = resize.c version.c xstrings.c
|
||||||
|
OBJS2 = resize.o version.o xstrings.o
|
||||||
|
SRCS = $(SRCS1) $(SRCS2)
|
||||||
|
OBJS = $(OBJS1) $(OBJS2)
|
||||||
|
PROGRAMS = ProgramTargetName(resize) ProgramTargetName(xterm)
|
||||||
|
DEPLIBS1 = XkbClientDepLibs XawClientDepLibs $(XRFDEPLIBS)
|
||||||
|
DEPLIBS2 =
|
||||||
|
|
||||||
|
#ifndef TermcapLibrary
|
||||||
|
#if SystemV && !defined(MacIIArchitecture)
|
||||||
|
#if defined(CrayArchitecture) || \
|
||||||
|
(defined(HPArchitecture) && (OSMajorVersion < 10)) || \
|
||||||
|
defined(RsArchitecture) || \
|
||||||
|
defined(SCOArchitecture) || \
|
||||||
|
defined(USLArchitecture)
|
||||||
|
#define TermcapLibrary -lcurses /* special cases of System V */
|
||||||
|
#else
|
||||||
|
#define TermcapLibrary -ltermlib /* usually in here */
|
||||||
|
#endif
|
||||||
|
#else
|
||||||
|
#define TermcapLibrary -ltermcap /* bsd puts it here */
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
TERMCAPLIB = TermcapLibrary
|
||||||
|
|
||||||
|
AllTarget($(PROGRAMS))
|
||||||
|
|
||||||
|
VTPARSE_H = VTparse.h VTparse.hin
|
||||||
|
TEKPARSE_H = Tekparse.h Tekparse.hin
|
||||||
|
|
||||||
|
VTPARSE_C = VTparse.h VTparse.cin
|
||||||
|
TEKPARSE_C = Tekparse.h Tekparse.cin
|
||||||
|
|
||||||
|
.SUFFIXES : .def .cin .hin
|
||||||
|
.def.cin :
|
||||||
|
awk '/^CASE_/{printf "{ %d, \"%s\" },\n", n++, $$1; }' < $< >$@
|
||||||
|
.def.hin :
|
||||||
|
awk '/^CASE_/{printf "#define %s %d\n", $$1, n++}' < $< >$@
|
||||||
|
|
||||||
|
SpecialCObjectRule(main,$(_NOOP_),$(MAIN_DEFINES))
|
||||||
|
SpecialCObjectRule(menu,$(_NOOP_),$(MISC_DEFINES))
|
||||||
|
SpecialCObjectRule(misc,$(VTPARSE_H),$(MISC_DEFINES))
|
||||||
|
SpecialCObjectRule(VTPrsTbl,$(VTPARSE_H),$(MISC_DEFINES))
|
||||||
|
SpecialCObjectRule(charproc,$(VTPARSE_H),$(MISC_DEFINES))
|
||||||
|
SpecialCObjectRule(data,$(_NOOP_),$(MISC_DEFINES))
|
||||||
|
SpecialCObjectRule(TekPrsTbl,$(TEKPARSE_H),$(MISC_DEFINES))
|
||||||
|
SpecialCObjectRule(TekProc,$(TEKPARSE_H),$(MISC_DEFINES))
|
||||||
|
SpecialCObjectRule(trace,$(VTPARSE_C) $(TEKPARSE_C),$(MISC_DEFINES))
|
||||||
|
|
||||||
|
#if InstallXtermSetUID
|
||||||
|
SetUIDProgramTarget(xterm,$(OBJS1),$(DEPLIBS1),$(XRFLIBS) XkbClientLibs XawClientLibs,$(TERMCAPLIB) $(PTYLIB))
|
||||||
|
#else
|
||||||
|
NormalProgramTarget(xterm,$(OBJS1),$(DEPLIBS1),$(XRFLIBS) XkbClientLibs XawClientLibs,$(TERMCAPLIB) $(UTMPLIB) $(PTYLIB))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined(OpenBSDArchitecture) || defined(MirBSDArchitecture)
|
||||||
|
/* On OpenBSD xterm is now setgid utmp */
|
||||||
|
INSTUIDFLAGS= -m 2555 -g utmp
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if InstallXtermSetUID && defined(SunArchitecture) && HasSharedLibraries && (OSMajorVersion < 5)
|
||||||
|
#if AlternateUsrLibDir
|
||||||
|
#if ((OSMajorVersion == 4) && (OSMinorVersion >= 1))
|
||||||
|
LDOVERRIDE = -L$(DESTDIR)$(USRLIBDIR)
|
||||||
|
#else
|
||||||
|
#if HasGcc
|
||||||
|
LDOVERRIDE = -static -L$(DESTDIR)$(USRLIBDIR)
|
||||||
|
#else
|
||||||
|
LDOVERRIDE = -Bstatic -L$(DESTDIR)$(USRLIBDIR)
|
||||||
|
LDRESUME = -Bdynamic
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
#endif
|
||||||
|
install::
|
||||||
|
MakeDir($(DESTDIR)$(BINDIR))
|
||||||
|
RemoveFile(ProgramTargetName(xterm.inst))
|
||||||
|
LinkRule(ProgramTargetName(xterm.inst),$(CDEBUGFLAGS) $(CCOPTIONS)
|
||||||
|
$(EXTRA_LDOPTIONS) $(LOCAL_LDFLAGS),$(OBJS1),$(LDOVERRIDE)
|
||||||
|
$(XRFLIBS) XawClientLibs $(LDRESUME) $(LDLIBS) $(TERMCAPLIB)
|
||||||
|
$(PTYLIB))
|
||||||
|
$(INSTALL) -c $(INSTPGMFLAGS) $(INSTSETIDFLAGS) ProgramTargetName(xterm.inst) $(DESTDIR)$(BINDIR)/ProgramTargetName(xterm)
|
||||||
|
RemoveFile(ProgramTargetName(xterm.inst))
|
||||||
|
#else
|
||||||
|
InstallProgramWithFlags(xterm,$(BINDIR),$(INSTSETIDFLAGS))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
InstallNamedProg(uxterm,uxterm,$(BINDIR))
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Link with the termcap library if USE_TERMCAP is defined in resize.c
|
||||||
|
*/
|
||||||
|
#if defined(NTOArchitecture) || \
|
||||||
|
defined(LinuxArchitecture) || \
|
||||||
|
defined(OpenBSDArchitecture) || \
|
||||||
|
defined(SGIArchitecture) || \
|
||||||
|
defined(SunArchitecture)
|
||||||
|
NormalProgramTarget(resize,$(OBJS2),$(DEPLIBS2),NullParameter,NullParameter)
|
||||||
|
#else
|
||||||
|
NormalProgramTarget(resize,$(OBJS2),$(DEPLIBS2),NullParameter,$(TERMCAPLIB))
|
||||||
|
#endif
|
||||||
|
|
||||||
|
InstallProgramWithFlags(resize,$(BINDIR),NullParameter)
|
||||||
|
|
||||||
|
/*
|
||||||
|
* termcap is a special name that does not install correctly with
|
||||||
|
* InstallNamedNonExec()
|
||||||
|
*/
|
||||||
|
install::
|
||||||
|
MakeDir($(DESTDIR)$(LIBDIR)/etc)
|
||||||
|
$(INSTALL) $(INSTALLFLAGS) $(INSTDATFLAGS) termcap \
|
||||||
|
$(DESTDIR)$(LIBDIR)/etc/xterm.termcap
|
||||||
|
InstallNamedNonExec(terminfo,xterm.terminfo,$(LIBDIR)/etc)
|
||||||
|
|
||||||
|
InstallAppDefaults(XTerm)
|
||||||
|
InstallAppDefaults(UXTerm)
|
||||||
|
InstallAppDefaultsLong(XTerm-col,XTerm-color)
|
||||||
|
InstallManPage(xterm,$(MANDIR))
|
||||||
|
InstallManPage(resize,$(MANDIR))
|
||||||
|
|
||||||
|
cleandir::
|
||||||
|
$(RM) *parse.hin *parse.cin
|
||||||
|
|
||||||
|
DependTarget()
|
50
ports/xterm/xterm-359/KOI8RXTerm.ad
Normal file
50
ports/xterm/xterm-359/KOI8RXTerm.ad
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
! $XTermId: KOI8RXTerm.ad,v 1.4 2010/03/04 01:17:49 tom Exp $
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
! this file is part of xterm
|
||||||
|
!
|
||||||
|
! Copyright 2007,2010 by Thomas E. Dickey
|
||||||
|
!
|
||||||
|
! All Rights Reserved
|
||||||
|
!
|
||||||
|
! Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
! copy of this software and associated documentation files (the
|
||||||
|
! "Software"), to deal in the Software without restriction, including
|
||||||
|
! without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
! distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
! permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
! the following conditions:
|
||||||
|
!
|
||||||
|
! The above copyright notice and this permission notice shall be included
|
||||||
|
! in all copies or substantial portions of the Software.
|
||||||
|
!
|
||||||
|
! THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
! OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
! MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
! IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
! CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
! TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
! SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
!
|
||||||
|
! Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
! holders shall not be used in advertising or otherwise to promote the
|
||||||
|
! sale, use or other dealings in this Software without prior written
|
||||||
|
! authorization.
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
! This is based on the UXTerm app-defaults file.
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
! Use
|
||||||
|
! xterm -class KOI8RXTerm
|
||||||
|
! to set resources for KOI8-R mode with corresponding fonts.
|
||||||
|
|
||||||
|
#include "XTerm"
|
||||||
|
|
||||||
|
*fontMenu.Label: KOI8-R Fonts
|
||||||
|
*VT100*allowC1Printable: true
|
||||||
|
|
||||||
|
! Use Cyrillic instead of Latin fonts.
|
||||||
|
*VT100.font: -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-koi8-r
|
||||||
|
*VT100.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-koi8-r
|
||||||
|
*VT100.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-koi8-r
|
||||||
|
*VT100.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-koi8-r
|
||||||
|
*VT100.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-koi8-r
|
||||||
|
*VT100.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-koi8-r
|
228
ports/xterm/xterm-359/MANIFEST
Normal file
228
ports/xterm/xterm-359/MANIFEST
Normal file
@ -0,0 +1,228 @@
|
|||||||
|
MANIFEST for xterm-359, version xterm-359
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
MANIFEST this file
|
||||||
|
256colres.h resource-definitions for 256-color mode
|
||||||
|
256colres.pl script to generate 256colres.h
|
||||||
|
88colres.h resource definitions for 88-color mode
|
||||||
|
88colres.pl script to generate 88colres.h
|
||||||
|
AAA_README_VMS.txt note for VMS port of 'xterm'
|
||||||
|
COPYING license for this program
|
||||||
|
INSTALL configure script: options and related install instructions
|
||||||
|
Imakefile imake template for Makefile
|
||||||
|
KOI8RXTerm.ad resources for koi8rxterm
|
||||||
|
Makefile.in configure script template for Makefile
|
||||||
|
README overview & caveats for 'xterm'
|
||||||
|
README.i18n i18n readme:
|
||||||
|
README.os390 overview for os390 (EBCDIC) port of 'xterm'
|
||||||
|
THANKS list of direct contributors
|
||||||
|
TekPrsTbl.c Tek4014 parser state tables
|
||||||
|
Tekparse.def template for generating Tekparse.h
|
||||||
|
Tekparse.h Tek4014 parser-state definitions
|
||||||
|
Tekproc.c Tek4014 parser-state functions
|
||||||
|
Tests Useful tests for xterm-developers
|
||||||
|
UXTerm.ad alternate resources for UTF-8
|
||||||
|
VTPrsTbl.c VT100 parser state tables
|
||||||
|
VTparse.def template for generating VTparse.h
|
||||||
|
VTparse.h VT100 parser-state definitions
|
||||||
|
XTerm-col.ad color resource definitions for XTerm class
|
||||||
|
XTerm.ad resource definitions for XTerm class
|
||||||
|
aclocal.m4 configure script: custom macros
|
||||||
|
button.c mouse button and selection processing
|
||||||
|
cachedGCs.c maintain cache of GC's
|
||||||
|
charclass.c compact character-class module
|
||||||
|
charclass.h interface of charclass.c
|
||||||
|
charproc.c VT100 parser functions
|
||||||
|
charsets.c module to translate character-sets
|
||||||
|
config.guess configure script: guess the system type
|
||||||
|
config.sub configure script: validate system type
|
||||||
|
configure generated
|
||||||
|
configure.in template for generating configure script
|
||||||
|
ctlseqs.ms documentation: Xterm Control Sequences
|
||||||
|
ctlseqs.txt generated rendition of ctlseqs.ms
|
||||||
|
cursor.c VT100 low-level cursor movement
|
||||||
|
data.c global data declarations
|
||||||
|
data.h global data external-definitions
|
||||||
|
df-install.in utility script for desktop-files
|
||||||
|
doublechr.c VT100 double-size character support
|
||||||
|
error.h error-code definitions for 'xterm'
|
||||||
|
fontutils.c xterm functions for (re)loading fonts
|
||||||
|
fontutils.h interface of fontutils.c
|
||||||
|
gen-charsets.pl script to convert codepages into code
|
||||||
|
gen-pc-fkeys.pl script to generate extended function-key terminfo
|
||||||
|
graphics.c graphics support functions for 'xterm'
|
||||||
|
graphics.h interface of graphics.c
|
||||||
|
graphics_regis.c support for ReGIS
|
||||||
|
graphics_regis.h interface of graphics_regis.c
|
||||||
|
graphics_sixel.c support for Sixels
|
||||||
|
graphics_sixel.h interface of graphics_sixel.c
|
||||||
|
html.c format HTML-screendumps
|
||||||
|
input.c VT100 key-symbol and function-key translation
|
||||||
|
install-sh install-script (needed by configure)
|
||||||
|
keysym2ucs.c lookup-table for UTF-8 to keysyms
|
||||||
|
keysym2ucs.h interface of keysym2ucs.c
|
||||||
|
koi8rxterm KOI-8 wrapper from Debian (originally me)
|
||||||
|
koi8rxterm.man manpage for koi8rxterm
|
||||||
|
linedata.c manage all line-data for VT100 widget
|
||||||
|
link_axp.com build-script for VMS port of xterm
|
||||||
|
main.c main program of 'xterm'
|
||||||
|
main.h default definitions for 'xterm'
|
||||||
|
make.com build-script for VMS port of 'xterm'
|
||||||
|
menu.c popup/pulldown menus for 'xterm'
|
||||||
|
menu.h interface of menu.c
|
||||||
|
minstall.in script for installing manpages
|
||||||
|
misc.c miscellaneous utility functions for 'xterm'
|
||||||
|
plink.sh script to prune unneeded libraries from link
|
||||||
|
precompose.c table of precompose sequences
|
||||||
|
precompose.h interface of precompose.c
|
||||||
|
print.c VT100+ print support functions
|
||||||
|
ptydata.c functions to manipulate data read from pty
|
||||||
|
ptyx.h structure-definitions for 'xterm'
|
||||||
|
resize.c program to compute/modify xterm's window size
|
||||||
|
resize.man manual page for 'resize'
|
||||||
|
run-tic.sh run tic, filtering out harmless messages
|
||||||
|
screen.c VT100 screen update functions
|
||||||
|
scrollback.c manage scrollback (a big FIFO)
|
||||||
|
scrollbar.c VT100 scrollbar support functions
|
||||||
|
sinstall.sh install setuid if existing program was
|
||||||
|
svg.c format SVG-screendumps
|
||||||
|
tabs.c VT100 tabstop support-functions
|
||||||
|
termcap termcap entries for 'xterm'
|
||||||
|
terminfo terminfo entries for 'xterm'
|
||||||
|
testxmc.c testing: xmc/magic-cookies
|
||||||
|
trace.c debugging trace functions for 'xterm'
|
||||||
|
trace.h interface of trace.c
|
||||||
|
util.c miscellaneous utility functions for 'xterm'
|
||||||
|
uxterm wrapper script to make unicode-xterm
|
||||||
|
uxterm.desktop sample desktop file for uxterm
|
||||||
|
uxterm.man manpage for uxterm, from Debian
|
||||||
|
version.c xterm package version, used also in resize
|
||||||
|
version.h version of xterm
|
||||||
|
vms.c VMS version of xterm's spawn(), etc.
|
||||||
|
vms.h system headers and definitions for vms.c
|
||||||
|
wcwidth.c wide-character utility functions
|
||||||
|
wcwidth.h interface of wcwidth.c
|
||||||
|
xcharmouse.h Jason Bacon's mouse-defs, cleaned up a little
|
||||||
|
xstrings.c a few common string functions
|
||||||
|
xstrings.h interface of xstrings.c
|
||||||
|
xterm.appdata.xml sample "appdata.xml" file
|
||||||
|
xterm.dat application defaults for VMS port of 'xterm'
|
||||||
|
xterm.desktop sample desktop file for xterm.
|
||||||
|
xterm.h common includes, definitions and prototypes for 'xterm'
|
||||||
|
xterm.log.html changelog for xterm
|
||||||
|
xterm.man manual page for 'xterm'
|
||||||
|
xterm_axp.opt linker options file for VMS port of 'xterm'
|
||||||
|
xterm_io.h split-out definitions of termio/termios/sgtty and winsize from main.c, os2main.c, screen.c and resize.c
|
||||||
|
xtermcap.c termcap-related functions.
|
||||||
|
xtermcap.h interface of xtermcap.c
|
||||||
|
xtermcfg.hin configure script: template for xtermcfg.h
|
||||||
|
xutf8.c JC's cleanup of UTF8
|
||||||
|
xutf8.h JC's cleanup of UTF8
|
||||||
|
icons subdirectory
|
||||||
|
icons/filled-xterm.png filled-xterm variants
|
||||||
|
icons/filled-xterm.svg filled-xterm variants
|
||||||
|
icons/filled-xterm.xpms filled-xterm variants
|
||||||
|
icons/filled-xterm_16x16.xpm filled-xterm variants
|
||||||
|
icons/filled-xterm_32x32.xpm filled-xterm variants
|
||||||
|
icons/filled-xterm_48x48.xpm filled-xterm variants
|
||||||
|
icons/make-xpms script to make combined xpm-icons
|
||||||
|
icons/mini.xterm.svg svg format for mini-icon
|
||||||
|
icons/mini.xterm.xpms collection of mini-icons
|
||||||
|
icons/mini.xterm_16x16.png mini-icon 16x16 png
|
||||||
|
icons/mini.xterm_16x16.xpm mini-icon 16x16 pixmap
|
||||||
|
icons/mini.xterm_256x256.png mini-icon 256x256 png
|
||||||
|
icons/mini.xterm_32x32.png mini-icon 32x32 png
|
||||||
|
icons/mini.xterm_32x32.xpm mini-icon 32x32 pixmap
|
||||||
|
icons/mini.xterm_48x48.png mini-icon 48x48 png
|
||||||
|
icons/mini.xterm_48x48.xpm mini-icon 48x48 pixmap
|
||||||
|
icons/terminal_48x48.svg svg-format of "terminal"
|
||||||
|
icons/terminal_48x48.xpm xpm-format of "terminal"
|
||||||
|
icons/xterm-color.png xterm-color 48x48, in png-format
|
||||||
|
icons/xterm-color.svg xterm-color icon
|
||||||
|
icons/xterm-color.xpms collection of color icons
|
||||||
|
icons/xterm-color_16x16.xpm 16x16 color icon
|
||||||
|
icons/xterm-color_32x32.xpm 32x32 color icon
|
||||||
|
icons/xterm-color_48x48.xpm 48x48 color icon
|
||||||
|
icons/xterm.png xterm 48x48, in png-format
|
||||||
|
icons/xterm.svg xterm icon
|
||||||
|
icons/xterm.xpms collection of icons
|
||||||
|
icons/xterm_16x16.xpm normal icon 16x16 pixmap
|
||||||
|
icons/xterm_32x32.xpm 32x32 monochrome icon
|
||||||
|
icons/xterm_48x48.xpm 48x48 monochrome icon
|
||||||
|
package/debian subdirectory
|
||||||
|
package/debian/changelog build-script
|
||||||
|
package/debian/color.sed build-script
|
||||||
|
package/debian/compat build-script
|
||||||
|
package/debian/control build-script
|
||||||
|
package/debian/copyright build-script
|
||||||
|
package/debian/postinst post-install script for update-alternatives
|
||||||
|
package/debian/prerm pre-remove script for update-alternatives
|
||||||
|
package/debian/rules build-script
|
||||||
|
package/debian/source subdirectory
|
||||||
|
package/debian/source/format build-script
|
||||||
|
package/debian subdirectory
|
||||||
|
package/debian/watch build-script
|
||||||
|
package/debian/xterm-dev.docs build-script
|
||||||
|
package/debian/xterm-dev.lintian-overrides ignore useless warnings from lintian
|
||||||
|
package/debian/xterm-dev.menu Debian menu-file for xterm-dev package.
|
||||||
|
package/debian/xterm-xres.sed build-script
|
||||||
|
package/freebsd subdirectory
|
||||||
|
package/freebsd/Makefile build-script
|
||||||
|
package/freebsd/distinfo generated sums
|
||||||
|
package/freebsd/pkg-descr build-script
|
||||||
|
package/freebsd/pkg-message build-script
|
||||||
|
package/freebsd/pkg-message.wchar build-script
|
||||||
|
package/freebsd/pkg-plist build-script
|
||||||
|
package/pkgsrc subdirectory
|
||||||
|
package/pkgsrc/DESCR build-script
|
||||||
|
package/pkgsrc/Makefile build-script
|
||||||
|
package/pkgsrc/PLIST build-script
|
||||||
|
package/pkgsrc/distinfo build-script
|
||||||
|
package/pkgsrc/options.mk build-script
|
||||||
|
package subdirectory
|
||||||
|
package/xterm.spec build-script
|
||||||
|
tektests subdirectory
|
||||||
|
tektests/aitest.tek tek4014 demo: draw a globe
|
||||||
|
tektests/dmerc.tek tek4014 demo: draws a Mercator projection with orbit
|
||||||
|
tektests/fotest.tek tek4014 demo: draw a scatterplot on log scale
|
||||||
|
tektests/imtest.tek tek4014 demo: draw a test pattern
|
||||||
|
tektests/imtesth.tek tek4014 demo: draw a test pattern
|
||||||
|
tektests/ocpred.tek tek4014 demo: an occultation prediction
|
||||||
|
tektests/usmap.tek tek4014 demo: a US map
|
||||||
|
unicode subdirectory
|
||||||
|
unicode/README description of files in ./unicode
|
||||||
|
unicode/convmap.pl perl script for generating the lookup table for UTF-8 to keysym
|
||||||
|
unicode/keysym.map keysym mapping from UTF-8
|
||||||
|
unicode/make-precompose.sh make precompose.c
|
||||||
|
unicode/precompose.c.head header of precompose.c
|
||||||
|
unicode/precompose.c.tail tail of precompose.c
|
||||||
|
vttests subdirectory
|
||||||
|
vttests/16colors.sh test-script to show 16-colors
|
||||||
|
vttests/256colors.pl script to illustrate 256-colors
|
||||||
|
vttests/256colors2.pl fancy test-script for 256-colors
|
||||||
|
vttests/88colors.pl sample script showing 88-colors
|
||||||
|
vttests/88colors2.pl sample script showing 88-colors
|
||||||
|
vttests/8colors.sh test-script to illustrate 8-colors
|
||||||
|
vttests/acolors.sh demonstrate changing the ANSI colors
|
||||||
|
vttests/closest-rgb.pl demo of color-distances
|
||||||
|
vttests/doublechars.sh test script to demonstrate doublesize chars
|
||||||
|
vttests/dynamic.pl demo for dynamic colors
|
||||||
|
vttests/dynamic.sh script to illustrate the dynamic colors control sequence
|
||||||
|
vttests/dynamic2.sh complete example of dynamic colors
|
||||||
|
vttests/fonts.sh script to demonstrate font-switching sequences
|
||||||
|
vttests/modify-keys.pl illustrate modifyOtherKeys with a table
|
||||||
|
vttests/mouse-codes demo script for mouse-codes
|
||||||
|
vttests/other-sgr.sh demonstrate non-VTxx SGRs
|
||||||
|
vttests/paste64.pl script to test base64-selection option
|
||||||
|
vttests/print-vt-chars.pl demo-script
|
||||||
|
vttests/query-color.pl demonstrate OSC 4
|
||||||
|
vttests/query-dynamic.pl demonstrate OSC 10 to OSC 19
|
||||||
|
vttests/query-fonts.pl script to demo/test font-querying
|
||||||
|
vttests/query-status.pl query DECRQSS status
|
||||||
|
vttests/query-xres.pl test/demo for DCS+Q
|
||||||
|
vttests/report-sgr.pl demonstrate report-sgr
|
||||||
|
vttests/resize.pl translated resize.sh to perl since it is easy to test, and I needed
|
||||||
|
vttests/resize.sh script to demonstrate resizing
|
||||||
|
vttests/sgrPushPop.pl demonstrate xterm SGR push/pop
|
||||||
|
vttests/sgrPushPop2.pl demonstrate xterm SGR push/pop for colors
|
||||||
|
vttests/tcapquery.pl script to test tcap-query option
|
||||||
|
vttests/title.sh test-script to show title of xterm in action
|
634
ports/xterm/xterm-359/Makefile
Normal file
634
ports/xterm/xterm-359/Makefile
Normal file
@ -0,0 +1,634 @@
|
|||||||
|
## $XTermId: Makefile.in,v 1.253 2020/08/02 19:12:41 tom Exp $
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# this file is part of xterm
|
||||||
|
#
|
||||||
|
# Copyright 1997-2019,2020 by Thomas E. Dickey
|
||||||
|
#
|
||||||
|
# All Rights Reserved
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
# copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
# Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
# holders shall not be used in advertising or otherwise to promote the
|
||||||
|
# sale, use or other dealings in this Software without prior written
|
||||||
|
# authorization.
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
SHELL = /bin/sh
|
||||||
|
|
||||||
|
#### Start of system configuration section. ####
|
||||||
|
|
||||||
|
srcdir = .
|
||||||
|
|
||||||
|
|
||||||
|
x =
|
||||||
|
o = .o
|
||||||
|
|
||||||
|
CC = gcc
|
||||||
|
CPP = gcc -E
|
||||||
|
AWK = awk
|
||||||
|
LINK = $(CC) $(CFLAGS)
|
||||||
|
|
||||||
|
CTAGS =
|
||||||
|
ETAGS =
|
||||||
|
|
||||||
|
LN_S = ln -s
|
||||||
|
RM = rm -f
|
||||||
|
LINT =
|
||||||
|
LINT_OPTS =
|
||||||
|
|
||||||
|
INSTALL = /bin/install -c
|
||||||
|
INSTALL_PROGRAM = ${INSTALL}
|
||||||
|
INSTALL_SCRIPT = ${INSTALL}
|
||||||
|
INSTALL_DATA = ${INSTALL} -m 644
|
||||||
|
transform = s,x,x,
|
||||||
|
|
||||||
|
EXTRA_CFLAGS =
|
||||||
|
EXTRA_CPPFLAGS = -DPROJECTROOT='"/usr"' -D__vendorversion__='"Version 7.7.0 X.Org"'
|
||||||
|
EXTRA_LOADFLAGS =
|
||||||
|
|
||||||
|
CPPFLAGS = -I. -I$(srcdir) -DHAVE_CONFIG_H -I. -I/usr/include/freetype2 -I/usr/include/freetype2/config -Dlinux -D__amd64__ -D_POSIX_C_SOURCE=199309L -D_POSIX_SOURCE -D_XOPEN_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DFUNCPROTO=15 -DNARROWPROTO -DHAVE_TERM_H -DXFREE86_FT2 -D_DEFAULT_SOURCE -U_XOPEN_SOURCE -D_XOPEN_SOURCE=600 -DUTMP -DOSMAJORVERSION=5 -DOSMINORVERSION=11 -I/usr/include -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/freetype2 -I/usr/include/libpng16 -DDEFCLASS=\"XTerm\" $(EXTRA_CPPFLAGS)
|
||||||
|
CFLAGS = -g -O2 $(EXTRA_CFLAGS)
|
||||||
|
LDFLAGS =
|
||||||
|
LIBS = -lXft -lfontconfig -lfreetype -lutil -lneXtaw -lXmu -lSM -lICE -lXext -lXinerama -lXpm -lXt -lX11 -lSM -lICE -lncurses
|
||||||
|
|
||||||
|
prefix = /usr/local
|
||||||
|
exec_prefix = ${prefix}
|
||||||
|
datarootdir = ${prefix}/share
|
||||||
|
datadir = ${datarootdir}
|
||||||
|
|
||||||
|
manext = 1
|
||||||
|
bindir = ${exec_prefix}/bin
|
||||||
|
libdir = ${exec_prefix}/lib
|
||||||
|
mandir = ${datarootdir}/man/man$(manext)
|
||||||
|
appsdir = ${exec_prefix}/lib/X11/app-defaults
|
||||||
|
icondir = no
|
||||||
|
pixmapdir = ${datadir}/pixmaps
|
||||||
|
|
||||||
|
#### End of system configuration section. ####
|
||||||
|
|
||||||
|
ICON_NAME = mini.xterm
|
||||||
|
ICON_SYMLINK = NONE
|
||||||
|
|
||||||
|
DESTDIR =
|
||||||
|
BINDIR = $(DESTDIR)$(bindir)
|
||||||
|
LIBDIR = $(DESTDIR)$(libdir)
|
||||||
|
MANDIR = $(DESTDIR)$(mandir)
|
||||||
|
APPSDIR = $(DESTDIR)$(appsdir)
|
||||||
|
|
||||||
|
#ICONDIR = $(DESTDIR)$(icondir)
|
||||||
|
PIXMAPDIR = $(DESTDIR)$(pixmapdir)
|
||||||
|
|
||||||
|
INSTALL_DIRS = $(BINDIR) $(APPSDIR) $(ICONDIR) $(PIXMAPDIR) $(MANDIR)
|
||||||
|
|
||||||
|
CLASS = XTerm
|
||||||
|
EXTRAHDR = 256colres.h Tekparse.h charclass.h precompose.h wcwidth.h graphics_sixel.h graphics.h
|
||||||
|
EXTRASRC = TekPrsTbl.c Tekproc.c charclass.c precompose.c wcwidth.c html.c svg.c graphics_sixel.c graphics.c
|
||||||
|
EXTRAOBJ = TekPrsTbl.o Tekproc.o charclass.o precompose.o wcwidth.o html.o svg.o graphics_sixel.o graphics.o
|
||||||
|
|
||||||
|
AUTO_SOURCE = \
|
||||||
|
builtin_icons.h \
|
||||||
|
VTparse.cin \
|
||||||
|
Tekparse.cin \
|
||||||
|
VTparse.hin \
|
||||||
|
Tekparse.hin
|
||||||
|
|
||||||
|
SRCS1 = button.c cachedGCs.c charproc.c charsets.c cursor.c \
|
||||||
|
data.c doublechr.c fontutils.c input.c \
|
||||||
|
linedata.c main.c menu.c misc.c \
|
||||||
|
print.c ptydata.c scrollback.c \
|
||||||
|
screen.c scrollbar.c tabs.c util.c version.c xstrings.c \
|
||||||
|
xtermcap.c VTPrsTbl.c $(EXTRASRC)
|
||||||
|
OBJS1 = button$o cachedGCs$o charproc$o charsets$o cursor$o \
|
||||||
|
data$o doublechr$o fontutils$o input$o \
|
||||||
|
linedata$o main$o menu$o misc$o \
|
||||||
|
print$o ptydata$o scrollback$o \
|
||||||
|
screen$o scrollbar$o tabs$o util$o version$o xstrings$o \
|
||||||
|
xtermcap$o VTPrsTbl$o $(EXTRAOBJ)
|
||||||
|
SRCS2 = resize.c version.c xstrings.c
|
||||||
|
OBJS2 = resize$o version$o xstrings$o
|
||||||
|
SRCS = $(SRCS1) $(SRCS2)
|
||||||
|
OBJS = $(OBJS1) $(OBJS2)
|
||||||
|
HDRS = VTparse.h data.h error.h fontutils.h main.h menu.h \
|
||||||
|
ptyx.h version.h xstrings.h xterm.h xtermcap.h $(EXTRAHDR)
|
||||||
|
PROGRAMS = xterm$x resize$x
|
||||||
|
TEST_PROGRAMS = test_charclass$x test_ptydata$x test_wcwidth$x
|
||||||
|
|
||||||
|
all : $(PROGRAMS)
|
||||||
|
################################################################################
|
||||||
|
.SUFFIXES : .i .def .cin .hin .$(manext) .ms .man .txt .html .ps .pdf
|
||||||
|
|
||||||
|
.c$o :
|
||||||
|
|
||||||
|
$(CC) $(CPPFLAGS) $(CFLAGS) -c $(srcdir)/$*.c
|
||||||
|
|
||||||
|
.c.i :
|
||||||
|
|
||||||
|
$(CPP) -C $(CPPFLAGS) $*.c >$@
|
||||||
|
|
||||||
|
.def.cin :
|
||||||
|
@echo "making $@ from $<"
|
||||||
|
@$(AWK) 'BEGIN{printf "/* vile:cmode */\n";}/^CASE_/{printf "{ %d, \"%s\" },\n", n++, $$1; }' < $< >$@
|
||||||
|
|
||||||
|
.def.hin :
|
||||||
|
@echo "making $@ from $<"
|
||||||
|
@$(AWK) 'BEGIN{printf "/* vile:cmode */\n";}/^CASE_/{printf "#define %s %d\n", $$1, n++}' < $< >$@
|
||||||
|
|
||||||
|
.man.$(manext) :
|
||||||
|
$(SHELL) ./minstall "$(INSTALL_DATA)" $< $@ $(appsdir) $(CLASS) $* $* $(pixmapdir)
|
||||||
|
|
||||||
|
#.$(manext).txt :
|
||||||
|
# $(SHELL) -c "tbl $*.$(manext) | nroff -man | col -bx" >$@
|
||||||
|
#
|
||||||
|
#.ms.txt :
|
||||||
|
# $(SHELL) -c "tbl $*.$(manext) | nroff -ms | col -bx" >$@
|
||||||
|
#
|
||||||
|
|
||||||
|
.$(manext).html :
|
||||||
|
./man2html.tmp $* $(manext) man >$@
|
||||||
|
|
||||||
|
.$(manext).ps :
|
||||||
|
$(SHELL) -c "tbl $*.$(manext) | groff -man" >$@
|
||||||
|
|
||||||
|
.$(manext).txt :
|
||||||
|
GROFF_NO_SGR=stupid $(SHELL) -c "tbl $*.$(manext) | groff -Tascii -man | col -bx" >$@
|
||||||
|
|
||||||
|
.ms.html :
|
||||||
|
./man2html.tmp $* ms ms >$@
|
||||||
|
|
||||||
|
.ms.ps :
|
||||||
|
$(SHELL) -c "tbl $< | groff -ms" >$@
|
||||||
|
|
||||||
|
.ms.txt :
|
||||||
|
GROFF_NO_SGR=stupid $(SHELL) -c "tbl $< | groff -Tascii -ms | col -bx" >$@
|
||||||
|
|
||||||
|
.ps.pdf :
|
||||||
|
ps2pdf $*.ps
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
VTPARSE_H = VTparse.h VTparse.hin
|
||||||
|
TEKPARSE_H = Tekparse.h Tekparse.hin
|
||||||
|
|
||||||
|
main$o : main.h
|
||||||
|
misc$o : version.h
|
||||||
|
|
||||||
|
$(OBJS1) : xterm.h ptyx.h xtermcfg.h
|
||||||
|
main$o resize$o screen$o : xterm_io.h
|
||||||
|
|
||||||
|
xterm$x : $(OBJS1)
|
||||||
|
$(SHELL) $(srcdir)/plink.sh $(LINK) $(LDFLAGS) -o $@ $(OBJS1) $(LIBS) $(EXTRA_LOADFLAGS)
|
||||||
|
|
||||||
|
resize$x : $(OBJS2)
|
||||||
|
$(SHELL) $(srcdir)/plink.sh $(LINK) $(LDFLAGS) -o $@ $(OBJS2) $(LIBS)
|
||||||
|
|
||||||
|
256colres.h :
|
||||||
|
-$(RM) $@
|
||||||
|
perl $(srcdir)/256colres.pl > $@
|
||||||
|
|
||||||
|
88colres.h :
|
||||||
|
-$(RM) $@
|
||||||
|
perl $(srcdir)/88colres.pl > $@
|
||||||
|
|
||||||
|
charproc$o : $(VTPARSE_H) main.h 256colres.h
|
||||||
|
graphics_regis$o : $(VTPARSE_H)
|
||||||
|
graphics_sixel$o : $(VTPARSE_H)
|
||||||
|
misc$o : $(VTPARSE_H)
|
||||||
|
VTPrsTbl$o : $(VTPARSE_H)
|
||||||
|
|
||||||
|
TekPrsTbl$o : $(TEKPARSE_H)
|
||||||
|
Tekproc$o : $(TEKPARSE_H)
|
||||||
|
|
||||||
|
misc$o : builtin_icons.h
|
||||||
|
|
||||||
|
trace$o : VTparse.cin Tekparse.cin
|
||||||
|
|
||||||
|
# do this to quiet gcc -Wcast-qual warnings
|
||||||
|
builtin_icons.h :
|
||||||
|
@echo "#if OPT_BUILTIN_XPMS" >$@
|
||||||
|
@echo "#include <icons/mini.xterm.xpms>" >>$@
|
||||||
|
@echo "#include <icons/filled-xterm.xpms>" >>$@
|
||||||
|
@echo "#include <icons/xterm.xpms>" >>$@
|
||||||
|
@echo "#include <icons/xterm-color.xpms>" >>$@
|
||||||
|
@echo "#else" >>$@
|
||||||
|
@sed -e 's/static char \* /static const char * /' $(srcdir)/icons/mini.xterm_48x48.xpm >>$@
|
||||||
|
@echo "#endif" >>$@
|
||||||
|
@echo "made $@"
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
test_charclass$x : $(srcdir)/charclass.c
|
||||||
|
$(SHELL) $(srcdir)/plink.sh $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) -DTEST_DRIVER $(srcdir)/charclass.c $(LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
test_ptydata$x : $(srcdir)/ptydata.c
|
||||||
|
$(SHELL) $(srcdir)/plink.sh $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) -DTEST_DRIVER $(srcdir)/ptydata.c $(LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
test_wcwidth$x : $(srcdir)/wcwidth.c
|
||||||
|
$(SHELL) $(srcdir)/plink.sh $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) -DTEST_DRIVER $(srcdir)/wcwidth.c $(LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
actual_xterm = `echo xterm| sed '$(transform)'`
|
||||||
|
actual_resize = `echo resize| sed '$(transform)'`
|
||||||
|
actual_uxterm = `echo uxterm| sed '$(transform)'`
|
||||||
|
actual_k8term = `echo koi8rxterm| sed '$(transform)'`
|
||||||
|
|
||||||
|
binary_xterm = $(actual_xterm)$x
|
||||||
|
binary_resize = $(actual_resize)$x
|
||||||
|
binary_uxterm = $(actual_uxterm)
|
||||||
|
binary_k8term = $(actual_k8term)
|
||||||
|
|
||||||
|
install \
|
||||||
|
install-bin \
|
||||||
|
install-full :: xterm$x resize$x $(BINDIR)
|
||||||
|
$(SHELL) $(srcdir)/sinstall.sh "$(INSTALL_PROGRAM)" xterm$x /bin/xterm $(BINDIR)/$(binary_xterm)
|
||||||
|
# $(INSTALL_PROGRAM) xterm$x $(BINDIR)/$(binary_xterm)
|
||||||
|
$(INSTALL_PROGRAM) -m 755 resize$x $(BINDIR)/$(binary_resize)
|
||||||
|
|
||||||
|
EDIT_SCRIPT = sed -e s,=xterm,=\$$name, -e s,XTerm,$(CLASS),
|
||||||
|
|
||||||
|
InstallLink = \
|
||||||
|
if test NONE != NONE \
|
||||||
|
&& test \$$source != NONE \
|
||||||
|
&& test \$$source != \$$target ; then \
|
||||||
|
cd \$$TARGET && ( \
|
||||||
|
$(RM) \$$source ; \
|
||||||
|
$(LN_S) \$$target \$$source ; \
|
||||||
|
echo \"... created symbolic link:\" ; \
|
||||||
|
ls -l \$$target \$$source ) ; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
InstallBinLink = TARGET=$(BINDIR); $(InstallLink)
|
||||||
|
InstallManLink = TARGET=$(MANDIR); $(InstallLink)
|
||||||
|
|
||||||
|
InstallScript = \
|
||||||
|
echo \"... installing $(BINDIR)/\$$target\"; \
|
||||||
|
name=$(binary_xterm); \
|
||||||
|
$(EDIT_SCRIPT) $(srcdir)/\$$source >\$$source.tmp; \
|
||||||
|
$(INSTALL_SCRIPT) -m 755 \$$source.tmp $(BINDIR)/\$$target; \
|
||||||
|
$(RM) \$$source.tmp
|
||||||
|
|
||||||
|
install \
|
||||||
|
install-bin \
|
||||||
|
install-scripts \
|
||||||
|
install-full :: $(BINDIR)
|
||||||
|
@$(SHELL) -c "source=\"NONE\"; \
|
||||||
|
target=\"$(binary_xterm)\"; \
|
||||||
|
$(InstallBinLink)"
|
||||||
|
@$(SHELL) -c "source=\"resize\"; \
|
||||||
|
target=\"$(binary_resize)\"; \
|
||||||
|
$(InstallBinLink)"
|
||||||
|
@$(SHELL) -c "source=\"uxterm\"; \
|
||||||
|
target=\"$(binary_uxterm)\"; \
|
||||||
|
$(InstallScript); \
|
||||||
|
$(InstallBinLink)"
|
||||||
|
@$(SHELL) -c "source=\"koi8rxterm\"; \
|
||||||
|
target=\"$(binary_k8term)\"; \
|
||||||
|
$(InstallScript); \
|
||||||
|
$(InstallBinLink)"
|
||||||
|
|
||||||
|
install \
|
||||||
|
install-man \
|
||||||
|
install-full :: $(MANDIR)
|
||||||
|
@-$(SHELL) -c "for source in xterm resize uxterm koi8rxterm ; \
|
||||||
|
do \
|
||||||
|
target=\`echo \"\$$source\" | sed 's,x,x,'\`; \
|
||||||
|
$(SHELL) ./minstall \"$(INSTALL_DATA)\" \
|
||||||
|
$(srcdir)/\$$source.man \
|
||||||
|
$(MANDIR)/\$$target.$(manext) \
|
||||||
|
$(appsdir) \
|
||||||
|
$(CLASS) \
|
||||||
|
\$$source \
|
||||||
|
\$$target \
|
||||||
|
$(pixmapdir); \
|
||||||
|
done"
|
||||||
|
@-$(SHELL) -c "if test NONE != NONE ; then \
|
||||||
|
source=$(actual_xterm).$(manext); \
|
||||||
|
target=NONE.$(manext); \
|
||||||
|
cd $(MANDIR) && ( \
|
||||||
|
$(RM) \$$target ; \
|
||||||
|
$(LN_S) \$$source \$$target ; \
|
||||||
|
echo '... created symbolic link:' ; \
|
||||||
|
ls -l \$$source \$$target ; \
|
||||||
|
) \
|
||||||
|
fi"
|
||||||
|
|
||||||
|
APP_NAMES = XTerm UXTerm KOI8RXTerm
|
||||||
|
|
||||||
|
install \
|
||||||
|
install-app \
|
||||||
|
install-full :: $(APPSDIR)
|
||||||
|
@-$(SHELL) -c 'for s in $(APP_NAMES); \
|
||||||
|
do \
|
||||||
|
echo "** $$s"; \
|
||||||
|
d=`echo $$s | sed -e s/XTerm/$(CLASS)/`; \
|
||||||
|
echo installing $(APPSDIR)/$$d; \
|
||||||
|
sed -e s/XTerm/$(CLASS)/ $(srcdir)/$$s.ad >XTerm.tmp; \
|
||||||
|
$(INSTALL_DATA) XTerm.tmp $(APPSDIR)/$$d; \
|
||||||
|
echo installing $(APPSDIR)/$$d-color; \
|
||||||
|
sed -e s/XTerm/$$d/ $(srcdir)/XTerm-col.ad >XTerm.tmp; \
|
||||||
|
$(INSTALL_DATA) XTerm.tmp $(APPSDIR)/$$d-color; \
|
||||||
|
done'
|
||||||
|
@$(RM) XTerm.tmp
|
||||||
|
# @echo "... installed app-defaults"
|
||||||
|
|
||||||
|
#ICON_LIST = icons/mini.xterm_48x48.png icons/mini.xterm_48x48.xpm
|
||||||
|
#ICON_THEME = no
|
||||||
|
#install \
|
||||||
|
#install-icon \
|
||||||
|
#install-full :: $(ICONDIR)
|
||||||
|
# ACTUAL_XTERM=$(actual_xterm) $(SHELL) -c '\
|
||||||
|
# h=$(ICONDIR)/$(ICON_THEME); \
|
||||||
|
# for n in $(ICON_LIST); \
|
||||||
|
# do \
|
||||||
|
# x=$$ACTUAL_XTERM; \
|
||||||
|
# l=`echo "$$n" | cut -f1 -d:`; \
|
||||||
|
# r=`echo "$$n" | cut -f2 -d: |sed -e "s,xterm,$$ACTUAL_XTERM,"`; \
|
||||||
|
# test -z "$$r" && continue; \
|
||||||
|
# d=$$h/`echo "$$r" | sed -e "s,/[^/]*$$,,"`; \
|
||||||
|
# test -d "$$d" || mkdir -p "$$d"; \
|
||||||
|
# echo "installing icon $$h/$$r"; \
|
||||||
|
# $(INSTALL_DATA) $$l $$h/$$r; \
|
||||||
|
# s=`echo "$$r" | sed -e '"'s,^.*\.,.,'"'`; \
|
||||||
|
# t=$(ICON_SYMLINK)$$s; \
|
||||||
|
# b=`basename $$n $$s | sed -e "s,_[1-9][0-9]*x.*,,"`; \
|
||||||
|
# if test "$(ICON_SYMLINK)" != NONE ; then \
|
||||||
|
# if test "$$r" != "$$t" ; then \
|
||||||
|
# if test "x$$b" = "x$(ICON_NAME)" ; then \
|
||||||
|
# echo "linking $$r -> $$t"; \
|
||||||
|
# ( cd $$h; $(RM) $$t; $(LN_S) $$r $$t; ) \
|
||||||
|
# fi \
|
||||||
|
# fi \
|
||||||
|
# fi \
|
||||||
|
# done'
|
||||||
|
# @echo "... installed icons"
|
||||||
|
|
||||||
|
install \
|
||||||
|
install-icon \
|
||||||
|
install-full :: $(PIXMAPDIR)
|
||||||
|
ACTUAL_XTERM=$(actual_xterm) $(SHELL) -c '\
|
||||||
|
h=$(PIXMAPDIR); \
|
||||||
|
for n in $(srcdir)/icons/*xterm*_32x32.xpm $(srcdir)/icons/*xterm*_48x48.xpm; \
|
||||||
|
do \
|
||||||
|
l=`basename $$n`; \
|
||||||
|
r=`echo "$$l" | sed -e "s,xterm,$$ACTUAL_XTERM,"`; \
|
||||||
|
echo "installing pixmap $$h/$$r"; \
|
||||||
|
$(INSTALL_DATA) $(srcdir)/icons/$$l $$h/$$r; \
|
||||||
|
s=`echo "$$r" | sed -e '"'s,^.*\.,.,'"'`; \
|
||||||
|
t=$(ICON_SYMLINK)$$s; \
|
||||||
|
b=`basename $$n $$s | sed -e "s,_[1-9][0-9]*x.*,,"`; \
|
||||||
|
if test "$(ICON_SYMLINK)" != NONE ; then \
|
||||||
|
if test "x$$r" != "$$t" ; then \
|
||||||
|
if test "x$$b" = "x$(ICON_NAME)" ; then \
|
||||||
|
echo "linking $$r -> $$t"; \
|
||||||
|
( cd $$h; $(RM) $$t; $(LN_S) $$r $$t; ) \
|
||||||
|
fi \
|
||||||
|
fi \
|
||||||
|
fi \
|
||||||
|
done'
|
||||||
|
@echo "... installed icons"
|
||||||
|
|
||||||
|
install ::
|
||||||
|
@echo 'Completed installation of executables and documentation.'
|
||||||
|
@echo 'Use "make install-ti" to install terminfo description.'
|
||||||
|
|
||||||
|
TERMINFO_DIR = $(DESTDIR)/usr/lib/terminfo
|
||||||
|
SET_TERMINFO = TERMINFO=$(TERMINFO_DIR)
|
||||||
|
|
||||||
|
install-full \
|
||||||
|
install-ti :: $(TERMINFO_DIR)
|
||||||
|
@$(SHELL) -c "$(SET_TERMINFO) $(srcdir)/run-tic.sh $(srcdir)/terminfo"
|
||||||
|
@echo 'Completed installation of terminfo description.'
|
||||||
|
|
||||||
|
install-full \
|
||||||
|
install-tc ::
|
||||||
|
@-$(SHELL) -c "if test -f /etc/termcap ; then echo 'You must install the termcap entry manually by editing /etc/termcap'; fi"
|
||||||
|
|
||||||
|
installdirs : $(INSTALL_DIRS)
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
UninstallLink = \
|
||||||
|
if test NONE != NONE \
|
||||||
|
&& test \$$source != NONE \
|
||||||
|
&& test \$$source != \$$target \
|
||||||
|
&& test -h \$$TARGET/\$$source ; then \
|
||||||
|
echo \"... removing \$$TARGET/\$$source\"; \
|
||||||
|
cd \$$TARGET && \
|
||||||
|
$(RM) \$$source; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
UninstallBinLink = TARGET=$(BINDIR); $(UninstallLink)
|
||||||
|
UninstallManLink = TARGET=$(MANDIR); $(UninstallLink)
|
||||||
|
|
||||||
|
UninstallBinary = \
|
||||||
|
echo \"... removing $(BINDIR)/\$$target\"; \
|
||||||
|
$(RM) $(BINDIR)/\$$target
|
||||||
|
|
||||||
|
uninstall \
|
||||||
|
uninstall-bin \
|
||||||
|
uninstall-full ::
|
||||||
|
@-$(SHELL) -c "source=\"NONE\"; \
|
||||||
|
target=\"$(binary_xterm)\"; \
|
||||||
|
$(UninstallBinLink); \
|
||||||
|
$(UninstallBinary)"
|
||||||
|
@-$(SHELL) -c "source=\"resize\"; \
|
||||||
|
target=\"$(binary_resize)\"; \
|
||||||
|
$(UninstallBinLink); \
|
||||||
|
$(UninstallBinary)"
|
||||||
|
|
||||||
|
uninstall \
|
||||||
|
uninstall-bin \
|
||||||
|
uninstall-scripts \
|
||||||
|
uninstall-full ::
|
||||||
|
@-$(SHELL) -c "source=\"uxterm\"; \
|
||||||
|
target=\"$(binary_uxterm)\"; \
|
||||||
|
$(UninstallBinLink); \
|
||||||
|
$(UninstallBinary)"
|
||||||
|
@-$(SHELL) -c "source=\"koi8rxterm\"; \
|
||||||
|
target=\"$(binary_k8term)\"; \
|
||||||
|
$(UninstallBinLink); \
|
||||||
|
$(UninstallBinary)"
|
||||||
|
|
||||||
|
uninstall \
|
||||||
|
uninstall-man \
|
||||||
|
uninstall-full ::
|
||||||
|
@-$(SHELL) -c "\
|
||||||
|
source=NONE.$(manext); \
|
||||||
|
target=$(actual_xterm).$(manext); \
|
||||||
|
$(UninstallManLink)"
|
||||||
|
@-$(SHELL) -c "for source in \
|
||||||
|
$(actual_xterm).$(manext) \
|
||||||
|
$(actual_resize).$(manext) \
|
||||||
|
$(actual_uxterm).$(manext) \
|
||||||
|
$(actual_k8term).$(manext); \
|
||||||
|
do \
|
||||||
|
echo \"... removing $(MANDIR)/\$$source\"; \
|
||||||
|
$(RM) $(MANDIR)/\$$source; \
|
||||||
|
done"
|
||||||
|
|
||||||
|
uninstall \
|
||||||
|
uninstall-app \
|
||||||
|
uninstall-full ::
|
||||||
|
-$(SHELL) -c 'for s in $(APP_NAMES); \
|
||||||
|
do \
|
||||||
|
echo "** $$s"; \
|
||||||
|
d=`echo $$s | sed -e s/XTerm/$(CLASS)/`; \
|
||||||
|
echo uninstalling $(APPSDIR)/$$d; \
|
||||||
|
$(RM) $(APPSDIR)/$$d; \
|
||||||
|
echo uninstalling $(APPSDIR)/$$d-color; \
|
||||||
|
$(RM) $(APPSDIR)/$$d-color; \
|
||||||
|
done'
|
||||||
|
|
||||||
|
#uninstall \
|
||||||
|
#uninstall-icon \
|
||||||
|
#uninstall-full ::
|
||||||
|
# -$(SHELL) -c 'ACTUAL_XTERM=$(actual_xterm) ; \
|
||||||
|
# for n in $(ICON_LIST); \
|
||||||
|
# do \
|
||||||
|
# r=`echo "$$n" | sed -e s,\^.\*:,, -e s,xterm,$$ACTUAL_XTERM,`; \
|
||||||
|
# test -z "$$r" && continue; \
|
||||||
|
# h=$(ICONDIR)/$(ICON_THEME); \
|
||||||
|
# test -f $$h/$$r || continue; \
|
||||||
|
# echo removing $$h/$$r; \
|
||||||
|
# $(RM) $$h/$$r; \
|
||||||
|
# done'
|
||||||
|
# @echo "... removed icons"
|
||||||
|
|
||||||
|
uninstall \
|
||||||
|
uninstall-icon \
|
||||||
|
uninstall-full ::
|
||||||
|
-@$(SHELL) -c 'ACTUAL_XTERM=$(actual_xterm) ; \
|
||||||
|
for n in $(srcdir)/icons/*xterm*_32x32.xpm $(srcdir)/icons/*xterm*_48x48.xpm; \
|
||||||
|
do \
|
||||||
|
l=`basename $$n`; \
|
||||||
|
r=`echo "$$l" | sed -e "s,xterm,$$ACTUAL_XTERM,"`; \
|
||||||
|
echo removing $(PIXMAPDIR)/$$r; \
|
||||||
|
$(RM) $(PIXMAPDIR)/$$r; \
|
||||||
|
done'
|
||||||
|
@echo "... removed icons"
|
||||||
|
################################################################################
|
||||||
|
# Desktop-utils does not provide an uninstall, and is not uniformly available.
|
||||||
|
#DESKTOP_FILES = $(srcdir)/xterm.desktop $(srcdir)/uxterm.desktop
|
||||||
|
#DESKTOP_FLAGS =
|
||||||
|
#install-desktop \
|
||||||
|
#install-full ::
|
||||||
|
# ACTUAL_XTERM=$(actual_xterm) \
|
||||||
|
# $(SHELL) -c 'for n in $(DESKTOP_FILES); \
|
||||||
|
# do $(SHELL) df-install $$ACTUAL_XTERM $(ICON_NAME) DESTDIR="$(DESTDIR)" $(DESKTOP_FLAGS) $$n; \
|
||||||
|
# done'
|
||||||
|
################################################################################
|
||||||
|
check : $(TEST_PROGRAMS)
|
||||||
|
@ echo "See demos in vttests/* (use vttest for system-level testing)"
|
||||||
|
@ $(SHELL) -c 'echo "** executing test_charclass"; \
|
||||||
|
./test_charclass'
|
||||||
|
@ $(SHELL) -c 'echo "** executing test_wcwidth"; \
|
||||||
|
for range in 32-126 160-0xff00 0x10000-0x11000; \
|
||||||
|
do echo ".. range $$range"; \
|
||||||
|
./test_wcwidth -s $$range; \
|
||||||
|
./test_wcwidth -s $$range -w; \
|
||||||
|
done'
|
||||||
|
################################################################################
|
||||||
|
mostlyclean :
|
||||||
|
-$(RM) *$o *.[is] XTerm[1-9]*.* Xterm.log.* XtermLog.* .pure core *~ *.bak *.BAK *.out *.tmp
|
||||||
|
|
||||||
|
clean : mostlyclean
|
||||||
|
-$(RM) $(PROGRAMS) $(TEST_PROGRAMS) $(AUTO_SOURCE)
|
||||||
|
|
||||||
|
sources : $(AUTO_SOURCE)
|
||||||
|
|
||||||
|
distclean :: clean
|
||||||
|
-$(RM) Makefile config.status config.cache config.log xtermcfg.h
|
||||||
|
-$(RM) df-install minstall
|
||||||
|
|
||||||
|
distclean \
|
||||||
|
docs-clean ::
|
||||||
|
-$(RM) *.ps *.pdf *.png
|
||||||
|
-$(SHELL) -c 'for p in xterm resize uxterm koi8rxterm; \
|
||||||
|
do \
|
||||||
|
$(RM) $$p.html $$p.$(manext) $$p.txt; \
|
||||||
|
done'
|
||||||
|
-$(RM) ctlseqs.html ctlseqs.$(manext)
|
||||||
|
|
||||||
|
distclean ::
|
||||||
|
-$(RM) man2html.tmp
|
||||||
|
|
||||||
|
realclean : distclean
|
||||||
|
-$(RM) tags TAGS
|
||||||
|
|
||||||
|
maintainer-clean : realclean
|
||||||
|
-$(RM) 256colres.h 88colres.h
|
||||||
|
################################################################################
|
||||||
|
terminfo.out : terminfo ; tic -a -I -1 terminfo >$@
|
||||||
|
termcap.out : termcap ; tic -a -C -U termcap >$@
|
||||||
|
################################################################################
|
||||||
|
docs-ctlseqs \
|
||||||
|
docs :: $(srcdir)/ctlseqs.txt ctlseqs.html ctlseqs.pdf ctlseqs.ps
|
||||||
|
|
||||||
|
ctlseqs.html : $(srcdir)/ctlseqs.ms
|
||||||
|
ctlseqs.pdf : ctlseqs.ps
|
||||||
|
ctlseqs.ps : $(srcdir)/ctlseqs.ms
|
||||||
|
ctlseqs.txt : $(srcdir)/ctlseqs.ms
|
||||||
|
################################################################################
|
||||||
|
docs-resize \
|
||||||
|
docs :: resize.txt resize.html resize.pdf resize.ps
|
||||||
|
resize.html : resize.$(manext)
|
||||||
|
resize.pdf : resize.ps
|
||||||
|
resize.ps : resize.$(manext)
|
||||||
|
resize.txt : resize.$(manext)
|
||||||
|
################################################################################
|
||||||
|
docs-xterm \
|
||||||
|
docs :: xterm.txt xterm.html xterm.pdf xterm.ps
|
||||||
|
xterm.html : xterm.$(manext)
|
||||||
|
xterm.pdf : xterm.ps
|
||||||
|
xterm.ps : xterm.$(manext)
|
||||||
|
xterm.txt : xterm.$(manext)
|
||||||
|
################################################################################
|
||||||
|
docs-uxterm \
|
||||||
|
docs :: uxterm.txt uxterm.html uxterm.pdf uxterm.ps
|
||||||
|
uxterm.html : uxterm.$(manext)
|
||||||
|
uxterm.pdf : uxterm.ps
|
||||||
|
uxterm.ps : uxterm.$(manext)
|
||||||
|
uxterm.txt : uxterm.$(manext)
|
||||||
|
################################################################################
|
||||||
|
docs-koi8rxterm \
|
||||||
|
docs :: koi8rxterm.txt koi8rxterm.html koi8rxterm.pdf koi8rxterm.ps
|
||||||
|
koi8rxterm.html : koi8rxterm.$(manext)
|
||||||
|
koi8rxterm.pdf : koi8rxterm.ps
|
||||||
|
koi8rxterm.ps : koi8rxterm.$(manext)
|
||||||
|
koi8rxterm.txt : koi8rxterm.$(manext)
|
||||||
|
################################################################################
|
||||||
|
lint :
|
||||||
|
$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(SRCS1)
|
||||||
|
$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(SRCS2)
|
||||||
|
|
||||||
|
tags :
|
||||||
|
$(CTAGS) $(SRCS) $(HDRS)
|
||||||
|
|
||||||
|
TAGS :
|
||||||
|
$(ETAGS) $(SRCS) $(HDRS)
|
||||||
|
|
||||||
|
$(TERMINFO_DIR) $(INSTALL_DIRS) :
|
||||||
|
mkdir -p $@
|
||||||
|
|
||||||
|
ALWAYS :
|
||||||
|
|
||||||
|
depend : $(TABLES)
|
||||||
|
makedepend -- $(CPPFLAGS) -- $(SRCS)
|
||||||
|
|
||||||
|
# DO NOT DELETE THIS LINE -- make depend depends on it.
|
634
ports/xterm/xterm-359/Makefile.in
Normal file
634
ports/xterm/xterm-359/Makefile.in
Normal file
@ -0,0 +1,634 @@
|
|||||||
|
## $XTermId: Makefile.in,v 1.253 2020/08/02 19:12:41 tom Exp $
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# this file is part of xterm
|
||||||
|
#
|
||||||
|
# Copyright 1997-2019,2020 by Thomas E. Dickey
|
||||||
|
#
|
||||||
|
# All Rights Reserved
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
# copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
# Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
# holders shall not be used in advertising or otherwise to promote the
|
||||||
|
# sale, use or other dealings in this Software without prior written
|
||||||
|
# authorization.
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
SHELL = /bin/sh
|
||||||
|
|
||||||
|
#### Start of system configuration section. ####
|
||||||
|
|
||||||
|
srcdir = @srcdir@
|
||||||
|
VPATH = @srcdir@
|
||||||
|
|
||||||
|
x = @EXEEXT@
|
||||||
|
o = .@OBJEXT@
|
||||||
|
|
||||||
|
CC = @CC@
|
||||||
|
CPP = @CPP@
|
||||||
|
AWK = @AWK@
|
||||||
|
LINK = $(CC) $(CFLAGS)
|
||||||
|
|
||||||
|
CTAGS = @CTAGS@
|
||||||
|
ETAGS = @ETAGS@
|
||||||
|
|
||||||
|
LN_S = @LN_S@
|
||||||
|
RM = rm -f
|
||||||
|
LINT = @LINT@
|
||||||
|
LINT_OPTS = @LINT_OPTS@
|
||||||
|
|
||||||
|
INSTALL = @INSTALL@
|
||||||
|
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||||
|
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||||
|
INSTALL_DATA = @INSTALL_DATA@
|
||||||
|
transform = @program_transform_name@
|
||||||
|
|
||||||
|
EXTRA_CFLAGS = @EXTRA_CFLAGS@
|
||||||
|
EXTRA_CPPFLAGS = @EXTRA_CPPFLAGS@
|
||||||
|
EXTRA_LOADFLAGS = @IMAKE_LOADFLAGS@
|
||||||
|
|
||||||
|
CPPFLAGS = -I. -I$(srcdir) -DHAVE_CONFIG_H @CPPFLAGS@ -DDEFCLASS=\"@APP_CLASS@\" $(EXTRA_CPPFLAGS)
|
||||||
|
CFLAGS = @CFLAGS@ $(EXTRA_CFLAGS)
|
||||||
|
LDFLAGS = @LDFLAGS@ @EXTRA_LDFLAGS@
|
||||||
|
LIBS = @LIBS@
|
||||||
|
|
||||||
|
prefix = @prefix@
|
||||||
|
exec_prefix = @exec_prefix@
|
||||||
|
datarootdir = @datarootdir@
|
||||||
|
datadir = @datadir@
|
||||||
|
|
||||||
|
manext = 1
|
||||||
|
bindir = @bindir@
|
||||||
|
libdir = @libdir@
|
||||||
|
mandir = @mandir@/man$(manext)
|
||||||
|
appsdir = @APPSDIR@
|
||||||
|
icondir = @ICONDIR@
|
||||||
|
pixmapdir = @PIXMAPDIR@
|
||||||
|
|
||||||
|
#### End of system configuration section. ####
|
||||||
|
|
||||||
|
ICON_NAME = @ICON_NAME@
|
||||||
|
ICON_SYMLINK = @ICON_SYMLINK@
|
||||||
|
|
||||||
|
DESTDIR =
|
||||||
|
BINDIR = $(DESTDIR)$(bindir)
|
||||||
|
LIBDIR = $(DESTDIR)$(libdir)
|
||||||
|
MANDIR = $(DESTDIR)$(mandir)
|
||||||
|
APPSDIR = $(DESTDIR)$(appsdir)
|
||||||
|
|
||||||
|
@no_icondir@ICONDIR = $(DESTDIR)$(icondir)
|
||||||
|
@no_pixmapdir@PIXMAPDIR = $(DESTDIR)$(pixmapdir)
|
||||||
|
|
||||||
|
INSTALL_DIRS = $(BINDIR) $(APPSDIR) $(ICONDIR) $(PIXMAPDIR) $(MANDIR)
|
||||||
|
|
||||||
|
CLASS = @APP_CLASS@
|
||||||
|
EXTRAHDR = @EXTRAHDRS@
|
||||||
|
EXTRASRC = @EXTRASRCS@
|
||||||
|
EXTRAOBJ = @EXTRAOBJS@
|
||||||
|
|
||||||
|
AUTO_SOURCE = \
|
||||||
|
builtin_icons.h \
|
||||||
|
VTparse.cin \
|
||||||
|
Tekparse.cin \
|
||||||
|
VTparse.hin \
|
||||||
|
Tekparse.hin
|
||||||
|
|
||||||
|
SRCS1 = button.c cachedGCs.c charproc.c charsets.c cursor.c \
|
||||||
|
data.c doublechr.c fontutils.c input.c \
|
||||||
|
linedata.c main.c menu.c misc.c \
|
||||||
|
print.c ptydata.c scrollback.c \
|
||||||
|
screen.c scrollbar.c tabs.c util.c version.c xstrings.c \
|
||||||
|
xtermcap.c VTPrsTbl.c $(EXTRASRC)
|
||||||
|
OBJS1 = button$o cachedGCs$o charproc$o charsets$o cursor$o \
|
||||||
|
data$o doublechr$o fontutils$o input$o \
|
||||||
|
linedata$o main$o menu$o misc$o \
|
||||||
|
print$o ptydata$o scrollback$o \
|
||||||
|
screen$o scrollbar$o tabs$o util$o version$o xstrings$o \
|
||||||
|
xtermcap$o VTPrsTbl$o $(EXTRAOBJ)
|
||||||
|
SRCS2 = resize.c version.c xstrings.c
|
||||||
|
OBJS2 = resize$o version$o xstrings$o
|
||||||
|
SRCS = $(SRCS1) $(SRCS2)
|
||||||
|
OBJS = $(OBJS1) $(OBJS2)
|
||||||
|
HDRS = VTparse.h data.h error.h fontutils.h main.h menu.h \
|
||||||
|
ptyx.h version.h xstrings.h xterm.h xtermcap.h $(EXTRAHDR)
|
||||||
|
PROGRAMS = xterm$x resize$x
|
||||||
|
TEST_PROGRAMS = test_charclass$x test_ptydata$x test_wcwidth$x
|
||||||
|
|
||||||
|
all : $(PROGRAMS)
|
||||||
|
################################################################################
|
||||||
|
.SUFFIXES : .i .def .cin .hin .$(manext) .ms .man .txt @MAN2HTML_NOTE@ .html @GROFF_NOTE@ .ps .pdf
|
||||||
|
|
||||||
|
.c$o :
|
||||||
|
@RULE_CC@
|
||||||
|
@ECHO_CC@$(CC) $(CPPFLAGS) $(CFLAGS) -c $(srcdir)/$*.c
|
||||||
|
|
||||||
|
.c.i :
|
||||||
|
@RULE_CC@
|
||||||
|
@ECHO_CC@$(CPP) -C $(CPPFLAGS) $*.c >$@
|
||||||
|
|
||||||
|
.def.cin :
|
||||||
|
@echo "making $@ from $<"
|
||||||
|
@$(AWK) 'BEGIN{printf "/* vile:cmode */\n";}/^CASE_/{printf "{ %d, \"%s\" },\n", n++, $$1; }' < $< >$@
|
||||||
|
|
||||||
|
.def.hin :
|
||||||
|
@echo "making $@ from $<"
|
||||||
|
@$(AWK) 'BEGIN{printf "/* vile:cmode */\n";}/^CASE_/{printf "#define %s %d\n", $$1, n++}' < $< >$@
|
||||||
|
|
||||||
|
.man.$(manext) :
|
||||||
|
$(SHELL) ./minstall "$(INSTALL_DATA)" $< $@ $(appsdir) $(CLASS) $* $* $(pixmapdir)
|
||||||
|
|
||||||
|
@NROFF_NOTE@.$(manext).txt :
|
||||||
|
@NROFF_NOTE@ $(SHELL) -c "tbl $*.$(manext) | nroff -man | col -bx" >$@
|
||||||
|
@NROFF_NOTE@
|
||||||
|
@NROFF_NOTE@.ms.txt :
|
||||||
|
@NROFF_NOTE@ $(SHELL) -c "tbl $*.$(manext) | nroff -ms | col -bx" >$@
|
||||||
|
@NROFF_NOTE@
|
||||||
|
|
||||||
|
@MAN2HTML_NOTE@.$(manext).html :
|
||||||
|
@MAN2HTML_NOTE@ ./@MAN2HTML_TEMP@ $* $(manext) man >$@
|
||||||
|
@MAN2HTML_NOTE@
|
||||||
|
@GROFF_NOTE@.$(manext).ps :
|
||||||
|
@GROFF_NOTE@ $(SHELL) -c "tbl $*.$(manext) | groff -man" >$@
|
||||||
|
@GROFF_NOTE@
|
||||||
|
@GROFF_NOTE@.$(manext).txt :
|
||||||
|
@GROFF_NOTE@ GROFF_NO_SGR=stupid $(SHELL) -c "tbl $*.$(manext) | groff -Tascii -man | col -bx" >$@
|
||||||
|
@GROFF_NOTE@
|
||||||
|
@MAN2HTML_NOTE@.ms.html :
|
||||||
|
@MAN2HTML_NOTE@ ./@MAN2HTML_TEMP@ $* ms ms >$@
|
||||||
|
@MAN2HTML_NOTE@
|
||||||
|
@GROFF_NOTE@.ms.ps :
|
||||||
|
@GROFF_NOTE@ $(SHELL) -c "tbl $< | groff -ms" >$@
|
||||||
|
@GROFF_NOTE@
|
||||||
|
@GROFF_NOTE@.ms.txt :
|
||||||
|
@GROFF_NOTE@ GROFF_NO_SGR=stupid $(SHELL) -c "tbl $< | groff -Tascii -ms | col -bx" >$@
|
||||||
|
@GROFF_NOTE@
|
||||||
|
@GROFF_NOTE@.ps.pdf :
|
||||||
|
@GROFF_NOTE@ ps2pdf $*.ps
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
VTPARSE_H = VTparse.h VTparse.hin
|
||||||
|
TEKPARSE_H = Tekparse.h Tekparse.hin
|
||||||
|
|
||||||
|
main$o : main.h
|
||||||
|
misc$o : version.h
|
||||||
|
|
||||||
|
$(OBJS1) : xterm.h ptyx.h xtermcfg.h
|
||||||
|
main$o resize$o screen$o : xterm_io.h
|
||||||
|
|
||||||
|
xterm$x : $(OBJS1)
|
||||||
|
@ECHO_LD@$(SHELL) $(srcdir)/plink.sh $(LINK) $(LDFLAGS) -o $@ $(OBJS1) $(LIBS) $(EXTRA_LOADFLAGS)
|
||||||
|
|
||||||
|
resize$x : $(OBJS2)
|
||||||
|
@ECHO_LD@$(SHELL) $(srcdir)/plink.sh $(LINK) $(LDFLAGS) -o $@ $(OBJS2) $(LIBS)
|
||||||
|
|
||||||
|
256colres.h :
|
||||||
|
-$(RM) $@
|
||||||
|
perl $(srcdir)/256colres.pl > $@
|
||||||
|
|
||||||
|
88colres.h :
|
||||||
|
-$(RM) $@
|
||||||
|
perl $(srcdir)/88colres.pl > $@
|
||||||
|
|
||||||
|
charproc$o : $(VTPARSE_H) main.h @CHARPROC_DEPS@
|
||||||
|
graphics_regis$o : $(VTPARSE_H)
|
||||||
|
graphics_sixel$o : $(VTPARSE_H)
|
||||||
|
misc$o : $(VTPARSE_H)
|
||||||
|
VTPrsTbl$o : $(VTPARSE_H)
|
||||||
|
|
||||||
|
TekPrsTbl$o : $(TEKPARSE_H)
|
||||||
|
Tekproc$o : $(TEKPARSE_H)
|
||||||
|
|
||||||
|
misc$o : builtin_icons.h
|
||||||
|
|
||||||
|
trace$o : VTparse.cin Tekparse.cin
|
||||||
|
|
||||||
|
# do this to quiet gcc -Wcast-qual warnings
|
||||||
|
builtin_icons.h :
|
||||||
|
@echo "#if OPT_BUILTIN_XPMS" >$@
|
||||||
|
@echo "#include <icons/mini.xterm.xpms>" >>$@
|
||||||
|
@echo "#include <icons/filled-xterm.xpms>" >>$@
|
||||||
|
@echo "#include <icons/xterm.xpms>" >>$@
|
||||||
|
@echo "#include <icons/xterm-color.xpms>" >>$@
|
||||||
|
@echo "#else" >>$@
|
||||||
|
@sed -e 's/static char \* /static const char * /' $(srcdir)/icons/mini.xterm_48x48.xpm >>$@
|
||||||
|
@echo "#endif" >>$@
|
||||||
|
@echo "made $@"
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
test_charclass$x : $(srcdir)/charclass.c
|
||||||
|
@ECHO_LD@$(SHELL) $(srcdir)/plink.sh $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) -DTEST_DRIVER $(srcdir)/charclass.c $(LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
test_ptydata$x : $(srcdir)/ptydata.c
|
||||||
|
@ECHO_LD@$(SHELL) $(srcdir)/plink.sh $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) -DTEST_DRIVER $(srcdir)/ptydata.c $(LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
test_wcwidth$x : $(srcdir)/wcwidth.c
|
||||||
|
@ECHO_LD@$(SHELL) $(srcdir)/plink.sh $(CC) -o $@ $(CFLAGS) $(CPPFLAGS) -DTEST_DRIVER $(srcdir)/wcwidth.c $(LDFLAGS) $(LIBS)
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
actual_xterm = `echo xterm| sed '$(transform)'`
|
||||||
|
actual_resize = `echo resize| sed '$(transform)'`
|
||||||
|
actual_uxterm = `echo uxterm| sed '$(transform)'`
|
||||||
|
actual_k8term = `echo koi8rxterm| sed '$(transform)'`
|
||||||
|
|
||||||
|
binary_xterm = $(actual_xterm)$x
|
||||||
|
binary_resize = $(actual_resize)$x
|
||||||
|
binary_uxterm = $(actual_uxterm)
|
||||||
|
binary_k8term = $(actual_k8term)
|
||||||
|
|
||||||
|
install \
|
||||||
|
install-bin \
|
||||||
|
install-full :: xterm$x resize$x $(BINDIR)
|
||||||
|
@MAY_SETUID@ $(SHELL) $(srcdir)/sinstall.sh @SINSTALL_OPTS@ "$(INSTALL_PROGRAM)" xterm$x @XTERM_PATH@ $(BINDIR)/$(binary_xterm)
|
||||||
|
@NOT_SETUID@ $(INSTALL_PROGRAM) xterm$x $(BINDIR)/$(binary_xterm)
|
||||||
|
$(INSTALL_PROGRAM) -m 755 resize$x $(BINDIR)/$(binary_resize)
|
||||||
|
|
||||||
|
EDIT_SCRIPT = sed -e s,=xterm,=\$$name, -e s,XTerm,$(CLASS),
|
||||||
|
|
||||||
|
InstallLink = \
|
||||||
|
if test @XTERM_SYMLINK@ != NONE \
|
||||||
|
&& test \$$source != NONE \
|
||||||
|
&& test \$$source != \$$target ; then \
|
||||||
|
cd \$$TARGET && ( \
|
||||||
|
$(RM) \$$source ; \
|
||||||
|
$(LN_S) \$$target \$$source ; \
|
||||||
|
echo \"... created symbolic link:\" ; \
|
||||||
|
ls -l \$$target \$$source ) ; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
InstallBinLink = TARGET=$(BINDIR); $(InstallLink)
|
||||||
|
InstallManLink = TARGET=$(MANDIR); $(InstallLink)
|
||||||
|
|
||||||
|
InstallScript = \
|
||||||
|
echo \"... installing $(BINDIR)/\$$target\"; \
|
||||||
|
name=$(binary_xterm); \
|
||||||
|
$(EDIT_SCRIPT) $(srcdir)/\$$source >\$$source.tmp; \
|
||||||
|
$(INSTALL_SCRIPT) -m 755 \$$source.tmp $(BINDIR)/\$$target; \
|
||||||
|
$(RM) \$$source.tmp
|
||||||
|
|
||||||
|
install \
|
||||||
|
install-bin \
|
||||||
|
install-scripts \
|
||||||
|
install-full :: $(BINDIR)
|
||||||
|
@$(SHELL) -c "source=\"@XTERM_SYMLINK@\"; \
|
||||||
|
target=\"$(binary_xterm)\"; \
|
||||||
|
$(InstallBinLink)"
|
||||||
|
@$(SHELL) -c "source=\"resize\"; \
|
||||||
|
target=\"$(binary_resize)\"; \
|
||||||
|
$(InstallBinLink)"
|
||||||
|
@$(SHELL) -c "source=\"uxterm\"; \
|
||||||
|
target=\"$(binary_uxterm)\"; \
|
||||||
|
$(InstallScript); \
|
||||||
|
$(InstallBinLink)"
|
||||||
|
@$(SHELL) -c "source=\"koi8rxterm\"; \
|
||||||
|
target=\"$(binary_k8term)\"; \
|
||||||
|
$(InstallScript); \
|
||||||
|
$(InstallBinLink)"
|
||||||
|
|
||||||
|
install \
|
||||||
|
install-man \
|
||||||
|
install-full :: $(MANDIR)
|
||||||
|
@-$(SHELL) -c "for source in xterm resize uxterm koi8rxterm ; \
|
||||||
|
do \
|
||||||
|
target=\`echo \"\$$source\" | sed '@program_transform_name@'\`; \
|
||||||
|
$(SHELL) ./minstall \"$(INSTALL_DATA)\" \
|
||||||
|
$(srcdir)/\$$source.man \
|
||||||
|
$(MANDIR)/\$$target.$(manext) \
|
||||||
|
$(appsdir) \
|
||||||
|
$(CLASS) \
|
||||||
|
\$$source \
|
||||||
|
\$$target \
|
||||||
|
$(pixmapdir); \
|
||||||
|
done"
|
||||||
|
@-$(SHELL) -c "if test @XTERM_SYMLINK@ != NONE ; then \
|
||||||
|
source=$(actual_xterm).$(manext); \
|
||||||
|
target=@XTERM_SYMLINK@.$(manext); \
|
||||||
|
cd $(MANDIR) && ( \
|
||||||
|
$(RM) \$$target ; \
|
||||||
|
$(LN_S) \$$source \$$target ; \
|
||||||
|
echo '... created symbolic link:' ; \
|
||||||
|
ls -l \$$source \$$target ; \
|
||||||
|
) \
|
||||||
|
fi"
|
||||||
|
|
||||||
|
APP_NAMES = XTerm UXTerm KOI8RXTerm
|
||||||
|
|
||||||
|
@no_appsdir@install \
|
||||||
|
@no_appsdir@install-app \
|
||||||
|
@no_appsdir@install-full :: $(APPSDIR)
|
||||||
|
@no_appsdir@ @-$(SHELL) -c 'for s in $(APP_NAMES); \
|
||||||
|
@no_appsdir@ do \
|
||||||
|
@no_appsdir@ echo "** $$s"; \
|
||||||
|
@no_appsdir@ d=`echo $$s | sed -e s/XTerm/$(CLASS)/`; \
|
||||||
|
@no_appsdir@ echo installing $(APPSDIR)/$$d; \
|
||||||
|
@no_appsdir@ sed -e s/XTerm/$(CLASS)/ $(srcdir)/$$s.ad >XTerm.tmp; \
|
||||||
|
@no_appsdir@ $(INSTALL_DATA) XTerm.tmp $(APPSDIR)/$$d; \
|
||||||
|
@no_appsdir@ echo installing $(APPSDIR)/$$d-color; \
|
||||||
|
@no_appsdir@ sed -e s/XTerm/$$d/ $(srcdir)/XTerm-col.ad >XTerm.tmp; \
|
||||||
|
@no_appsdir@ $(INSTALL_DATA) XTerm.tmp $(APPSDIR)/$$d-color; \
|
||||||
|
@no_appsdir@ done'
|
||||||
|
@no_appsdir@ @$(RM) XTerm.tmp
|
||||||
|
@no_icondir@ @echo "... installed app-defaults"
|
||||||
|
|
||||||
|
@no_icondir@ICON_LIST = @ICON_LIST@
|
||||||
|
@no_icondir@ICON_THEME = @ICON_THEME@
|
||||||
|
@no_icondir@install \
|
||||||
|
@no_icondir@install-icon \
|
||||||
|
@no_icondir@install-full :: $(ICONDIR)
|
||||||
|
@no_icondir@ @ECHO_CC@ACTUAL_XTERM=$(actual_xterm) $(SHELL) -c '\
|
||||||
|
@no_icondir@ h=$(ICONDIR)/$(ICON_THEME); \
|
||||||
|
@no_icondir@ for n in $(ICON_LIST); \
|
||||||
|
@no_icondir@ do \
|
||||||
|
@no_icondir@ x=$$ACTUAL_XTERM; \
|
||||||
|
@no_icondir@ l=`echo "$$n" | cut -f1 -d:`; \
|
||||||
|
@no_icondir@ r=`echo "$$n" | cut -f2 -d: |sed -e "s,xterm,$$ACTUAL_XTERM,"`; \
|
||||||
|
@no_icondir@ test -z "$$r" && continue; \
|
||||||
|
@no_icondir@ d=$$h/`echo "$$r" | sed -e "s,/[^/]*$$,,"`; \
|
||||||
|
@no_icondir@ test -d "$$d" || mkdir -p "$$d"; \
|
||||||
|
@no_icondir@ echo "installing icon $$h/$$r"; \
|
||||||
|
@no_icondir@ $(INSTALL_DATA) $$l $$h/$$r; \
|
||||||
|
@no_icondir@ s=`echo "$$r" | sed -e '"'s,^.*\.,.,'"'`; \
|
||||||
|
@no_icondir@ t=$(ICON_SYMLINK)$$s; \
|
||||||
|
@no_icondir@ b=`basename $$n $$s | sed -e "s,_[1-9][0-9]*x.*,,"`; \
|
||||||
|
@no_icondir@ if test "$(ICON_SYMLINK)" != NONE ; then \
|
||||||
|
@no_icondir@ if test "$$r" != "$$t" ; then \
|
||||||
|
@no_icondir@ if test "x$$b" = "x$(ICON_NAME)" ; then \
|
||||||
|
@no_icondir@ echo "linking $$r -> $$t"; \
|
||||||
|
@no_icondir@ ( cd $$h; $(RM) $$t; $(LN_S) $$r $$t; ) \
|
||||||
|
@no_icondir@ fi \
|
||||||
|
@no_icondir@ fi \
|
||||||
|
@no_icondir@ fi \
|
||||||
|
@no_icondir@ done'
|
||||||
|
@no_icondir@ @echo "... installed icons"
|
||||||
|
|
||||||
|
@no_pixmapdir@install \
|
||||||
|
@no_pixmapdir@install-icon \
|
||||||
|
@no_pixmapdir@install-full :: $(PIXMAPDIR)
|
||||||
|
@no_pixmapdir@ @ECHO_CC@ACTUAL_XTERM=$(actual_xterm) $(SHELL) -c '\
|
||||||
|
@no_pixmapdir@ h=$(PIXMAPDIR); \
|
||||||
|
@no_pixmapdir@ for n in $(srcdir)/icons/*xterm*_32x32.xpm $(srcdir)/icons/*xterm*_48x48.xpm; \
|
||||||
|
@no_pixmapdir@ do \
|
||||||
|
@no_pixmapdir@ l=`basename $$n`; \
|
||||||
|
@no_pixmapdir@ r=`echo "$$l" | sed -e "s,xterm,$$ACTUAL_XTERM,"`; \
|
||||||
|
@no_pixmapdir@ echo "installing pixmap $$h/$$r"; \
|
||||||
|
@no_pixmapdir@ $(INSTALL_DATA) $(srcdir)/icons/$$l $$h/$$r; \
|
||||||
|
@no_pixmapdir@ s=`echo "$$r" | sed -e '"'s,^.*\.,.,'"'`; \
|
||||||
|
@no_pixmapdir@ t=$(ICON_SYMLINK)$$s; \
|
||||||
|
@no_pixmapdir@ b=`basename $$n $$s | sed -e "s,_[1-9][0-9]*x.*,,"`; \
|
||||||
|
@no_pixmapdir@ if test "$(ICON_SYMLINK)" != NONE ; then \
|
||||||
|
@no_pixmapdir@ if test "x$$r" != "$$t" ; then \
|
||||||
|
@no_pixmapdir@ if test "x$$b" = "x$(ICON_NAME)" ; then \
|
||||||
|
@no_pixmapdir@ echo "linking $$r -> $$t"; \
|
||||||
|
@no_pixmapdir@ ( cd $$h; $(RM) $$t; $(LN_S) $$r $$t; ) \
|
||||||
|
@no_pixmapdir@ fi \
|
||||||
|
@no_pixmapdir@ fi \
|
||||||
|
@no_pixmapdir@ fi \
|
||||||
|
@no_pixmapdir@ done'
|
||||||
|
@no_pixmapdir@ @echo "... installed icons"
|
||||||
|
|
||||||
|
install ::
|
||||||
|
@echo 'Completed installation of executables and documentation.'
|
||||||
|
@echo 'Use "make install-ti" to install terminfo description.'
|
||||||
|
|
||||||
|
TERMINFO_DIR = @TERMINFO_DIR@
|
||||||
|
SET_TERMINFO = @SET_TERMINFO@
|
||||||
|
|
||||||
|
@no_ticprog@install-full \
|
||||||
|
@no_ticprog@install-ti :: $(TERMINFO_DIR)
|
||||||
|
@no_ticprog@ @$(SHELL) -c "$(SET_TERMINFO) $(srcdir)/run-tic.sh $(srcdir)/terminfo"
|
||||||
|
@no_ticprog@ @echo 'Completed installation of terminfo description.'
|
||||||
|
|
||||||
|
install-full \
|
||||||
|
install-tc ::
|
||||||
|
@-$(SHELL) -c "if test -f /etc/termcap ; then echo 'You must install the termcap entry manually by editing /etc/termcap'; fi"
|
||||||
|
|
||||||
|
installdirs : $(INSTALL_DIRS)
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
UninstallLink = \
|
||||||
|
if test @XTERM_SYMLINK@ != NONE \
|
||||||
|
&& test \$$source != NONE \
|
||||||
|
&& test \$$source != \$$target \
|
||||||
|
&& test -h \$$TARGET/\$$source ; then \
|
||||||
|
echo \"... removing \$$TARGET/\$$source\"; \
|
||||||
|
cd \$$TARGET && \
|
||||||
|
$(RM) \$$source; \
|
||||||
|
fi
|
||||||
|
|
||||||
|
UninstallBinLink = TARGET=$(BINDIR); $(UninstallLink)
|
||||||
|
UninstallManLink = TARGET=$(MANDIR); $(UninstallLink)
|
||||||
|
|
||||||
|
UninstallBinary = \
|
||||||
|
echo \"... removing $(BINDIR)/\$$target\"; \
|
||||||
|
$(RM) $(BINDIR)/\$$target
|
||||||
|
|
||||||
|
uninstall \
|
||||||
|
uninstall-bin \
|
||||||
|
uninstall-full ::
|
||||||
|
@-$(SHELL) -c "source=\"@XTERM_SYMLINK@\"; \
|
||||||
|
target=\"$(binary_xterm)\"; \
|
||||||
|
$(UninstallBinLink); \
|
||||||
|
$(UninstallBinary)"
|
||||||
|
@-$(SHELL) -c "source=\"resize\"; \
|
||||||
|
target=\"$(binary_resize)\"; \
|
||||||
|
$(UninstallBinLink); \
|
||||||
|
$(UninstallBinary)"
|
||||||
|
|
||||||
|
uninstall \
|
||||||
|
uninstall-bin \
|
||||||
|
uninstall-scripts \
|
||||||
|
uninstall-full ::
|
||||||
|
@-$(SHELL) -c "source=\"uxterm\"; \
|
||||||
|
target=\"$(binary_uxterm)\"; \
|
||||||
|
$(UninstallBinLink); \
|
||||||
|
$(UninstallBinary)"
|
||||||
|
@-$(SHELL) -c "source=\"koi8rxterm\"; \
|
||||||
|
target=\"$(binary_k8term)\"; \
|
||||||
|
$(UninstallBinLink); \
|
||||||
|
$(UninstallBinary)"
|
||||||
|
|
||||||
|
uninstall \
|
||||||
|
uninstall-man \
|
||||||
|
uninstall-full ::
|
||||||
|
@-$(SHELL) -c "\
|
||||||
|
source=@XTERM_SYMLINK@.$(manext); \
|
||||||
|
target=$(actual_xterm).$(manext); \
|
||||||
|
$(UninstallManLink)"
|
||||||
|
@-$(SHELL) -c "for source in \
|
||||||
|
$(actual_xterm).$(manext) \
|
||||||
|
$(actual_resize).$(manext) \
|
||||||
|
$(actual_uxterm).$(manext) \
|
||||||
|
$(actual_k8term).$(manext); \
|
||||||
|
do \
|
||||||
|
echo \"... removing $(MANDIR)/\$$source\"; \
|
||||||
|
$(RM) $(MANDIR)/\$$source; \
|
||||||
|
done"
|
||||||
|
|
||||||
|
@no_appsdir@uninstall \
|
||||||
|
@no_appsdir@uninstall-app \
|
||||||
|
@no_appsdir@uninstall-full ::
|
||||||
|
@no_appsdir@ -@ECHO_CC@$(SHELL) -c 'for s in $(APP_NAMES); \
|
||||||
|
@no_appsdir@ do \
|
||||||
|
@no_appsdir@ echo "** $$s"; \
|
||||||
|
@no_appsdir@ d=`echo $$s | sed -e s/XTerm/$(CLASS)/`; \
|
||||||
|
@no_appsdir@ echo uninstalling $(APPSDIR)/$$d; \
|
||||||
|
@no_appsdir@ $(RM) $(APPSDIR)/$$d; \
|
||||||
|
@no_appsdir@ echo uninstalling $(APPSDIR)/$$d-color; \
|
||||||
|
@no_appsdir@ $(RM) $(APPSDIR)/$$d-color; \
|
||||||
|
@no_appsdir@ done'
|
||||||
|
|
||||||
|
@no_icondir@uninstall \
|
||||||
|
@no_icondir@uninstall-icon \
|
||||||
|
@no_icondir@uninstall-full ::
|
||||||
|
@no_icondir@ -@ECHO_CC@$(SHELL) -c 'ACTUAL_XTERM=$(actual_xterm) ; \
|
||||||
|
@no_icondir@ for n in $(ICON_LIST); \
|
||||||
|
@no_icondir@ do \
|
||||||
|
@no_icondir@ r=`echo "$$n" | sed -e s,\^.\*:,, -e s,xterm,$$ACTUAL_XTERM,`; \
|
||||||
|
@no_icondir@ test -z "$$r" && continue; \
|
||||||
|
@no_icondir@ h=$(ICONDIR)/$(ICON_THEME); \
|
||||||
|
@no_icondir@ test -f $$h/$$r || continue; \
|
||||||
|
@no_icondir@ echo removing $$h/$$r; \
|
||||||
|
@no_icondir@ $(RM) $$h/$$r; \
|
||||||
|
@no_icondir@ done'
|
||||||
|
@no_icondir@ @echo "... removed icons"
|
||||||
|
|
||||||
|
@no_pixmapdir@uninstall \
|
||||||
|
@no_pixmapdir@uninstall-icon \
|
||||||
|
@no_pixmapdir@uninstall-full ::
|
||||||
|
@no_pixmapdir@ -@$(SHELL) -c 'ACTUAL_XTERM=$(actual_xterm) ; \
|
||||||
|
@no_pixmapdir@ for n in $(srcdir)/icons/*xterm*_32x32.xpm $(srcdir)/icons/*xterm*_48x48.xpm; \
|
||||||
|
@no_pixmapdir@ do \
|
||||||
|
@no_pixmapdir@ l=`basename $$n`; \
|
||||||
|
@no_pixmapdir@ r=`echo "$$l" | sed -e "s,xterm,$$ACTUAL_XTERM,"`; \
|
||||||
|
@no_pixmapdir@ echo removing $(PIXMAPDIR)/$$r; \
|
||||||
|
@no_pixmapdir@ $(RM) $(PIXMAPDIR)/$$r; \
|
||||||
|
@no_pixmapdir@ done'
|
||||||
|
@no_pixmapdir@ @echo "... removed icons"
|
||||||
|
################################################################################
|
||||||
|
# Desktop-utils does not provide an uninstall, and is not uniformly available.
|
||||||
|
@desktop_utils@DESKTOP_FILES = $(srcdir)/xterm.desktop $(srcdir)/uxterm.desktop
|
||||||
|
@desktop_utils@DESKTOP_FLAGS = @DESKTOP_FLAGS@
|
||||||
|
@desktop_utils@install-desktop \
|
||||||
|
@desktop_utils@install-full ::
|
||||||
|
@desktop_utils@ ACTUAL_XTERM=$(actual_xterm) \
|
||||||
|
@desktop_utils@ $(SHELL) -c 'for n in $(DESKTOP_FILES); \
|
||||||
|
@desktop_utils@ do $(SHELL) df-install $$ACTUAL_XTERM $(ICON_NAME) DESTDIR="$(DESTDIR)" $(DESKTOP_FLAGS) $$n; \
|
||||||
|
@desktop_utils@ done'
|
||||||
|
################################################################################
|
||||||
|
check : $(TEST_PROGRAMS)
|
||||||
|
@ echo "See demos in vttests/* (use vttest for system-level testing)"
|
||||||
|
@ $(SHELL) -c 'echo "** executing test_charclass"; \
|
||||||
|
./test_charclass'
|
||||||
|
@ $(SHELL) -c 'echo "** executing test_wcwidth"; \
|
||||||
|
for range in 32-126 160-0xff00 0x10000-0x11000; \
|
||||||
|
do echo ".. range $$range"; \
|
||||||
|
./test_wcwidth -s $$range; \
|
||||||
|
./test_wcwidth -s $$range -w; \
|
||||||
|
done'
|
||||||
|
################################################################################
|
||||||
|
mostlyclean :
|
||||||
|
-$(RM) *$o *.[is] XTerm[1-9]*.* Xterm.log.* XtermLog.* .pure core *~ *.bak *.BAK *.out *.tmp
|
||||||
|
|
||||||
|
clean : mostlyclean
|
||||||
|
-$(RM) $(PROGRAMS) $(TEST_PROGRAMS) $(AUTO_SOURCE)
|
||||||
|
|
||||||
|
sources : $(AUTO_SOURCE)
|
||||||
|
|
||||||
|
distclean :: clean
|
||||||
|
-$(RM) Makefile config.status config.cache config.log xtermcfg.h
|
||||||
|
-$(RM) df-install minstall
|
||||||
|
|
||||||
|
distclean \
|
||||||
|
docs-clean ::
|
||||||
|
-$(RM) *.ps *.pdf *.png
|
||||||
|
-$(SHELL) -c 'for p in xterm resize uxterm koi8rxterm; \
|
||||||
|
do \
|
||||||
|
$(RM) $$p.html $$p.$(manext) $$p.txt; \
|
||||||
|
done'
|
||||||
|
-$(RM) ctlseqs.html ctlseqs.$(manext)
|
||||||
|
|
||||||
|
distclean ::
|
||||||
|
-$(RM) man2html.tmp
|
||||||
|
|
||||||
|
realclean : distclean
|
||||||
|
-$(RM) tags TAGS
|
||||||
|
|
||||||
|
maintainer-clean : realclean
|
||||||
|
-$(RM) 256colres.h 88colres.h
|
||||||
|
################################################################################
|
||||||
|
terminfo.out : terminfo ; tic -a -I -1 terminfo >$@
|
||||||
|
termcap.out : termcap ; tic -a -C -U termcap >$@
|
||||||
|
################################################################################
|
||||||
|
docs-ctlseqs \
|
||||||
|
docs :: $(srcdir)/ctlseqs.txt @MAN2HTML_NOTE@ ctlseqs.html @GROFF_NOTE@ ctlseqs.pdf ctlseqs.ps
|
||||||
|
|
||||||
|
ctlseqs.html : $(srcdir)/ctlseqs.ms
|
||||||
|
ctlseqs.pdf : ctlseqs.ps
|
||||||
|
ctlseqs.ps : $(srcdir)/ctlseqs.ms
|
||||||
|
ctlseqs.txt : $(srcdir)/ctlseqs.ms
|
||||||
|
################################################################################
|
||||||
|
docs-resize \
|
||||||
|
docs :: resize.txt @MAN2HTML_NOTE@ resize.html @GROFF_NOTE@ resize.pdf resize.ps
|
||||||
|
resize.html : resize.$(manext)
|
||||||
|
resize.pdf : resize.ps
|
||||||
|
resize.ps : resize.$(manext)
|
||||||
|
resize.txt : resize.$(manext)
|
||||||
|
################################################################################
|
||||||
|
docs-xterm \
|
||||||
|
docs :: xterm.txt @MAN2HTML_NOTE@ xterm.html @GROFF_NOTE@ xterm.pdf xterm.ps
|
||||||
|
xterm.html : xterm.$(manext)
|
||||||
|
xterm.pdf : xterm.ps
|
||||||
|
xterm.ps : xterm.$(manext)
|
||||||
|
xterm.txt : xterm.$(manext)
|
||||||
|
################################################################################
|
||||||
|
docs-uxterm \
|
||||||
|
docs :: uxterm.txt @MAN2HTML_NOTE@ uxterm.html @GROFF_NOTE@ uxterm.pdf uxterm.ps
|
||||||
|
uxterm.html : uxterm.$(manext)
|
||||||
|
uxterm.pdf : uxterm.ps
|
||||||
|
uxterm.ps : uxterm.$(manext)
|
||||||
|
uxterm.txt : uxterm.$(manext)
|
||||||
|
################################################################################
|
||||||
|
docs-koi8rxterm \
|
||||||
|
docs :: koi8rxterm.txt @MAN2HTML_NOTE@ koi8rxterm.html @GROFF_NOTE@ koi8rxterm.pdf koi8rxterm.ps
|
||||||
|
koi8rxterm.html : koi8rxterm.$(manext)
|
||||||
|
koi8rxterm.pdf : koi8rxterm.ps
|
||||||
|
koi8rxterm.ps : koi8rxterm.$(manext)
|
||||||
|
koi8rxterm.txt : koi8rxterm.$(manext)
|
||||||
|
################################################################################
|
||||||
|
lint :
|
||||||
|
$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(SRCS1)
|
||||||
|
$(LINT) $(LINT_OPTS) $(CPPFLAGS) $(SRCS2)
|
||||||
|
|
||||||
|
tags :
|
||||||
|
$(CTAGS) $(SRCS) $(HDRS)
|
||||||
|
|
||||||
|
TAGS :
|
||||||
|
$(ETAGS) $(SRCS) $(HDRS)
|
||||||
|
|
||||||
|
$(TERMINFO_DIR) $(INSTALL_DIRS) :
|
||||||
|
mkdir -p $@
|
||||||
|
|
||||||
|
ALWAYS :
|
||||||
|
|
||||||
|
depend : $(TABLES)
|
||||||
|
makedepend -- $(CPPFLAGS) -- $(SRCS)
|
||||||
|
|
||||||
|
# DO NOT DELETE THIS LINE -- make depend depends on it.
|
27
ports/xterm/xterm-359/NEWS
Normal file
27
ports/xterm/xterm-359/NEWS
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
The NEWS file was generated from xterm.log.html, which serves as the changelog
|
||||||
|
for xterm.
|
||||||
|
--------------------------------------------------------------------------------
|
||||||
|
Patch #359 - 2020/08/17
|
||||||
|
|
||||||
|
* add special case in WriteText to allow colors 8-15 to override
|
||||||
|
colorBDMode (patch by Ingo Brückl).
|
||||||
|
* add utf8Weblike resource, to provide an alternate scheme for
|
||||||
|
handling ill-formed UTF-8 sequences (adapted from patch by Dan
|
||||||
|
Gohman).
|
||||||
|
* improve computation for the number of lines needed to scroll-up a
|
||||||
|
SIXEL graphic (report/patch by Ben Wong).
|
||||||
|
* correct manpage description for default value of disallowWindowOps
|
||||||
|
from changes in xterm #331 (patch by Ben Wong).
|
||||||
|
* correct a loop starting-point in refresh_graphics from optimization
|
||||||
|
in patch #358 changes (report by Ben Wong).
|
||||||
|
* add a new mouse mode 1016, which uses the same format as mode 1006,
|
||||||
|
but sends the mouse's position in pixels (suggested by Igor van den
|
||||||
|
Hoven).
|
||||||
|
* fix an issue from patch #338 changes where only the first selection
|
||||||
|
buffer specified in the request would be updated using OSC 52
|
||||||
|
(patch by Michael Gulick).
|
||||||
|
* modify makefile/scripts to allow DESTDIR to prefix the target
|
||||||
|
directory for desktop-file-install (report by Fred Heitkamp).
|
||||||
|
* enable SIXEL feature by default.
|
||||||
|
* update config.guess, config.sub
|
||||||
|
|
19
ports/xterm/xterm-359/README
Normal file
19
ports/xterm/xterm-359/README
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
-- $XTermId: README,v 1.3 2007/05/24 19:49:19 tom Exp $
|
||||||
|
-- Below is the original README for xterm from 1991, for your amusement.
|
||||||
|
-- For a better overview, see http://invisible-island.net/xterm/
|
||||||
|
-------------------------------------------------------------------------------
|
||||||
|
Abandon All Hope, Ye Who Enter Here
|
||||||
|
|
||||||
|
|
||||||
|
This is undoubtedly the most ugly program in the distribution. It was one of
|
||||||
|
the first "serious" programs ported, and still has a lot of historical baggage.
|
||||||
|
Ideally, there would be a general tty widget and then vt102 and tek4014
|
||||||
|
subwidgets so that they could be used in other programs. We are trying to
|
||||||
|
clean things up as we go, but there is still a lot of work to do.
|
||||||
|
|
||||||
|
If you are porting this to a machine that has problems with overlapping
|
||||||
|
bcopy's, watch out!
|
||||||
|
|
||||||
|
There are two documents on xterm: the man page, xterm.man, which describes
|
||||||
|
how to use it, and ctlseqs.ms, which describes the control sequences it
|
||||||
|
understands.
|
199
ports/xterm/xterm-359/README.i18n
Normal file
199
ports/xterm/xterm-359/README.i18n
Normal file
@ -0,0 +1,199 @@
|
|||||||
|
-- $XFree86: xc/programs/xterm/README.i18n,v 1.1 2003/11/13 01:16:37 dickey Exp $
|
||||||
|
|
||||||
|
Using xterm in your language
|
||||||
|
============================
|
||||||
|
|
||||||
|
Since XFree86 version 4.0, the internationalization (i18n) feature of
|
||||||
|
xterm is gradually improved. Xterm is being improved even now. You
|
||||||
|
need only set the standard locale environment variables such as
|
||||||
|
LC_CTYPE, LC_ALL, LC_CTYPE, or LANG. Once the locale is set up you can
|
||||||
|
use xterm in your favorite character encoding.
|
||||||
|
|
||||||
|
This document explains how the i18n feature is realized and how to
|
||||||
|
configure xterm for your character encoding.
|
||||||
|
|
||||||
|
Refer to locale(7) for details of the locale mechanism.
|
||||||
|
|
||||||
|
|
||||||
|
Basic i18n-related settings and resources
|
||||||
|
=========================================
|
||||||
|
|
||||||
|
These settings apply to XFree86 xterm patch #181, and the program luit
|
||||||
|
which is distributed with XFree86 4.4
|
||||||
|
|
||||||
|
1. Usage of "locale mode"
|
||||||
|
|
||||||
|
On startup, xterm must be in "locale mode" to make it follow the
|
||||||
|
current locale. You can invoke xterm in locale mode in these ways:
|
||||||
|
|
||||||
|
a. Set "vt100.locale" resource "true". This resource was
|
||||||
|
introduced since XFree86 4.3. The default value of the "locale"
|
||||||
|
resource is "medium", which means xterm follows the locale only
|
||||||
|
in Chinese, Japanese, Korean, or Thai locales. For example,
|
||||||
|
|
||||||
|
XTerm*locale: true
|
||||||
|
|
||||||
|
in your ~/.Xresources file.
|
||||||
|
|
||||||
|
or
|
||||||
|
|
||||||
|
b. Invoke xterm with the "-lc" option.
|
||||||
|
|
||||||
|
2. Converter program "luit"
|
||||||
|
|
||||||
|
The "luit" must be available in the standard XFree86 binary
|
||||||
|
directory. It is usually available because it is part of the
|
||||||
|
XFree86 distribution. The standard binary directory may differ from
|
||||||
|
system to system. /usr/X11R6/bin/luit is an example.
|
||||||
|
|
||||||
|
"luit" is used to convert between Unicode and the character encoding
|
||||||
|
for your locale. When built for XFree86, xterm includes logic for
|
||||||
|
invoking luit.
|
||||||
|
|
||||||
|
3. Locale setting
|
||||||
|
|
||||||
|
Finally, you will need to configure your locale. We expect that you
|
||||||
|
have already configured your locale for other software. For example,
|
||||||
|
|
||||||
|
LANG=de_DE@euro
|
||||||
|
export LANG
|
||||||
|
|
||||||
|
in your ~/.xsession file. There are many ways to configure locale.
|
||||||
|
For example, your display manager may have a mechanism to invoke a
|
||||||
|
window manager in your favorite locale, or you may have system-wide
|
||||||
|
locale setting in /etc/environment. You may also have set the
|
||||||
|
LC_ALL variable instead of the LANG variable.
|
||||||
|
|
||||||
|
|
||||||
|
How to use xterm in different locale temporarily
|
||||||
|
================================================
|
||||||
|
|
||||||
|
You may sometimes need to invoke xterm in a different character encoding
|
||||||
|
than your current locale. For example, use xterm to login remote systems
|
||||||
|
in different locale.
|
||||||
|
|
||||||
|
Do this by invoking xterm in the target locale. For example,
|
||||||
|
|
||||||
|
$ LANG=ru_RU.KOI8-R xterm &
|
||||||
|
|
||||||
|
Previously, font setting has been used in such cases.
|
||||||
|
|
||||||
|
$ xterm -fn -misc-fixed-medium-r-normal--10-*-*-*-*-*-koi8-r &
|
||||||
|
|
||||||
|
This does not work well in conjunction with the "locale" resource,
|
||||||
|
because luit and xterm combined rely upon Unicode fonts.
|
||||||
|
|
||||||
|
|
||||||
|
How to set fonts for UTF-8/locale modes
|
||||||
|
=======================================
|
||||||
|
|
||||||
|
Since xterm patch #181, xterm can automatically use Unicode fonts in
|
||||||
|
UTF-8 mode and locale mode. Few of you will need to modify the default
|
||||||
|
setting to display your language. In particular, Unicode fonts in
|
||||||
|
combination with locale mode will satisfy the needs of not only
|
||||||
|
ISO-8859-1 users but also East Asian and other non-ISO-8859-1 users.
|
||||||
|
|
||||||
|
If you want to set your favorite Unicode font for UTF-8 and locale
|
||||||
|
modes, you should add a line such as the following in your ~/.Xresources
|
||||||
|
file:
|
||||||
|
|
||||||
|
XTerm*VT100.utf8Fonts.font: \
|
||||||
|
-misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1
|
||||||
|
|
||||||
|
The leading "XTerm*" pattern is more specific than the system's
|
||||||
|
app-defaults file, therefore it overrides the corresponding line
|
||||||
|
beginning with
|
||||||
|
|
||||||
|
*VT100.utf8Fonts.font:
|
||||||
|
|
||||||
|
Here is an additional note. If you want to display East Asian
|
||||||
|
doublewidth characters (CJK Ideogram, Hiragana, Katakana, Hangul,
|
||||||
|
and so on), we recommend using
|
||||||
|
|
||||||
|
-misc-fixed-medium-r-semicondensed--13-*-*-*-*-*-iso10646-1
|
||||||
|
|
||||||
|
or
|
||||||
|
|
||||||
|
-misc-fixed-medium-r-normal--18-*-*-*-*-*-iso10646-1
|
||||||
|
|
||||||
|
because these two fonts have corresponding doublewidth fonts. These
|
||||||
|
fonts are used as default font and default "Large" font, respectively.
|
||||||
|
|
||||||
|
|
||||||
|
The internals of xterm i18n
|
||||||
|
===========================
|
||||||
|
|
||||||
|
You do not need to read this section if you only want to configure your
|
||||||
|
xterm. Here we describe how xterm is implemented to support i18n.
|
||||||
|
|
||||||
|
The original version of xterm does not support locale or character
|
||||||
|
encoding. Its I/O stream is interpreted as a mere 8-bit index for a
|
||||||
|
font.
|
||||||
|
|
||||||
|
Beginning with XFree86 4.0, xterm supported UTF-8. It was implemented
|
||||||
|
as a separate UTF-8 mode from the conventional 8-bit mode. Character
|
||||||
|
encodings had no effect on the 8-bit mode. The UTF-8 mode has been
|
||||||
|
extended to support doublewidth characters (for East Asian characters)
|
||||||
|
and combining characters (such as accents for Latin alphabets and Thai
|
||||||
|
vowels/tone marks).
|
||||||
|
|
||||||
|
Doublewidth characters are characters that occupy two continuing
|
||||||
|
columns on the terminal. Xterm uses separate fonts for normal
|
||||||
|
(singlewidth) characters and doublewidth characters. Though xterm has
|
||||||
|
configuration items for specifying doublewidth fonts, it will
|
||||||
|
automatically search for a font with exactly twice as wide and the same
|
||||||
|
name as the specified normal font.
|
||||||
|
|
||||||
|
The default behavior of xterm was modified to use this UTF-8 mode in
|
||||||
|
UTF-8 locales. A command line option of "-u8" and a resource of "utf8"
|
||||||
|
were introduced to choose UTF-8 mode.
|
||||||
|
|
||||||
|
"luit" was introduced to XFree86 at version 4.2. It converts between
|
||||||
|
UTF-8 and other encodings. When luit is invoked in a UTF-8 terminal,
|
||||||
|
the terminal acts as if it is really running in the other encoding.
|
||||||
|
|
||||||
|
Since XFree86 version 4.3, xterm provides a new mode to invoke luit
|
||||||
|
automatically to support various encodings. The mode where xterm
|
||||||
|
invokes luit is called "locale mode". It is the third mode following
|
||||||
|
conventional 8-bit mode and UTF-8 mode. In the locale mode, xterm is
|
||||||
|
aware of the current locale and character encoding. Since locale mode
|
||||||
|
uses luit, it is based on the UTF-8 mode. That is, xterm works in UTF-8
|
||||||
|
mode and luit works as a converter between UTF-8 and the character
|
||||||
|
encoding for your locale. This is why the locale mode always needs
|
||||||
|
Unicode fonts. The default behavior of xterm is modified so that the
|
||||||
|
"locale mode" will be adopted in Chinese (Big5 and GB2312), Japanese
|
||||||
|
(EUC-JP), Korean (EUC-KR), and Thai (ISO-8859-11, as known as TIS-620)
|
||||||
|
locales. Locale mode is chosen for these character encodings because
|
||||||
|
these encodings are not supported by conventional 8-bit mode even by
|
||||||
|
changing fonts (ISO-8859-11 needs combining characters and others need
|
||||||
|
doublewidth characters).
|
||||||
|
|
||||||
|
To control the locale mode, command line options of "-lc" and "-en" and
|
||||||
|
a resource of "locale" were introduced. The command line option of
|
||||||
|
"-u8" and a resource of "utf8" were made obsolete by them, though
|
||||||
|
retained for compatibility.
|
||||||
|
|
||||||
|
Since XFree86 version 4.4, xterm can have two sets of default fonts,
|
||||||
|
one for conventional 8-bit mode and another for UTF-8 and locale modes,
|
||||||
|
by introducing the "utf8Fonts" subresource.
|
||||||
|
|
||||||
|
|
||||||
|
Future TODO Items
|
||||||
|
=================
|
||||||
|
|
||||||
|
We anticipate that xterm's locale mode will be used increasingly in the
|
||||||
|
future. Since the UTF-8 and locale modes use more resources than
|
||||||
|
conventional 8-bit mode (because it needs larger fonts and another
|
||||||
|
process "luit"), faster hardware may be needed to gain complete
|
||||||
|
acceptance by users. However, the locale mechanism allows users
|
||||||
|
to manipulate data in a standard form. Its usefulness compensates
|
||||||
|
in part for reduced performance.
|
||||||
|
|
||||||
|
Xterm supports antialiased fonts ("-fa" and "-fs" command line options).
|
||||||
|
Currently UTF-8 nor locale modes do not work with antialiased fonts.
|
||||||
|
|
||||||
|
Xterm does not support bi-directional or RTL languages such as Hebrew
|
||||||
|
and Arab. A simple standard how terminal should behave for these
|
||||||
|
languages is needed.
|
||||||
|
|
||||||
|
Xterm does not support Unicode characters above U+10000.
|
74
ports/xterm/xterm-359/README.os390
Normal file
74
ports/xterm/xterm-359/README.os390
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
-- $XFree86: xc/programs/xterm/README.os390,v 1.3 2000/09/22 10:42:05 alanh Exp $
|
||||||
|
|
||||||
|
Below are install instructions for os/390 2.5 & below and
|
||||||
|
for os/390 2.6 & above. The basic reasons for exporting
|
||||||
|
the LIBS and CFLAGS variables is to get the configure
|
||||||
|
script to run properly under os/390. configure, when
|
||||||
|
checking for X, attempts to compile a program something like
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
XtMalloc()
|
||||||
|
; return 0; }
|
||||||
|
|
||||||
|
using 'cc -o conftest conftest.c -lXt'. However this results
|
||||||
|
in a number of linkedit messages such as:
|
||||||
|
|
||||||
|
IEW2456E 9207 SYMBOL xcatd UNRESOLVED. MEMBER COULD NOT BE INCLUDED FROM THE
|
||||||
|
DESIGNATED CALL LIBRARY. NAME SPACE = 3
|
||||||
|
IEW2456E 9207 SYMBOL XrmQGetResource UNRESOLVED. MEMBER COULD NOT BE INCLUDED
|
||||||
|
FROM THE DESIGNATED CALL LIBRARY.
|
||||||
|
IEW2456E 9207 SYMBOL XrmGetDatabase UNRESOLVED. MEMBER COULD NOT BE INCLUDED
|
||||||
|
FROM THE DESIGNATED CALL LIBRARY.
|
||||||
|
|
||||||
|
The only way I can get this program to compile and link is to
|
||||||
|
use 'cc -o conftest conftest.c -lXt -lX11 -lSM -lICE'.
|
||||||
|
With os/390 2.6 and above, IBM has provided X functions in dlls;
|
||||||
|
this is the reason for the separate install steps. In fact,
|
||||||
|
trying to use the X archive files (eg -lX11) when linking xterm
|
||||||
|
results in an abend0C1 in low storage when X tries to call the
|
||||||
|
initialize function (at least on my system). This has something
|
||||||
|
to do with the calling X routine thinking it has a function pointer
|
||||||
|
descriptor (c++) when it actually has just a function pointer (c).
|
||||||
|
Unfortunately, I have been unable to recreate the problem in a
|
||||||
|
simple testcase, so I haven't reported it to IBM. Anyway, for os/390
|
||||||
|
2.6 and above, configure will build a Makefile with the following line:
|
||||||
|
|
||||||
|
LIBS = -lXaw -lXext -lXmu -lXt -lSM -lICE -lX11 /usr/lib/Xaw.x /usr/lib/SM.x /usr/lib/ICE.x /usr/lib/X11.x -lcurses
|
||||||
|
|
||||||
|
The '-lXaw -lXext -lXmu -lXt -lSM -lICE -lX11' should be manually removed;
|
||||||
|
this isn't strictly necessary, but will reduce the size of the executable
|
||||||
|
by about 4M.
|
||||||
|
|
||||||
|
The '-Wl,EDIT=NO' causes the Binder to produce a non-editable executable,
|
||||||
|
dramatically reducing the size of the executable file.
|
||||||
|
|
||||||
|
Good Luck!!
|
||||||
|
Greg Smith
|
||||||
|
rys@trex.rtpnc.epa.gov
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Install instructions for os/390 2.5 and *below*:
|
||||||
|
------------------------------------------------
|
||||||
|
gunzip xterm.tar.gz
|
||||||
|
pax -o from=ISO8859-1,to=IBM-1047 -rf xterm.tar
|
||||||
|
cd xterm
|
||||||
|
export LIBS='-lXt -lX11 -lSM -lICE'
|
||||||
|
export CFLAGS='-D_ALL_SOURCE -Wl,EDIT=NO'
|
||||||
|
./configure
|
||||||
|
make
|
||||||
|
export DISPLAY=my.xserver.name:0
|
||||||
|
./xterm
|
||||||
|
|
||||||
|
|
||||||
|
Install instructions for os/390 2.6 and *above*:
|
||||||
|
------------------------------------------------
|
||||||
|
gunzip xterm.tar.gz
|
||||||
|
pax -o from=ISO8859-1,to=IBM-1047 -rf xterm.tar
|
||||||
|
cd xterm
|
||||||
|
./configure # LIBS, CFLAGS, and CC are defined by configure for os/390 2.6.
|
||||||
|
[optional: edit the Makefile and remove '-lXaw -lXext -lXmu -lXt -lSM -lICE -lX11'
|
||||||
|
from the LIBS assignment]
|
||||||
|
make
|
||||||
|
export DISPLAY=my.xserver.name:0
|
||||||
|
./xterm
|
241
ports/xterm/xterm-359/THANKS
Normal file
241
ports/xterm/xterm-359/THANKS
Normal file
@ -0,0 +1,241 @@
|
|||||||
|
-- $XTermId: THANKS,v 1.26 2020/07/03 17:42:57 tom Exp $
|
||||||
|
-- vile:txtmode fk=utf-8
|
||||||
|
There's no AUTHORS file in this distribution; it would be redundant since
|
||||||
|
I (Thomas E. Dickey) have done more than 80% of the work on xterm since 1996.
|
||||||
|
|
||||||
|
There is no reliable history before that point.
|
||||||
|
For some insight, see
|
||||||
|
|
||||||
|
https://invisible-island.net/xterm/xterm.faq.html#who_did_it
|
||||||
|
https://invisible-island.net/personal/changelogs.html#categories
|
||||||
|
|
||||||
|
Here is a list from xterm.log.html of people who have contributed changes,
|
||||||
|
or whose suggested change could be adapted:
|
||||||
|
|
||||||
|
Adam M Costello
|
||||||
|
Adam Sulmicki
|
||||||
|
Ailin Nemui
|
||||||
|
Al Poole
|
||||||
|
Alan Coopersmith
|
||||||
|
Alex Hornung
|
||||||
|
Alexander Pohoyda
|
||||||
|
Alexander V Lukyanov
|
||||||
|
Andrea Odetti
|
||||||
|
Andreas Jaeger
|
||||||
|
Andreas Schwab
|
||||||
|
Andres Perera
|
||||||
|
Andrew Sumner
|
||||||
|
Andrew Tipton
|
||||||
|
Andrey Panov
|
||||||
|
Andries E Brouwer
|
||||||
|
Anton Kovalenko
|
||||||
|
Balazs Kezes
|
||||||
|
Ben Wiley Sittler
|
||||||
|
Ben Wong
|
||||||
|
Ben Yoshino
|
||||||
|
Bernhard R Link
|
||||||
|
Bernhard Rosenkraenzer
|
||||||
|
Bertram Felgenhauer
|
||||||
|
Bill Nottingham
|
||||||
|
Bjarni Ingi Gislason
|
||||||
|
Bob Maynard
|
||||||
|
Brad Town
|
||||||
|
Bradd W Szonye
|
||||||
|
Bram Moolenaar
|
||||||
|
Branden Robinson
|
||||||
|
Bruno Haible
|
||||||
|
Cade Foster
|
||||||
|
Caetano Jimenez Carezzato
|
||||||
|
Chris Adams
|
||||||
|
Chris Clayton
|
||||||
|
Christian Biere
|
||||||
|
Christian Weisgerber
|
||||||
|
Chuck Blake
|
||||||
|
Chuck Silvers
|
||||||
|
Colum Paget
|
||||||
|
D Roland Walker
|
||||||
|
Dan Church
|
||||||
|
Dan Gohman
|
||||||
|
Dan Thompson
|
||||||
|
Daniel Colascione
|
||||||
|
Daniel Drake
|
||||||
|
Daniel Jacobowitz
|
||||||
|
Dave Coffin
|
||||||
|
Dave Simmons
|
||||||
|
David Dawes
|
||||||
|
David Krause
|
||||||
|
David Madore
|
||||||
|
David Martínez Moreno
|
||||||
|
David Mathog
|
||||||
|
David Michael
|
||||||
|
David Wolfskill
|
||||||
|
David Wood
|
||||||
|
David Yeo
|
||||||
|
Denis Zaitsev
|
||||||
|
Dennis Preiser
|
||||||
|
Dennis Schneider
|
||||||
|
Dimitrios Christidis
|
||||||
|
Ed Schouten
|
||||||
|
Eddy De Greef
|
||||||
|
Edward S Arthur
|
||||||
|
Egbert Eich
|
||||||
|
Egmont Koblinger
|
||||||
|
Emanuele Giaquinta
|
||||||
|
Eugene Konev
|
||||||
|
Fabrice Bellard
|
||||||
|
Frank Giessler
|
||||||
|
Frank Guangxin Liu
|
||||||
|
Frank Liu
|
||||||
|
Gael Roualland
|
||||||
|
George Kouryachy
|
||||||
|
George Nachman
|
||||||
|
George Peter Staplin
|
||||||
|
Gertjan Halkes
|
||||||
|
Greg Badros
|
||||||
|
Greg Klanderman
|
||||||
|
Greg Smith
|
||||||
|
H Merijn Brand
|
||||||
|
Hasso Tepper
|
||||||
|
Holger Veit
|
||||||
|
Ilya Zakharevich
|
||||||
|
Ingo Brückl
|
||||||
|
Iwamoto Kouichi
|
||||||
|
James Armstrong
|
||||||
|
Jan Engelhardt
|
||||||
|
Jason Bacon
|
||||||
|
Jason Vas Dias
|
||||||
|
Jeff Chua
|
||||||
|
Jeff Uphoff
|
||||||
|
Jens Schweikhardt
|
||||||
|
Jeremy Buhler
|
||||||
|
Jeremy Huddleston
|
||||||
|
Jeroen Ruigrok
|
||||||
|
Jess Thrysoee
|
||||||
|
Jim Paris
|
||||||
|
Jimmy Aguilar Mena
|
||||||
|
Jochen Voss
|
||||||
|
Joe Allen
|
||||||
|
Joe Peterson
|
||||||
|
Johnny Billquist
|
||||||
|
Jonathan Irwin
|
||||||
|
Julien Cristau
|
||||||
|
Juliusz Chroboczek
|
||||||
|
Jungshik Shin
|
||||||
|
Jürgen Keil
|
||||||
|
KUGA Tsutomu
|
||||||
|
Kean Johnston
|
||||||
|
Keith Packard
|
||||||
|
Ken Martin
|
||||||
|
Kevin Buhr
|
||||||
|
Kevin Ryde
|
||||||
|
Kevin Schoedel
|
||||||
|
Kiyokazu Suto
|
||||||
|
Larry Hynes
|
||||||
|
Larry Riedel
|
||||||
|
Lauri Tirkkonen
|
||||||
|
Lee Olsen
|
||||||
|
Loïc Minier
|
||||||
|
Marc Bevand
|
||||||
|
Marc La France
|
||||||
|
Marco Peereboom
|
||||||
|
Marius Tolzmann
|
||||||
|
Mark Waggoner
|
||||||
|
Markus Kuhn
|
||||||
|
Martin Hostettler
|
||||||
|
Martin Pirker
|
||||||
|
Martin Tournoij
|
||||||
|
Matthew Green
|
||||||
|
Matthias Baake
|
||||||
|
Matthias Scheler
|
||||||
|
Matthieu Herrb
|
||||||
|
Matthieu Lagouge
|
||||||
|
Mattias Engdegård
|
||||||
|
Max Mikhanosha
|
||||||
|
Michael Riepe
|
||||||
|
Michael Rohleder
|
||||||
|
Michael Schroeder
|
||||||
|
Mike Castle
|
||||||
|
Mike Fabian
|
||||||
|
Mike Frysinger
|
||||||
|
Mike Hopkirk
|
||||||
|
Mike Thornburg
|
||||||
|
Mikulas Patocka
|
||||||
|
Milan Mehner
|
||||||
|
Min Sik Kim
|
||||||
|
Miroslav Lichvar
|
||||||
|
Nam SungHyun
|
||||||
|
Nelson Beebe
|
||||||
|
Nicholas Marriott
|
||||||
|
Nicolas George
|
||||||
|
Németh Márton
|
||||||
|
Olaf Rogalsky
|
||||||
|
Ovidiu Gheorghioiu
|
||||||
|
Paul Bolle
|
||||||
|
Paul Gilmartin
|
||||||
|
Paul Giordano
|
||||||
|
Paul Lampert
|
||||||
|
Paul Maier
|
||||||
|
Paul Szabo
|
||||||
|
Paul Vojta
|
||||||
|
Paul Williams
|
||||||
|
Pavel Roskin
|
||||||
|
Peder Stray
|
||||||
|
Per Hedeland
|
||||||
|
Peter Berg Larsen
|
||||||
|
Phil Sidler
|
||||||
|
Pierre Lombard
|
||||||
|
Pierre Pronchery
|
||||||
|
Quinn Strahl
|
||||||
|
Rajesh Mandalemula
|
||||||
|
Richard Braakman
|
||||||
|
Richard Griswold
|
||||||
|
Richard Tollerton
|
||||||
|
Rob Braun
|
||||||
|
Robert Brady
|
||||||
|
Robert Earl
|
||||||
|
Robert Ross
|
||||||
|
Robin Cutshaw
|
||||||
|
Romain Francoise
|
||||||
|
Ross Combs
|
||||||
|
Ross Paterson
|
||||||
|
Ryan Johnson
|
||||||
|
Sam Stephenson
|
||||||
|
Samuel Thibault
|
||||||
|
Scott Sewall
|
||||||
|
Semen A Ustimenko
|
||||||
|
Sergei Laskavy
|
||||||
|
Sergey Vlasov
|
||||||
|
Slava Semushin
|
||||||
|
Stefan Assmann
|
||||||
|
Stefan Dirsch
|
||||||
|
Stephen P Wall
|
||||||
|
Stuart Lissaman
|
||||||
|
Sven Joachim
|
||||||
|
Sven Verdoolaege
|
||||||
|
Taketo Kabe
|
||||||
|
Taneli Huuskonen
|
||||||
|
Ted Phelps
|
||||||
|
Thierry Reding
|
||||||
|
Thomas Wolff
|
||||||
|
Thorsten Glaser
|
||||||
|
Tim Adye
|
||||||
|
Tim Pope
|
||||||
|
Tobias Stoeckmann
|
||||||
|
Todd Eigenschink
|
||||||
|
Todd Larason
|
||||||
|
Todd Miller
|
||||||
|
Tomas Vanhala
|
||||||
|
Tomasz Cholewo
|
||||||
|
Tomohiro Kubota
|
||||||
|
Tor Lillqvist
|
||||||
|
Torrey Lyons
|
||||||
|
Victor Stinner
|
||||||
|
Victor Vaile
|
||||||
|
Vincent Lefèvre
|
||||||
|
Walter Harms
|
||||||
|
Werner Fink
|
||||||
|
Werner Lemberg
|
||||||
|
Will Day
|
||||||
|
YOKOTA Hiroshi
|
||||||
|
Zarick Lau
|
||||||
|
Zdenek Sekera
|
2648
ports/xterm/xterm-359/TekPrsTbl.c
Normal file
2648
ports/xterm/xterm-359/TekPrsTbl.c
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ports/xterm/xterm-359/TekPrsTbl.o
Normal file
BIN
ports/xterm/xterm-359/TekPrsTbl.o
Normal file
Binary file not shown.
74
ports/xterm/xterm-359/Tekparse.def
Normal file
74
ports/xterm/xterm-359/Tekparse.def
Normal file
@ -0,0 +1,74 @@
|
|||||||
|
# $XTermId: Tekparse.def,v 1.4 2006/02/12 22:43:56 tom Exp $
|
||||||
|
#
|
||||||
|
# vile:confmode rs=lf
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# this file is part of xterm
|
||||||
|
#
|
||||||
|
# Copyright 2002,2006 by Thomas E. Dickey
|
||||||
|
#
|
||||||
|
# All Rights Reserved
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
# copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
# Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
# holders shall not be used in advertising or otherwise to promote the
|
||||||
|
# sale, use or other dealings in this Software without prior written
|
||||||
|
# authorization.
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# List of symbols that need to be defined for Tekparse.h. If you need to
|
||||||
|
# change any of the CASE_ macros, make the change here and rerun the command
|
||||||
|
# shown in Tekparse.h.
|
||||||
|
#
|
||||||
|
|
||||||
|
CASE_REPORT
|
||||||
|
CASE_VT_MODE
|
||||||
|
CASE_SPT_STATE
|
||||||
|
CASE_GIN
|
||||||
|
CASE_BEL
|
||||||
|
CASE_BS
|
||||||
|
CASE_PT_STATE
|
||||||
|
CASE_PLT_STATE
|
||||||
|
CASE_TAB
|
||||||
|
CASE_IPL_STATE
|
||||||
|
CASE_ALP_STATE
|
||||||
|
CASE_UP
|
||||||
|
CASE_COPY
|
||||||
|
CASE_PAGE
|
||||||
|
CASE_BES_STATE
|
||||||
|
CASE_BYP_STATE
|
||||||
|
CASE_IGNORE
|
||||||
|
CASE_ASCII
|
||||||
|
CASE_APL
|
||||||
|
CASE_CHAR_SIZE
|
||||||
|
CASE_BEAM_VEC
|
||||||
|
CASE_CURSTATE
|
||||||
|
CASE_PENUP
|
||||||
|
CASE_PENDOWN
|
||||||
|
CASE_IPL_POINT
|
||||||
|
CASE_PLT_VEC
|
||||||
|
CASE_PT_POINT
|
||||||
|
CASE_SPT_POINT
|
||||||
|
CASE_CR
|
||||||
|
CASE_ESC_STATE
|
||||||
|
CASE_LF
|
||||||
|
CASE_SP
|
||||||
|
CASE_PRINT
|
||||||
|
CASE_OSC
|
55
ports/xterm/xterm-359/Tekparse.h
Normal file
55
ports/xterm/xterm-359/Tekparse.h
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
/* $XTermId: Tekparse.h,v 1.8 2016/10/06 00:32:30 tom Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Copyright 1998-2006,2016 by Thomas E. Dickey
|
||||||
|
*
|
||||||
|
* All Rights Reserved
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*
|
||||||
|
* Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
* holders shall not be used in advertising or otherwise to promote the
|
||||||
|
* sale, use or other dealings in this Software without prior written
|
||||||
|
* authorization.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef included_Tekparse_h
|
||||||
|
#define included_Tekparse_h 1
|
||||||
|
|
||||||
|
#ifndef Const
|
||||||
|
# if defined(__STDC__) && !defined(__cplusplus)
|
||||||
|
# define Const const
|
||||||
|
# else
|
||||||
|
# define Const /**/
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern Const int Talptable[];
|
||||||
|
extern Const int Tbestable[];
|
||||||
|
extern Const int Tbyptable[];
|
||||||
|
extern Const int Tesctable[];
|
||||||
|
extern Const int Tipltable[];
|
||||||
|
extern Const int Tplttable[];
|
||||||
|
extern Const int Tpttable[];
|
||||||
|
extern Const int Tspttable[];
|
||||||
|
|
||||||
|
#include <Tekparse.hin>
|
||||||
|
|
||||||
|
#endif /* included_Tekparse_h */
|
35
ports/xterm/xterm-359/Tekparse.hin
Normal file
35
ports/xterm/xterm-359/Tekparse.hin
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
/* vile:cmode */
|
||||||
|
#define CASE_REPORT 0
|
||||||
|
#define CASE_VT_MODE 1
|
||||||
|
#define CASE_SPT_STATE 2
|
||||||
|
#define CASE_GIN 3
|
||||||
|
#define CASE_BEL 4
|
||||||
|
#define CASE_BS 5
|
||||||
|
#define CASE_PT_STATE 6
|
||||||
|
#define CASE_PLT_STATE 7
|
||||||
|
#define CASE_TAB 8
|
||||||
|
#define CASE_IPL_STATE 9
|
||||||
|
#define CASE_ALP_STATE 10
|
||||||
|
#define CASE_UP 11
|
||||||
|
#define CASE_COPY 12
|
||||||
|
#define CASE_PAGE 13
|
||||||
|
#define CASE_BES_STATE 14
|
||||||
|
#define CASE_BYP_STATE 15
|
||||||
|
#define CASE_IGNORE 16
|
||||||
|
#define CASE_ASCII 17
|
||||||
|
#define CASE_APL 18
|
||||||
|
#define CASE_CHAR_SIZE 19
|
||||||
|
#define CASE_BEAM_VEC 20
|
||||||
|
#define CASE_CURSTATE 21
|
||||||
|
#define CASE_PENUP 22
|
||||||
|
#define CASE_PENDOWN 23
|
||||||
|
#define CASE_IPL_POINT 24
|
||||||
|
#define CASE_PLT_VEC 25
|
||||||
|
#define CASE_PT_POINT 26
|
||||||
|
#define CASE_SPT_POINT 27
|
||||||
|
#define CASE_CR 28
|
||||||
|
#define CASE_ESC_STATE 29
|
||||||
|
#define CASE_LF 30
|
||||||
|
#define CASE_SP 31
|
||||||
|
#define CASE_PRINT 32
|
||||||
|
#define CASE_OSC 33
|
2103
ports/xterm/xterm-359/Tekproc.c
Normal file
2103
ports/xterm/xterm-359/Tekproc.c
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ports/xterm/xterm-359/Tekproc.o
Normal file
BIN
ports/xterm/xterm-359/Tekproc.o
Normal file
Binary file not shown.
42
ports/xterm/xterm-359/Tests
Normal file
42
ports/xterm/xterm-359/Tests
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
Tests for xterm:
|
||||||
|
|
||||||
|
If system supports window size (i.e., some combination of SIGWINCH,
|
||||||
|
TIOCSSIZE, TIOCSWINSZ), start a full-screen program (e.g., Emacs,
|
||||||
|
Jove, vi) and resize the xterm window. The program must immediately
|
||||||
|
update its screen image for the new size.
|
||||||
|
|
||||||
|
If compiled with -DUTMP, starting a new xterm should create a new utmp
|
||||||
|
entry. ("who" will show this info.) Exiting xterm should remove the
|
||||||
|
entry. Killing the xterm window (or other unnatural exit) should also
|
||||||
|
remove the entry. When should entries be made in the wtmp file?
|
||||||
|
|
||||||
|
Process group stuff should be correct.
|
||||||
|
|
||||||
|
Should work without access to /dev/tty, say started from an xdm
|
||||||
|
started from a boot-time script.
|
||||||
|
|
||||||
|
If "xterm -help" offers the -C option, it should work.
|
||||||
|
|
||||||
|
echo "test" > /dev/tty
|
||||||
|
|
||||||
|
vi with lines that wrap.
|
||||||
|
|
||||||
|
Exec'ing things other than shells.
|
||||||
|
|
||||||
|
Another thing that has caused problems in the past is process groups,
|
||||||
|
especially w.r.t. signal propagation to the child.
|
||||||
|
|
||||||
|
Popup menu signals: running only a shell, click on "Send INT Signal."
|
||||||
|
Do you get a new prompt from the shell? (Same as typing ^C at it.)
|
||||||
|
|
||||||
|
Should scroll *fast* with jumpScroll enabled.
|
||||||
|
|
||||||
|
While a mouse button is down tracing out a selection, output to the
|
||||||
|
screen should be suspended.
|
||||||
|
|
||||||
|
Selections more than one screen long.
|
||||||
|
|
||||||
|
start xterm running only Tek widget: "xterm -t"
|
||||||
|
|
||||||
|
|
||||||
|
Please add to this list if you find xterm failing in some way.
|
76
ports/xterm/xterm-359/UXTerm.ad
Normal file
76
ports/xterm/xterm-359/UXTerm.ad
Normal file
@ -0,0 +1,76 @@
|
|||||||
|
! $XTermId: UXTerm.ad,v 1.13 2010/03/04 01:17:07 tom Exp $
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
! this file is part of xterm
|
||||||
|
!
|
||||||
|
! Copyright 2000-2006,2010 by Thomas E. Dickey
|
||||||
|
!
|
||||||
|
! All Rights Reserved
|
||||||
|
!
|
||||||
|
! Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
! copy of this software and associated documentation files (the
|
||||||
|
! "Software"), to deal in the Software without restriction, including
|
||||||
|
! without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
! distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
! permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
! the following conditions:
|
||||||
|
!
|
||||||
|
! The above copyright notice and this permission notice shall be included
|
||||||
|
! in all copies or substantial portions of the Software.
|
||||||
|
!
|
||||||
|
! THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
! OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
! MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
! IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
! CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
! TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
! SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
!
|
||||||
|
! Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
! holders shall not be used in advertising or otherwise to promote the
|
||||||
|
! sale, use or other dealings in this Software without prior written
|
||||||
|
! authorization.
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
! Use
|
||||||
|
! xterm -class UXTerm
|
||||||
|
! to set resources for UTF-8 mode with corresponding fonts.
|
||||||
|
! See the uxterm script for an example.
|
||||||
|
|
||||||
|
#include "XTerm"
|
||||||
|
|
||||||
|
*fontMenu.Label: Unicode Fonts
|
||||||
|
*VT100.utf8: 1
|
||||||
|
|
||||||
|
! This includes "XTerm-color" which includes "XTerm", which defines fonts.
|
||||||
|
! Why set them here?
|
||||||
|
!
|
||||||
|
! Here is a simple description. A technically precise one would be very long.
|
||||||
|
! When xterm starts up, it uses the
|
||||||
|
!
|
||||||
|
! *VT100.font
|
||||||
|
!
|
||||||
|
! resource, and if it is told to switch to wide-character (UTF-8) mode, it
|
||||||
|
! checks if the given font is "wide", and if not looks for the
|
||||||
|
!
|
||||||
|
! *VT100.utf8Fonts.font
|
||||||
|
!
|
||||||
|
! to obtain a wide font. A "wide" font has more than 256 glyphs. Typical
|
||||||
|
! wide fonts have 10,000 glyphs. If the original "*VT100.font" is not wide,
|
||||||
|
! and xterm can load the *VT100.utf8Fonts.font, it will use that.
|
||||||
|
!
|
||||||
|
! Making the wide fonts associated with *VT100.font in this file allows uxterm
|
||||||
|
! to skip that step. It will use the fonts that the XTerm file gives for the
|
||||||
|
! *VT100.uft8Fonts.font pattern.
|
||||||
|
*VT100.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1
|
||||||
|
*VT100.font: -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1
|
||||||
|
*VT100.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1
|
||||||
|
*VT100.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1
|
||||||
|
*VT100.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1
|
||||||
|
*VT100.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1
|
||||||
|
|
||||||
|
! Here is an alternate set of fonts with better support for bold:
|
||||||
|
!*VT100.font2: -efont-biwidth-medium-r-normal--10-100-75-75-p-50-iso10646-1
|
||||||
|
!*VT100.font: -efont-biwidth-medium-r-normal--10-100-75-75-p-50-iso10646-1
|
||||||
|
!*VT100.font3: -efont-biwidth-medium-r-normal--12-120-75-75-p-60-iso10646-1
|
||||||
|
!*VT100.font4: -efont-biwidth-medium-r-normal--14-140-75-75-p-70-iso10646-1
|
||||||
|
!*VT100.font5: -efont-biwidth-medium-r-normal--16-160-75-75-p-80-iso10646-1
|
||||||
|
!*VT100.font6: -efont-biwidth-medium-r-normal--24-240-75-75-p-120-iso10646-1
|
9507
ports/xterm/xterm-359/VTPrsTbl.c
Normal file
9507
ports/xterm/xterm-359/VTPrsTbl.c
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ports/xterm/xterm-359/VTPrsTbl.o
Normal file
BIN
ports/xterm/xterm-359/VTPrsTbl.o
Normal file
Binary file not shown.
219
ports/xterm/xterm-359/VTparse.def
Normal file
219
ports/xterm/xterm-359/VTparse.def
Normal file
@ -0,0 +1,219 @@
|
|||||||
|
# $XTermId: VTparse.def,v 1.63 2020/06/23 20:17:35 tom Exp $
|
||||||
|
#
|
||||||
|
# vile:confmode rs=lf
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
# this file is part of xterm
|
||||||
|
#
|
||||||
|
# Copyright 1996-2019,2020 by Thomas E. Dickey
|
||||||
|
#
|
||||||
|
# All Rights Reserved
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
# copy of this software and associated documentation files (the
|
||||||
|
# "Software"), to deal in the Software without restriction, including
|
||||||
|
# without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
# distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
# permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
# the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
# IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
# CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
#
|
||||||
|
# Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
# holders shall not be used in advertising or otherwise to promote the
|
||||||
|
# sale, use or other dealings in this Software without prior written
|
||||||
|
# authorization.
|
||||||
|
# -----------------------------------------------------------------------------
|
||||||
|
#
|
||||||
|
# List of symbols that need to be defined for VTparse.h. If you need to
|
||||||
|
# change any of the CASE_ macros, make the change here and rerun the command
|
||||||
|
# shown in VTparse.h.
|
||||||
|
#
|
||||||
|
|
||||||
|
CASE_GROUND_STATE
|
||||||
|
CASE_IGNORE
|
||||||
|
CASE_BELL
|
||||||
|
CASE_BS
|
||||||
|
CASE_CR
|
||||||
|
CASE_ESC
|
||||||
|
CASE_VMOT
|
||||||
|
CASE_TAB
|
||||||
|
CASE_SI
|
||||||
|
CASE_SO
|
||||||
|
CASE_SCR_STATE
|
||||||
|
CASE_SCS0_STATE
|
||||||
|
CASE_SCS1_STATE
|
||||||
|
CASE_SCS2_STATE
|
||||||
|
CASE_SCS3_STATE
|
||||||
|
CASE_ESC_IGNORE
|
||||||
|
CASE_ESC_DIGIT
|
||||||
|
CASE_ESC_SEMI
|
||||||
|
CASE_DEC_STATE
|
||||||
|
CASE_ICH
|
||||||
|
CASE_CUU
|
||||||
|
CASE_CUD
|
||||||
|
CASE_CUF
|
||||||
|
CASE_CUB
|
||||||
|
CASE_CUP
|
||||||
|
CASE_ED
|
||||||
|
CASE_EL
|
||||||
|
CASE_IL
|
||||||
|
CASE_DL
|
||||||
|
CASE_DCH
|
||||||
|
CASE_DA1
|
||||||
|
CASE_TRACK_MOUSE # XTHIMOUSE
|
||||||
|
CASE_TBC
|
||||||
|
CASE_SET
|
||||||
|
CASE_RST
|
||||||
|
CASE_SGR
|
||||||
|
CASE_CPR
|
||||||
|
CASE_DECSTBM
|
||||||
|
CASE_DECREQTPARM
|
||||||
|
CASE_DECSET
|
||||||
|
CASE_DECRST
|
||||||
|
CASE_DECALN
|
||||||
|
CASE_GSETS
|
||||||
|
CASE_DECSC
|
||||||
|
CASE_DECRC
|
||||||
|
CASE_DECKPAM
|
||||||
|
CASE_DECKPNM
|
||||||
|
CASE_IND
|
||||||
|
CASE_NEL
|
||||||
|
CASE_HTS
|
||||||
|
CASE_RI
|
||||||
|
CASE_SS2
|
||||||
|
CASE_SS3
|
||||||
|
CASE_CSI_STATE
|
||||||
|
CASE_OSC
|
||||||
|
CASE_RIS
|
||||||
|
CASE_LS2
|
||||||
|
CASE_LS3
|
||||||
|
CASE_LS3R
|
||||||
|
CASE_LS2R
|
||||||
|
CASE_LS1R
|
||||||
|
CASE_PRINT
|
||||||
|
CASE_XTERM_SAVE # XTSAVE
|
||||||
|
CASE_XTERM_RESTORE # XTRESTORE
|
||||||
|
CASE_DECID
|
||||||
|
CASE_HP_MEM_LOCK # HPMEMLOCK
|
||||||
|
CASE_HP_MEM_UNLOCK # HPMEMUNLOCK
|
||||||
|
CASE_HP_BUGGY_LL # HPBUGGYLL
|
||||||
|
CASE_HPA
|
||||||
|
CASE_VPA
|
||||||
|
CASE_XTERM_WINOPS # XTWINOPS
|
||||||
|
CASE_ECH
|
||||||
|
CASE_CHT
|
||||||
|
CASE_CPL
|
||||||
|
CASE_CNL
|
||||||
|
CASE_CBT
|
||||||
|
CASE_SU
|
||||||
|
CASE_SD
|
||||||
|
CASE_S7C1T
|
||||||
|
CASE_S8C1T
|
||||||
|
CASE_ESC_SP_STATE
|
||||||
|
CASE_ENQ
|
||||||
|
CASE_DECSCL
|
||||||
|
CASE_DECSCA
|
||||||
|
CASE_DECSED
|
||||||
|
CASE_DECSEL
|
||||||
|
CASE_DCS
|
||||||
|
CASE_PM
|
||||||
|
CASE_SOS
|
||||||
|
CASE_ST
|
||||||
|
CASE_APC
|
||||||
|
CASE_EPA
|
||||||
|
CASE_SPA
|
||||||
|
CASE_CSI_QUOTE_STATE
|
||||||
|
CASE_DSR
|
||||||
|
CASE_ANSI_LEVEL_1
|
||||||
|
CASE_ANSI_LEVEL_2
|
||||||
|
CASE_ANSI_LEVEL_3
|
||||||
|
CASE_MC
|
||||||
|
CASE_DEC2_STATE
|
||||||
|
CASE_DA2
|
||||||
|
CASE_DEC3_STATE
|
||||||
|
CASE_DECRPTUI
|
||||||
|
CASE_VT52_CUP
|
||||||
|
CASE_REP
|
||||||
|
CASE_CSI_EX_STATE
|
||||||
|
CASE_DECSTR
|
||||||
|
CASE_DECDHL
|
||||||
|
CASE_DECSWL
|
||||||
|
CASE_DECDWL
|
||||||
|
CASE_DEC_MC
|
||||||
|
CASE_ESC_PERCENT
|
||||||
|
CASE_UTF8
|
||||||
|
CASE_CSI_TICK_STATE
|
||||||
|
CASE_DECELR
|
||||||
|
CASE_DECRQLP
|
||||||
|
CASE_DECEFR
|
||||||
|
CASE_DECSLE
|
||||||
|
CASE_CSI_IGNORE
|
||||||
|
CASE_VT52_IGNORE
|
||||||
|
CASE_VT52_FINISH
|
||||||
|
CASE_CSI_DOLLAR_STATE
|
||||||
|
CASE_DECCRA
|
||||||
|
CASE_DECERA
|
||||||
|
CASE_DECFRA
|
||||||
|
CASE_DECSERA
|
||||||
|
CASE_DECSACE
|
||||||
|
CASE_DECCARA
|
||||||
|
CASE_DECRARA
|
||||||
|
CASE_CSI_STAR_STATE
|
||||||
|
CASE_SET_MOD_FKEYS # XTMODKEYS
|
||||||
|
CASE_SET_MOD_FKEYS0
|
||||||
|
CASE_HIDE_POINTER # XTSMPOINTER
|
||||||
|
CASE_SCS1A_STATE
|
||||||
|
CASE_SCS2A_STATE
|
||||||
|
CASE_SCS3A_STATE
|
||||||
|
CASE_CSI_SPACE_STATE
|
||||||
|
CASE_DECSCUSR
|
||||||
|
CASE_XTERM_SM_TITLE # XTSMTITLE
|
||||||
|
CASE_XTERM_RM_TITLE # XTRMTITLE
|
||||||
|
CASE_DECSMBV
|
||||||
|
CASE_DECSWBV
|
||||||
|
CASE_DECLL
|
||||||
|
CASE_DECRQM
|
||||||
|
CASE_RQM
|
||||||
|
CASE_CSI_DEC_DOLLAR_STATE
|
||||||
|
CASE_SL
|
||||||
|
CASE_SR
|
||||||
|
CASE_DECDC
|
||||||
|
CASE_DECIC
|
||||||
|
CASE_DECBI
|
||||||
|
CASE_DECFI
|
||||||
|
CASE_DECRQCRA
|
||||||
|
CASE_HPR
|
||||||
|
CASE_VPR
|
||||||
|
CASE_ANSI_SC
|
||||||
|
CASE_ANSI_RC
|
||||||
|
CASE_ESC_COLON
|
||||||
|
CASE_SCS_PERCENT
|
||||||
|
CASE_GSETS_PERCENT
|
||||||
|
CASE_GRAPHICS_ATTRIBUTES # XTSMGRAPHICS
|
||||||
|
CASE_DECRQPSR
|
||||||
|
CASE_DECSCPP
|
||||||
|
CASE_DECSNLS
|
||||||
|
CASE_CSI_HASH_STATE
|
||||||
|
CASE_XTERM_PUSH_SGR # XTPUSHSGR
|
||||||
|
CASE_XTERM_REPORT_SGR # XTREPORTSGR
|
||||||
|
CASE_XTERM_POP_SGR # XTPOPSGR
|
||||||
|
CASE_XTERM_CHECKSUM # XTCHECKSUM
|
||||||
|
CASE_GSETS3
|
||||||
|
CASE_GSETS5
|
||||||
|
CASE_SCS_DQUOTE
|
||||||
|
CASE_GSETS_DQUOTE
|
||||||
|
CASE_SCS_AMPRSND
|
||||||
|
CASE_GSETS_AMPRSND
|
||||||
|
CASE_REPORT_VERSION # XTVERSION
|
||||||
|
CASE_XTERM_PUSH_COLORS # XTPUSHCOLORS
|
||||||
|
CASE_XTERM_REPORT_COLORS # XTREPORTCOLORS
|
||||||
|
CASE_XTERM_POP_COLORS # XTPOPCOLORS
|
95
ports/xterm/xterm-359/VTparse.h
Normal file
95
ports/xterm/xterm-359/VTparse.h
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
/* $XTermId: VTparse.h,v 1.69 2019/02/10 23:34:21 tom Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Copyright 1996-2018,2019 by Thomas E. Dickey
|
||||||
|
*
|
||||||
|
* All Rights Reserved
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*
|
||||||
|
* Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
* holders shall not be used in advertising or otherwise to promote the
|
||||||
|
* sale, use or other dealings in this Software without prior written
|
||||||
|
* authorization.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef included_VTparse_h
|
||||||
|
#define included_VTparse_h 1
|
||||||
|
|
||||||
|
#include <xterm.h>
|
||||||
|
|
||||||
|
#ifndef Const
|
||||||
|
# if defined(__STDC__) && !defined(__cplusplus)
|
||||||
|
# define Const const
|
||||||
|
# else
|
||||||
|
# define Const /**/
|
||||||
|
# endif
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
* PARSE_T has to be large enough to handle the number of cases enumerated here.
|
||||||
|
*/
|
||||||
|
typedef unsigned char PARSE_T;
|
||||||
|
|
||||||
|
extern Const PARSE_T ansi_table[];
|
||||||
|
extern Const PARSE_T cigtable[];
|
||||||
|
extern Const PARSE_T csi2_table[];
|
||||||
|
extern Const PARSE_T csi_ex_table[];
|
||||||
|
extern Const PARSE_T csi_quo_table[];
|
||||||
|
extern Const PARSE_T csi_sp_table[];
|
||||||
|
extern Const PARSE_T csi_table[];
|
||||||
|
extern Const PARSE_T dec2_table[];
|
||||||
|
extern Const PARSE_T dec3_table[];
|
||||||
|
extern Const PARSE_T dec_table[];
|
||||||
|
extern Const PARSE_T eigtable[];
|
||||||
|
extern Const PARSE_T esc_sp_table[];
|
||||||
|
extern Const PARSE_T esc_table[];
|
||||||
|
extern Const PARSE_T scrtable[];
|
||||||
|
extern Const PARSE_T scs96table[];
|
||||||
|
extern Const PARSE_T scstable[];
|
||||||
|
extern Const PARSE_T sos_table[];
|
||||||
|
extern Const PARSE_T csi_dec_dollar_table[];
|
||||||
|
extern Const PARSE_T csi_tick_table[];
|
||||||
|
|
||||||
|
#if OPT_DEC_RECTOPS
|
||||||
|
extern Const PARSE_T csi_dollar_table[];
|
||||||
|
extern Const PARSE_T csi_star_table[];
|
||||||
|
#endif /* OPT_DEC_LOCATOR */
|
||||||
|
|
||||||
|
#if OPT_VT52_MODE
|
||||||
|
extern Const PARSE_T vt52_table[];
|
||||||
|
extern Const PARSE_T vt52_esc_table[];
|
||||||
|
extern Const PARSE_T vt52_ignore_table[];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if OPT_WIDE_CHARS
|
||||||
|
extern Const PARSE_T esc_pct_table[];
|
||||||
|
extern Const PARSE_T scs_amp_table[];
|
||||||
|
extern Const PARSE_T scs_pct_table[];
|
||||||
|
extern Const PARSE_T scs_2qt_table[];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if OPT_XTERM_SGR
|
||||||
|
extern Const PARSE_T csi_hash_table[];
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <VTparse.hin>
|
||||||
|
|
||||||
|
#endif /* included_VTparse_h */
|
180
ports/xterm/xterm-359/VTparse.hin
Normal file
180
ports/xterm/xterm-359/VTparse.hin
Normal file
@ -0,0 +1,180 @@
|
|||||||
|
/* vile:cmode */
|
||||||
|
#define CASE_GROUND_STATE 0
|
||||||
|
#define CASE_IGNORE 1
|
||||||
|
#define CASE_BELL 2
|
||||||
|
#define CASE_BS 3
|
||||||
|
#define CASE_CR 4
|
||||||
|
#define CASE_ESC 5
|
||||||
|
#define CASE_VMOT 6
|
||||||
|
#define CASE_TAB 7
|
||||||
|
#define CASE_SI 8
|
||||||
|
#define CASE_SO 9
|
||||||
|
#define CASE_SCR_STATE 10
|
||||||
|
#define CASE_SCS0_STATE 11
|
||||||
|
#define CASE_SCS1_STATE 12
|
||||||
|
#define CASE_SCS2_STATE 13
|
||||||
|
#define CASE_SCS3_STATE 14
|
||||||
|
#define CASE_ESC_IGNORE 15
|
||||||
|
#define CASE_ESC_DIGIT 16
|
||||||
|
#define CASE_ESC_SEMI 17
|
||||||
|
#define CASE_DEC_STATE 18
|
||||||
|
#define CASE_ICH 19
|
||||||
|
#define CASE_CUU 20
|
||||||
|
#define CASE_CUD 21
|
||||||
|
#define CASE_CUF 22
|
||||||
|
#define CASE_CUB 23
|
||||||
|
#define CASE_CUP 24
|
||||||
|
#define CASE_ED 25
|
||||||
|
#define CASE_EL 26
|
||||||
|
#define CASE_IL 27
|
||||||
|
#define CASE_DL 28
|
||||||
|
#define CASE_DCH 29
|
||||||
|
#define CASE_DA1 30
|
||||||
|
#define CASE_TRACK_MOUSE 31
|
||||||
|
#define CASE_TBC 32
|
||||||
|
#define CASE_SET 33
|
||||||
|
#define CASE_RST 34
|
||||||
|
#define CASE_SGR 35
|
||||||
|
#define CASE_CPR 36
|
||||||
|
#define CASE_DECSTBM 37
|
||||||
|
#define CASE_DECREQTPARM 38
|
||||||
|
#define CASE_DECSET 39
|
||||||
|
#define CASE_DECRST 40
|
||||||
|
#define CASE_DECALN 41
|
||||||
|
#define CASE_GSETS 42
|
||||||
|
#define CASE_DECSC 43
|
||||||
|
#define CASE_DECRC 44
|
||||||
|
#define CASE_DECKPAM 45
|
||||||
|
#define CASE_DECKPNM 46
|
||||||
|
#define CASE_IND 47
|
||||||
|
#define CASE_NEL 48
|
||||||
|
#define CASE_HTS 49
|
||||||
|
#define CASE_RI 50
|
||||||
|
#define CASE_SS2 51
|
||||||
|
#define CASE_SS3 52
|
||||||
|
#define CASE_CSI_STATE 53
|
||||||
|
#define CASE_OSC 54
|
||||||
|
#define CASE_RIS 55
|
||||||
|
#define CASE_LS2 56
|
||||||
|
#define CASE_LS3 57
|
||||||
|
#define CASE_LS3R 58
|
||||||
|
#define CASE_LS2R 59
|
||||||
|
#define CASE_LS1R 60
|
||||||
|
#define CASE_PRINT 61
|
||||||
|
#define CASE_XTERM_SAVE 62
|
||||||
|
#define CASE_XTERM_RESTORE 63
|
||||||
|
#define CASE_DECID 64
|
||||||
|
#define CASE_HP_MEM_LOCK 65
|
||||||
|
#define CASE_HP_MEM_UNLOCK 66
|
||||||
|
#define CASE_HP_BUGGY_LL 67
|
||||||
|
#define CASE_HPA 68
|
||||||
|
#define CASE_VPA 69
|
||||||
|
#define CASE_XTERM_WINOPS 70
|
||||||
|
#define CASE_ECH 71
|
||||||
|
#define CASE_CHT 72
|
||||||
|
#define CASE_CPL 73
|
||||||
|
#define CASE_CNL 74
|
||||||
|
#define CASE_CBT 75
|
||||||
|
#define CASE_SU 76
|
||||||
|
#define CASE_SD 77
|
||||||
|
#define CASE_S7C1T 78
|
||||||
|
#define CASE_S8C1T 79
|
||||||
|
#define CASE_ESC_SP_STATE 80
|
||||||
|
#define CASE_ENQ 81
|
||||||
|
#define CASE_DECSCL 82
|
||||||
|
#define CASE_DECSCA 83
|
||||||
|
#define CASE_DECSED 84
|
||||||
|
#define CASE_DECSEL 85
|
||||||
|
#define CASE_DCS 86
|
||||||
|
#define CASE_PM 87
|
||||||
|
#define CASE_SOS 88
|
||||||
|
#define CASE_ST 89
|
||||||
|
#define CASE_APC 90
|
||||||
|
#define CASE_EPA 91
|
||||||
|
#define CASE_SPA 92
|
||||||
|
#define CASE_CSI_QUOTE_STATE 93
|
||||||
|
#define CASE_DSR 94
|
||||||
|
#define CASE_ANSI_LEVEL_1 95
|
||||||
|
#define CASE_ANSI_LEVEL_2 96
|
||||||
|
#define CASE_ANSI_LEVEL_3 97
|
||||||
|
#define CASE_MC 98
|
||||||
|
#define CASE_DEC2_STATE 99
|
||||||
|
#define CASE_DA2 100
|
||||||
|
#define CASE_DEC3_STATE 101
|
||||||
|
#define CASE_DECRPTUI 102
|
||||||
|
#define CASE_VT52_CUP 103
|
||||||
|
#define CASE_REP 104
|
||||||
|
#define CASE_CSI_EX_STATE 105
|
||||||
|
#define CASE_DECSTR 106
|
||||||
|
#define CASE_DECDHL 107
|
||||||
|
#define CASE_DECSWL 108
|
||||||
|
#define CASE_DECDWL 109
|
||||||
|
#define CASE_DEC_MC 110
|
||||||
|
#define CASE_ESC_PERCENT 111
|
||||||
|
#define CASE_UTF8 112
|
||||||
|
#define CASE_CSI_TICK_STATE 113
|
||||||
|
#define CASE_DECELR 114
|
||||||
|
#define CASE_DECRQLP 115
|
||||||
|
#define CASE_DECEFR 116
|
||||||
|
#define CASE_DECSLE 117
|
||||||
|
#define CASE_CSI_IGNORE 118
|
||||||
|
#define CASE_VT52_IGNORE 119
|
||||||
|
#define CASE_VT52_FINISH 120
|
||||||
|
#define CASE_CSI_DOLLAR_STATE 121
|
||||||
|
#define CASE_DECCRA 122
|
||||||
|
#define CASE_DECERA 123
|
||||||
|
#define CASE_DECFRA 124
|
||||||
|
#define CASE_DECSERA 125
|
||||||
|
#define CASE_DECSACE 126
|
||||||
|
#define CASE_DECCARA 127
|
||||||
|
#define CASE_DECRARA 128
|
||||||
|
#define CASE_CSI_STAR_STATE 129
|
||||||
|
#define CASE_SET_MOD_FKEYS 130
|
||||||
|
#define CASE_SET_MOD_FKEYS0 131
|
||||||
|
#define CASE_HIDE_POINTER 132
|
||||||
|
#define CASE_SCS1A_STATE 133
|
||||||
|
#define CASE_SCS2A_STATE 134
|
||||||
|
#define CASE_SCS3A_STATE 135
|
||||||
|
#define CASE_CSI_SPACE_STATE 136
|
||||||
|
#define CASE_DECSCUSR 137
|
||||||
|
#define CASE_XTERM_SM_TITLE 138
|
||||||
|
#define CASE_XTERM_RM_TITLE 139
|
||||||
|
#define CASE_DECSMBV 140
|
||||||
|
#define CASE_DECSWBV 141
|
||||||
|
#define CASE_DECLL 142
|
||||||
|
#define CASE_DECRQM 143
|
||||||
|
#define CASE_RQM 144
|
||||||
|
#define CASE_CSI_DEC_DOLLAR_STATE 145
|
||||||
|
#define CASE_SL 146
|
||||||
|
#define CASE_SR 147
|
||||||
|
#define CASE_DECDC 148
|
||||||
|
#define CASE_DECIC 149
|
||||||
|
#define CASE_DECBI 150
|
||||||
|
#define CASE_DECFI 151
|
||||||
|
#define CASE_DECRQCRA 152
|
||||||
|
#define CASE_HPR 153
|
||||||
|
#define CASE_VPR 154
|
||||||
|
#define CASE_ANSI_SC 155
|
||||||
|
#define CASE_ANSI_RC 156
|
||||||
|
#define CASE_ESC_COLON 157
|
||||||
|
#define CASE_SCS_PERCENT 158
|
||||||
|
#define CASE_GSETS_PERCENT 159
|
||||||
|
#define CASE_GRAPHICS_ATTRIBUTES 160
|
||||||
|
#define CASE_DECRQPSR 161
|
||||||
|
#define CASE_DECSCPP 162
|
||||||
|
#define CASE_DECSNLS 163
|
||||||
|
#define CASE_CSI_HASH_STATE 164
|
||||||
|
#define CASE_XTERM_PUSH_SGR 165
|
||||||
|
#define CASE_XTERM_REPORT_SGR 166
|
||||||
|
#define CASE_XTERM_POP_SGR 167
|
||||||
|
#define CASE_XTERM_CHECKSUM 168
|
||||||
|
#define CASE_GSETS3 169
|
||||||
|
#define CASE_GSETS5 170
|
||||||
|
#define CASE_SCS_DQUOTE 171
|
||||||
|
#define CASE_GSETS_DQUOTE 172
|
||||||
|
#define CASE_SCS_AMPRSND 173
|
||||||
|
#define CASE_GSETS_AMPRSND 174
|
||||||
|
#define CASE_REPORT_VERSION 175
|
||||||
|
#define CASE_XTERM_PUSH_COLORS 176
|
||||||
|
#define CASE_XTERM_REPORT_COLORS 177
|
||||||
|
#define CASE_XTERM_POP_COLORS 178
|
163
ports/xterm/xterm-359/XTerm-col.ad
Normal file
163
ports/xterm/xterm-359/XTerm-col.ad
Normal file
@ -0,0 +1,163 @@
|
|||||||
|
! $XTermId: XTerm-col.ad,v 1.22 2009/08/15 15:56:29 tom Exp $
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
! this file is part of xterm
|
||||||
|
!
|
||||||
|
! Copyright 2002-2006,2009 by Thomas E. Dickey
|
||||||
|
!
|
||||||
|
! All Rights Reserved
|
||||||
|
!
|
||||||
|
! Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
! copy of this software and associated documentation files (the
|
||||||
|
! "Software"), to deal in the Software without restriction, including
|
||||||
|
! without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
! distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
! permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
! the following conditions:
|
||||||
|
!
|
||||||
|
! The above copyright notice and this permission notice shall be included
|
||||||
|
! in all copies or substantial portions of the Software.
|
||||||
|
!
|
||||||
|
! THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
! OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
! MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
! IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
! CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
! TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
! SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
!
|
||||||
|
! Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
! holders shall not be used in advertising or otherwise to promote the
|
||||||
|
! sale, use or other dealings in this Software without prior written
|
||||||
|
! authorization.
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#include "XTerm"
|
||||||
|
|
||||||
|
*VT100*colorMode: on
|
||||||
|
*VT100*boldColors: on
|
||||||
|
*VT100*dynamicColors: on
|
||||||
|
|
||||||
|
! Uncomment this for "white" text on a dark background.
|
||||||
|
!*VT100*foreground: gray90
|
||||||
|
!*VT100*background: black
|
||||||
|
|
||||||
|
! - OR -
|
||||||
|
! Uncomment this for black text on a "white" background.
|
||||||
|
!*VT100*foreground: black
|
||||||
|
!*VT100*background: gray90
|
||||||
|
|
||||||
|
! - OR -
|
||||||
|
! leave the foreground/background colors alone (at the mercy of your desktop
|
||||||
|
! designer).
|
||||||
|
|
||||||
|
! Color the popup/pulldown menu border to match the text widget foreground.
|
||||||
|
!*SimpleMenu*borderColor: gray15
|
||||||
|
|
||||||
|
! Uncomment this to use color for underline attribute
|
||||||
|
!*VT100*colorULMode: on
|
||||||
|
*VT100*colorUL: yellow
|
||||||
|
|
||||||
|
!*VT100*italicULMode: on
|
||||||
|
|
||||||
|
! Uncomment this to disable underlining, e.g., if colorULMode is set.
|
||||||
|
!*VT100*underLine: off
|
||||||
|
|
||||||
|
! Uncomment this to use color for the bold attribute
|
||||||
|
!*VT100*colorBDMode: on
|
||||||
|
*VT100*colorBD: white
|
||||||
|
|
||||||
|
! Uncomment this to use the bold/underline colors in preference to other colors
|
||||||
|
!*VT100*colorAttrMode: on
|
||||||
|
|
||||||
|
! These are the 8 ANSI colors and their bright equivalents. Depending on
|
||||||
|
! other resource settings, xterm may use the bright colors when displaying
|
||||||
|
! bold text (see the boldColors resource).
|
||||||
|
*VT100*color0: black
|
||||||
|
*VT100*color1: red3
|
||||||
|
*VT100*color2: green3
|
||||||
|
*VT100*color3: yellow3
|
||||||
|
*VT100*color4: blue2
|
||||||
|
*VT100*color5: magenta3
|
||||||
|
*VT100*color6: cyan3
|
||||||
|
*VT100*color7: gray90
|
||||||
|
*VT100*color8: gray50
|
||||||
|
*VT100*color9: red
|
||||||
|
*VT100*color10: green
|
||||||
|
*VT100*color11: yellow
|
||||||
|
*VT100*color12: rgb:5c/5c/ff
|
||||||
|
*VT100*color13: magenta
|
||||||
|
*VT100*color14: cyan
|
||||||
|
*VT100*color15: white
|
||||||
|
|
||||||
|
! Disclaimer: there are no standard colors used in terminal emulation.
|
||||||
|
!
|
||||||
|
! The choice for color4 and color12 is a tradeoff between contrast, depending
|
||||||
|
! on whether they are used for text or backgrounds. Note that either color4 or
|
||||||
|
! color12 would be used for text, while only color4 would be used for a
|
||||||
|
! background. These are treated specially, since the luminosity of blue is
|
||||||
|
! only about half that of red/green, and is typically not accounted for in the
|
||||||
|
! RGB scheme.
|
||||||
|
!
|
||||||
|
! Blue text on a black background should be readable.
|
||||||
|
! Blue backgrounds should not be "too" bright.
|
||||||
|
!
|
||||||
|
! Originally color4/color12 were set to the names blue3/blue
|
||||||
|
!*VT100*color4: blue3
|
||||||
|
!*VT100*color12: blue
|
||||||
|
!
|
||||||
|
! They are from rgb.txt respectively:
|
||||||
|
! 0 0 205 blue3
|
||||||
|
! 0 0 255 blue
|
||||||
|
! However, blue3 is not readable on a black background.
|
||||||
|
!
|
||||||
|
! Another choice was from the Debian settings:
|
||||||
|
!*VT100*color4: DodgerBlue1
|
||||||
|
!*VT100*color12: SteelBlue1
|
||||||
|
!
|
||||||
|
! From rgb.txt:
|
||||||
|
! 30 144 255 DodgerBlue1
|
||||||
|
! 99 184 255 SteelBlue1
|
||||||
|
!
|
||||||
|
! Some users object to this choice because the background (color4) is brighter
|
||||||
|
! than they are accustomed. Others point out that the different weights for
|
||||||
|
! the red/green components make it appear to be not really blue. Finally, it
|
||||||
|
! provides poor contrast against color13 and color14.
|
||||||
|
!
|
||||||
|
! The current choice uses equal weights for red/green (effectively adding a
|
||||||
|
! gray to the result). It is brighter than the original choice, and provides
|
||||||
|
! more contrast between color12 and color13, color14 than SteelBlue1 did.
|
||||||
|
! Contrast of color4 against black is slightly improved over the original.
|
||||||
|
!
|
||||||
|
! Some refinement is certainly possible (you are welcome to try) -TD
|
||||||
|
|
||||||
|
|
||||||
|
#if PLANES > 8
|
||||||
|
! Color the popup menus and the menubar to match:
|
||||||
|
*SimpleMenu*background: AntiqueWhite
|
||||||
|
*SimpleMenu*foreground: gray15
|
||||||
|
|
||||||
|
! Color the menubar to match:
|
||||||
|
*Form.menubar.background: AntiqueWhite
|
||||||
|
*Form.menubar*background: AntiqueWhite
|
||||||
|
*Form.menubar.foreground: gray15
|
||||||
|
*Form.menubar*foreground: gray15
|
||||||
|
*Form.background: AntiqueWhite
|
||||||
|
*form.background: AntiqueWhite
|
||||||
|
|
||||||
|
! The following two sections take advantage of new features in version 7
|
||||||
|
! of the Athena widget library. Comment them out if you have a shallow
|
||||||
|
! color depth.
|
||||||
|
!*SimpleMenu*backgroundPixmap: gradient:vertical?dimension=350&start=gray90&end=gray60
|
||||||
|
!*SimpleMenu*foreground: gray15
|
||||||
|
|
||||||
|
!*VT100.scrollbar.thumb: vlines2
|
||||||
|
!*VT100.scrollbar.width: 14
|
||||||
|
!*VT100.scrollbar.background: gray60
|
||||||
|
!*VT100.scrollbar.foreground: rgb:a/5/5
|
||||||
|
!*VT100.scrollbar.borderWidth: 0
|
||||||
|
!*VT100.scrollbar.displayList:\
|
||||||
|
!foreground gray90;\
|
||||||
|
!lines 1,-1,-1,-1,-1,1;\
|
||||||
|
!foreground gray60;\
|
||||||
|
!lines -1,0,0,0,0,-1
|
||||||
|
#endif
|
261
ports/xterm/xterm-359/XTerm.ad
Normal file
261
ports/xterm/xterm-359/XTerm.ad
Normal file
@ -0,0 +1,261 @@
|
|||||||
|
! $XTermId: XTerm.ad,v 1.102 2016/12/22 02:07:39 tom Exp $
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
! this file is part of xterm
|
||||||
|
!
|
||||||
|
! Copyright 1996-2011,2016 by Thomas E. Dickey
|
||||||
|
!
|
||||||
|
! All Rights Reserved
|
||||||
|
!
|
||||||
|
! Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
! copy of this software and associated documentation files (the
|
||||||
|
! "Software"), to deal in the Software without restriction, including
|
||||||
|
! without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
! distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
! permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
! the following conditions:
|
||||||
|
!
|
||||||
|
! The above copyright notice and this permission notice shall be included
|
||||||
|
! in all copies or substantial portions of the Software.
|
||||||
|
!
|
||||||
|
! THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
! OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
! MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
! IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
! CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
! TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
! SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
!
|
||||||
|
! Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
! holders shall not be used in advertising or otherwise to promote the
|
||||||
|
! sale, use or other dealings in this Software without prior written
|
||||||
|
! authorization.
|
||||||
|
! -----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
*saveLines: 1024
|
||||||
|
|
||||||
|
*SimpleMenu*BackingStore: NotUseful
|
||||||
|
*SimpleMenu*menuLabel.font: -adobe-helvetica-bold-r-normal--*-120-*-*-*-*-iso8859-*
|
||||||
|
*SimpleMenu*menuLabel.vertSpace: 100
|
||||||
|
*SimpleMenu*HorizontalMargins: 16
|
||||||
|
*SimpleMenu*Sme.height: 16
|
||||||
|
|
||||||
|
*SimpleMenu*Cursor: left_ptr
|
||||||
|
|
||||||
|
*mainMenu.Label: Main Options
|
||||||
|
*mainMenu*toolbar*Label: Toolbar
|
||||||
|
*mainMenu*fullscreen*Label: Full Screen
|
||||||
|
*mainMenu*securekbd*Label: Secure Keyboard
|
||||||
|
*mainMenu*allowsends*Label: Allow SendEvents
|
||||||
|
*mainMenu*redraw*Label: Redraw Window
|
||||||
|
*mainMenu*logging*Label: Log to File
|
||||||
|
*mainMenu*print-immediate*Label: Print-All Immediately
|
||||||
|
*mainMenu*print-on-error*Label: Print-All on Error
|
||||||
|
*mainMenu*print*Label: Print Window
|
||||||
|
*mainMenu*print-redir*Label: Redirect to Printer
|
||||||
|
*mainMenu*dump-html*Label: XHTML Screen Dump
|
||||||
|
*mainMenu*dump-svg*Label: SVG Screen Dump
|
||||||
|
*mainMenu*8-bit control*Label: 8-Bit Controls
|
||||||
|
*mainMenu*backarrow key*Label: Backarrow Key (BS/DEL)
|
||||||
|
*mainMenu*num-lock*Label: Alt/NumLock Modifiers
|
||||||
|
*mainMenu*alt-esc*Label: Alt Sends Escape
|
||||||
|
*mainMenu*meta-esc*Label: Meta Sends Escape
|
||||||
|
*mainMenu*delete-is-del*Label: Delete is DEL
|
||||||
|
*mainMenu*oldFunctionKeys*Label: Old Function-Keys
|
||||||
|
*mainMenu*sunFunctionKeys*Label: Sun Function-Keys
|
||||||
|
*mainMenu*sunKeyboard*Label: VT220 Keyboard
|
||||||
|
*mainMenu*hpFunctionKeys*Label: HP Function-Keys
|
||||||
|
*mainMenu*scoFunctionKeys*Label: SCO Function-Keys
|
||||||
|
*mainMenu*tcapFunctionKeys*Label: Termcap Function-Keys
|
||||||
|
*mainMenu*suspend*Label: Send STOP Signal
|
||||||
|
*mainMenu*continue*Label: Send CONT Signal
|
||||||
|
*mainMenu*interrupt*Label: Send INT Signal
|
||||||
|
*mainMenu*hangup*Label: Send HUP Signal
|
||||||
|
*mainMenu*terminate*Label: Send TERM Signal
|
||||||
|
*mainMenu*kill*Label: Send KILL Signal
|
||||||
|
*mainMenu*quit*Label: Quit
|
||||||
|
|
||||||
|
*vtMenu.Label: VT Options
|
||||||
|
*vtMenu*scrollbar*Label: Enable Scrollbar
|
||||||
|
*vtMenu*jumpscroll*Label: Enable Jump Scroll
|
||||||
|
*vtMenu*reversevideo*Label: Enable Reverse Video
|
||||||
|
*vtMenu*autowrap*Label: Enable Auto Wraparound
|
||||||
|
*vtMenu*reversewrap*Label: Enable Reverse Wraparound
|
||||||
|
*vtMenu*autolinefeed*Label: Enable Auto Linefeed
|
||||||
|
*vtMenu*appcursor*Label: Enable Application Cursor Keys
|
||||||
|
*vtMenu*appkeypad*Label: Enable Application Keypad
|
||||||
|
*vtMenu*scrollkey*Label: Scroll to Bottom on Key Press
|
||||||
|
*vtMenu*scrollttyoutput*Label: Scroll to Bottom on Tty Output
|
||||||
|
*vtMenu*allow132*Label: Allow 80/132 Column Switching
|
||||||
|
*vtMenu*keepSelection*Label: Keep Selection
|
||||||
|
*vtMenu*selectToClipboard*Label: Select to Clipboard
|
||||||
|
*vtMenu*cursesemul*Label: Enable Curses Emulation
|
||||||
|
*vtMenu*visualbell*Label: Enable Visual Bell
|
||||||
|
*vtMenu*bellIsUrgent*Label: Enable Bell Urgency
|
||||||
|
*vtMenu*poponbell*Label: Enable Pop on Bell
|
||||||
|
*vtMenu*cursorblink*Label: Enable Blinking Cursor
|
||||||
|
*vtMenu*titeInhibit*Label: Enable Alternate Screen Switching
|
||||||
|
*vtMenu*activeicon*Label: Enable Active Icon
|
||||||
|
*vtMenu*softreset*Label: Do Soft Reset
|
||||||
|
*vtMenu*hardreset*Label: Do Full Reset
|
||||||
|
*vtMenu*clearsavedlines*Label: Reset and Clear Saved Lines
|
||||||
|
*vtMenu*tekshow*Label: Show Tek Window
|
||||||
|
*vtMenu*tekmode*Label: Switch to Tek Mode
|
||||||
|
*vtMenu*vthide*Label: Hide VT Window
|
||||||
|
*vtMenu*altscreen*Label: Show Alternate Screen
|
||||||
|
*vtMenu*sixelScrolling*Label: Sixel Scrolling
|
||||||
|
*vtMenu*privateColorRegisters*Label: Private Color Registers
|
||||||
|
|
||||||
|
*fontMenu.Label: VT Fonts
|
||||||
|
*fontMenu*fontdefault*Label: Default
|
||||||
|
*fontMenu*font1*Label: Unreadable
|
||||||
|
*VT100.font1: nil2
|
||||||
|
*IconFont: nil2
|
||||||
|
*fontMenu*font2*Label: Tiny
|
||||||
|
*VT100.font2: 5x7
|
||||||
|
*fontMenu*font3*Label: Small
|
||||||
|
*VT100.font3: 6x10
|
||||||
|
*fontMenu*font4*Label: Medium
|
||||||
|
*VT100.font4: 7x13
|
||||||
|
*fontMenu*font5*Label: Large
|
||||||
|
*VT100.font5: 9x15
|
||||||
|
*fontMenu*font6*Label: Huge
|
||||||
|
*VT100.font6: 10x20
|
||||||
|
*fontMenu*fontescape*Label: Escape Sequence
|
||||||
|
*fontMenu*fontsel*Label: Selection
|
||||||
|
!fontescape and fontsel overridden by application
|
||||||
|
*fontMenu*allow-bold-fonts*Label: Bold Fonts
|
||||||
|
*fontMenu*font-linedrawing*Label: Line-Drawing Characters
|
||||||
|
*fontMenu*font-doublesize*Label: Doublesized Characters
|
||||||
|
*fontMenu*font-loadable*Label: VT220 Soft Fonts
|
||||||
|
*fontMenu*font-packed*Label: Packed Font
|
||||||
|
*fontMenu*render-font*Label: TrueType Fonts
|
||||||
|
*fontMenu*utf8-mode*Label: UTF-8 Encoding
|
||||||
|
*fontMenu*utf8-fonts*Label: UTF-8 Fonts
|
||||||
|
*fontMenu*utf8-title*Label: UTF-8 Titles
|
||||||
|
|
||||||
|
*fontMenu*allow-color-ops*Label: Allow Color Ops
|
||||||
|
*fontMenu*allow-font-ops*Label: Allow Font Ops
|
||||||
|
*fontMenu*allow-mouse-ops*Label: Allow Mouse Ops
|
||||||
|
*fontMenu*allow-tcap-ops*Label: Allow Termcap Ops
|
||||||
|
*fontMenu*allow-title-ops*Label: Allow Title Ops
|
||||||
|
*fontMenu*allow-window-ops*Label: Allow Window Ops
|
||||||
|
|
||||||
|
*VT100.utf8Fonts.font2: -misc-fixed-medium-r-normal--8-80-75-75-c-50-iso10646-1
|
||||||
|
*VT100.utf8Fonts.font: -misc-fixed-medium-r-semicondensed--13-120-75-75-c-60-iso10646-1
|
||||||
|
*VT100.utf8Fonts.font3: -misc-fixed-medium-r-normal--14-130-75-75-c-70-iso10646-1
|
||||||
|
*VT100.utf8Fonts.font4: -misc-fixed-medium-r-normal--13-120-75-75-c-80-iso10646-1
|
||||||
|
*VT100.utf8Fonts.font5: -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1
|
||||||
|
*VT100.utf8Fonts.font6: -misc-fixed-medium-r-normal--20-200-75-75-c-100-iso10646-1
|
||||||
|
|
||||||
|
*tekMenu.Label: Tek Options
|
||||||
|
*tekMenu*tektextlarge*Label: Large Characters
|
||||||
|
*tekMenu*tektext2*Label: #2 Size Characters
|
||||||
|
*tekMenu*tektext3*Label: #3 Size Characters
|
||||||
|
*tekMenu*tektextsmall*Label: Small Characters
|
||||||
|
*tekMenu*tekpage*Label: PAGE
|
||||||
|
*tekMenu*tekreset*Label: RESET
|
||||||
|
*tekMenu*tekcopy*Label: COPY
|
||||||
|
*tekMenu*vtshow*Label: Show VT Window
|
||||||
|
*tekMenu*vtmode*Label: Switch to VT Mode
|
||||||
|
*tekMenu*tekhide*Label: Hide Tek Window
|
||||||
|
|
||||||
|
*tek4014*fontLarge: 9x15
|
||||||
|
*tek4014*font2: 8x13
|
||||||
|
*tek4014*font3: 6x13
|
||||||
|
*tek4014*fontSmall: 6x10
|
||||||
|
|
||||||
|
! If xterm is built with a toolbar, the widget hierarchy looks like this,
|
||||||
|
! showing widget name / class names. The complete menu hierarchy is built
|
||||||
|
! at startup because it is needed to make the layout work for the menubar:
|
||||||
|
!
|
||||||
|
! xterm/XTerm
|
||||||
|
! form/Form
|
||||||
|
! menubar/Box
|
||||||
|
! mainMenuButton/MenuButton
|
||||||
|
! mainMenu/SimpleMenu
|
||||||
|
! menuLabel/SmeBSB
|
||||||
|
! toolbar/SmeBSB
|
||||||
|
! ...
|
||||||
|
! vtMenu/SimpleMenu
|
||||||
|
! menuLabel/SmeBSB
|
||||||
|
! scrollbar/SmeBSB
|
||||||
|
! ...
|
||||||
|
! fontMenu/SimpleMenu
|
||||||
|
! menuLabel/SmeBSB
|
||||||
|
! fontdefault/SmeBSB
|
||||||
|
! ...
|
||||||
|
! tekMenu/SimpleMenu
|
||||||
|
! menuLabel/SmeBSB
|
||||||
|
! fontdefault/SmeBSB
|
||||||
|
! ...
|
||||||
|
! vt100/VT100
|
||||||
|
! tektronix/TopLevelShell
|
||||||
|
! shellext/VendorShellExt
|
||||||
|
! tek4014/Tek4014
|
||||||
|
!
|
||||||
|
! If built without a toolbar, the widget hierarchy is simpler, because there
|
||||||
|
! is no form, and the popup menu widgets are created only when they are first
|
||||||
|
! used.
|
||||||
|
!
|
||||||
|
! xterm/XTerm
|
||||||
|
! shellext/VendorShellExt
|
||||||
|
! mainMenu/SimpleMenu
|
||||||
|
! menuLabel/SmeBSB
|
||||||
|
! ...
|
||||||
|
! ...
|
||||||
|
! vt100/VT100
|
||||||
|
! tektronix/TopLevelShell
|
||||||
|
! shellext/VendorShellExt
|
||||||
|
! tek4014/Tek4014
|
||||||
|
!
|
||||||
|
! A more complete list of the widget/class names can be obtained using editres
|
||||||
|
! to dump a file. Some widget names are not available until the corresponding
|
||||||
|
! menu has been created.
|
||||||
|
|
||||||
|
! These resources reduce space around the menubar, by eliminating padding in
|
||||||
|
! the enclosing form (Thickness) and the border of the Box which represents
|
||||||
|
! the menubar widget.
|
||||||
|
*form.Thickness: 0
|
||||||
|
*menubar.borderWidth: 0
|
||||||
|
|
||||||
|
! If we wanted to eliminate the border of the popup menus, we could do this
|
||||||
|
! instead, since they are children of the menubar:
|
||||||
|
!*menubar*borderWidth: 0
|
||||||
|
|
||||||
|
! Eliminate the border of the buttons in the menubar, so the only line around
|
||||||
|
! the text is for the highlighted button:
|
||||||
|
*MenuButton*borderWidth: 0
|
||||||
|
|
||||||
|
! Set a border for the menus to make them simpler to distinguish against the
|
||||||
|
! vt100 widget:
|
||||||
|
*SimpleMenu*borderWidth: 2
|
||||||
|
|
||||||
|
! xterm can switch at runtime between bitmap (default) and TrueType fonts.
|
||||||
|
! The "faceSize" resource controls the size of the latter. However, it was
|
||||||
|
! originally given with a size that makes the two types of fonts different
|
||||||
|
! sizes. Uncomment this line to use the same size as "fixed".
|
||||||
|
!*faceSize: 8
|
||||||
|
|
||||||
|
! Here is a pattern that is useful for double-clicking on a URL:
|
||||||
|
!*charClass: 33:48,35:48,37-38:48,43-47:48,58:48,61:48,63-64:48,95:48,126:48
|
||||||
|
!
|
||||||
|
! Alternatively,
|
||||||
|
!*on2Clicks: regex [[:alpha:]]+://([[:alnum:]!#+,./=?@_~-]|(%[[:xdigit:]][[:xdigit:]]))+
|
||||||
|
|
||||||
|
! VT100s and similar terminals recognize escape sequences and control
|
||||||
|
! characters to which they reply to the host with other escape sequences,
|
||||||
|
! to provide information. The "resize" program uses this feature.
|
||||||
|
!
|
||||||
|
! In addition, xterm recognizes several escape sequences which can be used to
|
||||||
|
! set fonts, window properties, return settings via escape sequences. Some
|
||||||
|
! find these useful; others are concerned with the possibility of unexpected
|
||||||
|
! inputs.
|
||||||
|
!
|
||||||
|
! All of these features can be enabled or disabled via menus.
|
||||||
|
!
|
||||||
|
! Depending on your environment, you may wish to disable those by default by
|
||||||
|
! uncommenting one or more of the resource settings below:
|
||||||
|
!*allowFontOps: false
|
||||||
|
!*allowTcapOps: false
|
||||||
|
!*allowTitleOps: false
|
||||||
|
!*allowWindowOps: false
|
5159
ports/xterm/xterm-359/aclocal.m4
vendored
Normal file
5159
ports/xterm/xterm-359/aclocal.m4
vendored
Normal file
File diff suppressed because it is too large
Load Diff
271
ports/xterm/xterm-359/builtin_icons.h
Normal file
271
ports/xterm/xterm-359/builtin_icons.h
Normal file
@ -0,0 +1,271 @@
|
|||||||
|
#if OPT_BUILTIN_XPMS
|
||||||
|
#include <icons/mini.xterm.xpms>
|
||||||
|
#include <icons/filled-xterm.xpms>
|
||||||
|
#include <icons/xterm.xpms>
|
||||||
|
#include <icons/xterm-color.xpms>
|
||||||
|
#else
|
||||||
|
/* XPM */
|
||||||
|
static const char * mini_xterm_48x48_xpm[] = {
|
||||||
|
"48 48 213 2",
|
||||||
|
" c None",
|
||||||
|
". c #FF0000",
|
||||||
|
"+ c #FF5300",
|
||||||
|
"@ c #FF5E00",
|
||||||
|
"# c #FF4800",
|
||||||
|
"$ c #FF4200",
|
||||||
|
"% c #FF4000",
|
||||||
|
"& c #FF4B00",
|
||||||
|
"* c #FF5200",
|
||||||
|
"= c #FF5400",
|
||||||
|
"- c #FF3500",
|
||||||
|
"; c #FF5100",
|
||||||
|
"> c #FF5C00",
|
||||||
|
", c #FF3000",
|
||||||
|
"' c #FF4500",
|
||||||
|
") c #FF2000",
|
||||||
|
"! c #FF0300",
|
||||||
|
"~ c #FF1600",
|
||||||
|
"{ c #FF5D00",
|
||||||
|
"] c #FF3800",
|
||||||
|
"^ c #FF0200",
|
||||||
|
"/ c #FF0900",
|
||||||
|
"( c #FF2B00",
|
||||||
|
"_ c #FF3300",
|
||||||
|
": c #FF1A00",
|
||||||
|
"< c #FF1300",
|
||||||
|
"[ c #FF1200",
|
||||||
|
"} c #FF5700",
|
||||||
|
"| c #4577BA",
|
||||||
|
"1 c #874E78",
|
||||||
|
"2 c #887577",
|
||||||
|
"3 c #887E77",
|
||||||
|
"4 c #887977",
|
||||||
|
"5 c #875078",
|
||||||
|
"6 c #566CA9",
|
||||||
|
"7 c #5E70A1",
|
||||||
|
"8 c #884E77",
|
||||||
|
"9 c #887677",
|
||||||
|
"0 c #7C5B83",
|
||||||
|
"a c #795686",
|
||||||
|
"b c #008DFE",
|
||||||
|
"c c #0012F3",
|
||||||
|
"d c #000BF2",
|
||||||
|
"e c #008FFE",
|
||||||
|
"f c #006CFA",
|
||||||
|
"g c #0000F1",
|
||||||
|
"h c #0001F1",
|
||||||
|
"i c #0020F4",
|
||||||
|
"j c #0040F6",
|
||||||
|
"k c #0959F0",
|
||||||
|
"l c #1158E8",
|
||||||
|
"m c #1159E8",
|
||||||
|
"n c #0058F9",
|
||||||
|
"o c #001DF4",
|
||||||
|
"p c #0023F4",
|
||||||
|
"q c #005BFA",
|
||||||
|
"r c #0060FA",
|
||||||
|
"s c #0E58EB",
|
||||||
|
"t c #0651F3",
|
||||||
|
"u c #0033F5",
|
||||||
|
"v c #000EF2",
|
||||||
|
"w c #006EFA",
|
||||||
|
"x c #0092FF",
|
||||||
|
"y c #001FF4",
|
||||||
|
"z c #000FF2",
|
||||||
|
"A c #0C51EC",
|
||||||
|
"B c #326AC9",
|
||||||
|
"C c #7A6583",
|
||||||
|
"D c #CA6234",
|
||||||
|
"E c #FC5F03",
|
||||||
|
"F c #FF5800",
|
||||||
|
"G c #FF0800",
|
||||||
|
"H c #F4060B",
|
||||||
|
"I c #007CFB",
|
||||||
|
"J c #0013F3",
|
||||||
|
"K c #007EFB",
|
||||||
|
"L c #FF1800",
|
||||||
|
"M c #F3590C",
|
||||||
|
"N c #AB6152",
|
||||||
|
"O c #4F4EAD",
|
||||||
|
"P c #175CE4",
|
||||||
|
"Q c #0036F5",
|
||||||
|
"R c #0022F4",
|
||||||
|
"S c #0095FD",
|
||||||
|
"T c #0084FD",
|
||||||
|
"U c #0004F1",
|
||||||
|
"V c #0051F8",
|
||||||
|
"W c #345AC7",
|
||||||
|
"X c #E61519",
|
||||||
|
"Y c #FF5900",
|
||||||
|
"Z c #FF4600",
|
||||||
|
"` c #FF0100",
|
||||||
|
" . c #446EB9",
|
||||||
|
".. c #0034F6",
|
||||||
|
"+. c #0032F5",
|
||||||
|
"@. c #FF2200",
|
||||||
|
"#. c #006FFA",
|
||||||
|
"$. c #002DF5",
|
||||||
|
"%. c #0086FD",
|
||||||
|
"&. c #0046F7",
|
||||||
|
"*. c #0015F3",
|
||||||
|
"=. c #0076FC",
|
||||||
|
"-. c #FF0400",
|
||||||
|
";. c #FF2300",
|
||||||
|
">. c #FF2900",
|
||||||
|
",. c #9E3E61",
|
||||||
|
"'. c #0039F6",
|
||||||
|
"). c #FF2A00",
|
||||||
|
"!. c #FF4300",
|
||||||
|
"~. c #0071FB",
|
||||||
|
"{. c #005EF9",
|
||||||
|
"]. c #004DF7",
|
||||||
|
"^. c #008CFE",
|
||||||
|
"/. c #0008F2",
|
||||||
|
"(. c #001DF3",
|
||||||
|
"_. c #007DFB",
|
||||||
|
":. c #FF4100",
|
||||||
|
"<. c #FF5B00",
|
||||||
|
"[. c #A3425C",
|
||||||
|
"}. c #994C66",
|
||||||
|
"|. c #FF1100",
|
||||||
|
"1. c #0072FB",
|
||||||
|
"2. c #000AF2",
|
||||||
|
"3. c #006EFC",
|
||||||
|
"4. c #0017F3",
|
||||||
|
"5. c #007FFB",
|
||||||
|
"6. c #FF0600",
|
||||||
|
"7. c #FF5600",
|
||||||
|
"8. c #A56A5A",
|
||||||
|
"9. c #A53B5A",
|
||||||
|
"0. c #FF4F00",
|
||||||
|
"a. c #0076FB",
|
||||||
|
"b. c #0076FA",
|
||||||
|
"c. c #0093FF",
|
||||||
|
"d. c #007DFC",
|
||||||
|
"e. c #FF1C00",
|
||||||
|
"f. c #A5765A",
|
||||||
|
"g. c #A55D5A",
|
||||||
|
"h. c #006FFB",
|
||||||
|
"i. c #002CF5",
|
||||||
|
"j. c #008AFD",
|
||||||
|
"k. c #006BF9",
|
||||||
|
"l. c #FF3A00",
|
||||||
|
"m. c #FF5000",
|
||||||
|
"n. c #007BFB",
|
||||||
|
"o. c #008BFD",
|
||||||
|
"p. c #A5755A",
|
||||||
|
"q. c #9A5565",
|
||||||
|
"r. c #A43A5B",
|
||||||
|
"s. c #FF4D00",
|
||||||
|
"t. c #80507F",
|
||||||
|
"u. c #FF0F00",
|
||||||
|
"v. c #7A5485",
|
||||||
|
"w. c #A5555A",
|
||||||
|
"x. c #FF0A00",
|
||||||
|
"y. c #A53D5A",
|
||||||
|
"z. c #A4515B",
|
||||||
|
"A. c #A5685A",
|
||||||
|
"B. c #A5735A",
|
||||||
|
"C. c #FF0700",
|
||||||
|
"D. c #FF2E00",
|
||||||
|
"E. c #FF1500",
|
||||||
|
"F. c #A3705C",
|
||||||
|
"G. c #FF0500",
|
||||||
|
"H. c #9A4965",
|
||||||
|
"I. c #FF0E00",
|
||||||
|
"J. c #FF3B00",
|
||||||
|
"K. c #FF2D00",
|
||||||
|
"L. c #A13C5E",
|
||||||
|
"M. c #FF4C00",
|
||||||
|
"N. c #62649D",
|
||||||
|
"O. c #FF0B00",
|
||||||
|
"P. c #FF4700",
|
||||||
|
"Q. c #FF1D00",
|
||||||
|
"R. c #A56D5A",
|
||||||
|
"S. c #FF2C00",
|
||||||
|
"T. c #A4465B",
|
||||||
|
"U. c #FF1400",
|
||||||
|
"V. c #A03E61",
|
||||||
|
"W. c #FF3100",
|
||||||
|
"X. c #FF1B00",
|
||||||
|
"Y. c #FF1000",
|
||||||
|
"Z. c #0029F5",
|
||||||
|
"`. c #0027F4",
|
||||||
|
" + c #4571BA",
|
||||||
|
".+ c #FF3900",
|
||||||
|
"++ c #FF3200",
|
||||||
|
"@+ c #008EFD",
|
||||||
|
"#+ c #0019F3",
|
||||||
|
"$+ c #0090FD",
|
||||||
|
"%+ c #FF0D00",
|
||||||
|
"&+ c #FF1E00",
|
||||||
|
"*+ c #FF4E00",
|
||||||
|
"=+ c #0088FC",
|
||||||
|
"-+ c #0087FC",
|
||||||
|
";+ c #FF1900",
|
||||||
|
">+ c #0036F6",
|
||||||
|
",+ c #FF2100",
|
||||||
|
"'+ c #0073FB",
|
||||||
|
")+ c #0062FA",
|
||||||
|
"!+ c #001AF3",
|
||||||
|
"~+ c #2463D8",
|
||||||
|
"{+ c #3E58BE",
|
||||||
|
"]+ c #2A7FD3",
|
||||||
|
"^+ c #807B7F",
|
||||||
|
"/+ c #008EFB",
|
||||||
|
"(+ c #006AFA",
|
||||||
|
"_+ c #004CF8",
|
||||||
|
":+ c #717B8D",
|
||||||
|
"<+ c #EE0B11",
|
||||||
|
"[+ c #F73E08",
|
||||||
|
"}+ c #FF1F00",
|
||||||
|
"|+ c #FF5500",
|
||||||
|
" ",
|
||||||
|
" ",
|
||||||
|
" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
|
||||||
|
" . + @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ . . # @ @ @ @ @ @ @ @ @ @ @ @ $ . ",
|
||||||
|
" . % & & & * @ @ @ @ @ = & & & & & . . - & & & & & ; @ > & & & & , . ",
|
||||||
|
" . . . . . . * @ @ @ @ ; . . . . . . . . . . . . . ' @ ) . . . . . . ",
|
||||||
|
" ! ~ { @ @ @ @ ] ^ / ( @ $ . ",
|
||||||
|
" ^ _ @ @ @ @ @ : ! < [ > } ^ . ",
|
||||||
|
" | 1 2 3 3 3 3 4 5 6 7 8 9 3 0 a ",
|
||||||
|
" b c d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d d c e ",
|
||||||
|
" f g g g g g g h i j k l m n o g g g g g g p q r s t u v g g g g g g g w ",
|
||||||
|
" x y g g g g z A B C D E F G H I c g g g g J K L / M N O P Q h g g g g R S ",
|
||||||
|
" T g g g U V W X Y @ @ @ @ Z ` ...g g g g +. ` ' @ @.. #.$.g g g g %. ",
|
||||||
|
" &.g g *.=. -.;.@ @ @ @ @ >.,.'.g g g g '. / ).@ !.. ~.{.U g g ]. ",
|
||||||
|
" ^./.g (._. ` :.@ @ @ @ <.[.'.g g g g '.}.|.<.} ^ . 1.2.g d e ",
|
||||||
|
" 3.g 4.5. 6.7.@ @ @ @ 8.'.g g g g '.9.0.@ [ . a./.g b. ",
|
||||||
|
" c.R /.d. -.e.@ @ @ @ f.'.g g g g '.g.@ - . h.h i. ",
|
||||||
|
" j.k.%. ^ l.@ @ @ f.'.g g g g '.f.m.` n.f o. ",
|
||||||
|
" ! * @ @ f.'.g g g g '.p.G . ",
|
||||||
|
" ! ~ { @ f.'.g g g g '.q.. ",
|
||||||
|
" ^ _ @ f.'.g g g g '.r. ",
|
||||||
|
" ^ s.f.'.g g g g '.t. ",
|
||||||
|
" ^ u.p.'.g g g g '.v. ",
|
||||||
|
" ^ w.'.g g g g '.r. ",
|
||||||
|
" x.y.'.g g g g '.z.^ ",
|
||||||
|
" ` A.'.g g g g '.B.x.. ",
|
||||||
|
" C.D.f.'.g g g g '.f.# ` ",
|
||||||
|
" < E.{ F.'.g g g g '.f.@ ( ^ ",
|
||||||
|
" : G.; @ H.'.g g g g '.f.@ <.I.^ ",
|
||||||
|
" -.J.@ K.L.'.g g g g '.f.@ @ s.` ",
|
||||||
|
" I.) @ M.. N.'.g g g g '.f.@ @ @ _ ^ ",
|
||||||
|
" L O.F <.6.. '.g g g g '.f.@ @ @ { E.! ",
|
||||||
|
" ^ P.@ Q.. '.g g g g '.R.@ @ @ @ * ! ",
|
||||||
|
" G S.@ % . '.g g g g '.T.{ @ @ @ @ l.^ ",
|
||||||
|
" < U.> 7.^ ..g g g g u V.W.@ @ @ @ @ e.! ",
|
||||||
|
" X.-.m.@ Y.. Z.g g g g `. +` M.@ @ @ @ 7.6. ",
|
||||||
|
" -..+@ ++. @+#+g g g g #+$+^ %+<.@ @ @ @ :.` ",
|
||||||
|
" I.&+@ *+. =+h g g g g h -+ ! >.@ @ @ @ @ ;.^ ",
|
||||||
|
" ;+x.} > C.. >+g g g g g g >+ ` Z @ @ @ @ Y / . ",
|
||||||
|
" ` ' @ ,+. %.1.'+)+!+g g g g g g g g #+)+~+{+]+^+@ @ @ P.` ",
|
||||||
|
" / ).@ !.. /+(+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+_+(+:+@ @ @ @ ).^ ",
|
||||||
|
" I.[ > F . . <+[+@ @ @ @ <.I.` ",
|
||||||
|
" . . . . . . 0.@ }+. . . . . . . . . . . . . |+@ @ @ @ s.. . . . . . ",
|
||||||
|
" O.@ @ @ @ @ @ @ @ @ @ @ @ @ ^ ! $ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ $ . ",
|
||||||
|
" . & & & & & & & & & & & & & . . , & & & & & & & & & & & & & & & , . ",
|
||||||
|
" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ",
|
||||||
|
" ",
|
||||||
|
" "};
|
||||||
|
#endif
|
5658
ports/xterm/xterm-359/button.c
Normal file
5658
ports/xterm/xterm-359/button.c
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ports/xterm/xterm-359/button.o
Normal file
BIN
ports/xterm/xterm-359/button.o
Normal file
Binary file not shown.
888
ports/xterm/xterm-359/cachedGCs.c
Normal file
888
ports/xterm/xterm-359/cachedGCs.c
Normal file
@ -0,0 +1,888 @@
|
|||||||
|
/* $XTermId: cachedGCs.c,v 1.79 2019/11/13 23:07:08 tom Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Copyright 2007-2018,2019 by Thomas E. Dickey
|
||||||
|
*
|
||||||
|
* All Rights Reserved
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*
|
||||||
|
* Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
* holders shall not be used in advertising or otherwise to promote the
|
||||||
|
* sale, use or other dealings in this Software without prior written
|
||||||
|
* authorization.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <data.h>
|
||||||
|
#include <xstrings.h>
|
||||||
|
#include <fontutils.h>
|
||||||
|
|
||||||
|
#include <X11/Xmu/Drawing.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* hide (or eliminate) calls to
|
||||||
|
* XCreateGC()
|
||||||
|
* XFreeGC()
|
||||||
|
* XGetGCValues()
|
||||||
|
* XSetBackground()
|
||||||
|
* XSetFont()
|
||||||
|
* XSetForeground()
|
||||||
|
* XtGetGC()
|
||||||
|
* XtReleaseGC()
|
||||||
|
* by associating an integer with each GC, maintaining a cache which
|
||||||
|
* reflects frequency of use rather than most recent usage.
|
||||||
|
*
|
||||||
|
* FIXME: XTermFonts should hold gc, font, fs.
|
||||||
|
*/
|
||||||
|
typedef struct {
|
||||||
|
GC gc;
|
||||||
|
unsigned used;
|
||||||
|
unsigned cset;
|
||||||
|
XTermFonts *font;
|
||||||
|
Pixel tile;
|
||||||
|
Pixel fg;
|
||||||
|
Pixel bg;
|
||||||
|
} CgsCacheData;
|
||||||
|
|
||||||
|
#define DEPTH 8
|
||||||
|
#define ITEM() (int) (me->data - me->list)
|
||||||
|
#define LIST(item) me->list[item]
|
||||||
|
#define LINK(item) me->data = (me->list + (item))
|
||||||
|
#define THIS(field) me->data->field
|
||||||
|
#define NEXT(field) me->next.field
|
||||||
|
|
||||||
|
#define HaveFont(font) (Boolean) ((font) != 0 && (font)->fs != 0)
|
||||||
|
|
||||||
|
#define GC_CSet GCFunction
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
CgsCacheData list[DEPTH];
|
||||||
|
CgsCacheData *data; /* points to current list[] entry */
|
||||||
|
XtGCMask mask; /* changes since the last getCgsGC() */
|
||||||
|
CgsCacheData next; /* updated values, apply in getCgsGC() */
|
||||||
|
} CgsCache;
|
||||||
|
|
||||||
|
#if OPT_TRACE
|
||||||
|
#define CASE(name) case gc##name: result = #name; break
|
||||||
|
static const char *
|
||||||
|
traceCgsEnum(CgsEnum value)
|
||||||
|
{
|
||||||
|
const char *result = "?";
|
||||||
|
switch (value) {
|
||||||
|
CASE(Norm);
|
||||||
|
CASE(Bold);
|
||||||
|
CASE(NormReverse);
|
||||||
|
CASE(BoldReverse);
|
||||||
|
CASE(Border);
|
||||||
|
CASE(Filler);
|
||||||
|
#if OPT_BOX_CHARS
|
||||||
|
CASE(Line);
|
||||||
|
CASE(Dots);
|
||||||
|
#endif
|
||||||
|
#if OPT_DEC_CHRSET
|
||||||
|
CASE(CNorm);
|
||||||
|
CASE(CBold);
|
||||||
|
#endif
|
||||||
|
#if OPT_WIDE_CHARS
|
||||||
|
CASE(Wide);
|
||||||
|
CASE(WBold);
|
||||||
|
CASE(WideReverse);
|
||||||
|
CASE(WBoldReverse);
|
||||||
|
#endif
|
||||||
|
CASE(VTcursNormal);
|
||||||
|
CASE(VTcursFilled);
|
||||||
|
CASE(VTcursReverse);
|
||||||
|
CASE(VTcursOutline);
|
||||||
|
#if OPT_TEK4014
|
||||||
|
CASE(TKcurs);
|
||||||
|
#endif
|
||||||
|
CASE(MAX);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
#undef CASE
|
||||||
|
|
||||||
|
static const char *
|
||||||
|
traceVTwin(XtermWidget xw, VTwin *value)
|
||||||
|
{
|
||||||
|
const char *result = "?";
|
||||||
|
if (value == 0)
|
||||||
|
result = "null";
|
||||||
|
else if (value == &(TScreenOf(xw)->fullVwin))
|
||||||
|
result = "fullVwin";
|
||||||
|
#ifndef NO_ACTIVE_ICON
|
||||||
|
else if (value == &(TScreenOf(xw)->iconVwin))
|
||||||
|
result = "iconVwin";
|
||||||
|
#endif
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
#if OPT_TRACE > 1
|
||||||
|
static String
|
||||||
|
traceCSet(unsigned cset)
|
||||||
|
{
|
||||||
|
static char result[80];
|
||||||
|
switch (cset) {
|
||||||
|
case CSET_SWL:
|
||||||
|
strcpy(result, "SWL");
|
||||||
|
break;
|
||||||
|
case CSET_DHL_TOP:
|
||||||
|
strcpy(result, "DHL_TOP");
|
||||||
|
break;
|
||||||
|
case CSET_DHL_BOT:
|
||||||
|
strcpy(result, "DHL_BOT");
|
||||||
|
break;
|
||||||
|
case CSET_DWL:
|
||||||
|
strcpy(result, "DWL");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
sprintf(result, "%#x", cset);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static String
|
||||||
|
traceFont(XTermFonts * font)
|
||||||
|
{
|
||||||
|
static char result[80];
|
||||||
|
|
||||||
|
if (HaveFont(font)) {
|
||||||
|
XFontStruct *fs = font->fs;
|
||||||
|
sprintf(result, "%p(%dx%d %d %#lx)",
|
||||||
|
fs,
|
||||||
|
fs->max_bounds.width,
|
||||||
|
fs->max_bounds.ascent + fs->max_bounds.descent,
|
||||||
|
fs->max_bounds.descent,
|
||||||
|
(unsigned long) (fs->fid));
|
||||||
|
} else {
|
||||||
|
strcpy(result, "null");
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static String
|
||||||
|
tracePixel(XtermWidget xw, Pixel value)
|
||||||
|
{
|
||||||
|
#define CASE(name) { name, #name }
|
||||||
|
static struct {
|
||||||
|
TermColors code;
|
||||||
|
String name;
|
||||||
|
} t_colors[] = {
|
||||||
|
CASE(TEXT_FG),
|
||||||
|
CASE(TEXT_BG),
|
||||||
|
CASE(TEXT_CURSOR),
|
||||||
|
CASE(MOUSE_FG),
|
||||||
|
CASE(MOUSE_BG),
|
||||||
|
#if OPT_TEK4014
|
||||||
|
CASE(TEK_FG),
|
||||||
|
CASE(TEK_BG),
|
||||||
|
#endif
|
||||||
|
#if OPT_HIGHLIGHT_COLOR
|
||||||
|
CASE(HIGHLIGHT_BG),
|
||||||
|
CASE(HIGHLIGHT_FG),
|
||||||
|
#endif
|
||||||
|
#if OPT_TEK4014
|
||||||
|
CASE(TEK_CURSOR),
|
||||||
|
#endif
|
||||||
|
};
|
||||||
|
TScreen *screen = TScreenOf(xw);
|
||||||
|
String result = 0;
|
||||||
|
int n;
|
||||||
|
|
||||||
|
for (n = 0; n < NCOLORS; ++n) {
|
||||||
|
if (value == T_COLOR(screen, t_colors[n].code)) {
|
||||||
|
result = t_colors[n].name;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result == 0) {
|
||||||
|
for (n = 0; n < MAXCOLORS; ++n) {
|
||||||
|
#if OPT_COLOR_RES
|
||||||
|
if (screen->Acolors[n].mode > 0
|
||||||
|
&& value == screen->Acolors[n].value) {
|
||||||
|
result = screen->Acolors[n].resource;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
if (value == screen->Acolors[n]) {
|
||||||
|
char temp[80];
|
||||||
|
sprintf(temp, "Acolors[%d]", n);
|
||||||
|
result = x_strdup(temp);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result == 0) {
|
||||||
|
char temp[80];
|
||||||
|
sprintf(temp, "%#lx", value);
|
||||||
|
result = x_strdup(temp);
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
#undef CASE
|
||||||
|
|
||||||
|
#endif /* OPT_TRACE > 1 */
|
||||||
|
#endif /* OPT_TRACE */
|
||||||
|
|
||||||
|
static CgsCache *
|
||||||
|
allocCache(void **cache_pointer)
|
||||||
|
{
|
||||||
|
if (*cache_pointer == 0) {
|
||||||
|
*cache_pointer = TypeCallocN(CgsCache, gcMAX);
|
||||||
|
TRACE(("allocCache %p\n", *cache_pointer));
|
||||||
|
}
|
||||||
|
return *((CgsCache **) cache_pointer);
|
||||||
|
}
|
||||||
|
|
||||||
|
#define ALLOC_CACHE(p) ((*(p) == 0) ? allocCache(p) : *(p))
|
||||||
|
|
||||||
|
static int
|
||||||
|
dataIndex(CgsCache * me)
|
||||||
|
{
|
||||||
|
return ITEM();
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
relinkData(CgsCache * me, int item)
|
||||||
|
{
|
||||||
|
LINK(item);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Returns the appropriate cache pointer.
|
||||||
|
*/
|
||||||
|
static CgsCache *
|
||||||
|
myCache(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId)
|
||||||
|
{
|
||||||
|
CgsCache *result = 0;
|
||||||
|
|
||||||
|
if ((int) cgsId >= 0 && cgsId < gcMAX) {
|
||||||
|
#ifdef NO_ACTIVE_ICON
|
||||||
|
(void) xw;
|
||||||
|
(void) cgsWin;
|
||||||
|
#else
|
||||||
|
if (cgsWin == &(TScreenOf(xw)->iconVwin))
|
||||||
|
result = ALLOC_CACHE(&(TScreenOf(xw)->icon_cgs_cache));
|
||||||
|
else
|
||||||
|
#endif
|
||||||
|
result = ALLOC_CACHE(&(TScreenOf(xw)->main_cgs_cache));
|
||||||
|
|
||||||
|
result += cgsId;
|
||||||
|
if (result->data == 0) {
|
||||||
|
result->data = result->list;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Display *
|
||||||
|
myDisplay(XtermWidget xw)
|
||||||
|
{
|
||||||
|
return TScreenOf(xw)->display;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Drawable
|
||||||
|
myDrawable(XtermWidget xw, VTwin *cgsWin)
|
||||||
|
{
|
||||||
|
Drawable drawable = 0;
|
||||||
|
|
||||||
|
if (cgsWin != 0 && cgsWin->window != 0)
|
||||||
|
drawable = cgsWin->window;
|
||||||
|
if (drawable == 0)
|
||||||
|
drawable = RootWindowOfScreen(XtScreen(xw));
|
||||||
|
return drawable;
|
||||||
|
}
|
||||||
|
|
||||||
|
static GC
|
||||||
|
newCache(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId, CgsCache * me)
|
||||||
|
{
|
||||||
|
XGCValues xgcv;
|
||||||
|
XtGCMask mask;
|
||||||
|
|
||||||
|
THIS(font) = NEXT(font);
|
||||||
|
THIS(cset) = NEXT(cset);
|
||||||
|
THIS(fg) = NEXT(fg);
|
||||||
|
THIS(bg) = NEXT(bg);
|
||||||
|
|
||||||
|
memset(&xgcv, 0, sizeof(xgcv));
|
||||||
|
xgcv.font = NEXT(font)->fs->fid;
|
||||||
|
mask = (GCForeground | GCBackground | GCFont);
|
||||||
|
|
||||||
|
switch (cgsId) {
|
||||||
|
case gcFiller:
|
||||||
|
case gcBorder:
|
||||||
|
mask &= (XtGCMask) ~ GCFont;
|
||||||
|
/* FALLTHRU */
|
||||||
|
case gcNorm:
|
||||||
|
case gcBold:
|
||||||
|
case gcNormReverse:
|
||||||
|
case gcBoldReverse:
|
||||||
|
#if OPT_WIDE_CHARS
|
||||||
|
case gcWide:
|
||||||
|
case gcWBold:
|
||||||
|
case gcWideReverse:
|
||||||
|
case gcWBoldReverse:
|
||||||
|
#endif
|
||||||
|
mask |= (GCGraphicsExposures | GCFunction);
|
||||||
|
xgcv.graphics_exposures = True; /* default */
|
||||||
|
xgcv.function = GXcopy;
|
||||||
|
break;
|
||||||
|
#if OPT_BOX_CHARS
|
||||||
|
case gcLine:
|
||||||
|
mask |= (GCGraphicsExposures | GCFunction);
|
||||||
|
xgcv.graphics_exposures = True; /* default */
|
||||||
|
xgcv.function = GXcopy;
|
||||||
|
break;
|
||||||
|
case gcDots:
|
||||||
|
xgcv.fill_style = FillTiled;
|
||||||
|
xgcv.tile =
|
||||||
|
XmuCreateStippledPixmap(XtScreen((Widget) xw),
|
||||||
|
THIS(fg),
|
||||||
|
THIS(bg),
|
||||||
|
xw->core.depth);
|
||||||
|
THIS(tile) = xgcv.tile;
|
||||||
|
mask = (GCForeground | GCBackground);
|
||||||
|
mask |= (GCGraphicsExposures | GCFunction | GCTile | GCFillStyle);
|
||||||
|
xgcv.graphics_exposures = True; /* default */
|
||||||
|
xgcv.function = GXcopy;
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
|
#if OPT_DEC_CHRSET
|
||||||
|
case gcCNorm:
|
||||||
|
case gcCBold:
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
|
case gcVTcursNormal: /* FALLTHRU */
|
||||||
|
case gcVTcursFilled: /* FALLTHRU */
|
||||||
|
case gcVTcursReverse: /* FALLTHRU */
|
||||||
|
case gcVTcursOutline: /* FALLTHRU */
|
||||||
|
break;
|
||||||
|
#if OPT_TEK4014
|
||||||
|
case gcTKcurs: /* FALLTHRU */
|
||||||
|
/* FIXME */
|
||||||
|
#endif
|
||||||
|
case gcMAX: /* should not happen */
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
xgcv.foreground = NEXT(fg);
|
||||||
|
xgcv.background = NEXT(bg);
|
||||||
|
|
||||||
|
THIS(gc) = XCreateGC(myDisplay(xw), myDrawable(xw, cgsWin), mask, &xgcv);
|
||||||
|
TRACE(("getCgsGC(%s) created gc %p(%d)\n",
|
||||||
|
traceCgsEnum(cgsId), (void *) THIS(gc), ITEM()));
|
||||||
|
|
||||||
|
THIS(used) = 0;
|
||||||
|
return THIS(gc);
|
||||||
|
}
|
||||||
|
|
||||||
|
#define SameFont(a, b) \
|
||||||
|
(Boolean) (HaveFont(a) \
|
||||||
|
&& HaveFont(b) \
|
||||||
|
&& (((a)->fs == (b)->fs) \
|
||||||
|
|| !memcmp((a)->fs, (b)->fs, sizeof(*((a)->fs)))))
|
||||||
|
|
||||||
|
#define SameColor(a,b) ((a) == (b))
|
||||||
|
#define SameCSet(a,b) ((a) == (b))
|
||||||
|
|
||||||
|
static GC
|
||||||
|
chgCache(XtermWidget xw, CgsEnum cgsId GCC_UNUSED, CgsCache * me, Bool both)
|
||||||
|
{
|
||||||
|
XGCValues xgcv;
|
||||||
|
XtGCMask mask = (GCForeground | GCBackground | GCFont);
|
||||||
|
|
||||||
|
memset(&xgcv, 0, sizeof(xgcv));
|
||||||
|
|
||||||
|
TRACE2(("chgCache(%s) old data fg=%s, bg=%s, font=%s cset %s\n",
|
||||||
|
traceCgsEnum(cgsId),
|
||||||
|
tracePixel(xw, THIS(fg)),
|
||||||
|
tracePixel(xw, THIS(bg)),
|
||||||
|
traceFont(THIS(font)),
|
||||||
|
traceCSet(THIS(cset))));
|
||||||
|
#if OPT_TRACE > 1
|
||||||
|
if (!SameFont(THIS(font), NEXT(font)))
|
||||||
|
TRACE2(("...chgCache new font=%s\n", traceFont(NEXT(font))));
|
||||||
|
if (!SameCSet(THIS(cset), NEXT(cset)))
|
||||||
|
TRACE2(("...chgCache new cset=%s\n", traceCSet(NEXT(cset))));
|
||||||
|
if (!SameColor(THIS(fg), NEXT(fg)))
|
||||||
|
TRACE2(("...chgCache new fg=%s\n", tracePixel(xw, NEXT(fg))));
|
||||||
|
if (!SameColor(THIS(bg), NEXT(bg)))
|
||||||
|
TRACE2(("...chgCache new bg=%s\n", tracePixel(xw, NEXT(bg))));
|
||||||
|
#endif
|
||||||
|
|
||||||
|
if (both) {
|
||||||
|
THIS(font) = NEXT(font);
|
||||||
|
THIS(cset) = NEXT(cset);
|
||||||
|
}
|
||||||
|
THIS(fg) = NEXT(fg);
|
||||||
|
THIS(bg) = NEXT(bg);
|
||||||
|
|
||||||
|
xgcv.font = THIS(font)->fs->fid;
|
||||||
|
xgcv.foreground = THIS(fg);
|
||||||
|
xgcv.background = THIS(bg);
|
||||||
|
|
||||||
|
XChangeGC(myDisplay(xw), THIS(gc), mask, &xgcv);
|
||||||
|
TRACE2(("...chgCache(%s) updated gc %p(%d)\n",
|
||||||
|
traceCgsEnum(cgsId), THIS(gc), ITEM()));
|
||||||
|
|
||||||
|
THIS(used) = 0;
|
||||||
|
return THIS(gc);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Use the "setCgsXXXX()" calls to initialize parameters for a new GC.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
setCgsFore(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId, Pixel fg)
|
||||||
|
{
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, cgsId)) != 0) {
|
||||||
|
NEXT(fg) = fg;
|
||||||
|
me->mask |= GCForeground;
|
||||||
|
TRACE2(("setCgsFore(%s) %s\n",
|
||||||
|
traceCgsEnum(cgsId),
|
||||||
|
tracePixel(xw, NEXT(fg))));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
setCgsBack(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId, Pixel bg)
|
||||||
|
{
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, cgsId)) != 0) {
|
||||||
|
NEXT(bg) = bg;
|
||||||
|
me->mask |= GCBackground;
|
||||||
|
TRACE2(("setCgsBack(%s) %s\n",
|
||||||
|
traceCgsEnum(cgsId),
|
||||||
|
tracePixel(xw, NEXT(bg))));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#if OPT_DEC_CHRSET
|
||||||
|
void
|
||||||
|
setCgsCSet(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId, unsigned cset)
|
||||||
|
{
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, cgsId)) != 0) {
|
||||||
|
NEXT(cset) = cset;
|
||||||
|
me->mask |= GC_CSet;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
#define setCgsCSet(xw, cgsWin, dstCgsId, cset) /* nothing */
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void
|
||||||
|
setCgsFont2(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId, XTermFonts * font, unsigned which)
|
||||||
|
{
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, cgsId)) != 0) {
|
||||||
|
TScreen *screen = TScreenOf(xw);
|
||||||
|
if (!HaveFont(font)) {
|
||||||
|
if (cgsId != gcNorm)
|
||||||
|
(void) getCgsGC(xw, cgsWin, gcNorm);
|
||||||
|
#ifndef NO_ACTIVE_ICON
|
||||||
|
if (cgsWin == &(TScreenOf(xw)->iconVwin))
|
||||||
|
font = getIconicFont(screen);
|
||||||
|
else
|
||||||
|
#endif
|
||||||
|
font = GetNormalFont(screen, which);
|
||||||
|
}
|
||||||
|
if (HaveFont(font) && okFont(font->fs)) {
|
||||||
|
TRACE2(("setCgsFont next: %s for %s slot %p, gc %p\n",
|
||||||
|
traceFont(font), traceCgsEnum(cgsId),
|
||||||
|
me, THIS(gc)));
|
||||||
|
TRACE2(("...next font was %s\n", traceFont(NEXT(font))));
|
||||||
|
NEXT(font) = font;
|
||||||
|
me->mask |= GCFont;
|
||||||
|
} else {
|
||||||
|
/* EMPTY */
|
||||||
|
TRACE2(("...NOT updated font for %s\n",
|
||||||
|
traceCgsEnum(cgsId)));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
setCgsFont(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId, XTermFonts * font)
|
||||||
|
{
|
||||||
|
setCgsFont2(xw, cgsWin, cgsId, font, fNorm);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Discard all of the font information, e.g., we are resizing the font.
|
||||||
|
* Keep the GC's so we can simply change them rather than creating new ones.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
clrCgsFonts(XtermWidget xw, VTwin *cgsWin, XTermFonts * font)
|
||||||
|
{
|
||||||
|
if (HaveFont(font)) {
|
||||||
|
int j;
|
||||||
|
for_each_gc(j) {
|
||||||
|
CgsCache *me;
|
||||||
|
if ((me = myCache(xw, cgsWin, (CgsEnum) j)) != 0) {
|
||||||
|
int k;
|
||||||
|
for (k = 0; k < DEPTH; ++k) {
|
||||||
|
if (SameFont(LIST(k).font, font)) {
|
||||||
|
TRACE2(("clrCgsFonts %s gc %p(%d) %s\n",
|
||||||
|
traceCgsEnum((CgsEnum) j),
|
||||||
|
LIST(k).gc,
|
||||||
|
k,
|
||||||
|
traceFont(font)));
|
||||||
|
LIST(k).font = 0;
|
||||||
|
LIST(k).cset = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (SameFont(NEXT(font), font)) {
|
||||||
|
TRACE2(("clrCgsFonts %s next %s\n",
|
||||||
|
traceCgsEnum((CgsEnum) j),
|
||||||
|
traceFont(font)));
|
||||||
|
NEXT(font) = 0;
|
||||||
|
NEXT(cset) = 0;
|
||||||
|
me->mask &= (unsigned) ~(GCFont | GC_CSet);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Return a GC associated with the given id, allocating if needed.
|
||||||
|
*/
|
||||||
|
GC
|
||||||
|
getCgsGC(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId)
|
||||||
|
{
|
||||||
|
CgsCache *me;
|
||||||
|
GC result = 0;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, cgsId)) != 0) {
|
||||||
|
TRACE2(("getCgsGC(%s, %s)\n",
|
||||||
|
traceVTwin(xw, cgsWin), traceCgsEnum(cgsId)));
|
||||||
|
if (me->mask != 0) {
|
||||||
|
int j;
|
||||||
|
unsigned used = 0;
|
||||||
|
|
||||||
|
/* fill in the unchanged fields */
|
||||||
|
if (!(me->mask & GC_CSet))
|
||||||
|
NEXT(cset) = 0; /* OPT_DEC_CHRSET */
|
||||||
|
if (!(me->mask & GCFont))
|
||||||
|
NEXT(font) = THIS(font);
|
||||||
|
if (!(me->mask & GCForeground))
|
||||||
|
NEXT(fg) = THIS(fg);
|
||||||
|
if (!(me->mask & GCBackground))
|
||||||
|
NEXT(bg) = THIS(bg);
|
||||||
|
|
||||||
|
if (NEXT(font) == 0) {
|
||||||
|
setCgsFont(xw, cgsWin, cgsId, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
TRACE2(("...Cgs new data fg=%s, bg=%s, font=%s cset %s\n",
|
||||||
|
tracePixel(xw, NEXT(fg)),
|
||||||
|
tracePixel(xw, NEXT(bg)),
|
||||||
|
traceFont(NEXT(font)),
|
||||||
|
traceCSet(NEXT(cset))));
|
||||||
|
|
||||||
|
/* try to find the given data in an already-created GC */
|
||||||
|
for (j = 0; j < DEPTH; ++j) {
|
||||||
|
if (LIST(j).gc != 0
|
||||||
|
&& SameFont(LIST(j).font, NEXT(font))
|
||||||
|
&& SameCSet(LIST(j).cset, NEXT(cset))
|
||||||
|
&& SameColor(LIST(j).fg, NEXT(fg))
|
||||||
|
&& SameColor(LIST(j).bg, NEXT(bg))) {
|
||||||
|
LINK(j);
|
||||||
|
result = THIS(gc);
|
||||||
|
TRACE2(("getCgsGC existing %p(%d)\n", result, ITEM()));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result == 0) {
|
||||||
|
/* try to find an empty slot, to create a new GC */
|
||||||
|
used = 0;
|
||||||
|
for (j = 0; j < DEPTH; ++j) {
|
||||||
|
if (LIST(j).gc == 0) {
|
||||||
|
LINK(j);
|
||||||
|
result = newCache(xw, cgsWin, cgsId, me);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (used < LIST(j).used)
|
||||||
|
used = LIST(j).used;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result == 0) {
|
||||||
|
int k;
|
||||||
|
/* if none were empty, pick the least-used slot, to modify */
|
||||||
|
for (j = 0, k = -1; j < DEPTH; ++j) {
|
||||||
|
if (used >= LIST(j).used) {
|
||||||
|
used = LIST(j).used;
|
||||||
|
k = j;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (k >= 0) {
|
||||||
|
LINK(k);
|
||||||
|
TRACE2(("...getCgsGC least-used(%d) was %d\n", k, THIS(used)));
|
||||||
|
result = chgCache(xw, cgsId, me, True);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
me->next = *(me->data);
|
||||||
|
} else {
|
||||||
|
result = THIS(gc);
|
||||||
|
}
|
||||||
|
me->mask = 0;
|
||||||
|
THIS(used) += 1;
|
||||||
|
TRACE2(("...getCgsGC(%s, %s) gc %p(%d), used %d\n",
|
||||||
|
traceVTwin(xw, cgsWin),
|
||||||
|
traceCgsEnum(cgsId), result, ITEM(), THIS(used)));
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Return the font for the given GC.
|
||||||
|
*/
|
||||||
|
CgsEnum
|
||||||
|
getCgsId(XtermWidget xw, VTwin *cgsWin, GC gc)
|
||||||
|
{
|
||||||
|
int n;
|
||||||
|
CgsEnum result = gcNorm;
|
||||||
|
|
||||||
|
for_each_gc(n) {
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, (CgsEnum) n)) != 0) {
|
||||||
|
if (THIS(gc) == gc) {
|
||||||
|
result = (CgsEnum) n;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Return the font for the given GC.
|
||||||
|
*/
|
||||||
|
XTermFonts *
|
||||||
|
getCgsFont(XtermWidget xw, VTwin *cgsWin, GC gc)
|
||||||
|
{
|
||||||
|
int n;
|
||||||
|
XTermFonts *result = 0;
|
||||||
|
|
||||||
|
for_each_gc(n) {
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, (CgsEnum) n)) != 0) {
|
||||||
|
if (THIS(gc) == gc) {
|
||||||
|
result = THIS(font);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Return the foreground color for the given GC.
|
||||||
|
*/
|
||||||
|
Pixel
|
||||||
|
getCgsFore(XtermWidget xw, VTwin *cgsWin, GC gc)
|
||||||
|
{
|
||||||
|
int n;
|
||||||
|
Pixel result = 0;
|
||||||
|
|
||||||
|
for_each_gc(n) {
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, (CgsEnum) n)) != 0) {
|
||||||
|
if (THIS(gc) == gc) {
|
||||||
|
result = THIS(fg);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Return the background color for the given GC.
|
||||||
|
*/
|
||||||
|
Pixel
|
||||||
|
getCgsBack(XtermWidget xw, VTwin *cgsWin, GC gc)
|
||||||
|
{
|
||||||
|
int n;
|
||||||
|
Pixel result = 0;
|
||||||
|
|
||||||
|
for_each_gc(n) {
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, (CgsEnum) n)) != 0) {
|
||||||
|
if (THIS(gc) == gc) {
|
||||||
|
result = THIS(bg);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Copy the parameters (except GC of course) from one cache record to another.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
copyCgs(XtermWidget xw, VTwin *cgsWin, CgsEnum dstCgsId, CgsEnum srcCgsId)
|
||||||
|
{
|
||||||
|
if (dstCgsId != srcCgsId) {
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, srcCgsId)) != 0) {
|
||||||
|
TRACE(("copyCgs from %s to %s\n",
|
||||||
|
traceCgsEnum(srcCgsId),
|
||||||
|
traceCgsEnum(dstCgsId)));
|
||||||
|
TRACE2(("copyCgs from %s (me %p, fg %s, bg %s, cset %s) to %s {{\n",
|
||||||
|
traceCgsEnum(srcCgsId),
|
||||||
|
me,
|
||||||
|
tracePixel(xw, THIS(fg)),
|
||||||
|
tracePixel(xw, THIS(bg)),
|
||||||
|
traceCSet(THIS(cset)),
|
||||||
|
traceCgsEnum(dstCgsId)));
|
||||||
|
setCgsCSet(xw, cgsWin, dstCgsId, THIS(cset));
|
||||||
|
setCgsFore(xw, cgsWin, dstCgsId, THIS(fg));
|
||||||
|
setCgsBack(xw, cgsWin, dstCgsId, THIS(bg));
|
||||||
|
setCgsFont(xw, cgsWin, dstCgsId, THIS(font));
|
||||||
|
TRACE2(("...copyCgs }}\n"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Interchange colors in the cache, e.g., for reverse-video.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
redoCgs(XtermWidget xw, Pixel fg, Pixel bg, CgsEnum cgsId)
|
||||||
|
{
|
||||||
|
VTwin *cgsWin = WhichVWin(TScreenOf(xw));
|
||||||
|
CgsCache *me = myCache(xw, cgsWin, cgsId);
|
||||||
|
|
||||||
|
if (me != 0) {
|
||||||
|
CgsCacheData *save_data = me->data;
|
||||||
|
int n;
|
||||||
|
|
||||||
|
for (n = 0; n < DEPTH; ++n) {
|
||||||
|
if (LIST(n).gc != 0 && HaveFont(LIST(n).font)) {
|
||||||
|
LINK(n);
|
||||||
|
|
||||||
|
if (LIST(n).fg == fg
|
||||||
|
&& LIST(n).bg == bg) {
|
||||||
|
setCgsFore(xw, cgsWin, cgsId, bg);
|
||||||
|
setCgsBack(xw, cgsWin, cgsId, fg);
|
||||||
|
} else if (LIST(n).fg == bg
|
||||||
|
&& LIST(n).bg == fg) {
|
||||||
|
setCgsFore(xw, cgsWin, cgsId, fg);
|
||||||
|
setCgsBack(xw, cgsWin, cgsId, bg);
|
||||||
|
} else {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
(void) chgCache(xw, cgsId, me, False);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
me->data = save_data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Swap the cache records, e.g., when doing reverse-video.
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
swapCgs(XtermWidget xw, VTwin *cgsWin, CgsEnum dstCgsId, CgsEnum srcCgsId)
|
||||||
|
{
|
||||||
|
if (dstCgsId != srcCgsId) {
|
||||||
|
CgsCache *src;
|
||||||
|
|
||||||
|
if ((src = myCache(xw, cgsWin, srcCgsId)) != 0) {
|
||||||
|
CgsCache *dst;
|
||||||
|
|
||||||
|
if ((dst = myCache(xw, cgsWin, dstCgsId)) != 0) {
|
||||||
|
CgsCache tmp;
|
||||||
|
int srcIndex = dataIndex(src);
|
||||||
|
int dstIndex = dataIndex(dst);
|
||||||
|
|
||||||
|
EXCHANGE(*src, *dst, tmp);
|
||||||
|
|
||||||
|
relinkData(src, dstIndex);
|
||||||
|
relinkData(dst, srcIndex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Free any GC associated with the given id.
|
||||||
|
*/
|
||||||
|
GC
|
||||||
|
freeCgs(XtermWidget xw, VTwin *cgsWin, CgsEnum cgsId)
|
||||||
|
{
|
||||||
|
CgsCache *me;
|
||||||
|
|
||||||
|
if ((me = myCache(xw, cgsWin, cgsId)) != 0) {
|
||||||
|
int j;
|
||||||
|
|
||||||
|
for (j = 0; j < DEPTH; ++j) {
|
||||||
|
if (LIST(j).gc != 0) {
|
||||||
|
TRACE(("freeCgs(%s, %s) gc %p(%d)\n",
|
||||||
|
traceVTwin(xw, cgsWin),
|
||||||
|
traceCgsEnum(cgsId), (void *) LIST(j).gc, j));
|
||||||
|
clrCgsFonts(xw, cgsWin, LIST(j).font);
|
||||||
|
#if OPT_BOX_CHARS
|
||||||
|
if (cgsId == gcDots) {
|
||||||
|
XmuReleaseStippledPixmap(XtScreen((Widget) xw), LIST(j).tile);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
XFreeGC(TScreenOf(xw)->display, LIST(j).gc);
|
||||||
|
memset(&LIST(j), 0, sizeof(LIST(j)));
|
||||||
|
}
|
||||||
|
LINK(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef NO_LEAKS
|
||||||
|
void
|
||||||
|
noleaks_cachedCgs(XtermWidget xw)
|
||||||
|
{
|
||||||
|
#ifndef NO_ACTIVE_ICON
|
||||||
|
free(TScreenOf(xw)->icon_cgs_cache);
|
||||||
|
#endif
|
||||||
|
free(TScreenOf(xw)->main_cgs_cache);
|
||||||
|
}
|
||||||
|
#endif
|
BIN
ports/xterm/xterm-359/cachedGCs.o
Normal file
BIN
ports/xterm/xterm-359/cachedGCs.o
Normal file
Binary file not shown.
514
ports/xterm/xterm-359/charclass.c
Normal file
514
ports/xterm/xterm-359/charclass.c
Normal file
@ -0,0 +1,514 @@
|
|||||||
|
/* $XTermId: charclass.c,v 1.41 2020/07/06 20:00:12 tom Exp $ */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Copyright 2002-2017,2020 by Thomas E. Dickey
|
||||||
|
*
|
||||||
|
* All Rights Reserved
|
||||||
|
*
|
||||||
|
* Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
* copy of this software and associated documentation files (the
|
||||||
|
* "Software"), to deal in the Software without restriction, including
|
||||||
|
* without limitation the rights to use, copy, modify, merge, publish,
|
||||||
|
* distribute, sublicense, and/or sell copies of the Software, and to
|
||||||
|
* permit persons to whom the Software is furnished to do so, subject to
|
||||||
|
* the following conditions:
|
||||||
|
*
|
||||||
|
* The above copyright notice and this permission notice shall be included
|
||||||
|
* in all copies or substantial portions of the Software.
|
||||||
|
*
|
||||||
|
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
* OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||||
|
* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||||
|
* IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT HOLDER(S) BE LIABLE FOR ANY
|
||||||
|
* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
||||||
|
* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
||||||
|
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
*
|
||||||
|
* Except as contained in this notice, the name(s) of the above copyright
|
||||||
|
* holders shall not be used in advertising or otherwise to promote the
|
||||||
|
* sale, use or other dealings in this Software without prior written
|
||||||
|
* authorization.
|
||||||
|
*
|
||||||
|
*----------------------------------------------------------------------------
|
||||||
|
* Compact and efficient reimplementation of the
|
||||||
|
* xterm character class mechanism for large character sets
|
||||||
|
*
|
||||||
|
* Markus Kuhn -- mkuhn@acm.org -- 2000-07-03
|
||||||
|
*
|
||||||
|
* xterm allows users to select entire words with a double-click on the left
|
||||||
|
* mouse button. Opinions might differ on what type of characters are part of
|
||||||
|
* separate words, therefore xterm allows users to configure a class code for
|
||||||
|
* each 8-bit character. Words are maximum length sequences of neighboring
|
||||||
|
* characters with identical class code. Extending this mechanism to Unicode
|
||||||
|
* naively would create an at least 2^16 entries (128 kB) long class code
|
||||||
|
* table.
|
||||||
|
*
|
||||||
|
* Instead, we transform the character class table into a list of intervals,
|
||||||
|
* that will be accessed via a linear search. Changes made to the table by the
|
||||||
|
* user will be appended. A special class code IDENT (default) marks
|
||||||
|
* characters who have their code number as the class code.
|
||||||
|
*
|
||||||
|
* We could alternatively use a sorted table of non-overlapping intervals that
|
||||||
|
* can be accessed via binary search, but merging in new intervals is
|
||||||
|
* significantly more hassle and not worth the effort here.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <xterm.h>
|
||||||
|
#include <charclass.h>
|
||||||
|
|
||||||
|
#if OPT_WIDE_CHARS
|
||||||
|
|
||||||
|
#ifdef TEST_DRIVER
|
||||||
|
|
||||||
|
#include <ctype.h>
|
||||||
|
#include <wchar.h>
|
||||||
|
#include <wctype.h>
|
||||||
|
|
||||||
|
#if OPT_TRACE
|
||||||
|
#define Trace if (opt_v) printf
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#undef OPT_REPORT_CCLASS
|
||||||
|
#define OPT_REPORT_CCLASS 1
|
||||||
|
#endif /* TEST_DRIVER */
|
||||||
|
|
||||||
|
static struct classentry {
|
||||||
|
int cclass;
|
||||||
|
int first;
|
||||||
|
int last;
|
||||||
|
} *classtab;
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
IDENT = -1,
|
||||||
|
OTHER = 0,
|
||||||
|
CNTRL = 1,
|
||||||
|
ALNUM = 48,
|
||||||
|
BLANK = 32,
|
||||||
|
U_CJK = 0x4e00,
|
||||||
|
U_SUP = 0x2070,
|
||||||
|
U_SUB = 0x2080,
|
||||||
|
U_HIR = 0x3040,
|
||||||
|
U_KAT = 0x30a0,
|
||||||
|
U_HAN = 0xac00
|
||||||
|
} Classes;
|
||||||
|
|
||||||
|
#ifdef TEST_DRIVER
|
||||||
|
static int opt_all;
|
||||||
|
static int opt_check;
|
||||||
|
static int opt_quiet;
|
||||||
|
static int opt_v;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
void
|
||||||
|
init_classtab(void)
|
||||||
|
{
|
||||||
|
const int size = 50;
|
||||||
|
|
||||||
|
TRACE(("init_classtab {{\n"));
|
||||||
|
|
||||||
|
classtab = TypeMallocN(struct classentry, (unsigned) size);
|
||||||
|
if (!classtab)
|
||||||
|
abort();
|
||||||
|
classtab[0].cclass = size;
|
||||||
|
classtab[0].first = 1;
|
||||||
|
classtab[0].last = 0;
|
||||||
|
|
||||||
|
/* old xterm default classes */
|
||||||
|
SetCharacterClassRange(0, 0, BLANK);
|
||||||
|
SetCharacterClassRange(1, 31, CNTRL);
|
||||||
|
SetCharacterClassRange('\t', '\t', BLANK);
|
||||||
|
SetCharacterClassRange('0', '9', ALNUM);
|
||||||
|
SetCharacterClassRange('A', 'Z', ALNUM);
|
||||||
|
SetCharacterClassRange('_', '_', ALNUM);
|
||||||
|
SetCharacterClassRange('a', 'z', ALNUM);
|
||||||
|
SetCharacterClassRange(127, 159, CNTRL);
|
||||||
|
SetCharacterClassRange(160, 191, IDENT);
|
||||||
|
SetCharacterClassRange(192, 255, ALNUM);
|
||||||
|
SetCharacterClassRange(215, 215, IDENT);
|
||||||
|
SetCharacterClassRange(247, 247, IDENT);
|
||||||
|
|
||||||
|
/* added Unicode classes */
|
||||||
|
SetCharacterClassRange(0x0100, 0xffdf, ALNUM); /* mostly characters */
|
||||||
|
SetCharacterClassRange(0x037e, 0x037e, IDENT); /* Greek question mark */
|
||||||
|
SetCharacterClassRange(0x0387, 0x0387, IDENT); /* Greek ano teleia */
|
||||||
|
SetCharacterClassRange(0x055a, 0x055f, IDENT); /* Armenian punctuation */
|
||||||
|
SetCharacterClassRange(0x0589, 0x0589, IDENT); /* Armenian full stop */
|
||||||
|
SetCharacterClassRange(0x0700, 0x070d, IDENT); /* Syriac punctuation */
|
||||||
|
SetCharacterClassRange(0x104a, 0x104f, IDENT); /* Myanmar punctuation */
|
||||||
|
SetCharacterClassRange(0x10fb, 0x10fb, IDENT); /* Georgian punctuation */
|
||||||
|
SetCharacterClassRange(0x1361, 0x1368, IDENT); /* Ethiopic punctuation */
|
||||||
|
SetCharacterClassRange(0x166d, 0x166e, IDENT); /* Canadian Syl. punctuation */
|
||||||
|
SetCharacterClassRange(0x17d4, 0x17dc, IDENT); /* Khmer punctuation */
|
||||||
|
SetCharacterClassRange(0x1800, 0x180a, IDENT); /* Mongolian punctuation */
|
||||||
|
SetCharacterClassRange(0x2000, 0x200a, BLANK); /* spaces */
|
||||||
|
SetCharacterClassRange(0x200b, 0x27ff, IDENT); /* punctuation and symbols */
|
||||||
|
SetCharacterClassRange(0x2070, 0x207f, U_SUP); /* superscript */
|
||||||
|
SetCharacterClassRange(0x2080, 0x208f, U_SUB); /* subscript */
|
||||||
|
SetCharacterClassRange(0x3000, 0x3000, BLANK); /* ideographic space */
|
||||||
|
SetCharacterClassRange(0x3001, 0x3020, IDENT); /* ideographic punctuation */
|
||||||
|
SetCharacterClassRange(0x3040, 0x309f, U_HIR); /* Hiragana */
|
||||||
|
SetCharacterClassRange(0x30a0, 0x30ff, U_KAT); /* Katakana */
|
||||||
|
SetCharacterClassRange(0x3300, 0x9fff, U_CJK); /* CJK Ideographs */
|
||||||
|
SetCharacterClassRange(0xac00, 0xd7a3, U_HAN); /* Hangul Syllables */
|
||||||
|
SetCharacterClassRange(0xf900, 0xfaff, U_CJK); /* CJK Ideographs */
|
||||||
|
SetCharacterClassRange(0xfe30, 0xfe6b, IDENT); /* punctuation forms */
|
||||||
|
SetCharacterClassRange(0xff00, 0xff0f, IDENT); /* half/fullwidth ASCII */
|
||||||
|
SetCharacterClassRange(0xff1a, 0xff20, IDENT); /* half/fullwidth ASCII */
|
||||||
|
SetCharacterClassRange(0xff3b, 0xff40, IDENT); /* half/fullwidth ASCII */
|
||||||
|
SetCharacterClassRange(0xff5b, 0xff64, IDENT); /* half/fullwidth ASCII */
|
||||||
|
|
||||||
|
TRACE(("}} init_classtab\n"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
int
|
||||||
|
CharacterClass(int c)
|
||||||
|
{
|
||||||
|
int i, cclass = IDENT;
|
||||||
|
|
||||||
|
for (i = classtab[0].first; i <= classtab[0].last; i++)
|
||||||
|
if (classtab[i].first <= c && classtab[i].last >= c)
|
||||||
|
cclass = classtab[i].cclass;
|
||||||
|
|
||||||
|
if (cclass < 0)
|
||||||
|
cclass = c;
|
||||||
|
|
||||||
|
return cclass;
|
||||||
|
}
|
||||||
|
|
||||||
|
#if OPT_REPORT_CCLASS
|
||||||
|
#define charFormat(code) ((code) > 255 ? "0x%04X" : "%d")
|
||||||
|
static const char *
|
||||||
|
class_name(Classes code)
|
||||||
|
{
|
||||||
|
static char buffer[80];
|
||||||
|
const char *result = "?";
|
||||||
|
switch (code) {
|
||||||
|
case ALNUM:
|
||||||
|
result = "ALNUM";
|
||||||
|
break;
|
||||||
|
case BLANK:
|
||||||
|
result = "BLANK";
|
||||||
|
break;
|
||||||
|
case CNTRL:
|
||||||
|
result = "CNTRL";
|
||||||
|
break;
|
||||||
|
case OTHER:
|
||||||
|
result = "OTHER";
|
||||||
|
break;
|
||||||
|
case IDENT:
|
||||||
|
result = "IDENT";
|
||||||
|
break;
|
||||||
|
case U_SUP:
|
||||||
|
result = "superscript";
|
||||||
|
break;
|
||||||
|
case U_SUB:
|
||||||
|
result = "subscript";
|
||||||
|
break;
|
||||||
|
case U_CJK:
|
||||||
|
result = "CJK Ideographs";
|
||||||
|
break;
|
||||||
|
case U_HIR:
|
||||||
|
result = "Hiragana";
|
||||||
|
break;
|
||||||
|
case U_KAT:
|
||||||
|
result = "Katakana";
|
||||||
|
break;
|
||||||
|
case U_HAN:
|
||||||
|
result = "Hangul Syllables";
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
sprintf(buffer, charFormat(code), code);
|
||||||
|
result = buffer;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Special convention for classtab[0]:
|
||||||
|
* - classtab[0].cclass is the allocated number of entries in classtab
|
||||||
|
* - classtab[0].first = 1 (first used entry in classtab)
|
||||||
|
* - classtab[0].last is the last used entry in classtab
|
||||||
|
*/
|
||||||
|
|
||||||
|
int
|
||||||
|
SetCharacterClassRange(int low, int high, int value)
|
||||||
|
{
|
||||||
|
TRACE(("...SetCharacterClassRange (U+%04X .. U+%04X) = %s\n",
|
||||||
|
low, high, class_name(value)));
|
||||||
|
|
||||||
|
if (high < low)
|
||||||
|
return -1; /* nothing to do */
|
||||||
|
|
||||||
|
/* make sure we have at least one free entry left at table end */
|
||||||
|
if (classtab[0].last > classtab[0].cclass - 2) {
|
||||||
|
classtab[0].cclass += 5 + classtab[0].cclass / 4;
|
||||||
|
classtab = TypeRealloc(struct classentry,
|
||||||
|
(unsigned) classtab[0].cclass, classtab);
|
||||||
|
if (!classtab)
|
||||||
|
abort();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* simply append new interval to end of interval array */
|
||||||
|
classtab[0].last++;
|
||||||
|
classtab[classtab[0].last].first = low;
|
||||||
|
classtab[classtab[0].last].last = high;
|
||||||
|
classtab[classtab[0].last].cclass = value;
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
report_wide_char_class(void)
|
||||||
|
{
|
||||||
|
static const Classes known_classes[] =
|
||||||
|
{IDENT, ALNUM, CNTRL, BLANK, U_SUP, U_SUB, U_HIR, U_KAT, U_CJK, U_HAN};
|
||||||
|
int i;
|
||||||
|
|
||||||
|
printf("\n");
|
||||||
|
printf("Unicode charClass data uses the last match\n");
|
||||||
|
printf("from these overlapping intervals of character codes:\n");
|
||||||
|
for (i = classtab[0].first; i <= classtab[0].last; i++) {
|
||||||
|
printf("\tU+%04X .. U+%04X %s\n",
|
||||||
|
classtab[i].first,
|
||||||
|
classtab[i].last,
|
||||||
|
class_name(classtab[i].cclass));
|
||||||
|
}
|
||||||
|
printf("\n");
|
||||||
|
printf("These class-names are used internally (the first character code in a class):\n");
|
||||||
|
for (i = 0; i < (int) XtNumber(known_classes); ++i) {
|
||||||
|
printf("\t");
|
||||||
|
printf(charFormat(known_classes[i]), known_classes[i]);
|
||||||
|
printf(" = %s\n", class_name(known_classes[i]));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif /* OPT_REPORT_CCLASS */
|
||||||
|
|
||||||
|
#ifdef NO_LEAKS
|
||||||
|
void
|
||||||
|
noleaks_CharacterClass(void)
|
||||||
|
{
|
||||||
|
if (classtab != 0) {
|
||||||
|
free(classtab);
|
||||||
|
classtab = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
#endif /* OPT_WIDE_CHARS */
|
||||||
|
|
||||||
|
#ifdef TEST_DRIVER
|
||||||
|
#if OPT_WIDE_CHARS
|
||||||
|
static void
|
||||||
|
usage(void)
|
||||||
|
{
|
||||||
|
static const char *msg[] =
|
||||||
|
{
|
||||||
|
"Usage: test_charclass [options] [c1[-c1b] [c2-[c2b] [...]]]",
|
||||||
|
"",
|
||||||
|
"Options:",
|
||||||
|
" -a show all data",
|
||||||
|
" -s show only summary",
|
||||||
|
" -v verbose"
|
||||||
|
};
|
||||||
|
size_t n;
|
||||||
|
for (n = 0; n < sizeof(msg) / sizeof(msg[0]); ++n) {
|
||||||
|
fprintf(stderr, "%s\n", msg[n]);
|
||||||
|
}
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
expected_class(int wch)
|
||||||
|
{
|
||||||
|
int result = wch;
|
||||||
|
wint_t ch = (wint_t) wch;
|
||||||
|
if (ch == '\0' || ch == '\t') {
|
||||||
|
result = BLANK;
|
||||||
|
} else if (iswcntrl(ch)) {
|
||||||
|
result = CNTRL;
|
||||||
|
} else if (iswspace(ch)) {
|
||||||
|
result = BLANK;
|
||||||
|
} else if (ch < 127) {
|
||||||
|
if (isalnum(ch) || ch == '_') {
|
||||||
|
result = ALNUM;
|
||||||
|
}
|
||||||
|
} else if (ch == 170 || ch == 181 || ch == 186) {
|
||||||
|
;
|
||||||
|
} else if (iswalnum(ch)) {
|
||||||
|
result = ALNUM;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
show_cclass_range(int lo, int hi)
|
||||||
|
{
|
||||||
|
int cclass = CharacterClass(lo);
|
||||||
|
int ident = (cclass == lo);
|
||||||
|
int more = 0;
|
||||||
|
if (ident) {
|
||||||
|
int ch;
|
||||||
|
for (ch = lo + 1; ch <= hi; ch++) {
|
||||||
|
if (CharacterClass(ch) != ch) {
|
||||||
|
ident = 0;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (ident && (hi < 255)) {
|
||||||
|
ch = hi + 1;
|
||||||
|
if (CharacterClass(ch) == ch) {
|
||||||
|
if (ch >= 255 || CharacterClass(ch + 1) != ch) {
|
||||||
|
more = 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!more) {
|
||||||
|
if (lo == hi) {
|
||||||
|
printf("\t%d", lo);
|
||||||
|
} else {
|
||||||
|
printf("\t%d-%d", lo, hi);
|
||||||
|
}
|
||||||
|
if (!ident)
|
||||||
|
printf(":%d", cclass);
|
||||||
|
if (hi < 255)
|
||||||
|
printf(", \\");
|
||||||
|
printf("\n");
|
||||||
|
}
|
||||||
|
return !more;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
report_resource(int first, int last)
|
||||||
|
{
|
||||||
|
int class_p;
|
||||||
|
int ch;
|
||||||
|
int dh;
|
||||||
|
|
||||||
|
class_p = CharacterClass(dh = first);
|
||||||
|
for (ch = first; ch < last; ++ch) {
|
||||||
|
int class_c = CharacterClass(ch);
|
||||||
|
if (class_c != class_p) {
|
||||||
|
if (show_cclass_range(dh, ch - 1)) {
|
||||||
|
dh = ch;
|
||||||
|
class_p = class_c;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (dh < last - 1) {
|
||||||
|
show_cclass_range(dh, last - 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
decode_one(const char *source, char **target)
|
||||||
|
{
|
||||||
|
int result = -1;
|
||||||
|
long check;
|
||||||
|
int radix = 0;
|
||||||
|
if ((source[0] == 'u' || source[0] == 'U') && source[1] == '+') {
|
||||||
|
source += 2;
|
||||||
|
radix = 16;
|
||||||
|
}
|
||||||
|
check = strtol(source, target, radix);
|
||||||
|
if (*target != NULL && *target != source)
|
||||||
|
result = (int) check;
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int
|
||||||
|
decode_range(const char *source, int *lo, int *hi)
|
||||||
|
{
|
||||||
|
int result = 0;
|
||||||
|
char *after1;
|
||||||
|
char *after2;
|
||||||
|
if ((*lo = decode_one(source, &after1)) >= 0) {
|
||||||
|
after1 += strspn(after1, ":-.\t ");
|
||||||
|
if ((*hi = decode_one(after1, &after2)) < 0) {
|
||||||
|
*hi = *lo;
|
||||||
|
}
|
||||||
|
result = 1;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
do_range(const char *source)
|
||||||
|
{
|
||||||
|
int lo, hi;
|
||||||
|
if (decode_range(source, &lo, &hi)) {
|
||||||
|
if (opt_all) {
|
||||||
|
while (lo <= hi) {
|
||||||
|
int other_rc = CharacterClass(lo);
|
||||||
|
if (!opt_quiet)
|
||||||
|
printf("U+%04X\t%s\n", lo, class_name(other_rc));
|
||||||
|
++lo;
|
||||||
|
}
|
||||||
|
} else if (opt_check) {
|
||||||
|
while (lo <= hi) {
|
||||||
|
int expect = expected_class(lo);
|
||||||
|
int actual = CharacterClass(lo);
|
||||||
|
if (actual != expect)
|
||||||
|
printf("U+%04X\t%s ->%s\n", lo,
|
||||||
|
class_name(expect),
|
||||||
|
class_name(actual));
|
||||||
|
++lo;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
printf("\"charClass\" resource for [%d..%d]:\n", lo, hi);
|
||||||
|
report_resource(lo, hi + 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif /* OPT_WIDE_CHARS */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* TODO: add option to show do_range in hex
|
||||||
|
*/
|
||||||
|
int
|
||||||
|
main(int argc, char **argv ENVP_ARG)
|
||||||
|
{
|
||||||
|
#if OPT_WIDE_CHARS
|
||||||
|
int ch;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
(void) argc;
|
||||||
|
(void) argv;
|
||||||
|
|
||||||
|
#if OPT_WIDE_CHARS
|
||||||
|
setlocale(LC_ALL, "");
|
||||||
|
while ((ch = getopt(argc, argv, "acsv")) != -1) {
|
||||||
|
switch (ch) {
|
||||||
|
case 'a':
|
||||||
|
opt_all = 1;
|
||||||
|
break;
|
||||||
|
case 'c':
|
||||||
|
opt_check = 1;
|
||||||
|
break;
|
||||||
|
case 's':
|
||||||
|
opt_quiet = 1;
|
||||||
|
break;
|
||||||
|
case 'v':
|
||||||
|
opt_v = 1;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
usage();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
init_classtab();
|
||||||
|
|
||||||
|
if (optind >= argc) {
|
||||||
|
do_range("0-255");
|
||||||
|
} else {
|
||||||
|
while (optind < argc) {
|
||||||
|
do_range(argv[optind++]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
report_wide_char_class();
|
||||||
|
#else
|
||||||
|
printf("wide-character support is not configured\n");
|
||||||
|
#endif /* OPT_WIDE_CHARS */
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
#endif /* TEST_DRIVER */
|
23
ports/xterm/xterm-359/charclass.h
Normal file
23
ports/xterm/xterm-359/charclass.h
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
/* $XTermId: charclass.h,v 1.8 2020/01/18 18:29:41 tom Exp $ */
|
||||||
|
|
||||||
|
/* $XFree86: xc/programs/xterm/charclass.h,v 1.3 2006/02/13 01:14:58 dickey Exp $ */
|
||||||
|
|
||||||
|
#ifndef CHARCLASS_H
|
||||||
|
#define CHARCLASS_H
|
||||||
|
|
||||||
|
extern void init_classtab(void);
|
||||||
|
/* initialise the table. needs calling before either of the
|
||||||
|
others. */
|
||||||
|
|
||||||
|
extern int SetCharacterClassRange(int low, int high, int value);
|
||||||
|
extern int CharacterClass(int c);
|
||||||
|
|
||||||
|
#if OPT_REPORT_CCLASS
|
||||||
|
extern void report_wide_char_class(void);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef NO_LEAKS
|
||||||
|
extern void noleaks_CharacterClass(void);
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif
|
BIN
ports/xterm/xterm-359/charclass.o
Normal file
BIN
ports/xterm/xterm-359/charclass.o
Normal file
Binary file not shown.
13071
ports/xterm/xterm-359/charproc.c
Normal file
13071
ports/xterm/xterm-359/charproc.c
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ports/xterm/xterm-359/charproc.o
Normal file
BIN
ports/xterm/xterm-359/charproc.o
Normal file
Binary file not shown.
1681
ports/xterm/xterm-359/charsets.c
Normal file
1681
ports/xterm/xterm-359/charsets.c
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ports/xterm/xterm-359/charsets.o
Normal file
BIN
ports/xterm/xterm-359/charsets.o
Normal file
Binary file not shown.
1687
ports/xterm/xterm-359/config.guess
vendored
Executable file
1687
ports/xterm/xterm-359/config.guess
vendored
Executable file
File diff suppressed because it is too large
Load Diff
2218
ports/xterm/xterm-359/config.log
Normal file
2218
ports/xterm/xterm-359/config.log
Normal file
File diff suppressed because it is too large
Load Diff
1180
ports/xterm/xterm-359/config.status
Executable file
1180
ports/xterm/xterm-359/config.status
Executable file
File diff suppressed because it is too large
Load Diff
1851
ports/xterm/xterm-359/config.sub
vendored
Executable file
1851
ports/xterm/xterm-359/config.sub
vendored
Executable file
File diff suppressed because it is too large
Load Diff
24825
ports/xterm/xterm-359/configure
vendored
Executable file
24825
ports/xterm/xterm-359/configure
vendored
Executable file
File diff suppressed because it is too large
Load Diff
1179
ports/xterm/xterm-359/configure.in
Normal file
1179
ports/xterm/xterm-359/configure.in
Normal file
File diff suppressed because it is too large
Load Diff
4057
ports/xterm/xterm-359/ctlseqs.ms
Normal file
4057
ports/xterm/xterm-359/ctlseqs.ms
Normal file
File diff suppressed because it is too large
Load Diff
3032
ports/xterm/xterm-359/ctlseqs.txt
Normal file
3032
ports/xterm/xterm-359/ctlseqs.txt
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user