--- rxvt-unicode/doc/rxvt.1.pod 2005/02/14 10:44:50 1.55 +++ rxvt-unicode/doc/rxvt.1.pod 2005/06/17 12:05:31 1.64 @@ -240,7 +240,7 @@ =item B<-st>|B<+st> -Display normal (non XTerm/NeXT) scrollbar without/with a trough; +Display rxvt (non XTerm/NeXT) scrollbar without/with a trough; resource B. =item B<-ptab>|B<+ptab> @@ -370,15 +370,62 @@ Turn on/off secondary screen scroll (default enabled); resource B. -=item B<-keysym.>I: I +=item B<-keysym.>I I Remap a key symbol. See resource B. -=item B<-xrm> I +=item B<-embed> I -No effect on rxvt-unicode. Simply passes through an argument to be made -available in the instance's argument list. Appears in I in -some window managers. +Tells @@RXVT_NAME@@ to embed it's windows into an already-existing window, +which enables applications to easily embed a terminal. + +Right now, @@RXVT_NAME@@ will first unmap/map the specified window, so it +shouldn't be a top-level window. @@RXVT_NAME@@ will also reconfigure it +quite a bit, so don't expect it to keep some specific state. It's best to +create an extra subwindow for @@RXVT_NAME@@ and leave it alone. + +The window will not be destroyed when @@RXVT_NAME@@ exits. + +It might be useful to know that @@RXVT_NAME@@ will not close file +descriptors passed to it (except for stdin/out/err, of course), so you +can use file descriptors to communicate with the programs within the +terminal. This works regardless of wether the C<-embed> option was used or +not. + +Here is a short Gtk2-perl snippet that illustrates how this option can be +used (a longer example is in F): + + my $rxvt = new Gtk2::Socket; + $rxvt->signal_connect_after (realize => sub { + my $xid = $_[0]->window->get_xid; + system "@@RXVT_NAME@@ -embed $xid &"; + }); + +=item B<-pty-fd> I + +Tells @@RXVT_NAME@@ NOT to execute any commands or create a new pty/tty +pair but instead use the given filehandle as the tty master. This is +useful if you want to drive @@RXVT_NAME@@ as a generic terminal emulator +without having to run a program within it. + +If this switch is given, @@RXVT_NAME@@ will not create any utmp/wtmp +entries and will not tinker with pty/tty permissions - you have to do that +yourself if you want that. + +Here is a example in perl that illustrates how this option can be used (a +longer example is in F): + + use IO::Pty; + use Fcntl; + + my $pty = new IO::Pty; + fcntl $pty, F_SETFD, 0; # clear close-on-exec + system "@@RXVT_NAME@@ -pty-fd " . (fileno $pty) . "&"; + close $pty; + + # now communicate with rxvt + my $slave = $pty->slave; + while (<$slave>) { print $slave "got <$_>\n" } =back @@ -521,7 +568,7 @@ =item B I Use the specified colour for the scrollbar's trough area [default -#969696]. Only relevant for normal (non XTerm/NeXT) scrollbar. +#969696]. Only relevant for rxvt (non XTerm/NeXT) scrollbar. =item B I @@ -623,7 +670,7 @@ =item B I Set scrollbar style to B, B, B or B. B is -the author's favourite.. +the author's favourite. =item B I @@ -694,8 +741,8 @@ =item B I B: scroll with scrollback buffer when tty receives new lines (and -B is False); option B<+sw>. B: do not scroll -with scrollback buffer when tty recieves new lines; option B<-sw>. +B is False); option B<-sw>. B: do not scroll +with scrollback buffer when tty recieves new lines; option B<+sw>. =item B I @@ -770,7 +817,8 @@ =item B I -Specifies number of seconds before blanking the pointer [default 2]. +Specifies number of seconds before blanking the pointer [default 2]. Use a +large number (e.g. C<987654321>) to effectively disable the timeout. =item B I @@ -912,6 +960,25 @@ URxvt.keysym.M-C-c: command:\033]701;zh_CN.GBK\007 +Due the the large number of modifier combinations, a defined key mapping +will match if at I the specified identifiers are being set, and +no other key mappings with those and more bits are being defined. That +means that defining a key map for C will automatically provide +definitions for C, C and so on, unless some of those are defined +mappings themselves. + +Unfortunately, this will override built-in key mappings. For example +if you overwrite the C key you will disable @@RXVT_NAME@@'s +C mapping. To re-enable that, you can poke "holes" into the +user-defined keymap using the C replacement: + + URxvt.keysym.Insert: + URxvt.keysym.S-Insert: builtin: + +The first line defines a mapping for C and I combination +of modifiers. The second line re-establishes the default mapping for +C. + The following example will map Control-Meta-1 and Control-Meta-2 to the fonts C and C<9x15bold>, so you can have some limited font-switching at runtime: