aboutsummaryrefslogtreecommitdiffhomepage
path: root/lib
AgeCommit message (Collapse)AuthorFilesLines
2015-02-17added session.svn macro to set up a session profile in the current ↵Robin Haberkorn1-2/+16
Subversion working copy * it uses "svn info --xml" since otherwise the output of "svn info" might be localized.
2014-11-24allow disabling of buffer sessions. in sample.teco_ini, disable sessions ↵Robin Haberkorn1-3/+6
automatically when files are given. this allows you to use sciteco in a Git repository to edit a specific file, without changing the buffer session. Also useful if SciTECO is used as the GIT_EDITOR without thrashing the repository's session every time a commit message is edited.
2014-11-24fixed standard library installationRobin Haberkorn1-1/+4
2014-11-24introduced $SCITECOCONFIG env variable, and set different default for ↵Robin Haberkorn1-1/+1
$SCITECOPATH on Windows * $SCITECOCONFIG has been introduced, so have a macro-accessible location for the profile, buffer session etc. This is set to the program dir on Windows. That way, the config files will be found, regardless of the current working dir, but it may also be set up for Unix-like environments on Windows. * $SCITECOPATH defaults to the program dir + "/lib" now on Windows. * The default profile is now always called ".teco_ini". Also on Windows. Platform differences like this would need to be documented. * The sample teco.ini has been renamed to "sample.teco_ini" for clarity
2014-11-24Q-Register loading and saving using the IOView classRobin Haberkorn1-2/+1
* EW can save Q-Registers now * the new E% may be used to save a q-register without making it the current document
2014-11-22updated lexer and session libraries using new EU, [* and ]* commandsRobin Haberkorn2-23/+21
2014-11-22allow setting the "*" register as an alternative to nEBRobin Haberkorn1-4/+3
this is more consistent with SciTECO's idea of abstract registers and allows the currend buffer to be saved on the Q-Register stack. This allows the idiom: [* ! ...change current buffer... ! ]*
2014-11-22added a buffer session module (session.tes)Robin Haberkorn2-1/+43
This is a simple and straight-forward implementation of buffer sessions in SciTECO. A session is merely a SciTECO script that opens files when executed (and restores properties). The current session is identified by this script's filename in Q-Register "session.path": ~/.teco_session by default. Users may set "session.path" to manage different profiles. An abstraction of session "names" is not provided. Users are expected to hack these on their own. For the common task of having one session per profile, the "session.git" macro is provided. It set's up the current session relative to the current Git repository. This will create ".teco_session" files in the root of Git repositories, that may be added to a global ignore pattern (or they may even be versioned!)
2014-11-22added globbing command ENRobin Haberkorn8-36/+13
* implements the same globbing as the EB command already did * uses Globber helper class that behaves more like UNIX glob(). glib only has a glob-style pattern matcher. * The Globber class may be extended later to provide more UNIX-like globbing. * lexer.tes has been updated to make use of globbing. Now, lexers can be automatically loaded and registered at startup. To install a new lexer, it's sufficient to copy a file to the lexers/ directory.
2014-11-20lexer library: added M[lexer.checkheader] and M[lexer.checkname] for ↵Robin Haberkorn8-20/+32
matching a pattern against the first line of a buffer or its filename. This simplifies the "lexer.test..." macros and allows us to select lexers based on the #! line.
2014-11-19added first draft of new modular lexer systemRobin Haberkorn11-233/+337
2014-11-10revised default function key macrosRobin Haberkorn1-18/+63
* use shorter function key macros. * instead, every function key has a commandline editing macro based on the macro "^Tc" * dot is no longer modified to calculate positions, instead Scintilla messages are used * prevent that function key macros move dot off-page * improved behaviour: HOME will will first skip spaces and tabs at the beginning of the line and only the second press will move dot to the real line beginning. UP and DOWN will try to keep the column. However this does not work quite as good as in other editors, since there's no (sane) way to save the column last set by one of the function keys.
2014-11-09revised U command: fail if no argument is providedRobin Haberkorn1-2/+2
* there is no reasonable default value for U * omitting the parameter for U might be a frequent programming error * U can be colon-modified now, in which case it may be used * to check for the presence of arguments in macros
2014-11-09Clarify `symcasecmp` macro in string.tesRobin Haberkorn1-1/+2
2014-11-02changed syntax for long Q-Register names: use [] brackets instead of {}Robin Haberkorn2-23/+23
this breaks many existing scripts, and means you may have to rebuild SciTECO with ./configure --enable-bootstrap The syntax of SciTECO might change in backwards-incompatible until version 1.0 is released.
2013-07-04updated lexer config: CMake and XML lexingRobin Haberkorn1-0/+87
2013-03-16fixed break-command: without-param it evaluates the search-statusRobin Haberkorn1-1/+1
2013-02-24moved QuickSort macros from symbols-extract script into own string.tes macro ↵Robin Haberkorn2-0/+46
library * therefore for bootstrapping to work, the SCITECOPATH is always set explicitly
2013-02-22added --with-default-scitecopath config option: default value of $SCITECOPATHRobin Haberkorn1-1/+1
useful for Windows where the desired default path does not correspond with the installation dir of the std lib macros
2013-02-22added some default function key macrosRobin Haberkorn2-1/+29
2013-02-15install standard macros into special standard library path (pkgdatadir/lib)Robin Haberkorn2-0/+152
* SCITECOPATH environment variable defaults to this directory * manpage updated * default teco.ini updated: no need to generate it anymore