dalet-rs/examples/daleth.dlth

139 lines
3 KiB
Text
Raw Normal View History

2024-08-08 12:25:12 +03:00
# multilines
#
# {text} - input is trimmed with indent
#
# {~n text} - n is number of minimum spaces to add after trimming with indent
# for each line
#
# {#text} - input not modified
#
2024-08-08 12:25:12 +03:00
#
# tag syntax
#
# tag: text body
# tag { multiline text body }
# body text always trimmed
#
# tag [ multiple tags body ]
#
# Arguments
# tag argument
#
# Tags without body and argument also supported
#
#
# custom no tag syntax
#
# {-text} - paragraph, text indent is trimmed
# [[tags]] - element tag with body of multiple tags
# text - element tag with text body
2024-08-08 12:25:12 +03:00
meta "title": Daleth syntax concept
meta "description": This document describes Daleth syntax and some tags
h1: TxtDot revolution
p: TxtDot is a cool project
# If no tag is specified, but "- text" present, then the 'el' tag is placed
- This is element
2024-08-08 12:25:12 +03:00
br
# if no tag is specified but a '{- text}' is present, then the 'p' tag is placed
# '\n' is replaced with ' ' in this format.
{-
2024-08-18 12:43:58 +03:00
Check Dalet too,
this is one paragraph
2024-08-08 12:25:12 +03:00
}
{-
2024-08-11 16:32:23 +03:00
This is another paragraph ({- text\})
}
2024-08-08 12:25:12 +03:00
row "center" [
2024-08-11 16:32:23 +03:00
link "https://github.com/txtdot/txtdot": Homepage
btn "https://example.com/donate" [
# tag without body
img "https://example.com/donate.png"
- Donate
2024-08-11 16:32:23 +03:00
]
2024-08-08 12:25:12 +03:00
]
# [] for multiple tags
row [
2024-08-11 16:32:23 +03:00
# if no tag is specified but a '[[]]' is present, then the 'el' tag
# with multiple tags body placed
2024-08-18 12:43:58 +03:00
[[
2024-08-11 16:32:23 +03:00
h2: Features
ul [
- Server-side page simplification
- Media proxy
- Image compression with Sharp
- Rendering client-side apps `Vanilla, React, Vue, etc` with webder
- Search with SearXNG
- Handy API endpoints
- No client JavaScript
- Some kind of Material Design 3
- Customization with plugins, see @txtdot/sdk and @txtdot/plugins
2024-08-11 16:32:23 +03:00
]
]]
2024-08-08 12:25:12 +03:00
[[
2024-08-11 16:32:23 +03:00
h2: Running
[[
h3: Dev
# {} for multiline strings, indent is automatically trimmed
2024-08-14 17:17:31 +03:00
code "bash" {
2024-08-11 16:32:23 +03:00
npm install
npm run dev
}
2024-08-18 12:43:58 +03:00
code "markdown" {~4
this is codeblock
}
# {# Text} Text after "{#" not modified
code "markdown" {# this is codeblock}
2024-08-11 16:32:23 +03:00
]]
[[
h3: Production
2024-08-14 17:17:31 +03:00
code "bash" {
2024-08-11 16:32:23 +03:00
npm install
npm run build
npm run start
}
]]
[[
h3: Docker
2024-08-14 17:17:31 +03:00
code "bash": docker compose up -d
2024-08-11 16:32:23 +03:00
]]
2024-08-08 12:25:12 +03:00
]]
2024-08-08 12:25:12 +03:00
]
2024-08-12 20:21:19 +03:00
# Table has custom format
2024-08-08 12:25:12 +03:00
# +| cells | - primary column
# | cells | - secondary column
# | Element | Description | - converts to
2024-08-12 20:30:46 +03:00
# trow [
2024-08-08 12:25:12 +03:00
# Element
# Description
# ]
2024-08-12 20:21:19 +03:00
{> table
2024-08-18 12:43:58 +03:00
[[ Tag | Description | id ]]
[ h | Heading | 0 ]
[ p | Paragraph | 1 ]
[ img | Image | 2 ]
[ link | Link | 3 ]
[ btn | Button | 4 ]
[ ul | Unordered list | 5 ]
[ br | Line break | 6 ]
[[ quantity | 7 | 7 ]]
2024-08-12 20:30:46 +03:00
}