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