ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/doc/rxvt.1.pod
(Generate patch)

Comparing rxvt-unicode/doc/rxvt.1.pod (file contents):
Revision 1.5 by root, Sat Aug 14 03:00:32 2004 UTC vs.
Revision 1.12 by root, Mon Aug 16 02:09:28 2004 UTC

24like tibetan or devenagari. Don't expect pretty output when using these 24like tibetan or devenagari. Don't expect pretty output when using these
25scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work 25scripts. Most other scripts, latin, cyrillic, kanji, thai etc. should work
26fine, though. A somewhat difficult case are left-to-right scripts, such 26fine, though. A somewhat difficult case are left-to-right scripts, such
27as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms 27as hebrew: B<rxvt-unicode> adopts the view that bidirectional algorithms
28belong into the application, not the terminal emulator (too many things -- 28belong into the application, not the terminal emulator (too many things --
29such as cursor-movement -- break othwerwise). 29such as cursor-movement while editing -- break othwerwise), but that might
30change.
30 31
32If you are looking for a terminal that supports more exotic scripts, let
33me recommend C<mlterm>, which is a very userfriendly, lean and clean
34terminal emulator. In fact, the reason rxvt-unicode was born was solely
35because the author couldn't get C<mlterm> to use one font for latin1 and
36another for japanese.
37
31Another design rationale was the use of multiple fonts to display 38Therefore another design rationale was the use of multiple fonts to
32characters: The idea of a single unicode font which many other programs 39display characters: The idea of a single unicode font which many other
33force onto it's users never made sense to me: You should be able to choose 40programs force onto it's users never made sense to me: You should be able
34any font for any script. 41to choose any font for any script freely.
35 42
36Apart from that, rxvt-unicode is also much better internationalised than 43Apart from that, rxvt-unicode is also much better internationalised than
37it's predecessor, supports things such as XFT and ISO 14755 that are handy 44it's predecessor, supports things such as XFT and ISO 14755 that are handy
38in i18n-environments, is faster, and has a lot less bugs than the original 45in i18n-environments, is faster, and has a lot less bugs than the original
39rxvt. This all in addition to dozens of other small improvements. 46rxvt. This all in addition to dozens of other small improvements.
584B<True>: scroll to bottom when a non-special key is pressed. Special keys 591B<True>: scroll to bottom when a non-special key is pressed. Special keys
585are those which are intercepted by rxvt-unicode for special handling and 592are those which are intercepted by rxvt-unicode for special handling and
586are not passed onto the shell; option B<-sk>. B<False>: do not scroll to 593are not passed onto the shell; option B<-sk>. B<False>: do not scroll to
587bottom when a non-special key is pressed; option B<+sk>. 594bottom when a non-special key is pressed; option B<+sk>.
588 595
589=item B<smallfont_key:> I<keysym>
590
591If enabled, use B<@@HOTKEY@@->I<keysym> to toggle to a smaller font
592[default B<@@HOTKEY@@-@@SMALLFONT@@>]
593
594=item B<bigfont_key:> I<keysym>
595
596If enabled, use B<@@HOTKEY@@->I<keysym> to toggle to a bigger font
597[default B<@@HOTKEY@@-@@BIGFONT@@>]
598
599=item B<saveLines:> I<number> 596=item B<saveLines:> I<number>
600 597
601Save I<number> lines in the scrollback buffer [default 64]. This 598Save I<number> lines in the scrollback buffer [default 64]. This
602resource is limited on most machines to 65535; option B<-sl>. 599resource is limited on most machines to 65535; option B<-sl>.
603 600
790 787
791=back 788=back
792 789
793=head1 CHANGING FONTS 790=head1 CHANGING FONTS
794 791
795You can change fonts on-the-fly, which is to say cycle through the 792Changing fonts (or font sizes, respectively) via the keypad is not yet
796default font and others of various sizes, by using B<Shift-KP_Add> and 793supported in rxvt-unicode. Bug me if you need this.
797B<Shift-KP_Subtract>. Or, alternatively (if enabled) with 794
798B<@@HOTKEY@@-@@BIGFONT@@> and B<@@HOTKEY@@-@@SMALLFONT@@>, where the 795You can, however, switch fonts at runtime using escape sequences (and
799actual key can be selected using resources 796therefore using the menubar), e.g.:
800B<smallfont_key>/B<bigfont_key>. 797
798 printf '\e]701;%s\007' "9x15bold,xft:Kochi Gothic"
799
800rxvt-unicode will automatically re-apply these fonts to the output so far.
801 801
802=head1 ISO 14755 SUPPORT 802=head1 ISO 14755 SUPPORT
803 803
804Partial ISO 14755-support is implemented. that means that pressing 804ISO 14755 is a standard for entering and viewing unicode characters
805and character codes using the keyboard. It consists of 4 parts. The
806first part is available rxvt-unicode has been compiled with
807C<--enable-frills>, the rest is available when rxvt-unicode was compiled
808with C<--enable-iso14755>.
805 809
806Section 5.1: Control and Shift together enters unicode input 810=over 4
807mode. Entering hex digits composes a Unicode character, pressing space or
808releasing the modifiers commits the keycode and every other key cancels
809the current input character.
810 811
811Section 5.2: Pressing and immediately releasing Control and Shift together 812=item 5.1: Basic method
812enters keycap entry mode for the next key: pressing a function key (tab, 813
813return etc..) will enter the unicode character corresponding to the given 814This allows you to enter unicode characters using their hexcode.
814key. 815
816Start by pressing and holding both C<Control> and C<Shift>, then enter
817hex-digits (between one and six). Releasing C<Control> and C<Shift> will
818commit the character as if it were typed directly. While holding down
819C<Control> and C<Shift> you can also enter multiple characters by pressing
820C<Space>, which will commit the current character and lets you start a new
821one.
822
823As an example of use, imagine a business card with a japanese e-mail
824address, which you cannot type. Fortunately, the card has the e-mail
825address printed as hexcodes, e.g. C<671d 65e5>. You can enter this easily
826by pressing C<Control> and C<Shift>, followed by C<6-7-1-D-SPACE-6-5-E-5>,
827followed by releasing the modifier keys.
828
829=item 5.2: Keyboard symbols entry method
830
831This mode lets you input characters representing the keycap symbols of
832your keyboard, if representable in the current locale encoding.
833
834Start by pressing C<Control> and C<Shift> together, then releasing
835them. The next special key (cursor keys, home etc.) you enter will not
836invoke it's usual function but instead will insert the corresponding
837keycap symbol. The symbol will only be entered when the key has been
838released, otherwise pressing e.g. C<Shift> would enter the symbol for
839C<ISO Level 2 Switch>, although your intention might have beenm to enter a
840reverse tab (Shift-Tab).
841
842=item 5.3: Screen-selection entry method
843
844While this is implemented already (it's basically the selection
845mechanism), it could be extended by displaying a unicode character map.
846
847=item 5.4: Feedback method for identifying displayed characters for later input
848
849This method lets you display the unicode character code associated with
850characters already displayed.
851
852You enter this mode by holding down C<Control> and C<Shift> together, then
853pressing and holding the left mouse button and moving around. The unicode
854hex code(s) (it might be a combining character) of the character under the
855pointer is displayed until you release C<Control> and C<Shift>.
856
857=back
858
859With respect to conformance, rxvt-unicode is supposed to be compliant to
860both scenario A and B of ISO 14755, including part 5.2.
815 861
816=head1 LOGIN STAMP 862=head1 LOGIN STAMP
817 863
818B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so 864B<@@RXVT_NAME@@> tries to write an entry into the I<utmp>(5) file so
819that it can be seen via the I<who(1)> command, and can accept messages. 865that it can be seen via the I<who(1)> command, and can accept messages.
877 923
878The version number is displayed with the usage (-h). For rxvt-unicode 924The version number is displayed with the usage (-h). For rxvt-unicode
879version 2.14 and later, the escape sequence C<ESC[8n> sets the window 925version 2.14 and later, the escape sequence C<ESC[8n> sets the window
880title to the version number. 926title to the version number.
881 927
928=item Rxvt-unicode does not seem to understand the selected encoding?
929
930=item Unicode does not seem to work?
931
932If you encounter strange problems like typing an accented character but
933getting two unrelated other characters or similar, or if program output is
934subtly garbled, then you should check your locale settings.
935
936Rxvt-unicode must be started with the same C<LC_CTYPE> setting as the
937programs. Often rxvt-unicode is started in the C<C> locale, while the
938login script running within the rxvt-unicode window changes the locale to
939sth. else, e.h. C<en_GB.UTF-8>. Needless to say, this is not going to work.
940
941The best thing is to fix your startup environment, as you will likely run
942into other problems. If nothing works you can try this in your .profile.
943
944 printf '\e]701;%s\007' "$LC_CTYPE"
945
946If this doesn't work, then maybe you use a C<LC_CTYPE> specification not
947supported on your systems. Some systems have a C<locale> comamnd which
948displays this. If it displays sth. like:
949
950 locale: Cannot set LC_CTYPE to default locale: ...
951
952Then the locale you specified is not supported on your system.
953
954If nothing works and you are sure that everything is set correctly then
955you will need to remember a little known fact: Some programs just don't
956support locales :(
957
882=item Why do the characters look ugly? 958=item Why do the characters look ugly?
883 959
884=item How does rxvt-unicode choose fonts? 960=item How does rxvt-unicode choose fonts?
885 961
886Most fonts do not contain the full range of Unicode, which is 962Most fonts do not contain the full range of Unicode, which is
922 998
923In the future it might be possible to switch preferences at runtime (the 999In the future it might be possible to switch preferences at runtime (the
924internal data structure has no problem with using different fonts for 1000internal data structure has no problem with using different fonts for
925the same character at the same time, but no interface for this has been 1001the same character at the same time, but no interface for this has been
926designed yet). 1002designed yet).
1003
1004=item How does rxvt-unicode determine the encoding to use?
1005
1006=item Is there an option to switch encodings?
1007
1008Unlike some other terminals, rxvt-unicode has no encoding switch, and no
1009specific "utf-8" mode, such as xterm. In fact, it doesn't even know about
1010UTF-8 or any other encodings with respect to terminal I/O.
1011
1012The reasons is that there exists a perfectly fine mechanism for selecting
1013the encoding, doing I/O and (most important) communicating this to all
1014applications so everybody agrees on character properties such as width and
1015code number. This mechanism is the I<locale>.
1016
1017Rxvt-unicode uses the C<LC_CTYPE> locale category to select encoding. All
1018programs doing the same (that is, most) will automatically agree in the
1019interpretation of characters.
1020
1021Unfortunately, there is no system-independent way to select locales, nor
1022is there a standard on how locale specifiers will look like.
1023
1024On most systems, the content of the C<LC_CTYPE> environment variable
1025contains an arbitrary string which corresponds to an already-installed
1026locale. Common names for locales are C<en_US.UTF-8>, C<de_DE.ISO-8859-15>,
1027C<ja_JP.EUC-JP>, i.e. C<language_country.encoding>, but other forms
1028(i.e. C<de> or C<german>) are also common.
1029
1030Rxvt-unicode ignores all other locale categories, and except for
1031the encoding, ignores country or language-specific settings,
1032i.e. C<de_DE.UTF-8> and C<ja_JP.UTF-8> are the same for rxvt-unicode.
1033
1034If you want to use a specific encoding you have to make sure you start
1035rxvt-unicode with the correct C<LC_CTYPE> category.
1036
1037=item Can I switch locales at runtime?
1038
1039Yes, using an escape sequence. Try sth. like this, which sets
1040rxvt-unicode's idea of C<LC_CTYPE>.
1041
1042 printf '\e]701;%s\007' ja_JP.SJIS
1043
1044See also the previous question.
1045
1046Sometimes this capability is rather handy when you want to work in one
1047locale (e.g. C<de_DE.UTF-8>) but some programs don't support UTF-8. For
1048example, I use this script to start C<xjdic>, which first switches to a
1049locale supported by xjdic and back later:
1050
1051 printf '\e]701;%s\007' ja_JP.SJIS
1052 xjdic -js
1053 printf '\e]701;%s\007' de_DE.UTF-8
1054
1055=item Can I switch the fonts at runtime?
1056
1057Yes, using an escape sequence. Try sth. like this, which has the same
1058effect as using the C<-fn> switch, and takes effect immediately:
1059
1060 printf '\e]50;%s\007' "9x15bold,xft:Kochi Gothic"
1061
1062This is useful if you e.g. work primarily with japanese (and prefer a
1063japanese font), but you have to switch to chinese temporarily, where
1064japanese fonts would only be in your way.
1065
1066You can think of this as a kind of manual ISO-2022 switching.
927 1067
928=item Mouse cut/paste suddenly no longer works. 1068=item Mouse cut/paste suddenly no longer works.
929 1069
930Make sure that mouse reporting is actually turned off since killing 1070Make sure that mouse reporting is actually turned off since killing
931some editors prematurely may leave the mouse in mouse report mode. I've 1071some editors prematurely may leave the mouse in mouse report mode. I've
1175 1315
1176=over 4 1316=over 4
1177 1317
1178=item Project Coordinator 1318=item Project Coordinator
1179 1319
1180@@RXVTMAINT@@ L<@@RXVT_MAINTEMAIL@@> 1320@@RXVT_MAINT@@ L<@@RXVT_MAINTEMAIL@@>
1181 1321
1182=item Web page maintainter 1322=item Web page maintainter
1183 1323
1184@@RXVTWEBMAINT@@ L<@@RXVT_WEBMAINTEMAIL@@> 1324@@RXVT_WEBMAINT@@ L<@@RXVT_WEBMAINTEMAIL@@>
1185 1325
1186L<@@RXVT_WEBPAGE@@> 1326L<@@RXVT_WEBPAGE@@>
1187 1327
1188=back 1328=back
1189 1329

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines