Vorlage:Code/doc: Unterschied zwischen den Versionen

ZIM HilfeWiki - das Wiki
 
Zeile 2: Zeile 2:
 
<!-- Categories go at the bottom of this page. -->
 
<!-- Categories go at the bottom of this page. -->
 
== Description ==
 
== Description ==
This is a combination of the templates {{tl|code}} and {{tl|pre2}}. It allows for code coloring depending on programming language conventions (like {{tl|code}}) and inherits {{tl|pre2}}'s ability for creating a horizontal slider if necessary (and requested).
+
This is a combination of the parser function {{tag|syntaxhighlight}} and the template {{tl|pre2}}. It allows for code coloring depending on programming language conventions (like {{tag|syntaxhighlight}}) and inherits {{tl|pre2}}'s ability for creating a horizontal slider if necessary (and requested). Also: It adds buttons to copy ''code'' into the clipboard.
  
 
== Parameters ==
 
== Parameters ==
Zeile 12: Zeile 12:
 
:The actual code displayed in the box. '''{{colors|darkred||Warning: }}''' If your code contains an equal sign (=), you have to specify the parameter name as either {{code snippet|code{{=}}}} or {{code snippet|2{{=}}}}, otherwise the display of text will be botched up.
 
:The actual code displayed in the box. '''{{colors|darkred||Warning: }}''' If your code contains an equal sign (=), you have to specify the parameter name as either {{code snippet|code{{=}}}} or {{code snippet|2{{=}}}}, otherwise the display of text will be botched up.
 
;3
 
;3
 +
;scroll
 
:''optional'' If you don't want a horizontal slider for long text, set this to {{code snippet|no}}
 
:''optional'' If you don't want a horizontal slider for long text, set this to {{code snippet|no}}
 +
;id
 +
:''optional'' If you want rhe div containing your code having an id-attribute, pass it along with this parameter
 +
;line
 +
:''optional'' If you want line numbering, set this to anything other than ''off''
 +
;start
 +
:''optional'' If you want your line numbering to start at anything else than 1, put this value here (works only in conjunction with ''line'')
 +
;highlight
 +
:''optional'' If you want line highlighted, list them here.
 +
:you can list values seperated by a comma or give a range or both: 1,4,9,11-13
  
 
== Usage ==
 
== Usage ==
Zeile 32: Zeile 42:
 
{{code|bash|#!/bin/bash
 
{{code|bash|#!/bin/bash
 
mysql --defaults-file=/etc/mysql/debian.cnf}}
 
mysql --defaults-file=/etc/mysql/debian.cnf}}
 +
 +
a more complex example with parameters <code>lang=lua|line=1|start=1|highlight=7,9</code>:
 +
 +
{{code|lang=lua|line=1|start=1|highlight=7,9|code=
 +
local templateClass = require('Module:Template/class')
 +
local classDebug = require('Module:Debug/class')
 +
 +
-- ****************************************************************
 +
-- *                        inheritance                          *
 +
-- ****************************************************************
 +
local className = templateClass:subclass('Name')
 +
-- setting class's configuration data
 +
className.myConfiguration[tostring(className)] = mw.loadData('Module:Name/config')
 +
 +
-- ****************************************************************
 +
-- *                          properties                          *
 +
-- ****************************************************************
 +
 +
local _private = setmetatable({}, {__mode = 'k'})  -- weak table storing all private attributes
 +
}}
  
 
== See also ==
 
== See also ==

Version vom 4. Februar 2016, 07:50 Uhr

Description[Quelltext bearbeiten]

This is a combination of the parser function <syntaxhighlight>...</syntaxhighlight> and the template {{pre2}}. It allows for code coloring depending on programming language conventions (like <syntaxhighlight>...</syntaxhighlight>) and inherits {{pre2}}'s ability for creating a horizontal slider if necessary (and requested). Also: It adds buttons to copy code into the clipboard.

Parameters[Quelltext bearbeiten]

1
lang
The language used for color coding. Consult extension syntaxhighlight's documentation for a list of supported programming languages
2
code
The actual code displayed in the box. Warning: If your code contains an equal sign (=), you have to specify the parameter name as either sample text or sample text, otherwise the display of text will be botched up.
3
scroll
optional If you don't want a horizontal slider for long text, set this to sample text
id
optional If you want rhe div containing your code having an id-attribute, pass it along with this parameter
line
optional If you want line numbering, set this to anything other than off
start
optional If you want your line numbering to start at anything else than 1, put this value here (works only in conjunction with line)
highlight
optional If you want line highlighted, list them here.
you can list values seperated by a comma or give a range or both: 1,4,9,11-13

Usage[Quelltext bearbeiten]

{{code|bash|code=#!/bin/bash
mysql --defaults-file=/etc/mysql/debian.cnf}}

renders as

#!/bin/bash
mysql --defaults-file=/etc/mysql/debian.cnf

If you omit the paramater name (code=), thus writing

{{code|bash|#!/bin/bash
mysql --defaults-file=/etc/mysql/debian.cnf}}

your output will look like this:

sample text

a more complex example with parameters lang=lua|line=1|start=1|highlight=7,9:

local templateClass = require('Module:Template/class')
local classDebug = require('Module:Debug/class')

-- ****************************************************************
-- *                         inheritance                          *
-- ****************************************************************
local className = templateClass:subclass('Name')
-- setting class's configuration data
className.myConfiguration[tostring(className)] = mw.loadData('Module:Name/config')

-- ****************************************************************
-- *                          properties                          *
-- ****************************************************************

local _private = setmetatable({}, {__mode = 'k'})   -- weak table storing all private attributes

See also[Quelltext bearbeiten]

  • {{code snippet}} for short code text in sentences
  • {{pre}} for a pre box with line wraps
  • {{pre2}} for a pre box with horizontal slider
  • <pre>...</pre>


Cookies helfen uns bei der Bereitstellung des ZIM HilfeWikis. Bei der Nutzung vom ZIM HilfeWiki werden die in der Datenschutzerklärung beschriebenen Cookies gespeichert.