setlocale in vile

Radek Liboska liboska na uochb.cas.cz
Pondělí Říjen 5 11:19:18 CEST 1998


Zdravim,
mohl by nekdo pomoci s upravou zdrojaku pro vi-editor xvile?
V tomto editoru spatne funguji dead-keys (nejprve hacek, pak
teprve pismeno).
Zde jsou kousky kodu z main.c, kde je setlocale() zmineno:
                                                                                
#if
OPT_LOCALE                                                                  
        setlocale(LC_CTYPE,
"");                                                
#endif                                                                          
 

a potom:


        /* If we're using the locale functions, set our flags based on
its      
         * tables.  Note that just because you have 'setlocale()'
doesn't mean  
         * that the tables are present or correct.  But this is a
start.        
        
*/                                                                     
#if
OPT_LOCALE                                                                  
        for (c = 0; c < N_chars; c++)
{                                         
                vl_chartypes_[c] =
0;                                           
                if (iscntrl(c))  vl_chartypes_[c] |=
vl_cntrl;                  
                if (isdigit(c))  vl_chartypes_[c] |=
vl_digit;                  
                if (islower(c))  vl_chartypes_[c] |=
vl_lower;                  
                if (isprint(c))  vl_chartypes_[c] |=
vl_print;                  
                if (ispunct(c))  vl_chartypes_[c] |=
vl_punct;                  
                if (isspace(c))  vl_chartypes_[c] |=
vl_space;                  
                if (isupper(c))  vl_chartypes_[c] |=
vl_upper;                  
       
}                                                                       
#else /* ! OPT_LOCALE
*/                                                        
        (void)memset((char *)vl_chartypes_, 0,
sizeof(vl_chartypes_));          
                                                                                
        /* control characters
*/                                                
        for (c = 0; c < ' ';
c++)                                               
                vl_chartypes_[c] |=
vl_cntrl;                                   
        vl_chartypes_[127] |=
vl_cntrl;                                         
                                                                                
        /* lowercase
*/                                                         
        for (c = 'a'; c <= 'z';
c++)                                            
                vl_chartypes_[c] |=
vl_lower;                                   


mozna to s tim nema co delat, ale rad bych autorum pomohl deadkeys
rozchodit a proto zadam o radu.

Mozna bude lepe poslat E-mail jen na mou adresu, ne do konference.

Dekuji

Radek Liboska 


-- 

		   Radek Liboska, Ph.D.
     Institute of Organic Chemistry and Biochemistry
		Czech Academy of Sciences
	Flemingovo n. 2.	Praha 6   166 10
   Phone: ++420-2-20183-387 E-mail: liboska na uochb.cas.cz
   WWW: http://www.uochb.cas.cz/rl_home.html


Další informace o konferenci Linux