====== How to integrate SyntaxHighLighting in the editor ======
If you want to use **SyntaxHighlighting** in the editor, you will need the original script [[http://alexgorbatchev.com/SyntaxHighlighter|SyntaxHighLighter]] by Alex Gorbatchev **PLUS** the [[http://code.google.com/p/ckeditor-syntaxhighlight/|CKEditor Plugin for Syntax-Highlighting]].
===== Download the scripts =====
Download the **Syntax-Highlighter-Script** from the [[http://alexgorbatchev.com/SyntaxHighlighter/download/download.php?sh_current|SyntaxHighLighter-Download-Page]]
Unpack it to a local directory and upload it as directory "//syntaxhighlighter//" to ///admin/template/js///
Download the **SyntaxHighLighter-Plugin for CKeditor-Plugin** from [[http://s1.ckeditor.com/sites/default/files/uploads/syntaxhighlightv1.3-ckeditor-plugin.zip]]
===== FileUpload=====
Unpack it to a local directory and load that directory by FTP into your editor-plugin-directory at: //admin/template/js/ckeditor/plugins//
Make sure you rename the folder so that it looks like this
//admin/template/js/ckeditor/plugins/syntaxhighlight//
This folder should contain the files plugin.js and the subdirectories dialogs, images, and lang
===== Integration in GetSimple =====
You will need a separate [[how_to:editor_configuration_custom_files|CKEditor-configuration file]] if you don't have one already. Add the following 2 lines to the custom config-file: \\
CKEDITOR.editorConfig = function( config ){
// Define changes to default configuration here. For example:
// config.removePlugins = 'elementspath,resize' ; // hide element path and resizer
config.extraPlugins = 'syntaxhighlight';
config.syntaxhighlightLangDefault = 'php'
};
If you have defined extraPlugins already, add '//syntaxhighlight//' to that comma-separated list,for example:\\
config.extraPlugins = 'fileicon,video,syntaxhighlight,templates';
If you haven't done already, define the custom-config-file in the [[how_to:editor_configuration_custom_files|GetSimple-Configuration file gsconfig.php]]
To show the button for the Syntax-Highlighter, you have to define that in the section "Editortoolbar" in gsconfig.php:
an example: instead the standard-entry
# WYSIWYG toolbars (advanced, basic or [custom config])
define('GSEDITORTOOL', 'advanced');
define the buttons:
define('GSEDITORTOOL',"['Source','Cut','Copy','Paste','PasteText','PasteFromWord','Undo','Redo','Find','Replace','SelectAll','RemoveFormat'],
'/',
['Bold','Italic','Underline','Strike','Subscript','Superscript','JustifyLeft','JustifyCenter','JustifyRight','JustifyFull'],
['TextColor','BGColor','Rule','PageBreak'],['NumberedList','BulletedList','Outdent','Indent'],
'/',
['Blockquote','Smiley'],['Link','Unlink','Anchor'],
['Image','Flash','video','fileicon','Table','HorizontalRule','SpecialChar'],
'/',
['Styles','Format','Font','FontSize'],['ShowBlocks'],['syntaxhighlight'],['Templates']
");
you see the option ['syntaxhighlight']? This places the Syntax-Highlighter-Button in your toolbar.
===== Edit the template.php of your theme =====
you will have to add some stylesheets and scripts to your template-header, otherwise the visual effect of the syntax-highlighter will not work. Make sure you include a line for each kind of language you intend to display.
In case that the syntaxhighlighting still does not work at your site, you might add one more script-tag to your template.php:
===== How to use =====
After all, you will see a new icon in your toolbar:\\
{{:how_to:ckeditor_plugin_syntaxhighlight.jpg|}}\\
Click on that icon, you will see that PHP is the predefined language:\\
{{:how_to:ckeditor_plugin_syntaxhighlight_2.jpg|}}\\
Now you can enter your code-snippet and after saving, \\
{{:how_to:ckeditor_plugin_syntaxhighlight_3.jpg|}}\\
it will be integrated nicely formatted into your page.\\
A screenshot:\\
{{:how_to:ckeditor_plugin_syntaxhighlight_4.jpg|}}