Move documentation to Suzunaan software library, stop assuming txt.conf doesn't exist in txt_init
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja> git-svn-id: file:///srv/svn/repo/kosuzu/trunk@76 eb64cd80-c68d-6f47-b6a3-0ada418499da
This commit is contained in:
@@ -1,5 +1,3 @@
|
|||||||

|
|
||||||
|
|
||||||
# Kosuzu
|
# Kosuzu
|
||||||
Text archival and exchange, named after [Kosuzu Motoori](https://en.touhouwiki.net/wiki/Kosuzu_Motoori) from [Forbidden Scrollery](https://en.touhouwiki.net/wiki/Forbidden_Scrollery).
|
Text archival and exchange, named after [Kosuzu Motoori](https://en.touhouwiki.net/wiki/Kosuzu_Motoori) from [Forbidden Scrollery](https://en.touhouwiki.net/wiki/Forbidden_Scrollery).
|
||||||
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
let init_repo =
|
let init_repo =
|
||||||
print_endline "No txt.conf found";
|
print_endline "Initializing repository...";
|
||||||
print_endline "It's required for the repository name and id.";
|
print_endline "It's required for the repository name and id.";
|
||||||
print_endline "Create one? (y/n)";
|
print_endline "Create one? (y/n)";
|
||||||
match input_line stdin with
|
match input_line stdin with
|
||||||
|
|||||||
@@ -1,11 +0,0 @@
|
|||||||
ID: 3sqd84
|
|
||||||
Date: 2022-11-06T13:01:19Z
|
|
||||||
Title: Exploring & pulling texts from Logarion repositories
|
|
||||||
Authors: orbifx
|
|
||||||
Topics: Logarion
|
|
||||||
|
|
||||||
Logarion repositories are collections of text files, accompanied by a special index file. These collections can exist on any server and accessed by any transport protocol. Logarion's client currently supports a plethora of protocols, HTTP, FTP, Gopher to name a few examples.
|
|
||||||
|
|
||||||
A remote repository can be registered and texts copied locally. To add a new remote run: `txt pull <url>`, where <url> is the address of the remote repository. The program will connect to the server, copy the `index.pck` file and use it to download each text file. It will not redownload previous texts, unless their Date or Date-Edited dates are newer than the previous ones.
|
|
||||||
|
|
||||||
The text files are by default downloaded to `.local/share/texts/peers/`. A new directory is created for each peer's unique id and the index & texts are stored in it. Running `txt pull` with no URL, will refetch indices from all previously pulled repositories, and new text files will be downloaded automatically.
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
ID: 9egbae
|
|
||||||
Date: 2023-06-17T23:27:44Z
|
|
||||||
Title: Building from source
|
|
||||||
Authors: Izuru Yakumo
|
|
||||||
Topics: Logarion
|
|
||||||
|
|
||||||
Requirements:
|
|
||||||
* git
|
|
||||||
* ocaml (>=4.13)
|
|
||||||
|
|
||||||
1. git clone https://git.chaotic.ninja/yakumo.izuru/logarion
|
|
||||||
2. cd logarion
|
|
||||||
4. make deps
|
|
||||||
5. make tgz
|
|
||||||
23
doc/Makefile
23
doc/Makefile
@@ -1,23 +0,0 @@
|
|||||||
all: clean build
|
|
||||||
|
|
||||||
build: index generate
|
|
||||||
|
|
||||||
clean:
|
|
||||||
find htm -type f -name "*.html" -print -delete
|
|
||||||
find htm -type f -name "*.htm" -print -delete
|
|
||||||
find . -type f -name "*.atom" -print -delete
|
|
||||||
copy-index: index
|
|
||||||
cp index.pck htm
|
|
||||||
generate: relink copy-index
|
|
||||||
txt convert --type=htm htm
|
|
||||||
index:
|
|
||||||
txt index .
|
|
||||||
link:
|
|
||||||
txt file *.txt htm
|
|
||||||
delink:
|
|
||||||
rm htm/*.txt
|
|
||||||
serve:
|
|
||||||
darkhttpd htm
|
|
||||||
upload:
|
|
||||||
rsync -acv --del htm/ webdev@chaotic.ninja:/var/www/logarion
|
|
||||||
relink: delink link
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
ID: d41e68
|
|
||||||
Date: 2023-10-18T18:45:33+00:00
|
|
||||||
Title: Header format
|
|
||||||
Authors: orbifx <fox@orbitalfox.eu>
|
|
||||||
Topics: Logarion
|
|
||||||
|
|
||||||
ID: Unique identifier
|
|
||||||
Date: ISO8601 date of creation
|
|
||||||
Topics: Comma seperated list of topic names & phrases
|
|
||||||
Title: A title for the text, ideally less than 70 characters
|
|
||||||
Authors: List of name with optional set of <address>
|
|
||||||
Date-edited: ISO8601, use only when text edited
|
|
||||||
References: list of text ID links
|
|
||||||
|
|
||||||
A blank line must follow the last header field.
|
|
||||||
|
|
||||||
|
|
||||||
Example
|
|
||||||
|
|
||||||
ID: 11bcd
|
|
||||||
Title: A Logarion exemplar header
|
|
||||||
Authors: John Doe <http://example.com> <jd@example.com>
|
|
||||||
Date: 1970-11-06T12:29:50-00:00
|
|
||||||
Topic: Logarion, examples
|
|
||||||
|
|
||||||
Hello world!
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
<hr>
|
|
||||||
<p>
|
|
||||||
<a href="git://git.chaotic.ninja/yakumo_izuru/logarion">Source code</a>
|
|
||||||
</p>
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
ID: h1a9tg
|
|
||||||
Date: 2022-11-20T13:28:57Z
|
|
||||||
Authors: orbifx <orbifx@orbifx.indy>
|
|
||||||
Title: Txt uniform resource names
|
|
||||||
Topics: Logarion
|
|
||||||
|
|
||||||
Logarion texts are transport agnostic. URIs should therefore avoid using URLs and use URNs instead. Some definitions of Uniform Resource:
|
|
||||||
- Locator (URL) <http://en.wikipedia.org/wiki/Url>
|
|
||||||
- Identifier (URI) <http://en.wikipedia.org/wiki/Uniform_Resource_Identifier>
|
|
||||||
- Name (URN) <http://en.wikipedia.org/wiki/Uniform_Resource_Name>
|
|
||||||
|
|
||||||
|
|
||||||
Links enclosed in angled brackets <> of the format:
|
|
||||||
|
|
||||||
urn:txtid:abcdef
|
|
||||||
|
|
||||||
where `abcdef` is the id of the text are understood by `txt` and handled accordingly. For example when converting to HTML or Gemini, the URNs are converted to relative URLs which browsers can understand.
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
<h1>Logarion</h1>
|
|
||||||
<p>discover, collect & exchange plain text files</p>
|
|
||||||
Binary file not shown.
@@ -1,8 +0,0 @@
|
|||||||
body{color:#111;background:#faeed6;margin:auto;padding:1ch;max-width:80ch}
|
|
||||||
@media(min-resolution:130dpi){body{font-size:1.5em}}
|
|
||||||
article>header{margin:auto;padding:1ch}
|
|
||||||
dt{float:left;text-align:right;padding-right:1ch;min-width:8ch;opacity:0.4;clear:left}
|
|
||||||
:target::before{content:"☞"}
|
|
||||||
body>h1{font-family:cursive}
|
|
||||||
h1,h2{color:#ff6600}
|
|
||||||
h3,h4{color:#333}
|
|
||||||
@@ -1,77 +0,0 @@
|
|||||||
ID: hvhhwf
|
|
||||||
Date: 2022-11-06T13:19:57Z
|
|
||||||
Title: Creating texts & publishing on the net
|
|
||||||
Authors: orbifx
|
|
||||||
Topics: Logarion
|
|
||||||
|
|
||||||
# New
|
|
||||||
|
|
||||||
To create new text files, use "txt new". For example:
|
|
||||||
txt new "Hello world"
|
|
||||||
It's important to enclose the title with quotation marks if it contains spaces. The command will return the filename of the new text. The filename starts with a part of the ID and the title of the text. Use the file name to open it with your text editor.
|
|
||||||
|
|
||||||
Alternatively add the -i flag to have the text editor launched to edit the newly created file:
|
|
||||||
txt new -i "Some title"
|
|
||||||
|
|
||||||
Text files will be stored in either:
|
|
||||||
1. The directory pointed at by txtdir if defined
|
|
||||||
2. $HOME/.local/share/texts, if directory exists
|
|
||||||
3. The current working directory, if all else fails
|
|
||||||
|
|
||||||
The simplest approach is to put all texts in the local-share directory and override that on occasion with
|
|
||||||
$txtdir. For example:
|
|
||||||
txtdir=. txt new "Hello world"
|
|
||||||
|
|
||||||
|
|
||||||
# Publish
|
|
||||||
|
|
||||||
Texts created with "new" are treated as personal until published. To publish a text, use `txt publish [id]` where [id] is the text of the text to publish. Publication requires a `txt.conf` file which must exist in either:
|
|
||||||
1. The current working directory
|
|
||||||
2. $HOME/.config/txt/txt.conf
|
|
||||||
|
|
||||||
With the above in place, `txt publish [id]` will add the text file with [id] in the publication-directory and reproduce the `index.pck` in that directory. If Pubdir is not defined in `txt.conf` then the environmental variable `txtpubdir` is used. If that is also undefined, the current working directory is used as a publication directory.
|
|
||||||
|
|
||||||
Logarion is protocol agnostic, so publish looks for the existence of directories to copy the files, ready for publication. At the time of writing the three directories are `public_html`, `public_gemini` and `public_gopher`. For each of these directories, `txt publish [id]` will copy the text file, revise the `index.pck` and also convert produce converted files, such .htm for public_html.
|
|
||||||
|
|
||||||
## txt.conf keys
|
|
||||||
|
|
||||||
Id:
|
|
||||||
A random, unique, alphanumeric string for distinguishing the repository (atleast 6 characters of Crockford's Base32 recommended)
|
|
||||||
|
|
||||||
Title:
|
|
||||||
a human-friendly title
|
|
||||||
|
|
||||||
Authors:
|
|
||||||
comma seperated list of names and, optionally, addresses
|
|
||||||
|
|
||||||
Topics:
|
|
||||||
topics the repository aims to cover
|
|
||||||
|
|
||||||
Locations:
|
|
||||||
list of URIs the repositories can be accessed
|
|
||||||
|
|
||||||
Peers:
|
|
||||||
list of peer URIs
|
|
||||||
|
|
||||||
Pubdir:
|
|
||||||
(optional) the directory that contains publication subdirectories
|
|
||||||
|
|
||||||
|
|
||||||
## HTML
|
|
||||||
|
|
||||||
There are some special settings for HTML publication:
|
|
||||||
|
|
||||||
HTM-style:
|
|
||||||
path to a CSS style. It will be inserted in every .htm file. To link to a single CSS consider using `@import`
|
|
||||||
|
|
||||||
HTM-header:
|
|
||||||
path to a file, inserted in every .htm file, right after the body tag
|
|
||||||
|
|
||||||
HTM-footer:
|
|
||||||
path to a file, inserted in every .htm file, right before the body tag
|
|
||||||
|
|
||||||
HTM-index:
|
|
||||||
if defined, determines the filename for the index files. Left undefined, defaults to `index.html`
|
|
||||||
|
|
||||||
HTM-feed:
|
|
||||||
if defined, this will overrite the feed URI used in HTML files. If left undefined the default `feed.atom` is used
|
|
||||||
BIN
doc/index.pck
BIN
doc/index.pck
Binary file not shown.
@@ -1,8 +0,0 @@
|
|||||||
body{color:#111;background:#faeed6;margin:auto;padding:1ch;max-width:80ch}
|
|
||||||
@media(min-resolution:130dpi){body{font-size:1.5em}}
|
|
||||||
article>header{margin:auto;padding:1ch}
|
|
||||||
dt{float:left;text-align:right;padding-right:1ch;min-width:8ch;opacity:0.4;clear:left}
|
|
||||||
:target::before{content:"☞"}
|
|
||||||
body>h1{font-family:cursive}
|
|
||||||
h1,h2{color:#ff6600}
|
|
||||||
h3,h4{color:#333}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
Id: 17f4e3
|
|
||||||
Title: Logarion
|
|
||||||
Authors: orbifx <fox@orbifalfox.eu>, Izuru Yakumo <yakumo.izuru@chaotic.ninja>
|
|
||||||
HTM-style: main.css
|
|
||||||
HTM-header: header.html
|
|
||||||
HTM-footer: footer.html
|
|
||||||
HTM-feed:
|
|
||||||
Topics: Logarion
|
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 123 KiB |
Reference in New Issue
Block a user