summaryrefslogtreecommitdiff
path: root/editor.c
AgeCommit message (Collapse)Author
2014-09-13Introduce and use EPOS instead of (size_t)-1Marc André Tanner
2014-09-12Add facility to display a message to the userMarc André Tanner
2014-09-12Fix loading of not yet existing filesMarc André Tanner
2014-09-12Rename text_filename to text_filename_getMarc André Tanner
2014-09-12Restore cursor position after an undo/redoMarc André Tanner
2014-09-11Add :edit commandMarc André Tanner
2014-09-11Add :qall commandMarc André Tanner
2014-09-10Fix :q commandMarc André Tanner
2014-09-10Simplify drawing of the window statusbarMarc André Tanner
2014-09-10Simplify cursor color managementMarc André Tanner
2014-09-09Remove trailing whitespaces (sed 's/[ \t]*$//')Marc André Tanner
2014-09-09Rename vis.[ch] to editor.[ch] and main.c to vis.cMarc André Tanner
2014-09-01Refactor frontend codeMarc André Tanner
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é Tanner
Still very incomplete
2014-08-25Move motion related stuff into own fileMarc André Tanner
2014-08-24Add work in progress editor frontendMarc André Tanner
2014-08-14Rename files editor.[ch] -> text.[ch]Marc André Tanner
2014-08-14Change 'namespace' Editor -> TextMarc André Tanner
2014-08-13Add search functionalityMarc André Tanner
2014-08-13Add support for file marksMarc André Tanner
2014-08-07Add function to query line-numer <-> byte offset mappingMarc André Tanner
2014-08-02Further improve iterator APIMarc André Tanner
- 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é Tanner
2014-07-22Reindent commentsMarc André Tanner
2014-07-22Perform argument validationMarc André Tanner
2014-07-22Rename content => dataMarc André Tanner
2014-07-22API cleanupMarc André Tanner
Add editor_{insert,replace}_raw and const modifiers where appropriate.
2014-07-22Rename Editor::pos -> Editor::lenMarc André Tanner
2014-07-22Refactor editor_saveMarc André Tanner
2014-07-22Add prototypesMarc André Tanner
2014-07-22Remove redundant functionMarc André Tanner
2014-07-22Remove unnecessary special case for inserting into an empty documentMarc André Tanner
2014-07-22Fix bugs in caching layerMarc André Tanner
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é Tanner
2014-07-21Introduce cache layerMarc André Tanner
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é Tanner
2014-07-21Add comments regarding deletionMarc André Tanner
2014-07-17Add some ascii art to illustrate insertionMarc André Tanner
2014-07-17Implement modification detectionMarc André Tanner
2014-07-17Remove trailing white spacesMarc André Tanner
2014-07-17Document data structuresMarc André Tanner
2014-07-17Throw away redo history once a new action is performedMarc André Tanner
Keep all pieces in a global double linked list such that individual pieces can be removed.
2014-07-17Simplify + add prototypesMarc André Tanner
2014-07-16Introduce buffer holding textMarc André Tanner
2014-07-16Implement replacement/overwriteMarc André Tanner
2014-07-16Implement deletionMarc André Tanner
2014-07-15Implement insertionMarc André Tanner
2014-07-15Inital importMarc André Tanner
Still far from useable