Skip to content

hungrybluedev/v_pdml

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

v_pdml

Code Quality Examples

About

v_pdml is a custom implementation of the PDML (Practical Data and Markup Language) documentation standard in the V programming language. Think of it as a LISP-like alternative to Markdown which is less verbose than XML and more readable than JSON.

Features

  • Support for parsing and generating PDML files.
  • Easy-to-use API for working with PDML data.
  • Flyweight recursive-descent parser implementation using io.Reader.

Most features of the PDML standard are supported. If there are any missing features that you would like to see, please open an issue and if possible, a pull request.

Getting Started

Prequisites

Ensure that you have the latest version of the V programming language installed on your system. Refer to the installation instructions here.

Installation

To install the v_pdml module, run the following command:

v install --git https://github.com/hungrybluedev/v_pdml

Usage

Import pdml if you installed from GitHub.

import pdml

fn main() {
	sample := '[doc
	[title Hello, World!]
	[author Subhomoy Haldar]
	[body
		[paragraph A sample paragraph for demonstration.]
		[paragraph Another paragraph.]
	]
]'
	doc := pdml.Document.parse_string(sample)!
	println(doc)
}

Check the examples directory for more examples.

Acknowledgements

I would like to thank Christian Neumanns (@pdml-lang) for creating the PDML and PML standard and for his help in the development of this module.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact and Support

If you like my work, and would want to discuss how I can help you, you can book a call with me.

Book a call

About

Custom implementation of the PDML standard in the V Programming language.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages