2003-02-02 Duarte Loreto * configure.in: Added "pt" to ALL_LINGUAS. 2003-01-31 nalin * src/Makefile.am: include iso2022.txt in tarballs. 2003-01-31 nalin * src/vte.c: pull up selection-always-extending-by-default fix from HEAD, ok release-team. * vte.spec: 0.10.16 2003-01-30 Fatih Demir * configure.in: Added "tr" (Turkish) to the languages' list. 2003-01-27 nalin * src/vte.c(vte_terminal_realize): create the "invisible" cursor using a bitmap instead of a pixmap, changing it from a 1x1 black square to nothing. 2003-01-27 nalin * src/vte.c(vte_terminal_decset_internal): make the various mouse event modes mutually-exclusive, because apps expect them to be (#104395). * src/vte.c: add a prototype for vte_terminal_background_update before it is used to silence a compiler warning. 2003-01-27 nalin * src/vte.c(vte_terminal_realize): force a background update immediately when we realize instead of queuing it up (#104381). 2003-01-26 Daniel Yacob * configure.in: Added "am" to ALL_LINGUAS. 2003-01-24 nalin * src/vte.c(vte_terminal_background_update): fix declaration order (#13795). 2003-01-24 Nam SungHyun * configure.in: Added "ko" to ALL_LINGUAS. 2003-01-23 nalin * src/caps.c, src/vte.c: recognize and ignore attempts to set text properties 21 and 2L, whatever those are (possible workaround #104154). 2003-01-23 nalin * src/iso2022.c: accept "1" and "2" as aliases for "B" (#104257). 2003-01-23 nalin * configure.in: check for curses if we don't have ncurses (the order is ncurses, curses, libtermcap), as Solaris has neither ncurses nor libtermcap. Reported by Brian Cameron. * src/keymap.c, src/ssfe.c: accept either curses or ncurses as equivalent. 2003-01-22 nalin * src/Makefile.am, src/mev.c: add mev. * src/vte.c(vte_sequence_handler_clear_screen): don't home the cursor automatically. * src/vte.c(vte_terminal_button_pressed): fix sense of shift overriding event mode. Ignore double- and triple-click in event mode. * src/vte.c(vte_terminal_scroll): in event mode, send button release events to the terminal if it's expecting them. * src/vte.c(vte_terminal_send_mouse_button_internal): clamp coordinates to existing cells. * src/vte.c(vte_terminal_maybe_send_mouse_drag): compare integral cell locations, not floating point, when choosing whether or not to drop events in cell tracking mode. Don't lose the modifiers. * src/vte.c(vte_terminal_motion_notify): don't autoscroll in events mode. 2003-01-22 nalin * src/caps.c: accept OSC{number};{string}ST as set-text-parameters, per XTerm docs (part of #104154). * src/keymap.c: revert change to prepend "1;" to keys with modifiers (#104139). 2003-01-22 Christian Rose * configure.in: Added "mn" to ALL_LINGUAS. 2003-01-21 nalin * src/vte.c: streamline background images and transparency handling, should use less memory now. 2003-01-20 nalin * src/reflect.c: add some debugging messages if REFLECT_VERBOSE is set in the environment. 2003-01-20 nalin * src/Makefile.am, src/reflect.c: add reflect-text-view, for testing with GtkTextView for sanity's sake. 2003-01-20 nalin * src/reflect.c: account for atk_text_get_text() being 0-clean. 2003-01-20 nalin * configure.in, src/Makefile.am, src/reflect.c: try to build reflect with both vte and libzvt, building a useless binary if libzvt isn't available. 2003-01-20 nalin * src/vte.c: colors 90-97 and 100-107 are bold colors, noted and patched by Matthijs Melchior (#103874). 2003-01-19 He Qiangqiang * configure.in: Added "zh_CN" (Simplified Chinese) to ALL_LINGUAS. 2003-01-19 Marius Andreiana * configure.in: added 'ro' to ALL_LINGUAS 2003-01-18 nalin * src/vteaccess.c(update_private_data_if_needed): if the caret is past the end of the text, count unichars properly. Compute the caret location correctly. * src/reflect.c: handle text-caret-moved signals and display the caret. 2003-01-18 nalin * src/iso2022.c: update copyright dates. * src/reflect.c: add. * src/Makefile.am: add reflect (noinst). * src/vteaccess.c(vte_terminal_accessible_get_text): always return a string, even if it's zero-length. Properly detect and handle requests that go right up to the last byte. 2003-01-18 Andras Timar * configure.in: Added "hu" to ALL_LINGUAS. 2003-01-17 nalin * src/vte.c(vte_terminal_set_size): emit a "text-modified" signal, because what you see changes when you resize the terminal. 2003-01-17 nalin * src/vte.c(vte_terminal_paint): don't draw cursors below or above the screen, correctly compute the clear area when drawing the cursor, if we're ignoring padding in general because we're monospaced, also ignore it when drawing the character under the cursor. * src/vte.c(vte_terminal_io_read): eliminate dead code. 2003-01-17 nalin * src/keymap.c(_vte_keymap_map): if we don't find an entry for the requested key, and the terminal type is "xterm", retry using "xterm-xfree86", possible fix for #103713. * src/vte.c(vte_terminal_draw_row): fix handling of items with width != 1 when computing runs. 2003-01-17 nalin * src/iso2022.c: fix boneheaded "config.h" instead of "../config.h" include, pointed out by Dan Mills and Brian Cameron. 2003-01-16 nalin * configure.in: fix test for whether or not we need to check for termcap * src/Makefile.am: override default includes to not prepend "." to the include path, so that we can include the system properly * src/keymap.c: define the ncurses scratch buffer for use when we're using termcap 2003-01-16 nalin * configure.in: actually disable attempts to build python bindings if pygtk-2.0 isn't found (#103676) 2003-01-14 nalin * src/keymap.c(_vte_keymap_key_add_key_modifiers): if a key sequence which needs modifiers doesn't have a numeric part, add "1" as the numeric part before adding the modifiers. Spotted by msw. 2003-01-13 nalin * src/ring.c, src/ring.h: add _vte_ring_insert_preserve(), which scrolls lost items off the top instead of the bottom, as _vte_ring_insert() does. * src/slowcat.c (catfile): check that we didn't read an EOF before attempting to write it. Skip the more complicated checks and just check that the file pointer isn't stdin before closing it. * src/ssfe.c: cleanups. * src/vte.c(vte_sequence_handler_sf): add lines to the scrollback area when scrolling is restricted but the top line of the area is the topmost visible line (Red Hat #75900). 2003-01-13 nalin * src/nativeecho.c, src/utf8echo.c: don't switch terminal modes before or after echoing bytes -- doing so confuses me now. * src/vte.c: make use of '?' to mark invalid data a compile-time define. * src/vteaccess.c(vte_terminal_accessible_text_scrolled): properly handle scrolling events with delta less than the window size (more of #95901). * src/vteaccess.c(vte_terminal_accessible_finalize): disconnect from text-inserted, text-deleted, text-modified, text-scrolled, cursor-moved, window-title-changed on finalize. * src/vte.c(vte_terminal_key_press,vte_terminal_key_release, vte_terminal_button_press,vte_terminal_button_release, vte_terminal_motion_notify,vte_terminal_focus_in,vte_terminal_focus_out, vte_terminal_scroll): track event modifiers in an object-local modifier variable. * src/vte.c(vte_terminal_key_press): always steal key events from the input method if the meta key is down (#96006). Don't munge the cursor or keypad modes before passing them to the keymapping routines. Stop overriding the cursor mode on NumLock (doesn't appear to work as documented in other terminals, needed to modify the keymap mode anyway (#96364)). * configure.in: define HAVE_XFT whenever HAVE_XFT2 is defined -- they're more or less compatible (#103130). 2003-01-10 Abel Cheung * configure.in: Added "zh_TW" to ALL_LINGUAS. 2003-01-10 Dmitry G. Mastrukov * configure.in: Added Russian to ALL_LINGUAS. 2003-01-09 nalin * configure.in: disable the python bindings if we can't find python, from Brian Cameron. 2003-01-09 nalin * src/vte.c: don't just skip reading data if selection is in progress -- we wedge if we do that (#101739). Instead, temporarily stop reading from the child pty. * src/vte.c(vte_terminal_open_font_xft): if we get NULL when matching fonts, use the desired pattern's name when displaying an error, preventing a NULL dereference (#96769). * configure.in: make building of python modules depend on configure having been run with --enable-python. make --enable-python the default. Fix an indentation error in the version check which chokes Python 2.2.2. * src/vte.h, src/vte.c: add new signals to VteTerminalClass (NOTE: may break ABI, so might as well add some padding) * src/vteaccess.c: be more precise about locations in text_changed signals (part of #95901) * src/vte.c: get more selective about when we consider it necessary to emit text-insert and text-delete events. 2003-01-07 nalin * src/vte.c(vte_terminal_key_press): Only suppress meta-sends-escape on Backspace if backspace is mapped to the delete sequence. (#100635) 2003-01-07 nalin * src/vte.c(vte_terminal_setup_background): Use a lookup table instead of a mess of floating point math when desaturating images. 2003-01-06 nalin * src/vte.c(vte_terminal_init): Add the periodic blinking refresh with the normal timeout instead of 0 to avoid wedging when we get created without focus. Fix suggested by Dennis Haney (#102701). 2003-01-06 nalin * src/vte.c: Use a simple XftPatternGetString/GetDouble pair instead of XftNameUnparse, which isn't in older versions of Xft (#101142). * src/vte.c: Add a flag to VteTerminalPrivate which we can use to keep track of modifications, particularly if they remove text, and toggle it in several sequence handlers. * src/vte.c(vte_terminal_process_incoming): Also emit the "contents changed" signal when the modified flag is TRUE, not enough to fix #95901, but at least making some forward progress. 2003-01-05 Pauli Virtanen * configure.in (ALL_LINGUAS): Added "fi" (Finnish). 2003-01-04 Stanislav Visnovsky * configure.in: (ALL_LINGUAS) Added sk (Slovak). * po/sk.po: Added Slovak translation. 2003-01-02 nalin * configure.in: look for libncurses or libtermcap * vte.pc.in: include other libraries (ncurses, termcap, socket, whatever) in the list of libraries. * src/keymap.c(_vte_keymap_map): for Home and End, consult libncurses or libtermcap if we have no hard-wired mapping and there's none in the termcap file. Should fix #100472, even in cases where Home and End vary wildly from what I've got on my box. * src/keymap.c: rename cursor/fkey_normal to cursor/fkey_default, which makes a little more sense. 2003-01-02 Zbigniew Chyla * configure.in: (ALL_LINGUAS) Added pl (Polish). 2002-12-22 Artis Trops * configure.in: Added Latvian (lv) to ALL_LINGUAS. 2002-12-19 Yanko Kaneti * configure.in: (ALL_LINGUAS) Added Bulgarian (bg). 2002-12-18 nalin * configure.in: complain if Xft2 and Xft aren't found. * src/vte.c (vte_terminal_paint): if we're not double-buffered, clear the drawing area before we draw text. * src/vteapp.c: add -2 to toggle double-buffering. 2002-12-16 nalin * src/vte.c (vte_terminal_key_press): wire Shift+Home/Shift+End to scroll-to-top and scroll-to-bottom. 2002-12-13 nalin * src/buffer.c: add a short test program. * src/iso2022.c: use hard values instead of GDK defines in the 0 map. Add _vte_iso2022_substitute_single() for performing a single mapping operation. * src/vte.c: use _vte_iso2022_substitute_single() instead of a local mapping table when mapping line-drawing charset data, simplifies maintenance of the mapping. 2002-12-12 Pablo Saratxaga * configure.in: Added Catalan (ca), Spanish (es) and Hebrew (he) to ALL_LINGUAS 2002-12-11 nalin * configure.in: define VTE_USE_GNOME_PTY_HELPER if use of the helper is enabled at compile-time (enabled by default). * src/iso2022.c(_vte_iso2022_substitute): force characters received in the line-drawing map to have width = 1 (more #99603), so that we can distinguish them from line-drawing characters received in eucXX, which have width = 2. * src/vte.c(vte_terminal_insert_char): when mapping from line-drawing to gunichars, force a width of 1. * src/vte.c(vte_terminal_process_incoming): extend the bounding box for updates one cell further to the right, in case the cursor is in a cell which contains a wide character. * src/pty.c(_vte_pty_start_helper): spit out a warning if the helper isn't installed. * src/pty.c: don't compile in any gnome-pty-helper-specific code if VTE_USE_GNOME_PTY_HELPER isn't defined. 2002-12-10 nalin * src/buffer.c, src/buffer.h: centralize buffer length sanity checks, add some utility functions for stuffing things into buffers and pulling them back out. * src/debug.c, src/debug.h: add a lifecycle debug class, for tracking down initialization order weirdness. * src/pty.c: try to check that we can run the pty helper before trying to run it, to avoid SIGPIPE failures when it's not installed. * src/vte.c: never grab focus -- let the shell app deal with it. Return TRUE from mouse motion and press/release events to keep them from being passed up. (#101089) 2002-12-09 nalin * configure.in: add "uk" to the list of languages. * src/vte.h: remove the alternate attribute bit -- it's no longer meaningful. * python/vte.override: remove the alternate attribute, add the strikethrough attribute. * src/vte.c (vte_terminal_insert_char): perform drawing character set to Unicode mapping at insertion time if the alternate attribute is set, otherwise discarding the attribute. If the character being inserted is a graphic character, force its width to 1 or 2 depending on the current codeset (#99603). * src/vte.c (xlfd_from_pango_font_description): take advantage of XftXlfdParse if we were built with Xft, as it appears to handle family aliases. * src/vte.c (vte_terminal_draw_graphic): decide what to draw using Unicode code points (instead of reverse mappings to drawing set), and implement the double-thick versions of many of the existing glyphs. Return a boolean indicating whether or not we drew something. * src/vte.c (vte_terminal_draw_row): if vte_terminal_draw_graphic() returns FALSE, try to draw the graphic character using the current font. * src/vte.c (vte_terminal_paint): if vte_terminal_draw_graphic() returns FALSE, try to draw the graphic character using the current font. * src/caps.c: add the undocumented default 0 to the OSC set text parameters sequence (#100468). 2002-12-03 nalin * README: updates. * src/iso2022.c, src/iso2022.h: add a width mask for overriding widths for ambiguous Unicode characters, and _vte_iso2022_get_width() for reading the width, using unused bits in Unicode in a manner similar to http://www.cl.cam.ac.uk/~mgk25/ucs/iso2022-wc.html * src/table.c,src/trie.c: strip out iso2022 widths when extracting parameters of control sequences. * src/vte.c: heed iso2022 widths when inserting characters into the screen buffer, but clear then before storing them so that copy and paste will continue to work. * src/matcher.c, src/matcher.h: add matcher, a wrapper for table and trie, and move _vte_table_narrow_encoding and _vte_table_wide_encoding to this module. 2002-12-03 nalin * src/pty.c: if TIOCSCTTY is defined, use it, even if it's redundant. 2002-12-02 nalin * po: update-po * src/utf8echo.c: change the default from resetting to the terminal's default encoding before exiting to leaving it alone. Don't mess with the terminal's encoding if stdout isn't connected to a terminal. * src/nativeecho.c: add, for printing random bytes. 2002-12-02 nalin * src/vte.c: don't zero-fill rows, space-fill them. * src/vte.c(vte_terminal_is_word_char): Don't just fail if the word_chars array doesn't exist. 2002-12-02 nalin * acinclude.m4: add AC_CHECK_CC_OPT from ac-archive. * configure.in: check for cfmakeraw, sys/select.h, compiler support for -std= (#99698) * doc/boxes.txt: change reference to online Docbook reference to the charts at the Unicode web site. * src/dumpkeys.c: make a best-effort at making a terminal raw on systems where cfmakeraw() isn't available, from patch by Brian Cameron. Wait for up to 1/50 of a second for more bytes we'll consider to be part of a sequence. * src/pty.c(getpt): ensure that the new terminal is opened in non- blocking mode. * src/trie.c: use g_unichar_digit_value() instead of subtracting '0'. * src/vte.c: don't declare the xft_textitem member on non-Xft2 systems, because it uses an Xft2-specific type (#99685). * src/vteapp.c: add $pkgdatadir/fonts to the font path for testing. 2002-11-25 nalin * src/vte.c: fix mapping of Unicode code chars 0x252c and 0x2534 which incorrectly mixed them up (#99474). * src/iso2022.c: fix mapping of 'v' and 'w' from special graphics to Unicode, which masked the above bug. 2002-11-25 nalin * src/vte.c: fix cd() to clear using the current colors. 2002-11-25 nalin * termcaps/xterm: add ta back in -- it's not a key sequence. 2002-11-25 nalin * src/vte.c: fix cd() to clear to the right of the cursor on the current line instead of the entire line (#98844). 2002-11-25 nalin * src/vte.c: add keyboard debug messages when we change keyboard modes. * termcaps/xterm: remove kh definition. 2002-11-25 nalin * src/keymap.c: make keypad arrow keys follow cursor mode (#98604). 2002-11-25 nalin * src/keymap.c: sort out when we add modifiers to keys (#98094). Fix Alt+Tab. * termcaps/xterm: remove ta definition. 2002-11-25 nalin * src/debug.c, src/debug.h: add keyboard debugging class. * src/dumpkeys.c: refresh on Ctrl-L, reset on 'r'. * src/keymap.c, src/keymap.h: add more setting combinations, and a simplistic check for more complete coverage. * src/vte.c: add debug messages for keyboard handling. Improve detection of invalid coordinates as a signal that no text is selected or hilited (#98946). * termcaps/xterm.baseline: add a baseline copy of xterm from my termcap, so that I can diff it more easily. * termcaps/xterm: remove key definitions -- xterm's way more complicated than the capability strings suggest. 2002-11-22 nalin * configure.in: incorporate more correct check for the right version of gtk-doc (#99314). 2002-11-15 Hasbullah BIn Pit * configure.in: Added "ms" to ALL_LINGUAS. 2002-11-11 nalin * src/vte.c: ensure that when we select by line, we include all of the last line, even if it's past the edge of the screen. Snap selection to the beginning or end of a line when selecting lines which don't exist. Only strip off whitespace if there's nothing but whitespace to the right of the selection. Chuck the non-wrapping selection code. 2002-11-11 nalin * src/vte.c: properly set the "selecting" flag again when we start selection (#97923). 2002-11-11 nalin * src/vte.c: rework selection so that word- and line-based selection can wrap like XTerm does (#97057,#97719). 2002-11-07 nalin * src/vte.h: doc fixes. * src/dumpkeys.c: use the older alternate-screen decset value. * src/vte.c: fixup screwups on extending selection (#97118). 2002-11-05 nalin * src/vte.c: handle end-of-line selection correctly. Stop highlighting selection on click, but don't lose it until new text is selected (#97117). * python/vte.override: fix binding for set_colors() to properly take a list of colors for the palette (#97682). * src/vte.c, src/vte.h: add increase-font-size and decrease-font-size to allow mimicking XTerm's behavior on Shift/Control+KP_Add/KP_Subtract * src/vteapp.c: handle increase-font-size and decrease-font-size. 2002-11-05 Abi Brady * src/vte.c: Add and implement the strikethrough attribute. Change underline to be drawn using the ascent, rather than arbritarily putting it two lines above the bottom of the charcell - looks much better with large fonts. 2002-11-04 nalin * NEWS: be more verbose. * README: add more items to the TODO list so that I don't forget them. * src/vte.c: ifdef out some of the selection code. 2002-10-30 nalin * src/buffer.c, src/iso2022.c, src/vteaccess.c: add ident tags. * src/vte.c: don't scroll-to-bottom if we're selecting (#97923). 2002-10-30 nalin * src/vteapp.c: implement iconify, deiconify, raise, lower, maximize, restore, refresh, resize, and move signals. * src/vte.c: add vte_terminal_match_remove(). * src/vte.c (vte_sequence_handler_cb): clear the current column in addition to columns to the left, spotted by Sam Varshavchik. * src/vte.c: Use g_array_set_size() to clear arrays instead of removing each element. Properly initialize new columns with just the default colors and not other attributes (#96978). * src/vte.c (vte_sequence_handler_ta): revert to non-overwriting tabs, otherwise we got occasional drawing artifacts. 2002-10-30 Abi Brady * src/vte.c, src/vte.h : Support dim (halfbright) colours. All the infrastructure for this was here already (apart from making sure bold and half are mutually exclusive). Add API set_color_dim, and let set_colors take a palette of size 24. 2002-10-29 Abi Brady * src/iso2022.c (_vte_iso2022_map_[J4]): Map to UCS, not keysyms. (which differ > 0xff). 2002-10-28 Abi Brady * src/vte.c: Add line-drawing representation for full block. Draw U+23BA-23BD. Fix drawing of U+23BD (scan line 9) and U+2592 (checkerboard) to use bottom line of the charcell, not the top line of the one below. * src/iso2022.c: Complete DEC Special Graphics to Unicode map. 2002-10-25 nalin * src/vte.c (vte_terminal_match_check_internal): snip off final newlines when we're matching, they're usually not wanted. 2002-10-24 nalin * src/pty.c, src/pty.h: replace the simpler pty_open() function with a logging version, adding the ability to specify a startup directory (Red Hat #76529). * src/vte.c, src/vte.h: replace the simpler fork_command() function with a logging version, adding the ability to specify a startup directory (Red Hat #76529). * src/vteapp.c: modify call to handle new fork_command(). * python/vte.defs: update as above. * python/vte.override: modify call to handle new fork_command(), adding an optional "directory" argument. 2002-10-23 nalin * src/vte.c: refactor the selection code, cleaning up when selection is cleared/started/extended (#95783). 2002-10-22 nalin * src/vte.c: rework how wide characters are stored to allow storing tabs (#95958). 2002-10-21 nalin * python/vte.override: wrap vte_terminal_get_text() and vte_terminal_get_text_range(). Based on patch from ha shao (#96230). 2002-10-21 nalin * src/vte.c, src/vte.h: add a user pointer argument to get_text callbacks (#96230). * src/Makefile.am: bump shared library version because we changed a public function's signature. Take the opportunity to replace padding fields which had previously been used up. 2002-10-21 jacob berkman * src/Makefile.am (EXTRA_DIST): include decset, osc, and window 2002-10-18 nalin * src/iso2022.c: use character constants instead of hex constants. * src/iso2022.txt: add more illustrations. * src/decset: scriptlet to save some typing. * src/vte.c: zero-terminate window and icon title strings again. * src/decset, src/osc, src/window: add. 2002-10-18 nalin * src/keymap.c: add a mapping for the escape key. 2002-10-18 nalin * src/vte.c: implement decset 42 (enable/disable NRC processing), but enable it by default. Implement decset 44 (margin bell). * src/vte.c: do not trust the event->string. Use gdk_keyval_to_unicode and the built-in keymapping to cope with the weirdness. Extend the range of characters we controlify from 0x40-0x60 to 0x40-0x7f so that lower-case ascii chars controlify (not a word, I know). * src/keymap.c: add map entries for GDK_Return and GDK_KP_Enter for GDK_CONTROL_MASK = cr, normal = lf. 2002-10-18 nalin * src/vte.c: make sure that strings passed to a commit signal are zero- terminated (#96131). * python/Makefile.am: install the module in site-packages instead of a subdirectory, which doesn't work on my system. 2002-10-17 nalin * src/vte.c: remove vte_terminal_update_scroll_delta, which only did things vte_terminal_adjust_adjustments already did and was only called immediately after. Fill newly-added lines with the current attributes if the current background isn't the default color (Red Hat #73853). Implement ignored DECSET settings, so that we don't mistakenly complain about settings not being implemented yet when we actually just want to ignore them. * vte.spec: 0.9.2 2002-10-17 nalin * src/vte.c: force the first cursor redraw after focus-in to always be in the foreground color (Red Hat #75908). 2002-10-17 nalin * src/vte.c (vte_terminal_insert_char): force invalidation mode if we're in insert mode to get the entire line redrawn. Spotted by msw. 2002-10-17 nalin * configure.in: clean up tests for wint_t. Patch from Brian Cameron. 2002-10-17 nalin * src/pty.c: close a possible race on systems where pty initialization requires more than just opening the pty (for example, Solaris). Spotted by Brian Cameron. * src/utf8echo.c: don't reset to iso-8859-1 unless -r is used. 2002-10-16 nalin * src/vte.c: remove a bogus assertion for a case which we were already handling a little further down (incorrectly triggered by autowrap). 2002-10-16 nalin * src/vte.c: adjust our adjustments whenever a line might scroll off the top of the buffer. Fix computation of the new insertion delta to ensure that it never goes below the scroll delta, which should fix the resizing crashes (#94509, #95187, Red Hat #75871), and add some debug assertions to verify this. * configure.in, python/Makefile.am: build the python bindings as a library, not a binary with wacky ldflags. 2002-10-15 nalin * src/vte.c: don't try to close the pty at finalize time if we didn't open it. Patch from ha shao. * src/keymap.c, src/keymap.h: move the addition of modifiers into a separate function. Add the function key strings from terminfo for fkey_sun and fkey_hp cases. Make control+F1 = F13 only in vt220 mode. * src/vte.c: apply modifiers to function keys in normal and legacy modes. 2002-10-14 nalin * src/vte.c: add super-bogus bold text mode (Red Hat #74779). 2002-10-14 nalin * src/caps.c: recognize CSI-r (with no arguments) as resetting the scrolling region in XTerm emulation (Red Hat #75902). 2002-10-14 nalin * src/keymap.c: add mappings for GDK_Page_Up and GDK_Page_Down, missed in the conversion. * src/vte.c: steal GDK_KP_{Add,Subtract,Multiply,Divide} from the input methods (Red Hat #75207). 2002-10-14 nalin * configure.in: more $pkglibdir -> $libexecdir fixing. * doc/Makefile.am: add rules for generating ps and text versions of the ctlseqs docs. * doc/reference/tmpl/vte.sgml: add snippet for "commit". * python/python/vte.defs: update to add a binding for vte_terminal_fork_logged_command(). * src/buffer.h: add a warning comment that these are private interfaces. Wrap declarations in G_BEGIN_DECLS/G_END_DECLS. * src/caps.h: add macros for the SS2/SS3 sequences. * src/marshal.list: add a marshaller for the "commit" signal. * src/keymap.c, src/keymap.h: move the getting-more-convoluted keypress-handling code to a shell that parses tables of static info. * src/vte.c: use the keymap for most non-printable keys. Add a "commit" signal to allow an app to just use the terminal for displaying data and grabbing input (missing functionality noted by ha shao). Obey the application's desired meta-sends-escape setting. Recognize HP function key mode. Recognize and handle legacy XTerm function key mode. Force a redraw if the child application tries to switch to 80/132 columns, even though we don't usually let them succeed. Don't try to send keystrokes to the child pty when there is no child pty. Don't convert final whitespace to newlines when copying text (Red Hat #74611). * python/cat.py: test program for running without a command. * termcaps/xterm: change the definitions for ku/kd/kl/kr to match XTerm in normal cursor mode instead of application cursor mode. 2002-10-11 nalin * src/vte.c: properly distinguish cursor key mode and keypad key mode, obey application mode for cursor keys (#92941). * src/pty.c: reset signal handlers before exec() (Red Hat #75341). 2002-10-11 nalin * src/trie.c: change the typedef of wint_t here to match vte.c (now a gunichar instead of a long). Spotted by Brian Cameron. 2002-10-11 Brian Cameron * configure.in: Changed to that wchar.h is included when checking for wint_t on Solaris. This was needed because on Solaris wint_t is defined to be a long, and in vte.c its definition was recently changed to be a gunichar. This caused the compile to break on Solaris. 2002-10-10 nalin * configure.in, src/pty.c, gnome-pty-helper/Makefile.am: fix the bits I missed when fixing #95085. 2002-10-10 nalin * src/vteapp.c, python/vte-demo.py: allow specifying the scrollback buffer size. * src/vte.c: if we don't have wint_t, typedef wint_t as a gunichar, not a long. 2002-10-09 nalin * src/buffer.c, src/buffer.h: add. * src/interpret.c, src/vte.c: use _vte_buffer structures instead of char arrays with separate lengths. Use a scratch buffer for holding the results of conversions. * src/vte.c: separate the pango and pangox drawing paths so that they're easier to tweak and compare to each other. * src/vte.c: ditch the smooth scrolling change, which won't work right anyway (expose events don't get processed until after we finish processing a chunk of data unless we explicitly request it, so using a bbox is both simpler and faster). Use a mask when creating the cursor we use for hiding the cursor. 2002-10-09 nalin * vte.spec, gnome-pty-helper/Makefile.am: install gnome-pty-helper into the libexecdir, not pkglibdir (#95085). * src/vte.c: obey smooth/jump scrolling options, default is jump scroll. Mon Oct 7 14:53:12 2002 Owen Taylor * src/vte.c (vte_font_match): Fix over-aggressive Xft => Fc conversion - need to call XftDefaultSubstitute to pick up Xft X resources, not FcDefaultSubstitute. 2002-10-01 Stanislav Brabec * configure.in: Added cs to ALL_LINGUAS. 2002-09-24 nalin * src/vte.c(vte_terminal_set_word_chars,vte_terminal_is_word_char): if the list of word characters is NULL or zero-length, try to guess with (g_unichar_isgraph() && !g_unichar_ispunct()), which seems to produce reasonable results (#77134). 2002-09-24 nalin * gnome-pty-helper/acinclude.m4: Fix HAVE_UT_UT_TV for cases where the static initializer might not work right (#93774, patch from Kalpesh Shah). 2002-09-24 nalin * README, gnome-pty-helper/README: Doc fixups (mention gnome-terminal instead of profterm, note the proper permissions for gnome-pty-helper, #84505). 2002-09-20 nalin * src/ring.c: Fix a ring-buffer manipulation bug (Red Hat #74290) which might cause a new item to be inserted in the wrong location. 2002-09-19 nalin * src/interpret.c: Munge input data the way the terminal does so that conversion failures don't wedge us. 2002-09-19 Brian Cameron * src/vte.c: Backed out scrolldelay patches from 09-17 and 09-18 at Nalin's request. Left in the patch which allows programs which update the screen non-linearly like lynx to work properly. 2002-09-18 Brian Cameron * src/vte.c: Corrected a problem with yesterday's patch. I am now properly calling g_source_remove on the scroll_delay timeout function. This prevents VTE from core dumping if you start up more than one VTE gnome-terminal and exit from one of them. Also made the vte_scroll_timeout function a little cleaner by using the VTE_IS_TERMINAL macro. 2002-09-17 Brian Cameron * src/vte.c: Fixed bug with my 09/11 speedup fix which caused programs that update the screen non-linearly like lynx to update incorrectly. Also included a speed improvement which delays the scroll-down for 70ms. Too fast to be noticeable to the user, but it speeds up VTE greatly. 2002-09-13 nalin * src/pty.c: Fix typo which broke builds on systems where MSG_NOSIGNAL is defined. 2002-09-12 Brian Cameron * configure.in : Added -lsocket to LIBS if socket is in libsocket, so VTE will compile on Solaris. 2002-09-12 jacob berkman * src/pty.c: only use MSG_NOSIGNAL if it's defined * gnome-pty-helper/gnome-pty-helper.c (struct pty_info): remove master_fd and slave_fd fields (shutdown_pty): don't close master/slave fd's here... (pty_add): don't take master/slave fd args (open_ptys): ...close master/slave fd's right after passing them this fixes a hang after closing a window on os x, not sure why... * gnome-pty-helper/Makefile.am (install-exec-hook): remove trailing / after $DESTDIR * configure.in: AC_CHECK_FUNC() doesn't do AC_DEFINE(HAVE_FOO), so do that for socket() and socketpair() if they are found 2002-09-12 nalin * src/vte.c(vte_invalidate_cursor_once): Remove the invalidate_cells parameter, because the function is a big no-op if FALSE, in which case we should just not call it instead. (vte_terminal_process_incoming): refresh the right number of rows after processing a block of data. 2002-09-12 Brian Cameron * src/vte.c Fixed minor error with my previous patch. This just makes a warning go away. 2002-09-11 nalin * src/pty.c: Reorder definitions to avoid implicit declaration warnings. * configure.in: Check for socketpair(). Check for socket() in libc before poking around in libsocket. * gnome-pty-helper/configure.in: Check for openpty() in libutil as well, and do so before we check for other functions. 2002-09-11 nalin * configure.in, gnome-pty-helper/cofnigure.in: Test for sendmsg() with AC_CHECK_FUNCS instead of AC_TRY_COMPILE. * acconfig.h: Removed. * src/pty.c: Formatting. 2002-09-11 Brian Cameron * configure.in: Added check for socket library and SendMsg check. * acconfig.h: Added this file with a HAVE_SENDMSG definition. * gnome-pty-helper/configure.in: Added checks needed for the source code, including the SendMsg check. * src/pty.c: Corrected _vte_pty_pipe_open so it works on Solaris. *src/vte.c: Made some speed improvements so vte_invalidate_cells is not called for every character in the while loop in vte_process_incoming, but only once when the while loop is done. 2002-09-11 nalin * gnome-pty-helper: Update from libzvt CVS. * python/Makefile.am: Fix some automake breakage. 2002-09-11 nalin * python/Makefile.am: Fix my broken merge of Jacob's patch to make inability to build python modules non-fatal. 2002-09-11 nalin * src/vte.c: Skip lookups for padding information if we're pretty sure we're using a monospaced font. 2002-09-10 nalin * src/vte.c: Fix from Brian Cameron for uninitialized GError in vte_wc_from_unichar(). * src/interpret.c, src/iso2022.c, src/pty.c, src/ring.h, src/table.c, src/table.h, src/trie.c, src/vte.c, src/vteaccess.c: Signed/unsigned int/size_t/gsize and pointer typecast warning fixes from Brian Cameron. * src/vte.c: Avoid invalidating the cursor in the cursor blink timeout unless we have focus. 2002-09-10 Jacob Berkman * configure.in (ALL_LINGUAS: remove es until the file really gets added. also it wasn't added alphabetically 2002-09-10 Pablo Gonzalo del Campo * configure.in: Added "es" to ALL_LINGUAS 2002-09-10 nalin * src/pty.c, src/pty.h: Add vte_pty_close() and vte_pty_open_with_logging(), breaking the ABI. * src/vte.c, src/vte.h: Add vte_terminal_fork_logged_command(), breaking the ABI. * gnome-pty-helper/*: Swallow the pty helper bits of gnome-libs, but install into $pkglibdir instead of $sbindir so that existing packages don't suddenly start breaking. * src/termcap.c(_vte_termcap_find_string_length): Fix signature to match the declaration in termcap.h. From patch by Jacob Berkman. 2002-09-06 nalin * configure.in: Add $X_PRE_LIBS to the front of $X_LIBS, -lX11 and $X_EXTRA_LIBS to the end of $X_LIBS. Remove some cruftiness and set CPPFLAGS when checking for Xft. Check for the existence of wchar.h, because it might not exist. Use an automake conditional to make compilation of the Python bindings non-critical. From patch by Jacob Berkman. * src/pty.c: Silence compiler warning when exec() fails. From patch by Jacob Berkman. * src/interpret.c, src/vte.c: Stop including langinfo.h since we don't call nl_langinfo() any more. Adapted from patch by Jacob Berkman. * src/caps.c: Fill in a couple of missing initializers. * src/vte.c, src/vte.h: Add accessor functions for use in language bindings. * python/vte.defs: Add defs for the new accessor functions. * python/vte-demo.py: Add a scrollbar to the sample window, handle more of the options the C version handles. Stop expecting additional arguments with a signal that doesn't include any. * python/Makefile.am: We only have one target, so don't bother with target-specific primaries if we can avoid it (#92252). * vte.pc.in: Note build dependencies on ATK, Pango, and PangoX. 2002-09-05 nalin * src/caps.c, src/caps.h, src/debug.c, src/debug.h, src/interpret.c, src/iso2022.c, src/iso2022.h, src/pty.c, src/reaper.c, src/ring.c, src/ring.h, src/table.c, src/table.h, src/termcap.c, src/termcap.h, src/trie.c, src/trie.h, src/utf8echo.c, src/vte.c, src/vteaccess.c, src/vteapp.c: prefix library-internal interfaces with underscores so that gtk-doc doesn't guess they're public. * src/vte.c: return FALSE from focus-in/focus-out/expose handlers. 2002-09-05 nalin * src/caps.h, src/debug.h, src/iso2022.h, src/marshal.h, src/ring.h, src/table.h, src/termcap.h, src/trie.h: add giant warnings about how these headers define library-internal interfaces. * vte.spec: 0.8.18 2002-09-05 nalin * docs/reference: first pass at writing documentation * src/termcap.c: fix how'd-that-ever-work in vte_termcap_strip(), patch from Brian Cameron. Take \\e as an alias for \\E, which is already an alias for Escape. * src/vte.c(vte_terminal_get_cursor): Return an absolute cursor position instead of a relative position. 2002-09-04 jacob berkman * src/vte.c (vte_default_substitute): only compile the FC_HINT_STYLE part if FC_HINT_STYLE is defined 2002-09-04 nalin * src/vte.c: Add missing include for Xft2, spotted by Jacob Berkman. 2002-09-04 Brian Cameron * src/vte.c: Avoid double color deallocations with Xft. * configure.in: Added stropts.h check for Solaris. * src/vte.c: Do not send data to the slave if the length is zero. Some shells on Solaris do not handle this well. * src/pty.c: Added ptem/ldterm/ttcompat ioctls so VTE will work on Solaris. 2002-09-03 nalin * src/vte.c: Avoid double color deallocations with Xft. 2002-09-03 nalin * src/vte.c: Handle color allocation failures with Xft better. * src/vte.h: Clean up typedef declarations. 2002-09-03 nalin * src/marshal.list, src/reaper.c, src/reaper.h, src/vte.c: Modify the child-exited signal to pass a signed int and an unmodified exit status, allowing the callback to check for normal/abnormal exit status. 2002-09-02 nalin * src/vte.c: Don't send zero-length strings to the child -- it may not be able to cope properly. Spotted by Brian Cameron. 2002-08-30 nalin * src/vte.c: Handle cursor exposes correctly for multicolumn characters, no matter which cell the cursor is in. Fix autoscrolling boundary checks for when allocation.y != 0. 2002-08-30 nalin * src/vte.c(vte_terminal_insert_char): Wrap correctly to avoid screwing up multicolumn characters. 2002-08-30 nalin * src/vte.c: Get smarter about when it's necessary to start messing with our adjustments (Red Hat #73091). Change the way we clear the screen so that all of the contents of the current screen become scrollback data. 2002-08-30 nalin * src/vte.c: Register VteTerminalEraseBinding with GObject as an enumerated type. * python/vte.defs: Update. * python/vte.overrides: Ignore vte_terminal_get_text_range(). 2002-08-30 nalin * src/vte.c: Restore the focus-in/focus-out handlers -- the defaults don't quite DTRT for us because they miss our im_context (#72946). When setting the cursor location for the input method, make the Y coordinate relative to the window, not the scrollback buffer. When resizing the scrollback buffer, clamp the cursor to the set of possible locations, not the visible locations. 2002-08-30 nalin * src/vte.c: Initialize the pty master fd to -1 to avoid spurious window resizes on fd 0. * src/debug.c, src/debug.h: Add a "pty" debug message class. 2002-08-30 nalin * src/iso2022.c: Fix a how'd-that-ever-work bug (not returning anything from vte_iso2022_new()), spotted by Brian Cameron. * configure.in: Use -Wall when building with gcc in maintainer mode. * src/interpret.c, src/ring.h, src/table.c, src/trie.c, src/vte.c, src/vteaccess.c: Warning cleanups. 2002-08-29 nalin * src/vte.c: Clean up bookkeeping for mouse autoscrolling and adjustment change notifications. Reset the scrolling and insertion deltas when clearing the history. * src/interpret.c: Don't dump data on incomplete conversion errors, which we're going to retry anyway. * src/iso2022.txt: Add iso-2022-kr examples (no workee -- uses GR). 2002-08-28 nalin * src/vte.c, src/vte.h: Add vte_terminal_copy_primary and vte_terminal_paste_primary(), because I really want to let profterm decide default values for key bindings. 2002-08-28 Gustavo Noronha Silva * configure.in (ALL_LINGUAS): added pt_BR 2002-08-27 nalin * src/vte.c: Stop autoscrolling on button release. 2002-08-27 nalin * src/vte.c: When autoscrolling, clamp the new boundary to what the user can see. 2002-08-27 nalin * src/vte.c: Implement autoscroll (Red Hat #70481). 2002-08-27 nalin * src/vte.c: Only perform cr-lf substitutions when pasting text, not when inputting from a live user (Red Hat #72639). Bind GDK_ISO_Left_Tab to kB. Formatting changes. * termcaps/xterm: Bind kB to back-tab (Red Hat #70340). 2002-08-27 nalin * src/vte.c: Don't tamper with the scrolling offsets -- they're updated when we handle adjustment_changed notifications. Scroll instead of just moving the cursor down when soft-wrapping to the next line. Avoid emitting adjustment_changed when only the value has changed, likewise for the value and the other fields of the adjustment. 2002-08-27 nalin * src/vte.c: Keep cursor position and scrolling offsets from going wonky when you resize, especially on the alternate screen. Suppress duplicate adjustment_changed notifications. * src/vteapp.c: Set the MIN_SIZE geometry hints so that we can resize to unreasonably-small dimensions. * src/ring.c, src/ring.h: Add vte_ring_new_with_delta(). 2002-08-26 nalin * src/vte.c: Add padding spaces after full lines as well -- spotted by both notting and pjones. 2002-08-26 nalin * src/vte.c: Don't deadlock when substitution fails, spotted by msw. 2002-08-26 nalin * src/vte.c: If GDK_USE_XFT is set, check the value of GDK_USE_XFT, not VTE_USE_XFT. Spotted by hp. 2002-08-25 nalin * src/vte.c: Heed the reverse-video setting when painting character cells again. Make selection and matching coordinates global, fixing the selecting-while-scrolling case. Prevent overdraws into the padding area on the right. 2002-08-25 nalin * src/vte.c: Make nd() move right but not wrap -- according to Strang it's undefined, but xterm doesn't wrap it. Separate do/DO from sf/SF and up/UP from sr/SR, because the scrolling behavior is supposed to be different. Add support for decset/decreset 7 (wraparound mode) and 1051 (Sun keyboard). Add support for DECALN. Remove some type checks from run-time which the compiler can catch with certainty. 2002-08-25 Kjartan Maraas * configure.in: Added Norwegian (no) to ALL_LINGUAS. 2002-08-25 Pablo Saratxaga * configure.in: Added Vietnamese (vi) to ALL_LINGUAS 2002-08-22 nalin * src/caps.c: Bind ENQ to "return-terminal-status". * src/iso2022.c: Fix an off-by-one which incorrectly triggered an assertion. * src/vte.c: Implement send-primary/secondary-device-attributes. Bind shift+insert to "paste PRIMARY". Guard against NULL window/icon title when telling the child app what they are. Prevent DO(), up(), and UP() from scrolling. 2002-08-22 nalin * src/vteapp.c: Set geometry hints using the initial font setup. 2002-08-22 nalin * src/vte.c, src/vte.h: Make use of the visible bell a separate option from use of the audible bell, allowing both/neither to be used. Open fonts right away again -- profterm reads the metrics right after calling set_font(), so we have to open fonts ASAP. Rework the Xft/Pango/Xlib decision code to be more consistent. Watch for style changes and reset our font to the new style's font when we're already using the old style's font. 2002-08-21 nalin * src/iso2022.c(vte_iso2022_substitute): Take a vte_table as an additional argument, and don't mess with text that's part of a control sequence, even if it's in shifted-out text. * src/table.c(vte_table_match): Speed up for the no-arguments-requested case, which just became much more common. 2002-08-21 nalin * src/vte.c(vte_terminal_draw_rows): Cap the maximum number of characters we draw in a single call to vte_terminal_draw_cells at a reasonable number. 2002-08-21 nalin * src/table.c: Don't overwrite the original pattern pointers before freeing the old value. * src/vte.c: Use the same pango context whenever possible, to save on PangoX startup time. 2002-08-20 nalin * src/vte.c: Unref the output channel one more time when we're done sending data to the child. Free the background data GDK property when we're finished with it. Don't retrieve the pango context when drawing unless Xft has already been disabled. Don't try to use the pango layout to draw unless it's valid. Don't try to use the XftDraw item to draw unless it's valid. 2002-08-20 nalin * src/vte.c: Dispose of the updated substitution context properly when processing blocks of input text. Spotted by Arjan van de Ven. 2002-08-20 nalin * src/ring.c: Debug when rows get freed. * src/vte.c: Maybe-release pango contexts after unreffing layouts which refer to them. Decide on how we want to draw fonts before deciding which fonts to draw, to avoid spurious font loading. Remove output tags when the output tag's callback is about to return FALSE. 2002-08-20 nalin * src/vte.c: Don't leak the hintstyle and rgba settings. Patch from Arjan van de Ven. Free PangoX contexts when we're done with them, spotted by Arjan van de Ven. 2002-08-19 nalin * src/vte.c: Load fonts just-in-time to avoid spurious reloads. Don't override the focus_in and focus_out event handlers -- the defaults DTRT. * src/debug.c, src/debug.h: Add a RING debug class. 2002-08-19 nalin * src/iso2022.c: Handle override maps which don't affect the font palette correctly, resetting at newlines and escape marks. Process bogon data correctly. * src/iso2022.txt: Add some sample text. 2002-08-19 nalin * src/vte.c: Fixup some fontconfig/Xft mixups. Set the hint style instead of hinting when reading the GTK hint style setting (spotted by katzj and otaylor). 2002-08-19 nalin * src/vte.h, src/vte.c: Use gssize instead of ssize_t. Perform substitutions while processing. Use PangoX contexts when we're using the PangoX fontmap and when doing PangoX rendering. 2002-08-19 nalin * src/mkunitables.sh,src/unitable.*: Add. * src/iso2022.c, src/iso2022.h: Use unitables. * src/caps.c: Remove sequences for designating character sets. Switch to using a second passed-in buffer for storing results in case the caller doesn't want substitutions done in-place. * src/debug.c, src/debug.h: Add a substitution debug flag. * src/interpret.c: Perform substitution. * src/table.c, src/table.h: Use gssize instead of ssize_t. * src/termcap.c, src/termcap.h: Use gssize instead of ssize_t. * src/utf8echo.c: Use strtol, allowing users to specify code points in hex format. 2002-08-14 nalin * src/vte.c(vte_terminal_configure_toplevel): repaint the entire window to ensure that any overdraw area we're not paying attention to at least gets cleared to the background. * src/vte.c(vte_terminal_locale_encoding): don't try to second-guess the local encoding, just use the current charset as returned by g_get_charset(). 2002-08-14 nalin * src/vte.c(vte_terminal_reset): drop pending incoming data on reset. * src/vte.c: give reprocessing of pending input data a higher priority than reading it from the child to prevent backlogs on corrupt or invalid multibyte data from building up and whacking us exponentially. 2002-08-13 nalin * src/vte.c(vte_sequence_handler_delete_lines): initialize lines added to the current default colors. Spotted by jrb. * src/vte.c(vte_terminal_set_font): don't try to pick up GTK Xft settings unless we're using FontConfig. Patch from otaylor. 2002-08-11 nalin * src/vte.c: reorder set/reset processing for decset so that 1049 properly represents the combination of 1047 and 1048 (#90027). 2002-08-11 nalin * src/caps.c: properly escape a sequence which had a bare '%' in it. 2002-08-11 nalin * src/vte.c: change Xft-related defaults match whichever version of GTK we were built with (hopefully). 2002-08-11 nalin * src/vte.c: don't bother with cursor blinking or freezing/thawing updates when the widget isn't realized. Patch from Gustavo Giráldez. 2002-08-08 nalin * src/vte.c: take extra steps to make sure that the cursor doesn't go back into negative scrollback space. 2002-08-08 nalin * src/vte.c(vte_terminal_invalidate_all): rewrite. 2002-08-08 nalin * src/vte.c(vte_terminal_paint,vte_terminal_draw_cells): fill in the background color when drawing the cursor, even if it's going to end up as the default background color, spotted by Peter Jones. Draw the cursor correctly if it's over a graphic character. 2002-08-07 nalin * src/vte.c(vte_terminal_draw_cells): once again, avoid drawing NULs. * src/vte.c: add a small pad to each edge (#89048). * src/vteapp.c: handle widget padding. 2002-08-07 nalin * src/interpret.c: look for $pkgdatadir/termcap/$TERM first, as the widget does, before consulting /etc/termcap. * src/ring.c(vte_ring_free): check for a non-NULL removal function before calling it. * src/vte.c(vte_terminal_key_press): add an option for doing VT220-style or Sun/PC-style modified function keys. Default to VT220 for now, though, pending feedback. * src/vte.c(vte_terminal_reset): scroll to the bottom when resetting. 2002-08-07 nalin * src/vte.c(vte_terminal_draw_cells): don't trust XftDrawString32() to advance linearly for monospaced fonts (#90164). 2002-08-07 nalin * src/vte.c(vte_terminal_reset): reset the default setting as well (#89506). 2002-08-07 nalin * src/vte.c(vte_terminal_draw_cells): perform Xft remapping for Xft1, switch back to PangoX. 2002-08-06 nalin * src/vte.c(vte_terminal_set_encoding, vte_sequence_handler_local_charset): use g_get_charset() instead of nl_langinfo() to determine the default codeset, and to check if it's UTF-8. Patch from Hidetoshi Tajima. * src/vte.c(vte_terminal_set_encoding): don't leak conversion descriptors when changing the encoding fails. Patch from Hidetoshi Tajima. * src/vte.c(vte_terminal_send): don't read past the converted string when performing paste substitutions. * src/vte.c: rework the straight-Pango rendering routines to call normal Pango instead of PangoX. * src/vte.c(vte_terminal_ensure_cursor): speed up the "add many cells" case a bit. 2002-08-05 nalin * src/vte.c(vte_cell_is_between): sort the two endpoints correctly and provide a boolean to control whether or not the endpoint is "in". * src/vte.c(vte_cell_draw_rows): check if a cell is selected using the right indicator. * src/vte.c(vte_terminal_get_text): when adding a newline to the end of a returned line, don't show it as being in the rightmost column. * src/vte.c(xlfd_from_pango_font_description): turn the DPI, pixel size, and added info into wildcards. * src/vte.c(vte_terminal_draw_cells): go back to drawing individual cells when using Xlib. * src/vte.c: Compute right-side padding as well as left. * src/vte.c(vte_terminal_init): disable use of PangoX by default. * src/vteapp.c: add -D to add the same patterns profterm does to test dingus hiliting. 2002-08-03 Havoc Pennington * src/vte.c (vte_terminal_setup_background): add a gdk_flush() before the error trap pop, just for paranoia, may help with #89049 2002-08-02 nalin * src/vte.c(vte_terminal_send): Substitute carriage returns for newlines when pasting text to the child, fixing weird paste behavior in pico and friends. 2002-08-02 Christophe Merlet * configure.in: Added fr to ALL_LINGUAS. 2002-08-01 nalin * src/pty.c, src/pty.h: Expose vte_pty_set_size() and get_size() to localize terminal ioctl usage. * src/ring.c(vte_ring_validate): Don't repeatedly compute the same value when we know it won't change. * src/vte.c(vte_wc_from_unichar): Implement for the non-STDC_ISO_10646 case, heavily based on patch from Hidetoshi Tajima. * src/vte.c(vte_terminal_ensure_cursor): Don't initialize the local data unless we have to. * src/vte.c(vte_terminal_process_incoming): Don't insert NUL characters into the display, matching behavior of xterm. * src/vte.c: Clean up use of various G_PRIORITY values throughout to allow for simpler tuning. Rewrite rendering code to use per-paint PangoLayouts when they're needed, use Xft2's DrawCharSpec function when available, and to cut down on X requests. Don't paint on expose events if the window isn't realized, drawable, and at least partially visible. Don't deselect previous selection when the user clicks unless there's also a drag first. 2002-07-31 nalin * src/pty.c: Include if available, per patch from Hidetoshi Tajima. * src/trie.c: Include missing , spotted by Hidetoshi Tajima. * src/vte.c: Initialize new lines created in insert_lines() to the current default attributes like al() does. 2002-07-30 nalin * configure.in: Check for wint_t and attempt to allow compiles even when wint_t isn't defined (this type is used only debug code, so it shouldn't break anything). * src/caps.c: Remove "te" and "ti", which are logical, in the same way "so" is, from the known capabilities lists. Add a "is a key" field to the termcap list so that we don't match against keystrokes in case they're also control sequences. * src/interpret.c: Use tables instead of tries. Don't add key sequences to the table. * src/pty.c: Fix incorrect invocation in sample. * src/reaper.c: Include stdlib.h to quiet compiler warning. * src/trie.c, src/trie.h: Remove the unused precomputing routines. * src/utf8echo.c: Switch to link with tables instead of tries. * src/vte.c: Switch to using tables instead of tries. Map cursor-backward to LE instead of le, which handles parameters right. Don't add key sequences to the parsing table. Tune updates so that they occur less often when we're processing large amounts of data from the child. Add a 'status-line-changed' signal. Implement fs() and fix ts(). Add ::get_status_line() to get the contents of the status line. Obey it() when setting default tabstops. Implement cursor_next_line(), cursor_lower_left(), cursor_preceding_line(), cursor_horizontal_and_vertical_position(), erase_characters(), and insert_blank_characters(). Implement nw(). 2002-07-26 nalin * src/vte.c: Initialize new lines added for al(). Spotted by jrb. 2002-07-25 Ole Laursen * configure.in: Added Danish translation. 2002-07-25 nalin * README: Note that bold isn't broken any more. * termcaps/xterm: Note that k; was added. * src/pty.c: Set the proper number of columns in the window size. * src/ring.h: Change macro argument names to hopefully not step on application code. * src/vte.c: Set the terminal size to the default size as specified in termcap at init-time. 2002-07-24 nalin * src/pty.c: Add private vte_pty_set_size() function. * src/pty.c, src/pty.h: vte_pty_open() takes size arguments now. * src/vte.c: Open the PTY with the proper initial size. 2002-07-23 nalin * src/ring.c, ring.h: Expose the ring implementation and convert several simple functions into macros. * src/vteapp.c: Pass all long options on to gtk_init(). 2002-07-23 nalin * src/vte.c: Fix realize/unrealize to be properly reversible. Use the font from the default style unless we're explicitly given one. * src/vteapp.c: Don't set base size or minimum size geometry hints when sizing the terminal widget. 2002-07-22 nalin * src/pty.c(vte_pty_ptsname): Fix an incorrect logic check. 2002-07-19 nalin * src/vte.c(vte_terminal_set_color_internal): If we're changing the background color, apply it to the widget's window as well, from msw. 2002-07-19 nalin * src/vte.c: Undo the scrolling changes -- there too many combinations of circumstances that cause them to not work right. 2002-07-18 nalin * src/vte.c: Fudge the repaint line count by one when scrolling regions to ensure that the old cursor gets repainted. Calculate the area which needs to be repainted when reverse-scrolling correctly. 2002-07-18 nalin * src/vte.c: Implement enough of set-mode and reset-mode to allow toggling of insert mode using this sequence. Move all scrolling into vte_terminal_scroll_region and use gdk_draw_drawable to avoid repainting from scratch whenever possible. 2002-07-17 nalin * configure.in: Actually set ALL_LINGUAS so translations get installed. * README: Document the weirdness that is cursor movement around wide characters. * src/vte.defs: Bind set_color_bold(). * src/debug.c: Suppress warnings when $VTE_DEBUG_FLAGS isn't set. * src/pty.c, src/reaper.c, src/termcap.c, src/trie.c: Provide for debug messages in the test program. * src/interpret.c, src/trie.c: Use libc stdio instead of g_print for printing what might be part of a multibyte sequence because g_print checks for validity. * src/interpret.c, src/trie.c, src/utf8echo.c, src/vte.c: Use gunichar instead of wchar_t in places where a gunichar is expected. Provide a means for converting from wchar_t to gunichar for the sake of X11 calls which want a wchar_t. * src/trie.c: Provide vte_trie_wide_encoding() for finding a giconv target which is hopefully compatible with gunichar. Likewise provide vte_trie_narrow_encoding() to find one compatible with iso-8859-1. * src/vte.c: Fall back to ISO-8859-1 if we can't set things up for the current locale encoding at startup time. Fall back to the current encoding if we can't perform a given dynamic switch. 2002-07-16 nalin * configure.in: Set GETTEXT_PACKAGE correctly, noted by menthos. 2002-07-16 nalin * src/vte.c (vte_terminal_set_colors): Guess at an appropriate bold version of the foreground color instead of hard-coding in a default. * src/vte.c, src/vte.h (vte_terminal_set_color_bold): Add. 2002-07-16 nalin * src/trie.c: Correctly check for g_iconv_open() failure. * src/vte.c (vte_terminal_set_encoding): Try to give a meaningful error when g_iconv_open() fails, even though we're screwed. 2002-07-15 nalin * src/vte.c: wrap the new Xft/fontconfig-specific code in HAVE_XFT * src/vte.c: Revert some changes in how new cells were initialized, removing various cosmetic problems. * src/vte.c (vte_terminal_process_incoming): Discard the proper number of characters when we don't recognize a sequence, previously we left one byte that should have been removed. 2002-07-14 Havoc Pennington * src/vte.c (vte_terminal_get_cursor_position): decrement spaces as we go through the loop, it was nice and infinite. 2002-07-13 nalin * src/vte.c (vte_terminal_get_text): Add the proper number of attribute structs to the attribute array to fix crashes which occurred when the buffer contains non-ASCII text (Red Hat #67930). 2002-07-12 nalin * src/vte.c: Small optimization in the al() and dl() handlers. al() doesn't move the cursor, per GNU termcap docs. Check for a pixbuf in the bgfx check instead of pixmap, which was the wrong type. 2002-07-12 nalin * src/vte.c: Add patch to heed Xft/fontconfig settings as kept by GTK. Based on patch from otaylor. 2002-07-12 nalin * src/slowcat.c: Added. * src/vteapp.c: Add -a/-b flags to control audible bell and blinking cursors. Only send "pwd" as an initial command if there wasn't a command specified on the command line. Add a simple help message. * src/vte.c: Bind F13-F35 per termcap. Treat GDK_KP_Delete as GDK_Delete. Map Ctrl+F1-F12 to F13-F24. Fix dc() to ensure that the rows stays full and that newly-added cells get the default attributes. Fix cl() to clear all rows on the screen with the default attributes (bce). Default to using Xft if available for consistency with GTK. 2002-07-11 nalin * src/vte.c: Treat super, hyper, meta, and alt as modifiers when deciding to scroll-on-keypress. Noted by jrb. * src/vte.c: Always map \r and \n to cr and so, even when they're defined by the termcap. * src/vte.c, src/vte.h: Rework how default colors are set up, and add vte_terminal_set_color_foreground and vte_terminal_set_color_background. * src/vte.h: Remove includes for local headers which apps are not likely to never use, cleaning up the namespace a little. * python/vte.defs: Bind vte_terminal_set_color_{fore,back}ground. * src/debug.h, src/ring.h: Use G_BEGIN_DECLS/G_END_DECLS. * src/reaper.h: Use G_BEGIN_DECLS/G_END_DECLS in the right place. * src/vteapp.c: Add -B/-T flags to set background images and transparency. 2002-07-02 nalin * src/vte.c: Make shift+button1 extend selection. 2002-07-01 nalin * src/vte.c (vte_terminal_draw_char): Draw unicode line-drawing code points natively as we do for the GR1 support, in case the current font doesn't include glyphs for them. * src/vte.c: Test for g_iconv_open() failure properly (compare result to ((GIConv)-1), not NULL). * src/vte.c: Rework recovery from illegal sequence errors in the input stream to be much more aggressive about it. 2002-06-25 nalin * src/vte.c: Bind F10 to "k;", not "k0". * termcaps/xterm: Add "k;" defined as F10. 2002-06-25 nalin * src/vte.c (vte_terminal_reset_rowdata): Check for redundant resizes. * src/vte.c (vte_terminal_set_scrollback_lines): Keep the alternate screen buffer size the same as the window height, because xterm's alternate screen doesn't backscroll. * src/vte.c (vte_terminal_get_text): Don't append spaces to multicolumn characters when reading the screen's contents. * src/vte.c: Don't overexpose neighboring cells any more. Cleanups. * src/ring.h, src/ring.c: Add vte_ring_max() to read a ring's maximum size. 2002-06-24 nalin * src/vte.c (vte_sequence_handler_decset_internal): Treat option 1049 as a combination of 1047 and 1048. * src/vte.c (vte_terminal_finalize): When finalizing while holding the selection, throw the selection onto the clipboard without an owner so that it doesn't just disappear. 2002-06-19 nalin * src/vte.c (vte_sequence_handler_set_title_int): Fix a logic bug that got rid of the title always, not just when conversion failed. 2002-06-19 nalin * src/vte.c: Clear the alternate screen when switching to it. 2002-06-18 nalin * src/vte.c: Fix refs/derefs with IOChannels and sources. Clean up I/O GIConv descriptors at finalize-time. 2002-06-18 nalin * src/vte.c: Make cursor_visible a widget-wide (not per-screen) setting. 2002-06-18 nalin * autogen.sh: Correct automake version check to require 1.5, heads up from Glynn Foster. 2002-06-18 nalin * src/trie.c (vte_trie_match, vte_trie_match_x): Sort out greedy vs. non-greedy pattern matching. * src/vte.c (vte_sequence_handler_decset_internal): Make 1047 an alias for 47 (use alternate buffer), and handle cursor save/restore properly. 2002-06-14 nalin * src/vte.c, src/vte.h (vte_terminal_fork_command): Add a parameter for passing in environment variables to add. * src/termcap.c: Preprocess out unused comment() and generate() funcs. * src/Makefile.am: Bump library version number. * vte.spec: 0.4.0 2002-06-14 nalin * configure.in, python/Makefile.am: Handle cases where pygtk isn't installed in the prefix we're configuring for. * src/Makefile.am: Link libvte to its library dependencies. 2002-06-13 nalin * src/vteaccess.c: Stop watching for hierarchy-changed signals -- the accessible container which is our parent handles it already (from msw). 2002-06-13 nalin * src/vteaccess.c: Re-read cursor position immediately on "cursor-moved" events, and emit the "text-caret-moved" signal then as well. Don't override the signal handlers for signals we emit, bad things can happen (from msw). 2002-06-12 nalin * src/vte.c: Re-read the termcap when we change emulation, because the location of the file may have changed. * src/reaper.c: Also tell the parent the child died when the child dies due to an uncaught signal. * python/vte.override (_wrap_vte_terminal_fork_command): Handle default value for the command. 2002-06-12 msw * python/vte.override (_wrap_vte_terminal_fork_command): implement 2002-06-12 msw * acinclude.m4: added AM_CHECK_PYTHON_HEADERS from pygtk * configure.in: rewrote python checks to be more robust * python/Makefile.am (CFLAGS): include @PYTHON_INCLUDES@ 2002-06-12 msw * src/vte.c (vte_terminal_get_accessible): turn the logic around to be the right way 2002-06-12 nalin * src/vte.c: Cache the result of vte_terminal_get_accessible() and unref it at finalize-time. Add debug messages to log signals emitted by the widget. Implement vte_terminal_get_encoding and vte_terminal_get_emulation, emit signals when these change. * src/vteaccess.c: Emit a "text_caret_moved" signal when the cursor moves. * configure.in, src/Makefile.am: Add rules for building python modules. 2002-06-12 msw * src/vteaccess.c (vte_terminal_accessible_get_text): accept end_offset of -1, which means "until the end". * src/vteaccess.c (vte_terminal_accessible_new): never set the description to a NULL pointer 2002-06-10 nalin * Makefile.am, configure.in: Include gettext support. * src/vte.c, src/vte.h: Expose vte_terminal_set_encoding(). * src/vte.c: Finish merging otaylor's Xft2 patch (oops). Compute padding correctly. * src/pty.c, src/reaper.c, src/trie.c, src/vte.c: Mark warnings for possible translation. 2002-06-07 nalin * src/vte.c: Center characters in their cells, caching their extents. 2002-06-06 nalin * src/vte.c, src/vte.h: Add get_cursor_position(). Remove get_snapshot() and free_shapshot(). * src/vte.c: Fix a logic bug that caused us to scroll to the bottom even if the user just pressed and released a modifier key. Fix saving of the font in set_font() in most cases, where we weren't saving the new font before. Scroll-to-bottom on input method commits, which are also the result of keystrokes, when scroll-on-keystroke is enabled. * src/vteaccess.c: Rework to use get_text() and get_cursor_position() instead of get_snapshot(), so that selection and accessibility both agree on what's visible (or "visible"). 2002-06-05 nalin * configure.in: Check for pangoxft with Xft1 or Xft2, hopefully getting things right for either case. Originally from patch by andersca. * src/reaper.c, src/reaper.h: Add a singleton object to watch for SIGCHLD when child processes quit. * src/vte.c: Emit a "child-exited" signal when a child started with fork_command() exits. * src/vte.c: Make a better guess at font metrics when using Xft by measuring the extents for a string of representative characters. * src/vte.defs: Add. Not very useful yet. 2002-05-31 nalin * src/vte.c: Implement font setting using PangoX to convert Pango font descriptions to core font xlfds for use when drawing with Xlib. 2002-05-29 nalin * src/trie.c, src,vte.c: Finish switching iconv to g_iconv. I think this was a part of Hidetoshi Tajima's patch that I lost. Free regexes when we're done with them. 2002-05-28 nalin * src/vte.c: Fix matching when scrolling delta isn't zero. Fix async background updating (report from Richard Neal Plana). Fix cb() and ce() when the cursor is on a line without data (needed to create it) and when cells being cleared don't exist (needed to create them) (report from Garret LeSage). * src/vte.c, src/vteaccess.c: Always free the segment when freeing arrays and strings. 2002-05-24 nalin * autogen.sh: Call libtoolize. (#82836) * src/vte.c: Fix stupid segfault in set_scrollback_lines. (Patch from notting.) Make another attempt to convert Pango font descriptions to xlfds. * src/vteapp.c: Add -c, -f, -t command-line flags for easier testing. 2002-05-22 nalin * src/vte.c: Fix hiliting of matched strings. 2002-05-21 nalin * src/vte.c: Filter key release events through input methods. (Patch from otaylor.) When building with gcc, use -std=c99. 2002-05-21 nalin * autogen.sh, src/termcap.c, src/utf8echo.c, src/vte.c: Patch from Hidetoshi Tajima to fix building on Solaris systems, remove use of syntax that might be specific to gcc, and fix an overrun in vte_termcap_generate(). (#82433) 2002-05-18 andersca * src/vte.c: Don't queue a background update if the background isn't transparent. 2002-05-16 nalin * src/vte.c: Snip trailing whitespace off of copied lines, insert an end-of-line only when the copied line doesn't go to the right edge, don't overrun right edge, even in insert mode. Fix displaying of underlined text. Finish implementing matching. 2002-05-15 nalin * src/vte.c: Send kI on insert key. Don't send drag events when the child has only asked for click events. Fix crashbugs in selection. When getting scroll events, send mouse 4/5 events to the child instead of performing a history scroll if the child wants mouse events. Start adding match support, merging how selection views the buffer with how matching views the buffer, though matching doesn't work yet. 2002-05-14 nalin * src/vte.c: Don't try to draw nul characters, most fonts can't. Don't send motion-tracking events to the child unless we're dragging. Fix ce so that it works even right after startup. Make sure that repainting the entire window actually exposes the visible parts of the window. Fix tab clearing to also allow removal of the current tabstop. Implement save-mode and restore-mode. Start on reverse-video mode. Don't scroll on modifier keypress events. Rework part of clipboard copy. * termcaps/xterm: Add missing F11/F12/End keysyms to bundled xterm termcap. 2002-05-13 nalin * src/debug.c: Add "ALL" as a debug flag, aliased to everything. * src/pty.c: Print debug info after redirecting stdio. * src/trie.c: When debugging, count only decision nodes. * src/vte.c: Fix se, for real this time. Add a mostly-ignored protected attribute. Handle am, bw, ul flags properly. Make cd clear the current line, too. Make ce fill the current default attributes through the end of the line. Handle cS. Fix cv to work when we have a scrollback buffer. Handle ll, mp. Line wrap on nd. Reset tab stops on hard reset only. Handle soft-reset and full-reset. Handle uc. Initialize scrollback line count properly. Tweak drawing of alternate 'a' to get rid of artifacts. Reset insert mode, cursor visibility, and scrolling regions when resetting. 2002-05-10 nalin * src/vte.c: Fix IC, which should *always* be done in insert mode, from otaylor. Make delete mode do nothing. 2002-05-09 nalin * src/vte.c: Fixes to usage of iconv, from otaylor. Remap certain characters which are missing in the current Xft font to similar characters if they are in the font, from otaylor. Change default emulation to "xterm", cleaning up confusion over what standout really means. Reorganize some internals. Complain when an application sends us a key-press sequence, as if we knew what to do with one of those. Implement bt, ct, st. Reimplement ta. * src/debug.c, src/debug.h: Added. 2002-05-08 nalin * src/vte.c: Implement mouse motion-event and any-event tracking. 2002-05-07 nalin * src/vte.c: Implement the rest of the special graphics characters. 2002-05-06 nalin * src/vte.c: Finish implementing window-manipulation sequences. Rename signals to be more consistent. Add thin wrappers for emitting signals, and use them everywhere. Support pangox even when XFT isn't available. Try to provide bold text again. Add signals for most of the window manipulation control sequences. Start handling mouse button events. Hide the mouse cursor when we get keyboard events. Use a different mouse cursor if the child is mouse-aware. Handle eA() by treating it as as(). * src/caps.c, src/caps.h: Export definitions of VTE_CAP_CSI and friends. 2002-05-04 nalin * src/vte.c: Implement device-status-report and dec-device-status- report. Clamp location values in sequence_handler_cm() to the dimensions of the terminal window so that resize(1) will work right. Start handling window-manipulation sequences. 2002-05-03 nalin * src/termcap.c: Export a vte_termcap_strip() function for preprocessing escape sequences and whatnot from capability values. * src/typescrypt: Removed. * src/vte.c: Pass the hard-coded xterm-specific capabilities through vte_termcap_strip(), which fixes a few weird bugs. Discard invalid might-be-control-sequence sequences, like other emulators do. Don't consider modifier keys, by themselves, to be enough to scroll-on-key. When snapshotting, actually snapshot all of a row instead of just the last character. Don't run past the end of snapshot contents when reading them. * src/vteaccess.c: Clamp offsets so that they always sort right. 2002-05-02 nalin * src/termcap.c: Fix handling of triple-digit escaped characters, which weren't being processed right if the first digit was '1' instead of '0'. * src/trie.c: Rework trie matching to return the address of the character which ended the match attempt, which should cut down on useless initial-substring checks. Fix a subtle bug which caused intermittent off-by-somenumber errors in the return address. * src/vte.c: Remove several gdk_window_scroll() calls which apparently aren't buffered. Convert invalid multibyte characters to '?' instead of just dropping them. Provide a means of setting the backspace/delete bindings. Add a poor xlfd_from_pango mapping function which would need serious work to be useful. Get rid of warnings when we're transparent and the root window pixmap isn't as big as the root window because it's been tiled. Setup bindings using the export functions. Set the default terminal size to 80x24 instead of 60x18, which was originally chosen for debugging purposes. Don't use $SHELL as the command to invoke when starting up a default command (as in the test app) -- libtool wrappers keep screwing this up. Don't limit the number of characters we skip over in invalid multibyte sequences -- sometimes that's not enough. Hook up ts/te, ks/ke sequence handlers. * src/vteaccess.h: Fix a crashbug due to mismatch between parent field in the object's structure and its inherited object's type. Fix more crash bugs due to initialization weirdness. More to go. 2002-05-01 nalin * src/vte.c: Try @pkgdatadir@/termcap/$TERM when reading termcap files. This fixes the app on systems with no /etc/termcap, and also speeds up loads and reduces memory consumption for xterm-color at the expense of making on-the-fly emulation changes impossible. Don't xor reverse with itself when drawing characters (this broke when snapshotting was added). * termcaps/Makefile.am, termcaps/xterm-color: include a default termcap for xterm-color. * src/termcap.c src/termcap.h: make _find_boolean return a gboolean instead of an int. 2002-04-30 nalin * src/vte.c: Disconnect from toplevel window_configure events at finalize-time. 2002-04-30 18:06 nalin * src/vte.c: Track and free idle task tags properly. Change F11 and F12 capabilities from 'k;' and 'F1' to 'F1' and 'F2'. Send a NUL on control space. (#80350) Allow setting and checking of word characters, and change select-by-word behavior to use the word character list. Emit "contents_changed" signals whenever the visible contents change, and "cursor_moved" when the cursor moves. Add snapshotting method. Scroll when auto-margin handling moves the cursor to the next line. Assume that the locale charset is actually ISO-8859-1 when we're in a UTF-8 locale, so we don't toggle from UTF-8 to UTF-8. Treat GDK_KP_Page_Up as a GDK_Page_Up, ditto for GDK_KP_Page_Down and GDK_KP_Tab and GDK_KP_Space. Add vte_terminal_get_font(). Don't bother messing with ring buffers if we're resizing them to their current sizes. * src/pty.c, src/vte.c: Return a pid from vte_terminal_fork_command(). * src/vteaccess.c, src/vteaccess.h: Add VteTerminalAccessible object type. It might even work, mostly. 2002-04-29 14:25 nalin * src/vte.c: Handle me() by resetting all attributes (including colors, which we weren't resetting before). 2002-04-29 10:57 nalin * src/vte.c: Handle kb by treating it as a backspace. Make pangox rendering the default. Handle control-key sequences better, unless the input method is hiding the modifiers from us. Set the default TERM variable to "xterm-color". * src/vte.c src/vte.h: Get rid of vte_terminal_set_core_font(). 2002-04-26 19:14 nalin * src/vte.c: Punt all changes to background images and transparency to an idle task. Only insert newlines into the copy buffer when the last column in a given line doesn't have a character in it. 2002-04-26 17:35 notting * src/pty.c: use execlp/execvp 2002-04-26 12:09 nalin * src/Makefile.am, src/ring.c, ring.h: add a ring buffer for storing scrollback data. * src/vte.c: use a ring buffer instead of a GArray to hold scrollback rows. Fix a bug in that. Try to preserve what the user sees when the scrollback size changes. * src/vteapp.c: set a default scrollback buffer size of 100. 2002-04-26 00:49 nalin * Makefile.am: run autogen before tagging so that the tag is always correct. * README: update. * configure.in: add pangox to the list of GTK+ 2.0 modules we link with. * src/vte.c, src/vte.h: add vte_terminal_set_scrollback_lines(), add some code to use pangox for rendering before trying core rendering, which should make font selection actually work. * vte.spec: tweak description text. 2002-04-25 12:23 nalin * Makefile.am: Uncomment the tag target. 2002-04-25 12:22 nalin * HACKING, Makefile.am, configure.in: Add some targets for building tarballs in a hopefully-reproducible way. 2002-04-25 12:12 nalin * src/vte.c: Let GDK_USE_XFT turn on Xft as well as VTE_USE_XFT. 2002-04-25 01:45 nalin * src/vte.c: Handle decoding errors better. 2002-04-25 00:49 nalin * vte.spec: Include pkgconfig files in the package. 2002-04-25 00:43 nalin * src/vte.c: src/vte.c: Make multiple calls to set_background_transparent() and set_background_image() do the right thing. 2002-04-25 00:05 nalin * src/vte.c: Reverse the sanity check in vte_terminal_set_background_image_file() so that it rejects zero-length strings, not the other way around. 2002-04-24 23:54 nalin * src/trie.c: Demote some debug messages to being trie-specific debug messages. * src/vte.h: Declare vte_terminal_set_core_font() for non-Xft use. * src/vte.c: Adjust idle priorities to make the terminal be more responsive. Fix a double-free that corrupted the heap on core font loads. Rework some pixbuf handling to only create new pixbufs when we need to modify what we are given. Revert a patch for profterm crackiness that's gone now. 2002-04-24 20:49 nalin * README: update to-do list. * autogen.sh: remove --disable-shared. * src/pty.c: remove a memory leak. * src/termcap.c: fix a possible read-before-start-of-buffer. * src/trie.c: use iconv instead of mbrstowcs, even if it's just ASCII->W_CHAR_T. * src/vte.c: fix a few memory leaks. Only reset the IM context when we're realized, which is the only time we actually have an IM context. Don't create a copy of a pixbuf if we don't need to desaturate it, just ref it and use it directly. 2002-04-23 19:40 nalin * src/vte.c: Display UTF-8 preedit strings properly, fix copy (no, really this time), and reset IM contexts when pasting text in. 2002-04-23 18:01 nalin * src/pty.c: Print debug messages before redirecting stdio. * src/vte.c: Fix displaying of highlighted multi-column text. Use the GTK global setting for cursor blinking to control das blinkencursor. * src/vte.h: Remove function for setting blinking timeout. 2002-04-23 15:54 nalin * src/pty.c: Fix a compile warning. 2002-04-23 15:54 nalin * autogen.sh: Default to include optimization, even for debugging. * configure.in: Move AM_CONFIG_HEADER to the top. * src/pty.c: Create non-login shells by default (when argv is NULL, otherwise it's up to the caller anyway. * src/vte.c: Add mostly-complete input method support. * src/vte.h: Add vte_terminal_im_append_menuitems(). 2002-04-23 13:04 hp * src/vte.c, src/vte.h: add vte_terminal_set_font 2002-04-22 17:00 hp * src/vte.c: when setting background color, use allocated color, and don't overwrite with bg of None 2002-04-22 16:50 hp * src/vte.c: use gdk_rgb_find_color to allocate X colors 2002-04-22 16:35 nalin * src/vte.c, src/vte.h, src/vteapp.c: Add vte_terminal_feed_child() to send UTF-8 strings to the child process, and actually apply Havoc's fix right this time. 2002-04-22 09:56 nalin * src/vte.c: Prevent double-free of incoming buffer (patch from Havoc). 2002-04-16 01:43 nalin * README: Fix typo. * src/vte.c: Make blinking cursors stay on while the user is typing, desaturate images using integer math. 2002-04-05 00:58 nalin * vte.spec: Add less useless descriptions. * src/vte.c: Fix an uninitialized variable and missing declaration error. 2002-03-24 21:52 nalin * src/vte.c: Ensure that there's a data row whenever we scroll forward, fixing strangeness when I suspend and resume vim. 2002-03-24 19:08 nalin * src/vte.c: Copy to clipboard synchronously, which fixes a number of problems. Implement background transparency. 2002-03-17 20:59 nalin * src/vte.c: Rework backgrounds to take advantage of gdk's automatic drawing. * src/vteapp.c: Try to enable transparency if no background image is present. 2002-03-17 20:58 nalin * autogen.sh, configure.in: Adjust warnings used when in maintainer mode. 2002-03-17 01:15 nalin * src/vte.c: Draw the cursor as an unfilled box when the widget does not have focus. 2002-03-17 01:04 nalin * src/vte.c: Fix handling of scroll-on-output to always scroll when only we're at the bottom of the buffer. * src/vteapp.c: Disable scroll-on-output by default. 2002-03-17 00:45 nalin * src/vte.c src/vte.h: Rework tiling of background images, and implement a blinking cursor. * src/vteapp.c: Set blinking cursor by default. 2002-03-14 02:58 nalin * src/caps.c: Corrections to some xterm control sequences. 2002-03-14 02:32 nalin * configure.in: Define PACKAGE correctly. * src/vte.c src/vteapp.c: Move most of the tear-down code into the widget finalize method; handle EOF and widget destruction correctly to prevent segfaults. 2002-03-14 00:48 nalin * configure.in: * configure.in: Define PACKAGE. 2002-03-14 00:18 nalin * configure.in: Disable gdk-pixbuf's deprecated functions. * vte.c: Discard non-ascii bytes to clear logjams that happen when we pass invalid terminal data to iconv(). 2002-03-13 23:07 nalin * src/iso8859mode.c, src/utf8mode.c, src/vte.c, src/vte.h: add missing includes * vte.c vte.h: implement background color setting, provide a function for setting the defaults, tile background images properly 2002-03-13 21:12 nalin * configure.in, vte.pc.in, src/vte.c: Remove gdk-pixbuf-xlib dependency by using just gdk-pixbuf. * src/vte.c: Perform background image desaturation locally. 2002-03-13 14:37 nalin * src/vte.c: Don't add the widget's allocation offsets when generating expose events. 2002-03-13 14:22 nalin * src/vteapp.c: Don't try to use transparency for now. 2002-03-13 13:29 andersca * src/vte.c, src/vte.h: Add more functions that profterm can use. 2002-03-13 12:51 andersca * .cvsignore, vte.pc.in: Silent cvs and add gdk-pixbuf-xlib to depends in the .pc.in file 2002-03-13 12:37 andersca * src/.cvsignore: Sliff sloff 2002-03-13 12:37 andersca * src/.cvsignore: sssh 2002-03-13 12:19 nalin * configure.in: Add gdk-pixbuf-xlib-2.0 as a module requirement. 2002-03-13 01:21 nalin * src/vte.c, vte.h, vteapp.c: * vte.c: Add set_size, set_audible_bell, set_scroll_on_output, set_scroll_on_keystroke, copy_clipboard, paste_clipboard, set_background_image, set_background_image_file, and set_background_saturation. Also added a broken set_background_transparent. 2002-03-12 22:35 nalin * src/vte.h: adjust the name of a declared function (was _set_size, is _size_set) 2002-03-12 22:11 nalin * src/vte.c: Get rid of a global copy of the parent class. * vte.c: Implement ec, ic, and IC handlers. 2002-03-12 22:10 nalin * src/vte.h: Fix a typo in a comment (we don't "omit" signals). 2002-03-12 15:48 nalin * src/caps.c: Recognize xterm cursor-character-absolute sequence. * src/vte.c: Handle cursor-character-absolute. Change the default font to "mono" 14 point when using Xft. 2002-03-12 15:22 nalin * src/vte.c: Handle the ve (cursor visible) control sequence. 2002-03-12 15:19 nalin * src/vte.c: Handle dec private mode set (cursor visibility). 2002-03-12 15:13 nalin * src/vte.c, src/vte.h, src/vteapp.h: fix signed/unsigned problems (fixes from alexl) 2002-03-11 20:29 nalin * src/vte.c: Make scroll-on-output scroll on control sequences, too. 2002-03-11 20:19 nalin * src/Makefile.am, src/iso8859mode.c, src/utf8mode.c: Add simple programs for moving a terminal in and out of UTF-8 mode. * src/vte.c: Be more verbose about iconv() errors. Implement dc and DC handlers. Handle auto-wrapping (the "am" flag). Remove scrolling cheats from the al handler, which made the window jump. 2002-03-11 02:39 andersca * src/vte.c: Add a finalize handler and free our title strings there. 2002-03-11 02:05 nalin * Makefile.am, configure.in, src/vte.c, src/vte.h, src/vteapp.c: Emit "window_title_changed" and "icon_title_changed" when the titles change, and store the new values in a public field so that a handler can retrieve the values (patch from Anders Carlsson). 2002-03-11 01:54 nalin * vte.pc.in: Add vte.pc, from Anders Carlsson. 2002-03-11 01:47 nalin * src/vte.c: Fix a duplicate-idle-handler bug. 2002-03-11 01:32 nalin * README, src/vte.c: Fix selection (except maybe the end-of-line stuff). 2002-03-10 23:44 nalin * src/vte.c: Whoops, I broke selection. Fix that. Implement selection by lines. 2002-03-10 23:08 nalin * src/vte.c: Move character rendering into a common function so that the cursor is always drawn the same as other characters (fixes previous glitches when using Xft and when the cursor was over an alternate charset character). 2002-03-10 03:31 nalin * src/vte.c: Differentiate between single, double, and triple-click for selection (still need to do something with that info). 2002-03-10 03:16 nalin * stamp-h.in: remove this file 2002-03-10 03:15 nalin * configure.in: Don't check for pango because we never call pango directly. 2002-03-10 03:13 nalin * src/vte.c: Deselect properly when something else is inserted into the clipboard. 2002-03-10 02:26 nalin * AUTHORS, HACKING, README, src/utf8echo.c, src/vte.c: Fix wide-character handling (now handles mid-stream encoding changes correctly). Updates to the meager docs. 2002-03-09 02:41 nalin * Makefile.am, vte.spec, src/Makefile.am: Add a .spec file (make dist; rpm -ts vte*.tar.gz; rpm --rebuild) to make building a package easier. 2002-03-09 02:24 nalin * src/vte.c: skip over space columns when selecting 2002-03-09 02:20 nalin * src/pty.c, src/vteapp.c: Use a login shell by default. 2002-03-09 02:10 nalin * src/vte.c, src/vte.h, src/vteapp.c: Rework input queueing to allow for feeding without a pty. Use gdk_window_scroll() in _al and _up handlers, and in the _do handler, because it's usually faster. 2002-03-08 02:52 nalin * src/vte.c: Implement copy and almost-correct selection highlighting. 2002-03-07 21:30 nalin * src/vte.c: Use a queue for pasting data. Try to get dragging detected right (doesn't work). 2002-03-05 19:21 nalin * src/vte.c: Mark the beginning of a selected area. 2002-03-05 19:17 nalin * src/vte.c: Make pasting asynchronous. 2002-03-05 19:07 nalin * src/vte.c: actually free clipboard data when finished with it 2002-03-05 19:02 nalin * src/vte.c: Implement middle-button paste. 2002-03-05 18:55 nalin * src/vte.c: Properly convert from utf-8 or wchar_t strings when sending data to the pseudo-terminal. 2002-03-04 19:53 nalin * src/vte.c: Implement shift/pgup/pgdown scrolling. Make scroll-on-keypress and -on-output easier to toggle. 2002-03-04 19:26 nalin * src/vte.c: Spec out the rest of the alternate characters I haven't implemented yet. Remove a function that can't be easily written (scroll_rows). Correctly update the insertion delta when scrolling, to fix man(1) again. 2002-03-04 19:16 nalin * src/vte.c: Discard redundant cursor-position exposes. 2002-03-04 18:57 nalin * src/termcap.c, src/termcap.h, src/vte.c: Use ssize_t to measure string offsets in termcap, and don't assume that all capabilities have values. This fixes some nasty crashes. 2002-03-04 11:53 nalin * src/vte.c: add a missing bounds-check in the erase-in-row function 2002-03-04 01:13 nalin * README, src/vte.c: Send the slave pty's erase character when the user hits backspace. 2002-03-04 00:59 nalin * src/vte.c: Draw cursors to fill the entire cell. Draw the blank alternate character (ooh, tough). Remove a redundant expose. 2002-03-03 23:49 nalin * src/trie.c: stop using wcsnlen, which is a GNU extension 2002-03-03 23:43 nalin * src/caps.h, src/pty.h, src/termcap.h, src/trie.h, src/vte.c, src/vte.h: Add support for the line-drawing characters in the special characters and line-drawing character set. (See [http://vt100.net/docs/vt102-ug/table5-13.html].) 2002-03-03 21:57 nalin * src/pty.c, src/pty.h, src/vte.c: Properly differentiate insertion delta (working screen) from scrolling delta. Add environment setting to the pty code. 2002-02-27 21:54 nalin * src/trie.c, src/vte.c, src/vte.h: Make the Xft support use long-lived data items. Clean up a lot of other Xft-related code. 2002-02-27 10:45 nalin * src/vte.c: actually hook up the nd handler to the "nd" sequence 2002-02-27 00:05 nalin * autogen.sh, configure.in, src/vte.c, src/vte.h: - Add sub-optimal Xft rendering (set VTE_USE_XFT to "1" to try it); still needs quite a bit of work to be useful. Implement character-position-absolute and line-position-absolute, which I think are the only sequences which emacs uses and which weren't implemented. 2002-02-25 12:43 nalin * src/Makefile.am: distcheck fixes 2002-02-25 12:41 nalin * README: add that line-drawing does not work to README 2002-02-25 12:40 nalin * configure.in, src/Makefile.am: tree fixups 2002-02-25 12:38 nalin * configure.in: fix autoconf reference file problem 2002-02-25 12:38 nalin * src/Makefile.in: remove stuff which should never have been added 2002-02-25 12:37 nalin * configure.ac, configure.in, src/Makefile.in: rename configure.ac to configure.in, remove 2.5isms 2002-02-25 12:35 nalin * doc/ctlseqs.ps, Makefile.in, aclocal.m4, config.h.in, configure: remove stuff that should never have been in there 2002-02-25 12:30 nalin * AUTHORS, ChangeLog, Makefile.am, NEWS, README, autogen.sh, configure.ac, COPYING, HACKING, Makefile.in, aclocal.m4, config.h.in, configure, stamp-h.in, doc/ctlseqs.ms, doc/ctlseqs.ps, doc/readme.txt, doc/vttest.tar.gz, src/Makefile.am, src/Makefile.in, src/caps.c, src/caps.h, src/interpret.c, src/marshal.list, src/pty.c, src/pty.h, src/termcap.c, src/termcap.h, src/trie.c, src/trie.h, src/typescript, src/utf8echo.c, src/vte.c, src/vte.h, src/vteapp.c: Initial revision 2002-02-25 12:30 nalin * AUTHORS, ChangeLog, Makefile.am, NEWS, README, autogen.sh, configure.ac, COPYING, HACKING, Makefile.in, aclocal.m4, config.h.in, configure, stamp-h.in, doc/ctlseqs.ms, doc/ctlseqs.ps, doc/readme.txt, doc/vttest.tar.gz, src/Makefile.am, src/Makefile.in, src/caps.c, src/caps.h, src/interpret.c, src/marshal.list, src/pty.c, src/pty.h, src/termcap.c, src/termcap.h, src/trie.c, src/trie.h, src/typescript, src/utf8echo.c, src/vte.c, src/vte.h, src/vteapp.c: imported from private cvs