1
0
mirror of https://github.com/taigrr/wtf synced 2025-01-18 04:03:14 -08:00

Display current git repo and branch

This commit is contained in:
Chris Cummer 2018-03-31 23:37:56 -07:00 committed by Chris Cummer
parent f6e7a2c030
commit e1e8af5e38
4 changed files with 89 additions and 28 deletions

View File

@ -1,15 +1,63 @@
package git package git
import () import (
//"fmt"
"io/ioutil"
"os/exec"
)
type Client struct { type Client struct {
CommitCount int
Repository string Repository string
} }
func NewClient() *Client { func NewClient() *Client {
client := Client{ client := Client{
Repository: "./Documents/Lendesk/core-api", CommitCount: 10,
Repository: "/Users/Chris/Documents/Lendesk/core-api",
} }
return &client return &client
} }
/* -------------------- Unexported Functions -------------------- */
func (client *Client) CurrentBranch() string {
arg := []string{"rev-parse", "--abbrev-ref", "HEAD"}
cmd := exec.Command("git", arg...)
str := executeCommand(cmd)
return str
}
func (client *Client) ChangedFiles() []string {
files := []string{}
return files
}
func (client *Client) Commits() []string {
files := []string{}
return files
}
/* -------------------- Unexported Functions -------------------- */
func executeCommand(cmd *exec.Cmd) string {
stdout, err := cmd.StdoutPipe()
if err != nil {
return "err"
}
if err := cmd.Start(); err != nil {
return "err"
}
var str string
if b, err := ioutil.ReadAll(stdout); err == nil {
str += string(b)
}
return str
}

16
git/git.go Normal file
View File

@ -0,0 +1,16 @@
package git
import ()
func Fetch() map[string][]string {
client := NewClient()
result := make(map[string][]string)
result["repo"] = []string{client.Repository}
result["branch"] = []string{client.CurrentBranch()}
result["changed"] = client.ChangedFiles()
result["commits"] = client.Commits()
return result
}

View File

@ -1,7 +1,7 @@
package git package git
import ( import (
//"fmt" "fmt"
"time" "time"
"github.com/rivo/tview" "github.com/rivo/tview"
@ -31,13 +31,13 @@ func NewWidget() *Widget {
/* -------------------- Exported Functions -------------------- */ /* -------------------- Exported Functions -------------------- */
func (widget *Widget) Refresh() { func (widget *Widget) Refresh() {
//data := Fetch() data := Fetch()
widget.View.SetTitle(" 🙈 Git ") widget.View.SetTitle(" 🤞 Git ")
widget.RefreshedAt = time.Now() widget.RefreshedAt = time.Now()
widget.View.Clear() widget.View.Clear()
//fmt.Fprintf(widget.View, "%s", widget.contentFrom(data)) fmt.Fprintf(widget.View, "%s", widget.contentFrom(data))
} }
/* -------------------- Unexported Functions -------------------- */ /* -------------------- Unexported Functions -------------------- */
@ -52,9 +52,10 @@ func (widget *Widget) addView() {
widget.View = view widget.View = view
} }
func (widget *Widget) contentFrom(data map[string]string) string { func (widget *Widget) contentFrom(data map[string][]string) string {
str := "\n" str := "\n"
str = str + "This is git" str = str + fmt.Sprintf(" [green]%s[white] [grey]%s[white]\n", data["repo"][0], data["branch"][0])
str = str + "\n"
return str return str
} }

View File

@ -8,36 +8,32 @@ import (
const osxFirewallCmd = "/usr/libexec/ApplicationFirewall/socketfilterfw" const osxFirewallCmd = "/usr/libexec/ApplicationFirewall/socketfilterfw"
/* -------------------- Exported Functions -------------------- */
func FirewallState() string { func FirewallState() string {
cmd := exec.Command(osxFirewallCmd, "--getglobalstate") cmd := exec.Command(osxFirewallCmd, "--getglobalstate")
str := executeCommand(cmd)
stdout, err := cmd.StdoutPipe() return str
if err != nil {
return firewallIcon("err")
}
if err := cmd.Start(); err != nil {
return firewallIcon("err")
}
var str string
if b, err := ioutil.ReadAll(stdout); err == nil {
str += string(b)
}
return firewallIcon(str)
} }
func FirewallStealthState() string { func FirewallStealthState() string {
cmd := exec.Command(osxFirewallCmd, "--getstealthmode") cmd := exec.Command(osxFirewallCmd, "--getstealthmode")
str := executeCommand(cmd)
return str
}
/* -------------------- Unexported Functions -------------------- */
func executeCommand(cmd *exec.Cmd) string {
stdout, err := cmd.StdoutPipe() stdout, err := cmd.StdoutPipe()
if err != nil { if err != nil {
return firewallIcon("err") return firewallStr("err")
} }
if err := cmd.Start(); err != nil { if err := cmd.Start(); err != nil {
return firewallIcon("err") return firewallStr("err")
} }
var str string var str string
@ -45,10 +41,10 @@ func FirewallStealthState() string {
str += string(b) str += string(b)
} }
return firewallIcon(str) return firewallStr(str)
} }
func firewallIcon(str string) string { func firewallStr(str string) string {
icon := "[red]off[white]" icon := "[red]off[white]"
if strings.Contains(str, "enabled") { if strings.Contains(str, "enabled") {