[Дизайн] Редактор кода с подсветкой ошибок

Оформление сцен, меню, страниц

Модераторы: immortal, newz20

Аватара пользователя
xor
Сообщения: 1577
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 165 раз
Поблагодарили: 458 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение xor » Пн июн 08, 2020 12:00 am

SmoKE_xDDD писал(а):
Вс июн 07, 2020 10:57 pm
xor писал(а):
Вс июн 07, 2020 9:55 pm
webms писал(а):
Вс июн 07, 2020 1:47 pm
SmoKE_xDDD писал(а):
Сб июн 06, 2020 11:38 pm
Есть еще идея добавить автосейв кода каждые n секунд (Само собой в фоне, без обновления страницы), что думаете?
Было бы супер!
но только как настраиваемая опция! после автосейва это же сразу работать начнёт, а если там логическая ошибка или тупо код не дописан весь? и я бы эту галку - автосэйв - у себя не ставил бы)
Если ошибка - не сохранит. Валидация в любом случае будет
я не про ошибку, а про сохранение недописанного. сохранилось - ты дальше пишешь - а недописанное же уже работает(
Chainik
Сообщения: 1168
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 165 раз
Поблагодарили: 360 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение Chainik » Пн июн 08, 2020 9:11 am

xor писал(а):
Пн июн 08, 2020 12:00 am
...
я не про ошибку, а про сохранение недописанного. сохранилось - ты дальше пишешь - а недописанное же уже работает(
Да, ув.xor прав на все 100. Надо сделать это настраиваемой опцией, а то пока до конца не дописал, таких дел можно наворотить (мой ядерный реактор не любит ошибочных команд). ))
Аватара пользователя
webms
Сообщения: 446
Зарегистрирован: Чт дек 15, 2016 3:13 am
Благодарил (а): 187 раз
Поблагодарили: 81 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение webms » Пн июн 08, 2020 9:26 am

да вы правды, если действительно вносишь правки уже в работающем коде (цикле), то получается он сохранит неработающий код
можно сделать автосейв например только для только что созданных сценариев или методов, если возможно, если нет, то мб и правда не стоит мучатся напрасно
Аватара пользователя
SmoKE_xDDD
Сообщения: 495
Зарегистрирован: Ср апр 17, 2019 5:00 pm
Благодарил (а): 62 раза
Поблагодарили: 347 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение SmoKE_xDDD » Пн июн 08, 2020 9:52 am

Автосейф можно писать в файл и только лишь по нажатию сохранить - писать в бд
За это сообщение автора SmoKE_xDDD поблагодарили (всего 4):
Chainik (Пн июн 08, 2020 10:00 am) • webms (Пн июн 08, 2020 10:45 am) • u885 (Ср июн 10, 2020 6:45 pm) • Samir77 (Ср июн 10, 2020 7:24 pm)
Рейтинг: 4.94%
ИзображениеИзображениеИзображение
Chainik
Сообщения: 1168
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 165 раз
Поблагодарили: 360 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение Chainik » Пн июн 08, 2020 10:00 am

SmoKE_xDDD писал(а):
Пн июн 08, 2020 9:52 am
Автосейф можно писать в файл и только лишь по нажатию сохранить - писать в бд
Тогда другое дело... Я за...
Аватара пользователя
webms
Сообщения: 446
Зарегистрирован: Чт дек 15, 2016 3:13 am
Благодарил (а): 187 раз
Поблагодарили: 81 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение webms » Пн июн 08, 2020 11:49 am

Нашел еще одну ошибку
Если нажать в редакторе F11 и потом кликнуть мышкой на последнюю строку (код должен быть длинным), то на одну строку экран поднимается выше
Аватара пользователя
SmoKE_xDDD
Сообщения: 495
Зарегистрирован: Ср апр 17, 2019 5:00 pm
Благодарил (а): 62 раза
Поблагодарили: 347 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение SmoKE_xDDD » Пн июн 08, 2020 1:20 pm

webms писал(а):
Пн июн 08, 2020 11:49 am
Нашел еще одну ошибку
Если нажать в редакторе F11 и потом кликнуть мышкой на последнюю строку (код должен быть длинным), то на одну строку экран поднимается выше
Скрины плиз, у себя как только не щелкал... ;)
ИзображениеИзображениеИзображение
Аватара пользователя
webms
Сообщения: 446
Зарегистрирован: Чт дек 15, 2016 3:13 am
Благодарил (а): 187 раз
Поблагодарили: 81 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение webms » Пн июн 08, 2020 2:30 pm

SmoKE_xDDD писал(а):
Пн июн 08, 2020 1:20 pm
webms писал(а):
Пн июн 08, 2020 11:49 am
Нашел еще одну ошибку
Если нажать в редакторе F11 и потом кликнуть мышкой на последнюю строку (код должен быть длинным), то на одну строку экран поднимается выше
Скрины плиз, у себя как только не щелкал... ;)
Тоже проверил, не везде такой глюк
Кажется и за if и закрытой фигурной скобкой, но все же есть ошибка)

проверь с этим кодом например

Код: Выделить всё

$region = ['Москва','Московская область', 'Тамбовская область'];

$str = file_get_contents('https://yandex.ru/web-maps/covid19');

$covid = [];

$re_json = '/class=\"config-view\">(.+?)</';
$re_rus = '/\"covid-stat-view__item-value\">(.+?)</';
$re_time = '/\"covid-panel-view__subtitle\">(.+?)</';

// Статистика по России
preg_match_all($re_rus, $str, $matches, PREG_SET_ORDER, 0);

$covid['Россия']['cases'] = (int)preg_replace("/[^0-9]/", '', $matches[0][1]);
$covid['Россия']['new_cases'] = (int)preg_replace("/[^0-9]/", '', $matches[1][1]);
$covid['Россия']['cured'] = (int)preg_replace("/[^0-9]/", '', $matches[2][1]);
$covid['Россия']['deaths'] = (int)preg_replace("/[^0-9]/", '', $matches[3][1]);

// Мировая статистика и статистика по регионам России
ini_set('pcre.backtrack_limit', 5000000);
preg_match($re_json, $str, $matches, PREG_OFFSET_CAPTURE, 0);

$data = json_decode($matches[1][0], true);

$covid['Россия']['tests'] = (int)preg_replace("/[^0-9]/", '', $data['covidData']['tests']);

foreach ($data['covidData']['items'] as $item) {
    // Мировая статистика
    if (!isset($item['ru'])) {
        $covid['Мир']['cases'] += $item['cases'];
        $covid['Мир']['cured'] += $item['cured'];
        $covid['Мир']['deaths'] += $item['deaths'];
    }
    // Статистика по странам и регионам России  
    if (in_array($item['name'], $region)) {     
        $covid[$item['name']]['cases'] += $item['cases'];
        $covid[$item['name']]['cured'] += $item['cured'];
        $covid[$item['name']]['deaths'] += $item['deaths'];
        if (is_array($item['histogram']) && count($item['histogram']) > 2) {
            $cnt = count($item['histogram']);
            $today = $item['histogram'][$cnt-1]['value'];
            $yesterday = $item['histogram'][$cnt-2]['value'];
            $covid[$item['name']]['new_cases'] = $today - $yesterday;
        }
    }
}

preg_match($re_time, $str, $matches, PREG_OFFSET_CAPTURE, 0);
$covid['Updated'] = substr($matches[1][0], 0, strpos($matches[1][0], ' ('));

//var_dump($covid); // для отладки раскомментировать

######################################################

$report = "<b>☣️ COVID-2019 ☣️</b>\n\n";

$report .= "<b>В России:</b>\n";
$report .= "Заражений за сутки: <b>" . $covid['Россия']['new_cases'] . "</b>\n";
$report .= "Заражений всего: <b>" . $covid['Россия']['cases'] . "</b>\n";
$report .= "Выздоровело: <b>" . $covid['Россия']['cured'] . "</b>\n";
$report .= "Смертей: <b>" . $covid['Россия']['deaths'] . "</b>\n";
$report .= "Проведено тестов: <b>" . $covid['Россия']['tests'] . "</b>\n\n";

$report .= "-------------------------\n\n";

$report .= "<b>В Москве:</b>\n";
$report .= "Заражений за сутки: <b>" . $covid['Москва']['new_cases'] . "</b>\n";
$report .= "Заражений всего: <b>" . $covid['Москва']['cases'] . "</b>\n";
$report .= "Выздоровело: <b>" . $covid['Москва']['cured'] . "</b>\n";
$report .= "Смертей: <b>" . $covid['Москва']['deaths'] . "</b>\n\n";

$report .= "<b>В Московской области:</b>\n";
$report .= "Заражений за сутки: <b>" . $covid['Московская область']['new_cases'] . "</b>\n";
$report .= "Заражений всего: <b>" . $covid['Московская область']['cases'] . "</b>\n";
$report .= "Выздоровело: <b>" . $covid['Московская область']['cured'] . "</b>\n";
$report .= "Смертей: <b>" . $covid['Московская область']['deaths'] . "</b>\n\n";

$report .= "<b>В Тамбовской области:</b>\n";
$report .= "Заражений за сутки: <b>" . $covid['Тамбовская область']['new_cases'] . "</b>\n";
$report .= "Заражений всего: <b>" . $covid['Тамбовская область']['cases'] . "</b>\n";
$report .= "Выздоровело: <b>" . $covid['Тамбовская область']['cured'] . "</b>\n";
$report .= "Смертей: <b>" . $covid['Тамбовская область']['deaths'] . "</b>\n\n";

$report .= "-------------------------\n\n";

$report .= "<b>В мире:</b>\n";
$report .= "Заражений: <b>" . $covid['Мир']['cases'] . "</b>\n";
$report .= "Выздоровело: <b>" . $covid['Мир']['cured'] . "</b>\n";
$report .= "Смертей: <b>" . $covid['Мир']['deaths'] . "</b>\n\n";

$report .= "По состоянию на: <b>" . $covid['Updated'] . "</b>";

######################################################

if (gg('Common.covid19_updated') != $covid['Россия']['cases']) {
 sg('Common.covid19_updated', $covid['Россия']['cases']); #записываем
 
 include_once(DIR_MODULES . 'charts/charts.class.php');
 $charts = new charts();
 $chartPNG = $charts->getImage('16');

 include_once(DIR_MODULES . 'telegram/telegram.class.php');
 $telegram_module = new telegram();
 $telegram_module->sendMessageToAdmin($report, null, '', true); # без звука
 //$telegram_module->sendImageToAdmin(ROOT.$chartPNG, '', null, '', true); # график без звука
}
Аватара пользователя
SmoKE_xDDD
Сообщения: 495
Зарегистрирован: Ср апр 17, 2019 5:00 pm
Благодарил (а): 62 раза
Поблагодарили: 347 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение SmoKE_xDDD » Пн июн 08, 2020 4:52 pm

Залил новое обновление, достаточно просто заменить файлы без удаления из БД (Если уже стоял мой редактор).
- Исправлено куча мелких ошибок
- Добавлена новая возможность восстановить код "до ошибки"
- Исправлена проблема с "Показывать ошибку под строкой" и прыгать к строке
За это сообщение автора SmoKE_xDDD поблагодарили (всего 6):
webms (Пн июн 08, 2020 4:56 pm) • Chainik (Пн июн 08, 2020 4:57 pm) • VOVA_iS (Пн июн 08, 2020 9:07 pm) • xor (Пн июн 08, 2020 10:55 pm) • newz20 (Ср июн 10, 2020 11:11 am) • u885 (Ср июн 10, 2020 6:44 pm)
Рейтинг: 7.41%
ИзображениеИзображениеИзображение
Аватара пользователя
SmoKE_xDDD
Сообщения: 495
Зарегистрирован: Ср апр 17, 2019 5:00 pm
Благодарил (а): 62 раза
Поблагодарили: 347 раз

Re: [Дизайн] Редактор кода с подсветкой ошибок

Сообщение SmoKE_xDDD » Пн июн 08, 2020 11:06 pm

Новое огромное обновление!
1) Поиск выделенных слов (Двойной клик по слову и редактор подсветит все одинаковые)
СпойлерПоказать
1.png
1.png (36.91 КБ) 387 просмотров
2) (ТЕСТ!) Проверка кода на ошибки "на лету". Жмем кнопку ИЛИ CTRL+E и скрипт проверит ваш код БЕЗ ОБНОВЛЕНИЯ СТРАНИЦЫ
СпойлерПоказать
2.png
2.png (27.84 КБ) 387 просмотров
3) Фиксы тем и их стилей. Как мог поправил выделение ошибок
СпойлерПоказать
3.png
3.png (34.16 КБ) 387 просмотров
4) Найти и заменить и просто найти. Жмем CTRL+F для поиска и CTRL+SHIFT+F для найти и заменить.
СпойлерПоказать
4.png
4.png (22.8 КБ) 387 просмотров
5) Дублирование строки. Жмем CTRL+D и строка скопируется и вставиться ниже.
СпойлерПоказать
5.png
5.png (22.86 КБ) 387 просмотров
6) Блоки можно сворачивать/разворачивать через CTRL+Q (Желтые стрелочки)
7) Добавлен функционал автосейвов в файл, но пока тестирую...
8) Фикс, когда при жестком указании строк не показывалась ошибка. Теперь если ошибка - редактор развернет весь код

Просто скачать архив по ссылке из 1 поста и заменить код. Настройки удалять не надо!

Пишем отзывы, тестим, ставим лайки!
За это сообщение автора SmoKE_xDDD поблагодарили (всего 10):
xor (Пн июн 08, 2020 11:09 pm) • Chainik (Пн июн 08, 2020 11:16 pm) • eeak1 (Пн июн 08, 2020 11:36 pm) • homester (Вт июн 09, 2020 1:35 am) • Slavik398 (Вт июн 09, 2020 1:36 am) • skysilver (Вт июн 09, 2020 2:05 am) • webms (Вт июн 09, 2020 9:00 am) • newz20 (Вт июн 09, 2020 5:17 pm) • u885 (Вт июн 09, 2020 5:26 pm) • Samir77 (Вт июн 09, 2020 7:15 pm)
Рейтинг: 12.35%
ИзображениеИзображениеИзображение
Ответить