PHP: GeSHi Syntax Highlighter Enable / Disable Line Numbers

Posted on in Categories last updated June 25, 2012

I‘m using GeSHi under php to highlight a source code. How do I turn on or off line numbers using GeSHi?

GeSHi has the ability to add line numbers to your code. You can turn on or off this features as per your requirements. To highlight a source with line numbers, you call the enable_line_numbers() method. The syntax is:

  $geshi->enable_line_numbers($flag);

Where $flag is one of the following:

  • GESHI_NORMAL_LINE_NUMBERS – Use normal line numbering.
  • GESHI_FANCY_LINE_NUMBERS – Use fancy line numbering.
  • GESHI_NO_LINE_NUMBERS – Disable line numbers (default).

The following code will disable line numbers:

      $tabstop = 2;
      $code = trim($matches[5], '\r\n');
      $code = str_replace('< pre>', '</pre>', $code);
 
      // Create a new GeSHi for our code
      $geshi =& new GeSHi($code, $lang);
      $geshi->set_tab_width($tabstop);
 
      //Disable line numbers
      $geshi->enable_line_numbers(GESHI_NO_LINE_NUMBERS);
      return $geshi->parse_code();

To enable fancy line numbering:

      //Enable fancy numbering:
      $geshi->enable_line_numbers(GESHI_FANCY_LINE_NUMBERS);

Reference:

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin and a trainer for the Linux operating system/Unix shell scripting. He has worked with global clients and in various industries, including IT, education, defense and space research, and the nonprofit sector. Follow him on Twitter, Facebook, Google+.

Leave a Comment