mirror of
https://github.com/rfivet/uemacs.git
synced 2024-12-17 23:06:25 -05:00
Transpose-characters valid with mixed UTF-8 and extended ASCII.
This commit is contained in:
parent
f11dea468f
commit
14e6240b9c
7
line.c
7
line.c
@ -277,8 +277,6 @@ int insspace(int f, int n)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
static int linsert_byte( int n, int c) ;
|
||||
|
||||
/*
|
||||
* linstr -- Insert a string at the current point
|
||||
*/
|
||||
@ -291,7 +289,7 @@ int linstr( char *instr) {
|
||||
|
||||
while( (tmpc = *instr++ & 0xFF)) {
|
||||
status =
|
||||
(tmpc == '\n' ? lnewline() : linsert_byte( 1, tmpc)) ;
|
||||
(tmpc == '\n' ? lnewline() : (int) linsert_byte( 1, tmpc)) ;
|
||||
|
||||
/* Insertion error? */
|
||||
if( status != TRUE) {
|
||||
@ -314,8 +312,7 @@ int linstr( char *instr) {
|
||||
* well, and FALSE on errors.
|
||||
*/
|
||||
|
||||
static int linsert_byte(int n, int c)
|
||||
{
|
||||
boolean linsert_byte( int n, int c) {
|
||||
char *cp1;
|
||||
char *cp2;
|
||||
struct line *lp1;
|
||||
|
1
line.h
1
line.h
@ -38,6 +38,7 @@ void lchange( int flag) ;
|
||||
int insspace( int f, int n) ;
|
||||
int linstr( char *instr) ;
|
||||
int linsert( int n, unicode_t c) ;
|
||||
boolean linsert_byte( int n, int c) ;
|
||||
int lover( char *ostr) ;
|
||||
int lnewline( void) ;
|
||||
boolean ldelete( long n, boolean kflag) ;
|
||||
|
20
random.c
20
random.c
@ -219,7 +219,7 @@ int setccol(int pos)
|
||||
/* set us at the new position */
|
||||
curwp->w_doto = i;
|
||||
|
||||
/* and tell weather we made it */
|
||||
/* and tell whether we made it */
|
||||
return col >= pos;
|
||||
}
|
||||
|
||||
@ -247,10 +247,14 @@ boolean twiddle( int f, int n) {
|
||||
eof_f = TRUE ;
|
||||
}
|
||||
|
||||
lgetchar( &c) ;
|
||||
len = lgetchar( &c) ; /* len => unicode or extended ASCII */
|
||||
ldelchar( 1, FALSE) ;
|
||||
backchar( FALSE, 1) ;
|
||||
if( len == 1)
|
||||
linsert_byte( 1, c) ;
|
||||
else
|
||||
linsert( 1, c) ;
|
||||
|
||||
if( eof_f == TRUE)
|
||||
forwchar( FALSE, 1) ;
|
||||
|
||||
@ -346,7 +350,9 @@ int detab(int f, int n)
|
||||
}
|
||||
|
||||
/* advance/or back to the next line */
|
||||
forwline(TRUE, inc);
|
||||
if( forwline( TRUE, inc) == FALSE)
|
||||
break ;
|
||||
|
||||
n -= inc;
|
||||
}
|
||||
curwp->w_doto = 0; /* to the begining of the line */
|
||||
@ -419,7 +425,9 @@ int entab(int f, int n)
|
||||
}
|
||||
|
||||
/* advance/or back to the next line */
|
||||
forwline(TRUE, inc);
|
||||
if( forwline( TRUE, inc) == FALSE)
|
||||
break ;
|
||||
|
||||
n -= inc;
|
||||
}
|
||||
curwp->w_doto = 0; /* to the begining of the line */
|
||||
@ -463,7 +471,9 @@ int trim(int f, int n)
|
||||
lp->l_used = length;
|
||||
|
||||
/* advance/or back to the next line */
|
||||
forwline(TRUE, inc);
|
||||
if( forwline( TRUE, inc) == FALSE)
|
||||
break ;
|
||||
|
||||
n -= inc;
|
||||
}
|
||||
lchange(WFEDIT);
|
||||
|
Loading…
Reference in New Issue
Block a user