X-Git-Url: https://thelambdalab.xyz/gitweb/index.cgi?p=elpher.git;a=blobdiff_plain;f=NOTES.org;h=a0358ab1b45c6ff4d405ab2cd6b5719353cc688c;hp=8100c38cf8c82bde1715d3f270412df022d9973a;hb=e2d59f11515f2879bdc2675528b74fbb9b802bea;hpb=14f8d5cd99838da14b292fe4992ed0a4aa70af41 diff --git a/NOTES.org b/NOTES.org index 8100c38..a0358ab 100644 --- a/NOTES.org +++ b/NOTES.org @@ -2,6 +2,53 @@ * Planned improvements +** TODO Allow multiple elpher buffers + + Shouldn't be too hard, just need elpher-current-node to be +buffer-local and allow various buffer-switching procedures to +do something sensible. + +** TODO Remove "redraw" command +This is only necessary for returning from displaying the raw +server response. If I can provide a better way of doing that +then we can get rid of redraw entirely. + +** TODO Replace support for user-specified starting pages +This used to be available, but was removed during a refactor. + +** TODO Allow for grouping of bookmarks +To support this I'd like to add a bookmark page specific +set of keybindings. Currently all bindings available on +the bookmark page are available everywhere else. But +expanding and collapsing bookmark groups sounds like it +might need more specific bindings. + +** IN-PROGRESS Implement Gemini support [88%] + +Here is the checklist of features required before release: +- [X] basic genimi transactions +- [ ] gemini transactions requiring client certificates +- [X] gemini input handling +- [X] gemini map files (text/gemini) +- [X] Support for plain text responses (text/*) +- [X] Support for image responses (text/image) +- [X] Support for mime-specified character encodeing +- [X] Saving responses to disk +- [X] Viewing raw responses + +The last few will be made infinitely easier if we factor the +gopher "getter" code differently. + +* Current issues + +* Completed improvements + +** DONE Turn on lexical scoping + + A branch exists for this, but there are some compilation kinks +to iron out. + + ** DONE Implement support for telnet entries Similar to http entries, telnet entries will be handled by code @@ -13,7 +60,7 @@ functions. ** DONE Allow users to access selected and current node details. -** IN-PROGRESS Implement bookmark system +** DONE Implement bookmark system Currently the bookmark page replaces the current page, and it does so silently (i.e. it doesn't become part of the link hierarchy). @@ -33,18 +80,28 @@ functions. I always update node.parent unless parent is already an ancestor of node?) -** TODO Allow multiple elpher buffers + +** DONE Support character encoding diversity - Shouldn't be too hard, just need elpher-current-node to be -buffer-local and allow various buffer-switching procedures to -do something sensible. - -** TODO Turn on lexical scoping +** DONE Make URLs the basic address type. +Currently I waste a lot of effort converting between +URL and non-URL representations. This is unnecessary, and +actually makes lots of things uglier. - A branch exists for this, but there are some compilation kinks -to iron out. +For example, the bookmarks file contains addresses in Elpher's +internal representation, whereas I expect users would prefer +it contain URLs. -* Current issues +So the idea would be for (elpher-node-address node) to be +a either a string or a symbol, with symbols used for "special" +pages (bookmarks, start page, etc). The getter functions +`elpher-address-selector' etc will still do what they currently +do, but will process the URL to do it. + +This also means that non-gopher URLs will be explicitly represented +as such: no more abusing the "h" type for these. + +* Old issues ** DONE Org mode faces are not present in recent emacs versions Even 26.1 doesn't seem to have these. This means that, for many @@ -55,3 +112,8 @@ longer. Perhaps the font lock mode faces are the way to go after all. Update: changed all default faces to inherit from font-lock and basic faces. + +** DONE URL-centric addressing breaks bookmark file compatibility + +Need a way to allow people to rescue their old bookmark files +following this update.