tag inside the list items (
  • ) thus producing valid HTML markup. // HEADER_PRE puts the
     tag around the list (
      ) which is invalid in HTML 4 and XHTML 1 // HEADER_DIV puts a
      tag arount the list (valid!) but needs to replace whitespaces with   // thus producing much larger overhead. You can set the tab width though. $geshi->set_header_type(GESHI_HEADER_PRE_VALID); // Enable CSS classes. You can use get_stylesheet() to output a stylesheet for your code. Using // CSS classes results in much less output source. $geshi->enable_classes(); // Enable line numbers. We want fancy line numbers, and we want every 5th line number to be fancy $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS, 10); // Set the style for the PRE around the code. The line numbers are contained within this box (not // XHTML compliant btw, but if you are liberally minded about these things then you'll appreciate // the reduced source output). $geshi->set_overall_style('font: normal normal 90% monospace; color: #000066; border: 1px solid #d0d0d0; background-color: #ffffff;', false); // Set the style for line numbers. In order to get style for line numbers working, the
    1. element // is being styled. This means that the code on the line will also be styled, and most of the time // you don't want this. So the set_code_style reverts styles for the line (by using a
      on the line). // So the source output looks like this: // //
        //
      1. GeSHi - Generic Syntax Highlighter parse_code(); echo '
        '; echo ''; echo ''; exit; } ?>

        GeSHi - Generic Syntax Highlighter

        Source to highlight

        Choose a language