<syntaxhighlight>

Материал из свободной русской энциклопедии «Традиция»
(перенаправлено с «Справка:Source»)
Перейти к навигации Перейти к поиску
<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-- «оформить формулу»:
 3m [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
12end
13
14-- Последняя строка. Экспорт функций из модуля:
15return 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-- «оформить формулу»:
776m [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
785end
786
787-- Последняя строка. Экспорт функций из модуля:
788return 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-- «оформить формулу»:
 3m [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
12end
13
14-- Последняя строка. Экспорт функций из модуля:
15return 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