New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extension of JIRA render to support Confluence wiki markup #258
Comments
@qwazer, just to make sure we are talking about the same thing. The If the confluence wiki conversion is to work on the same principle: markdown to confluence conversion then the same mechanism can be used. Answers added in between your questions to help track the context:
Absolutely. There are a few user contributions and all are welcome. Even ones with limited use because they can be used as a starting point for someone's custom extension.
Based on the number of changes, it is probably better to add a For extensions which have a difference in rendering, either a new custom renderer can be added to the extension or the custom rendering can be added to the confluence wiki converter's custom renderer. My preference would be to add confluence rendering to each affected extension if only to keep code depending on the extension close together but this is not critical if it easier to have all rendering in the confluence wiki extension's custom renderer. In either case, extensions can add their own custom node render for I will probably add logic to the API to allow render type inheritance to allow defining
I think implementing one extension is simpler. To allow turning off the confluence admonition rendering you can always add an option to the extension configuration to allow turning this rendering off. This will give you the flexibility of having two separate extensions without the overhead of implementing two extensions or making users add both to the extension list. |
@vsch Thanks for answers! Yes, we are talking about about the same thing:
Does it mean that it will affect all extensions if (rendererType.equals("HTML")) {
rendererBuilder.nodeRendererFactory(new XXXNodeRenderer.Factory());
} else if (rendererType.equals("JIRA") || rendererType.equals("YOUTRACK")) {
} will be replaced by if (rendererType.equals("HTML")) {
rendererBuilder.nodeRendererFactory(new XXXNodeRenderer.Factory());
} else if (rendererType.equals("JIRA")
|| rendererType.equals("CONFLUENCE_WIKI")
|| rendererType.equals("YOUTRACK")) {
}
Sound nice. I'm interesting in this feature :) Anyway, for clear expectations. I cannot promise fast contribution. May be it will take a month or above. |
@qwazer, equivalence rendering types added. Very basic but does the job. You can take a look at youtrack for how it is defined so other extensions which render "JIRA" will work with it. YouTrackConverterExtension.java: Lines 32-42 So if you create an equvalence between your rendering type and "JIRA" all extensions will render JIRA when your rendering type is selected. Repo updated, maven update in progress. |
@vsch Cool! Thanks for so quick update! |
Thank you @vsch for the library! Thanks you! |
You are welcome and don't worry about contributing back, unless it makes sense for a wide audience. I find that just the fact that the library is used, helps improve its features and stability. |
I want to use your wonderful library in 2 projects:
instead of PegDown.
Basically, flexmark-jira-converter fill all my needs except a couple of items:
Ref links between pages confluence-wiki-markup.
Plugins above use specific logic and add page title prefixes to confluence page names, so to support ref links between pages I need to repeat the same logic when I render RefLink object.
The custom format of admonitions. Plugins above use the custom format for admonitions
rendered as
{note}
confluence macros.I can write this extension of flexmark-jira-converter and I want to contribute this extension to your project,
But I have several questions before I'll start preparing PR.
From one point of view, confluence wiki is extension of JIRA renderer- It render links differently, and have Confluence-specific macros like {info}, {expand}, {toc}, etc
Form another point of view, JIRA and Confluence are different products by Atlassian Company.
flexmark-ext-jira-confluence
and write all my stuff in this extensionflexmark-ext-jira-confluence-admonitions
,flexmark-ext-jira-confluence-links
The text was updated successfully, but these errors were encountered: