Mercurial > emacs
comparison src/keyboard.c @ 20539:4eae32c75642
(command_loop_1): Use PT_BYTE when calling FETCH_BYTE.
Instead of Fforward_point, just add.
author | Richard M. Stallman <rms@gnu.org> |
---|---|
date | Thu, 01 Jan 1998 02:39:04 +0000 |
parents | b2536e1685e9 |
children | b4f792fd5e50 |
comparison
equal
deleted
inserted
replaced
20538:b964f3facafa | 20539:4eae32c75642 |
---|---|
1281 do them directly. */ | 1281 do them directly. */ |
1282 if (EQ (this_command, Qforward_char) && PT < ZV) | 1282 if (EQ (this_command, Qforward_char) && PT < ZV) |
1283 { | 1283 { |
1284 struct Lisp_Char_Table *dp | 1284 struct Lisp_Char_Table *dp |
1285 = window_display_table (XWINDOW (selected_window)); | 1285 = window_display_table (XWINDOW (selected_window)); |
1286 lose = FETCH_BYTE (PT); | 1286 lose = FETCH_BYTE (PT_BYTE); |
1287 SET_PT (forward_point (1)); | 1287 SET_PT (PT + 1); |
1288 if ((dp | 1288 if ((dp |
1289 ? (VECTORP (DISP_CHAR_VECTOR (dp, lose)) | 1289 ? (VECTORP (DISP_CHAR_VECTOR (dp, lose)) |
1290 ? XVECTOR (DISP_CHAR_VECTOR (dp, lose))->size == 1 | 1290 ? XVECTOR (DISP_CHAR_VECTOR (dp, lose))->size == 1 |
1291 : (NILP (DISP_CHAR_VECTOR (dp, lose)) | 1291 : (NILP (DISP_CHAR_VECTOR (dp, lose)) |
1292 && (lose >= 0x20 && lose < 0x7f))) | 1292 && (lose >= 0x20 && lose < 0x7f))) |
1293 : (lose >= 0x20 && lose < 0x7f)) | 1293 : (lose >= 0x20 && lose < 0x7f)) |
1294 /* To extract the case of continuation on | 1294 /* To extract the case of continuation on |
1295 wide-column characters. */ | 1295 wide-column characters. */ |
1296 && (WIDTH_BY_CHAR_HEAD (FETCH_BYTE (PT)) == 1) | 1296 && (WIDTH_BY_CHAR_HEAD (FETCH_BYTE (PT_BYTE)) == 1) |
1297 && (XFASTINT (XWINDOW (selected_window)->last_modified) | 1297 && (XFASTINT (XWINDOW (selected_window)->last_modified) |
1298 >= MODIFF) | 1298 >= MODIFF) |
1299 && (XFASTINT (XWINDOW (selected_window)->last_overlay_modified) | 1299 && (XFASTINT (XWINDOW (selected_window)->last_overlay_modified) |
1300 >= OVERLAY_MODIFF) | 1300 >= OVERLAY_MODIFF) |
1301 && (XFASTINT (XWINDOW (selected_window)->last_point) | 1301 && (XFASTINT (XWINDOW (selected_window)->last_point) |
1310 } | 1310 } |
1311 else if (EQ (this_command, Qbackward_char) && PT > BEGV) | 1311 else if (EQ (this_command, Qbackward_char) && PT > BEGV) |
1312 { | 1312 { |
1313 struct Lisp_Char_Table *dp | 1313 struct Lisp_Char_Table *dp |
1314 = window_display_table (XWINDOW (selected_window)); | 1314 = window_display_table (XWINDOW (selected_window)); |
1315 SET_PT (forward_point (-1)); | 1315 SET_PT (PT - 1); |
1316 lose = FETCH_BYTE (PT); | 1316 lose = FETCH_BYTE (PT_BYTE); |
1317 if ((dp | 1317 if ((dp |
1318 ? (VECTORP (DISP_CHAR_VECTOR (dp, lose)) | 1318 ? (VECTORP (DISP_CHAR_VECTOR (dp, lose)) |
1319 ? XVECTOR (DISP_CHAR_VECTOR (dp, lose))->size == 1 | 1319 ? XVECTOR (DISP_CHAR_VECTOR (dp, lose))->size == 1 |
1320 : (NILP (DISP_CHAR_VECTOR (dp, lose)) | 1320 : (NILP (DISP_CHAR_VECTOR (dp, lose)) |
1321 && (lose >= 0x20 && lose < 0x7f))) | 1321 && (lose >= 0x20 && lose < 0x7f))) |
1368 lose = 1; | 1368 lose = 1; |
1369 if (value == 2) | 1369 if (value == 2) |
1370 nonundocount = 0; | 1370 nonundocount = 0; |
1371 | 1371 |
1372 if (!lose | 1372 if (!lose |
1373 && (PT == ZV || FETCH_BYTE (PT) == '\n')) | 1373 && (PT == ZV || FETCH_BYTE (PT_BYTE) == '\n')) |
1374 { | 1374 { |
1375 struct Lisp_Char_Table *dp | 1375 struct Lisp_Char_Table *dp |
1376 = window_display_table (XWINDOW (selected_window)); | 1376 = window_display_table (XWINDOW (selected_window)); |
1377 int lose = c; | 1377 int lose = c; |
1378 | 1378 |