erm/internal/app/darktile/termutil/options.go
2021-07-30 23:29:20 +01:00

38 lines
580 B
Go

package termutil
import (
"os"
)
type Option func(t *Terminal)
func WithLogFile(path string) Option {
return func(t *Terminal) {
t.logFile, _ = os.Create(path)
}
}
func WithTheme(theme *Theme) Option {
return func(t *Terminal) {
t.theme = theme
}
}
func WithShell(shell string) Option {
return func(t *Terminal) {
t.shell = shell
}
}
func WithInitialCommand(cmd string) Option {
return func(t *Terminal) {
t.initialCommand = cmd + "\n"
}
}
func WithWindowManipulator(m WindowManipulator) Option {
return func(t *Terminal) {
t.windowManipulator = m
}
}