Added a bunch of stuff and I now need to store said stuff
This commit is contained in:
parent
1458b63287
commit
9aa31ec22c
7 changed files with 287 additions and 120 deletions
|
|
@ -21,9 +21,9 @@ func NewEditCmd(args []string) (*EditCmd, error) {
|
|||
ccmd := &EditCmd{project: os.Getenv("JIRA_PROJECT")}
|
||||
f := flag.NewFlagSet("x", flag.ExitOnError)
|
||||
f.StringVar(&ccmd.project, "p", "", "Jira project key")
|
||||
f.StringVar(&ccmd.file, "f", "filename", "File to get issue description from")
|
||||
f.StringVar(&ccmd.file, "f", "", "File to get issue description from")
|
||||
f.Parse(args)
|
||||
ccmd.taskKey = flag.Arg(0)
|
||||
ccmd.taskKey = f.Arg(0)
|
||||
return ccmd, nil
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -17,6 +17,7 @@ import (
|
|||
|
||||
"otremblay.com/jkl"
|
||||
)
|
||||
|
||||
// def get_editor do
|
||||
// [System.get_env("EDITOR"), "nano", "vim", "vi"]
|
||||
// |> Enum.find(nil, fn (ed) -> System.find_executable(ed) != nil end)
|
||||
|
|
@ -154,12 +155,17 @@ func IssueFromReader(f io.Reader, editMeta *jkl.EditMeta) *jkl.JiraIssue {
|
|||
} else {
|
||||
currentField = newfield
|
||||
}
|
||||
} else if editMeta != nil {
|
||||
} else if editMeta != nil {
|
||||
// If it's not valid, throw it at the createmeta. It will probably end up in ExtraFields.
|
||||
|
||||
|
||||
}
|
||||
if currentField.IsValid() {
|
||||
currentField.SetString(strings.TrimSpace(currentField.String() + "\n" + strings.Join(parts, ":")))
|
||||
newpart := strings.Join(parts, ":")
|
||||
newvalue := currentField.String() + "\n" + newpart
|
||||
if strings.TrimSpace(newpart) != "" {
|
||||
newvalue = strings.TrimSpace(newvalue)
|
||||
}
|
||||
currentField.SetString(newvalue)
|
||||
}
|
||||
}
|
||||
return iss
|
||||
|
|
|
|||
|
|
@ -55,12 +55,20 @@ func getCmd(args []string, depth int) (Runner, error) {
|
|||
case "edit":
|
||||
return NewEditCmd(args[1:])
|
||||
case "comment":
|
||||
if strings.Contains(strings.Join(args,""),jkl.CommentIdSeparator){
|
||||
if strings.Contains(strings.Join(args, ""), jkl.CommentIdSeparator) {
|
||||
return NewEditCommentCmd(args[1:])
|
||||
}
|
||||
return NewCommentCmd(args[1:])
|
||||
case "edit-comment":
|
||||
return NewEditCommentCmd(args[1:])
|
||||
case "assign":
|
||||
return NewAssignCmd(args[1:])
|
||||
case "flag":
|
||||
return NewFlagCmd(args[1:], true)
|
||||
case "unflag":
|
||||
return NewFlagCmd(args[1:], false)
|
||||
case "link":
|
||||
return NewLinkCmd(args[1:])
|
||||
default:
|
||||
// Think about this real hard.
|
||||
// I want `jkl JIRA-1234 done` to move it to done.
|
||||
|
|
@ -92,9 +100,10 @@ func getCmd(args []string, depth int) (Runner, error) {
|
|||
return nil, ErrTaskSubCommandNotFound
|
||||
}
|
||||
|
||||
var verbs = []string{"list", "create", "task", "edit", "comment","edit-comment"}
|
||||
func init(){
|
||||
sort.Strings(verbs)
|
||||
var verbs = []string{"list", "create", "task", "edit", "comment", "edit-comment"}
|
||||
|
||||
func init() {
|
||||
sort.Strings(verbs)
|
||||
}
|
||||
|
||||
const usage = `Usage:
|
||||
|
|
|
|||
|
|
@ -21,6 +21,9 @@ func (l *listissue) URL() string {
|
|||
}
|
||||
|
||||
func (l *listissue) Color() string {
|
||||
if l.Fields == nil || l.Fields.Status == nil {
|
||||
return ""
|
||||
}
|
||||
if os.Getenv("JKLNOCOLOR") == "true" || !terminal.IsTerminal(int(os.Stdout.Fd())) {
|
||||
return ""
|
||||
}
|
||||
|
|
@ -52,7 +55,7 @@ func NewListCmd(args []string) (*ListCmd, error) {
|
|||
if *verbose {
|
||||
fmt.Println(&ccmd.tmplstr)
|
||||
}
|
||||
f.StringVar(&ccmd.tmplstr, "listTemplate", "{{.Color}}{{.Key}}{{if .Color}}\x1b[39m{{end}}\t({{.Fields.IssueType.Name}}{{if .Fields.Parent}} of {{.Fields.Parent.Key}}{{end}})\t{{.Fields.Summary}}\t{{if .Fields.Assignee}}[{{.Fields.Assignee.Name}}]{{end}}\n", "Go template used in list command")
|
||||
f.StringVar(&ccmd.tmplstr, "listTemplate", "{{.Color}}{{.Key}}{{if .Color}}\x1b[39m{{end}}\t({{if .Fields.IssueType}}{{.Fields.IssueType.Name}}{{end}}{{if .Fields.Parent}} of {{.Fields.Parent.Key}}{{end}})\t{{.Fields.Summary}}\t{{if .Fields.Assignee}}[{{.Fields.Assignee.Name}}]{{end}}\n", "Go template used in list command")
|
||||
f.Parse(args)
|
||||
ccmd.args = f.Args()
|
||||
if len(ccmd.args) == 0 {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue