aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShulhan <m.shulhan@gmail.com>2026-02-04 06:17:55 +0700
committerShulhan <m.shulhan@gmail.com>2026-04-09 22:18:08 +0700
commitda9dcca05cea2ab6349e4d2451213fa676fcd3ab (patch)
treefe3e44dca0fa4a3e2087f0e8461948af9f6aa18b
parentd0c5be4444ee2c1b8371456adb2f65bf6ef62234 (diff)
downloadgo-x-proposal-da9dcca05cea2ab6349e4d2451213fa676fcd3ab.tar.xz
all: update the command and style to follow latest ciigo
-rw-r--r--Makefile15
-rw-r--r--cmd/www-go-proposal/main.go44
-rw-r--r--go.mod18
-rw-r--r--go.sum36
-rw-r--r--html.tmpl113
5 files changed, 122 insertions, 104 deletions
diff --git a/Makefile b/Makefile
index 0223d8d..a9749b5 100644
--- a/Makefile
+++ b/Makefile
@@ -1,13 +1,18 @@
+.PHONY: all
+all: build
+
+.PHONY: build
+build: CGO_ENABLED=0
+build: embed
+ go build ./cmd/www-go-proposal
+
.PHONY: embed
embed:
- ciigo -exclude "(cmd|go.mod|go.sum)" \
- -template ./html.tmpl \
- -out cmd/www-go-proposal/memfs.go \
- embed .
+ go run ./cmd/www-go-proposal embed
.PHONY: dev
dev:
- DEBUG=1 go run ./cmd/www-go-proposal
+ go run ./cmd/www-go-proposal -dev
.PHONY: deploy
deploy: embed
diff --git a/cmd/www-go-proposal/main.go b/cmd/www-go-proposal/main.go
index d319a16..9456949 100644
--- a/cmd/www-go-proposal/main.go
+++ b/cmd/www-go-proposal/main.go
@@ -7,31 +7,47 @@ package main
import (
"flag"
"log"
- "os"
+ "strings"
"git.sr.ht/~shulhan/ciigo"
- "github.com/shuLhan/share/lib/memfs"
+ "git.sr.ht/~shulhan/pakakeh.go/lib/memfs"
)
var memFS *memfs.MemFS
func main() {
- var port string
+ var convertOpts = ciigo.ConvertOptions{
+ Root: `.`,
+ Exclude: []string{`(cmd|.git|go.mod|go.sum)`},
+ HTMLTemplate: `html.tmpl`,
+ }
+ var embedOpts = ciigo.EmbedOptions{
+ ConvertOptions: convertOpts,
+ EmbedOptions: memfs.EmbedOptions{
+ PackageName: `main`,
+ GoFileName: `cmd/www-go-proposal/memfs.go`,
+ },
+ }
+ var serveOpts = ciigo.ServeOptions{
+ ConvertOptions: convertOpts,
+ Mfs: memFS,
+ }
- flag.StringVar(&port, `port`, `5001`, `HTTP port server`)
+ flag.BoolVar(&serveOpts.IsDevelopment, `dev`, false,
+ `Turn on development mode.`)
+ flag.StringVar(&serveOpts.Address, `http`, `127.0.0.1:10202`,
+ `Set HTTP listen address`)
flag.Parse()
- var serveOpts = &ciigo.ServeOptions{
- ConvertOptions: ciigo.ConvertOptions{
- Root: `.`,
- Exclude: `(cmd|go.mod|go.sum)`,
- HtmlTemplate: `html.tmpl`,
- },
- Mfs: memFS,
- Address: `0.0.0.0:` + port,
- IsDevelopment: len(os.Getenv(`DEBUG`)) > 0,
+ var cmd = strings.ToLower(flag.Arg(0))
+
+ var err error
+ switch cmd {
+ case `embed`:
+ err = ciigo.GoEmbed(embedOpts)
+ default:
+ err = ciigo.Serve(serveOpts)
}
- var err = ciigo.Serve(serveOpts)
if err != nil {
log.Fatal(err)
}
diff --git a/go.mod b/go.mod
index 527829b..f14d729 100644
--- a/go.mod
+++ b/go.mod
@@ -1,21 +1,23 @@
module git.sr.ht/~shulhan/go-x-proposal
-go 1.19
+go 1.25.0
require (
- git.sr.ht/~shulhan/ciigo v0.10.0
- github.com/shuLhan/share v0.46.0
+ git.sr.ht/~shulhan/ciigo v0.15.4-0.20260203211706-b447e8991270
+ git.sr.ht/~shulhan/pakakeh.go v0.60.3-0.20260202092811-1e3bb9be8444
)
require (
- git.sr.ht/~shulhan/asciidoctor-go v0.4.1 // indirect
- github.com/yuin/goldmark v1.5.4 // indirect
+ git.sr.ht/~shulhan/asciidoctor-go v0.7.3-0.20260124143117-f289b7f13a1d // indirect
+ github.com/kr/text v0.2.0 // indirect
+ github.com/yuin/goldmark v1.7.13 // indirect
github.com/yuin/goldmark-meta v1.1.0 // indirect
- golang.org/x/net v0.7.0 // indirect
- golang.org/x/sys v0.5.0 // indirect
+ golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93 // indirect
+ golang.org/x/net v0.48.0 // indirect
+ golang.org/x/sys v0.39.0 // indirect
gopkg.in/yaml.v2 v2.4.0 // indirect
)
-//replace github.com/shuLhan/share => ../share
+//replace git.sr.ht/~shulhan/pakakeh.go => ../pakakeh.go
//replace git.sr.ht/~shulhan/ciigo => ../ciigo
diff --git a/go.sum b/go.sum
index abc150f..d572e06 100644
--- a/go.sum
+++ b/go.sum
@@ -1,18 +1,28 @@
-git.sr.ht/~shulhan/asciidoctor-go v0.4.1 h1:Zev0L5HyMjH43sPaoJal8E/Hmbel/akoGOxNykhN4Dw=
-git.sr.ht/~shulhan/asciidoctor-go v0.4.1/go.mod h1:vRHDUl3o3UzDkvVR9dEFYQ0JDqOh0TKpOZWvOh/CGZU=
-git.sr.ht/~shulhan/ciigo v0.10.0 h1:s1SJ3/NzBcbOLmEZ4z1Cx9Vf7ZdDIvm45b7KMCZKzEY=
-git.sr.ht/~shulhan/ciigo v0.10.0/go.mod h1:cG6av+ywJZZp96F43kmLB2QWjm2hYiahbsbeTX/vlgk=
-github.com/shuLhan/share v0.46.0 h1:cF0Ngj7wVA6TIcdSmfrqxOwMB3hZ+4df5cJf4GGCun4=
-github.com/shuLhan/share v0.46.0/go.mod h1:BhnIWJxq84BTOs3Z2gLFAN8ih9mBfhZbRIjqGupGJag=
-github.com/yuin/goldmark v1.5.4 h1:2uY/xC0roWy8IBEGLgB1ywIoEJFGmRrX21YQcvGZzjU=
-github.com/yuin/goldmark v1.5.4/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
+git.sr.ht/~shulhan/asciidoctor-go v0.7.3-0.20260124143117-f289b7f13a1d h1:rdDzlVPJjgR6Jz84VNEAbdvNypMPtH3O6uEbVYb/7Rk=
+git.sr.ht/~shulhan/asciidoctor-go v0.7.3-0.20260124143117-f289b7f13a1d/go.mod h1:cY9Ae1vu3OniC7z29twH1/PMJa7ZSSUqbK9QQM4/bhc=
+git.sr.ht/~shulhan/ciigo v0.15.4-0.20260203211706-b447e8991270 h1:1Xgf9qJfS09e0pdgwLiqpbAZhwp/DSZmGDU30nI1whk=
+git.sr.ht/~shulhan/ciigo v0.15.4-0.20260203211706-b447e8991270/go.mod h1:uuFWUqsbwzeoTbluiwNcpoEah+rhHRf1rrqiMO+V86U=
+git.sr.ht/~shulhan/pakakeh.go v0.60.3-0.20260202092811-1e3bb9be8444 h1:mqX+Z2dyfChpFOgt6gV9R5AT3oQN3pw4gMbPQLGm1DI=
+git.sr.ht/~shulhan/pakakeh.go v0.60.3-0.20260202092811-1e3bb9be8444/go.mod h1:1MkKXbLZRHTcnheeSEbRpGztkym4Yxzh90ep+jCxbDc=
+github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
+github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=
+github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk=
+github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
+github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
+github.com/rogpeppe/go-internal v1.11.0 h1:cWPaGQEPrBb5/AsnsZesgZZ9yb1OQ+GOISoDNXVBh4M=
+github.com/rogpeppe/go-internal v1.11.0/go.mod h1:ddIwULY96R17DhadqLgMfk9H9tvdUzkipdSkR5nkCZA=
+github.com/yuin/goldmark v1.7.13 h1:GPddIs617DnBLFFVJFgpo1aBfe/4xcvMc3SB5t/D0pA=
+github.com/yuin/goldmark v1.7.13/go.mod h1:ip/1k0VRfGynBgxOz0yCqHrbZXhcjxyuS66Brc7iBKg=
github.com/yuin/goldmark-meta v1.1.0 h1:pWw+JLHGZe8Rk0EGsMVssiNb/AaPMHfSRszZeUeiOUc=
github.com/yuin/goldmark-meta v1.1.0/go.mod h1:U4spWENafuA7Zyg+Lj5RqK/MF+ovMYtBvXi1lBb2VP0=
-golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g=
-golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs=
-golang.org/x/sys v0.5.0 h1:MUK/U/4lj1t1oPg0HfuXDN/Z1wv31ZJ/YcPiGccS4DU=
-golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
-gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405 h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=
+golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93 h1:fQsdNF2N+/YewlRZiricy4P1iimyPKZ/xwniHj8Q2a0=
+golang.org/x/exp v0.0.0-20251219203646-944ab1f22d93/go.mod h1:EPRbTFwzwjXj9NpYyyrvenVh9Y+GFeEvMNh7Xuz7xgU=
+golang.org/x/net v0.48.0 h1:zyQRTTrjc33Lhh0fBgT/H3oZq9WuvRR5gPC70xpDiQU=
+golang.org/x/net v0.48.0/go.mod h1:+ndRgGjkh8FGtu1w1FGbEC31if4VrNVMuKTgcAAnQRY=
+golang.org/x/sys v0.39.0 h1:CvCKL8MeisomCi6qNZ+wbb0DN9E5AATixKsvNtMoMFk=
+golang.org/x/sys v0.39.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=
gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
+gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk=
+gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=
gopkg.in/yaml.v2 v2.4.0 h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
diff --git a/html.tmpl b/html.tmpl
index 4ab5989..bfe0a06 100644
--- a/html.tmpl
+++ b/html.tmpl
@@ -1,73 +1,58 @@
<!DOCTYPE html lang="id">
<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1" />
- <meta name="theme-color" content="#375EAB" />
- <meta name="description" content="Situs komunitas Go Indonesia"/>
- <meta keywords="komunitas Go indonesia"/>
- <meta name="robots" content="index,follow"/>
- <title>{{.Title}}</title>
- <link rel="stylesheet" href="/assets/style.css" />
+<head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
+ <meta name="theme-color" content="#375EAB" />
+ <meta name="description" content="Situs komunitas Go Indonesia" />
+ <meta keywords="komunitas Go indonesia" />
+ <meta name="robots" content="index,follow" />
- {{- range .Styles}}
- <link rel="stylesheet" href="{{.}}" />
- {{- end}}
+ <title>{{.Title}}</title>
+{{- if ne .EmbeddedCSS ""}}
+ <style>
+{{.EmbeddedCSS}}
+ </style>
+{{- end }}
+ <link rel="stylesheet" href="//storage.googleapis.com/umum.kilabit.info/assets/fonts/go/stylesheet.css" />
+ <link rel="stylesheet" href="/index.css" />
+{{- range .Styles}}
+ <link rel="stylesheet" href="{{.}}" />
+{{- end}}
+</head>
- <!-- Global site tag (gtag.js) - Google Analytics -->
- <script
- async
- src="https://www.googletagmanager.com/gtag/js?id=UA-2502278-10"
- ></script>
- <script>
- window.dataLayer = window.dataLayer || []
- function gtag() {
- dataLayer.push(arguments)
- }
- gtag("js", new Date())
+<body>
+ <div class="topbar">
+ <a class="item title" href="/">
+ <img class="header-logo" src="/assets/go-logo-white.svg" />
+ </a>
+ <a class="item" href="https://tour.golang-id.org" target="_blank">Tur</a>
+ <a class="item" href="/doc/">Dokumentasi</a>
+ <a class="item" href="/blog/">Blog</a>
+ <a class="item" href="https://go.dev/play/" target="_blank">Coba</a>
+ <form class="item" action="/_internal/search">
+ <input type="text" name="q" placeholder="Cari" />
+ </form>
+ </div>
- gtag("config", "UA-2502278-10")
- </script>
- </head>
- <body>
- <div class="topbar">
- <div class="container">
- <div class="top-heading">
- <a href="/">
- <img class="header-logo" src="/assets/go-logo-blue.svg" />
- </a>
- </div>
- <div class="menu">
- <a href="https://tour.golang-id.org" target="_blank">Tur</a>
- <a href="/doc">Dokumentasi</a>
- <a href="/blog">Blog</a>
- <a href="https://play.golang.org" target="_blank">Coba</a>
- <form class="item" action="/_internal/search">
- <input type="text" name="q" placeholder="Cari" />
- </form>
- </div>
- </div>
- </div>
+ <div class="page">
+ <div class="container">
+ {{.Body}}
+ </div>
+ <!-- .container -->
+ </div>
+ <!-- #page -->
- <div class="page">
- <div class="container">
- {{.Body}}
- </div>
- <!-- .container -->
- </div>
- <!-- #page -->
+ <div class="footer">
+ <div class="container">
+ Halaman situs ini berlisensikan
+ <a href="https://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a>, dan sumber kode berlisensikan <a href="/LICENSE">BSD</a>.
+ <br />
+ Dibangun menggunakan
+ <a href="https://sr.ht/~shulhan/ciigo">ciigo</a>.
+ </div>
+ </div>
+</body>
- <div class="footer">
- <div class="container">
- Halaman situs ini berlisensikan
- <a href="https://creativecommons.org/licenses/by/3.0/"
- >Creative Commons Attribution 3.0</a
- >, dan sumber kode berlisensikan <a href="/LICENSE">BSD</a>.
- <br />
- Dibangun menggunakan
- <a href="https://sr.ht/~shulhan/ciigo">ciigo</a>.
- </div>
- </div>
- </body>
</html>