A modern plaintext data format, designed from the ground up for file-based content - simple, powerful and elegant:
author: Jane Doe
email: jane@eno-lang.org
-- my_content
Multi-line embedded content (e.g. markdown) here ...
-- my_content
states:
active = #fff
hover = #b6b6b6
# cities
Den Haag: 52.069961, 4.302315
Málaga: 36.721447, -4.421291
서울특별시: 37.566984, 126.977041
# cities expanded < cities
Springfield: 38.790312, -77.186418
Language Overview:
Usecases:
Visit eno-lang.org/language for more information.
Blazing fast, zero-dependency, fully documented eno parsers for JavaScript, PHP Python, Ruby (and soon also Rust) - featuring a powerful, expressive API:
# Ruby example (JavaScript / PHP / Python APIs are identical)
require 'enorb'
document = Eno.parse(
File.read('example.eno'),
locale: :es, # Fully localized error messages
reporter: Eno::Reporters::HTML # Multi-format error messages
)
document.string('author', required: true) # accessing = validating
#=> 'Jane Doe'
document.section('cities').lat_lng('Málaga') # high-level types
#=> { lat: 36.721447, lng: -4.421291 }
document.lookup(9, 12) # "What's at line 9, column 12?"
#=> {
# element: #<Eno::Field name="hover" value="#b6b6b6">,
# zone: :value
# }
Libraries Overview:
Usecases:
Visit eno-lang.org/libraries for more information.
Get development updates and info on new releases through the newsletter.