diff options
author | Alfredo Sumaran <alfredo@gitlab.com> | 2016-10-17 20:17:12 +0300 |
---|---|---|
committer | Alfredo Sumaran <alfredo@gitlab.com> | 2016-10-17 20:17:12 +0300 |
commit | a975e4cb34349fb04305d6fb50756adf289ff633 (patch) | |
tree | 21336a574f911605104b26e85f6f4aa10076471c /lib | |
parent | 86dcb79be37f5759dfeaa26283ed8bf031b38d54 (diff) | |
parent | d4feb781387a843586d5a01740c43f50ce7ad084 (diff) |
Merge branch 'master' into merge-conflicts-editor-2
Diffstat (limited to 'lib')
-rw-r--r-- | lib/banzai/filter/set_direction_filter.rb | 15 | ||||
-rw-r--r-- | lib/banzai/pipeline/gfm_pipeline.rb | 4 |
2 files changed, 18 insertions, 1 deletions
diff --git a/lib/banzai/filter/set_direction_filter.rb b/lib/banzai/filter/set_direction_filter.rb new file mode 100644 index 00000000000..c2976aeb7c6 --- /dev/null +++ b/lib/banzai/filter/set_direction_filter.rb @@ -0,0 +1,15 @@ +module Banzai + module Filter + # HTML filter that sets dir="auto" for RTL languages support + class SetDirectionFilter < HTML::Pipeline::Filter + def call + # select these elements just on top level of the document + doc.xpath('p|h1|h2|h3|h4|h5|h6|ol|ul[not(@class="section-nav")]|blockquote|table').each do |el| + el['dir'] = 'auto' + end + + doc + end + end + end +end diff --git a/lib/banzai/pipeline/gfm_pipeline.rb b/lib/banzai/pipeline/gfm_pipeline.rb index 8d94b199c66..5da2d0b008c 100644 --- a/lib/banzai/pipeline/gfm_pipeline.rb +++ b/lib/banzai/pipeline/gfm_pipeline.rb @@ -25,7 +25,9 @@ module Banzai Filter::MilestoneReferenceFilter, Filter::TaskListFilter, - Filter::InlineDiffFilter + Filter::InlineDiffFilter, + + Filter::SetDirectionFilter ] end |