Обратная связь
×

Обратная связь

Расширяя границы редактора. Программный код

    04 октября 2011 в 18:37
  • 2
  • 355
  • 2
  • 2
  • 355
  • 2

Добавил новую функцию в редактор, может пригодится она не всем, но ITшникам она пригодиться точно. Функция для вставки программного кода, HTML, PHP, C++ и чего угодно другого. Основное достоинство этой функции в том, что она не переносит слова на новую строку и дает возможность использовать в ней спецсимволы HTML и др. В общем, не буду много говорить, кнопка распологается в верхней панели управления редактора рядом с цитатой. Теперь вы сможете вставлять что-то подобное:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" c />
<title>Документ без названия</title>
</head><body>
</body>
</html>
Так же можно указать специфичную подсветку для конкретного языка. Язык кода можно указать в первой строке, заключив его между спец. символами "%", например %css%. Доступные типы (тип, который следует указывать между спец. символами, находится вне скобок, в скобках название языка):
  1. lisp (LISPy languages)
  2. clij(Clojure)
  3. css (CSS)
  4. go (Go)
  5. hs (Haskell)
  6. lua (Lua)
  7. ml (OCAML, SML, F#)
  8. n (Nemerle)
  9. proto (Protocol Buffers)
  10. scala (Scala), sql (SQL)
  11. tex (Tex, LaTeX)
  12. vhdl (VHDL)
  13. vb (Visual Basic)
  14. wiki (WikiText)
  15. xq (XQuery)
  16. yaml (YAML)
  17. apollo (Apollo)
Остальные C-подобные и XML-подобные языки должны подсвечиваться автоматически.
Так же, есть еще одна директива, которая так же заключается между спец. символами "%", под названием «nums», и она делает то, чем ее и обозвали, она заствляет систему пронумеровать строки в блоке кода.


Первый вариант с нумерацией, без указания типа:

<?
class Module_Test extend Module {
    public fVar = 0.12; // Float var; 
    public iVar = 11; // Integer var;
    public bVar = TRUE; // Boolean var;
    public sVar = "test string"; // String var;
    protected aVar = array('key_1' => 'value_1', 'value_2'); // Array var;
    private oVar = new Module_Test(); // Object var;
    /**
     *
     * Test functions
     *
     */
    public function getValue($var = NULL)
    {
        $result = array();
        foreach ($this->aVar as $key => $val) $result[] = $val;
        return $result;
    }

    private static function getMatch($val = 1)
    {
        return (int)round($this->fVar * $this->iVar / $val);
    }
}
?>

Второй вариант без нумерации, с указанием типа CSS:

* html body {
   scrollbar-3dlight-color:#F0F0EE;
   scrollbar-arrow-color:#676662;
   scrollbar-base-color:#F0F0EE;
   scrollbar-darkshadow-color:#DDD;
   scrollbar-face-color:#E0E0DD;
   scrollbar-highlight-color:#F0F0EE;
   scrollbar-shadow-color:#F0F0EE;
   scrollbar-track-color:#F5F5F5;
}

img:-moz-broken {-moz-force-broken-image-icon:1 }
font[face=mceinline] {!important}
*[contentEditable]:focus {outline:0}


Третий вариант без нумерации, с указанием типа SQL:

SELECT 
   t.* 
FROM 
   `test_table` as t, `test_user` as u 
WHERE 
   u.`id` = t.`user_id` 
AND
   u.`name` = 'user_name'
GROUP BY t.`id`
ORDER BY t.`date_add`
LIMIT 1, 10

Надеюсь, что описал все доступно. Всем удачи в новых экспериментах! =)

Теги: IT , казнет , beta , hordekz , Совет Орды , jarcoder

2 комментария

331 jarcoder
04 октября 2011, 18:37