1
0
mirror of https://github.com/rfivet/uemacs.git synced 2024-12-25 02:26:22 -05:00
Commit Graph

22 Commits

Author SHA1 Message Date
a370d748c4 Revise line primitives linstr() and lover() 2021-08-22 12:35:39 +08:00
bfb78e5382 Revise line primitives lalloc() and lnewline(). 2021-08-22 10:51:46 +08:00
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
d890880a52 Revise bindable functions usage of struct to named types. 2021-08-03 13:37:06 +08:00
27f30e48d2 Name pointer type to struct. 2021-07-31 15:28:32 +08:00
14e6240b9c Transpose-characters valid with mixed UTF-8 and extended ASCII. 2016-05-21 07:52:19 +08:00
2b21a98e9c Review forwchar and backchar. 2016-05-19 21:27:26 +08:00
d4b2a4c1aa Review ldelchar and ldelete. 2016-05-19 14:02:43 +08:00
135866231d Rework line allocation. 2016-03-25 14:56:34 +08:00
c390cf2a3e Remove tab width constraints, was [2, 4, 8], now [1... 2016-02-24 13:22:54 +08:00
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
de04424e51 Align scope and parameter type for linsert and is_beginning_utf8. 2015-02-02 19:44:35 +08:00
e9142541a9 Review visibility of tabsize variable and nextab() macro. 2014-12-22 20:55:56 +08:00
94d21c96f3 Move globals defines out of estruct.h. 2014-12-22 17:44:31 +08:00
bd14ff374f Move globals rval and tabmask to eval and line. 2014-12-22 17:43:01 +08:00
9ec9176c81 Centralize kill buffer code in line.c 2014-12-22 17:35:58 +08:00
4f9598b5da review line dependencies. 2014-12-22 16:08:12 +08:00
70dab2c8d8 review visibility of functions defined by line. 2014-12-22 15:48:09 +08:00
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