Commit Graph

23 Commits

Author SHA1 Message Date
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 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 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 d890880a52 Revise bindable functions usage of struct to named types. 2021-08-03 13:37:06 +08:00
Renaud 27f30e48d2 Name pointer type to struct. 2021-07-31 15:28:32 +08:00
Renaud 14e6240b9c Transpose-characters valid with mixed UTF-8 and extended ASCII. 2016-05-21 07:52:19 +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 135866231d Rework line allocation. 2016-03-25 14:56:34 +08:00
Renaud c390cf2a3e Remove tab width constraints, was [2, 4, 8], now [1... 2016-02-24 13:22:54 +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 de04424e51 Align scope and parameter type for linsert and is_beginning_utf8. 2015-02-02 19:44:35 +08:00
Renaud e9142541a9 Review visibility of tabsize variable and nextab() macro. 2014-12-22 20:55:56 +08:00
Renaud 94d21c96f3 Move globals defines out of estruct.h. 2014-12-22 17:44:31 +08:00
Renaud bd14ff374f Move globals rval and tabmask to eval and line. 2014-12-22 17:43:01 +08:00
Renaud 9ec9176c81 Centralize kill buffer code in line.c 2014-12-22 17:35:58 +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 93f2a6d691 clean up line dependencies. 2014-12-22 14:45:55 +08:00
Linus Torvalds fa00fe882f Stop using 'short' for line and allocation sizes
Yes, yes, it probably made sense 30 years ago as a way to save a tiny
amount of memory, but especially when interspersed in structures that
have pointers (aligned to 64 bits these days), it's not even saving
memory today.  And it makes us fail in nasty ways when looking at files
with long lines.

So just make them 'int'.  And if you have a line that is longer than
2GB, you only have yourself to blame.  I no longer care.

In case anybody care, the "test-case" for this was a lovely UDDF file
with a binary divecomputer dump encoded as an XML element.  Resulting in
a lovely 41kB single line.  Not what poor micro-emacs was designed for,
I'm afraid.

I really should just learn another editor, rather than continue to
polish this turd.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-02-22 14:32:16 -08:00
Linus Torvalds 0a8b429059 Start doing character removal properly
This makes actual basic editing work.  Including things like
justify-paragraph etc, so lines get justified by number of UTF8
characters rather than bytes.

There are probably tons of broken stuff left, but this actually seems to
get the basics working right.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-07-11 10:43:16 -07:00
Thiago Farina af19da1a99 uemacs: Move structure line and its functions to its own header file.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-11-15 08:46:20 -08:00