µEMACS (ue) on Cygwin/Linux/NetBSD, based on uEmacs/PK (em) from kernel.org. https://rfivet.github.io/uemacs/
Go to file
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
.gitattributes start tagging uEMACS functions that are not compatible with view mode. 2021-07-19 15:39:00 +08:00
.gitignore Ignore generated dependencies. 2022-03-03 07:40:31 +08:00
Makefile Reviewed dependencies generation. 2022-02-05 10:56:12 +08:00
README uemacs: rename 'readme' to 'README' 2010-04-28 07:46:47 -07:00
README.md Use memmove instead of memcpy for overlapping memory area. (reproducible on OpenBSD). 2022-08-26 11:16:45 +08:00
UTF-8-demo.txt Fix the unicode character limit (0 .. 0x10ffff) 2012-09-24 19:44:21 -07:00
basic.c Display non breaking space according to code page instead of \A0. 2024-04-01 11:17:19 +08:00
basic.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
bind.c Bindable functions take a boolean as flag. 2021-08-11 17:02:19 +08:00
bind.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
bindable.c Bindable functions take a boolean as flag. 2021-08-11 17:02:19 +08:00
bindable.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
blindmaz.cmd Fix position of cursor to avoid extended display of line. 2021-09-16 09:46:02 +08:00
buffer.c Introduce generic list deletion API. 2021-09-08 10:54:07 +08:00
buffer.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
count.cmd Insure list-buffer can report buffer size up to 99 999 999. 2014-12-22 20:57:09 +08:00
defines.h Use memmove instead of memcpy for overlapping memory area. (reproducible on OpenBSD). 2022-08-26 11:16:45 +08:00
display.c Display non breaking space according to code page instead of \A0. 2024-04-01 11:17:19 +08:00
display.h Use explicit constants for smallest size of display rows and columns. 2021-08-31 12:55:10 +08:00
emacs.hlp Fix assertion violation when invoking help macro at end of help file. &mid function was not safe to call on empty line, same for &mid. 2023-12-20 13:07:04 +08:00
emacs.pdf Add pdf documentation from emacs.ps 2019-07-23 20:39:40 +08:00
emacs.ps Initial import of em-4.0.15-lt 2005-05-31 08:50:56 -07:00
emacs.rc Clean up startup and help files. 2021-09-16 09:44:59 +08:00
eval.c Fix assertion violation when invoking help macro at end of help file. &mid function was not safe to call on empty line, same for &mid. 2023-12-20 13:07:04 +08:00
eval.h Sanity check with customization CLEAN, RAMSIZE, RAMSHOW. 2021-08-24 12:17:40 +08:00
exec.c Use memmove instead of memcpy for overlapping memory area. (reproducible on OpenBSD). 2022-08-26 11:16:45 +08:00
exec.h Handle storing of procedure during parsing of buffer. 2021-09-05 12:01:02 +08:00
execute.c Revise fence handling in CMODE. 2021-09-15 11:55:23 +08:00
execute.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
file.c Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
file.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
fileio.c Rework file primitives. 2021-08-14 11:45:41 +08:00
fileio.h Rework file primitives. 2021-08-14 11:45:41 +08:00
floodmaz.cmd Test maze scripts using subroutines instead of stored procedures. (Avoid leftover buffers after execution). 2021-09-08 11:05:51 +08:00
flook.c Rework file primitives. 2021-08-14 11:45:41 +08:00
flook.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
input.c Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
input.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
isa.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
isearch.c Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
isearch.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
line.c Fix: avoid extra NL when newline/yank/insert-file at end of last line of non empty buffer. 2024-04-04 12:03:24 +08:00
line.h Revise window flagging on line change. 2021-09-15 13:15:31 +08:00
list.c Introduce generic list deletion API. 2021-09-08 10:54:07 +08:00
list.h Introduce generic list deletion API. 2021-09-08 10:54:07 +08:00
lock.c Replace compilation check by estruct.h header inclusion. 2021-08-07 21:46:58 +08:00
lock.h Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
main.c Changes to compile on macOS. (#2) 2022-08-24 10:28:13 +08:00
maze.cmd Revise maze test scripts. 2021-09-01 09:40:34 +08:00
mlout.c Bindable functions take a boolean as flag. 2021-08-11 17:02:19 +08:00
mlout.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
names.c Handle storing of procedure during parsing of buffer. 2021-09-05 12:01:02 +08:00
names.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
pklock.c Use memmove instead of memcpy for overlapping memory area. (reproducible on OpenBSD). 2022-08-26 11:16:45 +08:00
pklock.h Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
posix.c Use memmove instead of memcpy for overlapping memory area. (reproducible on OpenBSD). 2022-08-26 11:16:45 +08:00
random.c Revise line primitives linstr() and lover() 2021-08-22 12:35:39 +08:00
random.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
readme.39e Initial import of em-4.0.15-lt 2005-05-31 08:50:56 -07:00
region.c Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
region.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
retcode.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
screensize.cmd Use explicit buffer name as output for the script. 2021-08-07 10:29:23 +08:00
search.c Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
search.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
sharpmaz.cmd Test maze scripts using subroutines instead of stored procedures. (Avoid leftover buffers after execution). 2021-09-08 11:05:51 +08:00
shell.cmd Initial import of em-4.0.15-lt 2005-05-31 08:50:56 -07:00
spawn.c Revise pipe-command. 2021-09-15 11:51:12 +08:00
spawn.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
tcap.c Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
terminal.h Revise terminal interfaces. 2021-08-18 11:35:17 +08:00
termio.c Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
termio.h Revise terminal interfaces. 2021-08-18 11:35:17 +08:00
tststr.cmd Increase maximum file name length to 255 (Windows & Linux). 2016-03-19 11:37:54 +08:00
utf8.c Use gcc predefined in conditional compilation (__CYGWIN__, __SIZEOF_WCHAR_T__). 2021-08-18 09:37:47 +08:00
utf8.h $viewtab = TRUE to visualize hardcoded tabs. 2021-08-16 11:05:24 +08:00
util.c Bindable functions take a boolean as flag. 2021-08-11 17:02:19 +08:00
util.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
version.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
window.c Use explicit constants for smallest size of display rows and columns. 2021-08-31 12:55:10 +08:00
window.h Fix terminal resizing when new postion of last modeline overlap top row of last window. 2021-08-30 18:09:58 +08:00
word.c Centralize customization in defines.h instead of Makefile + estruct.h. 2021-08-18 16:54:35 +08:00
word.h Revise header files formatting. 2021-08-13 11:06:58 +08:00
wrapper.c Sanity check with customization CLEAN, RAMSIZE, RAMSHOW. 2021-08-24 12:17:40 +08:00
wrapper.h Sanity check with customization CLEAN, RAMSIZE, RAMSHOW. 2021-08-24 12:17:40 +08:00

README.md

README

µEMACS (ue) on Cygwin/MSYS2/Linux/NetBSD/OpenBSD, based on uEmacs/PK (em) from kernel.org.

Changes compare to uEmacs/PK

  • Line termination detection with new buffer mode (either Unix or DOS).

  • Encoding detection (ASCII, Extended ASCII, UTF-8 or Mixed).

  • Some fixes related to size either unchecked or limited (strcpy, insert-string, filenames, $kill).

  • Major refactoring of headers and file dependencies, hopefully to improve maintenance.

  • Some defaults changed due to 'finger habits': ue instead of em, ^S in commands mapping...

Unicode (UTF-8) support

  • gcc limitation on Windows (WCHAR_WIDTH 16).

  • Display of double and zero width characters ongoing.

How to build

  • dependencies: (gcc || clang) && gmake && ncurses-devel.

  • make