pukram2html

Crates.iopukram2html
lib.rspukram2html
version0.1.1
sourcesrc
created_at2024-09-21 11:55:11.522584
updated_at2024-09-21 11:55:11.522584
descriptionA Rust library for converting Pukram-formatted text to HTML.
homepagehttps://gitlab.com/porky11/pukram2html
repositoryhttps://gitlab.com/porky11/pukram2html
max_upload_size
id1382153
size22,690
Fabio Krapohl (porky11)

documentation

README

pukram2html

Introduction

The pukram2html library is a Rust library that converts text written in the Pukram markup language to HTML. Pukram is a simple and intuitive markup language inspired by Markdown, designed for easy formatting of text content. The library is primarily targeted at developers building web servers who need to convert Pukram-formatted text into HTML for displaying on websites. Additionally, it can be used to convert Pukram text files to HTML, which can then be further converted to PDF using other tools.

Pukram Markup Language

Pukram is a lightweight markup language that supports basic formatting and structural elements. Here are the key features of Pukram:

Headers

Headers in Pukram are created by starting a line with one or more # characters. The number of # determines the header level (e.g., # for <h1>, ## for <h2>, etc.).

Lists

Lists in Pukram are created by starting a line with - for unordered lists or + for special list elements. Lists can be nested by increasing the indentation level.

Special List Element Behavior

List elements starting with + can have special behavior defined for them, such as inserting links, images, or audio files.

Formatting Markups

Pukram supports the following formatting markups:

  • Normal: Plain text without any formatting.
  • Bold: Text surrounded by * characters (e.g., *bold*).
  • Italic: Text surrounded by / characters (e.g., /italic/).
  • Monospace: Text surrounded by ` characters (e.g., `mono`).
  • Superscript: Text surrounded by ^ characters (e.g., ^superscript^).
  • Subscript: Text surrounded by | characters (e.g., |subscript|).
  • Small: Text surrounded by ^| and |^ delimiters (e.g., ^|small|^).
  • Underscore: Text surrounded by _ characters (e.g., _underscore_).
  • Strikethrough: Text surrounded by ~ characters (e.g., ~strikethrough~).

Note that formatting is reset at the end of each line, so you can apply formatting to an entire line without needing closing delimiters.

Library Structure

The pukram2html library consists of several components that work together to convert Pukram text to HTML:

  • TextInfo struct: Holds information about the converted text, such as the number of lines, words, and characters.
  • convert function: The main entry point for converting Pukram text to HTML.
  • convert_subheader function: Converts Pukram text to HTML with subheaders.
  • convert_extended function: Converts Pukram text to HTML with extended settings.
  • Settings struct: Holds configuration settings for the conversion process.
  • FormattingExtensions trait: Provides methods for handling formatting markups.

API Reference

The API reference documentation provides detailed information about each module, struct, trait, and function in the pukram2html library, including their parameters, return values, and behavior. Consult the API reference for a comprehensive understanding of the library's components and how to use them effectively.

Troubleshooting

If you encounter any issues while using the pukram2html library, refer to the troubleshooting section for common problems and their solutions. The FAQs section addresses frequently asked questions and provides additional guidance on using the library.

If you still have questions or need further assistance, don't hesitate to reach out to the library's maintainers or the Rust community for support.

Commit count: 45

cargo fmt