a867892183
Replaced docopt with clap for command line argument parsing.
2020-01-24 18:32:42 +09:00
5ca0f5e406
Fomatted with recent rustfmt. No actual code changes.
2018-07-05 02:00:10 -07:00
1bb93aae00
Got interactive responsiveness to terminal resizing working.
2018-01-01 02:30:11 -08:00
17beb9c06d
Using a smallstring implementation inside the screen buffer.
...
This keeps things contiguous in memory in the common case.
2017-12-31 20:05:00 -08:00
c11aee9bf6
WIP switching from Rustbox to Termion for terminal handling.
2017-12-31 16:55:27 -08:00
6ccba0510b
Forgot to delete a bit from commandline option parsing.
2017-12-31 03:35:09 -08:00
e47c0e0451
Updated to the latest versions of dependencies.
2017-12-31 03:33:43 -08:00
9c302620e9
Updating to use the new Ropey.
...
This is mainly just for kicks and giggles, since it really won't
work quite properly anyway, due to the lack of grapheme indexing.
The next real thing is to... well, start from scratch.
2017-12-30 23:10:56 -08:00
45e6125bbc
Updated to work with more recent library versions. Also RustFmt.
2016-03-05 02:40:01 -08:00
f1ffc2867a
Unit tests now also compile on stable rust.
2015-07-06 19:31:55 -07:00
ec16e8ac6e
Led is building on stable rust! Woo hoo!
2015-07-06 19:20:25 -07:00
6823706d69
Working towards rust stable support.
2015-07-06 18:39:00 -07:00
9644a1aa03
Updated dependencies for stable rust.
...
Warning: doesn't compile. Haven't updated own code for stable
yet.
2015-07-06 18:14:12 -07:00
869cb187b6
Migrated code from std::old_io to std::io
2015-03-15 16:03:23 -07:00
cca7133264
Updated code to latest Ropey.
2015-03-03 00:08:52 -08:00
ada003b346
Split rope implementation off into external lib "Ropey".
...
Ropey can be found at https://github.com/cessen/ropey
2015-02-25 20:05:17 -08:00
82e6fca1dd
Updated code for latest rustc.
2015-02-23 20:50:55 -08:00
d3cbc7644f
Updates for latest rustc.
2015-02-16 22:01:22 -08:00
de58f01b2f
Added some benchmarks for Rope, and improved new_from_str() for Rope.
...
The new new_from_str() uses an algorithm that should be linear time
complexity compared to the length of the string.
2015-02-15 19:42:07 -08:00
902d93e957
Line numbers are now displayed in left-hand gutter.
2015-02-08 19:17:48 -08:00
9b24b2b4f2
Added rust-encoding as a dependency, in prep for text encoding support.
2015-02-08 00:19:37 -08:00
2d50906f43
Moved the rest of file loading/saving into Buffer.
2015-02-07 23:35:25 -08:00
26965417f3
WOrking on getting cursor movement working again.
2015-02-07 19:46:08 -08:00
3ae51f7f7e
Formatters are now primarily factories for iterators.
...
This is a big shift in the formatter API's. It simplifies the
responsibilities of the implementers so that pretty much all they
have to do it implement an iterator. Everything else will be
automatically derived from that. (Or, at least, that's the hope.)
2015-02-06 23:58:19 -08:00
8701ebbba7
Tweaked code to avoid warnings from latest rustc compiler.
2015-01-29 21:03:56 -08:00
c6cfebdb75
Commented out the GUI modules until I can figure out how to get it working again.
...
The rust SDL2 bindings have changed in a way that makes the lifetimes
very strict. This is probably a good thing from a safety standpoint,
but means I'll likely need to re-architect the GUI drawing code.
For now I'm going to leave that on the back-burner and focus on getting
the console version working.
2015-01-29 20:35:19 -08:00
109e46a027
WIP: moving GUI code over to use LineFormatter.
2015-01-25 14:00:45 -08:00
8d83fe77d2
Re-enabled the GUI code.
2015-01-25 13:30:15 -08:00
0557f5f6ce
Reorganized the code a bit, and started updating unit tests.
2015-01-25 13:20:16 -08:00
c69ebc240f
WIP: making Buffers so they can be given LineFormatters.
...
A LineFormatter determines how a line of text is visually displayed in
2d space. This allows both the Console and GUI version of the editor
to share the same buffer code whilst still handling the differing ways
in which both handle visual display.
2015-01-24 14:35:49 -08:00
463911e5b3
Beginnings of a GUI.
2015-01-18 22:52:35 -08:00
30ad0c2ea4
Added SDL2 and Freetype as dependencies, in preparation for a GUI.
...
Also wrapped Freetype functionality in a Font struct.
2015-01-18 13:12:01 -08:00
d6e28b02a3
Fixed some warnings.
2015-01-11 01:16:21 -08:00
0fb338f05b
Updated code to compile with Rust 1.0 alpha.
2015-01-09 18:50:27 -08:00
2785c3821b
Updated code to compile with the most recent Rust nightly.
2015-01-04 16:29:19 -08:00
f760d6078d
Added jump-to-line functionality and fixed some display bugs.
2015-01-03 13:09:12 -08:00
02fdbcf027
Files loading/saving is working again.
2014-12-31 20:36:23 -08:00
49b34e78d5
Got basic editing functionality up and running again after the refactor.
2014-12-31 18:39:01 -08:00
c88ba48b6d
WIP refactor: change text buffer to use the Line struct for storing text.
...
Most of the UI and editor code is either commented out or not included
in the compile right now. This is temporary while I get the basic
text code working again.
2014-12-29 16:17:53 -08:00
833e92c5a0
Added a some text manipulation methods, and made backspace work properly.
2014-12-26 21:03:13 -08:00
16945f4183
Updated code to work with new versions of libraries.
...
Also added backspace support.
2014-12-26 17:15:20 -08:00
a56ff95221
WIP: building a proper UI for editing a file.
...
Some things don't quite work properly yet...
2014-12-20 17:23:47 -08:00
421b5288a4
Split buffer.rs into various sub-modules for better organization.
2014-12-19 23:22:30 -08:00
a31a0a2c41
Basic file loading/saving.
2014-12-19 22:43:31 -08:00
fec361ad29
Refactored event loop.
...
This allows large numbers of events to be handled in bulk, but without
the program eating up CPU when idle.
2014-12-19 21:10:03 -08:00
ef64bd8f1c
Fixed bug in tree balancing. Text rope is now fully self-balancing.
2014-12-19 00:23:08 -08:00
4f987ffa16
First attempt at self-balancing rope. Totally broken, though.
2014-12-16 23:40:28 -08:00
3154d626ff
Escape quits, return inserts a new line.
2014-12-14 23:11:13 -08:00
b78501f983
Super simple text editing interface!
...
No cursor yet, just always appends to the end of the current buffer.
But still!
2014-12-14 21:06:48 -08:00
9c4e11bc9c
Created an iterator for TextBuffers.
...
In the process, I've also changed all of the text interfaces to work in
term of unicode code-points instead of bytes. This ensures that editing
operations never corrupt utf8 data.
2014-12-14 16:43:17 -08:00