Commit Graph

73 Commits

Author SHA1 Message Date
Renaud 1ee0ebf4b9 Fix: avoid extra NL when newline/yank/insert-file at end of last line of non empty buffer.
Refactor yank.
Detab before commit.
2024-04-04 12:03:24 +08:00
Renaud 5b2884b93c Fix point and mark update when inserting in buffer with multiple windows. 2022-09-04 16:08:37 +08:00
Renaud 041210b228 Use memmove instead of memcpy for overlapping memory area. (reproducible on OpenBSD). 2022-08-26 11:16:45 +08:00
Renaud 0c584e5490 Revise window flagging on line change.
Evaluation of Value of kill buffer and current line.
2021-09-15 13:15:31 +08:00
Renaud 2674d40d4c Introduce generic list deletion API. 2021-09-08 10:54:07 +08:00
Renaud e2f7cc0566 Sanity check with customization CLEAN, RAMSIZE, RAMSHOW. 2021-08-24 12:17:40 +08:00
Renaud a370d748c4 Revise line primitives linstr() and lover() 2021-08-22 12:35:39 +08:00
Renaud bfb78e5382 Revise line primitives lalloc() and lnewline(). 2021-08-22 10:51:46 +08:00
Renaud 3d83877086 combined Unicode: forward-character, backward-character, delete-next-character, delete-previous-character. 2021-08-21 09:34:06 +08:00
Renaud e6921a8ed1 Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
Renaud b4d69118f5 Revise header files formatting.
Finish tagging BBINDABLE functions.
Modify forward-character to handle combined Unicode.
Bump up version number and set default program name as 'ue'.
2021-08-13 11:06:58 +08:00
Renaud 50b727bf7f Bindable functions take a boolean as flag.
Emphasize which one always return TRUE.
Use mloutfail() to introduce consistency when a function fails with error message.
2021-08-11 17:02:19 +08:00
Renaud d890880a52 Revise bindable functions usage of struct to named types. 2021-08-03 13:37:06 +08:00
Renaud 695b5d37da Tag most view mode incompatible functions in function names table. 2021-07-19 20:50:32 +08:00
Renaud 78a7a3ba4e Improve support of utf8 in filename completion and key in of command arguments. 2019-08-12 21:41:51 +08:00
Renaud 99487b126f Consistent unicode handling in buffer-position (CTL-X =) and $curchar. 2017-05-05 10:49:02 +08:00
Renaud 14e6240b9c Transpose-characters valid with mixed UTF-8 and extended ASCII. 2016-05-21 07:52:19 +08:00
Renaud 92078e5595 Check consistency of forwchar/backchar calls.
Review entab dot movement.
2016-05-20 19:46:54 +08:00
Renaud 2b21a98e9c Review forwchar and backchar. 2016-05-19 21:27:26 +08:00
Renaud d4b2a4c1aa Review ldelchar and ldelete. 2016-05-19 14:02:43 +08:00
Renaud ac3c2aa6dd Review file read and write into buffers. 2016-03-30 17:44:46 +08:00
Renaud 06eba37779 Include stddef on Linux for offsetof macro definition. 2016-03-25 19:27:09 +08:00
Renaud 135866231d Rework line allocation. 2016-03-25 14:56:34 +08:00
Renaud a42c60045d Improve consistency of tab insertion behaviour while indenting and brace matching. 2016-02-25 17:08:27 +08:00
Renaud c390cf2a3e Remove tab width constraints, was [2, 4, 8], now [1... 2016-02-24 13:22:54 +08:00
Renaud e0550db4d1 $line returns a full copy of the current line instead of truncated at NSTRING. 2015-09-18 17:53:58 +08:00
Renaud 5e5558e00b Align naming convention for output of text on the message line: mlout*. (Was a mix of log & write). 2015-02-13 12:31:59 +08:00
Renaud 6021a22b60 Move rdonly() in scope of line which is the first user module in the dependency list. 2015-02-13 11:54:17 +08:00
Renaud 135238106c backward char movement consistent with mixed byte/UTF-8 content. 2015-02-08 19:11:26 +08:00
Renaud 4cbf1e9ae1 Review cursor movement in presence of mixed latin1/unicode encoding. 2015-02-04 12:37:57 +08:00
Renaud de04424e51 Align scope and parameter type for linsert and is_beginning_utf8. 2015-02-02 19:44:35 +08:00
Renaud 91455a2e5a Insure &asc &chr 128 equals 128.
Insert-string can't handle character code > 0xFF.
2015-02-02 12:50:52 +08:00
Renaud 15ae2d4135 Transition from logger/logwrite/mlwrite to writestr/writefmt. 2015-01-21 21:30:01 +08:00
Renaud fbfaa29497 Add %B in string format of mlwrite to ring a bell. 2015-01-21 14:12:24 +08:00
Renaud cc06049046 $kill returns full copy of kill buffer. 2014-12-22 20:57:54 +08:00
Renaud a560025c0c Fix $kill to cover at most first 127 characters of kill buffer. Was only first N % 250 (ex 25 out of 275). 2014-12-22 20:57:40 +08:00
Renaud 2fe2d9c153 Finish move of globals into input and random.
Remove globals.
2014-12-22 17:43:53 +08:00
Renaud bd14ff374f Move globals rval and tabmask to eval and line. 2014-12-22 17:43:01 +08:00
Renaud 80256bdd6d Remove edef.h, obsoleted by globals.h. 2014-12-22 17:41:40 +08:00
Renaud dc3e8984ab Move standard includes of stdlib and string from edef.h. 2014-12-22 17:41:07 +08:00
Renaud 9ec9176c81 Centralize kill buffer code in line.c 2014-12-22 17:35:58 +08:00
Renaud 87cd40ce6a Extract struct buffer and struct window from estruct.h. 2014-12-22 16:11:13 +08:00
Renaud ab432a6781 Clean up dependecies on estruct by introducing defines.h. 2014-12-22 16:10:51 +08:00
Renaud 245c4a0477 Remove dependencies from line to display: Move rdonly from display to loc and create instantiable function logger( retcode, beep, string). 2014-12-22 16:09:15 +08:00
Renaud 451b12319a Add assert to guard logic of static function activation. 2014-12-22 16:09:06 +08:00
Renaud 03bd7dd902 Make line independant of display by introducing instanciable logwrite. 2014-12-22 16:08:21 +08:00
Renaud 4f9598b5da review line dependencies. 2014-12-22 16:08:12 +08:00
Renaud 70dab2c8d8 review visibility of functions defined by line. 2014-12-22 15:48:09 +08:00
Renaud a96f1b5f85 Move rdonly and reterr from main to display to avoid dependencies to main. 2014-12-22 15:43:35 +08:00
Renaud b321dce49e Remove efunc as dependencies. 2014-12-22 15:06:48 +08:00