X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/ecf2408bf64de1aee3bb8b79f6e28c14b52cf1c4..27193a2eeba3aa2f5ed8c0168f828149696b2b7f:/doc/todo/syntax_highlighting.mdwn diff --git a/doc/todo/syntax_highlighting.mdwn b/doc/todo/syntax_highlighting.mdwn index d9a791c6f..87ba77cad 100644 --- a/doc/todo/syntax_highlighting.mdwn +++ b/doc/todo/syntax_highlighting.mdwn @@ -1,9 +1,13 @@ There's been a lot of work on contrib syntax highlighting plugins. One should be picked and added to ikiwiki core. -Ideally, it should support both converting whole source files into wiki +We want to support both converting whole source files into wiki pages, as well as doing syntax highlighting as a preprocessor directive -(which is either passed the text, or reads it from a file). +(which is either passed the text, or reads it from a file). But, +the [[ikiwiki/directive/format]] directive makes this easy enough to +do if the plugin only supports whole source files. So, syntax plugins +do no really need their own preprocessor directive, unless it makes +things easier for the user. ## The big list of possibilities @@ -26,6 +30,11 @@ pages, as well as doing syntax highlighting as a preprocessor directive * [[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 * Using non-perl syntax highlighting backends is slow. I'd prefer either @@ -100,24 +109,12 @@ like this: return; } -## format directive - -Rather than making syntax highlight plugins have to provide a preprocessor -directive as well as handling whole source files, perhaps a generic format -directive could be used: - - \[[!format pl """..."""]] - -That would run the text through the pl htmlizer, from the syntax hightligh -plugin. OTOH, if "rst" were given, it would run the text through the rst -htmlizer. So, more generic, allows mixing different types of markup on one -page, as well as syntax highlighting. Does require specifying the type of -format, instead of allowing it to be guessed (which some syntax highlighters -can do). (This directive is now implemented..) +## format directive and comments -Hmm, this would also allow comments inside source files to have mdwn -embedded in them, without making the use of mdwn a special case, or needing -to postprocess the syntax highlighter output to find comments. +Hmm, the [[ikiwiki/directive/format]] directive would also allow comments +inside source files to have mdwn embedded in them, without making the use +of mdwn a special case, or needing to postprocess the syntax highlighter +output to find comments. /* \[[!format mdwn """ @@ -125,4 +122,5 @@ to postprocess the syntax highlighter output to find comments. """]] */ -Note that this assumes that directives are expanded in source files. +Note that this assumes that directives are expanded in source files, +which has its own set of problems.