edbit/flags.go

41 lines
611 B
Go

//go:build !js && !wasm
// +build !js,!wasm
package main
import (
"flag"
"log"
"os"
"path/filepath"
"strings"
"code.rocketnine.space/tslocum/edbit/application"
)
func parseFlags(app *application.Application) {
flag.Parse()
args := flag.Args()
for _, p := range args {
if strings.TrimSpace(p) == "" {
continue
}
if p == "~" {
dir, err := os.UserHomeDir()
if err != nil {
log.Fatal(err)
}
p = dir
} else if strings.HasPrefix(p, "~/") {
dir, err := os.UserHomeDir()
if err != nil {
log.Fatal(err)
}
p = filepath.Join(dir, p[2:])
}
app.OpenFile(p)
}
}