From 641fe408b1b9b45d1dc20905d8ec3c00cd4fc804 Mon Sep 17 00:00:00 2001 From: Thomas Voss Date: Wed, 12 Jan 2022 00:42:15 +0100 Subject: Add support for customizable tab widths --- mpaste.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'mpaste.go') diff --git a/mpaste.go b/mpaste.go index f105c2b..b5de948 100644 --- a/mpaste.go +++ b/mpaste.go @@ -37,11 +37,7 @@ var ( user_file string ) -var ( - style = styles.Get("pygments") - formatter = html.New(html.Standalone(true), html.WithClasses(true), - html.WithLineNumbers(true), html.LineNumbersInTable(true)) -) +var style = styles.Get("pygments") func usage() { fmt.Fprintf(os.Stderr, @@ -147,6 +143,11 @@ func syntax_highlighting(w http.ResponseWriter, r *http.Request) { WRITE_HEADER(http.StatusInternalServerError, "Failed to tokenize output") } + tw, err := strconv.Atoi(r.URL.Query().Get("tabs")) + if err != nil { + tw = 8 + } + formatter := html.New(html.Standalone(true), html.WithClasses(true), html.WithLineNumbers(true), html.LineNumbersInTable(true), html.TabWidth(tw)) if err := formatter.Format(w, style, iterator); err != nil { WRITE_HEADER(http.StatusInternalServerError, "Failed to format output") } -- cgit v1.2.3