Get In Touch
TC 73/1214,Enchakal
Vallakadavu(PO), Thiruvananthapuram,
Kerala- 695008.

How to integrate syntax highlighter in Django CKEditor

Before integrating the syntax highlighter plugin, please make sure that you already installed CKEditor in your web app and it’s working. This article will help you with different language codes and highlight code syntax.

1. Download syntaxhighlight plugin for CKEditor 3.x Here

2. Extract zip folder and open it, here you can find the folder named "syntaxhighlight".

3. Copy above folder and paste into to your existing ckeditor/plugins/ folder (This path will be in you virtual environment)

4. Also paste the same above folder to your static folder, this will be used while adding static files of syntax highlighter in templates.

5. Now you can add the extra plugin settings to you CKEDITOR_CONFIGS and  it will look like as below (Order of defining settings important here),

CKEDITOR_CONFIGS = {
    'default': {
        'toolbar':[ ['Syntaxhighlight', ], ],
        'extraPlugins': ','.join(
            [
                'syntaxhighlight',

            ]),
        'toolbar': 'Advanced',
        'width': 1000,
        'height': 500,
        'uiColor' : '#9ccde5',
         .
         .
         .
         .

    },
}

6. Finally you have to add CSS and JS files of syntax highlighter to your page template to render the syntax highlighting visible as follow:

    This should be add in <head> </head> tag,

<!-- syntaxhighlighter for use in ckeditor plugin -->
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shCore.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushBash.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushCpp.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushCSharp.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushCss.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushDelphi.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushDiff.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushGroovy.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushJava.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushJScript.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushPhp.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushPlain.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushPython.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushRuby.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushScala.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushSql.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushVb.js' %}"></script>
<script type="text/javascript" src="{% static 'syntaxhighlight/scripts/shBrushXml.js' %}"></script>
<link type="text/css" rel="stylesheet" href="{% static 'syntaxhighlight/styles/shCore.css' %}"/>
<link type="text/css" rel="stylesheet" href="{% static 'syntaxhighlight/styles/shThemeDefault.css' %}"/>

This should be add in <body> tag,

<script type="text/javascript">
    SyntaxHighlighter.config.clipboardSwf = 'static/syntaxhighlight/scripts/clipboard.swf';
    SyntaxHighlighter.all();
</script>

All set go and try on.

This website stores cookies on your computer.

START A CONVERSATION

Please enable JavaScript in your browser to complete this form.

Junior Scrum Master

Business Development Executive

Business Operation Analyst

Senior Python Django Developer

Technical Project Manager

React JS Developer

MBA Fresher Recruitment ( 2022 & 2023 passed out)