Boss mode

This commit is contained in:
aerth
2016-04-19 04:33:54 +00:00
parent c264fec472
commit a2ca47a496
3 changed files with 28 additions and 3 deletions

View File

@@ -2,10 +2,28 @@ package main
import (
"os"
"os/exec"
"regexp"
"strings"
)
func HandleShellCommand(input string, view *View) {
inputCmd := strings.Split(input, " ")[0]
args := strings.Split(input, " ")[1:]
// Execute Command
cmdout := exec.Command(inputCmd, args...)
output, err := cmdout.Output()
if err != nil {
messenger.Error("Error: " + err.Error())
return
}
// Display last line of output
messenger.Message(string(output))
}
// HandleCommand handles input from the user
func HandleCommand(input string, view *View) {
inputCmd := strings.Split(input, " ")[0]

View File

@@ -3,9 +3,10 @@ package main
import (
"bufio"
"fmt"
"github.com/gdamore/tcell"
"os"
"strconv"
"github.com/gdamore/tcell"
)
// TermMessage sends a message to the user in the terminal. This usually occurs before

View File

@@ -2,13 +2,14 @@ package main
import (
"fmt"
"io/ioutil"
"os"
"github.com/gdamore/tcell"
"github.com/gdamore/tcell/encoding"
"github.com/go-errors/errors"
"github.com/mattn/go-isatty"
"github.com/mitchellh/go-homedir"
"io/ioutil"
"os"
)
const (
@@ -200,6 +201,11 @@ func main() {
if !canceled {
HandleCommand(input, view)
}
case tcell.KeyCtrlB:
input, canceled := messenger.Prompt("$ ")
if !canceled {
HandleShellCommand(input, view)
}
case tcell.KeyCtrlG:
DisplayHelp()
// Make sure to resize the view if the user resized the terminal while looking at the help text