本站源代码
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
Mura Li d77176912b Use Go1.11 module (#5743) pirms 5 gadiem
..
.gitignore Use Go1.11 module (#5743) pirms 5 gadiem
.travis.yml Use Go1.11 module (#5743) pirms 5 gadiem
LICENSE Add init support of orgmode document type on file view and readme (#2525) pirms 7 gadiem
README.org Use Go1.11 module (#5743) pirms 5 gadiem
goorgeous.go Add init support of orgmode document type on file view and readme (#2525) pirms 7 gadiem
gopher.gif Use Go1.11 module (#5743) pirms 5 gadiem
gopher_small.gif Use Go1.11 module (#5743) pirms 5 gadiem
header.go Add init support of orgmode document type on file view and readme (#2525) pirms 7 gadiem

README.org

https://travis-ci.org/chaseadamsio/goorgeous.svg?branch=master https://coveralls.io/repos/github/chaseadamsio/goorgeous/badge.svg?branch=master

goorgeous is a Go Org to HTML Parser.

gopher_small.gif

Pronounced: Go? Org? Yes!

"Org mode is for keeping notes, maintaining TODO lists, planning projects, and authoring documents with a fast and effective plain-text system."

- orgmode

The purpose of this package is to come as close as possible as parsing an *.org document into HTML, the same way one might publish with org-publish-html from Emacs.

Installation


  go get -u github.com/chaseadamsio/goorgeous

Usage

Org Headers

To retrieve the headers from a []byte, call OrgHeaders and it will return a =map[string]interface{}=:


  input := "#+title: goorgeous\n* Some Headline\n"
  out := goorgeous.OrgHeaders(input) 

  map[string]interface{}{ 
          "title": "goorgeous"
  }

Org Content

After importing github.com/chaseadamsio/goorgeous, you can call Org with a []byte and it will return an html version of the content as a []byte


  input := "#+TITLE: goorgeous\n* Some Headline\n"
  out := goorgeous.Org(input) 

out will be:


  <h1>Some Headline</h1>/n

Why?

First off, I've become an unapologetic user of Emacs & ever since finding org-mode I use it for anything having to do with writing content, organizing my life and keeping documentation of my days/weeks/months.

Although I like Emacs & emacs-lisp, I publish all of my html sites with Hugo Static Site Generator and wanted to be able to write my content in org-mode in Emacs rather than markdown.

Acknowledgements

Hugo's implementation of templating and speed are unmatched, so the only way I knew for sure I could continue to use Hugo and write in org-mode seamlessly was to write a golang parser for org content and submit a PR for Hugo to use it. I leaned heavily on russross' blackfriday markdown renderer as both an example of how to write a parser (with some updates to leverage the go we know today) and reusing the blackfriday HTML Renderer so I didn't have to write my own!

上海开阖软件有限公司 沪ICP备12045867号-1