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  }