2.0.4 • Published 22 days ago
bitran v2.0.4
Bitran
Bitran (Block & inliner translator) is a highly customizable parser for converting structured text into programming-friendly user defined objects: blocks and inliners. These blocks and inliners can later be easily analyzed or used in rendering (e.x. in HTML).
Key features:
- User defined blocks and inliners
- YAML structured blocks structure support
- Infinite nesting of blocks and inliners
- Flexible and useful block meta syntax
- Built-in ID assignment and error handling
- Custom parse workers support
Zero config example
Out of the box Bitran with zero config is capable of converting this text:
Just a paragraph.
{ #myId .class1 +foo -bar }
Paragraph with inline meta.
{
#id2
refs:
- a
- b
- false
}
Paragraph with combination of YAML-structured block and inline meta.
{
"products": {
"auto:text:1": {
"id": "auto:text:1",
"name": "text",
"data": "Just a paragraph.",
"type": "inliner"
},
"auto:paragraph:1": {
"id": "auto:paragraph:1",
"name": "paragraph",
"data": {
"__pids": [
"auto:text:1"
]
},
"type": "block",
"meta": {}
},
"auto:text:2": {
"id": "auto:text:2",
"name": "text",
"data": "Paragraph with inline meta.",
"type": "inliner"
},
"paragraph:myId": {
"id": "paragraph:myId",
"name": "paragraph",
"data": {
"__pids": [
"auto:text:2"
]
},
"type": "block",
"meta": {
"id": "myId",
"classes": [
"class1"
],
"foo": true,
"bar": false
}
},
"auto:text:3": {
"id": "auto:text:3",
"name": "text",
"data": "Paragraph with combination of YAML-structured block and inline meta.",
"type": "inliner"
},
"paragraph:id2": {
"id": "paragraph:id2",
"name": "paragraph",
"data": {
"__pids": [
"auto:text:3"
]
},
"type": "block",
"meta": {
"id": "id2",
"refs": [
"a",
"b",
false
]
}
}
},
"rootBlocks": {
"__pids": [
"auto:paragraph:1",
"paragraph:myId",
"paragraph:id2"
]
},
"pwResults": {
"id": [
"paragraph:myId",
"paragraph:id2"
],
"error": []
}
}
In-depth examples
Detailed examples with configs, input texts and parse results can be found inside examples
folder:
2.0.4
22 days ago
2.0.3
22 days ago
2.0.2
22 days ago
2.0.1
22 days ago
2.0.0
22 days ago
1.0.1
2 months ago
1.0.0
2 months ago
0.0.11
5 months ago
0.0.10
8 months ago
0.0.9
8 months ago
0.0.8
8 months ago
0.0.7
8 months ago
0.0.6
8 months ago
0.0.5
9 months ago
0.0.4
9 months ago
0.0.3
9 months ago
0.0.2
10 months ago
0.0.1
10 months ago