2

Поэтому я хочу создать веб-сайт XHTML 1.0 Strict. Использование Notepad++ для подсветки синтаксиса пришло мне в голову. Но когда я попытался поместить декларацию XML (как указано в спецификации, правильные страницы XHTML должны использовать декларацию XML и быть использованы как application/xhtml+ xml), я не могу выделить весь документ с опережением. Вот код, который я использовал для базовой страницы:

<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-us" lang="en-us">
    <head>
        <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />
        <title>Page</title>
        <script type="application/javascript">
                alert("A perfectly valid xHTML page...");
        </script>
        <style type="text/css">
                #test {
                    text-align: center;
                }
        </style>
    </head>
    <body>
        <h1 id="test">TEST</h1>
    </body>
</html>

Вставьте это в Notepad++, и вы увидите, что он не будет выделять код между <script type="application/javascript"> и </script> (он отображает фон белым цветом), если язык установлен в XML. Если я установлю язык на HTML, сценарий будет выделен правильно, а объявление XML - нет. Что делать? Как сделать гибридный язык - сочетание XML и HTML?

1 ответ1

0

Notepad++ использует расширение файла, чтобы выбрать Lexer (т.е. подсветку) для использования. Если вы сохраните свой файл как .xhtml, он должен начать выделяться правильно. На самом деле вы можете сохранить ваш файл как .html, потому что они оба используют один и тот же Lexer.

Если вы посмотрите файл Notepad++ langs.model.xml вы поймете, что я имею в виду:

<Language name="html" ext="html htm shtml shtm xhtml hta" commentLine="" commentStart="&lt;!--" commentEnd="--&gt;">
    <Keywords name="instre1">!doctype a abbr accept accept-charset accesskey acronym action address align alink alt applet archive area article aside audio axis b background base basefont bdo bgcolor big blockquote body border br button canvas caption cellpadding cellspacing center char charoff charset checkbox checked cite class classid clear code codebase codetype col colgroup color cols colspan command  compact content contenteditable contextmenu coords data datafld dataformatas datalist datapagesize datasrc datetime dd declare defer del details dfn dir disabled div dl draggable dropzone dt em embed enctype event face fieldset figcaption figure file font footer for form frame frameborder frameset h1 h2 h3 h4 h5 h6 head header  height hgroup hidden hr href hreflang hspace html http-equiv i id iframe image img input ins isindex ismap kbd keygen label lang language leftmargin legend li link  longdesc map marginheight marginwidth mark marquee maxlength media menu meta meter method multiple name nav noframes nohref noresize noscript noshade nowrap object ol onabort onafterprint onbeforeonload onbeforeprint onblur oncanplay oncanplaythrough onchange onclick oncontextmenu ondblclick ondrag ondragend ondragenter ondragleave ondragover ondragstart ondrop ondurationchange ondurationchange onemptied onended onerror onfocus onformchange onforminput onhaschange oninput oninvalid onkeydown onkeypress onkeyup onload onloadeddata onloadedmetadata onloadstart onmessage onmousedown onmousemove onmouseout onmouseover onmouseup onmousewheel onoffline ononline onpagehide onpageshow onpause onplay onplaying onpopstate onprogress onratechange onreadystatechange onredo onreset onresize onscroll onseeked onseeking onselect onselect onstalled onstorage onsubmit onsubmit onsuspend ontimeupdate onundo onunload onunload onvolumechange onwaiting optgroup option output p param password placeholder pre profile progress prompt public q radio readonly rel reset rev rows rowspan rp rt ruby rules s samp scheme scope script  section select selected shape size small source span spellcheck src standby start strike strong style sub submit summary sup tabindex table target tbody td text textarea tfoot th thead time title topmargin tr tt type u ul usemap valign value valuetype var version video vlink vspace wbr width xml xmlns</Keywords>
</Language>

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .