X   Сообщение сайта
(Сообщение закроется через 2 секунды)

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> Подсветка синтаксиса GeSHi
Phoenix84
сообщение 2010-08-21, 0:01
Сообщение #1
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 231
Регистрация: 2010-03-31
Версия системы: RC5

Репутация:   нет  
Всего: нет


Поделюсь с Вами установкой бб-кода для подсветки кода.
Он работает без тега [code], поэтому его использовать не требуется.
1. Заходим на сайт GeSHi и скачиваем оттуда последнюю версию
2. Заливаем папку geshi в папку /addons
3. Редактируем файл /classes/others/class_ownbb.php
Вставляем туда следующий код:
Цитата
#GeSHi
class OwnBbCode_geshi extends BaseOwnBbCode
{
        public function PreDisplay($tag,$params,$content,$canuse)
    {    
        include_once $this->Mainclass->root_path.'addons/geshi/geshi.php';
        if(!$canuse)
            return $this->RestrictDisplay();
        $params=$params ? Strings::ParseParams($params,$tag) : array();
        if(isset($params['noparse']))
        {
            unset($params['noparse']);
            return parent::PreEdit($tag,$params,$content,true);
        }
        $content = strtr($content, array(
                        '<br />' => "",
                        '&lt;' => '<',
                        '&gt;' => '>',
                        '&amp;' => '&',
                        '&nbsp;' => ' ',
                                        )
                        );


        $content=str_replace("\t",' ',$content);
        if (!isset($params['lang'])){
            $params['lang']='php';}
        $geshi = new GeSHi($content,$params['lang']);
        $geshi->set_header_type(GESHI_HEADER_NONE);
        $geshi->set_tab_width('600px');
        $content = $geshi->parse_code();
        $content = str_replace("\n", "", $content);
        return '<code><div style="padding: .5em 1em;border-left: 5px solid #bbbbbb;background-color: #dddddd;font: 11px sans-serif;">'.$content.'<hr><div style="text-align:right;color:#999999">Язык: <b>'.$params['lang'].'</b></div></div></code>';
    }
}

4. Добавляем bb-код geshi, и можем использовать :)

Geshi поддерживает около 100 языков программирования, поэтому при использовании кода необходимо указывать, какую подсветку использовать.
Например [geshi lang=autoit]
Если он не будет указан, по умолчанию берется язык php

Я начинающий кодер, поэтому если вы заметите баги, пишите мне :)
И по оформлению в стиль тоже можете писать свои пожелания.



Сообщение отредактировал Phoenix84 - 2010-10-02, 16:49
Перейти в начало страницы
+Цитировать сообщение
Phoenix84
сообщение 2010-08-23, 17:23
Сообщение #2
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 231
Регистрация: 2010-03-31
Версия системы: RC5

Репутация:   нет  
Всего: нет


Немного поправил код, от возможных казусов.
Теперь все работает в должном виде ^_^ (по моим тестам)
Можете посмотреть как она работает

Я так понял это никому не нужно?
Я ее приделал потому что у меня например глючит тег [code](не работает авто-перенос строки) и привычка к расцветке кода...

Сообщение отредактировал Phoenix84 - 2010-08-23, 17:24
Перейти в начало страницы
+Цитировать сообщение
Гость_VCITY1_*
сообщение 2010-09-18, 10:38
Сообщение #3



Гости





Поставил , РАБОТАЕТ.
Все больше и больше вникаю в эту Eleanor CMS и она мне стала нравиться.

А кто подскажет где можно исправить подсказки к кнопкам в редакторе [code] [hide] итд.
просто хотелось дописать небольшое пояснение для пользователей.

Сообщение отредактировал VCITY1 - 2010-09-18, 10:44
Перейти в начало страницы
+Цитировать сообщение
Phoenix84
сообщение 2010-09-19, 11:51
Сообщение #4
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 231
Регистрация: 2010-03-31
Версия системы: RC5

Репутация:   нет  
Всего: нет


Очень рад, что хоть кому то понадобилось...
Перейти в начало страницы
+Цитировать сообщение
Alexander
сообщение 2010-09-19, 23:14
Сообщение #5
Eleanor developer
Иконка группы

Группа: Администраторы
Сообщений: 5 261
Регистрация: 2008-11-11
Из: Николаев
Версия системы: RC5

Репутация:   нет  
Всего: 67


Цитата (VCITY1 @ 2024-04-16 13:55)
А кто подскажет где можно исправить подсказки к кнопкам в редакторе [code] [hide] итд.

В языковых файлах смотрите. /lang/ownbbcodes*.php
Перейти в начало страницы
+Цитировать сообщение
Phoenix84
сообщение 2010-10-02, 17:09
Сообщение #6
Любитель
Иконка группы

Группа: Eleanor user
Сообщений: 231
Регистрация: 2010-03-31
Версия системы: RC5

Репутация:   нет  
Всего: нет


Немножко обновил код. Ошибок в логах теперь быть не должно.
Перейти в начало страницы
+Цитировать сообщение

Ответить в данную темуНачать новую тему
0 чел. читают эту тему (гостей: 0, скрытых пользователей: 0)
Пользователей: 0

 
RSS Текстовая версия 0.0336 сек.    11 запросов    GZIP включен    Сейчас: 2024-04-16, 13:55