rxvt a cestina

Radim Halir halir na utia.cas.cz
Středa Červen 24 11:52:59 CEST 1998


On 12 Jun 1998 13:21:39 +0200, Spatka Petr <xspatk00 na stud.fee.vutbr.cz> wrote:
> Dobry den,
> 
> pouzivam Debian Linux (ve skoro nejaktualnejsi verzi) a pod X-ama mi
> nechce chodit rxvt s cestinou. Mam dojmem ze nejaka predchozi verze mi
> chodila bez problemu (prili slozite na vysvetlovani proc trpim timto
> dojmem). Xterm mi chodi cesky bez problemu (ale cernobile a bez klaves
> Home, End, ...).  Jde nejakym nastavenim donutit rxvt k tomu aby bralo
> cestinu z klavesnice (veskerou, zatim bere pouze mrtvou carku)? 
> 
> Cestinu pouzivam trochu opraveny XKeySymDB a ceskou mapu klavesnice
> pomoci setxkbmap cs.
> 
> Dekuji za odpoved na mozna trivialni problem
> Petr SPATKA
> 
> 

No, on ten problem tak uplne trivialni neni. Tez se mi libi rxvt a take
mam rad cestinu, takze jsem se to pokusil skloubit. Vysledek je nasledujici:
 - rxvt dostupny v RedHatu i Debianu s cestinou korektne nefunguje (a ani
   nemuze) a je potreba jej prelozit znovu ze zdrojaku
 - ja jsem prekladal "developer" verzi 2.4.6, ktera je k mani na
   http://babayaga.math.fu-berlin.de/~rxvt/
 - aby fungovala cestina, je nutne zdrojak trochu opravit. Patche jsou
   nasledujici:
    - pro configure:  
-------------------------------------------------------------------------------
*** configure.OLD       Wed May  6 13:37:12 1998
--- configure   Wed May  6 14:20:34 1998
***************
*** 3108,3114 ****
    cat > conftest.$ac_ext <<EOF
  #line 3110 "configure"
  #include "confdefs.h"
- #define X_LOCALE 1
    #include <X11/Xlocale.h>
  int main() {
  setlocale(LC_CTYPE, "");
--- 3108,3113 ----
-------------------------------------------------------------------------------

    - pro src/command.c:
-------------------------------------------------------------------------------
*** command.c.OLD       Wed May  6 15:50:01 1998
--- command.c   Thu May  7 09:03:30 1998
***************
*** 44,50 ****
  # if (XtSpecificationRelease < 6)
  #  define NO_XLOCALE
  # else
- #  define X_LOCALE
  #  include <X11/Xlocale.h>
  # endif
  #endif                                /* NO_XLOCALE */
--- 44,49 ----
***************
*** 1103,1111 ****
  
      Input_Context = NULL;
  
! # ifdef MULTICHAR_SET
!     setlocale(LC_CTYPE, "");
! # endif
  
      if (rs_inputMethod == NULL
  # ifndef KANJI
--- 1102,1108 ----
  
      Input_Context = NULL;
  
!     setlocale(LC_ALL, "");
  
      if (rs_inputMethod == NULL
  # ifndef KANJI
-------------------------------------------------------------------------------

   Jak je videt, zakladni problem je v tom, ze se nevola setlocale(). No
   a bez teto funkce si o cestine muzete nechat jen zdat...
 - po opatchovani staci standardni cyklus configure/make/install. No a pak
   uz jen mit spravne nastavene ceske locale (coz asi mate, kdyz Vam xterm
   cesky beha)...
   
Zdravim,
Radim

PS: Vyse zminovane (a dalsi) patche jsem uz posilal vyvojarum rxvt. Zatim se
    neozvali (a nova verze rxvt tez neni)...
PPS: Problem s tim, ze se na zacatku nevola setlocale() nema jen rxvt. Stejne
     "ne-internacionalne" se chova i nxterm, xjed a dalsi. Pridani setlocale()
     vetsinou vse vyresi k naproste spokojenosti.
-- 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#  Mgr. Radim Halir                           system administrator  #
#  Computer Center, Institute of Information Theory and Automation  #
#         Czech Academy of Sciences, Prague, Czech Republic         #
#  e-mail: halir na utia.cas.cz      http://sunsite.mff.cuni.cz/halir  #
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


Další informace o konferenci Linux