diff --git a/lib/docs/filters/phalcon/clean_html.rb b/lib/docs/filters/phalcon/clean_html.rb
index 431d6f95..fb4ed6f5 100644
--- a/lib/docs/filters/phalcon/clean_html.rb
+++ b/lib/docs/filters/phalcon/clean_html.rb
@@ -18,6 +18,69 @@ module Docs
css('.docSearch-content > ul').remove
end
+ ### syntax highlight ###
+
+ css('.highlighter-rouge').each do |node|
+
+ next if node.classes.include?('language-yaml')
+ next if node.classes.include?('language-ini')
+ node.set_attribute('data-language', 'php')
+ node.remove_class('highlighter-rouge')
+ node.add_class('highlight-php')
+
+ node.css('.kt').each do |subnode|
+ subnode.remove_class('kt')
+ subnode.add_class('token constant')
+ end
+
+ node.css('.nb, .n').each do |subnode|
+ subnode.remove_class('nb')
+ subnode.remove_class('n')
+ subnode.add_class('token function')
+ end
+
+ node.css('.k, .kn, .kc, .cp').each do |subnode|
+ subnode.remove_class('k')
+ subnode.remove_class('kn')
+ subnode.remove_class('kc')
+ subnode.remove_class('cp')
+ subnode.add_class('token keyword')
+ end
+
+ node.css('.nv, .no').each do |subnode|
+ subnode.remove_class('nv')
+ subnode.remove_class('no')
+ subnode.add_class('token variable')
+ end
+
+ node.css('.s2').each do |subnode|
+ subnode.remove_class('s2')
+ subnode.add_class('token double-quoted-string string')
+ end
+
+ node.css('.p').each do |subnode|
+ subnode.remove_class('p')
+ subnode.add_class('token punctuation')
+ end
+
+ node.css('.nc, .nf').each do |subnode|
+ subnode.remove_class('nc')
+ subnode.remove_class('nf')
+ subnode.add_class('token class-name')
+ end
+
+ node.css('.o').each do |subnode|
+ subnode.remove_class('o')
+ subnode.add_class('token operator')
+ end
+
+ node.css('.cd').each do |subnode|
+ subnode.remove_class('cd')
+ subnode.add_class('token comment')
+ end
+
+ end
+
doc
end