Template:Simgear source: Difference between revisions
(Addition of the 'opt' parameter.) |
m (Switch from the temporary {{project infrastructure/code}} template to {{project infrastructure}} template with the mode set to 'abbrev'.) |
||
(8 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{{repo link | {{repo link | ||
| site | | site = {{project infrastructure|abbrev}} | ||
| cmd{{#if:{{{cmd|}}}||NULL}} | | cmd{{#if:{{{cmd|}}}||NULL}} = {{{cmd}}} | ||
| opt{{#if:{{{opt|}}}||NULL}} | | opt{{#if:{{{opt|}}}||NULL}} = {{{opt}}} | ||
| protocol{{#if:{{{protocol|}}}||NULL}} | | protocol{{#if:{{{protocol|}}}||NULL}} = {{{protocol}}} | ||
| login{{#if:{{{login|}}}||NULL}} | | login{{#if:{{{login|}}}||NULL}} = {{{login}}} | ||
| type{{#if:{{{type|}}}||NULL}} | | type{{#if:{{{type|}}}||NULL}} = {{{type}}} | ||
| proj | | proj = flightgear | ||
| repo | | repo = simgear | ||
| | | branch{{#if:{{{branch|{{{b|}}}}}}||NULL}} = {{{branch|{{{b}}}}}} | ||
| | | tag{{#if:{{{tag|}}}||NULL}} = {{{tag}}} | ||
| path{{#if:{{{path|}}}||NULL}} | | path{{#if:{{{path|{{{f|{{{1|}}}}}}}}}||NULL}} = {{{path|{{{f|{{{1}}}}}}}}} | ||
| commit{{#if:{{{commit|}}}||NULL}} | | commit{{#if:{{{commit|{{{c|}}}}}}||NULL}} = {{{commit|{{{c}}}}}} | ||
| | | line{{#if:{{{line|{{{l|}}}}}}||NULL}} = {{{line|{{{l}}}}}} | ||
| view{{#if:{{{view|}}}||NULL}} | | view{{#if:{{{view|{{{v|}}}}}}||NULL}} = {{{view|{{{v}}}}}} | ||
| text{{#if:{{{text|}}}||NULL}} | | text{{#if:{{{text|{{{t|}}}}}}||NULL}} = {{{text|{{{t}}}}}} | ||
| pre{{#if:{{{pre|}}}||NULL}} | | pre{{#if:{{{pre|}}}||NULL}} = {{{pre}}} | ||
| post{{#if:{{{post|}}}||NULL}} | | post{{#if:{{{post|}}}||NULL}} = {{{post}}} | ||
| simplepath{{#if:{{{simplepath|}}}||NULL}} = {{{simplepath}}} | | simplepath{{#if:{{{simplepath|}}}||NULL}} = {{{simplepath}}} | ||
| full{{#if:{{{full|}}}||NULL}} | | full{{#if:{{{full|}}}||NULL}} = {{{full}}} | ||
}}<noinclude> | }}<noinclude> | ||
{{repo link/doc | {{repo link/doc git source | ||
| label = SimGear | | label = SimGear | ||
| repo = simgear | | repo = simgear | ||
Line 47: | Line 47: | ||
}} | }} | ||
=== File and a | === File and a branch === | ||
{{obr}}simgear source | {{obr}}simgear source | ||
{{!}} path = simgear/ephemeris/ephemeris.cxx | {{!}} path = simgear/ephemeris/ephemeris.cxx | ||
{{!}} branch = | {{!}} branch = release/2016.1/~ | ||
{{cbr}} | {{cbr}} | ||
{{simgear source | {{simgear source | ||
| path = simgear/ephemeris/ephemeris.cxx | | path = simgear/ephemeris/ephemeris.cxx | ||
| branch = version/2016.1.1/~ | | branch = release/2016.1/~ | ||
}} | |||
=== File and a tag === | |||
{{obr}}simgear source | |||
{{!}} path = simgear/ephemeris/ephemeris.cxx | |||
{{!}} tag = version/2016.1.1/~ | |||
{{cbr}} | |||
{{simgear source | |||
| path = simgear/ephemeris/ephemeris.cxx | |||
| tag = version/2016.1.1/~ | |||
}} | }} | ||
Line 111: | Line 122: | ||
| path = simgear/nasal/nasal.h | | path = simgear/nasal/nasal.h | ||
| commit = 1786692406214447db12b9d5af5364582af23d3b | | commit = 1786692406214447db12b9d5af5364582af23d3b | ||
| line | | line = 67 | ||
}} | }} | ||
=== Custom label given === | === Custom label given === | ||
{{obr}}simgear source | {{obr}}simgear source | ||
{{!}} path | {{!}} path = simgear/nasal/nasal.h | ||
{{!}} text | {{!}} text = The main Nasal header file | ||
{{cbr}} | {{cbr}} | ||
Line 141: | Line 152: | ||
{{!}} commit = 1786692406214447db12b9d5af5364582af23d3b | {{!}} commit = 1786692406214447db12b9d5af5364582af23d3b | ||
{{!}} line = 67 | {{!}} line = 67 | ||
{{!}} full = 1 | {{!}} full = 1 | ||
{{cbr}} | {{cbr}} | ||
Line 147: | Line 158: | ||
| path = simgear/nasal/nasal.h | | path = simgear/nasal/nasal.h | ||
| commit = 1786692406214447db12b9d5af5364582af23d3b | | commit = 1786692406214447db12b9d5af5364582af23d3b | ||
| line = | | line = 67 | ||
| full = 1 | |||
}} | |||
=== Aliased parameters === | |||
This is for https://sourceforge.net/p/flightgear/simgear/ci/version/2016.1.1/~/tree/simgear/ephemeris/ephemeris.cxx. | |||
{{obr}}simgear source | |||
{{!}} f = simgear/ephemeris/ephemeris.cxx | |||
{{!}} b = version/2016.1.1/~ | |||
{{!}} full = 1 | |||
{{cbr}} | |||
{{simgear source | |||
| f = simgear/ephemeris/ephemeris.cxx | |||
| b = version/2016.1.1/~ | |||
| full = 1 | | full = 1 | ||
}} | }} | ||
}} | === Numbered parameters === | ||
This is for https://sourceforge.net/p/flightgear/simgear/ci/version/2016.1.1/~/tree/simgear/ephemeris/ephemeris.cxx. | |||
{{obr}}simgear source {{!}} simgear/ephemeris/ephemeris.cxx {{!}} b = version/2016.1.1/~ {{!}} full = 1 {{cbr}} | |||
{{simgear source | simgear/ephemeris/ephemeris.cxx | b = version/2016.1.1/~ | full = 1 }} | |||
</noinclude> | }}</noinclude> |
Latest revision as of 16:05, 20 June 2019
Goal
This template is for creating links or URLs for the SimGear git version control repository. It is a subtemplate of the master {{repo link}} template designed to be specific for the SimGear repository.
Usage
{{simgear 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/flightgear/flightgear/ci/next/tree/
To use the <code> tags:
{{#tag:code|{{#tag:nowiki| {{repo link | full = 1 }} }}}}
https://sourceforge.net/p/flightgear/flightgear/ci/next/tree/
Examples
No parameters
{{simgear source}}
The repository
{{simgear source | text = The simgear source repository }}
File
{{simgear source | path = simgear/ephemeris/ephemeris.cxx }}
flightgear/simgear/next/simgear/ephemeris/ephemeris.cxx
File and a branch
{{simgear source | path = simgear/ephemeris/ephemeris.cxx | branch = release/2016.1/~ }}
flightgear/simgear/release/2016.1/~/simgear/ephemeris/ephemeris.cxx
File and a tag
{{simgear source | path = simgear/ephemeris/ephemeris.cxx | tag = version/2016.1.1/~ }}
flightgear/simgear/version/2016.1.1/~/simgear/ephemeris/ephemeris.cxx
File and a commit
{{simgear source | path = simgear/sky/skydome.cxx | commit = 86892d }}
flightgear/simgear/86892d/simgear/sky/skydome.cxx
{{simgear source | path = simgear/sky/skydome.cxx | commit = 86892d87e9d8f7054aeb43e66bda0d75fe41258f }}
flightgear/simgear/86892d87e9d8f7054aeb43e66bda0d75fe41258f/simgear/sky/skydome.cxx
Commit
{{simgear source | commit = 7f4f77 | view = commit }}
flightgear/simgear/7f4f77 commit view
File and line number
{{simgear source | path = simgear/nasal/nasal.h | line = 46 }}
flightgear/simgear/next/simgear/nasal/nasal.h#l46
File, line number, and commit
{{simgear source | path = simgear/nasal/nasal.h | commit = 1786692406214447db12b9d5af5364582af23d3b | line = 67 }}
flightgear/simgear/1786692406214447db12b9d5af5364582af23d3b/simgear/nasal/nasal.h#l67
Custom label given
{{simgear source | path = simgear/nasal/nasal.h | text = The main Nasal header file }}
Prefix of $SIMGEAR_SRC
{{simgear source | path = simgear/nasal/nasal.h | pre = $SIMGEAR_SRC }}
$SIMGEAR_SRC/simgear/nasal/nasal.h
Full path
{{simgear source | path = simgear/nasal/nasal.h | commit = 1786692406214447db12b9d5af5364582af23d3b | line = 67 | full = 1 }}
Aliased parameters
This is for https://sourceforge.net/p/flightgear/simgear/ci/version/2016.1.1/~/tree/simgear/ephemeris/ephemeris.cxx.
{{simgear source | f = simgear/ephemeris/ephemeris.cxx | b = version/2016.1.1/~ | full = 1 }}
Numbered parameters
This is for https://sourceforge.net/p/flightgear/simgear/ci/version/2016.1.1/~/tree/simgear/ephemeris/ephemeris.cxx.
{{simgear source | simgear/ephemeris/ephemeris.cxx | b = version/2016.1.1/~ | full = 1 }}
Related templates
|