Feature #20620

Add javascript variable for selected markup language

Added by Felix Schäfer over 7 years ago. Updated over 7 years ago.

Status:NewStart date:
Priority:NormalDue date:
Assignee:-% Done:


Category:Text formatting
Target version:-


(I looked in trunk for a solution and in the issues for a request but couldn't find anything, I'm sorry if this is a duplicate or already solved)

We (plan.io) currently add 2 buttons to the wiki toolbar, one as described in #14937 and another from a plugin, which insert markup-sensitive content to the edited text. Those buttons are added from included javascript files, there currently is no easy way to find out which markup is selected from the js.

Knowing the markup used in the js would allow setting the correct markup/function for the added buttons directly in the js.

While there are a few other possibilities to achieve this (load different js files from the plugins depending on the selected markup, this adds complexity on the js side either because of duplication, loading 2 files for the markup-specific and common code, and so on).

The simplest change we could come up with would be to add a line similar to:

javascript_tag("var wikiMarkup = 'textile';") +

to source:/tags/3.1.0/lib/redmine/wiki_formatting/textile/helper.rb#L35, the same for markdown.

Is this something that could be added to Redmine, or how should markup-dependent javascript be handled? Thanks.


#1 Updated by Felix Schäfer over 7 years ago

Whoops, seems I used opening instead of closing tags at the end of the code line, sorry (which also shows how the code button proposed in #14937 could be helpful :-) )

#2 Updated by Etienne Massip over 7 years ago

  • Description updated (diff)

#3 Updated by Etienne Massip over 7 years ago

This should not be done in a specific markup helper.

This should not be a global variable, could be stored e.g. as a data-markup-language attribute on textarea component.

#4 Updated by Felix Schäfer over 7 years ago

Thanks for correcting the description.

A data attribute on text areas would probably work too.

Also available in: Atom PDF