1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - новый и перспективный форумный движок от бывших создателей vBulletin.

1.3.x GeSHi Syntax Highlighter

Тема в разделе "Плагины для XenForo", создана пользователем Romchik®, 22 окт 2011.

Загрузка
  1. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5.740
    Симпатии:
    5.269
    Версия XF:
    1.5.11
    GeSHi Syntax Highlighter

    Тема на оф. сайте:
    HTML:
    http://xenforo.com/community/resources/geshi-syntax-highlighter.89/
    Автор: digitalpoint
    Описание: основанная на GeSHi подсветка языков программирования. Поддерживаются все языки, которые поддерживает GeSHi (201 язык).

    geshi.png

    Установка:
    1. Залить файлы.
    2. Импортировать XML-файл плагина.
    Использование:
    • Для HTML и PHP дополнительно не нужно ничего делать. Для других языков нужно указывать опцию. Например:
      [code=javascript]
    • Нумерацию можно включить в панели администратора: Настройки - Сообщения.
     

    Вложения:

    Последнее редактирование: 10 июн 2014
  2. theaqua

    theaqua Местный

    Регистрация:
    11.10.10
    Сообщения:
    113
    Симпатии:
    45
    Версия XF:
    1.1.1
    Недавно по привычке (прошлый форум на вб был с уклоном в кодинг) задался вопросом, под XF есть ли геши, только минут через 5 сообразил, что он мне не нужен.

    В общем, круто.
     
  3. mahorka42

    mahorka42 Местный

    Регистрация:
    08.10.10
    Сообщения:
    210
    Симпатии:
    18
    Версия XF:
    1.4.0
    пичалька единственного нужного мне MQL4/5 нету :cry:
     
  4. Desperado

    Desperado Местный

    Регистрация:
    23.10.10
    Сообщения:
    270
    Симпатии:
    98
    Версия XF:
    1.1.3
    Если у кого-то данный модуль "ломает" весь вид у кода (форматирует его не так, как вы задумывали... а устраивает некую лесенку), то откройте файл library/DigitalPointSyntaxHighlighter/BbCode/Formatter/Base.php

    а замените в нём константу GESHI_HEADER_NONE на GESHI_HEADER_PRE (ну или GESHI_HEADER_DIV )
     
    Romchik® нравится это.
  5. resonansER

    resonansER Местный

    Регистрация:
    19.08.11
    Сообщения:
    460
    Симпатии:
    290
    Версия XF:
    1.5.6
    Вот это реально необходимый хак для специализированных форумов!
    Как, например, на одном из моих форумов тосуются админы-линуксоводы, SEO-шники и PHP-программисты и другие особи такого же плана. :D
    Вот для них это просто счастье, отображение синтаксиса! И для меня тоже. Правда придётся мне памятку написать по кодам, но это мелочь, главное, что хак "красит" код!
     
  6. Barbos

    Barbos Местный

    Регистрация:
    14.04.12
    Сообщения:
    115
    Симпатии:
    141
    Версия XF:
    1.1.2
    открываем шаблон editor_dialog_code: находим:
    Код:
            <select name="type" id="ctrl_type" class="textCtrl">
                <option value="code">{xen:phrase general_code}</option>
                <option value="php">PHP</option>
                <option value="html">HTML</option>
            </select>
    и заменяем этим:
    Код:
    <select name="type" id="ctrl_type" class="textCtrl">
                <option value="code">{xen:phrase general_code}</option>
                <option value="code=php">PHP</option>
                <option value="code=html5">HTML5</option>
                <option value="code=javascript">Javascript</option>
                <option value="code=reg">Registry</option>
                <option value="code=qbasic">QBasic</option>
    </select>
    открываем /js/tinymce/themes/xenforo/js/code.js
    находим:
    Код:
    default:    tag = 'CODE';
    и меняем на это:
    Код:
    default: tag = $('#ctrl_type').val();
    Готово:
    code.png

    и еще маленькая плюшка от меня:
    файл \library\DigitalPointSyntaxHighlighter\BbCode\Formatter\Base.php
    найти:
    Код:
    'language' => $tag['option']
    заменить на:
    Код:
    'language' => $geshi->get_language_name()
    тогда будет отображаться полное название подсвечиваемого синтаксиса
    code2.png
     
    PikselNsk, Alex Gludo, zMiq и 4 другим нравится это.
  7. Apollo Master

    Apollo Master Пользователь

    Регистрация:
    16.05.12
    Сообщения:
    2
    Симпатии:
    0
    Версия XF:
    1.1.2
    Отличный мод. Но есть одна проблема, когда в диалоговом окне выбираем любой язык, к примеру PHP, и вставляем, то вставляется так:
    [ code=php] ............ [/ code=php],
    после сохранения автоматиески тег [ code] закрывается и становится:

    [ code=php] ............ [/code=php] [ /code]
     
  8. Barbos

    Barbos Местный

    Регистрация:
    14.04.12
    Сообщения:
    115
    Симпатии:
    141
    Версия XF:
    1.1.2
    хм, забыл что правил еще это...

    открываем /js/tinymce/themes/xenforo/js/code.js
    находим:
    output = '[' + tag + ']' + code + '[/' + tag + ']';
    заменить на:
    output = '[' + tag + ']' + code + '[/code]';
     
    noskill и Apollo Master нравится это.
  9. Apollo Master

    Apollo Master Пользователь

    Регистрация:
    16.05.12
    Сообщения:
    2
    Симпатии:
    0
    Версия XF:
    1.1.2
    Да, спасибо! Теперь всё в норме.
     
  10. VBot

    VBot Активный пользователь

    Регистрация:
    24.02.12
    Сообщения:
    40
    Симпатии:
    16
    Версия XF:
    1.2.2
    Мммм... А как вот это убрать?
    [​IMG]
     
  11. patrig

    patrig Местный

    Регистрация:
    11.06.11
    Сообщения:
    184
    Симпатии:
    166
    Версия XF:
    1.4.0
    Такая же ошибка. Тоже интересует, как устранить? XenForo 1.1.3
    Спасибо.
     
  12. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5.740
    Симпатии:
    5.269
    Версия XF:
    1.5.11
  13. patrig

    patrig Местный

    Регистрация:
    11.06.11
    Сообщения:
    184
    Симпатии:
    166
    Версия XF:
    1.4.0
    Проблему решил:
    Открыть: js/tinymce/themes/xenforo/js/code.js​
    Найти:​
    Код:
    alert(tinyMCEPopup.editor.windowManager.bookmark);
    Удалить / Закомментировать.​

     
  14. Romchik®

    Romchik® The Power of Dreams Команда форума

    Регистрация:
    26.09.10
    Сообщения:
    5.740
    Симпатии:
    5.269
    Версия XF:
    1.5.11
    Да, можно и так. Именно это и изменено в обновленном файлике.
     
  15. fantommd

    fantommd Новичок

    Регистрация:
    30.01.13
    Сообщения:
    2
    Симпатии:
    0
    Версия XF:
    1.1.3
    извините, но я закоомментировал. строку
    Код:
    alert(tinyMCEPopup.editor.windowManager.bookmark);
    но результат тот же, это ошибка object object не исчезает, что делать?
     
  16. wergio

    wergio Местный

    Регистрация:
    19.02.12
    Сообщения:
    36
    Симпатии:
    4
    Версия XF:
    1.1.3
    Остается только выпрямить руки!
     
    patrig нравится это.
  17. fantommd

    fantommd Новичок

    Регистрация:
    30.01.13
    Сообщения:
    2
    Симпатии:
    0
    Версия XF:
    1.1.3
    да ну, сам то знаешь как справить то?
     
  18. tihoho

    tihoho Новичок

    Регистрация:
    14.12.12
    Сообщения:
    3
    Симпатии:
    0
    Версия XF:
    1.1.3
    Почему то при нумерации строк, для строк более 100 обрезается 1ый символ:

    98.
    99.
    00.
    01.

    и т.д.

    Подскажите как можно это исправить. Спасибо.
     
  19. Kelt

    Kelt Read only

    Регистрация:
    13.06.11
    Сообщения:
    146
    Симпатии:
    46
    эта подсветка только для front-end? или для админки тоже?
     
  20. swap

    swap Активный пользователь

    Регистрация:
    14.10.11
    Сообщения:
    28
    Симпатии:
    21
    Версия XF:
    1.3.2
    Подскажите пожалуйста, на 1.3.2 встанет?
    И как добавить остальные ЯП?
    достаточно будет увеличить список в этом коде:
    Код:
    <select name="type" id="ctrl_type" class="textCtrl">
                <option value="code">{xen:phrase general_code}</option>
                <option value="code=php">PHP</option>
                <option value="code=html5">HTML5</option>
                <option value="code=javascript">Javascript</option>
                <option value="code=reg">Registry</option>
                <option value="code=qbasic">QBasic</option>
    </select>
    или ещё что то нужно, где то прикручивать?
    Вопрос очень актуален, вышел на эту тему через гугла.
     

Поделиться этой страницей