Im Geiste der „Perl Preamble“, wo ein Skript funktioniert, ob ordnungsgemäß durch ein Shell-Skript-Interpreter oder dem Perl-Interpreter ausgeführt ...machen meine Datei lesbar als entweder Perl oder HTML
ich ein Perl-Skript, das enthält eine eingebettete HTML-Dokument (als „heredoc“), dh:
#!/usr/bin/perl
... some Perl code ...
my $html = <<'END' ;
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
... more HTML ...
</HTML>
END
... Perl code that processes $html ...
ich auf dem HTML zu arbeiten in der Lage sein möchte, die innerhalb des Perl-Skript ist und es überprüfen einen Web-Browser, und führen sie nur die Skript, wenn HTML so ist, wie ich es möchte. Um dies zu erreichen, muss die Datei sowohl als HTML-Datei als auch als Perl-Skript geöffnet werden können.
Ich habe verschiedene Tricks mit Perl-Kommentaren und HTML-Kommentaren ausprobiert, kann es aber nicht ganz perfekt machen. Die Datei als Ganzes muss nicht "streng legal" HTML sein (obwohl das eingebettete Dokument sein sollte) ... nur in einem Browser anzeigbar, in dem kein (oder minimaler) Perl-Müll sichtbar ist.
EDIT: Gelöst! Siehe meine eigene Antwort
Ich denke, Ihre Lösungsmenge die leere Menge ist. Wenn Sie perl mit der Datei per shbang assoziieren wollen, benötigen Sie die erste Zeile. Ein SGML-Kommentar kann nicht vor dieser Zeile vorkommen, also werden Sie den Shbang zeigen - und die meisten Browser werden ihn als eigenes Dokument angeben - auch wenn er nicht standardmäßigen HTML-Code enthält. – Axeman
Fügen Sie einfach etwas Javascript hinzu, um den Shebang aus dem DOM zu entfernen! – jrockway
@Axeman, siehe unten leeren;) – JoelFan