Pull to refresh

Comments 4

И вы пользуетесь _этим_ в реальных проектах? Кошмар.

Во-первых, оно гадит не в Mirror, а рядом с исходниками.
Во-вторых, избыточные переводы строк из-за <br> внутри <pre> в создаваемых HTML-файлах.
В-третьих, если уж что-то делать, то делать по-человечески. Потратьте еще три минуты, прикрутите любую из библиотек подсветки кода на JS, вместо доморощенной вставки номеров строк — и ваша команда будет носить вас на руках.
2) + 3)

Если просматривать генерируемые файлы предполагается на компьютерах с интернетом (CDN годится), то в конце Mirror.php:

                if (!$handle = fopen($filename, 'w+', true) ) return;
                fwrite($handle, "<html><meta http-equiv=\"Content-Type\" content=\"text/html;charset=windows-1251\" /><head>");
                fwrite($handle, "<link rel=\"stylesheet\" href=\"http://yandex.st/highlightjs/7.3/styles/default.min.css\">");
                fwrite($handle, "<script src=\"http://yandex.st/highlightjs/7.3/highlight.min.js\"></script>");
                fwrite($handle, "<script>hljs.initHighlightingOnLoad();</script>");
                fwrite($handle, "</head><body><pre><code>\n");
                $line = 1;
                foreach ($this->file_contents as $file_line) {
                        $str = $line;
                        while (strlen($str)<5) {
                           $str = " " . $str;
                        }
                        fwrite($handle,"<a name=$line></a>$file_line\n");
                        $line++;
                }
                fwrite($handle,"</code></pre></body></html>");
                fclose($handle);


Теперь у вас есть читаемый код.
Если так уж до́роги номера строк, то:

- fwrite($handle,"<a name=$line></a>$file_line\n");
+ fwrite($handle,"<a name=$line><b class=\"number\">$str : </b></a>$file_line\n");
> И вы пользуетесь _этим_ в реальных проектах? Кошмар.

Пользовались. В одном из проектов два года назад.
Сейчас нет проектов, которые собираются часами.

За конструктивную критику, спасибо, web-программирование не моя область. А PHP я тогда изучал специально, чтобы написать эти плагины. Два дня потратил.
Sign up to leave a comment.

Articles