Skip to content

Commit 784cda2

Browse files
committed
feat: add unformatted flag to be able to avoid md parser
I encountered errors with markdown parsing when one uses: 1. {*}text text{*} to format bold text 2. brackets inside brackets like so [[EKK] Link|example.com] I don't need fancy stuff, i just want to have info so I've added flag to bypass errors with parsing
1 parent adab79f commit 784cda2

File tree

3 files changed

+14
-5
lines changed

3 files changed

+14
-5
lines changed

internal/cmd/issue/view/view.go

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,10 +23,11 @@ $ jira issue view ISSUE-1 --comments 5
2323
# Get the raw JSON data
2424
$ jira issue view ISSUE-1 --raw`
2525

26-
flagRaw = "raw"
27-
flagDebug = "debug"
28-
flagComments = "comments"
29-
flagPlain = "plain"
26+
flagRaw = "raw"
27+
flagDebug = "debug"
28+
flagComments = "comments"
29+
flagPlain = "plain"
30+
flagUnformatted = "unformatted"
3031

3132
configProject = "project.key"
3233
configServer = "server"
@@ -52,6 +53,7 @@ func NewCmdView() *cobra.Command {
5253
cmd.Flags().Uint(flagComments, 1, "Show N comments")
5354
cmd.Flags().Bool(flagPlain, false, "Display output in plain mode")
5455
cmd.Flags().Bool(flagRaw, false, "Print raw Jira API response")
56+
cmd.Flags().Bool(flagUnformatted, false, "Don't format into MD")
5557

5658
return &cmd
5759
}
@@ -110,11 +112,13 @@ func viewPretty(cmd *cobra.Command, args []string) {
110112

111113
plain, err := cmd.Flags().GetBool(flagPlain)
112114
cmdutil.ExitIfError(err)
115+
unformatted, err := cmd.Flags().GetBool(flagUnformatted)
116+
cmdutil.ExitIfError(err)
113117

114118
v := tuiView.Issue{
115119
Server: viper.GetString(configServer),
116120
Data: iss,
117-
Display: tuiView.DisplayFormat{Plain: plain},
121+
Display: tuiView.DisplayFormat{Plain: plain, Unformatted: unformatted},
118122
Options: tuiView.IssueOption{NumComments: comments},
119123
}
120124
cmdutil.ExitIfError(v.Render())

internal/view/issue.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -249,6 +249,8 @@ func (i Issue) description() string {
249249

250250
if adfNode, ok := i.Data.Fields.Description.(*adf.ADF); ok {
251251
desc = adf.NewTranslator(adfNode, adf.NewMarkdownTranslator()).Translate()
252+
} else if i.Display.Unformatted {
253+
desc = i.Data.Fields.Description.(string)
252254
} else {
253255
desc = i.Data.Fields.Description.(string)
254256
desc = md.FromJiraMD(desc)
@@ -393,6 +395,8 @@ func (i Issue) comments() []issueComment {
393395
var body string
394396
if adfNode, ok := c.Body.(*adf.ADF); ok {
395397
body = adf.NewTranslator(adfNode, adf.NewMarkdownTranslator()).Translate()
398+
} else if i.Display.Unformatted {
399+
body = c.Body.(string)
396400
} else {
397401
body = c.Body.(string)
398402
body = md.FromJiraMD(body)

internal/view/issues.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ type DisplayFormat struct {
2525
Comments uint
2626
TableStyle tui.TableStyle
2727
Timezone string
28+
Unformatted bool
2829
}
2930

3031
// IssueList is a list view for issues.

0 commit comments

Comments
 (0)