decentral1se
12 months ago
No known key found for this signature in database
GPG Key ID: 3789458B3D0C410
1 changed files with
16 additions and
2 deletions
-
gshmm.go
|
|
@ -3,7 +3,6 @@ package main |
|
|
|
import ( |
|
|
|
"flag" |
|
|
|
"fmt" |
|
|
|
"log" |
|
|
|
"os" |
|
|
|
"path/filepath" |
|
|
|
"strings" |
|
|
@ -69,6 +68,15 @@ func (m model) dataSheetNames() []string { |
|
|
|
return names |
|
|
|
} |
|
|
|
|
|
|
|
func (m model) datasheetFromName(name string) string { |
|
|
|
for _, d := range m.datasheets { |
|
|
|
if d.filename == name { |
|
|
|
return d.contents |
|
|
|
} |
|
|
|
} |
|
|
|
return "" |
|
|
|
} |
|
|
|
|
|
|
|
type datasheet struct { |
|
|
|
filename string |
|
|
|
absPath string |
|
|
@ -89,6 +97,9 @@ func initialModel() model { |
|
|
|
name := info.Name() |
|
|
|
if strings.HasSuffix(name, "pdf") { |
|
|
|
// TODO: handle error in interface?
|
|
|
|
// TODO: don't read them all up front while blocking?
|
|
|
|
// we could run this in a goroutine somewhere
|
|
|
|
// this currently slows down startup time
|
|
|
|
contents, _ := readPDF(path) |
|
|
|
d := datasheet{ |
|
|
|
filename: name, |
|
|
@ -96,7 +107,6 @@ func initialModel() model { |
|
|
|
contents: contents, |
|
|
|
} |
|
|
|
ds = append(ds, d) |
|
|
|
log.Print(d) |
|
|
|
} |
|
|
|
|
|
|
|
return nil |
|
|
@ -144,6 +154,10 @@ func (m model) Update(msg tea.Msg) (tea.Model, tea.Cmd) { |
|
|
|
} else { |
|
|
|
m.dataSheetsView = m.dataSheetNames() |
|
|
|
} |
|
|
|
|
|
|
|
lastDatasheet := m.dataSheetsView[len(m.dataSheetsView)-1] |
|
|
|
viewportText := m.datasheetFromName(lastDatasheet) |
|
|
|
m.dataSheetViewport.SetContent(viewportText) |
|
|
|
} |
|
|
|
|
|
|
|
switch msg := msg.(type) { |
|
|
|