Commit Graph

  • d788f6376e next-cmd should only be called by get-document at the end of 20 status master w6vvn 2025-09-08 14:08:57 -07:00
  • 7114336863 correctly convert url to string when raising unsupported scheme error w6vvn 2025-09-08 13:42:29 -07:00
  • 6529f4118c fix bug related to line endings w6vvn 2025-09-08 13:41:02 -07:00
  • 0dc93d369e prepare for use over the radio w6vvn 2025-09-08 13:40:44 -07:00
  • 4323f759fa shebang w6vvn 2025-09-08 13:39:37 -07:00
  • 3240b30b6f change default line length to 40 columns w6vvn 2025-09-08 13:39:10 -07:00
  • bc5ddeb84c the exceptions were raising exceptions... w6vvn 2025-09-08 12:54:22 -07:00
  • b0af59a316 implement repl for new client structure w6vvn 2025-09-07 19:11:17 -07:00
  • 4ea51c0ed5 total overhaul of client implementation w6vvn 2025-09-07 18:48:54 -07:00
  • e6d28d6798 rework of gmi:match-link procedure w6vvn 2025-09-07 18:48:41 -07:00
  • 91c04ac3c6 adjust gmi parsing to work on a port. it doesn't actually do this internally, yet, but it will soon. w6vvn 2025-09-06 20:03:46 -07:00
  • b05dc90e70 rip a ton of stuff out. clear my head a bit. w6vvn 2025-09-06 19:29:13 -07:00
  • 759c66889c implement "url" command w6vvn 2025-09-06 17:51:14 -07:00
  • f5d70e7488 set the scene for mime handling. however, some changes to how internal state is handled will need to be made before adding plaintext rendering. w6vvn 2025-09-06 17:27:09 -07:00
  • 7e1e21439d refuse to visit non-gemini urls w6vvn 2025-09-06 17:17:02 -07:00
  • b4d226477e subject link rendering to paragraph wrapping w6vvn 2025-09-06 17:03:45 -07:00
  • 75187116eb include scheme in rendered links w6vvn 2025-09-06 16:58:02 -07:00
  • dbe6bbf43b add proper handling of exceptions raised by network procedures w6vvn 2025-09-06 16:41:42 -07:00
  • dbaa44190f implement some guards on the client. definitely need to relearn how to do syntax macros now... w6vvn 2025-09-06 12:29:36 -07:00
  • e081ec9edf implement an "up" command w6vvn 2025-09-06 11:39:14 -07:00
  • fcb7346209 missed client.rkt in last few commits, oops. w6vvn 2025-09-05 18:19:32 -07:00
  • 522d253c2a standardize on storing urls as url structs internally instead of as strings w6vvn 2025-09-05 18:18:14 -07:00
  • bd3f048595 encapsulate client state in an object w6vvn 2025-09-05 17:59:11 -07:00
  • 6789074d4f complete response handling w6vvn 2025-09-05 17:24:02 -07:00
  • 37e19cb279 relocate "get" logic. see message w6vvn 2025-09-05 15:11:28 -07:00
  • f5cfbe76ea improve nomenclature of gmi handling module somewhat? w6vvn 2025-09-05 14:12:06 -07:00
  • 87e273fe00 handle relative links and unspecified schemes w6vvn 2025-09-04 20:40:36 -07:00
  • f02b2c976e correctly handle bottoming out document buffer w6vvn 2025-09-04 19:11:47 -07:00
  • 566d2ff40e net/url includes http stuff. net/url-string is all we want or need w6vvn 2025-09-04 18:04:13 -07:00
  • b02f59c17f add a visit link command w6vvn 2025-09-04 15:22:36 -07:00
  • 38a420d649 add currently visited document, pre-rendering, to global state w6vvn 2025-09-04 15:21:31 -07:00
  • ea9a3b8fb7 add abbreviations for existing commands w6vvn 2025-09-04 15:13:25 -07:00
  • e3590502a9 defines a procedure used for looking up links by id in a document w6vvn 2025-09-04 15:09:50 -07:00
  • 724dc95086 start firmly defining module boundaries for gmi parser w6vvn 2025-09-04 14:45:55 -07:00
  • c786466d65 totally redo the line interface, go and pagination commands w6vvn 2025-09-03 21:16:32 -07:00
  • febdca7180 clean up formatting on gmi:render procedure and document w6vvn 2025-09-03 20:15:21 -07:00
  • 41e092975d cutting pasting and renaming as we start to define architectural boundaries w6vvn 2025-09-03 20:04:05 -07:00
  • c80d07befb implement a procedure to visit documents. NOT compliant, but enough to move on. w6vvn 2025-09-02 19:01:53 -07:00
  • a78e3c8b09 add special case for empty paragraphs w6vvn 2025-09-02 18:25:17 -07:00
  • dc2d9ed906 assign numbers to links in a document w6vvn 2025-09-02 17:17:07 -07:00
  • 6070cd33aa primitive gemtext rendering. not helpful for links yet, but permits further progress on development w6vvn 2025-09-02 08:21:58 -07:00
  • 01e79027b8 correct logical error in gemtext parsing w6vvn 2025-09-02 08:06:55 -07:00
  • 4a08e57d3f reverse document and preformatted structures at end of parsing of each so that the document structure is in logical order w6vvn 2025-09-01 20:41:22 -07:00
  • 75d833949c correct a logical error that would lead to merging unrelated preformatted blocks w6vvn 2025-09-01 20:34:59 -07:00
  • 1fab00d3a2 implement primitive and bare minimum gemtext parsing w6vvn 2025-09-01 20:07:44 -07:00
  • 5bffb92241 two minor changes to make prototyping in the racket REPL nicer w6vvn 2025-09-01 20:06:45 -07:00
  • 37871b6b3b implement a procedure for reflowing and displaying paragraphs w6vvn 2025-09-01 18:57:01 -07:00
  • e0260e4496 implement very primitive REPL w6vvn 2025-09-01 16:43:35 -07:00
  • 836477902c correct a minor issue with header parsing w6vvn 2025-09-01 16:43:05 -07:00
  • 71c840d687 initial commit. tentatively implements response header parsing. w6vvn 2025-09-01 14:50:34 -07:00
  • 0f24c2d0e8 add README w6vvn 2025-09-01 14:50:01 -07:00