Template:Demo source
Template documentation
Goal
This template is for creating links or URLs for the relax demo git version control repository. It is a subtemplate of the master {{repo link}} template designed to be specific for the relax demo repository.
Usage
{{MISSING source | cmd = | opt = | protocol = | login = | type = | branch = | tag = | commit = | path = | line = | post = | view = | text = | pre = | simplepath = | full = }}
All parameters are optional.
Parameter | Description | Abbreviated parameter |
Numbered parameter |
Status |
---|---|---|---|---|
cmd | An optional command line tool name + options to prepend to the URL. For example git clone. | optional | ||
opt | Any additional options to show after cmd, but before the URL.
|
optional | ||
protocol | The URL protocol, for example https, http, ssh, git. This defaults to https. | optional | ||
login | The optional user login. | optional | ||
type | Choose between the web interface or a direct repository link. This can be one of git, git web. The default is git web. | optional | ||
branch | The branch name. This defaults to next. For SourceForge git repositories, if the character / is present in the branch name, the text /~ must be appended to the branch.
|
b | optional | |
tag | The repository tag name. For SourceForge git repositories, if the character / is present in the tag name, the text /~ must be appended to the tag.
|
optional | ||
commit | The commit identifier (git hash). This defaults to HEAD. | c | optional | |
path | The file or directory path. | f | 1 | optional |
line | The line number(s) of the file to display.
|
l | optional | |
post | Text to append. This is forms a set with the parameter cmd and opt. For example it can represent any command line options that come after the URL. | optional | ||
view | View to display:
|
v | optional | |
text | Text to display as the link label. Overrides pre. | t | optional | |
pre | Prefix to a link label. | optional | ||
simplepath | If set, this strips off the repository name from the URL label, leaving just the contents of the path parameter.
|
optional | ||
full | If set to 1, the full URL will be shown rather than any text label. | optional |
Design
In this section, the following notation will be used:
- Angular brackets + lower case text
<xyz>
- Template parameters.
- Angular brackets + upper case text
<XYZ>
- Template constructed text.
- Square brackets
[xyz]
- Optional text, only added if the parameter is set.
- Or symbol
|
- The value on the left, if present, otherwise the value on the right of the symbol.
Overview
The general design is:
<cmd> <opt> [<URL> <TEXT>] <post>
Here the square brackets do not denote optional text, but will instead produce a Mediawiki link. This can be modified by setting full = 1 to produce:
<cmd> <opt> <URL> <post>
Site: SourceForge
Project page
For a normal SourceForge project page, the base URL is respectively constructed as:
<protocol>://<DOMAIN>/p/<proj>/<repo>/
For the type parameter value of git, a login is allowed:
<protocol>://[<login>@]<DOMAIN>/p/<proj>/<repo>/
SourceForge <URL> for 'type=git'
For this parameter value, the complete <URL>
value will be:
<protocol>://[<login>@]git.code.sf.net/p/<proj>/<repo>/
SourceForge <URL> for 'type=git web'
For this parameter value, the <URL>
value will be:
<protocol>://sourceforge.net/p/<proj>/<repo>/ci/<commit|branch>/<VIEW>/<path>[#l<line>]
The <VIEW>
value for different values of view is:
- tree
tree/
.- log
log/?path=
.- commit
- nothing.
If the parameter setting view=rss is used, a different <URL>
value is produced:
<protocol>://sourceforge.net/p/<proj>/<repo>/feed/
SourceForge URL <TEXT> for 'type=git' and 'type=git web'
The link text <TEXT>
, if the full parameter is not set, will be:
<proj>/<repo>/<commit|branch>[/<path>][#l<line>] <DESC>
If the simplepath parameter is set, this changes to:
[/<path>][#l<line>] <DESC>
If the pre parameter is supplied, this changes to:
<pre>[/<path>][#l<line>] <DESC>
The RSS feed is a special case in that <TEXT>
will be one of:
<proj>/<repo> <DESC>
<pre> <DESC>
The description <DESC>
is dependent on the view parameter:
- tree
- Nothing.
- log
log view
.- commit
commit view
.- rss
RSS feed
.
The text parameter trumps all, and <TEXT>
is simply:
<text>
Plain text
To create a URL or link as plain text and avoid external links, simply use the {{#tag:tagname|content}}
magic word construct:
{{#tag:nowiki| {{repo link | full = 1 }} }}
https://sourceforge.net/p/nmr-relax/code/ci/master/tree/
To use the <code> tags:
{{#tag:code|{{#tag:nowiki| {{repo link | full = 1 }} }}}}
https://sourceforge.net/p/nmr-relax/code/ci/master/tree/
Examples
No parameters
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/.
{{demo source}}.
Text link
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/.
{{demo source | text = The demo source repository }}.
File
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/NOE/Ap4Aase/README.
{{demo source | path = NOE/Ap4Aase/README }}.
nmr-relax/relax-demo/master/NOE/Ap4Aase/README.
File and a branch
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/NOE/Ap4Aase/README.
{{demo source | path = NOE/Ap4Aase/README | branch = master }}.
nmr-relax/relax-demo/master/NOE/Ap4Aase/README.
File and a commit
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/8bd191/tree/R2/Ap4Aase/README.
{{demo source | path = R2/Ap4Aase/README | commit = 8bd191 }}.
nmr-relax/relax-demo/8bd191/R2/Ap4Aase/README.
{{demo source | path = R2/Ap4Aase/README | commit = 8bd191b2e8518de3be8a9de440531c2a39c745eb }}.
nmr-relax/relax-demo/8bd191b2e8518de3be8a9de440531c2a39c745eb/R2/Ap4Aase/README.
Commit
Note For a simpler interface for this specific example, see {{demo commit}}. |
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/af8071/.
{{demo source | commit = af8071 | view = commit }}.
nmr-relax/relax-demo/af8071 commit view.
File and line number
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/model_free/OMP/analysis/dauvergne_protocol.py#l154.
{{demo source | path = model_free/OMP/analysis/dauvergne_protocol.py | line = 154 }}.
nmr-relax/relax-demo/master/model_free/OMP/analysis/dauvergne_protocol.py#l154.
File, line number, and commit
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/40bde227dbc66a648844eb317dcd44b2898b0116/tree/model_free/OMP/analysis/dauvergne_protocol.py#l154.
{{demo source | path = model_free/OMP/analysis/dauvergne_protocol.py | commit = 40bde227dbc66a648844eb317dcd44b2898b0116 | line = 154 }}.
Custom label given
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/model_free/OMP/analysis/dauvergne_protocol.py.
{{demo source | path = model_free/OMP/analysis/dauvergne_protocol.py | text = The d'Auvergne model-free analysis protocol script. }}.
The d'Auvergne model-free analysis protocol script..
Prefix of $DEMO_SRC
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/model_free/OMP/analysis/dauvergne_protocol.py.
{{demo source | path = model_free/OMP/analysis/dauvergne_protocol.py | pre = $DEMO_SRC }}.
$DEMO_SRC/model_free/OMP/analysis/dauvergne_protocol.py.
Full path
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/40bde227dbc66a648844eb317dcd44b2898b0116/tree/model_free/OMP/analysis/dauvergne_protocol.py#l154.
{{demo source | path = model_free/OMP/analysis/dauvergne_protocol.py | commit = 40bde227dbc66a648844eb317dcd44b2898b0116 | line = 154 | full = 1 }}.
Git clone
Note For a simpler interface for this specific example, see {{demo clone}}. |
This is for git clone git://git.code.sf.net/p/nmr-relax/relax-demo
.
{{#tag:code|{{#tag:nowiki|{{demo source | cmd = git clone | protocol = git | type = git | full = 1 }}}}}}.
git clone git://git.code.sf.net/p/nmr-relax/relax-demo/
.
Aliased parameters
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/model_free/OMP/analysis/dauvergne_protocol.py#l154.
{{demo source | f = model_free/OMP/analysis/dauvergne_protocol.py | b = master | l = 154 | full = 1 }}.
Numbered parameters
This is a link to https://sourceforge.net/p/nmr-relax/relax-demo/ci/master/tree/model_free/OMP/analysis/dauvergne_protocol.py.
{{demo source | model_free/OMP/analysis/dauvergne_protocol.py | b = master | full = 1 }}.
Related templates
|