[prev] [sitemap] [gateway] [next]

Another HTML-lint

目次 
はじめに        ゲートウェイサーヴィス
いくつかの覚え書き      軽いゲートウェイ
htmllint.cgiの使い方        結果の解説
htmllintの使い方           タグ一覧
ダウンロード              色見本
規則ファイルの生成
参考までに          プライマリサイト

htmllint の使い方

Another HTML-lint は、Perl4では動作しません。JPerlではうまく動作しないかも知れません。
htmllint は、htmllint.pm を呼び出すだけのスクリプトで、チェッカ本体は htmllint.pm です。htmllint は、UNIXやWin32のコンソールなどで、次のように起動します。

    perl htmllint options file.html...

MacOSでは、htmllint にHTMLファイルをドラッグ&ドロップします。

htmllint.env が htmllint と同じディレクトリに存在していれば読み込みます。その際、規則ファイルの場所を指示している $RULEDIR と、インクルードパスの指定などが動作に影響します。

オプションには以下が指定できます。背反するオプションの既定値には (*) 印が付いています。

  -d <warn>     : 指定された警告を無効にします。(各警告はコンマで区切る)
  -e <warn>     : 指定された警告を有効にします。(各警告はコンマで区切る)
  -f <file>     : 設定ファイルを指定します。
  -pedantic     : すべての警告を有効にします。(このとき -d -e の指定無効)
  -nopedantic   : すべての警告を有効にすることはしません。(*)
  -religious    : 宗教的な警告を有効にします。(*)
  -noreligious  : 宗教的な警告を無効にします。
  -accessibility   : アクセシビリティ向上に関する警告を有効にします。(*)
  -noaccessibility : アクセシビリティ向上に関する警告を無効にします。
  -banner       : 処理開始と終了メッセージを表示します。(*)
  -nobanner     : 処理開始と終了メッセージを表示しません。
  -score        : チェックした HTML の点数を表示します。(*)
  -noscore      : チェックした HTML の点数を表示しません。
  -prune        : ディレクトリ指定のとき下位ディレクトリを探しません。
  -noprune      : ディレクトリ指定のとき下位ディレクトリを探します。(*)
  -warnings     : チェックによる警告を表示します。(*)
  -nowarnings   : チェックだけして何も警告を表示しません。
  -listwarnings : サポートされているすべての警告を表示します。
  -w <style>    : 警告メッセージのスタイルを指定します。(右がそのスタイルです)
                    <style> = lint       file(#): warning
                            = short      #: warning
                            = long       #: warning-id: warning
                            = terse      file:#:warning-id
                            = verbose    file: #: warning-id: warning
                  指定がないときは lint とみなします。
  -limit <n>    : 警告が指定された個数を超えた場合はチェックを打ち切ります。
  -x <html>     : 指定された HTML ヴァージョンでチェックします。(大文字小文字区別なし)
                        ただし HTML 中に有効な DOCTYPE があるときは無効です。
                    <html> = html10
                           = html20 | RFC1866
                           = html2x | RFC2070 | i18n
                           = html30 | arena
                           = html32 | wilbur
                           = html40 | html40s | html40-strict
                           = html40t | html40-transitional
                           = html40f | html40-frameset
                           = html40m | html40-mobile
                           = 15445 | iso-html
                           = mozilla20
                           = mozilla30 | navigator
                           = mozilla40 | communicator | netscape
                           = ie30b | msie30b
                           = ie30 | msie30
                           = ie40 | msie40 | microsoft
                           = webexp
                           = compact-html
                           = imode
                           = jpo
                  指定がないときは html20 とみなします。
  -igndoctype   : HTML 中の DOCTYPE 宣言を無視します。
  -usedoctype   : HTML 中の DOCTYPE 宣言を無視しません。(*)
  -igncharset   : CHARSET の指定とコードの一致性を無視します。
  -usecharset   : CHARSET の指定とコードの一致性を無視しません。(*)
  -local        : HTML 中のローカルファイルの参照を許可します。(*)
  -nolocal      : HTML 中のローカルファイルの参照を禁止します。
  -r <dir>      : 規則ファイルのディレクトリを指定します。指定がなければ htmllint と
                  同じ場所とみなされます。
  -v | -version : ヴァージョンを表示します。
  -u | -help    : このメッセージを表示します。

オプションはフルスペルで書く必要はありません。ユニークになる所までで構いません。例えば、-noscore は、-nos でOKです。背反するオプションは、後から指定した方が有効です。-e や -d を複数指定することもできます。 htmllint 内の $add_options に、既定のオプションを指定しておくこともできます。

-d や -e で指定する警告は、それぞれの警告の名前を指定します。複数指定するときは、-e unref-link,required のようにコンマで区切って指定します。-e や -d の後に空白を空け、コンマの前後に空白を空けてはいけません。また、-e unref-link -e required のように、別々のオプションとして指定することもできます。すべての警告の名前は、htmllint.html や htmllintrc を参照してください。また、-listwarnings オプションで全警告を表示させることもできます。そのとき、短縮名の付いている警告は、-e や -d の指定でそれを用いることができます。

-f で指定する設定ファイルは、サンプル htmllintrc が添付されています。これを加工して利用してください。また、環境変数 HTMLLINTRC で指定しておくと、起動時オプションを指定しなくてもそれを読みに行きます。htmllint.env 中の $HTMLLINTRC 変数に設定ファイル名を指定することができます。指定されているファイルが、. から始まっていない場合は、htmllint と同じディレクトリに存在する場合もそれが読み込まれます。.htmllintrc のように、. から始まるファイル名の場合は、UNIXのときに利用され、環境変数HOMEで示されるディレクトリにそのファイルがあると、初期状態として読み込みます。添付されている htmllintrc を参照してください。

ファイル名 - は標準入力を表わします。ファイルリストには、ワイルドカードを使用して *.html などと書くことができます。また、ディレクトリ名を指定すると、そのディレクトリ以下の(サプディレクトリも含む)すべての *.html、*.htm や *.shtml などが対象となります。この拡張子は、htmllint.env の $HTMLEXT 変数で変更することができます。サブディレクトリ以下を除きたいときは -prune オプションを併用します。
何もエラーがなければエラーステータス 0 で終了します。エラーがあれば標準出力に結果を出力し、エラーステータス 1 で終了します。

例えば、UNIXで、カレントディレクトリ以下のすべての .html をチェックするには次のようにすることもできます。

    perl htmllint -banner `find . -name "*.html"`

HTML中で参照しているURLが実際に存在するかどうかは、htmllint.cgi経由でないと調べられません。htmllint単体では調べられないので注意してください。これは、インタネットへのアクセスをすべてhtmllint.cgiで行なっているからです。

注意: 仕様は予告なく変更されます。


このサイトの運営は作者が行なっているわけではありませんのでご注意ください。作者が管理しているのはプライマリサイトだけです。

Updated: Jun 09, 1999
Created: Jun 19, 1997 (c) by k16@chiba.email.ne.jp
PostPet: k16pet@kinchan.com

[prev] [sitemap] [gateway] [next]