CVSROOT: /home/x-cvs
Module name: xc
Changes by: [EMAIL PROTECTED] 02/09/22 00:09:09
Log message:
** This commit includes some major changes in xedit and the lisp interpreter **
o The lisp interpreter is now fully integrated in xedit, running in the same
process, *current* limitations and problems include:
o i/o is not redirected
o if you call (quit) it will exit xedit, not just the interpreter
o if the interpreter crashes, xedit also crashes...
o there is no way to interrupt the lisp process, you must
either kill xedit or, if the task will eventualy finish,
wait for it.
o If you type an expression, and press Ctrl+J in the *scracth*
buffer, it will print the result of the evaluation in the
scratch buffer, but currently it is limited to 8192 bytes.
o The builtin syntax highlight for the C language was removed, now it is
done with the generic lisp interface.
It does basically the same thing as before, but handles better complex
constructions, like comments inside preprocessor directives; but yes,
it is quite slower, if you have a slow computer, you may wish to comment
the lines:
-%<-
(syntoken "[][(){}/*+:;=<>,&.!%|^~?-][][(){}*+:;=<>,&.!%|^~?-]?"
:property *prop-punctuation*)
--%<--
from "progmodes/c.lsp". If you do this, it will run almost 3 times faster
(in a Celeron 366 the default definition renders +-4K lines per second,
with those lines removed, it renders +-11K lines per second and consumes
a lot less memory).
o There are now several new syntax highlight modes, in this commit I added
modes for C/C++, Lisp/Scheme, Imakefile, X Resource files, Makefile,
Manpage source, Sgml and Html.
o In the current version you cannot disable the syntax highlight, or tell
xedit to use an alternate mode for a given file. But these options should
be available soon.
o The bytecode interpreter runs significatively faster now, but at the
cost of some limitations. In the current version it disallows more than
256 local variables, more than 256 constants, more than 256 builtin
functions, or structures with more than 256 fields. I will probably add
"long/large" versions of some/all opcodes to remove these limitations
later. Also, jumps are now limited to 16 bits, but this is also subject
to adding later opcodes for longer jumps.
o The regex library only does minimal match now. In this patch it is yet
disallowing some "valid" patterns, but I will reenable them soon
("exotic" patterns envolving repetitions and matches for empty strings,
etc).
o There are a few changes and bug fixes to Xaw, some changes are just to
help/understand the work of the syntax highlight lisp engine.
o There isn't *yet* auto indenting, auto spelling, neither other useful
help from the editor.
o There are also some bugfixes for the lisp interpreter and some new
builtin lisp functions.
Modified files:
xc/programs/Xserver/hw/xfree86/:
CHANGELOG
xc/lib/Xaw/:
Text.c TextSrc.c
xc/programs/xedit/:
Imakefile Xedit-color.ad Xedit.ad lisp.c options.c util.c
xedit.c xedit.h
xc/programs/xedit/lisp/:
Imakefile bytecode.c bytecode.h core.c core.h helper.c
internal.h lisp.c read.c write.c
xc/programs/xedit/lisp/modules/:
Imakefile syntax.lsp xedit.lsp
xc/programs/xedit/lisp/modules/progmodes/:
c.lsp
xc/programs/xedit/lisp/re/:
README re.c rec.c reo.c tests.txt
Added files:
xc/programs/xedit/lisp/:
xedit.c xedit.h
xc/programs/xedit/lisp/modules/progmodes/:
html.lsp imake.lsp lisp.lsp make.lsp man.lsp sgml.lsp
xrdb.lsp
Removed files:
xc/programs/xedit/:
c-mode.c proto.c
Revision Changes Path
3.2306 +6 -1 xc/programs/Xserver/hw/xfree86/CHANGELOG
3.51 +7 -3 xc/lib/Xaw/Text.c
1.34 +10 -1 xc/lib/Xaw/TextSrc.c
1.23 +3 -3 xc/programs/xedit/Imakefile
1.10 +0 -15 xc/programs/xedit/Xedit-color.ad
1.23 +1 -16 xc/programs/xedit/Xedit.ad
1.12 +38 -299 xc/programs/xedit/lisp.c
1.13 +2 -174 xc/programs/xedit/options.c
1.22 +1 -1 xc/programs/xedit/util.c
1.17 +8 -1 xc/programs/xedit/xedit.c
1.16 +3 -11 xc/programs/xedit/xedit.h
1.20 +5 -3 xc/programs/xedit/lisp/Imakefile
1.3 +903 -951 xc/programs/xedit/lisp/bytecode.c
1.2 +6 -14 xc/programs/xedit/lisp/bytecode.h
1.51 +79 -1 xc/programs/xedit/lisp/core.c
1.23 +3 -1 xc/programs/xedit/lisp/core.h
1.36 +4 -2 xc/programs/xedit/lisp/helper.c
1.32 +4 -3 xc/programs/xedit/lisp/internal.h
1.61 +76 -61 xc/programs/xedit/lisp/lisp.c
1.22 +18 -7 xc/programs/xedit/lisp/read.c
1.12 +3 -1 xc/programs/xedit/lisp/write.c
1.10 +8 -1 xc/programs/xedit/lisp/modules/Imakefile
1.7 +340 -344 xc/programs/xedit/lisp/modules/syntax.lsp
1.4 +309 -459 xc/programs/xedit/lisp/modules/xedit.lsp
1.7 +109 -113 xc/programs/xedit/lisp/modules/progmodes/c.lsp
1.2 +4 -22 xc/programs/xedit/lisp/re/README
1.4 +108 -177 xc/programs/xedit/lisp/re/re.c
1.2 +3 -3 xc/programs/xedit/lisp/re/rec.c
1.6 +12 -9 xc/programs/xedit/lisp/re/reo.c
1.2 +21 -17 xc/programs/xedit/lisp/re/tests.txt
_______________________________________________
Cvs-commit mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/cvs-commit