<syntaxhighlight>

Материал из свободной русской энциклопедии «Традиция»
Перейти к: навигация, поиск
<syntaxhighlight>
Описание:
Выводит исходный код с подсветкой синтаксиса
Автор:
Brion Vibber, Tim Starling и Rob Church
Параметры:
lang:
язык программирования
line:
(GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS) или пустое значение для показа номеров строк
start:
номер первой строки
highlight:
номер подсвеченной строки (без учёта line start)
enclose:
тэг HTML, содержащий код — pre по умолчанию, div или none
inline:
вывести внутристрочно
strict:
использовать строгий режим
Возвращает:
Исходный код с подсветкой синтаксиса
Синтаксис:
<syntaxhighlight lang="язык программирования" line="(GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS) или пустое значение для показа номеров строк" start="номер первой строки" highlight="номер подсвеченной строки (без учёта line start)" enclose="тэг HTML, содержащий код — pre по умолчанию, div или none" inline="вывести внутристрочно" strict="использовать строгий режим">Исходный код</syntaxhighlight>

<syntaxhighlight>, а также, <source> — тэг MediaWiki для вывода исходного кода с подсветкой синтаксиса, предоставляемый расширением SyntaxHighlight GeSHi.

Примеры[править]

Описание Викитекст Вывод
Простой фрагмент кода на Lua
<syntaxhighlight lang="lua">
-- Регистрация эспортируемых функций:
-- «оформить формулу»:
m [chemistryData.apiShowFormula] = function (frame)
    local nextfunc, static, cur = pairs (frame.args)
    if nextfunc (static, cur) == nil then
        -- аргументы не переданы. Использовать аргументы шаблона:
        return showFormula (frame:getParent ().args)
    else
        -- переданы аргументы:
        return showFormula (frame.args)
    end
end

-- Последняя строка. Экспорт функций из модуля:
return m</syntaxhighlight>
-- Регистрация эспортируемых функций:
-- «оформить формулу»:
m [chemistryData.apiShowFormula] = function (frame)
    local nextfunc, static, cur = pairs (frame.args)
    if nextfunc (static, cur) == nil then
        -- аргументы не переданы. Использовать аргументы шаблона:
        return showFormula (frame:getParent ().args)
    else
        -- переданы аргументы:
        return showFormula (frame.args)
    end
end

-- Последняя строка. Экспорт функций из модуля:
return m
Код с нумерацией строк
<syntaxhighlight lang="lua" line>
-- Регистрация эспортируемых функций:
-- «оформить формулу»:
m [chemistryData.apiShowFormula] = function (frame)
    local nextfunc, static, cur = pairs (frame.args)
    if nextfunc (static, cur) == nil then
        -- аргументы не переданы. Использовать аргументы шаблона:
        return showFormula (frame:getParent ().args)
    else
        -- переданы аргументы:
        return showFormula (frame.args)
    end
end

-- Последняя строка. Экспорт функций из модуля:
return m
</syntaxhighlight>
 1 -- Регистрация эспортируемых функций:
 2 -- «оформить формулу»:
 3 m [chemistryData.apiShowFormula] = function (frame)
 4     local nextfunc, static, cur = pairs (frame.args)
 5     if nextfunc (static, cur) == nil then
 6         -- аргументы не переданы. Использовать аргументы шаблона:
 7         return showFormula (frame:getParent ().args)
 8     else
 9         -- переданы аргументы:
10         return showFormula (frame.args)
11     end
12 end
13 
14 -- Последняя строка. Экспорт функций из модуля:
15 return m
Код с нумерацией строк не с первой
<syntaxhighlight lang="lua" line start="774">
-- Регистрация эспортируемых функций:
-- «оформить формулу»:
m [chemistryData.apiShowFormula] = function (frame)
    local nextfunc, static, cur = pairs (frame.args)
    if nextfunc (static, cur) == nil then
        -- аргументы не переданы. Использовать аргументы шаблона:
        return showFormula (frame:getParent ().args)
    else
        -- переданы аргументы:
        return showFormula (frame.args)
    end
end

-- Последняя строка. Экспорт функций из модуля:
return m
</syntaxhighlight>
774 -- Регистрация эспортируемых функций:
775 -- «оформить формулу»:
776 m [chemistryData.apiShowFormula] = function (frame)
777     local nextfunc, static, cur = pairs (frame.args)
778     if nextfunc (static, cur) == nil then
779         -- аргументы не переданы. Использовать аргументы шаблона:
780         return showFormula (frame:getParent ().args)
781     else
782         -- переданы аргументы:
783         return showFormula (frame.args)
784     end
785 end
786 
787 -- Последняя строка. Экспорт функций из модуля:
788 return m
Подсветка строки
<syntaxhighlight lang="lua" line highlight="4">
-- Регистрация эспортируемых функций:
-- «оформить формулу»:
m [chemistryData.apiShowFormula] = function (frame)
    local nextfunc, static, cur = pairs (frame.args)
    if nextfunc (static, cur) == nil then
        -- аргументы не переданы. Использовать аргументы шаблона:
        return showFormula (frame:getParent ().args)
    else
        -- переданы аргументы:
        return showFormula (frame.args)
    end
end

-- Последняя строка. Экспорт функций из модуля:
return m
</syntaxhighlight>
 1 -- Регистрация эспортируемых функций:
 2 -- «оформить формулу»:
 3 m [chemistryData.apiShowFormula] = function (frame)
 4     local nextfunc, static, cur = pairs (frame.args)
 5     if nextfunc (static, cur) == nil then
 6         -- аргументы не переданы. Использовать аргументы шаблона:
 7         return showFormula (frame:getParent ().args)
 8     else
 9         -- переданы аргументы:
10         return showFormula (frame.args)
11     end
12 end
13 
14 -- Последняя строка. Экспорт функций из модуля:
15 return m
Тэг <div>
<syntaxhighlight lang="lua" enclose="div">
-- Регистрация эспортируемых функций:
-- «оформить формулу»:
m [chemistryData.apiShowFormula] = function (frame)
    local nextfunc, static, cur = pairs (frame.args)
    if nextfunc (static, cur) == nil then
        -- аргументы не переданы. Использовать аргументы шаблона:
        return showFormula (frame:getParent ().args)
    else
        -- переданы аргументы:
        return showFormula (frame.args)
    end
end

-- Последняя строка. Экспорт функций из модуля:
return m

</syntaxhighlight>
-- Регистрация эспортируемых функций:
-- «оформить формулу»:
m [chemistryData.apiShowFormula] = function (frame)
    local nextfunc, static, cur = pairs (frame.args)
    if nextfunc (static, cur) == nil then
        -- аргументы не переданы. Использовать аргументы шаблона:
        return showFormula (frame:getParent ().args)
    else
        -- переданы аргументы:
        return showFormula (frame.args)
    end
end

-- Последняя строка. Экспорт функций из модуля:
return m
Внутристрочный вывод
Вот пример формулы TeX: <syntaxhighlight lang="tex" inline>E = mc^2</syntaxhighlight>
Вот пример формулы TeX: E = mc^2