Commit Graph

123 Commits

Author SHA1 Message Date
Renaud 4cbf1e9ae1 Review cursor movement in presence of mixed latin1/unicode encoding. 2015-02-04 12:37:57 +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 36f24332c2 Review mkupper and ltos in eval. 2015-01-17 14:45:50 +08:00
Renaud 434c9ba7ab Review mlforce to avoid necessity to double '%' in input string, thus avoiding potential buffer overflow in caller functions (mdbugout and write-message). 2015-01-15 17:57:12 +08:00
Renaud 01a84a3ac0 Insure debug output fits inside terminal and buffer width. 2015-01-15 16:46:45 +08:00
Renaud e3c8805260 Unify macro debugging code in eval and exec. 2015-01-15 14:36:19 +08:00
Renaud 84919039a5 Hide details of token extraction inside exec. 2015-01-13 16:42:14 +08:00
Renaud a634ae5087 Retest gflags and limit implementation details to eval. 2015-01-10 16:23:19 +08:00
Renaud f8c405f501 Limit visibility of token types to eval. 2015-01-09 17:53:29 +08:00
Renaud 63776bb3f8 Restrict to local scope some internal funtions of eval. 2015-01-09 16:00:11 +08:00
Renaud 3ce31669ae Clean up eval: local scope for gtfun, gtenv, gtusr. Review initial allocation of result buffer returned by gtfun. 2015-01-09 15:35:03 +08:00
Renaud 57e5338ebd Insure &low and &upp don't point to the stack. 2015-01-09 09:46:03 +08:00
Renaud 4070a97fc9 Review buffer usage in & function evaluation. 2015-01-08 17:36:25 +08:00
Renaud a6669903b2 Double maximum size of a user variable (128 -> 256). 2015-01-08 14:57:02 +08:00
Renaud 8ddc8676ef More dynamic argument string size as parameters to predefined functions. 2015-01-08 14:16:15 +08:00
Renaud b596a3a09c macarg takes buffer length as parameter instead of assuming all buffer have NSTRING size. 2015-01-08 12:46:46 +08:00
Renaud d2d3581e74 Redimension result char array when doing &lef, &mid, &rig. 2015-01-07 14:47:13 +08:00
Renaud 5756354dd5 Redimension result char array when doing &cat.
Intermediary step in supporting longer string retuns in functions.
2015-01-07 14:11:58 +08:00
Renaud 534da43d08 Insure strings created by &lef and &mid are properly terminated. 2015-01-06 17:55:11 +08:00
Renaud 3be85dec65 Recompile under MinGW32 with base framework for implementing kbd/screen (mingw32 + wscreen). 2014-12-22 20:58:10 +08:00
Renaud 94d21c96f3 Move globals defines out of estruct.h. 2014-12-22 17:44:31 +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 f03b7c97e3 Move globals variables to related modules. 2014-12-22 17:42:27 +08:00
Renaud 0f6ff70764 Move variables from globals to corresponding modules. 2014-12-22 17:41:59 +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 0a998c1cf9 Move gasave and gacount to execute. 2014-12-22 17:40:12 +08:00
Renaud a027973156 Move macbug, cmdstatus and saveflag to eval. 2014-12-22 17:40:02 +08:00
Renaud 31b1cc84fb Move gflags to eval. 2014-12-22 17:39:53 +08:00
Renaud df349fa061 Recompile under CYGWIN64.
Move DEBUGM code to eval and exec.
2014-12-22 17:39:35 +08:00
Renaud d0a5516da6 Move global string literal to eval. 2014-12-22 17:37:57 +08:00
Renaud 9780b4ce16 Extract Struct terminal from estruct to terminal.h implemented by tcap. 2014-12-22 17:36:24 +08:00
Renaud 9ec9176c81 Centralize kill buffer code in line.c 2014-12-22 17:35:58 +08:00
Renaud 58642eb97f Move variable related definition from estruct to eval, and ISRCH related ones to isearch. 2014-12-22 17:35:41 +08:00
Renaud 4f9598b5da review line dependencies. 2014-12-22 16:08:12 +08:00
Renaud 5bbc6104ae Move flook and fexist to flook tosimplify dependency graph. 2014-12-22 16:06:50 +08:00
Renaud b321dce49e Remove efunc as dependencies. 2014-12-22 15:06:48 +08:00
Renaud e1cb42e0aa Remove termio from efunc. 2014-12-22 15:06:27 +08:00
Renaud 4e24edf715 Remove basic from efunc. 2014-12-22 15:06:17 +08:00
Renaud 9c2c4b7635 Remove display from efunc. 2014-12-22 15:06:08 +08:00
Renaud 539f327271 Remove input from efunc. 2014-12-22 15:05:57 +08:00
Renaud a61307aa59 Remove buffer from efunc. 2014-12-22 15:05:39 +08:00
Renaud b971f265fc Remove bind from efunc. 2014-12-22 15:04:46 +08:00
Renaud dce5f2239c Remove window from efunc. 2014-12-22 15:04:27 +08:00
Renaud f1a0771bfc Remove random from efunc. 2014-12-22 15:04:10 +08:00
Renaud 1428d9e2aa Remove search from efunc. 2014-12-22 15:03:52 +08:00
Renaud 7ede4aa6d8 remove exec from efunc. 2014-12-22 15:03:34 +08:00
Renaud 9c311a1ba8 split efunc into corresponding headers. 2014-12-22 14:46:16 +08:00
Renaud fa56e5dfff remove fileio from efunc, update dependencies. 2014-12-22 14:44:58 +08:00
Renaud d9bb0ea262 refactor epath into eval. 2014-12-22 14:44:35 +08:00
Renaud e86bdad4fc refactor epath into bind and util into eval. 2014-12-22 14:44:26 +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 e1b2f459e2 uemacs: Move uv variable into the eval.c source file.
It's used only there.

Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-11-24 08:26:55 +09: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
Thiago Farina 6ceea8ba9b uemacs: convert typedef struct VDESC to struct variable_description.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-11-06 09:21:41 -07:00
Thiago Farina b71ee14235 uemacs: Remove two completly unused functions (fnclabel and spal).
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>
2010-09-07 13:47:00 -07:00
Pekka Enberg 0f05e53f99 uemacs: Fix return statements
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>
2010-08-29 08:15:23 -07:00
Thiago Farina 8facd84c6f uemacs: Add --help option.
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>
2010-08-18 12:14:19 -07:00
Thiago Farina 3b4567fb81 uemacs: Use ARRAY_SIZE in more places.
Signed-off-by: Thiago Farina <thiago.farina@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-06-11 12:48:59 -07:00
Thiago Farina 9489673a1b uemacs: Add ARRAY_SIZE macro so we can get rid of some hard coded calculations.
Signed-off-by: Thiago Farina <thiago.farina@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-06-08 21:29:13 -07:00
Pekka Enberg 7281ae375e uemacs: enable -Wstrict-prototypes
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>
2010-02-27 16:17:44 -08:00
Pekka Enberg 74ffb9e254 uemacs: remove use of 'register' keyword
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>
2010-02-27 16:17:44 -08:00
Thiago Farina 5ffdebdbf3 uemacs: remove typdef struct BUFFER -> struct buffer.
Signed-off-by: Thiago Farina <tfransosi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2010-02-15 18:33:31 -08:00
Linus Torvalds 686a9e74ed Clean up various compile warnings
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>
2006-11-19 11:52:18 -08:00
Linus Torvalds ef92bc8cd9 Make sources mostly sparse-clean
Mainly an issue of taking care of a few remaining K&R function
declarations.
2005-10-01 01:09:22 -07:00
Linus Torvalds 24338ae855 Fix more compiler warnings
Better initializers, and more proper function types.
2005-10-01 00:56:15 -07:00
Linus Torvalds 8967dfc2c6 Fix ugly "definitions in header file" crud
Move various initializations into new "globals.c" file.

Also mark some variables static, and fix up some trivial compiler and
sparse warnings.
2005-10-01 00:33:44 -07:00
Linus Torvalds d5dc3160cf Lots of ANSI'fication and cleanups
Still tons of warnings with "-Wall", but now it's actually getting closer.

It even compiles again.
2005-09-30 22:52:45 -07:00
Linus Torvalds 9605cf8826 First cut at turning things into proper modern ANSI C
Hey! Real declarations!
2005-09-30 16:34:11 -07:00
Linus Torvalds 118ee5f944 Fix up headers and bogus re-definitions to use <stdlib.h> and <string.h>
Hey, it's already compiling cleaner. Getting proper function declarations
will be a bitch, though.
2005-09-30 15:33:51 -07:00
Linus Torvalds 435dd32ae2 Run "indent -kr -i8" on the sources
Let's see how nasty it is to clean things up. For real.
2005-09-30 15:26:09 -07:00
Linus Torvalds d7148b21fe Initial import of em-4.0.15-lt
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.
2005-05-31 08:50:56 -07:00