package edit import ( "fmt" "os" "syscall" "github.com/elves/elvish/errutil" "github.com/elves/elvish/eval" "github.com/elves/elvish/logutil" "github.com/elves/elvish/parse" "github.com/elves/elvish/store" "github.com/elves/elvish/sys" ) var Logger = logutil.GetLogger("[edit] ") const ( lackEOLRune = '\u23ce' lackEOL = "\033[7m" + string(lackEOLRune) + "\033[m" ) // Editor keeps the status of the line editor. type Editor struct { file *os.File writer *writer reader *Reader sigs chan os.Signal store *store.Store evaler *eval.Evaler cmdSeq int
"github.com/elves/elvish/errutil" "github.com/elves/elvish/eval" "github.com/elves/elvish/logutil" "github.com/elves/elvish/osutil" "github.com/elves/elvish/parse" "github.com/elves/elvish/store" "github.com/elves/elvish/sys" ) const ( sigchSize = 32 outChanSize = 32 outChanLeader = "▶ " ) var Logger = logutil.GetLogger("[main] ") func usage() { fmt.Println("usage: elvish [flags] [script]") fmt.Println("flags:") flag.PrintDefaults() } var ( log = flag.String("log", "", "a file to write debug log to") dbname = flag.String("db", "", "path to the database") help = flag.Bool("help", false, "show usage help and quit") ) func main() { defer rescue()
import ( "fmt" "io/ioutil" "os" "strconv" "strings" "syscall" "unicode/utf8" "github.com/elves/elvish/errutil" "github.com/elves/elvish/logutil" "github.com/elves/elvish/parse" "github.com/elves/elvish/store" ) var Logger = logutil.GetLogger("[eval] ") // FnPrefix is the prefix for the variable names of functions. Defining a // function "foo" is equivalent to setting a variable named FnPrefix + "foo". const FnPrefix = "&" // Namespace is a map from name to variables. type Namespace map[string]Variable // Evaler is used to evaluate elvish sources. It maintains runtime context // shared among all evalCtx instances. type Evaler struct { global Namespace modules map[string]Namespace searchPaths []string store *store.Store