xfnw
4f6e6d6d82
add move functionality into ce-command-copy
2024-01-14 10:43:27 -05:00
xfnw
94cf2d0c50
ce-command-copy: implement
2023-11-23 14:19:42 -05:00
xfnw
14ad178349
add x and X commands
...
not originally planned, but would be nice to have a counterpart to i/I
2023-11-21 20:02:12 -05:00
xfnw
9685d31af6
factor out general region application from insert
...
'send the selected lines through this function' seems like a
common pattern
2023-11-21 19:59:53 -05:00
xfnw
b51e79fbd6
move error format string to variable
...
allows easily changing it at runtime, since some tts voices
silently filter out the standard ed "?"
2023-11-18 12:35:05 -05:00
xfnw
cff2736ed3
ce-command-insert: reduce code duplication
2023-11-16 16:49:38 -05:00
xfnw
c907c24caf
ce-command-insert: implement
2023-11-15 20:07:15 -05:00
xfnw
a0dd27ab3f
ce-push-lines: optimise
...
get rid of unnecessary recursion with repeated memory allocation
2023-11-15 18:52:34 -05:00
xfnw
1ebb212178
ce-command-num-print: create
...
this adds the n command to print with line numbers.
line numbers allow for better ease of use, however this is slower than
normal printing.
the line numbers pad to 3 digits, as extremely large files are a bit out
of scope with commoned (especially with everything being a linked list)
2023-11-13 15:27:44 -05:00
xfnw
0a0e57d18d
ce-command-reg-replace: single replacement
...
a bit code duplicatey :/
sadly no case-insensitive i flag, as far as i can tell pregexp does not
support case insensitivity
2023-11-12 11:23:15 -05:00
xfnw
098b6f9469
ce-command-reg-replace: global replace
2023-11-12 11:07:08 -05:00
xfnw
f393d65ad1
begin ce-command-reg-replace parsing
2023-11-11 23:13:28 -05:00
xfnw
ac99a5ac95
ce-command-open: re-read current file if no name specified
2023-11-11 18:37:20 -05:00
xfnw
81400a9ad2
ce-tokens: parse out \'s used for escaping tok
2023-11-11 18:18:16 -05:00
xfnw
f3641ab1e3
create tokenization function
...
needed for ce-command-reg-replace
2023-11-11 17:45:57 -05:00
xfnw
472099f03d
ce-command-search: implement
2023-11-04 16:19:54 -04:00
xfnw
2364d35113
ce-command-expand: condense a bit
2023-11-04 15:58:34 -04:00
xfnw
46f1bdac1f
ce-command-expand: switch to matching regex
...
now considers lines with just spaces/tabs as blank
2023-11-04 13:56:38 -04:00
xfnw
4f85d218fb
readme: add note about alpine dependencies
2023-10-28 21:28:43 -04:00
xfnw
ca946964f5
add pregexp as a dependency
...
we will need it for stuff like ce-command-reg-replace
added as a git submodule because common lisp package management
is a bit complex looking and i have no idea what i am doing :P
2023-10-28 15:49:56 -04:00
xfnw
f7e9cf3357
ed-style simple error handling
...
most errors will now print a ? be put into the err variable
^D on input is intentionally not handled, to allow easy
access to the debugger
2023-10-26 18:57:41 -04:00
xfnw
7565560df3
add some comments
2023-10-26 14:43:51 -04:00
xfnw
74abc86c7a
add ctags to gitignore
2023-10-26 14:39:25 -04:00
xfnw
6b6e3904e4
ce-command-get-point: show resulting points instead
...
conveniently lets the user see how long the file is
2023-10-26 14:37:16 -04:00
xfnw
f5a5665f62
declare unused variables as unused
...
sadly there seems to not be a way to do this globally, so
we have to add this into nearly all the normal commands
2023-10-26 14:22:32 -04:00
xfnw
8f786b8a90
ce-command-expand-before: only offset if matching empty line
2023-10-26 14:17:36 -04:00
xfnw
28e50589e8
ce-command-expand-before and ce-command-expand
2023-10-26 14:13:29 -04:00
xfnw
49c4a66ac2
add { and } to planned features
2023-10-26 12:11:54 -04:00
xfnw
6dc8a417a9
ce-open: actually check if file exists
2023-10-25 20:33:27 -04:00
xfnw
6b58fbc523
ce-command-get-point: show filename too
2023-10-25 20:23:51 -04:00
xfnw
94b8d0b4b4
ce-main: open file from arguments
...
works as the git commit editor now
2023-10-25 20:23:26 -04:00
xfnw
e4f707cd39
makefile: add note about clean effectiveness
2023-10-24 21:30:33 -04:00
xfnw
43ee950398
mark unused variables as optional
...
still need to figure out how to silence the style warnings
about them being unused...
2023-10-24 21:19:07 -04:00
xfnw
a079cf3bf6
makefile: watch source files
2023-10-24 20:45:08 -04:00
xfnw
f3acbea18d
readme: reword a bit
2023-10-21 12:43:51 -04:00
xfnw
ec04dcaa6c
build: add a makefile
2023-10-21 11:52:35 -04:00
xfnw
d59bebaba9
readme: document how to build
2023-10-18 21:29:02 -04:00
xfnw
3e85a92627
build to standalone binary
2023-10-18 21:14:30 -04:00
xfnw
2a4b4d51cc
add line replace
...
we're now a somewhat usable editor
2023-10-13 18:28:51 -04:00
xfnw
91748eeef8
handle printing empty buffer gracefully
2023-10-13 18:13:51 -04:00
xfnw
23a85bcc9a
add delete
2023-10-13 18:09:05 -04:00
xfnw
532d3a6a66
do not bork add when buffer nil
2023-10-12 21:34:39 -04:00
xfnw
853333a333
add add and add-before
2023-10-12 21:23:08 -04:00
xfnw
0039691543
ce-command-enter: remove unnecessary subseq
2023-10-12 18:37:28 -04:00
xfnw
0c498871ad
push lines helper function and switch to 1+
2023-10-12 18:33:34 -04:00
xfnw
1dc9f3757b
rename some more of the commands
2023-10-12 17:37:48 -04:00
xfnw
57ed91354d
eval region
...
also rename B to e
2023-10-12 16:51:01 -04:00
xfnw
cd7a4cc682
reorder functions a bit, comment
2023-10-11 19:13:40 -04:00
xfnw
66b29f6df0
open and write files
...
we are now a functional-ish pager
2023-10-11 19:04:46 -04:00
xfnw
91440040af
printing
2023-10-10 21:55:53 -04:00