From 7da1555c847edfc5a1d75b1ed26362901d3f9609 Mon Sep 17 00:00:00 2001 From: Tulir Asokan Date: Sat, 21 Apr 2018 20:19:43 +0300 Subject: Improve Markdown rendering * Remove paragraphs from output HTML * Remove mention link wrapper from text (leaving only mention name) --- lib/bfhtml/doc.go | 2 ++ lib/bfhtml/html.go | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 lib/bfhtml/doc.go create mode 100644 lib/bfhtml/html.go (limited to 'lib') diff --git a/lib/bfhtml/doc.go b/lib/bfhtml/doc.go new file mode 100644 index 0000000..4881087 --- /dev/null +++ b/lib/bfhtml/doc.go @@ -0,0 +1,2 @@ +// Package bfhtml contains an extension to the Blackfriday HTML renderer to disable paragraph tags. +package bfhtml diff --git a/lib/bfhtml/html.go b/lib/bfhtml/html.go new file mode 100644 index 0000000..14076ee --- /dev/null +++ b/lib/bfhtml/html.go @@ -0,0 +1,34 @@ +// gomuks - A terminal Matrix client written in Go. +// Copyright (C) 2018 Tulir Asokan +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see . + +package bfhtml + +import ( + "io" + + bf "gopkg.in/russross/blackfriday.v2" +) + +type HTMLRenderer struct { + *bf.HTMLRenderer +} + +func (r *HTMLRenderer) RenderNode(w io.Writer, node *bf.Node, entering bool) bf.WalkStatus { + if node.Type == bf.Paragraph { + return bf.GoToNext + } + return r.HTMLRenderer.RenderNode(w, node, entering) +} -- cgit v1.2.3