<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; Редактор с подсветкой синтаксиса (HTA, JS)]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=7391</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7391&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Редактор с подсветкой синтаксиса (HTA, JS)».]]></description>
		<lastBuildDate>Thu, 26 Jul 2012 09:57:04 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Редактор с подсветкой синтаксиса (HTA, JS)]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=62048#p62048</link>
			<description><![CDATA[<p>Возможно, вы правы, и msxml4.exe&nbsp; - нестандартный компонент Windows. Погуглите, &quot;msxml&quot;. </p><p>Но физически, это представляет собой один файл msxml.exe и msxml4.dll где-то в недрах system32. Причем, dll зарегистрирована, как класс. Но ее можно не регистрировать, а, просто, подложить рядом к msxml.exe</p><p>XSLT-преобразование - прекрасная вещь для временной подсветки синтаксиса. Причем, можно написать, как прямое, так и обратное преобразование. Этот проект - хороший повод изучить XSLT-преобразования. Фактически, XSLT - это &quot;великий и могучий&quot; язык программирования, решающий специфическую задачу обхода и преобразования одних древовидных структур XML в другие XML.</p><p>Однако, немного поразмыслил. Есть ложка дегтя. XSLT работает только с правильными XML. А термин &quot;HTML-редактор&quot; предполагает, что текст в редакторе может в быть невалидным XML-кодом. Тогда вся эта кухня с XSLT работать не будет. В этом случае, в самом деле, эффективнее будет прямой цикл по тексту в редакторе и замена одних комбинаций текста (идентифицированных, как теги) на другие комбинации текста.</p>]]></description>
			<author><![CDATA[null@example.com (trash0000)]]></author>
			<pubDate>Thu, 26 Jul 2012 09:57:04 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=62048#p62048</guid>
		</item>
		<item>
			<title><![CDATA[Re: Редактор с подсветкой синтаксиса (HTA, JS)]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=62042#p62042</link>
			<description><![CDATA[<p><strong>SergeyA</strong><br />Решения чего нужны? В рамках заданной Вами логики - непрерывная проверка содержимого DIV&#039;а - я не вижу корректного решения. Попробуйте привязать проверку к событию keypress, например, или keyup. <strong>trash0000</strong> предложил интересный вариант, правда, я с XSLT-преобразованиями ещё не на &quot;ты&quot;.</p><p><strong>trash0000</strong><br />В моей винде нет &quot;стандартного файла Windows: msxml4.exe&quot;.<br />W7HB32SP1</p>]]></description>
			<author><![CDATA[null@example.com (Serge Yolkin)]]></author>
			<pubDate>Thu, 26 Jul 2012 08:14:25 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=62042#p62042</guid>
		</item>
		<item>
			<title><![CDATA[Re: Редактор с подсветкой синтаксиса (HTA, JS)]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=62032#p62032</link>
			<description><![CDATA[<p>Цикл не нужен. То, что вы хотите, выполняется, как XSL-преобразование над XML-документом.<br />Возьмите стандартный файл Windows: msxml4.exe Создайте XSL нужного формата, и примените к Вашему HTML-документу.</p>]]></description>
			<author><![CDATA[null@example.com (trash0000)]]></author>
			<pubDate>Wed, 25 Jul 2012 18:17:43 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=62032#p62032</guid>
		</item>
		<item>
			<title><![CDATA[Re: Редактор с подсветкой синтаксиса (HTA, JS)]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=62020#p62020</link>
			<description><![CDATA[<div class="quotebox"><cite>Serge Yolkin пишет:</cite><blockquote><p>будет работать настолько активно, что на отображение результатов работы просто не останется времени.</p></blockquote></div><p>Я догадался, по этому и написал, не нужны советы, нужны решения.</p>]]></description>
			<author><![CDATA[null@example.com (SergeyA)]]></author>
			<pubDate>Wed, 25 Jul 2012 13:24:59 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=62020#p62020</guid>
		</item>
		<item>
			<title><![CDATA[Re: Редактор с подсветкой синтаксиса (HTA, JS)]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=62013#p62013</link>
			<description><![CDATA[<p>Коллега, цвета выделения, типы циклов и, даже, язык программирования рекомендую оставить на потом. Попробуйте продумать логику работы самого редактора. То, что Вы привели в своём посте, работать не будет. Точнее, будет работать настолько активно, что на отображение результатов работы просто не останется времени.</p>]]></description>
			<author><![CDATA[null@example.com (Serge Yolkin)]]></author>
			<pubDate>Wed, 25 Jul 2012 10:22:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=62013#p62013</guid>
		</item>
		<item>
			<title><![CDATA[Редактор с подсветкой синтаксиса (HTA, JS)]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=62012#p62012</link>
			<description><![CDATA[<p>Как сделать цикл чтобы он обрабатывал всё что введётся в &lt;div&gt; и заменял на нужное, поставил while но он полностью тормазит весь скрипт.</p><div class="codebox"><pre><code>&lt;html&gt;
    &lt;title&gt;Editor with syntax highlighting&lt;/title&gt;
    &lt;head&gt;
        &lt;META Http-equiv=&quot;MSThemeCompatible&quot; content=&quot;Yes&quot;&gt;
        &lt;script&gt;
            function GUISetPosition(Left, Top, Width, Height){
                if (Left == -1){ Left = ((window.screen.width / 2) - (Width / 2)); }
                if (Top == -1){ Top = ((window.screen.height / 2) - (Height / 2)); }
                window.resizeTo(Width, Height);
                window.moveTo(Left, Top);
            }
            function Highlight(){
                while (true) {
                    var str = window.document.getElementById(&quot;QControlEdit&quot;).innerHTML;
                    var str = str.replace(&#039;#include&#039;, &#039;&lt;font color=&quot;#D67FFF&quot;&gt;&lt;kbd&gt;&lt;em&gt;#include&lt;/em&gt;&lt;/kbd&gt;&lt;/font&gt;&#039;);
                    window.document.getElementById(&quot;QControlEdit&quot;).innerHTML = str;
                    break;
                }
            }
            GUISetPosition(-1, -1, 669, 338);
        &lt;/script&gt;
        &lt;HTA:APPLICATION ID=&quot;oHTA&quot;
            APPLICATIONNAME=&quot;WMPTour&quot;
            BORDER=&quot;thick&quot;
            BORDERSTYLE=&quot;normal&quot;
            CAPTION=&quot;yes&quot;
            maximizeButton=&quot;yes&quot;
            minimizeButton=&quot;yes&quot;
            ICON=&quot;explorer.exe&quot;
            SHOWINTASKBAR=&quot;no&quot;
            SINGLEINSTANCE=&quot;yes&quot;
            SYSMENU=&quot;yes&quot;
            VERSION=&quot;1.0&quot;
            WINDOWSTATE=&quot;normal&quot;
        /&gt;
    &lt;/head&gt;
    &lt;style&gt;
        * {
            margin: 0; 
            padding: 0;
        }
        body {
            margin: 0;
            padding: 0;
            overflow: hidden;
            border: none;
        }
        .ClassEditor {
            position: releative;
            left: 0px;
            top: 0px;
            padding: 5px;
            background-color: #F4F4F4;
            width: 100%;
            height: 100%;
            overflow: auto;
            color: #808080;
        }
    &lt;/style&gt;
    &lt;body onLoad=&quot;Highlight();&quot;&gt;
        &lt;div id=&quot;QControlEdit&quot; class=&quot;ClassEditor&quot; contenteditable=&quot;true&quot;&gt;
            #include
        &lt;/div&gt;
    &lt;/body&gt;
&lt;/html&gt;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (SergeyA)]]></author>
			<pubDate>Wed, 25 Jul 2012 05:36:24 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=62012#p62012</guid>
		</item>
	</channel>
</rss>
