aboutsummaryrefslogtreecommitdiff
path: root/editor.c
AgeCommit message (Collapse)AuthorFilesLines
2014-09-13Introduce and use EPOS instead of (size_t)-1Marc André Tanner1-1/+1
2014-09-12Add facility to display a message to the userMarc André Tanner1-1/+28
2014-09-12Fix loading of not yet existing filesMarc André Tanner1-1/+4
2014-09-12Rename text_filename to text_filename_getMarc André Tanner1-2/+2
2014-09-12Restore cursor position after an undo/redoMarc André Tanner1-1/+2
2014-09-11Add :edit commandMarc André Tanner1-0/+23
2014-09-11Add :qall commandMarc André Tanner1-4/+5
2014-09-10Fix :q commandMarc André Tanner1-6/+8
2014-09-10Simplify drawing of the window statusbarMarc André Tanner1-7/+3
2014-09-10Simplify cursor color managementMarc André Tanner1-1/+71
2014-09-09Remove trailing whitespaces (sed 's/[ \t]*$//')Marc André Tanner1-2/+2
2014-09-09Rename vis.[ch] to editor.[ch] and main.c to vis.cMarc André Tanner1-0/+483
2014-09-01Refactor frontend codeMarc André Tanner1-1169/+0
window.[ch] now contains a somewhat generic editor window which is then enhanced in vis.[ch] with a statusbar.
2014-08-31First part of a vi like frontendMarc André Tanner1-0/+15
Still very incomplete
2014-08-25Move motion related stuff into own fileMarc André Tanner1-178/+27
2014-08-24Add work in progress editor frontendMarc André Tanner1-0/+1305
2014-08-14Rename files editor.[ch] -> text.[ch]Marc André Tanner1-1094/+0
2014-08-14Change 'namespace' Editor -> TextMarc André Tanner1-91/+91
2014-08-13Add search functionalityMarc André Tanner1-0/+81
2014-08-13Add support for file marksMarc André Tanner1-0/+18
2014-08-07Add function to query line-numer <-> byte offset mappingMarc André Tanner1-3/+113
2014-08-02Further improve iterator APIMarc André Tanner1-22/+56
- iterator_get now returns the correct piece - add utf8 aware methods to move by a character in either direction
2014-08-01Improve iterator APIMarc André Tanner1-45/+86
2014-07-22Reindent commentsMarc André Tanner1-8/+12
2014-07-22Perform argument validationMarc André Tanner1-4/+5
2014-07-22Rename content => dataMarc André Tanner1-41/+41
2014-07-22API cleanupMarc André Tanner1-23/+27
Add editor_{insert,replace}_raw and const modifiers where appropriate.
2014-07-22Rename Editor::pos -> Editor::lenMarc André Tanner1-15/+15
2014-07-22Refactor editor_saveMarc André Tanner1-10/+7
2014-07-22Add prototypesMarc André Tanner1-1/+15
2014-07-22Remove redundant functionMarc André Tanner1-18/+5
2014-07-22Remove unnecessary special case for inserting into an empty documentMarc André Tanner1-21/+7
2014-07-22Fix bugs in caching layerMarc André Tanner1-8/+27
Thw lenght of the whole text (ed->size) also has to be updated. Also do not allocate changes if the operations are performed in the cache.
2014-07-22Add some more commentsMarc André Tanner1-2/+26
2014-07-21Introduce cache layerMarc André Tanner1-27/+108
If multiple consecutive modifications happen to lie within the same piece perform the operations "in place". In particular no new pieces will be allocated if the changes occur at the end of the most recently modified piece. In this case the piece is simply extended. However changes in the middle of a piece involve memove(3) calls which might hurt performance. Since no new pieces are created the changes can't be undone on an individual basis. The frontend should therefore call 'editor_snapshot' at appropriate times inorder to invalidate the cache.
2014-07-21Add iterator functions to walk through textMarc André Tanner1-0/+51
2014-07-21Add comments regarding deletionMarc André Tanner1-1/+16
2014-07-17Add some ascii art to illustrate insertionMarc André Tanner1-0/+28
2014-07-17Implement modification detectionMarc André Tanner1-3/+6
2014-07-17Remove trailing white spacesMarc André Tanner1-11/+11
2014-07-17Document data structuresMarc André Tanner1-28/+52
2014-07-17Throw away redo history once a new action is performedMarc André Tanner1-7/+27
Keep all pieces in a global double linked list such that individual pieces can be removed.
2014-07-17Simplify + add prototypesMarc André Tanner1-5/+17
2014-07-16Introduce buffer holding textMarc André Tanner1-29/+142
2014-07-16Implement replacement/overwriteMarc André Tanner1-0/+8
2014-07-16Implement deletionMarc André Tanner1-1/+69
2014-07-15Implement insertionMarc André Tanner1-38/+78
2014-07-15Inital importMarc André Tanner1-0/+311
Still far from useable