Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Подсветка синтаксиса кода [3]

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (7): « 1 2 [3] 4 5 6 7 »   

> Описание: PHP, JavaScript, HTML, CSS
Саныч Модератор
Отправлено: 17 Января, 2013 - 02:14:26
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
OrmaJever пишет:
подсветка ведь правельная?
Нет. Комментарии все также сжирает по максимуму. И в конце дописывает */ Скидую еще раз код
Спойлер (Отобразить)
Вот после ?> дописало */ ну и подсветка естественно неправильная.
И строка с управляющими кострукциями все также подсвечиваеться...


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
OrmaJever Модератор
Отправлено: 17 Января, 2013 - 02:57:54
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
Саныч я чёт не могу понять, может мы на разные сайты код вводим?))))))
Вот скрины, я только что проверил этот код.



-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Саныч Модератор
Отправлено: 17 Января, 2013 - 03:41:22
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
если вставить код скопированный с форума, то все норма, но там добвляются переносы строк.
Если же я вставляю код с редактора, там переносов строк нет (обрати внимание на скрин) и вот он уже нормально не отображается и в конце дописываются символы */ Я обвел их там кружком для наглядности.
Прикреплено изображение (Нажмите для увеличения)
Снимок.PNG


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
EuGen Администратор
Отправлено: 17 Января, 2013 - 04:24:50
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
Eval, к примеру, не подсветился. Подозреваю, что и все функции там регистрозависимы(тогда как в php - нет)


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
OrmaJever Модератор
Отправлено: 17 Января, 2013 - 05:08:18
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
EuGen пишет:
Eval, к примеру, не подсветился. Подозреваю, что и все функции там регистрозависимы(тогда как в php - нет)

Исправлено.
Блин Саныч Мне надо больше информации. Дай скрин как есть в редакторе и как есть у меня, и обьсни чего там в редакторе нет.
(Добавление)
А я тем временем добавил приведение типов (int), (string) ...


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Саныч Модератор
Отправлено: 17 Января, 2013 - 05:51:46
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
В основном редакторе

В notepad++

На сайте

Называется найди 3 отличия)
Код немножко другой, звезды и слеша в конце не добавляется, но с комментариями явно проблема.


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
OrmaJever Модератор
Отправлено: 17 Января, 2013 - 06:35:14
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
Ладно, завтра после работы приду и буду смотреть.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
OrmaJever Модератор
Отправлено: 17 Января, 2013 - 07:18:42
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
Добавил:
1) Если нет ни одного тега <? то код весь код считается как php.
2) Добавил забытый 3 вид коментариев #
3) Нашёл узкое место из-за которого код работал в 5 раз медленее. Исправил.
4) Саныч Исправил проблему с коментариями, сам это увидел когда смотрел код ipb.
5) Потихоньку начал учить парсер подсказывать ошибки. Пока только 3 вида ошибок (переменая начинается с числа, не закрытый heredoc и незакрытая строка).
В планах пользовательские константы, но блин с ними столько нюансов.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
OrmaJever Модератор
Отправлено: 17 Января, 2013 - 08:02:10
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
Как сказал Мелкий
Мелкий пишет:
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.

Вчера у меня был вечер без интернета и было время поразмыслить над кодом, обдумал логику и поменял приоритеты парсинга слов, вобщем пепеписал большую часть кода что позволило подсвечивать пользовательские константы. Так же зделал подсветку 3 видов скобок "(luneQuote)" "{figureQuote}" "[sqrQuote]".
Теперь этот код мне начинает нравится.
Киньте ещё пару кодом туда если не лень, особено те с котрыми раньше были проблемы.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
esterio
Отправлено: 17 Января, 2013 - 08:45:38
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
Ну вот нашел
бросаю код сюда
Спойлер (Отобразить)

>> У Вас не закрыта строка. Открыта в 134 строке.
но код рабочый с вордпреса


Блин какая-то мания на парсеры, я тоже сел делать свой, но тем способом что я описивал, пока нет времени продолжать, но наработка есть
 
 Top
Саныч Модератор
Отправлено: 17 Января, 2013 - 09:29:06
Post Id



Участник


Покинул форум
Сообщений всего: 1365
Дата рег-ции: Июль 2010  
Откуда: Украина, Запорожье


Помог: 62 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"

esterio, а где вы свой способ описывали? Я похоже пропустил что-то.
Я вот над своим JS парсером второй день уже безуспешно бьюсь и все чаще прихожу к мысли, что OrmaJever все-таки прав, с регулярками трудно учесть полностью все. Все равно вылазят какие-то ошибки и недочеты... В итоге задумываюсь переделать его на посимвольное чтение. Пока не решил, в раздумьях еще, вот думал может у вас какая-то другая идея будет Улыбка


-----
Все возражают против того, что я гений, хотя никто еще так меня не назвал. - Орсон Уэллс
 
 Top
OrmaJever Модератор
Отправлено: 17 Января, 2013 - 10:12:34
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
опять какие-то проблемы с коментариями, кто их только придумал... Придётся переписывать наверно метод коментариев.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
esterio
Отправлено: 17 Января, 2013 - 10:56:02
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
Саныч
http://forum.php.su/topic.php?fo...92725#1358092725
в ПХП есть встроеная функция которая фозвращает массив после парсинга ядром. Но вот искал для JS - такого не было. Есть правда мысль использовать движок фокса или V9 от гугля, но тогда должен крутиться демон(не уверен получиться ли, никогда не лез в даного рода движки). Ну и еще может есть на стороне клиента возможность, должен как-то браузер парсить JS. МБ стоить почитать АПИ, незнаю. Но вот для ПыХы все намного проще
(Добавление)
OrmaJever пишет:
опять какие-то проблемы с коментариями, кто их только придумал... Придётся переписывать наверно метод коментариев.



Та да, у Вас там походу идет парсинг phpDoc. Слижком много вариантов. Если не секрет сколько в строк(не символов) уместилась регулярка, или Вы несколькома делаете, и вообще сколько код весит. Интересно

И да Саныч прав, составлять список трудоемкый процес
 
 Top
OrmaJever Модератор
Отправлено: 17 Января, 2013 - 11:39:30
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
блин один и тот же метод парсинга пробельных символов уже 3 раз виноват... я его правлю, а он без спросу перемещается по строкам и снова портит подсветку. Исправил окончательно.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
esterio
Отправлено: 17 Января, 2013 - 12:22:58
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




Перенесено из темы "Подсветка синтаксиса PHP"
OrmaJever пишет:

Парсер не использует не единой регулярки.

Сорри не увидел
 
 Top
Страниц (7): « 1 2 [3] 4 5 6 7 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Хранение данных, их вывод и обработка »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB