-- Leo's gemini proxy
-- Connecting to git.thebackupbox.net:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini
repo: rxvt-unicode-sixel action: commit revision: path_from: revision_from: 5f6b06044dd03ce8a0cf235dfcdfa819bb76f34b: path_to: revision_to:
commit 5f6b06044dd03ce8a0cf235dfcdfa819bb76f34b Author: Marc Lehmann <schmorp@schmorp.de> Date: Sun Feb 22 08:09:38 2004 +0000 *** empty log message *** diff --git a/Changes b/Changes
--- a/Changes +++ b/Changes @@ -12,6 +12,7 @@ keysyms that also have string translations, when not --enable-xim. reported by joel reed. - countless minor bugfixes. + - removed greek support. 1.8 Mon Feb 2 20:09:18 CET 2004 - almost total conversion to C++. Except for introducing diff --git a/autoconf/config.h.in b/autoconf/config.h.in
--- a/autoconf/config.h.in +++ b/autoconf/config.h.in @@ -190,9 +190,6 @@ /* Define if you want the depth of scrollbars and menus to be less */ #undef HALFSHADOW -/* Define if you want support for Greek Elot-928 & IBM-437 keyboard */ -#undef GREEK_SUPPORT - /* Define to change gid of ttys to group tty */ #undef TTY_GID_SUPPORT diff --git a/autoconf/configure.in b/autoconf/configure.in
--- a/autoconf/configure.in +++ b/autoconf/configure.in @@ -212,12 +212,6 @@ AC_ARG_ENABLE(xim, support_xim=$enableval fi]) -AC_ARG_ENABLE(greek, - [ --enable-greek enable greek keyboard support], - [if test x$enableval = xyes; then - AC_DEFINE(GREEK_SUPPORT, 1, Define if you want support for Greek Elot-928 & IBM-437 keyboard) - fi]) - AC_ARG_ENABLE(ttygid, [ --enable-ttygid enable tty setting to group named "tty"], [if test x$enableval = xyes; then diff --git a/doc/README.greek b/doc/README.greek deleted file mode 100644 index 4144ece6d723e75d668c9f4101716f1a646a9789..0000000000000000000000000000000000000000 --- a/doc/README.greek +++ /dev/null @@ -1,131 +0,0 @@ - ------------------------------- - rxvt support for greek keyboard - ------------------------------- - - A. Haritsis <ah@doc.ic.ac.uk> - -rxvt supports both ELOT-928 (ISO-8859-7 standard) and IBM-437 keyboard -translations for greek character entry. It is possible to start rxvt windows -in any of the two translations, making it possible to use both translations -modes simultanesuly on the same screen! No need to convert your files back -and forth if you don't want to. - -When in greek mode, type ; or : twice to emit the respective symbol. -No need to switch language mode back and forth! - -rxvt ISO-8859-7 includes mappings for the following (usually forgotten): -anw teleia = ;. -<< = ;< ->> = ;> - Also: -Copyright = ;c -Section = ;s - -For Greek Elot-928 or IBM-437 keyboard for rxvt & X greek entry support -you will need to: - -1) compile rxvt with an ANSI C compiler (eg gcc) as follows: - - Use the --enable-greek option in configure , or edit config.h and - define GREEK_SUPPORT - - Then your rxvt executable with greek support should be created. Install - it as you would do for the normal rxvt. There is no need to change its - name. It works fully as a normal rxvt but if you press the 'toggle' - keysym (see below) it will switch into greek translation mode. The extra - memory it takes in less than 4 kBytes. - -2) install greek elot & ibm437 fonts(s) for X-windows - eg. - cp a_greek_font.pcf.Z /usr/lib/X11/misc/ - - and ammend the fonts.dir and fonts.alias in /usr/lib/X11/misc/. Greek - fonts are available as a separate file which you can download from - sunsite (/pub/Linux/X11/misc/greek-xfont-pack.tgz). A new release of a - FULL set of fixed (and proportional and Type1 for use by netscape etc) - can be found in the HCR archive - see at end). I might upload them at - sunsite et all as well. - -3) include the following in your X resources: - rxvt.font: grfixed (or the name of your preferred greek font) - rxvt.bits: 8 (default) - rxvt.greektoggle_key: Mode_switch (default) - - where grfixed is an alias for one of the elot-928 font in the pack. - - Remember that the default keyboard translation is ELOT928. If you need - to start rxvt with suppport for IBM437, use the command line of rxvt to - set mode & font (command line option -grk4 can do this). Remember to use - an Elot font with the Elot translation mode and a 437 font with the - IBM437 mode. - - You can choose any keysym you wish as the "toggler" greek_switch_keysym. - Choosing `VoidSymbol' will effectively _disable_ the greek keyboard. - The default is keysym `Mode_switch'. - - For XFree86 this is defined in the /usr/lib/X11/Xmodmap.* files as: - keycode 113 = Mode_switch (it is the Right Alt key or ALtGr) - You may define it to be something else with a command like: - - xmodmap -e "keycode ... = Mode_switch" - - or changing your ~/.Xmodmap file (see xmodmap(1) and X(1) about this). - I personally prefer the AltGr key on PC X terminals since it allows fast - switching. Of course this might not be liked by left-handed people. You - can redefine it to whtever you like under X, but I would NOT recommend - keycodes that have other uses. - -5) Not all programs are 8-bit clean -- ie, they sometimes strip the top bit - of a character which is essential for the greek fonts. - - Unfortunately bash is one of these programs (at least I couldn't figure - out how to make it to work). Use tcsh instead: it is 8-bit clean. - - You will generally need to include in your ...rc files: - - For sh/bash: - LC_CTYPE=iso_8859_1; export LC_CTYPE - LESSCHARSET=latin1; export LESSCHARSET - - For bash to be 8-bit clean, add the following lines to ~/.inputrc: - set meta-flag on - set convert-meta off - set output-meta on - - For csh/tcsh: - setenv LC_CTYPE iso_8859_1 - setenv LESSCHARSET latin1 - -Still some applications will have problems. Emacs has its own support for -greek characters achieved with the .el script written by sarantos@csd.uch.gr -(for 19.20 +). It might be possible to have greek support via emacs -invocations with the -nw argument (with this version of rxvt) but I have not -tried it. Elvis (vi clone) works fine. I highly recommend vim version 3.15 -and later. I have added support for making native languge vi'ing very easy -(see langmap option). It's by far the most powerful vi (or maybe editor :-) -I have ever seen. - -If some (terminal-based) applications do not work, please direct complaints -to their authors stating that you would like them to be 8-bit clean. - -I will soon release a linux version of an 8-bit clean curses lib and -versions of some useful programs that work with it (eg ytalk). Watch the -HCR archive. - -Do not expect programs that are not running within an rxvt window to have greek -keyboard support. For this, it will be needed to change the Xlib so that it -supports 4-state FSMs (rather than only 2 - I do not count shift keys or caps -lock) for keyboard entry (required for greek keyboards). - -And something amusing and (maybe) useful: some filesystems (including SunOS -and Linux filesystems -- haven't checked others) allow names with 8-bit -characters; so you can create files or directories with names containing -greek characters! - -Enjoy, - -Angelo Haritsis <ah@doc.ic.ac.uk> - -For more greek related tools/fonts etc, have a look at the -HELLENIC RESOURCES ARCHIVE (HCR) : ftp://dolphin.doc.ic.ac.uk/pub/greek/ -maintained by the above author. diff --git a/src/Makefile.in b/src/Makefile.in
--- a/src/Makefile.in +++ b/src/Makefile.in @@ -1,4 +1,4 @@ -# $Id: Makefile.in,v 1.11 2004/02/09 07:11:49 pcg Exp $ +# $Id: Makefile.in,v 1.12 2004/02/22 08:09:36 pcg Exp $ @MCOMMON@ LINT = lint -DNARROWPROTO=1 $(XINC) -chapbxz @@ -24,7 +24,7 @@ DEBUG=-DDEBUG_STRICT @DEBUG@ first_rule: all dummy: -LIBSRCS = command.C defaultfont.C grkelot.C init.C logging.C \ +LIBSRCS = command.C defaultfont.C init.C logging.C \ main.C menubar.C misc.C netdisp.C ptytty.C screen.C scrollbar.C \ scrollbar-rxvt.C scrollbar-next.C scrollbar-xterm.C strings.C \ xdefaults.C xpm.C encoding.C rxvtcolor.C rxvtstl.C iom.C \ @@ -32,17 +32,17 @@ LIBSRCS = command.C defaultfont.C grkelot.C init.C logging.C \ SRCS = rxvt.C $(LIBSRCS) -HDRS = command.h defaultfont.h feature.h grkelot.h init.h logging.h \ +HDRS = command.h defaultfont.h feature.h init.h logging.h \ menubar.h netdisp.h protos.h rxvt.h rxvtgrx.h version.h encoding.h \ rxvtstl.h iom.h iom_conf.h EXTRAHDRS = rxvtlib.h rxvtdaemon.h -OBJS = command.o defaultfont.o init.o grkelot.o logging.o \ +OBJS = command.o defaultfont.o init.o logging.o \ main.o menubar.o misc.o netdisp.o ptytty.o screen.o \ scrollbar.o scrollbar-next.o scrollbar-rxvt.o scrollbar-xterm.o scrollbar-plain.o \ strings.o xdefaults.o xpm.o rxvt.o encoding.o rxvtcolor.o rxvtstl.o iom.o -LIBOBJS = command.lo defaultfont.lo init.lo grkelot.lo logging.lo \ +LIBOBJS = command.lo defaultfont.lo init.lo logging.lo \ main.lo menubar.lo misc.lo netdisp.lo ptytty.lo screen.lo \ scrollbar.lo scrollbar-next.lo scrollbar-rxvt.lo scrollbar-xterm.lo scrollbar-plain.lo \ strings.lo xdefaults.lo xpm.lo encoding.lo rxvt.lo rxvtcolor.lo rxvtstl.lo iom.lo @@ -59,13 +59,13 @@ RXVTD_BINNAME=$(DESTDIR)$(bindir)/$(RXVT_BASENAME)d$(EXEEXT) RXVTD_VERNAME=$(DESTDIR)$(bindir)/$(RXVT_BASENAME)d-$(VERSION)$(EXEEXT) RXVT_OLDNAME=$(DESTDIR)$(bindir)/$(RXVT_BASENAME)-old$(EXEEXT) -EXTPROS = command.extpro defaultfont.extpro grkelot.extpro \ +EXTPROS = command.extpro defaultfont.extpro \ init.extpro logging.extpro main.extpro menubar.extpro misc.extpro \ netdisp.extpro ptytty.extpro screen.extpro scrollbar.extpro \ scrollbar-rxvt.extpro scrollbar-next.extpro scrollbar-xterm.extpro scrollbar-plain.intpro \ strings.extpro xdefaults.extpro xpm.extpro -INTPROS = command.intpro defaultfont.intpro grkelot.intpro \ +INTPROS = command.intpro defaultfont.intpro \ init.intpro logging.intpro main.intpro menubar.intpro misc.intpro \ netdisp.intpro ptytty.intpro screen.intpro scrollbar.intpro \ scrollbar-rxvt.intpro scrollbar-next.intpro scrollbar-xterm.intpro scrollbar-plain.intpro \ @@ -193,7 +193,6 @@ rxvtc.o: rxvtc.C $(DEPS) rxvtdaemon.h rxvtstl.h command.o: command.C $(DEPS) command.intpro command.h version.h defaultfont.o: defaultfont.C $(DEPS) defaultfont.intpro defaultfont.h -grkelot.o: grkelot.C $(DEPS) grkelot.intpro grkelot.h init.o: init.C $(DEPS) init.intpro init.h defaultfont.h logging.o: logging.C $(DEPS) logging.intpro logging.h main.o: main.C $(DEPS) main.intpro @@ -217,7 +216,6 @@ iom.o: iom.C $(DEPS) iom.h command.lo: command.C $(DEPS) command.intpro command.h version.h defaultfont.lo: defaultfont.C $(DEPS) defaultfont.intpro defaultfont.h encoding.h -grkelot.lo: grkelot.C $(DEPS) grkelot.intpro grkelot.h init.lo: init.C $(DEPS) init.intpro init.h logging.lo: logging.C $(DEPS) logging.intpro logging.h main.lo: main.C $(DEPS) main.intpro diff --git a/src/command.C b/src/command.C
--- a/src/command.C +++ b/src/command.C @@ -246,22 +246,6 @@ rxvt_term::lookup_key (XKeyEvent &ev) return; } #endif -#ifdef GREEK_SUPPORT - if (keysym == ks_greekmodeswith) - { - greek_mode = !greek_mode; - if (greek_mode) - { - xterm_seq (XTerm_title, - (greek_getmode () == GREEK_ELOT928 - ? "[Greek: iso]" : "[Greek: ibm]"), CHAR_ST); - greek_reset (); - } - else - xterm_seq (XTerm_title, APL_NAME "-" VERSION, CHAR_ST); - return; - } -#endif if (keysym >= 0xFF00 && keysym <= 0xFFFF) { @@ -639,10 +623,6 @@ rxvt_term::lookup_key (XKeyEvent &ev) *ch |= 0x80; meta = 0; } -#endif -#ifdef GREEK_SUPPORT - if (greek_mode) - len = greek_xlat (kbuf, len); #endif /* nil */ ; } @@ -1426,10 +1406,6 @@ rxvt_term::x_cb (XEvent &ev) if (menubar_visible () && isMenuBarWindow (ev.xany.window)) menubar_expose (); #endif -#ifdef RXVT_GRAPHICS - Gr_expose (ev.xany.window); -#endif - } break; @@ -1592,88 +1568,80 @@ rxvt_term::button_press (const XButtonEvent &ev) */ if (ev.window == TermWin.vt) { -#if RXVT_GRAPHICS - if (ev.subwindow != None) - rxvt_Gr_ButtonPress (ev.x, ev.y); - else -#endif - + clickintime = ev.time - MEvent.time < MULTICLICK_TIME; + if (reportmode) { - clickintime = ev.time - MEvent.time < MULTICLICK_TIME; - if (reportmode) - { - /* mouse report from vt window */ - /* save the xbutton state (for ButtonRelease) */ - MEvent.state = ev.state; + /* mouse report from vt window */ + /* save the xbutton state (for ButtonRelease) */ + MEvent.state = ev.state; #ifdef MOUSE_REPORT_DOUBLECLICK - if (ev.button == MEvent.button && clickintime) - { - /* same button, within alloted time */ - MEvent.clicks++; - if (MEvent.clicks > 1) - { - /* only report double clicks */ - MEvent.clicks = 2; - mouse_report (ev); - - /* don't report the release */ - MEvent.clicks = 0; - MEvent.button = AnyButton; - } - } - else + if (ev.button == MEvent.button && clickintime) + { + /* same button, within alloted time */ + MEvent.clicks++; + if (MEvent.clicks > 1) { - /* different button, or time expired */ - MEvent.clicks = 1; - MEvent.button = ev.button; + /* only report double clicks */ + MEvent.clicks = 2; mouse_report (ev); + + /* don't report the release */ + MEvent.clicks = 0; + MEvent.button = AnyButton; } -#else + } + else + { + /* different button, or time expired */ + MEvent.clicks = 1; MEvent.button = ev.button; mouse_report (ev); + } +#else + MEvent.button = ev.button; + mouse_report (ev); #endif /* MOUSE_REPORT_DOUBLECLICK */ - } - else + } + else + { + if (ev.button != MEvent.button) + MEvent.clicks = 0; + switch (ev.button) { - if (ev.button != MEvent.button) - MEvent.clicks = 0; - switch (ev.button) - { - case Button1: - /* allow shift+left click to extend selection */ - if (ev.state & ShiftMask && ! (PrivateModes & PrivMode_mouse_report)) - { - if (MEvent.button == Button1 && clickintime) - selection_rotate (ev.x, ev.y); - else - selection_extend (ev.x, ev.y, 1); - } + case Button1: + /* allow shift+left click to extend selection */ + if (ev.state & ShiftMask && ! (PrivateModes & PrivMode_mouse_report)) + { + if (MEvent.button == Button1 && clickintime) + selection_rotate (ev.x, ev.y); else - { - if (MEvent.button == Button1 && clickintime) - MEvent.clicks++; - else - MEvent.clicks = 1; + selection_extend (ev.x, ev.y, 1); + } + else + { + if (MEvent.button == Button1 && clickintime) + MEvent.clicks++; + else + MEvent.clicks = 1; - selection_click (MEvent.clicks, ev.x, ev.y); - } + selection_click (MEvent.clicks, ev.x, ev.y); + } - MEvent.button = Button1; - break; + MEvent.button = Button1; + break; - case Button3: - if (MEvent.button == Button3 && clickintime) - selection_rotate (ev.x, ev.y); - else - selection_extend (ev.x, ev.y, 1); - MEvent.button = Button3; - break; - } + case Button3: + if (MEvent.button == Button3 && clickintime) + selection_rotate (ev.x, ev.y); + else + selection_extend (ev.x, ev.y, 1); + MEvent.button = Button3; + break; } - MEvent.time = ev.time; - return; } + MEvent.time = ev.time; + return; } /* @@ -1848,93 +1816,85 @@ rxvt_term::button_release (const XButtonEvent &ev) #endif if (ev.window == TermWin.vt) { -#ifdef RXVT_GRAPHICS - if (ev.subwindow != None) - rxvt_Gr_ButtonRelease (ev.x, ev.y); - else -#endif - + if (reportmode) { - if (reportmode) - { - /* mouse report from vt window */ - /* don't report release of wheel "buttons" */ - if (ev.button >= 4) - return; + /* mouse report from vt window */ + /* don't report release of wheel "buttons" */ + if (ev.button >= 4) + return; #ifdef MOUSE_REPORT_DOUBLECLICK - /* only report the release of 'slow' single clicks */ - if (MEvent.button != AnyButton - && (ev.button != MEvent.button - || (ev.time - MEvent.time - > MULTICLICK_TIME / 2))) - { - MEvent.clicks = 0; - MEvent.button = AnyButton; - mouse_report (ev); - } -#else /* MOUSE_REPORT_DOUBLECLICK */ + /* only report the release of 'slow' single clicks */ + if (MEvent.button != AnyButton + && (ev.button != MEvent.button + || (ev.time - MEvent.time + > MULTICLICK_TIME / 2))) + { + MEvent.clicks = 0; MEvent.button = AnyButton; mouse_report (ev); -#endif /* MOUSE_REPORT_DOUBLECLICK */ - return; } - /* - * dumb hack to compensate for the failure of click-and-drag - * when overriding mouse reporting - */ - if (PrivateModes & PrivMode_mouse_report - && bypass_keystate - && ev.button == Button1 && MEvent.clicks <= 1) - selection_extend (ev.x, ev.y, 0); +#else /* MOUSE_REPORT_DOUBLECLICK */ + MEvent.button = AnyButton; + mouse_report (ev); +#endif /* MOUSE_REPORT_DOUBLECLICK */ + return; + } + /* + * dumb hack to compensate for the failure of click-and-drag + * when overriding mouse reporting + */ + if (PrivateModes & PrivMode_mouse_report + && bypass_keystate + && ev.button == Button1 && MEvent.clicks <= 1) + selection_extend (ev.x, ev.y, 0); - switch (ev.button) - { - case Button1: - case Button3: - selection_make (ev.time); - break; - case Button2: - selection_request (ev.time, ev.x, ev.y); - break; + switch (ev.button) + { + case Button1: + case Button3: + selection_make (ev.time); + break; + case Button2: + selection_request (ev.time, ev.x, ev.y); + break; #ifdef MOUSE_WHEEL - case Button4: - case Button5: - { - int i; - page_dirn v; - - v = (ev.button == Button4) ? UP : DN; - if (ev.state & ShiftMask) - i = 1; - else if ((Options & Opt_mouseWheelScrollPage)) - i = TermWin.nrow - 1; - else - i = 5; + case Button4: + case Button5: + { + int i; + page_dirn v; + + v = (ev.button == Button4) ? UP : DN; + if (ev.state & ShiftMask) + i = 1; + else if ((Options & Opt_mouseWheelScrollPage)) + i = TermWin.nrow - 1; + else + i = 5; # ifdef MOUSE_SLIP_WHEELING - if (ev.state & ControlMask) - { - mouse_slip_wheel_speed += (v ? -1 : 1); - mouse_slip_wheel_delay = SCROLLBAR_CONTINUOUS_DELAY; - } + if (ev.state & ControlMask) + { + mouse_slip_wheel_speed += (v ? -1 : 1); + mouse_slip_wheel_delay = SCROLLBAR_CONTINUOUS_DELAY; + } # endif # ifdef JUMP_MOUSE_WHEEL - scr_page (v, i); + scr_page (v, i); + scr_refresh (SMOOTH_REFRESH); + scrollbar_show (1); +# else + while (i--) + { + scr_page (v, 1); scr_refresh (SMOOTH_REFRESH); scrollbar_show (1); -# else - while (i--) - { - scr_page (v, 1); - scr_refresh (SMOOTH_REFRESH); - scrollbar_show (1); - } + } # endif - } - break; + } + break; #endif - } } } #ifdef MENUBAR @@ -3474,7 +3434,6 @@ rxvt_term::process_graphics () { unsigned char ch, cmd = cmd_getc (); -#ifndef RXVT_GRAPHICS if (cmd == 'Q') { /* query graphics */ tt_printf ("\033G0\n"); /* no graphics */ @@ -3484,51 +3443,6 @@ rxvt_term::process_graphics () do ch = cmd_getc (); while (ch != ':'); -#else - unsigned int nargs; - int args[NGRX_PTS]; - unsigned char *text = NULL; - - if (cmd == 'Q') - { /* query graphics */ - tt_printf ("\033G1\n"); /* yes, graphics (color) */ - return; - } - for (nargs = 0; nargs < (sizeof (args) / sizeof (args[0])) - 1;) - { - int neg; - - ch = cmd_getc (); - neg = (ch == '-'); - if (neg || ch == '+') - ch = cmd_getc (); - - for (args[nargs] = 0; isdigit (ch); ch = cmd_getc ()) - args[nargs] = args[nargs] * 10 + (ch - '0'); - if (neg) - args[nargs] = -args[nargs]; - - nargs++; - args[nargs] = 0; - if (ch != ';') - break; - } - - if ((cmd == 'T') && (nargs >= 5)) - { - int i, len = args[4]; - - text = (unsigned char *)rxvt_malloc ((len + 1) * sizeof (char)); - - if (text != NULL) - { - for (i = 0; i < len; i++) - text[i] = cmd_getc (); - text[len] = '\0'; - } - } - Gr_do_graphics (cmd, nargs, args, text); -#endif } /*}}} */ diff --git a/src/feature.h b/src/feature.h
--- a/src/feature.h +++ b/src/feature.h @@ -209,13 +209,6 @@ /* #define CTRL_TAB_MAKES_META */ /* #define MOD4_TAB_MAKES_META */ -/* - * default mode switch when greek keyboard is enabled (i.e. GREEK_SUPPORT) - */ -#ifndef GREEK_KEYBOARD_MODESWITCH -# define GREEK_KEYBOARD_MODESWITCH XK_Mode_switch -#endif - /*--------------------------------MOUSE---------------------------------*/ /* * Disable sending escape sequences (up, down, page up/down) diff --git a/src/grkelot.C b/src/grkelot.C deleted file mode 100644 index e26ec26d4caad105ccee566c09f7bcda3585f978..0000000000000000000000000000000000000000 --- a/src/grkelot.C +++ /dev/null @@ -1,427 +0,0 @@ -/*---------------------------------*C*--------------------------------------* - * File: grkelot.c - *--------------------------------------------------------------------------* - * - * All portions of code are copyright by their respective author/s. - * Copyright (c) 1994,1995 Angelo Haritsis. All rights reserved. - * - original version - * Copyright (c) 1997,1998 Oezger Kesim <kesim@math.fu-berlin.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - *--------------------------------------------------------------------------* - * Synopsis: string -> greek ELOT928 or IBM437 string; - * 4-state FSM implementation. - * - * System: Any (ANSI C) - * - * This is code derived from a more generic key remapper written by the same - * author and used in other environments. It was not written only - * for greek kbd bindings. An extension to other languages is easy - * (well don't know how the FSM lends itself to Far East languages). - * - * The FSM can have MAX_STATES states (change it for more). - * Each state contains: - * 1. many tranlsation tables (registered via kstate_add_xlat ()) - * 2. many switch codes for transition to other states (registered via - * kstate_add_switcher ()) : limit is static now: MAX_SWITCHER - * 3. life: the number of xlations allowed in a state (0 = unlimited) - * - * Format of tranlation strings: - * <first>-<last>:n1,n2,n3,... - * Format of switcher string: - * A<char>:<state_no> - * (other switchers apart from A=ascii can be supported; not in this context) - * Format of life string: - * L<N> (N=0,1,...) - *-------------------------------------------------------------------------* - * Written by Angelo Haritis. - * - * Redistribution and use in source and binary forms are permitted provided - * that the above copyright notice and this paragraph are duplicated in all - * such forms and that any documentation, advertising materials, and other - * materials related to such distribution and use acknowledge that the - * software was developed by Angelo Haritsis. - * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR - * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED - * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE. - * - * NB: DO NOT ALTER! THIS CODE IS USED IN MANY PLATFORMS!!! - * - * TODO: make it more dynamic (linked lists is an idea but slower) - */ - -#define RXVT /* define for use by rxvt */ - -#ifdef RXVT -#include "../config.h" /* NECESSARY */ -#include "rxvt.h" /* NECESSARY */ -#include "grkelot.intpro" /* PROTOS for internal routines */ -#endif /* RXVT */ - -#ifdef GREEK_SUPPORT -#include "grkelot.h" -#include <stdlib.h> -#include <string.h> - -/* --- Macros, Types --------- */ -#define MAX_STATES 4 /* max # states for the FSM */ -#define MAX_SWITCHER 2U /* per state */ -#define MAX_VAL 256 /* for temp allocation */ - -typedef unsigned char u_char; -typedef unsigned int u_int; -typedef unsigned long u_long; - -typedef struct s_xlat - { - u_int first, last; - u_int *pval; /* array of translated values */ - } -K_XLAT; - -typedef struct s_switch - { - u_char type; /* Ascii, Virtual, Scan */ - u_int code; - u_char nextstate; - u_char on; /* current state of key: 0 = off */ - } -K_SWITCH; - -typedef struct s_state - { - u_int num_xlat; /* number of translations */ - K_XLAT *xlat; /* State translations ((dynamic - realloc'ed) */ - u_int num_switcher; /* number of switcher keys */ - K_SWITCH switcher[MAX_SWITCHER]; /* switcher keys to other states */ - u_char life; /* 0 = until switched by key */ - u_char prev_state; /* filled when jumped to a new state */ - } -K_STATE; - -/* type for each one of the different greek standards (xlat types) */ -typedef struct s_xlat_type - { - char *plain; - char *accent; - char *accent_xtra; - char *umlaut; - char *acc_uml; - } -XLAT_TYPE; - -/* --- Local Data ------------ */ -static K_STATE State[MAX_STATES]; - -/* Current State */ -static u_char nStateNow = 0; -static K_STATE *pStateNow = &State[0]; -static int GreekMode = GREEK_ELOT928; - -/* - * The following are hard-coded for now. The idea is that such strings would - * be read from a config file making it possible to change language/encodings - * more flexibly. - */ -/* elot 928 xlations */ -static char elot_xlat_plain[] = "65-122:193,194,216,196,197,214,195,199,201,206,202,203,204,205,207,208,81,209,211,212,200,217,87,215,213,198,91,92,93,94,95,96,225,226,248,228,229,246,227,231,233,238,234,235,236,237,239,240,113,241,243,244,232,249,242,247,245,230"; - -/* c and s give copyright and section sign */ -static char elot_xlat_acc[] = "65-122:182,194,216,196,184,214,195,185,186,206,202,203,204,205,188,208,81,209,211,212,200,191,87,215,190,198,91,92,93,94,95,96,220,226," /*248 */ "169,228,221,246,227,222,223,238,234,235,236,237,252,240,113,241," /*243 */ "167,244,232,254,242,247,253,230"; -static char elot_xlat_acc_xtra[] = "46-62:183,47,48,49,50,51,52,53,54,55,56,57,58,59,171,61,187"; /* anw teleia, quotes */ -static char elot_xlat_uml[] = "65-122:193,194,216,196,197,214,195,199,218,206,202,203,204,205,207,208,81,209,211,212,200,217,87,215,219,198,91,92,93,94,95,96,225,226,248,228,229,246,227,231,250,238,234,235,236,237,239,240,113,241,243,244,232,249,242,247,251,230"; -static char elot_xlat_umacc[] = "65-122:193,194,216,196,197,214,195,199,201,206,202,203,204,205,207,208,81,209,211,212,200,217,87,215,213,198,91,92,93,94,95,96,225,226,248,228,229,246,227,231,192,238,234,235,236,237,239,240,113,241,243,244,232,249,242,247,224,230"; - -/* ibm 437 xlations */ -static char i437_xlat_plain[] = "65-122:128,129,150,131,132,148,130,134,136,141,137,138,139,140,142,143,81,144,145,146,135,151,87,149,147,133,91,92,93,94,95,96,152,153,175,155,156,173,154,158,160,165,161,162,163,164,166,167,113,168,169,171,159,224,170,174,172,157"; -static char i437_xlat_acc[] = "65-122:234,129,150,131,235,148,130,236,237,141,137,138,139,140,238,143,81,144,145,146,135,240,87,149,239,133,91,92,93,94,95,96,225,153,175,155,226,173,154,227,229,165,161,162,163,164,230,167,113,168,169,171,159,233,170,174,231,157"; -static char i437_xlat_acc_xtra[] = "46-46:250"; /* anw teleia */ -static char i437_xlat_uml[] = "65-122:128,129,150,131,132,148,130,134,136,141,137,138,139,140,142,143,81,144,145,146,135,151,87,149,147,133,91,92,93,94,95,96,152,153,175,155,156,173,154,158,228,165,161,162,163,164,166,167,113,168,169,171,159,224,170,174,232,157"; -static char i437_xlat_umacc[] = "65-122:128,129,150,131,132,148,130,134,136,141,137,138,139,140,142,143,81,144,145,146,135,151,87,149,147,133,91,92,93,94,95,96,152,153,175,155,156,173,154,158,42,165,161,162,163,164,166,167,113,168,169,171,159,224,170,174,42,157"; - -/* - * currently ELOT928 and IBM437 are supported; easy to include others - * (not recommended: stick to just these 2 if not only the ELOT one) - */ -static XLAT_TYPE xlat_type[] = - { - {elot_xlat_plain, elot_xlat_acc, elot_xlat_acc_xtra, elot_xlat_uml, elot_xlat_umacc}, - {i437_xlat_plain, i437_xlat_acc, i437_xlat_acc_xtra, i437_xlat_uml, i437_xlat_umacc}, - }; - -/* the current trasnaltion type */ -static XLAT_TYPE *xlat_now = &xlat_type[GREEK_ELOT928]; - -#define NUM_XLAT_TYPES (sizeof(xlat_type) / sizeof(xlat_type[0])) - -static void kstate_add_xlat (char *str); -static void kstate_add_switcher (char *str); -static void kstate_set_life (char *str); - -/* --- Functions ------------- */ -void -kstate_setcurr (int stateno) -{ - u_char prev_state; - - if ((u_int) stateno > (u_int) MAX_STATES) - return; - if (pStateNow->life == 1) - prev_state = pStateNow->prev_state; - else - prev_state = nStateNow; - pStateNow = &State[nStateNow = stateno]; - pStateNow->prev_state = prev_state; -} - -void -kstate_init (void) -{ - pStateNow->num_xlat = pStateNow->num_switcher = pStateNow->life = pStateNow->prev_state = 0; - pStateNow->xlat = NULL; -} - -void -kstate_end (void) -{ - int i; - - for (i = 0; i < pStateNow->num_xlat; i++) - free (pStateNow->xlat[i].pval); - if (pStateNow->num_xlat > 0) - free (pStateNow->xlat); -} - -/* - * Hard coded ELOT-928 translations. Could read these from an rc-type file - * to support other remappers. - */ -void -kstate_init_all (int greek_mode) -{ - /* the translation tables for the 4 FSM states for ELOT-928 mappings */ - int i; - - for (i = 0; i < MAX_STATES; i++) - { - kstate_setcurr (i); - kstate_init (); - } - if (greek_mode < 0 || greek_mode >= NUM_XLAT_TYPES) /* avoid death */ - greek_mode = GREEK_ELOT928; - xlat_now = &xlat_type[greek_mode]; - kstate_setcurr (0); - kstate_add_xlat (xlat_now->plain); - kstate_add_switcher ("A;:1"); - kstate_add_switcher ("A::2"); - kstate_set_life ("L0"); - - kstate_setcurr (1); - kstate_add_xlat (xlat_now->accent); - kstate_add_xlat (xlat_now->accent_xtra); - kstate_add_switcher ("A::3"); - kstate_set_life ("L1"); - - kstate_setcurr (2); - kstate_add_xlat (xlat_now->umlaut); - kstate_add_switcher ("A;:3"); - kstate_set_life ("L1"); - - kstate_setcurr (3); - kstate_add_xlat (xlat_now->acc_uml); - kstate_set_life ("L1"); -} - -void -kstate_end_all (void) -{ - int i; - - for (i = 0; i < MAX_STATES; i++) - { - kstate_setcurr (i); - kstate_end (); - } - kstate_setcurr (0); -} - -/* - * reset FSM - */ -void -kstate_reset (void) -{ - kstate_setcurr (0); -} - -void -kstate_add_xlat (char *str) -{ - K_XLAT *xlat; - u_int *pval_tmp; - char *sval; - int i; - - if (str == NULL) - return; - /* add a new xlat table in state */ - if (pStateNow->num_xlat == 0) - { - pStateNow->xlat = malloc (sizeof (K_XLAT)); - } - else /* prefer contiguous data, realloc */ - pStateNow->xlat = realloc (pStateNow->xlat, (pStateNow->num_xlat + 1) * sizeof (K_XLAT)); - xlat = &pStateNow->xlat[pStateNow->num_xlat]; - /* parse str and derive first, last, values */ - xlat->first = (u_int) atoi (strtok (str, "-")); - xlat->last = (u_int) atoi (strtok (NULL, ":")); - i = 0; - pval_tmp = calloc (MAX_VAL, sizeof (K_XLAT)); - while ((sval = strtok (NULL, ",")) != NULL) - pval_tmp[i++] = (u_int) (atoi (sval)); - xlat->pval = calloc (i, sizeof (K_XLAT)); - if (xlat->pval != NULL) - memcpy (xlat->pval, pval_tmp, i * sizeof (u_int)); - free (pval_tmp); - pStateNow->num_xlat++; -} - -/* - * Ascii only for this implementation - */ -void -kstate_add_switcher (char *str) -{ - K_SWITCH *switcher; - - if (str == NULL) - return; - if (pStateNow->num_switcher >= MAX_SWITCHER) - return; - switcher = &pStateNow->switcher[pStateNow->num_switcher]; - switch (switcher->type = str[0]) - { - case 'A': /* ascii eg: A;:2 */ - switcher->code = str[1]; - switcher->nextstate = atoi (&str[3]); - break; - } - switcher->on = 0; - pStateNow->num_switcher++; -} - -/* L1 or L0 */ -void -kstate_set_life (char *str) -{ - pStateNow->life = atoi (&str[1]); -} - -unsigned int -kstate_cxlat (unsigned int c) -{ - int i; - - /* check for ascii switcher */ - for (i = 0; i < pStateNow->num_switcher; i++) - if (pStateNow->switcher[i].type == 'A' && /* only ascii here */ - c == pStateNow->switcher[i].code) - { - kstate_setcurr (pStateNow->switcher[i].nextstate); - pStateNow->switcher[i].on = 1; - return ((unsigned int)-1); - } - /* do translation */ - for (i = 0; i < pStateNow->num_xlat; i++) - if (c >= pStateNow->xlat[i].first && c <= pStateNow->xlat[i].last) - { - c = pStateNow->xlat[i].pval[c - pStateNow->xlat[i].first]; - break; - } - /* switch back to previous state if life of current is 1 */ - if (pStateNow->life == 1) - kstate_setcurr (pStateNow->prev_state); - return (c); -} - -#ifdef RXVT -void -greek_init (void) -{ - kstate_init_all (GreekMode); -} - -void -greek_end (void) -{ - kstate_end_all (); -} - -void -greek_reset (void) -{ - kstate_reset (); -} - -void -greek_setmode (int greek_mode) -{ - GreekMode = greek_mode; -} - -int -greek_getmode (void) -{ - return (GreekMode); -} - -/* - * xlate a given string in-place - return new string length - */ -int -greek_xlat (char *s, int num_chars) -{ - int i, count; - unsigned int c; - - for (i = 0, count = 0; i < num_chars; i++) - { - c = kstate_cxlat ((unsigned int)s[i]); - if (c != -1) - s[count++] = (char)c; - } - s[count] = '\0'; - return (count); - -} - -#ifdef TEST -int -main (void) -{ - /*char text[] = "abcdef;aGDZXC"; */ - char text[] = "abcdef;a:ibgdezhuiklmnjoprstyfxcv"; - - kstate_init_all (GREEK_ELOT928); - printf ("text: %s\n", text); - greek_xlat (text, strlen (text)); - printf ("xlat'ed text: %s\n", text); - kstate_end_all (); - return 0; -} -#endif -#endif /* RXVT */ - -#endif /* GREEK_SUPPORT */ diff --git a/src/grkelot.h b/src/grkelot.h deleted file mode 100644 index a20e0f48f611013f83c8562da331f4a5d73cd34b..0000000000000000000000000000000000000000 --- a/src/grkelot.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - * File: grkelot.h - * - * Synopsis: string -> greek ELOT928 string; 4-state FSM. - * - * Copyright (c) 1994 Angelo Haritsis. All rights reserved. - * Copyright (c) 1997,1998 Oezguer Kesim <kesim@math.fu-berlin.de> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - */ - -#ifndef GRKELOT_H -#define GRKELOT_H - -#define GREEK_ELOT928 0 -#define GREEK_IBM437 1 - -#ifdef __cplusplus -extern "C" { -#endif - extern void greek_init (void); - extern void greek_end (void); - extern void greek_reset (void); - extern void greek_setmode (int greek_mode); - extern int greek_getmode (void); - extern int greek_xlat (char *s, int num_chars); -#ifdef __cplusplus -} -#endif -#endif /* _GRKELOT_H */ diff --git a/src/init.C b/src/init.C
--- a/src/init.C +++ b/src/init.C @@ -401,10 +401,6 @@ rxvt_term::init_vars () ks_smallfont = XK_less; #endif -#ifdef GREEK_SUPPORT - ks_greekmodeswith = GREEK_KEYBOARD_MODESWITCH; -#endif - refresh_limit = 1; refresh_type = SLOW_REFRESH; prev_nrow = prev_ncol = 0; @@ -903,10 +899,6 @@ rxvt_term::init_command (const char *const *argv) SavedModes |= PrivMode_menuBar; } -#ifdef GREEK_SUPPORT - greek_init (); -#endif - #ifdef CURSOR_BLINK if (Options & Opt_cursorBlink) (void)gettimeofday (&lastcursorchange, NULL); diff --git a/src/main.C b/src/main.C
--- a/src/main.C +++ b/src/main.C @@ -264,9 +264,6 @@ rxvt_term::init (int argc, const char *const *argv) init_xlocale (); scr_reset (); /* initialize screen */ -#ifdef RXVT_GRAPHICS - Gr_reset (); /* reset graphics */ -#endif #if 0 XSynchronize (display->display, True); @@ -997,11 +994,6 @@ rxvt_term::resize_all_windows (unsigned int width, unsigned int height, int igno XMoveResizeWindow (display->display, TermWin.vt, window_vt_x, window_vt_y, TermWin_TotalWidth (), TermWin_TotalHeight ()); -#ifdef RXVT_GRAPHICS - if (old_height) - Gr_Resize (old_width - szHint.base_width, - old_height - szHint.base_height); -#endif scr_clear (); #ifdef XPM_BACKGROUND resize_pixmap (); diff --git a/src/protos.h b/src/protos.h
--- a/src/protos.h +++ b/src/protos.h @@ -3,13 +3,6 @@ #include "defaultfont.extpro" -#ifdef RXVT_GRAPHICS -# include "graphics.extpro" -#endif -#ifdef GREEK_SUPPORT -# include "grkelot.extpro" -#endif - #include "init.extpro" #ifdef UTMP_SUPPORT diff --git a/src/rxvt.h b/src/rxvt.h
--- a/src/rxvt.h +++ b/src/rxvt.h @@ -51,9 +51,6 @@ typedef struct { } ttymode_t; #endif -#ifdef GREEK_SUPPORT -# include "grkelot.h" -#endif #ifdef XPM_BACKGROUND # ifdef XPM_INC_X11 # include <X11/xpm.h> @@ -474,10 +471,6 @@ enum { #endif #if (MENUBAR_MAX) Rs_menu, -#endif -#ifdef GREEK_SUPPORT - Rs_greek_keyboard, - Rs_greektoggle_key, #endif Rs_loginShell, Rs_jumpScroll, @@ -868,16 +861,10 @@ struct rxvt_term : rxvt_vars { selection_wait, selection_type; /* ---------- */ -#ifdef GREEK_SUPPORT - short greek_mode; /* greek keyboard mode */ -#endif short rvideo; int16_t num_scr; /* screen: number lines scrolled */ unsigned int prev_ncol, /* screen: previous number of columns */ prev_nrow; /* screen: previous number of rows */ -#ifdef RXVT_GRAPHICS - uint16_t gr_prev_start; -#endif /* ---------- */ rend_t rstyle; /* ---------- */ @@ -989,9 +976,6 @@ struct rxvt_term : rxvt_vars { #if defined (HOTKEY_CTRL) || defined (HOTKEY_META) KeySym ks_bigfont, ks_smallfont; #endif -#ifdef GREEK_SUPPORT - KeySym ks_greekmodeswith; -#endif #ifdef USE_XIM rxvt_xim *input_method; XIC Input_Context; @@ -1000,10 +984,6 @@ struct rxvt_term : rxvt_vars { #endif struct mouse_event MEvent; XComposeStatus compose; -#ifdef RXVT_GRAPHICS - int graphics_up; - struct grwin_t *gr_root; -#endif ttymode_t tio; #ifdef UTMP_SUPPORT # ifdef HAVE_STRUCT_UTMP @@ -1022,10 +1002,6 @@ struct rxvt_term : rxvt_vars { bgPixmap_t bgPixmap; XpmAttributes xpmAttr; /* originally loaded pixmap and its scaling */ #endif -#ifdef MULTICHAR_SET - int oldcursormulti; - void (*multichar_decode) (unsigned char *str, int len); -#endif #ifndef RESET_TTY_TO_COMMON_DEFAULTS struct stat ttyfd_stat; /* original status of our tty */ #endif @@ -1037,9 +1013,6 @@ struct rxvt_term : rxvt_vars { bar_t BarList; # endif /* (MENUBAR_MAX > 1) */ #endif -#ifdef RXVT_GRAPHICS - Window gr_last_id; -#endif #ifdef CURSOR_BLINK struct timeval lastcursorchange; #endif diff --git a/src/screen.C b/src/screen.C
--- a/src/screen.C +++ b/src/screen.C @@ -487,9 +487,6 @@ rxvt_term::scr_poweron () scr_clear (); scr_refresh (SLOW_REFRESH); -#ifdef RXVT_GRAPHICS - Gr_reset (); -#endif } /* ------------------------------------------------------------------------- * @@ -595,26 +592,9 @@ rxvt_term::scr_change_screen (int scrn) SWAP_IT (screen.flags, swap.flags, int); screen.flags |= Screen_VisibleCursor; swap.flags |= Screen_VisibleCursor; - -# ifdef RXVT_GRAPHICS - - if (Gr_Displayed ()) - { - Gr_scroll (0); - Gr_ChangeScreen (); - } -# endif #else # ifdef SCROLL_ON_NO_SECONDARY -# ifdef RXVT_GRAPHICS - if (Gr_Displayed ()) - Gr_ClearScreen (); -# endif - if (current_screen == PRIMARY -# ifdef RXVT_GRAPHICS - && !Gr_Displayed () -# endif - ) + if (current_screen == PRIMARY) scr_scroll_text (0, (prev_nrow - 1), prev_nrow, 0); # endif #endif @@ -774,11 +754,6 @@ rxvt_term::scr_scroll_text (int row1, int row2, int count, int spec) (unsigned int)j, rstyle); } -#ifdef RXVT_GRAPHICS - if (Gr_Displayed ()) - Gr_scroll (count); -#endif - return count; } @@ -1077,10 +1052,6 @@ rxvt_term::scr_gotorc (int row, int col, int relative) { want_refresh = 1; ZERO_SCROLLBACK (); -#ifdef RXVT_GRAPHICS - if (Gr_Displayed ()) - Gr_scroll (0); -#endif D_SCREEN ((stderr, "rxvt_scr_gotorc (r:%s%d,c:%s%d): from (r:%d,c:%d)", (relative & R_RELATIVE ? "+" : ""), row, (relative & C_RELATIVE ? "+" : ""), col, screen.cur.row, screen.cur.col)); @@ -1138,11 +1109,6 @@ rxvt_term::scr_index (enum page_dirn direction) ZERO_SCROLLBACK (); -#ifdef RXVT_GRAPHICS - if (Gr_Displayed ()) - Gr_scroll (0); -#endif - screen.flags &= ~Screen_WrapNext; if ((screen.cur.row == screen.bscroll && direction == UP) || (screen.cur.row == screen.tscroll && direction == DN)) @@ -1170,11 +1136,6 @@ rxvt_term::scr_erase_line (int mode) D_SCREEN ((stderr, "rxvt_scr_erase_line (%d) at screen row: %d", mode, screen.cur.row)); ZERO_SCROLLBACK (); -#ifdef RXVT_GRAPHICS - if (Gr_Displayed ()) - Gr_scroll (0); -#endif - selection_check (1); screen.flags &= ~Screen_WrapNext; @@ -1252,9 +1213,6 @@ rxvt_term::scr_erase_screen (int mode) break; case 2: /* erase whole screen */ selection_check (3); -#ifdef RXVT_GRAPHICS - Gr_ClearScreen (); -#endif row = 0; num = TermWin.nrow; break; @@ -1333,11 +1291,6 @@ rxvt_term::scr_insdel_lines (int count, int insdel) ZERO_SCROLLBACK (); -#ifdef RXVT_GRAPHICS - if (Gr_Displayed ()) - Gr_scroll (0); -#endif - selection_check (1); if (screen.cur.row > screen.bscroll) @@ -1372,11 +1325,6 @@ rxvt_term::scr_insdel_chars (int count, int insdel) want_refresh = 1; ZERO_SCROLLBACK (); -#ifdef RXVT_GRAPHICS - if (Gr_Displayed ()) - Gr_scroll (0); -#endif - if (count <= 0) return; @@ -1810,10 +1758,6 @@ rxvt_term::scr_changeview (uint16_t oldviewstart) if (TermWin.view_start != oldviewstart) { want_refresh = 1; -#ifdef RXVT_GRAPHICS - if (Gr_Displayed ()) - Gr_scroll (0); -#endif num_scr -= (TermWin.view_start - oldviewstart); } return (int) (TermWin.view_start - oldviewstart); diff --git a/src/xdefaults.C b/src/xdefaults.C
--- a/src/xdefaults.C +++ b/src/xdefaults.C @@ -1,7 +1,7 @@ /*--------------------------------*-C-*---------------------------------* * File: xdefaults.c *----------------------------------------------------------------------* - * $Id: xdefaults.C,v 1.11 2004/02/13 12:16:21 pcg Exp $ + * $Id: xdefaults.C,v 1.12 2004/02/22 08:09:38 pcg Exp $ * * All portions of code are copyright by their respective author/s. * Copyright (c) 1994 Robert Nation <nation@rocket.sanders.lockheed.com> @@ -199,11 +199,6 @@ optList[] = { STRG (Rs_imLocale, "imLocale", "imlocale", "string", "locale to use for input method"), #endif #endif /* USE_XIM */ -#ifdef GREEK_SUPPORT - STRG (Rs_greek_keyboard, "greek_keyboard", "grk", "mode", - "greek keyboard mapping; mode = iso | ibm"), - RSTRG (Rs_greektoggle_key, "greektoggle_key", "keysym"), -#endif STRG (Rs_name, NULL, "name", "string", "client instance, icon, and title strings"), STRG (Rs_title, "title", "title", "string", "title name for window"), @@ -325,12 +320,6 @@ static const char optionsstring[] = "Options: " # endif #endif "," -#if defined(GREEK_SUPPORT) - "Greek," -#endif -#if defined(RXVT_GRAPHICS) - "graphics," -#endif #if defined(NO_BACKSPACE_KEY) "no_backspace," #endif @@ -998,40 +987,16 @@ rxvt_term::extract_resources (Display *display __attribute__ ((unused)), const c * even without resources, at least do this setup for command-line * options and command-line long options */ -#ifdef MULTICHAR_SET - set_multichar_encoding (rs[Rs_multichar_encoding]); -#endif -#ifdef GREEK_SUPPORT - /* this could be a function in grkelot.c */ - /* void set_greek_keyboard (const char * str); */ - if (rs[Rs_greek_keyboard]) - { - if (!STRCMP (rs[Rs_greek_keyboard], "iso")) - greek_setmode (GREEK_ELOT928); /* former -grk9 */ - else if (!STRCMP (rs[Rs_greek_keyboard], "ibm")) - greek_setmode (GREEK_IBM437); /* former -grk4 */ - } - { - KeySym sym; - - if (rs[Rs_greektoggle_key] - && ((sym = XStringToKeysym (rs[Rs_greektoggle_key])) != 0)) - ks_greekmodeswith = sym; - } -#endif /* GREEK_SUPPORT */ #if defined (HOTKEY_CTRL) || defined (HOTKEY_META) - - { - KeySym sym; - - if (rs[Rs_bigfont_key] - && ((sym = XStringToKeysym (rs[Rs_bigfont_key])) != 0)) - ks_bigfont = sym; - if (rs[Rs_smallfont_key] - && ((sym = XStringToKeysym (rs[Rs_smallfont_key])) != 0)) - ks_smallfont = sym; - } + KeySym sym; + + if (rs[Rs_bigfont_key] + && ((sym = XStringToKeysym (rs[Rs_bigfont_key])) != 0)) + ks_bigfont = sym; + if (rs[Rs_smallfont_key] + && ((sym = XStringToKeysym (rs[Rs_smallfont_key])) != 0)) + ks_smallfont = sym; #endif }
-----END OF PAGE-----
-- Response ended
-- Page fetched on Sun Jun 2 13:49:30 2024