The phos Reference Manual
Table of Contents
The phos Reference Manual
This is the phos Reference Manual, version 0.0.1,
generated automatically by Declt version 3.0 "Montgomery Scott"
on Sun May 15 05:48:23 2022 GMT+0.
1 Introduction
phos
Phos (short for phosphophyllite) is both a Gemini client library for
Common Lisp and an experiment at making a GUI in lisp.
License
ISC
2 Systems
The main system appears first, followed by any subsystem dependency.
2.1 phos
- Author
Omar Polo <op@omarpolo.com>
- License
ISC
- Description
An experimental Gemini client library
- Version
0.0.1
- Dependencies
- quri
- cl-ppcre
- trivia
- usocket
- cl+ssl
- Source
phos.asd (file)
- Components
-
3 Files
Files are sorted by type and then listed depth-first from the systems
components trees.
3.1 Lisp
3.1.1 phos.asd
- Location
phos.asd
- Systems
phos (system)
3.1.2 phos/package.lisp
- Parent
phos (system)
- Location
package.lisp
- Packages
-
3.1.3 phos/phos.lisp
- Dependency
package.lisp (file)
- Parent
phos (system)
- Location
phos.lisp
3.1.4 phos/gemtext.lisp
- Dependency
phos.lisp (file)
- Parent
phos (system)
- Location
gemtext.lisp
- Exported Definitions
-
- Internal Definitions
-
3.1.5 phos/gemini.lisp
- Dependency
gemtext.lisp (file)
- Parent
phos (system)
- Location
gemini.lisp
- Exported Definitions
-
- Internal Definitions
-
4 Packages
Packages are listed by definition order.
4.1 phos
- Source
package.lisp (file)
- Use List
common-lisp
4.2 phos/gemini
Gemini (the protocol) implementation
- Source
package.lisp (file)
- Nickname
gemini
- Use List
- trivia.level2
- common-lisp
- Exported Definitions
-
- Internal Definitions
-
4.3 phos/gemtext
Gemtext (text/gemini) parsing
- Source
package.lisp (file)
- Nickname
gemtext
- Use List
- trivia.level2
- common-lisp
- Exported Definitions
-
- Internal Definitions
-
5 Definitions
Definitions are sorted by export status, category, package, and then by
lexicographic order.
5.1 Exported definitions
5.1.1 Special variables
- Special Variable: *code-to-keyword*
-
Maps status code to keyword name.
- Package
phos/gemini
- Source
gemini.lisp (file)
- Special Variable: *default-port*
-
The default port for gemini URL.
- Package
phos/gemini
- Source
gemini.lisp (file)
5.1.2 Macros
- Macro: with-gemini-request ((STATUS META STREAM) URL) &body BODY
-
Expose a stream (STREAM) with Gemini response contents, available in BODY.
STATUS and META are bound to the status code (as keyword from
‘*code-to-keyword*’) and meta info (as optional/nullable string.)
URL should be a well-formed string/‘quri:uri’ URL.
- Package
phos/gemini
- Source
gemini.lisp (file)
5.1.3 Functions
- Function: blockquote-p BLOCKQUOTE
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: element-p ELEMENT
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: item-p ITEM
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: link-p LINK
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: paragraph-p PARAGRAPH
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: parse IN
-
Parse gemtext from the stream IN.
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: parse-string STR
-
Parse the string STR as gemtext.
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: title-p TITLE
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: verbatim-p VERBATIM
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
5.1.4 Generic functions
- Generic Function: alt OBJECT
-
- Generic Function: (setf alt) NEW-VALUE OBJECT
-
- Package
phos/gemtext
- Methods
- Method: alt (VERBATIM verbatim)
-
- Method: (setf alt) NEW-VALUE (VERBATIM verbatim)
-
The alternative text for the verbatim block.
Is usually put at the same line as the opening backquotes.
Can be a programming language name or alternative text for, e.g., ASCII art.
- Source
gemtext.lisp (file)
- Generic Function: level OBJECT
-
- Generic Function: (setf level) NEW-VALUE OBJECT
-
- Package
phos/gemtext
- Methods
- Method: level (TITLE title)
-
- Method: (setf level) NEW-VALUE (TITLE title)
-
The nesting level of the title.
Synonymous to the HTML heading levels, i.e. level 1 is <h1> tag, level 2 is <h2> tag etc.
- Source
gemtext.lisp (file)
- Generic Function: line-eq A B
-
t if the lines A and B are equals.
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Method Combination
and (short method combination)
Options: :most-specific-first
- Methods
- Method: line-eq (A verbatim) (B verbatim) and
-
- Method: line-eq (A link) (B link) and
-
- Method: line-eq (A title) (B title) and
-
- Method: line-eq (A element) (B element) and
-
- Generic Function: request URL
-
Perform a request for the URL.
- Package
phos/gemini
- Source
gemini.lisp (file)
- Methods
- Method: request URL
-
- Generic Function: text OBJECT
-
- Generic Function: (setf text) NEW-VALUE OBJECT
-
- Package
phos/gemtext
- Methods
- Method: text (ELEMENT element)
-
automatically generated reader method
- Source
gemtext.lisp (file)
- Method: (setf text) NEW-VALUE (ELEMENT element)
-
automatically generated writer method
- Source
gemtext.lisp (file)
- Generic Function: unparse OBJ STREAM
-
Print a textual representation of OBJ onto STREAM.
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Methods
- Method: unparse (B blockquote) STREAM
-
- Method: unparse (V verbatim) STREAM
-
- Method: unparse (P paragraph) STREAM
-
- Method: unparse (ITEM item) STREAM
-
- Method: unparse (LINK link) STREAM
-
- Method: unparse (TITLE title) STREAM
-
- Method: unparse (L list) STREAM
-
- Generic Function: url OBJECT
-
- Generic Function: (setf url) NEW-VALUE OBJECT
-
- Package
phos/gemtext
- Methods
- Method: url (LINK link)
-
automatically generated reader method
- Source
gemtext.lisp (file)
- Method: (setf url) NEW-VALUE (LINK link)
-
automatically generated writer method
- Source
gemtext.lisp (file)
5.1.5 Classes
- Class: blockquote ()
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Direct superclasses
element (class)
- Direct methods
unparse (method)
- Class: element ()
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Direct superclasses
standard-object (class)
- Direct subclasses
-
- Direct methods
-
- Direct slots
- Slot: text
-
- Type
string
- Initargs
:text
- Initform
""
- Readers
text (generic function)
- Writers
(setf text) (generic function)
- Class: item ()
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Direct superclasses
element (class)
- Direct methods
unparse (method)
- Class: link ()
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Direct superclasses
element (class)
- Direct methods
-
- Direct slots
- Slot: url
-
- Type
quri.uri:uri
- Initargs
:url
- Readers
url (generic function)
- Writers
(setf url) (generic function)
- Class: paragraph ()
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Direct superclasses
element (class)
- Direct methods
unparse (method)
- Class: title ()
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Direct superclasses
element (class)
- Direct methods
-
- Direct slots
- Slot: level
-
The nesting level of the title.
Synonymous to the HTML heading levels, i.e. level 1 is <h1> tag, level 2 is <h2> tag etc.
- Type
integer
- Initargs
:level
- Readers
level (generic function)
- Writers
(setf level) (generic function)
- Class: verbatim ()
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Direct superclasses
element (class)
- Direct methods
-
- Direct slots
- Slot: alt
-
The alternative text for the verbatim block.
Is usually put at the same line as the opening backquotes.
Can be a programming language name or alternative text for, e.g., ASCII art.
- Type
(or null string)
- Initargs
:alt
- Readers
alt (generic function)
- Writers
(setf alt) (generic function)
5.2 Internal definitions
5.2.1 Macros
- Macro: markerp LINE
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
5.2.2 Functions
- Function: make-link URL &optional TEXT
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: parse-line S
-
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: parse-link S
-
Parse a line into link.
- Package
phos/gemtext
- Source
gemtext.lisp (file)
- Function: parse-response RES
-
- Package
phos/gemini
- Source
gemini.lisp (file)
- Function: parse-status S
-
- Package
phos/gemini
- Source
gemini.lisp (file)
- Function: read-all-bytes IN
-
- Package
phos/gemini
- Source
gemini.lisp (file)
- Function: read-all-string IN
-
- Package
phos/gemini
- Source
gemini.lisp (file)
- Function: read-until IN CHAR
-
- Package
phos/gemini
- Source
gemini.lisp (file)
5.2.3 Generic functions
- Generic Function: reason CONDITION
-
- Package
phos/gemini
- Methods
- Method: reason (CONDITION malformed-response)
-
- Source
gemini.lisp (file)
5.2.4 Conditions
- Condition: malformed-response ()
-
- Package
phos/gemini
- Source
gemini.lisp (file)
- Direct superclasses
error (condition)
- Direct methods
reason (method)
- Direct slots
- Slot: reason
-
- Initargs
:reason
- Readers
reason (generic function)
Appendix A Indexes
A.1 Concepts
| Index Entry | | Section |
|
F | | |
| File, Lisp, phos.asd: | | The phos․asd file |
| File, Lisp, phos/gemini.lisp: | | The phos/gemini․lisp file |
| File, Lisp, phos/gemtext.lisp: | | The phos/gemtext․lisp file |
| File, Lisp, phos/package.lisp: | | The phos/package․lisp file |
| File, Lisp, phos/phos.lisp: | | The phos/phos․lisp file |
|
L | | |
| Lisp File, phos.asd: | | The phos․asd file |
| Lisp File, phos/gemini.lisp: | | The phos/gemini․lisp file |
| Lisp File, phos/gemtext.lisp: | | The phos/gemtext․lisp file |
| Lisp File, phos/package.lisp: | | The phos/package․lisp file |
| Lisp File, phos/phos.lisp: | | The phos/phos․lisp file |
|
P | | |
| phos.asd: | | The phos․asd file |
| phos/gemini.lisp: | | The phos/gemini․lisp file |
| phos/gemtext.lisp: | | The phos/gemtext․lisp file |
| phos/package.lisp: | | The phos/package․lisp file |
| phos/phos.lisp: | | The phos/phos․lisp file |
|
A.2 Functions
| Index Entry | | Section |
|
( | | |
| (setf alt) : | | Exported generic functions |
| (setf alt) : | | Exported generic functions |
| (setf level) : | | Exported generic functions |
| (setf level) : | | Exported generic functions |
| (setf text) : | | Exported generic functions |
| (setf text) : | | Exported generic functions |
| (setf url) : | | Exported generic functions |
| (setf url) : | | Exported generic functions |
|
A | | |
| alt : | | Exported generic functions |
| alt : | | Exported generic functions |
|
B | | |
| blockquote-p : | | Exported functions |
|
E | | |
| element-p : | | Exported functions |
|
F | | |
| Function, blockquote-p : | | Exported functions |
| Function, element-p : | | Exported functions |
| Function, item-p : | | Exported functions |
| Function, link-p : | | Exported functions |
| Function, make-link : | | Internal functions |
| Function, paragraph-p : | | Exported functions |
| Function, parse : | | Exported functions |
| Function, parse-line : | | Internal functions |
| Function, parse-link : | | Internal functions |
| Function, parse-response : | | Internal functions |
| Function, parse-status : | | Internal functions |
| Function, parse-string : | | Exported functions |
| Function, read-all-bytes : | | Internal functions |
| Function, read-all-string : | | Internal functions |
| Function, read-until : | | Internal functions |
| Function, title-p : | | Exported functions |
| Function, verbatim-p : | | Exported functions |
|
G | | |
| Generic Function, (setf alt) : | | Exported generic functions |
| Generic Function, (setf level) : | | Exported generic functions |
| Generic Function, (setf text) : | | Exported generic functions |
| Generic Function, (setf url) : | | Exported generic functions |
| Generic Function, alt : | | Exported generic functions |
| Generic Function, level : | | Exported generic functions |
| Generic Function, line-eq : | | Exported generic functions |
| Generic Function, reason : | | Internal generic functions |
| Generic Function, request : | | Exported generic functions |
| Generic Function, text : | | Exported generic functions |
| Generic Function, unparse : | | Exported generic functions |
| Generic Function, url : | | Exported generic functions |
|
I | | |
| item-p : | | Exported functions |
|
L | | |
| level : | | Exported generic functions |
| level : | | Exported generic functions |
| line-eq : | | Exported generic functions |
| line-eq : | | Exported generic functions |
| line-eq : | | Exported generic functions |
| line-eq : | | Exported generic functions |
| line-eq : | | Exported generic functions |
| link-p : | | Exported functions |
|
M | | |
| Macro, markerp : | | Internal macros |
| Macro, with-gemini-request : | | Exported macros |
| make-link : | | Internal functions |
| markerp : | | Internal macros |
| Method, (setf alt) : | | Exported generic functions |
| Method, (setf level) : | | Exported generic functions |
| Method, (setf text) : | | Exported generic functions |
| Method, (setf url) : | | Exported generic functions |
| Method, alt : | | Exported generic functions |
| Method, level : | | Exported generic functions |
| Method, line-eq : | | Exported generic functions |
| Method, line-eq : | | Exported generic functions |
| Method, line-eq : | | Exported generic functions |
| Method, line-eq : | | Exported generic functions |
| Method, reason : | | Internal generic functions |
| Method, request : | | Exported generic functions |
| Method, text : | | Exported generic functions |
| Method, unparse : | | Exported generic functions |
| Method, unparse : | | Exported generic functions |
| Method, unparse : | | Exported generic functions |
| Method, unparse : | | Exported generic functions |
| Method, unparse : | | Exported generic functions |
| Method, unparse : | | Exported generic functions |
| Method, unparse : | | Exported generic functions |
| Method, url : | | Exported generic functions |
|
P | | |
| paragraph-p : | | Exported functions |
| parse : | | Exported functions |
| parse-line : | | Internal functions |
| parse-link : | | Internal functions |
| parse-response : | | Internal functions |
| parse-status : | | Internal functions |
| parse-string : | | Exported functions |
|
R | | |
| read-all-bytes : | | Internal functions |
| read-all-string : | | Internal functions |
| read-until : | | Internal functions |
| reason : | | Internal generic functions |
| reason : | | Internal generic functions |
| request : | | Exported generic functions |
| request : | | Exported generic functions |
|
T | | |
| text : | | Exported generic functions |
| text : | | Exported generic functions |
| title-p : | | Exported functions |
|
U | | |
| unparse : | | Exported generic functions |
| unparse : | | Exported generic functions |
| unparse : | | Exported generic functions |
| unparse : | | Exported generic functions |
| unparse : | | Exported generic functions |
| unparse : | | Exported generic functions |
| unparse : | | Exported generic functions |
| unparse : | | Exported generic functions |
| url : | | Exported generic functions |
| url : | | Exported generic functions |
|
V | | |
| verbatim-p : | | Exported functions |
|
W | | |
| with-gemini-request : | | Exported macros |
|
A.3 Variables
A.4 Data types
| Index Entry | | Section |
|
B | | |
| blockquote : | | Exported classes |
|
C | | |
| Class, blockquote : | | Exported classes |
| Class, element : | | Exported classes |
| Class, item : | | Exported classes |
| Class, link : | | Exported classes |
| Class, paragraph : | | Exported classes |
| Class, title : | | Exported classes |
| Class, verbatim : | | Exported classes |
| Condition, malformed-response : | | Internal conditions |
|
E | | |
| element : | | Exported classes |
|
I | | |
| item : | | Exported classes |
|
L | | |
| link : | | Exported classes |
|
M | | |
| malformed-response : | | Internal conditions |
|
P | | |
| Package, phos : | | The phos package |
| Package, phos/gemini : | | The phos/gemini package |
| Package, phos/gemtext : | | The phos/gemtext package |
| paragraph : | | Exported classes |
| phos : | | The phos system |
| phos : | | The phos package |
| phos/gemini : | | The phos/gemini package |
| phos/gemtext : | | The phos/gemtext package |
|
S | | |
| System, phos : | | The phos system |
|
T | | |
| title : | | Exported classes |
|
V | | |
| verbatim : | | Exported classes |
|