A smart, modular and readable configuration file format for complex multifile solutions.
Project description
Neat Object Notation 0.3.1
To load your .neat file into python, call neat_notation.load(filename:str)
. It will return a dictionary/list containing the content of your file.
A smart, modular and readable configuration file format for complex multifile solutions.
Comments
| Any lines which are to be commented out must start with a pipe character.
| The pipe must ALWAYS be at the beginning of the line for comments.
Global Scope
By default the global scope of a Neat config file is a dictionary, if you wish to specify otherwise you must put this somewhere in your .neat file on its own line
~list
Labeled Structures
[This is where you write the key associated with your dictionary]
"This is a key to an inline dictionary":{"This is the key to an inline list":()}
| This [-] token denotes the end of a dictionary.
[-]
<This is where you write the key associated with your list>
| The line below is the 0th index of this labeled list and is a list with a single item,
| That single item is an empty dictionary
({})
| This <-> token denotes the end of a list.
<->
Unlabeled Structures
If you wish to create an unlabeled structure vertically you can do so like this:
~list
{
"Some key":29873198273
}
Another example:
<section name>
{
[inner section name]
"some key": True
[-]
"another key": "abc"
}
<->
Modules
Importing only specific sections of a module:
| This file is called filename.neat
<section name>
{
[inner section name]
"some key": True
[-]
"another key": "abc"
}
<->
|this is where we are importing the module
mod filename : 'section name'.0.'inner section name'
| Alternate syntax
* foldername.filename : 'section name'.0.'inner section name'
Importing a whole module:
|this file is called module.neat
[section]
1:"abc"
[-]
| This is where we import module.neat
mod module
[another section]
"def":2
[-]
| Result:
| {"module":{"section":{"1":"abc"}},"another section":{"def":2}}
Alias
Aliases can be used to add items to sections outside of that section and its parent. The left hand side of the : is the alias name. The right hand side of the : is the alias path.
<section name>
{
[inner section name]
"some key": True
[-]
"another key": "abc"
}
<->
| this is the alias declaration
alias alias_name : [section name] 0 [inner section name]
| the name of the alias, in this case alias_name, marks the start of an alias section.
alias_name
"some other key": false
| The /-/ token marks the end of an alias section
/-/
| Result:
| {"section name":[{"inner section name":{"some key":True,"some other key":False},"another key":"abc"}]}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for neat_notation-0.4.12-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 430b54176244db11210d34ea09130f5cb48cc092e243a00df64c68dec7d76ab1 |
|
MD5 | 23a763bb2176d3b75e99470be97d831c |
|
BLAKE2b-256 | 048aaa15f0b499ff6c9378e165bdc05a64ebd537dab734b2ce99089c8be2c124 |
Hashes for neat_notation-0.4.12-pp38-pypy38_pp73-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2f83985c566dabe964f5095004a7c32e59430edb0ba129b69c7ab7e812532046 |
|
MD5 | ba24559a9f22c5f7b2daebbd43005493 |
|
BLAKE2b-256 | a45eb423024326a92508c7d1b044c7d5ebbf66d9d7104460c8620e3fbe735fbb |
Hashes for neat_notation-0.4.12-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7cd447bf3f2b17169ef1d0bc5daf33bf055f2f625a4422d0aa65e99758e33672 |
|
MD5 | 9d1c05a01b848b7436b09163cb33de36 |
|
BLAKE2b-256 | 273e8696743d6d1fe544ea1a1ca66263083c135a68329574fcb4c0d4dd2a3ccb |
Hashes for neat_notation-0.4.12-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b7efae8e83abbb9d0d84f646732df74c4d3400159e9b0188f1a1290fd5909fa2 |
|
MD5 | 979d111880e08af6f6a5229902125dd6 |
|
BLAKE2b-256 | cff87525ad5b2a8d77e0011df1826abe54076bf2fff739d1f6b1e25830001bf8 |
Hashes for neat_notation-0.4.12-cp311-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 72b3e57411a2c0f3136eb7a3a9e7b0c2d8b92393afae27674b5ad2a69a121e9a |
|
MD5 | 24302dbd38d79ce12bca2cfb1b64cad2 |
|
BLAKE2b-256 | 2fa25902acbc199066e63969c5c66b11a41d8f123bade943a9daf953bacd71d7 |
Hashes for neat_notation-0.4.12-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c2a0ea633bad7a9e4a7d9ee8402daa2f83689d316924c88cddbd5a4df533fb31 |
|
MD5 | 65629613d1d89f0f3f479254750700a5 |
|
BLAKE2b-256 | 65644681919c75006e803898733e872c23004fe22d504c2fbe724ae98ad91434 |
Hashes for neat_notation-0.4.12-cp311-cp311-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 84bc9f45de6fc5acc2c5013b7fff51605debae3c8f03a7ae966b99f8e4d28817 |
|
MD5 | 9da16a56bb248a29c82cadafc7b50d3a |
|
BLAKE2b-256 | c3cefda5a5a35e60b8501f2f44be75412d07dc53da98a028b9b78a666b3b5d3b |
Hashes for neat_notation-0.4.12-cp310-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8973c19377c15ea849cede1b00885d8d88be3043d538f4feb7409046a4f7cfd0 |
|
MD5 | 51f8974534967950030087aa0230d3a4 |
|
BLAKE2b-256 | a905cf58f983efd4555f7f3e6e4d3b55be5c0d1d6b6195f43851c6c16c4f4e70 |
Hashes for neat_notation-0.4.12-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6ad2998e95a27a9931178717ddd07022da191261bc70b9318d3d018acd434394 |
|
MD5 | 07c14ec47bfcfa3a1db542a577a2e987 |
|
BLAKE2b-256 | 7af7e88d281016a3ab8ea4f1adce0b77540a70cac013102c74bf973196bab2ae |
Hashes for neat_notation-0.4.12-cp310-cp310-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f601c34946f96ae4992c311b77b4f83b2cb56be33c8df90506f4b98e2952ee34 |
|
MD5 | d55abe0dd354b63def493ad04ee03470 |
|
BLAKE2b-256 | 8b12e1906bc546e5130497114b8f8b8c752a17a608a9a8b8000fe8479d559e81 |
Hashes for neat_notation-0.4.12-cp39-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 16758e399805936fa71d653ef7ef391165a9683f85fa6868f4cd51b719d6ff8a |
|
MD5 | 7600ee93bd7300e0e783f13eb04b6eeb |
|
BLAKE2b-256 | f6ad6d4f09c465198ce07afeb4e83d92b8d8db8a3c6ebd896edc9b6bc89509e5 |
Hashes for neat_notation-0.4.12-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e1d1d8a1052eb557cced92926bb8262dc543626041e53933332c8abe36e94111 |
|
MD5 | cef5221d41780a07a58496f6f2e289ae |
|
BLAKE2b-256 | ad062e0d55cd37f46678b500e973085f982dee754e36871afe648c8d4a8bf665 |
Hashes for neat_notation-0.4.12-cp39-cp39-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 394b9bd0bbc835bff0151aed3f511b19babd3a3e5ef03eb48ae68a6414078d38 |
|
MD5 | 6802203b7fc3b90c9b8cdca04bdcab8b |
|
BLAKE2b-256 | 57cf7518d27bcee782fe46233caa6766e2c4aa1668f41d65e79c848012a01668 |
Hashes for neat_notation-0.4.12-cp38-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8f96c3fd830b5862591e494a32313795cd5521f053638556835bb06b152cd227 |
|
MD5 | 94503bf84f97320d87ebad301da8a29d |
|
BLAKE2b-256 | 1a3d50393c200c87892a461bf2c12edd3b28bfb9e0372dea41fc8463ba592c1b |
Hashes for neat_notation-0.4.12-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a75d897ee017daacd7c778b0c202f8fb97f4ff430ab3e8676f159fe1897b8e42 |
|
MD5 | 473973eab7f249e06c5daa37cd44a81a |
|
BLAKE2b-256 | 8af21aba7d539fbf015ece2e552cf7b96f280d713977622243072722eba95a51 |
Hashes for neat_notation-0.4.12-cp38-cp38-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a217db17895c8a0e7070f075580e67d8e3078256375436ee33b008afa24a5cac |
|
MD5 | 94c86c759bb5945bde68a3865f9d5bc1 |
|
BLAKE2b-256 | 71a456761ec1b2c5e8c8f975d2d8e9fc919e4645a741edf7172c7e6e928e3fe0 |
Hashes for neat_notation-0.4.12-cp37-none-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c4daaa975748a56065378a9126cc1c91a80cd5783c0394426d36d386dca8619e |
|
MD5 | 70fe3200f71db73fc7180aa9b495ca78 |
|
BLAKE2b-256 | f8676feb16f798bc0825941a6e0e3abe08acd8ba4228b20db52a015356fb5317 |
Hashes for neat_notation-0.4.12-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d6b7fcdbbe3d223710a0e2f6fed3fdc1630623c00f2e7520d2f71a5442f2166a |
|
MD5 | aecb9a51d1b9f6e5ef34929bbf794df2 |
|
BLAKE2b-256 | 2e81ee93efe97137087abaa92dbedd8cab99a6d2f9ac09f16ef487eb33bab1d5 |
Hashes for neat_notation-0.4.12-cp37-cp37m-macosx_10_9_x86_64.macosx_11_0_arm64.macosx_10_9_universal2.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 36181beabad7c34a37e680b3f74c7df0a9c25b116d74f224a7d403e8e9c531e2 |
|
MD5 | bfd76e5d629ba9897f1618123d668ef2 |
|
BLAKE2b-256 | e079b5d6eae8bcff106d9a0f21f000a6a7ec08003d78f3a071acce5c2fea56f5 |