Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
9d4053da0b | |||
6dd7d573b8 |
1
.nanpa/grid-lid-come.kdl
Normal file
1
.nanpa/grid-lid-come.kdl
Normal file
@ -0,0 +1 @@
|
||||
patch type="fixed" "use birthtime instead of mtime"
|
@ -1 +0,0 @@
|
||||
minor type="added" "add html rendering"
|
@ -1 +0,0 @@
|
||||
minor type="added" "add configurable pager"
|
@ -1,2 +0,0 @@
|
||||
patch type="fixed" "symlink html directory"
|
||||
patch type="fixed" "remove stray unpublishes from html dir"
|
13
CHANGELOG.md
13
CHANGELOG.md
@ -1,5 +1,18 @@
|
||||
# Changelog
|
||||
|
||||
## [0.2.0] - 2025-01-20
|
||||
|
||||
### Added
|
||||
|
||||
- add html rendering
|
||||
- add configurable pager
|
||||
|
||||
### Fixed
|
||||
|
||||
- fix hacky workaround for doubled inputs
|
||||
- symlink html directory
|
||||
- remove stray unpublishes from html dir
|
||||
|
||||
## [0.1.1] - 2025-01-09
|
||||
|
||||
- use 755 for config dir
|
||||
|
@ -25,7 +25,7 @@ const title = ` ___ __
|
||||
/ _/__ ___ / /__
|
||||
/ _/ -_) -_) (_-<
|
||||
/_/ \__/\__/_/___/
|
||||
neofeels 0.1.1`
|
||||
neofeels 0.2.0`
|
||||
|
||||
func NewMainMenu(index int) *MainMenu {
|
||||
return &MainMenu{
|
||||
|
1
go.mod
1
go.mod
@ -4,6 +4,7 @@ go 1.23.4
|
||||
|
||||
require (
|
||||
git.sr.ht/~rockorager/vaxis v0.11.0
|
||||
github.com/djherbis/times v1.6.0
|
||||
github.com/dustin/go-humanize v1.0.1
|
||||
github.com/yuin/goldmark v1.4.13
|
||||
)
|
||||
|
3
go.sum
3
go.sum
@ -6,6 +6,8 @@ github.com/creack/pty v1.1.18 h1:n56/Zwd5o6whRC5PMGretI4IdRLlmBXYNjScPaBgsbY=
|
||||
github.com/creack/pty v1.1.18/go.mod h1:MOBLtS5ELjhRRrroQr9kyvTxUAFNvYEK993ew/Vr4O4=
|
||||
github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
|
||||
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
|
||||
github.com/djherbis/times v1.6.0 h1:w2ctJ92J8fBvWPxugmXIv7Nz7Q3iDMKNx9v5ocVH20c=
|
||||
github.com/djherbis/times v1.6.0/go.mod h1:gOHeRAz2h+VJNZ5Gmc/o7iD9k4wW7NMVqieYCY99oc0=
|
||||
github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=
|
||||
github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=
|
||||
github.com/mattn/go-runewidth v0.0.14 h1:+xnbZSEeDbOIg5/mE6JF0w6n9duR1l3/WmbinWVwUuU=
|
||||
@ -43,6 +45,7 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w
|
||||
golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220615213510-4f61da869c0c/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.10.0 h1:SqMFp9UcQJZa+pmYuAKjd9xq1f0j5rLcDIk0mj4qAsA=
|
||||
|
18
ttbp/ttbp.go
18
ttbp/ttbp.go
@ -13,6 +13,7 @@ import (
|
||||
"time"
|
||||
|
||||
"git.tilde.town/nbsp/neofeels/config"
|
||||
"github.com/djherbis/times"
|
||||
"github.com/yuin/goldmark"
|
||||
)
|
||||
|
||||
@ -65,17 +66,24 @@ func GetUsers() (users []User) {
|
||||
}
|
||||
|
||||
// get last published file
|
||||
entries, err := os.ReadDir(path.Join("/home", user.Name(), ".ttbp/entries"))
|
||||
|
||||
entriesDir := path.Join("/home", user.Name(), ".ttbp/entries")
|
||||
entries, err := os.ReadDir(entriesDir)
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
var lastPublished time.Time = *new(time.Time)
|
||||
if len(entries) > 0 {
|
||||
info, err := entries[len(entries)-1].Info()
|
||||
file, err := os.Open(path.Join(entriesDir, entries[len(entries)-1].Name()))
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
lastPublished = info.ModTime()
|
||||
defer file.Close()
|
||||
timespec, err := times.StatFile(file)
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
lastPublished = timespec.BirthTime()
|
||||
}
|
||||
|
||||
users = append(users, User{
|
||||
@ -155,7 +163,7 @@ func GetPostsForUser(user string) (posts []Post) {
|
||||
}
|
||||
|
||||
// get modtime of file
|
||||
stat, err := file.Stat()
|
||||
timespec, err := times.StatFile(file)
|
||||
if err != nil {
|
||||
continue
|
||||
}
|
||||
@ -181,7 +189,7 @@ func GetPostsForUser(user string) (posts []Post) {
|
||||
posts = append([]Post{Post{
|
||||
Author: user,
|
||||
Date: fileDate,
|
||||
LastEdited: stat.ModTime(),
|
||||
LastEdited: timespec.BirthTime(),
|
||||
Words: count,
|
||||
Nopub: nopub,
|
||||
HTML: html,
|
||||
|
Loading…
x
Reference in New Issue
Block a user