x2vt - was: a terminal emulator based on xvt.

x2vt - now: patches against rxvt 2.7.10.

I've submitted these to the dev team leading rxvt, and some of the patches have already been merged. Hopefully the rest will be in the CVS tree soon and I won't need to have this page around any more. In the mean time, here's all the enhancements from x2vt.

Patches:

  1. Enhancement: mouse wheel can scroll by a whole page instead of 5 lines. Included in 2.7.10!
  2. Bug Fix: fix bug where control characters weren't being processed inside escape sequences and VT52 commands weren't handled. Included in 2.7.10!
  3. Enhancement: selection scrolling, where holding the mouse button down during a selection and moving the pointer out of the window will cause the window to scroll and the selection to be updated
  4. Enhancement: launch a viewing program when filenames are clicked in a directory listing that appears on screen.
  5. Bug Fix: a paste should act like the user is typing, so if a middle mouse click happens, check the resource scrollTtyOutput. If it is set, reset the view to the bottom just as if the user had typed something in.

How to get these fixes:

Documentation:

  1. Enhancement: mouse wheel can scroll by a whole page instead of 5 lines.
    Configure switch
    No configure option. It's always enabled.
    Resource:
    Rxvt*mouseWheelScrollPage: [true|false]

    If this is true, the mouse wheel will scroll the buffer almost a full screen for each notch on the mouse wheel. (Actually, a full screen - one line.)

  2. Bug Fix: fix bug where control characters weren't being processed inside escape sequences and VT52 commands weren't handled
    Configure switch
    No configure option. It's always enabled.
    Resource:
    No resource. It's a bug fix, so we want it.

  3. Enhancement: selection scrolling, where holding the mouse button down during a selection and moving the pointer out of the window will cause the window to scroll and the selection to be updated
    Configure switch
    --enable-selectionscrolling

    Note that it is not set as the default in the configure.in, so you should specify this to configure

    Resource:
    No resource.

  4. Enhancement: launch a viewing program when filenames are clicked in a directory listing that appears on screen. The setup for this is that your shell has to print out a new escape sequence every time you change directories, and rxvt keeps track of what directory goes with what line on the screen (or in the scrollback buffer). An external script is launched with the path and file as arguments, and the script can then determine the file type and exec an appropriate viewing program. A side effect of this enhancement is that it also allows a shift+left click to extend selections.
    Configure switch
    --enable-launcher
    Command line switch
    -launcher filename
    Resources
    Rxvt*launchProg: filename

    The name of the executable (e.g. a script) to use as a middleman to decide what viewer to launch for the path and file sent to it as arguments.

    Rxvt*launchRightClick: [true|false]

    Launch the filename if clicked once with the right mouse button.

    Rxvt*launchDoubleClick: [true|false]

    Launch the filename if double-clicked (with the left mouse button). Using this one (versus the right click) causes a slight delay because rxvt has to decide that you didn't mean to continue to select stuff with the left mouse button. Only after the double click happened fast enough *and* you've released the mouse button soon enough after the final click will it go with the launch.

    Extra stuff:
    Note that both launchRightClick and launchDoubleClick can be enabled at the same time. Dunno why you'd do that, but let's call it a feature.
    Launcher script
    You need to have an executable somewhere (typically a shell script) that will decide which viewer/editor program to launch given a path and filename sent to it by rxvt. The sample script rxvtrun.sh in the main source directory is an example of the type of script that I use. I put it in my path somewhere, make it executable, and set my this in my ~/.Xdefaults:

    Rxvt*launchProg: /path/to/rxvtrun.sh

    Don't forget to make it executable!

    • chmod 755 /path/to/rxvtrun.sh

  5. Bug Fix: a paste should act like the user is typing, so if a middle mouse click happens, check the resource scrollTtyOutput. If it is set, reset the view to the bottom just as if the user had typed something in.
    Configure switch
    No configure option. It's always enabled.
    Resource:
    No resource. It's a bug fix, so we want it.


Author: Rob McMullen <robm at users.sourceforge.net>
20 Apr 2003
SourceForge Logo