ここに掲げたのは、 jweblint 97 v0.12がサポートするwarningの一覧です。 これらのwarningは、 全てconfiguration fileやコマンドラインオプションで、 チェックするかどうかを個別に設定することができます。
Identifierの後ろにenabledとあるものは、 デフォルトで有効になっています。 disabledとなっているものは、 デフォルトでは無効です。 後ろに[EXPERIMENTAL]と書かれているものは、 ベースとなったWeblint v1.017に、 新たに実験的に加えられた機能であることを表しています。 これらは将来変更・削除されることがあります。
各warningについて、 何故そのような警告を出すのか簡単な説明を付けておきましたので、 参考にしてください。 どんなwarningがあるのか、 そして何故そのようなwarningを出すのかよく理解して、 お好み通りに設定してご利用ください。
Identifier: attribute-delimiter (disabled)
RFC 1866によれば、 属性値はシングルクォート (') またはダブルクォート (") で囲むことになっていますが、 実際にデリミッタとしてシングルクォートが使えるブラウザはあまり多くありません。 ポータビリティを考えれば、 常にダブルクォートを使うようにした方が良いでしょう。
Identifier: attribute-format (enabled)
例えば <BODY BGCOLOR="FFFFFF"> など、 属性値のフォーマットが間違っていると、このように警告されます (この例の場合、"#FFFFFF" とすべき)。
Identifier: bad-entity (enabled) [EXPERIMENTAL]
<
や >
のような実体参照 (entity reference) は、
大文字・小文字を区別します。従って、
<
や >
のように書くのは間違いです。
これを <
や >
と同じように解釈してしまうuser agentもあるようですが、
間違った実装です。
これらの誤った実体参照が使われていると、
不明な実体参照であるとして警告します。
URL中に `&
' が出てくる場合 (例: <A HREF="foo.cgi?bar=baz&qux=quux">) などは、
用法としては正しいのですが、
jweblint 97 はこれも不明な実体参照として警告してしまいます。
申し訳ありませんが、このような場合は警告を無視するか、
うるさければチェックを無効にしてください。
Identifier: bad-link (disabled)
ローカルなリンクに限ったチェックですが、 このwarning-identifierを有効にしておくと、 リンク先のファイルが存在するかどうか検証することができます。
Identifier: bad-text-context (enabled)
例えば、UL エレメントのすぐ後にテキストがあるのは、
HTMLドキュメントの構造としておかしな文脈です。
UL や OL などのリストエレメント内では、
テキストは LI エレメント内になければなりません。
同様に、TABLE エレメント内では、
テキストは TD や TH エレメント内にあるべきです。
Identifier: body-no-head (enabled)
厳密に言えば、HTMLの文法上、<HEAD> は必須ではありません。 しかし、 どこまでがヘッダ情報でどこからが本文なのか構造上明らかにするためにも、 ヘッダは <HEAD> で、 本文は <BODY> できちんと囲っておくべきです。
Identifier: closing-attribute (enabled)
タグに対する属性は、常に開始タグに指定します。 終了タグは属性を指定するものではありません。
Identifier: container-whitespace (disabled)
一般に、HTMLドキュメント中の空白文字の位置はあまり重要ではありませんが、 例えばリストエレメント (<LI>) 中の先頭に空白文字があると、 リストの先頭が他と揃わずに不格好な表示になります。
また、アンカーエレメント (<A> ... </A>) の中は通常下線などで強調表示されますが、 この先頭や末尾に空白文字があると、 下線が前後にはみだしてみっともないことになります。 アンカーとしてイメージを使っている場合などは特にそうです。
Identifier: directory-index (enabled)
URLとしてディレクトリが指定された場合、 通常 index.html など (サーバの設定により異なる) のドキュメントが表示されますが、 そのディレクトリに index.html がない場合、 ディレクトリ内のファイルリストが表示されてしまいます。 各ディレクトリには、 indexとなるファイルを置いておいた方が良いでしょう。
Identifier: doctype-mismatch (disabled) [EXPERIMENTAL]
DOCTYPE宣言は、そのHTMLドキュメントがどのヴァージョンのHTMLの仕様に従って書かれているかを明らかにするものです。
従って、-x
オプションなどでHTML拡張を指定する場合は、
指定した拡張とDOCTYPE宣言とが一致しているべきです。
このwarning-identifierが有効になっていると、 指定された拡張と、DOCTYPE宣言の記述との整合性をチェックします。 例えば、DOCTYPE宣言で
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
のようにHTML 3.2が指定されているのに、
jweblint -x Netscape foobar.html
のようにNetscape拡張が指定された場合、 選択された拡張とDOCTYPE宣言とが一致しない旨を警告します。 DOCTYPE宣言がない場合は、 HTML 2.0が指定されたものとみなします。
なお、jweblint 97では、
DOCTYPE宣言でどのヴァージョンのHTMLに従うか書いておけば、
自動的に対応する拡張を認識するようになっています。
-x
オプションなどでいちいちHTML拡張を指定するより、
適切なDOCTYPE宣言を書いておくことを強くおすすめします。
参照: require-doctype
Identifier: element-overlap (enabled)
タグは一般にネストすることができますが、タグが互い違いになっていると、 正しく処理されない場合があります。タグをネストするときには、 一番最後にある開始タグを最初に閉じるようにしましょう。
Identifier: empty-container (enabled)
<P>...</P> や <A>...</A> のようなエレメントは、
<P> ならばパラグラフ、<A> ならばアンカー文字列など、
何らかの内容を囲むために使われます。
これらを中に何も含まない空の状態で用いるのは、正しくない使い方です。
Identifier: expected-attribute (enabled)
一般には、タグの属性は必ず指定しなければならない、 というわけではありませんが、例えば <A> のようなエレメントは、 HREF や NAME といった属性を指定して、 はじめて意味を持ちます。 これらのタグでは、必ず何らかの属性を指定すべきです。
-x <extension>
" を使ってください).
Identifier: extension-attribute (enabled)
jweblint 97では、
デフォルトの仕様は HTML 2.0 に準拠しています。
HTML 3.2 で追加された属性など、
拡張されたマークアップを使いたい場合は、
-x
オプションでどの仕様に従うか、
明示的に指定してください。
-x
オプション等で指定したにもかかわらずこの警告が出る場合は、
そのマークアップは指定された拡張には含まれない、
他の拡張に含まれる属性であることを示しています。
どの拡張にも含まれない属性に対しては、
不明な属性である旨の警告が表示されます。
なお、jweblint 97では、 DOCTYPE宣言でどのヴァージョンのHTMLに従うか書いておけば、 自動的に対応する拡張を認識するようになっています。 適切なDOCTYPE宣言を書いておくことを強くおすすめします。
-x <extension>
" を使ってください).
Identifier: extension-markup (enabled)
extension-attribute同様、
拡張されたマークアップを使いたい場合は、
-x
オプションで指定するか、
使いたい拡張に応じた適切なDOCTYPE宣言を書いておく必要があります。
-x
オプションやDOCTYPE宣言で指定したにもかかわらずこの警告が出る場合は、
そのマークアップは指定された拡張には含まれない、
他の拡張に含まれるエレメントであることを示しています。
どの拡張にも含まれないエレメントに対しては、
不明なエレメントである旨の警告が表示されます。
Identifier: file-url (enabled) [EXPERIMENTAL]
RFC 1738 によれば、 file URL schemeは特定のホストコンピュータにおいてアクセス可能なファイルを指定するもので、 Internet上で普遍的にアクセス可能なリソースを指定するものではありません。 従って、Intranetなど、 ローカルな環境でのみ用いるのであればこれでもいいかもしれませんが、 Internetにおいて一般に公開するWebページにこれを用いるのはふさわしくありません。 HTMLエディタなどでリンクを設定すると、 file URL schemeを使ってリソースを指定するものがあるので、 注意が必要です。
このwarning-identifierが有効になっていると、 file URL schemeが使われていたら警告します。
参照: RFC 1738 の "3.10 FILES"
Identifier: head-element (enabled)
TITLE, NEXTID, LINK, BASE, META といったタグは、 HEAD 内でのみ使うことができるエレメントです。 これらのタグを使う場合は、HEAD で囲んでおくべきです。
Identifier:heading-in-anchor (enabled)
<A NAME="xxx"><H1>Heading</H1></A>
のような書き方より、
<H1><A NAME="xxx">Heading</A></H1>
の方が望ましい書き方です。 HTML 2.0 の DTD にもその旨の記載があります。
Identifier: heading-mismatch (enabled)
当たり前ですが、<H1>Heading</H2> のように、 開始タグと終了タグのレベルが対応していないのはおかしなヘディングです。 ヘディングの開始タグと終了タグは必ず同じレベルのものを使ってください。
Identifier: heading-order (enabled)
ヘディングは見出しのレベルを示すものであって フォントのサイズなどを示すものではありませんから、 例えば <H1> の次に <H3> が出てきたりするのはおかしな使い方です。 RFC 1866 でも、 この様な使い方はすべきでないと明記されています。
Identifier: here-anchor (enabled)
`here' や `ここ' のような内容のない文字列をアンカーとして使用しても、 リンクそのものに関する情報は何も提供してくれません。 これは、特にアンカー文字列をインデックスとして使用するサーチエンジンが 数多くあることを考えると、良くない書き方と言わざるをえません。
こういうのはhere症候群という病気だそうです :-)
Identifier: html-outer (enabled)
HTMLドキュメントの構造として、まずDOCTYPE宣言を書き、 次に <HTML> .. </HTML> でドキュメント全体を囲むのが望ましい書き方です。 実際には、<HTML> はHTMLの文法上は省略可能で、 多くのuser agentはこのタグがなくても問題なく処理してくれます。
しかし、例えば複数のHTMLドキュメントをまとめてデータベースに格納している場合など、 各ドキュメントが <HTML> .. </HTML> で囲まれていれば、 必要なドキュメントだけを抜き出すのが容易になるなど、 再利用性を向上させることができます。
また、国際化に対応した HTML 2.x (RFC 2070) などでは、 <HTML LANG="ja-JP"> のように LANG 属性を指定して、 そのHTMLドキュメントがどの言語で書かれているかを示すことができます。 その意味でも、 構造を明らかにするために <HTML> を書いておくべきです。
Identifier: illegal-closing (enabled)
<IMG> や <INPUT>、 <OPTION> などのエレメントは単独で用いられるタグで、 終了タグはありません。これらのタグに終了タグをつけるべきではありません。
ただし、よく誤解されますが、 <P> は <P> .. </P> のように、 原則として組になって使われるべきタグです (終了タグは省略可能)。 <P> は段落の最後ではなく、段落の最初に書くべきです。
Identifier: img-alt (enabled)
IMG タグに ALT テキストが定義されていないと、 Lynxなどのテキストベースのuser agentではイメージを見ることができないので、 そのイメージが一体何を表しているのかわかりません。 視覚障害者が音声出力端末で利用する場合なども同様です。 特に、そのイメージがアンカーとして使われている場合は、 何にリンクされているのか全くわからないことになってしまいます。
イメージを表示できるグラフィカルなブラウザでも、 イメージがロードされるまでの間 ALT テキストを表示したり、 イメージをロードしない設定にしておくと代わりに ALT テキストが表示されるものもありますので、 IMG には必ず意味のある ALT テキストを定義しておくようにしましょう。 装飾的な意味しかないイメージであれば、 ALT="" などとして、 イメージの痕跡を消してしまいましょう。
Identifier: img-size (disabled)
Identifier: leading-whitespace (enabled)
開始タグの中では、 エレメント名と `>' の間には空白文字を入れることができますが、 `<' とエレメント名の間には、空白文字を入れてはいけません。
Identifier: literal-metacharacter (enabled)
`>' のようなメタキャラクタを文中にそのまま書いてしまうと、 user agentが誤って解釈してしまうおそれがあります。 メタキャラクタは `>' のように、 実体参照 (entity reference) を使って表すべきです。
Identifier: lower-case (disabled)
HTMLのタグは、大文字で書いても小文字で書いても構いません。 しかし、好みでタグを大文字や小文字に統一して書きたい場合もあるでしょう。 このwarning-identifierを有効にしておくと、 タグが小文字でなかった場合に注意を促すことができます。
参照: upper-case, mixed-case
Identifier: mailto-link (disabled)
LINK タグに REV=MADE と書いておくことで、 そのHTMLドキュメントの作者に関する情報を含めることができます。 このように HREF 属性を使ってページ作者のメールアドレスを書いておくと、 Lynxなどのuser agentでは、 そのアドレス宛に、メールでコメントを送ったりすることができます。
Identifier: markup-in-comment (enabled)
HTMLの文法上は、コメント中にマークアップを含んでいても構いません。 しかし、歴史的な理由で、 `>' が出てくるとコメントの終了と解釈してしまう実装も存在します。 正しく実装していない方が悪いのですが、混乱を避けるためには、 コメント中にはマークアップを含まない方が安全です。
参照: RFC 1866 の "3.2.5. Comments";
unclosed-comment,
unterminated-comment
Identifier: meta-in-pre (enabled)
<PRE> .. </PRE> の中では、 整形済みのテキストがそのまま表示されますが、 <A> や <EM> といったタグは使うことができます。 マークアップとの混同を避けるためにも、たとえ PRE の中であっても、 `>' などのメタキャラクタは `>' のように実体参照を使って表すべきです。
Identifier: mis-match (enabled)
終了タグに対応する開始タグがないと、このように警告されます。 タグの囲む範囲が大きくなってくると、 ついつい対応がおかしくなってしまうことがあります。
特に UL や OL のようなリストエレメントを幾重にもネストしている場合、 うっかり開始タグと終了タグの対応がおかしくなってしまうことがあるので、 注意が必要です。
Identifier: mixed-case (enabled)
HTMLのタグは、大文字で書いても小文字で書いても構いません。 従って、このwarning-identifierが有効になっていても、 いちいち警告が表示されることはありません。
ただし、jweblint 97では、 好みでタグを大文字や小文字に統一して書きたい場合に、 その旨の注意を促すよう設定することもできます。
参照: lower-case, upper-case
Identifier: must-follow (enabled)
例えば <HEAD> は <HTML> の直後に、 <BODY> は </HEAD> の直後に表れねばなりません。 これらの間に別のタグやテキストがあった場合、上記のように警告されます。
Identifier: nested-element (enabled)
<A> や <FORM> のようなエレメントは、 ネストすることができません。 特に <A> をネストしていると大きな混乱を引き起こすので、 そのような使い方をしてはなりません。
Identifier: non-ascii (disabled) [EXPERIMENTAL]
HTML 2.0 (RFC 1866)では、 HTMLドキュメントに使える文字は公式にはISO-8859-1 (Latin-1)で定義されたものに限られていました。 しかし、現実には、 他の言語を表現するために様々な文字集合・符号化方式 (エンコーディング) が使われてきました。 それらはおおむね、 7 bit部分はUS-ASCIIと互換性がありますが、 8 bit全てを使った部分には互換性がないのが普通です。
HTMLの国際化規格であるRFC 2070がリリースされたことにより、 扱える文字集合はISO/IEC 10646-1:1993 UCS-4 with implementation level 3に規定されたもの、 と飛躍的に拡大されましたが、 符号化方式については特定のものに限定されてはいません。 そのため、異なる符号化方式で表示しようとすると、 意図したものとは異なる文字が表示されてしまうことがあります。
例えば、ISO-8859-1で0xA9
の文字はcopyright記号ですが、
ISO-8859-2で0xA9
の文字は caron付き S (LATIN CAPITAL LETTER S WITH CARON) です。
また、ISO-8859-1で書かれたドキュメントをEUC-JPとして表示しようとすれば、
やはりおかしなことになります。
結局、どの環境でも確実に読めるようにしたければ、 US-ASCIIのみを使って書いておくのが安全です。 このwarning-identifierを有効にしておくと、 ドキュメント中に非 ASCII 文字を使っていないかチェックすることができます。 ただし、判定は1バイトごとに行ないますので、 複数バイト文字が含まれているとおかしな表示になります。
Identifier: non-head-element (enabled)
HEAD エレメント内で使えるタグは、 TITLE, LINK, META, BASE など、いくつかのものに限られています。 BODY エレメント内で用いるような通常のタグを、 HEAD 内で使ってはいけません。
Identifier: obsolete (enabled)
PLAINTEXT, XMP, LISTING といったタグは、 過去との互換性のために残されてはいるものの、すでに廃れたタグです。 新たなドキュメントを書くときにこれらのタグを使うべきではありません。
Identifier: odd-quotes (enabled)
属性値を囲む引用符は、必ず対になっていなければなりません。 特に、<A HREF="foobar.html> .. </A> のように、 アンカータグ内の属性値を囲む引用符が対になっていないと、 多くのuser agentでは大変おかしなことになりかねないので、 注意すべきです。
Identifier: once-only (enabled)
HTML, HEAD, BODY, TITLEといったドキュメントの構造を表すタグは、 1ドキュメント中に1つしか使うことはできません。 TITLE が複数あったりするのは、完全に誤った書き方です。
Identifier: physical-font (disabled)
<I> や <B> といった物理的にフォントのスタイルを指定するタグは、 見栄えについては規定しない、 というSGMLの基本精神からすれば良くないタグです。 また、user agentによってはこれらの指定通りに処理できない可能性もあります。 <EM> や <STRONG> のような、 論理的なマークアップを心掛けた方が良いでしょう。
Identifier: quote-attribute-value (enabled)
属性値は原則として引用符 (" または ') で囲まねばなりません。 ただし、SGMLの規格では、以下のいずれかの場合に該当する場合は、 引用符を省略しても良いことになっています。
属性値が名前文字のみからなっており、 かつSGML宣言で "SHORTTAG YES" と指定されている場合
属性値が名前文字のみからなっており、 かつ属性値が属性宣言で指定されている場合
HTMLのSGML宣言では、"SHORTTAG YES" と指定されており、 名前文字としてアルファベットの大文字 (A-Z)・小文字 (a-z)、 10進数字 (0-9)、ハイフン (-)、ピリオド (.) が指定されています。 属性値が名前文字以外の文字を含む場合は、引用符を省略してはなりません。
例えば、SIZE="+1" のような属性値は、 名前文字以外を含んでいるので、引用符の省略は文法違反になります。 良くわからなければ、 属性値は常に引用符で囲む習慣を付けておいた方が良いでしょう。
Identifier: repeated-attribute (enabled)
同一のエレメント内で、同じ属性が繰り返して指定されてはなりません。 例えば、<IMG SRC="foo.gif" SRC="bar.gif">のような指定は間違っています。
Identifier: require-doctype (enabled)
RFC 1866によれば、 正しい仕様に従ったHTMLドキュメントであることを示すために、 各ドキュメントは必ず
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
といったDOCTYPE宣言で始まらなければならないことになっています。
また、HTML 3.2の仕様でも、 HTML 3.2に従った各ドキュメントは必ず
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
といったDOCTYPE宣言で始まらなければならない旨が規定されています。 HTMLドキュメントには、 必ず適切なDOCTYPE宣言をつけておきましょう。
なお、jweblint 97では、 DOCTYPE宣言が書かれていると、 それに応じて適切な拡張を自動的に認識するようになっています。 その意味でも、DOCTYPE宣言を書いておくことを強くおすすめします。
参照: RFC 1866 の "3.3. HTML Public Text Identifiers",
HTML 3.2 Reference Specification の "The Structure of HTML documents";
doctype-mismatch,
extension-attribute,
extension-markup
Identifier: require-head (enabled)
RFC 1866によれば、
全てのHTMLドキュメントは必ず TITLE エレメントを含んでいなければならないことになっています。
HTML 3.2の仕様でも同様です。
各ドキュメントには、意味のある TITLE をつけておくようにしましょう。
参照: RFC 1866 の "5.2.1. Title", HTML 3.2 Reference Specification の "The Structure of HTML documents"
Identifier: required-attribute (enabled)
多くの属性は必須ではありませんが、 IMG タグの SRC 属性や BASE タグの HREF 属性など、 いくつかのエレメントには必須の属性があります。 これらの属性の指定は省略することはできません。
Identifier: required-context (enabled)
HTMLのドキュメント構造はそれほど厳密ではありませんが、 いくつかのエレメントは、使える文脈が限定されています。 例えば、LI は UL や OL といったリストエレメントの中で使わねばなりませんし、 INPUT や OPTION、TEXTAREA といったエレメントは FORM の中になければなりません。 これらのエレメントが正しい文脈で使われていない場合、警告されます。
Identifier: title-length (enabled)
RFC 1866によれば、 TITLE の長さは制限されてはいないものの、 長すぎる TITLE はいくつかのアプリケーションでは 切り詰められてしまう可能性があるため、 64文字以内に収めるべきことが推奨されています。
実際、多くのuser agentではタイトルバーなどに TITLE を表示するので、 あまり長い TITLE を付けると表示しきれません。 長すぎる TITLE は付けないようにしましょう。
Identifier: trailing-slash (disabled) [EXPERIMENTAL]
URLがディレクトリを指している場合、 "foo/" のように末尾に `/' を付けておかないと、 無駄なトラフィックを生むことになります。 また、実際は通常のファイルなのに、 "foo.html/" のように誤って末尾に `/' がついていると、 リンクが辿れなかったり、例えそのページに飛べても、 その後のリンクが辿れなくなることがあります。
このwarning-identifierが有効になっていると、 ローカルなリンクに限ってですが、 これらの正しくない表記に対して警告します。
Identifier: unclosed-comment (enabled)
正しいコメントの書式では、コメントは `<!' と `>' の間に、 `--' と `--' で囲って書きます。 従って、コメント宣言の終了を表すには、 コメントを閉じる `--' の後に `>' が続かねばならないのですが、 歴史的な理由から、 `>' のみでコメント宣言の終了と解釈してしまう実装が存在します。 しかし、現在では <!-- comment > のような書き方は間違いであり、 このような書き方をしていると、 コメントが閉じられていないとして警告します。
参照: RFC 1866 の "3.2.5. Comments";
markup-in-comment,
unterminated-comment
Identifier: unclosed-element (enabled)
<A> .. </A> のようなタグは必ず開始タグと終了タグのセットで用いられ、 終了タグを省略することはできません。 対応する終了タグが見つからない場合、このように警告されます。
Identifier: unexpected-open (enabled)
例えば <IMG SRC="eq1.gif" ALT="a<b"> のように書かれていると、 IMG エレメントが閉じられていないうちに、 新たなエレメントが表れたかのように解釈されてしまうおそれがあります。 このような書き方をするときは、 `<' は `<' のように実体参照で表されるべきです。
Identifier: unknown-attribute (enabled)
使われている属性がjweblint 97がサポートするいずれの拡張にも含まれない場合、
このように警告されます。
-x
オプションなどで指定した拡張には含まれないが他の拡張には含まれる属性の場合は、
その属性は拡張マークアップである旨の警告がなされます。
Identifier: unknown-element (enabled)
使われているエレメントがjweblint 97がサポートするいずれの拡張にも含まれない場合、
このように警告されます。
-x
オプションなどで指定した拡張には含まれないが他の拡張には含まれるエレメントの場合は、
そのエレメントは拡張マークアップである旨の警告がなされます。
参照: extension-markup
Identifier: unsafe-url (enabled) [EXPERIMENTAL]
RFC 1738 によれば、
URLの記述に使えるのは、
US-ASCIIの図形文字のみとされています。
従って、0x00-0x1F, 0x7F
の範囲の制御文字や、
US-ASCIIでは使われない、
0x80-0xFF
の範囲のコードをURL中に直接記述してはなりません。
これらの文字をURL中に使う場合は、エンコードする必要があります。
このwarning-identifierが有効になっていると、 上記の範囲の安全でない文字がURL中に使われていると警告します。
参照: RFC 1738 の "2.2. URL Character Encoding Issues";
url-backslash,
url-whitespace
Identifier: unterminated-comment (disabled) [EXPERIMENTAL]
正しいコメントの書式では、コメント宣言は `<!' と `>' の間に、 `--' と `--' で囲まれたコメントを複数含むことができます。 従って、コメント宣言中の `--' と `--' の対応がおかしいと、 正しく解釈すると、コメント宣言が終了していないとして、 それ以降は全てコメントと解釈されてしまうことになります。
よくある間違いが、 <!-- -- --> や <!--------------> のような書き方です。
例えばLynx 2.6では、 コメントを「正しく」解釈する設定にしておくと、 上記のようなコメント宣言は終了していないと解釈し、 それ以降を表示しなくなってしまいます。
このwarning-identifierが有効になっていると、 このような `--' の対応が不正なコメントに対して警告します。
参照: RFC 1866 の "3.2.5. Comments";
markup-in--comment,
unclosed-comment
Identifier: upper-case (disabled)
HTMLのタグは、大文字で書いても小文字で書いても構いません。 しかし、好みでタグを大文字や小文字に統一して書きたい場合もあるでしょう。 このwarning-identifierを有効にしておくと、 タグが大文字でなかった場合に注意を促すことができます。
参照: lower-case, mixed-case
Identifier: url-backslash (enabled) [EXPERIMENTAL]
RFC 1738 によれば、 URL中に `\' (backslash) を用いるのは安全ではなく、 これを含む場合には必ずエンコードしなければなりません。 また、URLにおいてpathの区切りを表すのは `/' ですが、 にもかかわらず、Windows環境のHTMLエディタなどでは、 file:\\\c:\www\foobar.htm のようなおかしなURLを埋めこんでしまうものがあります。
このwarning-identifierが有効になっていると、 このようなURL中の不正な `\' の使用に対して警告します。
参照: RFC 1738 の "2.2. URL Character Encoding Issues";
unsafe-url,
url-whitespace
Identifier: url-watch (disabled) [EXPERIMENTAL]
これは、HTMLドキュメント中にある種のURLを使用していないか、 監視できるようにするための機能です。 どのようなURLを監視するかは完全にユーザの裁量に任されています。 どちらかというとwebmaster向きの機能です。
監視対象となるURLは、
変数 `url-watch-list
' に正規表現で指定します。
Identifier: url-whitespace (enabled) [EXPERIMENTAL]
RFC 1738 によれば、 URL中にスペースやタブ、改行といった空白文字を含めるのは安全ではなく、 これらを使う場合は必ずエンコードする必要があります。 特に、長いURLを書いているとつい途中で改行したくなるかもしれませんが、 多くのuser agentでは、 このような空白文字を含んだURLを正しく扱うことはできません。
このwarning-identifierが有効になっていると、 URL中の空白文字の使用に対して警告します。
参照: RFC 1738 の "2.2. URL Character Encoding Issues";
unsafe-url,
url-backslash
石川 雅康 (ISHIKAWA Masayasu)
E-mail: mimasa@aichi-u.ac.jp
jweblintホームページ: http://www.aichi-u.ac.jp/%7Emimasa/jweblint/