gemmula: a tiny gemtext parser

[ gemini, lgpl, library, text ] [ Propose Tags ] [ Report a vulnerability ]

gemmula is a tiny gemtext (unofficially text/gemini) parser from and back into Text, attempting to be mostly compliant with the Gemini hypertext format specification while being somewhat practical.


[Skip to Readme]

Modules

[Index] [Quick Jump]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 1.0.0, 1.0.1, 1.1.0, 1.1.1, 1.2.0 (info)
Change log ChangeLog.md
Dependencies base (>=4.16 && <5), text (>=2.0 && <2.2) [details]
Tested with ghc ==9.6.5, ghc ==9.8.2
License LGPL-3.0-or-later
Copyright (c) Sena 2024
Author Sena <contact@sena.pink>
Maintainer contact@sena.pink
Category Text, Gemini
Home page https://codeberg.org/sena/gemmula
Bug tracker https://codeberg.org/sena/gemmula/issues
Source repo head: git clone https://codeberg.org/sena/gemmula
Uploaded by jan_sena at 2024-08-05T19:47:07Z
Distributions NixOS:1.1.1
Reverse Dependencies 1 direct, 0 indirect [details]
Downloads 203 total (18 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2024-08-05 [all 1 reports]

Readme for gemmula-1.2.0

[back to package description]

gemmula - a tiny gemtext parser for Haskell

The documentation is available at Hackage.

Example

>>> let document = Text.Gemini.decode <$> Data.Text.IO.readFile "examples/paradox.gmi"
>>> document

[ GemHeading 1 "gemmula"
, GemList [ "hello,"
          , "world!"
          ]
, GemText ""
, GemQuote "made with"
, GemPre [ "<3"
         ]
         (Just "ascii art of a heart")
, GemLink "https://www.haskell.org" (Just "and Haskell!")
]

>>> Text.Gemini.encode <$> document >>= Data.Text.IO.writeFile "examples/paradox.gmi"

See also