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.
w6vvn2025-09-06 17:27:09 -07:00
7e1e21439d
refuse to visit non-gemini urls
w6vvn2025-09-06 17:17:02 -07:00
b4d226477e
subject link rendering to paragraph wrapping
w6vvn2025-09-06 17:03:45 -07:00
75187116eb
include scheme in rendered links
w6vvn2025-09-06 16:58:02 -07:00
dbe6bbf43b
add proper handling of exceptions raised by network procedures
w6vvn2025-09-06 16:41:42 -07:00
dbaa44190f
implement some guards on the client. definitely need to relearn how to do syntax macros now...
w6vvn2025-09-06 12:29:36 -07:00
e081ec9edf
implement an "up" command
w6vvn2025-09-06 11:39:14 -07:00
fcb7346209
missed client.rkt in last few commits, oops.
w6vvn2025-09-05 18:19:32 -07:00
522d253c2a
standardize on storing urls as url structs internally instead of as strings
w6vvn2025-09-05 18:18:14 -07:00
bd3f048595
encapsulate client state in an object
w6vvn2025-09-05 17:59:11 -07:00
c786466d65
totally redo the line interface, go and pagination commands
w6vvn2025-09-03 21:16:32 -07:00
febdca7180
clean up formatting on gmi:render procedure and document
w6vvn2025-09-03 20:15:21 -07:00
41e092975d
cutting pasting and renaming as we start to define architectural boundaries
w6vvn2025-09-03 20:04:05 -07:00
c80d07befb
implement a procedure to visit documents. NOT compliant, but enough to move on.
w6vvn2025-09-02 19:01:53 -07:00
a78e3c8b09
add special case for empty paragraphs
w6vvn2025-09-02 18:25:17 -07:00
dc2d9ed906
assign numbers to links in a document
w6vvn2025-09-02 17:17:07 -07:00
6070cd33aa
primitive gemtext rendering. not helpful for links yet, but permits further progress on development
w6vvn2025-09-02 08:21:58 -07:00
01e79027b8
correct logical error in gemtext parsing
w6vvn2025-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
w6vvn2025-09-01 20:41:22 -07:00
75d833949c
correct a logical error that would lead to merging unrelated preformatted blocks
w6vvn2025-09-01 20:34:59 -07:00
1fab00d3a2
implement primitive and bare minimum gemtext parsing
w6vvn2025-09-01 20:07:44 -07:00
5bffb92241
two minor changes to make prototyping in the racket REPL nicer
w6vvn2025-09-01 20:06:45 -07:00
37871b6b3b
implement a procedure for reflowing and displaying paragraphs
w6vvn2025-09-01 18:57:01 -07:00
e0260e4496
implement very primitive REPL
w6vvn2025-09-01 16:43:35 -07:00
836477902c
correct a minor issue with header parsing
w6vvn2025-09-01 16:43:05 -07:00