]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/todo/syntax_highlighting.mdwn
link to HEAD instead of today's sha1 of hlsimple.pm
[ikiwiki.git] / doc / todo / syntax_highlighting.mdwn
index 5df1857050e0585daf457f0109517af387e59823..b5d083ba531d207cb5a85858ea06baaa766d1b22 100644 (file)
@@ -7,22 +7,29 @@ pages, as well as doing syntax highlighting as a preprocessor directive
 
 ## The big list of possibilities
 
-* [[plugins/contrib/highlightcode]] uses [[cpan Syntax::Highlight::Engine::Kate]],
+* [[plugins/contrib/highlightcode]] uses [[!cpan Syntax::Highlight::Engine::Kate]],
   operates on whole source files only, has a few bugs (see
   [here](http://u32.net/Highlight_Code_Plugin/), and needs to be updated to
   support [[bugs/multiple_pages_with_same_name]].
-* [[cpan IkiWiki-Plugin-syntax]] only operates as a directive.
+* [[!cpan IkiWiki-Plugin-syntax]] only operates as a directive.
   Interestingly, it supports multiple highlighting backends, including Kate
   and Vim.
 * [[plugins/contrib/syntax]] only operates as a directive
   ([[not_on_source_code_files|automatic_use_of_syntax_plugin_on_source_code_files]]),
-  and uses [[cpan Text::VimColor]].
+  and uses [[!cpan Text::VimColor]].
 * [[plugins/contrib/sourcehighlight]] uses src-highlight, and operates on
   whole source files only. Needs to be updated to
   support [[bugs/multiple_pages_with_same_name]].
 * [[sourcecode|todo/automatic_use_of_syntax_plugin_on_source_code_files/discussion]]
   also uses src-highlight, and operates on whole source files.
   Updated to work with the fix for [[bugs/multiple_pages_with_same_name]].  Untested with files with no extension, e.g. `Makefile`.
+* [[users/jasonblevins]]'s code plugin uses src-highlight, and supports both
+  while file and directive use.
+
+* [hlsimple](http://pivot.cs.unb.ca/git/?p=ikiplugins.git;a=blob_plain;f=IkiWiki/Plugin/hlsimple.pm;hb=HEAD) is a wrapper for the the perl module Syntax::Highlight::Engine::Simple.  This is pure perl, pretty simple, uses css. It ought to be pretty fast (according to the author, and just because it is not external).
+On the other hand, there are not many predefined languages yet.  Defining language syntaxes is about as much 
+work as source-highlight, but in perl.  I plan to package the base module for debian. Perhaps after the author 
+releases the 5 or 6 language definitions he has running on his web site, it might be suitable for inclusion in ikiwiki. [[DavidBremner]]
 
 ## General problems
 
@@ -41,7 +48,7 @@ pages, as well as doing syntax highlighting as a preprocessor directive
   inside source files. Doing this probably means post-processing the 
   results of the highlighting engine, to find places where it's highlighted
   comments, and then running them through the ikiwiki rendering pipeline.
-  This seems fairly doable with [[cpan Syntax::Highlight::Engine::Kate]],
+  This seems fairly doable with [[!cpan Syntax::Highlight::Engine::Kate]],
   at least.
 * The whole-file plugins tend to have a problem that things that look like
   wikilinks in the source code get munged into links by ikiwiki, which can
@@ -88,7 +95,7 @@ like this:
     index 8d728c9..1bd46a9 100644
     --- a/IkiWiki.pm
     +++ b/IkiWiki.pm
-    @@ -618,6 +618,8 @@ sub pagetype ($) { #{{{
+    @@ -618,6 +618,8 @@ sub pagetype ($) {
        
        if ($page =~ /\.([^.]+)$/) {
                return $1 if exists $hooks{htmlize}{$1};
@@ -96,7 +103,7 @@ like this:
     +          return $page;
        }
        return;
-     } #}}}
+     }
 
 ## format directive