src.elv.sh@v0.21.0-dev.0.20240515223629-06979efb9a2a/cmd/elvish/main.go (about) 1 // Elvish is a cross-platform shell, supporting Linux, BSDs and Windows. It 2 // features an expressive programming language, with features like namespacing 3 // and anonymous functions, and a fully programmable user interface with 4 // friendly defaults. It is suitable for both interactive use and scripting. 5 package main 6 7 import ( 8 "os" 9 10 "src.elv.sh/pkg/buildinfo" 11 "src.elv.sh/pkg/daemon" 12 "src.elv.sh/pkg/lsp" 13 "src.elv.sh/pkg/prog" 14 "src.elv.sh/pkg/shell" 15 ) 16 17 func main() { 18 os.Exit(prog.Run( 19 [3]*os.File{os.Stdin, os.Stdout, os.Stderr}, os.Args, 20 prog.Composite( 21 &buildinfo.Program{}, &daemon.Program{}, &lsp.Program{}, 22 &shell.Program{ActivateDaemon: daemon.Activate}))) 23 }