This was a very productive month, but sadly it didn't change the appearance of the editor. Mostly, I was working on the interactiveness of the application to allow editing to be done with a reasonable speed and get rid of a lot of slowness while opening a large document (my 47k novella). Start up speed went from just 800 s to 1.4 s and paging through the document no longer has a 4 s slowdown when the margins went from double-digits to triple and then quadrupedal (mainly by getting rid of the line numbers and rewriting the cache).
(Minor note, the reason I have "mmm" in the image is because I was getting hung up on the words of the novella and not the length and usage. So, I used Perl to convert all lowercase letters to "m" to focus.)
As you can tell from the change log below, I made a bunch of other changes to general usability.
I am sad to say that I did write a number of utilities to let me round-trip between Author Intrusion and my old Creole-based system. The biggest reason was editing. I don't have the ability to isolate a chapter while editing at the moment and it simply became "too big" to edit properly. I always intended to allow for focusing on parts of the project, but I need to spend a month working on the command system before I can really get into that.
Which means, this coming month will be working on pluggable commands. In specific, the "Control-Q" stuff of Visual Studio and providing more than a few hard-coded keyboard commands.
It still isn't really usable for most people, though.
- Removed the margins from the default editor because it was slowing down the system with large documents. +Changed
- Fixed a bug where the project line buffer was not disconnecting from events properly. +Changed
- Context menu doesn't have Copy, Cut, and Paste (and no automatic separator). +Changed
- Context menu automatically selects first item in menu. +Changed
- Changing text spans through block analysis will cause the line to update on screen. +New
- Properties for blocks and projects are persisted across savings. +New
- Reworking the block analyzers so they can be selectively re-run against the blocks in a collection. +New
- Block analysis is automatically performed when a document is loaded. +New
- Analysis state is serialized so blocks aren't reanalyzed on loading. +New
- Local Word Spelling:
- Updated the Local Words spelling plugin to update the entire document when words are added to either dictionaries. +New
- Text spans are not updated if the spelling errors haven't changed. +New
- MfGames.GtkExt 0.2.0
- MfGames.GtkExt.TextEditor 0.3.0