-- 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: a245befb01bead0b7500ff732a5c19a320bebb05:
path_to:
revision_to:

git.thebackupbox.net

rxvt-unicode-sixel

git://git.thebackupbox.net/rxvt-unicode-sixel

commit a245befb01bead0b7500ff732a5c19a320bebb05
Author: Marc Lehmann <schmorp@schmorp.de>
Date:   Fri Apr 2 20:41:01 2004 +0000

    *** empty log message ***

diff --git a/README.unicode b/README.unicode

index 41f8a1a6b8f567f47e79702be607b9bd226f6bd0..

index ..c2e662580f78cd80e75b8d24bd5775477f4bcabc 100644

--- a/README.unicode
+++ b/README.unicode
@@ -1,8 +1,5 @@
 Sketchy overview of the details:

-- gcc-3.x is probably required to compile this release, g++-3.x, too, as it
-  has been re-written in C++ (and a corresponding version of libstdc++).
-
 - the options used in the ./reconf script should work. everything else
   might work and might be broken.

@@ -24,9 +21,9 @@ Sketchy overview of the details:
   using the imLocale ressource or switch, e.g.:
   LC_CTYPE=ja_JP.UTF-8 rxvt -imlocale ja_JP.EUC-JP

-- keyboard input is limited by the selected locale (and X's support for it),
-  tty input and output likewise. selection support is mostly independent
-  of the locale.
+- keyboard input is limited by the selected locale (and X's support for
+  it), tty input and output likewise. Selection support is independent of
+  the locale.

 - "-fn" commandline switch and *.font ressource accepts a comma
   seperated list of fontnames:
@@ -35,6 +32,7 @@ Sketchy overview of the details:
   9x15bold			the same
   xft:Andale Mono		a xft font
   xft:Andale Mono:pixelsize=20
+  9x15bold,terminus-15

 - the _first_ font in the list selects the cell width/height. All other
   fonts must be smaller or same sized, or they will be ignored or worse.
@@ -42,21 +40,21 @@ Sketchy overview of the details:
   size is not specified in the XLFD.

 - the fonts will be tried in the order given when searching for a font
-  to display a specific character. if you are e.g. mainly interested in
-  japanese you might want to put a japanese font first to get the ascii
-  characters in it. If you are mainly interested in a text terminal and
-  only want to display other characters you should put a ascii/is8859 text
-  font first (e.g. "9x15bold") and let rxvt sort it out.
+  to display a specific character. if you are e.g. mainly interested
+  in japanese you might want to put a japanese font first to get the
+  ascii characters glyphs from it. If you are mainly interested in a text
+  terminal and only want to display other characters you should put a
+  ascii/is8859 text font first (e.g. "9x15bold") and let rxvt sort it out.

 - xft fonts require gobs of memory and generally are slow. try not to
-  antialias them ("Font:antialias=false") when possible. Often looks
+  antialias them ("Font:antialias=false") when possible. Might look
   better, too, as they then match other fonts in weight.

 - src/defaultfont.C lists the fallback fonts that are tried when a
   character cannot be displayed with the current list of fonts.

 - using bold fonts for the bold attribute is not supported by xft
-  and will not be supported by rxvt-unicode, either, even for normal x11
+  and will not be supported by rxvt-unicode, either, even for normal X11
   fonts.

 - normal bold text will use reverse video unless the colorBD resource has
diff --git a/src/ptytty.C b/src/ptytty.C

index 2ee5b8f131e622f5ba04fcd2b8bdd1643a47bc98..

index ..61cd352d4c954775bee32eee0a5bd9a471ea17d7 100644

--- a/src/ptytty.C
+++ b/src/ptytty.C
@@ -54,6 +54,9 @@
 #if defined(PTYS_ARE_PTMX) && !defined(__CYGWIN32__)
 # include <sys/stropts.h>      /* for I_PUSH */
 #endif
+#ifdef HAVE_ISASTREAM
+# include <stropts.h>
+#endif

 #ifdef DEBUG_TTY
 # define D_TTY(x)		fprintf x ; fputc('\n', stderr) ; fflush(stderr)
diff --git a/src/rxvt.h b/src/rxvt.h

index 49b98a17cc158138af3ce8986d0689c476e8661b..

index ..5ee6d665cf94b679c2e3199ee7970a11516f7138 100644

--- a/src/rxvt.h
+++ b/src/rxvt.h
@@ -5,6 +5,8 @@

 #include "feature.h"

+#include <limits.h>
+
 #include <X11/cursorfont.h>
 #include <X11/keysym.h>
 #include <X11/keysymdef.h>
@@ -354,13 +356,13 @@ enum {
   XTerm_name             =  0,
   XTerm_iconName         =  1,
   XTerm_title            =  2,
-  XTerm_property         =  3,      // change X property, not yet implemented
+  XTerm_property         =  3,      // change X property
   XTerm_Color            =  4,      // change colors
   XTerm_Color00          = 10,      // not implemented, CLASH!
   XTerm_Color01          = 11,      // not implemented
   XTerm_Color_cursor     = 12,      // change actual 'Cursor' color
-  XTerm_Color_pointer    = 13,      // change actual 'Pointer' color
-  XTerm_Color04          = 14,      // not implemented
+  XTerm_Color_pointer_fg = 13,      // change actual 'Pointer' color
+  XTerm_Color_pointer_bg = 14,      // not implemented
   XTerm_Color05          = 15,      // not implemented
   XTerm_Color06          = 16,      // not implemented
   XTerm_Color_RV         = 17,      // change actual 'Highlight' color
@@ -373,7 +375,6 @@ enum {
   /*
    * rxvt extensions of XTerm OSCs: ESC ] Ps;Pt (ST|BEL)
    */
-  XTerm_Menu             = 10,      // set menu item
   XTerm_Color_BD         = 18,      // change actual 'Bold' color
   XTerm_Color_UL         = 19,      // change actual 'Underline' color
   XTerm_Pixmap           = 20,      // new bg pixmap
@@ -382,6 +383,7 @@ enum {
   XTerm_dumpscreen       = 55,      // dump scrollback and all of screen
   XTerm_locale           = 701,     // change locale
   XTerm_findfont         = 702,     // find font of given character (in decimal)
+  XTerm_Menu             = 703,     // set menu item
 };

 /* Words starting with `Color_' are colours.  Others are counts */
@@ -428,7 +430,8 @@ enum colour_list {
   Color_cursor,
   Color_cursor2,
 #endif
-  Color_pointer,
+  Color_pointer_fg,
+  Color_pointer_bg,
   Color_border,
 #ifndef NO_BOLD_UNDERLINE_REVERSE
   Color_BD,
@@ -441,6 +444,9 @@ enum colour_list {
 #ifdef KEEP_SCROLLCOLOR
   Color_scroll,
   Color_trough,
+#endif
+#if TINTING
+  Color_tint,
 #endif
   NRS_COLORS,                 /* */
 #ifdef KEEP_SCROLLCOLOR
@@ -535,10 +541,15 @@ enum {
   Rs_modifier,
   Rs_answerbackstring,
   Rs_tripleclickwords,
+  Rs_insecure,
   Rs_cursorBlink,
   Rs_pointerBlank,
   Rs_pointerBlankDelay,
   Rs_imLocale,
+#ifndef NO_SECONDARY_SCREEN
+  Rs_secondaryScreen,
+  Rs_secondaryScroll,
+#endif
   NUM_RESOURCES
 };

@@ -555,6 +566,7 @@ enum {
   XA_WMDELETEWINDOW,
 #ifdef TRANSPARENT
   XA_XROOTPMAPID,
+  XA_XSETROOTID,
 #endif
 #ifdef OFFIX_DND                /* OffiX Dnd (drag 'n' drop) support */
   XA_DNDPROTOCOL,
@@ -610,6 +622,10 @@ enum {
 #define CBUFSIZ                4096    // size of command buffer
 #define UBUFSIZ                4096    // character buffer

+#ifndef PATH_MAX
+# define PATH_MAX 16384
+#endif
+
 /*
  *****************************************************************************
  * MACRO DEFINES
@@ -799,7 +815,7 @@ extern void rxvt_fatal (const char *fmt, ...) __attribute__ ((noreturn));
 extern void rxvt_exit_failure () __attribute__ ((noreturn));

 #define SET_LOCALE(locale) rxvt_set_locale (locale)
-extern void rxvt_set_locale (const char *locale);
+extern bool rxvt_set_locale (const char *locale);

 /*
  *****************************************************************************
@@ -870,9 +886,9 @@ extern class rxvt_composite_vec rxvt_composite;


 struct rxvt_term : rxvt_vars {
-  log_callback *log_hook;
+  log_callback *log_hook;               // log error messages through this hook, if != 0

-  struct mbstate mbstate;
+  struct mbstate  mbstate;              // current input multibyte state

   unsigned char   want_refresh:1,
 #ifdef TRANSPARENT
@@ -907,16 +923,16 @@ struct rxvt_term : rxvt_vars {
                   next_tty_action,
 #endif
 #ifdef META8_OPTION
-                  meta_char,  /* Alt-key prefix                            */
+                  meta_char,            /* Alt-key prefix */
 #endif
                   scrollbar_align,
                   selection_wait,
                   selection_type;
 /* ---------- */
   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           */
+  int16_t         num_scr;              /* screen: number lines scrolled */
+  unsigned int    prev_ncol,            /* screen: previous number of columns */
+                  prev_nrow;            /* screen: previous number of rows */
 /* ---------- */
   rend_t          rstyle;
 /* ---------- */
@@ -1069,7 +1085,7 @@ struct rxvt_term : rxvt_vars {
   struct timeval  lastmotion;
 #endif

-  vector<void *> allocated; // free these memory blocks
+  vector<void *> allocated;           // free these memory blocks with free()

   char           *env_windowid;       /* environmental variable WINDOWID */
   char           *env_display;        /* environmental variable DISPLAY  */
@@ -1080,9 +1096,9 @@ struct rxvt_term : rxvt_vars {
   char           *codeset;
 #endif
   char            charsets[4];
-  unsigned char  *v_buffer;   /* pointer to physical buffer */
-  unsigned int    v_buflen;   /* size of area to write */
-  stringvec      *argv, *envv;       /* if != 0, will be freed on destroy time */
+  unsigned char  *v_buffer;           /* pointer to physical buffer */
+  unsigned int    v_buflen;           /* size of area to write */
+  stringvec      *argv, *envv;        /* if != 0, will be freed on destroy time */
 #ifdef KEYSYM_RESOURCE
   const unsigned char *Keysym_map[256];
 #endif
@@ -1091,8 +1107,10 @@ struct rxvt_term : rxvt_vars {
   unsigned char  *cmdbuf_ptr, *cmdbuf_endp;
   unsigned char   cmdbuf_base[CBUFSIZ];

-  rxvt_salloc *ralloc;
-  rxvt_salloc *talloc;
+  rxvt_salloc    *talloc;             // text line allocator
+  rxvt_salloc    *ralloc;             // rend line allocator
+
+  static vector<rxvt_term *> termlist; // a vector of all running rxvt_term's

   void paste (const unsigned char *data, unsigned int len);

@@ -1158,6 +1176,7 @@ struct rxvt_term : rxvt_vars {
   void init_command (const char *const *argv);
   int run_command (const char *const *argv);
   int run_child (const char *const *argv);
+  static void child_exited (int pid);

   void color_aliases (int idx);
   void recolour_cursor ();
@@ -1227,7 +1246,8 @@ struct rxvt_term : rxvt_vars {
   unsigned char *get_to_st (unicode_t &ends_how);
   void process_dcs_seq ();
   void process_osc_seq ();
-  void xterm_seq (int op, const char *str, unsigned char resp __attribute__ ((unused)));
+  void process_color_seq (int report, int color, const char *str, unsigned char resp);
+  void process_xterm_seq (int op, const char *str, unsigned char resp);
   int privcases (int mode, unsigned long bit);
   void process_terminal_mode (int mode, int priv, unsigned int nargs, const int *arg);
   void process_sgr_mode (unsigned int nargs, const int *arg);
diff --git a/src/rxvtc.C b/src/rxvtc.C

index fa0bbe2ba866fa0e1b159797ae26f2d486f032e7..

index ..39807b1f7fab134281dd391547848ec227ed8bf2 100644

--- a/src/rxvtc.C
+++ b/src/rxvtc.C
@@ -1,6 +1,8 @@
 #include "../config.h"
 #include "rxvtdaemon.h"

+#include "rxvt.h"
+
 #include <cstdio>
 #include <cstdlib>

diff --git a/src/rxvtcolor.C b/src/rxvtcolor.C

index 05e3aff29724a6c9e68ec49864bfde9002392997..

index ..ae822b7876b4fbacc639cdc1c912bf01671cd351 100644

--- a/src/rxvtcolor.C
+++ b/src/rxvtcolor.C
@@ -256,12 +256,18 @@ void rxvt_display::set_selection_owner (rxvt_term *owner)

 rxvt_xim *rxvt_display::get_xim (const char *locale, const char *modifiers)
 {
-  // asprintf is a GNU and *BSD extension.. sorry...
   char *id;
+  int l, m;

-  if (asprintf (&id, "%s\n%s", locale, modifiers) < 0)
+  l = strlen (locale);
+  m = strlen (modifiers);
+
+  if (!(id = (char *)malloc (l + m + 2)))
     return 0;

+  memcpy (id, locale, l); id[l] = '\n';
+  memcpy (id + l + 1, modifiers, m); id[l + m + 1] = 0;
+
   rxvt_xim *xim = xims.get (id);

   free (id);
diff --git a/src/xpm.C b/src/xpm.C

index b706e34dabb8b1caba8c305f4459398ac800a0fa..

index ..8013162158f35fc794521561c17c5f015bb5a2a1 100644

--- a/src/xpm.C
+++ b/src/xpm.C
@@ -1,7 +1,7 @@
 /*--------------------------------*-C-*---------------------------------*
  * File:	xpm.c
  *----------------------------------------------------------------------*
- * $Id: xpm.C,v 1.10 2004/03/17 03:47:14 pcg Exp $
+ * $Id: xpm.C,v 1.11 2004/04/02 20:41:01 pcg Exp $
  *
  * All portions of code are copyright by their respective author/s.
  * Copyright (c) 1997      Carsten Haitzler <raster@zip.com.au>
@@ -69,7 +69,7 @@ rxvt_term::scale_pixmap (const char *geom)
       sprintf (str, "[%dx%d+%d+%d]",	/* can't presume snprintf () ! */
               min (bgpixmap->w, 9999), min (bgpixmap->h, 9999),
               min (bgpixmap->x, 9999), min (bgpixmap->y, 9999));
-      xterm_seq (XTerm_title, str, CHAR_ST);
+      process_xterm_seq (XTerm_title, str, CHAR_ST);
       free (str);
       return 0;
     }

-----END OF PAGE-----

-- Response ended

-- Page fetched on Sun Jun 2 09:16:54 2024