diff options
| author | ewy <ewy0@protonmail.com> | 2026-04-14 19:04:41 +0200 |
|---|---|---|
| committer | ewy <ewy0@protonmail.com> | 2026-04-14 19:04:41 +0200 |
| commit | 466758ce0a6de964f6ed8228d78fb7e9a4ff9a67 (patch) | |
| tree | 8e522bcfdd08c07402fea89033adb84f85bd4665 /describe/describe.go | |
| parent | 370f13b58e9cb74eeab3461afb779cf4d013c94b (diff) | |
add descriptions
Diffstat (limited to 'describe/describe.go')
| -rw-r--r-- | describe/describe.go | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/describe/describe.go b/describe/describe.go new file mode 100644 index 0000000..fe168ec --- /dev/null +++ b/describe/describe.go @@ -0,0 +1,33 @@ +package describe + +import ( + "bufio" + "os" + "strings" +) + +var DescriptionPrefixes = []string{ + "#", + "//", +} + +func Describe(file string) (string, error) { + fd, err := os.Open(file) + if err != nil { + return "", err + } + defer fd.Close() + scanner := bufio.NewScanner(fd) + scanner.Split(bufio.ScanLines) + scanner.Scan() + text := scanner.Text() + if strings.HasPrefix(text, "#!") { + scanner.Scan() + text = scanner.Text() + } + text = strings.TrimSpace(text) + if !strings.HasPrefix(text, "#") { + return "", nil + } + return text, nil +} |
