Форумы портала PHP.SU » PHP » PEAR и PECL » Подсветка синтаксиса

Страниц (3): [1] 2 3 »
 

1. OrmaJever - 23 Декабря, 2013 - 12:24:16 - перейти к сообщению
Уже пару раз откладывал этот код из-за проблем с компиляцией, потом линковкой, но всё таки решил во всём разобраться и доделать.
https://www[dot]dropbox[dot]com/s/seot41[dot][dot][dot]qh/highlight[dot]zip
в архиве готовая либа для 5.4-win и 5.5-win, и папка higlight для линукса.
CODE (htmlphp):
скопировать код в буфер обмена
  1. apt-get install php5-dev
  2. phpize
  3. ./configure
  4. make install

и небольшой php код для проверки этой балалайки
Спойлер (Отобразить)


Если вдруг будет падать php, то скидывайте сюда код при котором это случилось.
2. esterio - 23 Декабря, 2013 - 12:33:05 - перейти к сообщению
OrmaJever
всетаки доработал, счас посмотрим
(Добавление)
а как использовать?
3. OrmaJever - 23 Декабря, 2013 - 12:36:23 - перейти к сообщению
функция php_highlight, первый параметр это php код, про второй расскажу попозже
4. esterio - 23 Декабря, 2013 - 12:38:23 - перейти к сообщению
Ошыбка
PHP 5.4.16 OpenServer
5. OrmaJever - 23 Декабря, 2013 - 12:41:33 - перейти к сообщению
закинь её пока в папку с расширением или в system32
https://www[dot]dropbox[dot]com/s/8x4xlq[dot][dot][dot]bgcc_s_dw2-1[dot]dll
а я пока подумаю как её статически слинковать
6. esterio - 23 Декабря, 2013 - 12:47:10 - перейти к сообщению
не катит ни в system32 ни в каталог с апачем ни в каталог с PHP ((
7. OrmaJever - 23 Декабря, 2013 - 12:52:31 - перейти к сообщению
ладно сейчас попробую решить эту проблему
8. Мелкий - 23 Декабря, 2013 - 12:52:54 - перейти к сообщению
Не распознан один ::
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. final class foo {
  3.         static function bar() {
  4.         echo __METHOD__;
  5.         }
  6. }
  7. $f = 'foo';
  8. $f::bar();
  9. foo::bar();
  10. echo php_highlight(file_get_contents(__FILE__));


Цитата:
melkij@php-sandbox:~/hl$ php -f test.php
foo::barfoo::bar<span class="openTag">&lt;?php</span><br /><span class="keyword">final</span>&nbsp;<span class="keyword">class</span>&nbsp;<span class="userClass">foo</span>&nbsp;<span class="OddFigureQuote">{</span><br />&nbsp;&nbsp;&nbsp;<span class="keyword">static</span>&nbsp;<span class="keyword">function</span>&nbsp;<span class="Method">bar</span><span class="luneQuote">(</span><span class="luneQuote">)</span>&nbsp;<span class="EvenFigureQuote">{</span><br />&nbsp;&nbsp;&nbsp;<span class="keyword">echo</span>&nbsp;<span class="stdConst">__METHOD__</span>;<br />&nbsp;&nbsp;&nbsp;<span class="EvenFigureQuote">}</span><br /><span class="OddFigureQuote">}</span><br /><span class="variable">$f</span>&nbsp;<span class="operator">=</span>&nbsp;<span class="sString">'foo'</span>;<br /><span class="variable">$f</span>::<span class="userFunct">bar</span><span class="luneQuote">(</span><span class="luneQuote">)</span>;<br /><span class="userClass">foo</span><span class="operator">::</span><span class="Method">bar</span><span class="luneQuote">(</span><span class="luneQuote">)</span>;<br /><span class="keyword">echo</span>&nbsp;<span class="userFunct">php_highlight</span><span class="luneQuote">(</span><span class="stdFunct">file_get_contents</span><span class="luneQuote">(</span><span class="stdConst">__FILE__</span><span class="luneQuote">)</span><span class="luneQuote">)</span>;<br />melkij@php-sandbox:~/hl$
9. OrmaJever - 23 Декабря, 2013 - 13:45:47 - перейти к сообщению
Мелкий пишет:
$f = 'foo';
$f::bar();

Как говорится жизнь меня к такому не готовила Закатив глазки
Проблема была ещё в том что первый bar должен подсвечиваться как метод, а подсвечивается как функция. В общем исправил, ссылка будет всегда с первого поста.
(Добавление)
esterio проблема решена, ссылка в первом посте.
10. esterio - 23 Декабря, 2013 - 14:21:39 - перейти к сообщению
OrmaJever
Теперь ошыбка в версии VisualStudio
11. OrmaJever - 23 Декабря, 2013 - 14:29:46 - перейти к сообщению
Забыл сменить константу, пересобрал.
12. esterio - 23 Декабря, 2013 - 14:36:11 - перейти к сообщению
OrmaJever
Ура заработало, теперь стили надо накидать
13. OrmaJever - 23 Декабря, 2013 - 14:45:09 - перейти к сообщению
я в первом посте скинул тестовый код, там код в textarea писать, и он уже есть с кое какими стилями.
14. esterio - 23 Декабря, 2013 - 14:53:28 - перейти к сообщению
array не видит
15. OrmaJever - 23 Декабря, 2013 - 16:24:46 - перейти к сообщению
исправил

 

Powered by ExBB FM 1.0 RC1