Age | Commit message (Collapse) | Author | Files | Lines |
|
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>
|
|
llength() is currently a 'short' which can overflow and result in signed
numbers if line lengths are larger than 32k. We'll fix the overflow
separately, but before we do that, just use a signed int to hold the
value so that we don't overrun memory allocations when we converted that
negative number to a large positive unsigned integer.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
For some reason I had limited things to 0xffff, it really should be 0x10ffff.
We don't actually support a full 32-bit unicode model anyway, since we
use the high bits for the control/meta/^X/special bits, but there was no
reason to limit things to 16 bits when we had 28 bits available. And
the real limit for real Unicode characters is 0x10ffff.
Add a silly example character past the 16-bit range to the UTF8 demo
file:
'SMILING FACE WITH HALO' (U+1F607)
from the 'emoticons' block.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
GCC spotted the following unused variable:
CC file.o
file.c: In function ‘readin’:
file.c:225:6: warning: variable ‘lflag’ set but not used [-Wunused-but-set-variable]
file.c: In function ‘ifile’:
file.c:553:6: warning: variable ‘lflag’ set but not used [-Wunused-but-set-variable]
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
These functions convert the byte offset into the column number
(getccol()) and vice versa (getgoal()).
Getting this right means that moving up and down the text gets us the
right columns, rather than moving randomly left and right when you move
up and down. We also won't end up in the middle of a utf-8 character,
because we're not just moving into some random byte offset, we're moving
into a proper column.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This re-introduces vtputc() as the way to show characters, which
reinstates the control character handing, and simplifies show_line() in
the process.
vtputc now takes an "int" that is either a unicode character or a signed
char (so negative values in the range [-1, -128] are considered to be
the same as [128, 255]). This allows us to use it regardless of what
the source of data is.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
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>
|
|
This makes it possible to cut-and-paste the UTF8 testfile into a new
buffer, and the end result looks correct.
NOTE! We still do various things wrong while editing. For example,
while the cursor movements were fixed, simple things like deleting a
character still work on single bytes, rather than utf8 characters.
So while this is getting much closer to actually editing UTF-8 data,
it's not there yet.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
The TAB handling got broken by commit cee00b0efb86 ("Show UTF-8 input as
UTF-8 output") when it stopped doing things one byte at a time.
I'm sure the other special character cases are broken too.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This uses the four high bits for the meta and control key sequences.
This means that we will be limiting our Unicode space to 28 bits, but
that's more than we really need.
It *would* be nicer if we just used the sign bit to mark "we have meta
character information") but that would require bigger changes. And we
really don't need to worry about 30-bit unicode. Small steps, remember.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
.. but we do have that 0.1s delay, so if somebody feeds us non-utf8
sequences, we won't delay forever.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Right now the input side can give partial utf8 input, and that showed
that we didn't properly handle that case.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
I'm starting to expand the input value from 'short' (with flags in the
upper eight bytes) to 'int' (with negative values having flags).
Small baby steps.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
ttgetc() used some homebrew utf8 to unicode translation, limited to just
the normal latin1 characters. Use the utf8 helper functions to get it
right for the more complex cases.
NOTE! We don't actually handle characters > 0xff right anyway. And we
still end up doing Latin1 in the buffers on input. One small step at a
time.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Ok, so it may do odd things if it's not truly utf-8, and when moving up
and down lines that have utf-8 the cursor moves oddly (because the byte
offset within the line stays constant, rather than the character
offset), but with this you can actually open the UTF8 example file and
move around it, and at least some of the movement makes sense.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Let's just plan on being fully utf8 some day. We're not there yet, and
maybe we'll never be, but having the halfway mode is not useful either.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
.. by doing the stupid "convert to unicode value and back" model.
This actually populates the 'struct video' array with the unicode
values, so UTF8 input actually shows correctly. In particular, the nice
test-file (UTF-8-demo.txt) shows up not as garbage, but as the UTF-8 it
is.
HOWEVER!
Since the *editing* doesn't know about UTF-8, and considers it just a
stream of bytes, the end result is not actually a usable utf-8 editor.
So don't get too excited yet: this is just a partial step to "actually
edit utf8 data"
NOTE NOTE NOTE! If the character buffer contains Latin1, we will
transform that Latin1 to unicode, and then output it as UTF8. And we
will edit it correctly as the character-by-character data. Also, we
still do the "UTF8 to Latin1" translation on *input*, so with this
commit we can actually continue to *edit* Latin1 text.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This is disgusting. And quite frankly, it's debatable whether this will
ever work. The "line" structure is still just an array of characters,
so that has to work with utf-8.
But the 'struct video' thing is what represents the actual screen
rectangle, and is fixed-size by the size of the screen. So making it
contain actual 32-bit unicode characters *may* make sense.
Right now we translate things the same way we always used to, though, so
utf-8 in 'struct line' will not be translated to the proper unicode
array, but to the bytes of the utf-8 representation. So this really
doesn't improve anything per se yet, just expands the memory use of the
video array.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Let's see how hard it is to show UTF-8 characters properly.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
See <https://bugs.gentoo.org/show_bug.cgi?id=387135>.
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
I'm not 100% sure we really should even be doing this whole "keyboard"
open/close for termcap, but even if the right thing to do ends up being
to just do everything in the TTopen/TTclose (and make TTkopen/TTkclose
no-ops), it does seem to be the right thing to do.
Reported-by: Bijan Soleymani <bijan@psq.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
It seems to have something to do with some old DOS mode, and not having
keyboard translation on ("Insert floppy A:" questions while opening
files? Whatever). But this is while doing normal file opens, and it is
just insane to open/close a tty across a file open.
The possible tty init/exit sequence would mess up some of the file
read/write messages.
Reported-by: Bijan Soleymani <bijan@psq.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
The 'tcapkopen()' function re-initializes the terminal with the 'ti'
sequence, which for most sane termcap entries is just empty. But for
'xterm', that seems to actually be a real control sequence (clear and
reset?), and we'd better tell display.c that the screen is now garbage
and needs to be re-drawn.
Also, make tcapkclose() match the 'ti' (terminal init) with a 'te'
(terminal exit).
Maybe we should just stop playing games with ti/te, but this at least
improves the situation a bit.
Reported-by: Bijan Soleymani <bijan@psq.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
While I'm here, improve the word of the above two options.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
I want to see the difference between space and nbsp, and I consider nbsp
to be a control character, so show it as such. Even if it is
technically "printable".
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
xmalloc checks the returned pointer and dies if it failed to allocate
the memory.
Use this new function in window.c.
More places will be converted to use xmalloc latter.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Fix the following warning:
input.c: In function ‘getstring’:
input.c:590: warning: ignoring return value of ‘mkstemp’, declared with attribute warn_unused_result
This add usage.c module for die function.
This also add wrapper.c module for the xmkstemp that is wrapper function
around the original mkstemp function.
Both module codes was largelly based on git, linux and sparse codes.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This constant is used only there, so there is no reason for it to be
in estruct.h
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
These two constants are only needed/used by the posix.c file,
so just define them there.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This fix the following warning:
buffer.c: In function ‘nextbuffer’:
buffer.c:45: warning: ‘bp’ may be used uninitialized in this function
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
It's used only there.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
I got following errors while compiling uemacs:
names.c:132: error: ‘insspace’ undeclared here (not in a function)
names.c:217: error: ‘yank’ undeclared here (not in a function)
make: *** [names.o] Error 1
It looks like names.c needs line.h for function declarations.
Signed-off-by: Li Jie <eltshanli@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This constant is only used in line.c. So just keep it there.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This patch kills #ifdef'd code from display.c and file.c.
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Christian Faulhammer <christian@faulhammer.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
uemacs is not a subprogram and doesn't seem it will be, so there is no reason
to leave this macro. And this macro is defined to 0, so we never reach the path
where we test for this macro.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
The implementation of these functions are doing anything at all at this moment.
So cleanup a bit the code by removing fnclabel and spal functions completly.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This patch removes bunch of ancient Makefiles and VMS scripts from
uemacs source tree. If somebody really needs them, they can always look
them up from git repository history.
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This patch fixes Makefile 'clean' target to clean up program executable 'em'.
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Return statement is not a function so remove superfluous use of parenthesis.
Cc: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This patch kills an unused 'lckhello' function and gets rid of the following
GCC warning:
CC lock.o
lock.c:160: warning: ‘lckhello’ defined but not used
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This type is already exported in edef.h
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Added + and +<n> to the usage output.
Also fixed the following warning:
main.c: In function ‘main’:
main.c:121: warning: ‘gline’ may be used uninitialized in this function
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This functions is only used internally by basic.c, so marking it static,
to make it private.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This patch fixes out-of-box build on Mac OS X by using "uname -s" to detect the
underlying OS and fixing up defines accordingly.
Cc: Yong Luk Stanley Elijah Goh <stan@t0xt.com>
Signed-off-by: Pekka Enberg <penberg@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Compiles on Mac OS X 10.6.4.
setmode() is renamed to setemode() to avoid conflict with OS X's unistd.h's
setmode().
Modify Makefile to enable the appropriate DEFINES to compile on Mac OS X.
Signed-off-by: Yong Luk Stanley Elijah Goh <stan@t0xt.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
There is a case when the user can type something like this:
em filename +
or even
em +
Instead of saying "Bogus argument" when the uemacs start, just go to the end of
the buffer like we can do in vim for example.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Add a basic usage() function to support the --help option.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Replace four macros used to define integer constants with a enum.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <thiago.farina@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <thiago.farina@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <thiago.farina@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Also removes some tabs and whitespaces.
Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Cc: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This patch enables the GCC '-Wstrict-prototypes' switch and fixes up broken
prototypes.
Cc: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
I keep typoing 'Makefile' instead of 'makefile'. I guess it's hard-wired to
the brain by now so just rename the damn thing.
Cc: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Lets welcome uEmacs/PK to the year 2010! As expected, the patch has no effect
on the generated code:
text data bss dec hex filename
106002 8864 18616 133482 2096a em
106002 8864 18616 133482 2096a em.new
Cc: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Commit 8fc7449 ("uemacs: fix sparse warnings, making file-local symbols
static.") made some functions that are not used anywhere static. This patch
removes them to kill the following compilation warnings:
ansi.c:255: warning: ‘ansihello’ defined but not used
ibmpc.c:505: warning: ‘ibmhello’ defined but not used
vmsvt.c:521: warning: ‘hellovms’ defined but not used
vt52.c:181: warning: ‘vt52hello’ defined but not used
Cc: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This patch makes the build output look like what we have in the linux kernel so
that warnings stand out better:
CC ansi.o
CC basic.o
CC bind.o
CC buffer.o
buffer.c: In function ‘nextbuffer’:
buffer.c:43: warning: ‘bp’ may be used uninitialized in this function
CC crypt.o
CC display.o
[...]
Cc: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Pekka Enberg <penberg@cs.helsinki.fi>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
line.c:21: warning: ‘ykbuf’ defined but not used
line.c:22: warning: ‘ykboff’ defined but not used
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
ansi.c:255:6: warning: symbol 'ansihello' was not declared. Should it be static?
epath.h:11:6: warning: symbol 'pathname' was not declared. Should it be static?
display.c:36:7: warning: symbol 'vscreen' was not declared. Should it be static?
display.c:38:7: warning: symbol 'pscreen' was not declared. Should it be static?
display.c:927:5: warning: symbol 'updateline' was not declared. Should it be static?
evar.h:20:6: warning: symbol 'uv' was not declared. Should it be static?
evar.h:24:6: warning: symbol 'envars' was not declared. Should it be static?
evar.h:128:7: warning: symbol 'funcs' was not declared. Should it be static?
fileio.c:14:6: warning: symbol 'ffp' was not declared. Should it be static?
fileio.c:15:5: warning: symbol 'eofflag' was not declared. Should it be static?
ibmpc.c:505:6: warning: symbol 'ibmhello' was not declared. Should it be static?
isearch.c:36:5: warning: symbol 'saved_get_char' was not declared. Should it be static?
isearch.c:37:5: warning: symbol 'eaten_char' was not declared. Should it be static?
isearch.c:41:5: warning: symbol 'cmd_buff' was not declared. Should it be static?
isearch.c:42:5: warning: symbol 'cmd_offset' was not declared. Should it be static?
isearch.c:43:5: warning: symbol 'cmd_reexecute' was not declared. Should it be static?
line.c:21:6: warning: symbol 'ykbuf' was not declared. Should it be static?
line.c:22:5: warning: symbol 'ykboff' was not declared. Should it be static?
lock.c:17:6: warning: symbol 'lname' was not declared. Should it be static?
lock.c:18:5: warning: symbol 'numlocks' was not declared. Should it be static?
vmsvt.c:521:6: warning: symbol 'hellovms' was not declared. Should it be static?
vt52.c:181:6: warning: symbol 'vt52hello' was not declared. Should it be static?
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
At least the most obvious ones.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
That's how modern distributions roll (and have, for a long time. I just
haven't committed this).
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
This avoids the annoying behavior where we're on the command line,
waiting for an ESC, and any control character sequence ends up finishing
the command line and eating the first ESC.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
Most of them were harmless: gcc not being smart enough to realize that
an uninitialized variable was never used if it wasn't initialized etc.
Some of them were name clashes ("crypt()" is a standard library
function, so rename it to "myencrypt()") etc.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Hey, what can I say? Without Apple, ppc on the desktop? Not very likely.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Waste a few minutes occasionally on cleanup, and maybe we can make this
thing look ok in a decade or two..
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Instead of iterating over all the source files, just check them all
together since it works these days, and could potentially find
cross-file issues.
|
|
We obviously don't handle it, but it's a wonderful example if we ever do.
Demo by Markus Kuhn from
http://www.cl.cam.ac.uk/~mgk25/ucs/examples/UTF-8-demo.txt
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
NOTE! MicroEmacs is very much a byte-based editor, and the new utf-8
support is purely an issue of terminal input and output. The file
contents themselves are in the 8-bit space. In that space, Unicode is
the same as Latin1.
The new mode is called "utf-8", and is enabled automatically by the
new emacs.rc when $LANG contains the substring "UTF-8".
I'm sure people would like to some day also edit real UTF-8 contents,
rather than just edit old 8-bit Latin1 contents in a UTF-8 terminal.
However, that's an independent (and much bigger and thornier) issue.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
After your last round of changes it compiles without warnings here (Fedora
rawhide, gcc-4.0.2), but the link complains.
mktemp(3) isn't always secure, the problem is fixed in mkstemp(3)
Signed-off-by: Horst H. von Brand <vonbrand@inf.utfsm.cl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
This code still assumes a latin1 kind of "one byte, one character" setup.
UTF-8 input/output (even if the data is encoded in latin-1) is a separate
issue.
|
|
Mainly an issue of taking care of a few remaining K&R function
declarations.
|
|
Better initializers, and more proper function types.
|
|
Move various initializations into new "globals.c" file.
Also mark some variables static, and fix up some trivial compiler and
sparse warnings.
|
|
This allows us to include the proper headers, instead of declaring
things (badly) by hand.
|
|
Starting to try to avoid name clashes with curses and friends.
|
|
|
|
|
|
Lots more to go.
|
|
Still tons of warnings with "-Wall", but now it's actually getting closer.
It even compiles again.
|
|
Oh, and change the -O4 to a saner -O2 while at it
|
|
Next up: enabling "-Wall" in the makefile. Not because it's ready,
but because it gets easier to track where we are in the process..
|
|
Bored? Me? Why do you ask?
|
|
|
|
Ugh. Some of this is ugly. We should really include <curses.h> etc,
but there are too many name clashes for that right now.
|
|
Hey, "word.c" is now sparse-clean.
|
|
Hey! Real declarations!
|
|
Hey, it's already compiling cleaner. Getting proper function declarations
will be a bitch, though.
|
|
Since sparse really wants clean ANSI C, we're not even _remotely_ close
to being sparse-clean. But maybe some day...
|
|
Let's see how nasty it is to clean things up. For real.
|
|
Hey, get with the bloated new world.
|
|
make sure to include <errno.h>, and allow for the fact that newer
gcc's don't allow function declarations in function scope (don't
ask me why, but there you have it..)
|
|
This is a slightly updated version of uemacs-PK (PK is Pekka
Kutvonen) which was used at Helsinki University a long time
ago. My fingers cannot be retrained.
|