📄 rxvt.h
字号:
#else# define menuBar_height() (0)# define menuBar_TotalHeight() (0)# define isMenuBarWindow(w) (0)#endif#ifdef XPM_BACKGROUND# define XPMClearArea(a, b, c, d, e, f, g) XClearArea((a), (b), (c), (d), (e), (f), (g))#else# define XPMClearArea(a, b, c, d, e, f, g)#endif#ifndef STRICT_FONT_CHECKING# define rxvt_get_fontwidest(font) ((font)->max_bounds.width)#endif#define rxvt_Gr_ButtonPress(x,y) rxvt_Gr_ButtonReport (r, 'P',(x),(y))#define rxvt_Gr_ButtonRelease(x,y) rxvt_Gr_ButtonReport (r, 'R',(x),(y))#ifdef UTMP_SUPPORT# if !defined(RXVT_UTMPX_FILE) || !defined(HAVE_STRUCT_UTMPX)# undef HAVE_UTMPX_H# undef HAVE_STRUCT_UTMPX# endif# if !defined(RXVT_UTMP_FILE) || !defined(HAVE_STRUCT_UTMP)# undef HAVE_UTMP_H# undef HAVE_STRUCT_UTMP# endif# ifdef HAVE_UTMPX_H# include <utmpx.h># endif# ifdef HAVE_UTMP_H# include <utmp.h># endif#endif#ifdef DEBUG_CMD# define D_CMD(x) fprintf x ; fputc('\n', stderr)#else# define D_CMD(x)#endif#ifdef DEBUG_INIT# define D_INIT(x) fprintf x ; fputc('\n', stderr)#else# define D_INIT(x)#endif#ifdef DEBUG_MAIN# define D_MAIN(x) fprintf x ; fputc('\n', stderr)#else# define D_MAIN(x)#endif#ifdef DEBUG_SCREEN# define D_SCREEN(x) fprintf x ; fputc('\n', stderr)#else# define D_SCREEN(x)#endif#ifdef DEBUG_SELECT# define D_SELECT(x) fprintf x ; fputc('\n', stderr)#else# define D_SELECT(x)#endif#ifdef DEBUG_X# define D_X(x) fprintf x ; fputc('\n', stderr)#else# define D_X(x)#endif/* ***************************************************************************** * VARIABLES ***************************************************************************** */#ifdef MENUBAR# include "menubar.h"#endifstruct rxvt_hidden {#ifdef __GNUC__ unsigned char want_refresh:1, want_full_refresh:1, am_transparent:1, am_pixmap_trans:1, current_screen:1, hate_those_clicks:1, num_scr_allow:1, bypass_keystate:1; unsigned char chstat:1, lost_multi:1, multi_byte:1, parsed_geometry:1;#else unsigned char want_refresh,# ifdef TRANSPARENT want_full_refresh, /* awaiting full screen refresh */# endif# if defined(XPM_BACKGROUND) || defined(TRANSPARENT) am_transparent, /* is a transparent term */ am_pixmap_trans, /* transparency w/known root pixmap */# endif current_screen, /* primary or secondary */ hate_those_clicks, /* a.k.a. keep mark position */ num_scr_allow, bypass_keystate,# ifdef MULTICHAR_SET chstat, lost_multi, /* set ==> we only got half a glyph */ multi_byte, /* set ==> currently using 2 bytes per glyph */# endif parsed_geometry;#endif /* !__GNUC__ */ unsigned char refresh_type,#ifdef UTMP_SUPPORT next_utmp_action,#endif#ifndef NO_SETOWNER_TTYDEV next_tty_action,#endif#ifdef META8_OPTION meta_char, /* Alt-key prefix */#endif scrollbar_align, selection_wait, selection_type;/* ---------- */#ifdef GREEK_SUPPORT short greek_mode; /* greek keyboard mode */#endif short rvideo; int16_t num_scr; /* screen: number lines scrolled */ u_int16_t prev_ncol, /* screen: previous number of columns */ prev_nrow; /* screen: previous number of rows */#ifdef RXVT_GRAPHICS u_int16_t gr_prev_start;#endif/* ---------- */ rend_t rstyle;/* ---------- */ u_int32_t pixcolor_set[NPIXCLR_SETS];/* ---------- */ int csrO, /* Hops - csr offset in thumb/slider to */ /* give proper Scroll behaviour */#ifndef NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING scroll_arrow_delay,#endif#if defined(MOUSE_WHEEL) && defined(MOUSE_SLIP_WHEELING) mouse_slip_wheel_delay, mouse_slip_wheel_speed,#endif refresh_count, refresh_limit, fnum, /* logical font number */ last_bot, /* scrollbar last bottom position */ last_top, /* scrollbar last top position */ last_state, /* scrollbar last state */ scrollbar_len, currmaxcol,#ifdef MENUBAR menu_readonly, /* okay to alter menu? */ Arrows_x,#endif#if (MENUBAR_MAX > 1) Nbars,#endif window_vt_x, window_vt_y, window_sb_x, allowedxerror;/* ---------- */ unsigned int ModMetaMask, ModNumLockMask, old_width, /* last used width in screen resize */ old_height, /* last used height in screen resize */#ifndef NO_BRIGHTCOLOR colorfgbg,#endif ttymode; unsigned long PrivateModes, SavedModes;/* ---------- */#ifdef PREFER_24BIT Visual *Xvisual;#endif/* ---------- */ Atom xa[NUM_XA];/* ---------- */#ifdef MENUBAR GC menubarGC;#endif#if defined(MENUBAR) || defined(RXVT_SCROLLBAR) GC scrollbarGC, topShadowGC, botShadowGC;#endif#ifdef XTERM_SCROLLBAR GC xscrollbarGC, ShadowGC;#endif#ifdef NEXT_SCROLLBAR GC blackGC, whiteGC, grayGC, darkGC, stippleGC; Pixmap dimple, upArrow, downArrow, upArrowHi, downArrowHi;#endif/* ---------- */ Time selection_time; Time selection_request_time; pid_t cmd_pid; /* process id of child */ gid_t ttygid;#if (defined(HAVE_SETEUID) || defined(HAVE_SETREUID)) && !defined(__CYGWIN32__) uid_t euid; gid_t egid;#endif/* ---------- */ Cursor cursor_leftptr;/* ---------- */ const char *ttydev; /* pty/tty name */#ifndef NO_BACKSPACE_KEY const char *key_backspace;#endif#ifndef NO_DELETE_KEY const char *key_delete;#endif#if defined (HOTKEY_CTRL) || defined (HOTKEY_META) KeySym ks_bigfont, ks_smallfont;#endif#ifdef GREEK_SUPPORT KeySym ks_greekmodeswith;#endif#ifdef USE_XIM XIC Input_Context; XIMStyle input_style; int event_type;#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 struct utmp ut;# endif# ifdef HAVE_STRUCT_UTMPX struct utmpx utx;# endif# if (defined(HAVE_STRUCT_UTMP) && defined(HAVE_UTMP_PID)) || defined(HAVE_STRUCT_UTMPX) char ut_id[5];# endif int utmp_pos;#endif row_col_t oldcursor;#ifdef XPM_BACKGROUND 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#ifdef MENUBAR menu_t *ActiveMenu, /* currently active menu */ *BuildMenu; /* the menu currently being built */ bar_t *CurrentBar;# if !(MENUBAR_MAX > 1) bar_t BarList;# endif /* (MENUBAR_MAX > 1) */#endif#ifdef RXVT_GRAPHICS Window gr_last_id;#endif struct timeval timeout[NUM_TIMEOUTS];/* these three don't need to be kept but do so to placate some mem checkers */ char *env_windowid; /* environmental variable WINDOWID */ char *env_display; /* environmental variable DISPLAY */ char *env_term; /* environmental variable TERM */ char *env_colorfgbg; char *buffer; char *locale; char charsets[4]; unsigned char *v_buffer; /* pointer to physical buffer */ unsigned char *v_bufstr; /* beginning of area to write */ unsigned char *v_bufptr; /* end of area to write */ unsigned char *v_bufend; /* end of physical buffer */ char *newfont[MAX_NFONTS];#ifdef KEYSYM_RESOURCE const unsigned char *Keysym_map[256];#endif const char *rs[NUM_RESOURCES];/* command input buffering */ unsigned char *cmdbuf_ptr, *cmdbuf_endp; unsigned char cmdbuf_base[BUFSIZ]; unsigned char kbuf[KBUFSZ];};#ifndef __attribute__# ifdef __GNUC__# if (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || (__GNUC__ < 2)# define __attribute__(x)# endif# endif# define __attribute__(x)#endif/* ***************************************************************************** * PROTOTYPES ***************************************************************************** */#ifdef PROTOTYPES# define __PROTO(p) p#else# define __PROTO(p) ()#endif#include "protos.h"#ifndef RXVT_GRAPHICS /* sync functions with graphics.extpro */# define rxvt_Gr_ButtonReport(r, but, x, y)# define rxvt_Gr_do_graphics(r, cmd, nargs, args, text)# define rxvt_Gr_scroll(r, count)# define rxvt_Gr_ClearScreen(r)# define rxvt_Gr_ChangeScreen(r)# define rxvt_Gr_expose(r, win)# define rxvt_Gr_Resize(r, w, h)# define rxvt_Gr_reset(r)# define rxvt_Gr_Displayed(r) (0)#endif#ifndef MENUBAR /* sync functions with menubar.extpro */# define rxvt_menubar_read(r, filename)# define rxvt_menubar_dispatch(r, str)# define rxvt_menubar_expose(r)# define rxvt_menubar_mapping(r, map) (0)# define rxvt_menubar_control(r, ev)# define rxvt_map_menuBar(r, map)# define rxvt_create_menuBar(r, cursor)# define rxvt_Resize_menuBar(r, x, y, width, height)#endif#ifndef XPM_BACKGROUND /* sync functions with xpm.extpro */# define rxvt_scale_pixmap(r, geom) (0)# define rxvt_resize_pixmap(r)# define rxvt_set_bgPixmap(r, file) (0)#endif#ifndef GREEK_SUPPORT /* sync functions with grkelot.extpro */# define greek_init()# define greek_end()# define greek_reset()# define greek_setmode(greek_mode)# define greek_getmode() (0)# define greek_xlat(s, num_chars) (0)#endif#ifndef USE_XIM# define rxvt_setTermFontSet(r, idx) (0)#endif#ifndef UTMP_SUPPORT# define rxvt_privileged_utmp(r, action) (0)#endif#ifdef NO_SETOWNER_TTYDEV# define rxvt_privileged_ttydev(r, action) (0)#endif#ifndef XTERM_COLOR_CHANGE# define rxvt_set_window_color(r, idx, color) (0)#endif#ifdef __CYGWIN32__# define rxvt_privileged_ttydev(r, action) (0)#endif#ifdef DEBUG_malloc# include "dmalloc.h" /* This comes last */#endif#endif /* _RXVT_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -