about summary refs log tree commit diff stats
path: root/internal/nix
diff options
context:
space:
mode:
authorAlan Pearce2025-03-18 22:40:46 +0100
committerAlan Pearce2025-03-19 17:33:58 +0100
commit896d844cac976afd0ee8aa73dd2fb28e15e7ac79 (patch)
treecc8d288d0039cb3d2084f43cafe8d4e0aea50e8b /internal/nix
parent1183108baa44fde88944e9207fb7763668c2b448 (diff)
downloadsearchix-896d844cac976afd0ee8aa73dd2fb28e15e7ac79.tar.lz
searchix-896d844cac976afd0ee8aa73dd2fb28e15e7ac79.tar.zst
searchix-896d844cac976afd0ee8aa73dd2fb28e15e7ac79.zip
feat: Convert templ components to gomponents
Diffstat (limited to 'internal/nix')
-rw-r--r--internal/nix/option.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/internal/nix/option.go b/internal/nix/option.go
index c1cc4c3..96c4546 100644
--- a/internal/nix/option.go
+++ b/internal/nix/option.go
@@ -1,5 +1,13 @@
 package nix
 
+import (
+	"io"
+
+	"github.com/yuin/goldmark"
+	"github.com/yuin/goldmark/extension"
+	"gitlab.com/tozd/go/errors"
+)
+
 type Markdown string
 
 type Value struct {
@@ -35,3 +43,12 @@ func (p Option) GetName() string {
 func (p Option) GetSource() string {
 	return p.Source
 }
+
+var md = goldmark.New(
+	goldmark.WithExtensions(extension.NewLinkify()),
+)
+
+// implements gomponent.Node
+func (text Markdown) Render(w io.Writer) error {
+	return errors.WithStack(md.Convert([]byte(text), w))
+}