Подсветка синтаксиса — различия между версиями

Материал из Вики ИТ мехмата ЮФУ
Перейти к: навигация, поиск
 
Строка 1: Строка 1:
 
==Описание==
 
==Описание==
На этом сайте установлено расширение [http://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi Extension:SyntaxHighlight GeSHi], позволяющее делать подсветку синтаксиса.
+
На этом сайте установлено расширение [http://www.mediawiki.org/wiki/Extension:SyntaxHighlight_GeSHi Extension:SyntaxHighlight GeSHi], позволяющее делать подсветку синтаксиса. Это расширение добавляет тег <tt>&lt;source></tt> для отображения кода. Внутри тега <tt>source</tt> сохраняется выравнивание с помощью пробелов, символов табуляции.
 
 
Это расширение добавляет тег <tt>&lt;source></tt> для отображения кода.
 
 
 
Внутри тега <tt>source</tt> сохраняется выравнивание с помощью пробелов, символов табуляции.
 
  
 
==Атрибуты==
 
==Атрибуты==
* '''lang''': язык подсветки, список значений см. ниже.
 
* '''line''': нумерация строк. 0 - нет, 1 - есть, значение по умолчанию - 0.
 
* '''start''': если включена нумерация строк, <tt>start</tt> определяет, с какого числа начинается нумерация. Значение по умолчанию - 1.
 
  
==Примеры==
+
{| {{prettytable}} 
===C#, с нумерацией строк===
+
| <tt>lang</tt>
<pre><nowiki>
+
| язык подсветки. Список значений см. ниже
<source lang="csharp" line="1">
+
|-
// Hello World in Microsoft C# ("C-Sharp").
+
| <tt>line</tt>
 
+
| нумерация строк. 0 - нет, 1 - есть. Значение по умолчанию — 0
using System;
+
|-
 +
| <tt>start</tt>
 +
| если включена нумерация строк, <tt>start</tt> определяет, с какого числа начинается нумерация. Значение по умолчанию — 1
 +
|}
  
class HelloWorld
 
{
 
    public static int Main(String[] args)
 
    {
 
        Console.WriteLine("Hello, World!");
 
        return 0;
 
    }
 
}
 
</source>
 
</nowiki></pre>
 
Результат:
 
<source lang="csharp" line="1">
 
// Hello World in Microsoft C# ("C-Sharp").
 
 
using System;
 
 
class HelloWorld
 
{
 
    public static int Main(String[] args)
 
    {
 
        Console.WriteLine("Hello, World!");
 
        return 0;
 
    }
 
}
 
</source>
 
===C#, c нумерацией строк не с начала===
 
Здесь приведен фрагмент кода из предыдущего примера. Нумерация начинается не с единицы, чтобы номера строк в этом фрагменте совпадали с номерами строк всего кода, приведенного ранее.
 
<pre><nowiki>
 
<source lang="csharp" line="1" start="7">
 
    public static int Main(String[] args)
 
    {
 
        Console.WriteLine("Hello, World!");
 
        return 0;
 
    }
 
</source>
 
</nowiki></pre>
 
Результат:
 
<source lang="csharp" line="1" start="7">
 
    public static int Main(String[] args)
 
    {
 
        Console.WriteLine("Hello, World!");
 
        return 0;
 
    }
 
</source>
 
 
===Delphi, без нумерации строк===
 
<pre><nowiki>
 
<source lang="delphi">
 
// comment
 
var i:integer;
 
begin 
 
  i:=10;
 
  write(i);
 
end.
 
</source>
 
</nowiki></pre>
 
Результат:
 
<source lang="delphi">
 
// comment
 
var i:integer;
 
begin
 
  i:=10;
 
  write(i);
 
end.
 
</source>
 
 
==Поддерживаемые языки==
 
==Поддерживаемые языки==
 
{| class="simple" style="float:left;border-collapse:collapse" border="1"
 
{| class="simple" style="float:left;border-collapse:collapse" border="1"
Строка 266: Строка 197:
 
|}
 
|}
 
<div style="clear:both"></div>
 
<div style="clear:both"></div>
Примечание:<br>
+
'''Примечание'''. Список доступных кодов в установленной версии расширения можно посмотреть при предварительном просмотре, набрав  
Список доступных кодов в установленной версии расширения можно посмотреть при предварительном просмотре, набрав  
 
 
  &lt;source lang="-">&lt;/source>
 
  &lt;source lang="-">&lt;/source>
 
в редакторе статьи.
 
в редакторе статьи.
 +
 +
==Примеры==
 +
===C#, с нумерацией строк===
 +
{| {{prettytable}}
 +
!Что пишем
 +
!Результат
 +
|-
 +
|<pre><nowiki>
 +
<source lang="csharp" line="1">
 +
// Hello World in Microsoft C# ("C-Sharp").
 +
 +
using System;
 +
 +
class HelloWorld
 +
{
 +
    public static int Main(String[] args)
 +
    {
 +
        Console.WriteLine("Hello, World!");
 +
        return 0;
 +
    }
 +
}
 +
</source>
 +
</nowiki></pre>
 +
|<source lang="csharp" line="1">
 +
// Hello World in Microsoft C# ("C-Sharp").
 +
 +
using System;
 +
 +
class HelloWorld
 +
{
 +
    public static int Main(String[] args)
 +
    {
 +
        Console.WriteLine("Hello, World!");
 +
        return 0;
 +
    }
 +
}
 +
</source>
 +
|}
 +
 +
===C#, c нумерацией строк не с начала===
 +
Здесь приведен фрагмент кода из предыдущего примера. Нумерация начинается не с единицы, чтобы номера строк в этом фрагменте совпадали с номерами строк всего кода, приведенного ранее.
 +
 +
{| {{prettytable}} 
 +
!Что пишем
 +
!Результат
 +
|-
 +
|<pre><nowiki>
 +
<source lang="csharp" line="1" start="7">
 +
    public static int Main(String[] args)
 +
    {
 +
        Console.WriteLine("Hello, World!");
 +
        return 0;
 +
    }
 +
</source>
 +
</nowiki></pre>
 +
|<source lang="csharp" line="1" start="7">
 +
    public static int Main(String[] args)
 +
    {
 +
        Console.WriteLine("Hello, World!");
 +
        return 0;
 +
    }
 +
</source>
 +
|}
 +
 +
===Delphi, без нумерации строк===
 +
{| {{standart}} 
 +
!Что пишем
 +
!Результат
 +
|-
 +
|<pre><nowiki>
 +
<source lang="delphi">
 +
// comment
 +
var i:integer;
 +
begin 
 +
  i:=10;
 +
  write(i);
 +
end.
 +
</source>
 +
</nowiki></pre>
 +
|<source lang="delphi">
 +
// comment
 +
var i:integer;
 +
begin
 +
  i:=10;
 +
  write(i);
 +
end.
 +
</source>
 +
|}
 +
 +
[[Категория:Wiki]]

Текущая версия на 03:16, 11 августа 2009

Описание

На этом сайте установлено расширение Extension:SyntaxHighlight GeSHi, позволяющее делать подсветку синтаксиса. Это расширение добавляет тег <source> для отображения кода. Внутри тега source сохраняется выравнивание с помощью пробелов, символов табуляции.

Атрибуты

lang язык подсветки. Список значений см. ниже
line нумерация строк. 0 - нет, 1 - есть. Значение по умолчанию — 0
start если включена нумерация строк, start определяет, с какого числа начинается нумерация. Значение по умолчанию — 1

Поддерживаемые языки

Code Language
abap ABAP
actionscript ActionScript
ada Ada
apache Apache Log
applescript AppleScript
asm ASM
asp Active Server Pages (ASP)
autoit AutoIt
bash Bash
basic4gl Basic4GL
blitzbasic Blitz BASIC
bnf Backus-Naur Form
c C
c_mac C (Mac)
caddcl AutoCAD DCL
cadlisp AutoLISP
cfdg CFDG
cfm ColdFusion
cpp-qt C++ (Qt toolkit)
cpp C++
csharp C#
css Cascading Style Sheets (CSS)
d D
delphi Delphi
diff Diff
div DIV
dos DOS batch file
dot DOT
eiffel Eiffel
fortran Fortran
freebasic FreeBASIC
genero Genero
gml Game Maker Language (GML)
groovy Groovy
haskell Haskell
html4strict HTML
idl Uno IDL
ini INI
inno Inno
io Io
java Java
java5 Java(TM) 2 Platform Standard Edition 5.0
javascript JavaScript
latex LaTeX
Code Language
lisp Lisp
lua Lua
m68k Motorola 68000 Assembler
matlab MATLAB M
mirc mIRC scripting language
mpasm Microchip Assembler
mysql MySQL
nsis Nullsoft Scriptable Install System (NSIS)
objc Objective-C
ocaml-brief OCaml
ocaml OCaml
oobas OpenOffice.org Basic
oracle8 Oracle 8 SQL
pascal Pascal
per per
perl Perl
php-brief PHP
php PHP
plsql PL/SQL
python Python
qbasic QBasic/QuickBASIC
rails Rails
reg Windows Registry
robots robots.txt
ruby Ruby
sas SAS
scheme Scheme
sdlbasic SdlBasic
smalltalk Smalltalk
smarty Smarty
sql SQL
tcl Tcl
text Plain text
thinbasic thinBasic
tsql Transact-SQL
vb Visual Basic
vbnet Visual Basic .NET
vhdl VHDL
visualfoxpro Visual FoxPro
winbatch Winbatch
xml XML
xpp X++
z80 ZiLOG Z80 Assembler

Примечание. Список доступных кодов в установленной версии расширения можно посмотреть при предварительном просмотре, набрав

<source lang="-"></source>

в редакторе статьи.

Примеры

C#, с нумерацией строк

Что пишем Результат
<source lang="csharp" line="1">
// Hello World in Microsoft C# ("C-Sharp").

using System;

class HelloWorld
{
    public static int Main(String[] args)
    {
        Console.WriteLine("Hello, World!");
        return 0;
    }
}
</source>
// Hello World in Microsoft C# ("C-Sharp").

using System;

class HelloWorld
{
    public static int Main(String[] args)
    {
        Console.WriteLine("Hello, World!");
        return 0;
    }
}

C#, c нумерацией строк не с начала

Здесь приведен фрагмент кода из предыдущего примера. Нумерация начинается не с единицы, чтобы номера строк в этом фрагменте совпадали с номерами строк всего кода, приведенного ранее.

Что пишем Результат
<source lang="csharp" line="1" start="7">
    public static int Main(String[] args)
    {
        Console.WriteLine("Hello, World!");
        return 0;
    }
</source>
    public static int Main(String[] args)
    {
        Console.WriteLine("Hello, World!");
        return 0;
    }

Delphi, без нумерации строк

Что пишем Результат
<source lang="delphi">
// comment
var i:integer;
begin   
  i:=10;
  write(i);
end.
</source>
// comment
var i:integer;
begin
  i:=10;
  write(i);
end.