NAME

Quiq::Html::Listing - Programm-Listing in HTML

BASE CLASS

Quiq::Html::Base

SYNOPSIS

  use Quiq::Html::Listing;
  
  my $h = Quiq::Html::Tag->new;
  
  my $obj = Quiq::Html::Listing->new(
      language => 'Perl',
      lineNumbers => 1,
      colNumbers => 79,
      source => $file,
  );
  
  my $html = $obj->html($h);

ATTRIBUTES

anchor => 'doc'|'method'|undef (Default: 'doc')

Setze Methodenanker an den Anfang der eingebetteten Dokumentation zur Methode (im Fall von Perl der POD-Dokumentation) oder an den Anfang der Methode selbst. Im Falle von undef wird kein Anker gesetzt.

colNumbers => $n (Default: 0)

Setze eine Zeile mit Kolumnennummern. Die Mindest-Zeilenlänge ist $n (z.B. 79). Bei colNumbers=>0 werden keine Kolumnennummern gesetzt.

escape => $bool (Default: 1)

Schütze &, >, < in den Daten durch HTML-Entities. Wenn die Daten bereits geschützt sind, kann dies mit escape=>0 abgeschaltet werden. In dem Fall sind die ermittelten Zeilenlängen für Option colNumbers u.U. zu groß.

language => 'Perl' (Default: undef)

Sprache. Aktuell nur 'Perl'.

lineNumbers => $n (Default: 1)

Setze die Zeilennummer an den Anfang jeder Zeile, beginnend mit $n. Bei lineNumbers=>0 wird keine Zeilennummer gesetzt.

minLineNumberWidth => $n (Default: 2)

Minimale Breite der Zeilennummern-Spalte in Zeichen. Ungenutzte Stellen werden mit Leerzeichen aufgefüllt.

source => $filename -or- $strRef (Default: undef)

Inhalt. Dieser kann aus einer Datei oder einem String kommen.

EXAMPLE

Programm:

  1: Command failed: Blob/sdoc_reference/sdoc-highlight perl pod

Ergebnis:

  1: Command failed: Blob/R1/Html/Listing/html-listing.pl html

Im Browser:

Command failed: Blob/R1/Html/Listing/html-listing.pl pod%%CLASS-CODE%%

METHODS

Konstruktor

new() - Konstruktor

Synopsis

  $obj = $class->new(@keyVal);

Objektmethoden

html() - Generiere HTML

Synopsis

  $html = $obj->html($h);
  $html = $class->html($h,@keyVal);

DETAILS

CSS-Klassen

    PREFIX-table|Das gesamte Konstrukt (Tabelle)
    PREFIX-tr-odd|Ungerade Zeile
    PREFIX-tr-even|Gerade Zeile
    PREFIX-td-ln|Zelle für Zeilennummer
    PREFIX-td-cn|Zelle für Kolumnennummer
    PREFIX-td-edge|Eckzelle Kolumnennummer/Zeilennummer
    PREFIX-td-line|Zelle für Zeileninhalt
    PREFIX-doc|Kennzeichnung Doku (bei Perl POD)
    PREFIX-comment|Kennzeichnung Kommentar

VERSION

1.175

AUTHOR

Frank Seitz, http://fseitz.de/

COPYRIGHT

Copyright (C) 2020 Frank Seitz

LICENSE

This code is free software; you can redistribute it and/or modify it under the same terms as Perl itself.