Plantilla:Val/sandbox
Aquesta plantilla utilitza una crida a un mòdul de tipus Lua, nom que li ve del llenguatge Lua que utilitza. Per tant, si volguéssiu modificar-la, abans hauríeu d'estar familiaritzats amb aquest llenguatge i les funcions de l'extensió Scribunto. Vegeu com fer proves de plantilles.
Aquesta plantilla utilitza el següent mòdul: |
Introducció
[modifica]Val s'especialitza en valors numèrics, especialment aquells amb notacions científiques, d'incertesa, i en valors de mesura amb unitats físiques. Com que aquestes expressions estan cobertes pel Manual d'estil, Val us proporciona la sortida estilitzada i evita que s'ajusti (parteixi el valor, si conté, per exemple, el número i les unitats de mesura) entre línies.
Expressió d'una mesura:
{{val|123456.78901}}
→ valor, formatat amb punts: 123.456,78901, o amb espais|fmt=gaps
→ 123456,78901{{val|número|número}}
→ valor ± incertesa, com ara 123.478±56{{val|número|(número)}}
→ valor(incertesa), com ara 12.345(56){{val|número|número|número}}
→valor +incertesa
−incertesa com ara 1.234+56
−78
Expressió d'una mesura amb unitats: {{val|4|ul=m2}}
→ 4 m2. El m2 és un "codi d'unitat" que Val utilitza per buscar l'enllaç a l'article de la unitat i el format del símbol de la unitat. Vegeu {{Val/list}}.
Hi ha un gran nombre de codis d'unitats que Val entén i manté “al dia”. Un codi d'unitat és el nom de la unitat abreujat, però pot participar en una unitat composta o composta, amb "multiplicadors" o "divisors". Vegeu Mòdul:Val/units.
Hi ha una mica de flexibilitat del codi d'unitat, proporcionant quatre paràmetres per treballar-hi: si disposa d'un enllaç o no (vegeu Sobreenllaç) i si s'enllaça el numerador o el denominador d'una relació d'unitats per separat.
{{val|número|ul=codi d'unitat}}
→ númerosymbol, com ara 9,8 km2{{val|número|u=codi d'unitat}}
→ number symbol, com ara 9,8 km2{{val|número|u=codi d'unitat|upl=codi d'unitat}}
→ número symbol/symbol, com ara 9,8 gal/min{{val|número|ul=unit code|up=codi d'unitat}}
→ número symbol/symbol, com ara 9,8 pc/any
Per evitar el sistema de codis de la unitat, amb |u=
no reconeix el codi de la vostra unitat, acceptarà qualsevol wikitext i es mostrarà com de costum.
{{val|5.4|u=[[kg]]⋅[[metre|m]]/s<sup>2</sup>}}
→ 5,4 kg⋅m/s2{{val|7.6|u=[[metre per segon al quadrat|m/s<sup>2</sup>]]}}
→ 7,6 m/s2
Vegeu Mòdul:Val/units per afegir unitats al sistema de codis d'unitat.
De vegades, un número i un codi d'unitat no són suficients. També hi ha disponibles un prefix o un sufix, |p=
i |s=
.
{{val|7600|u=C⋅Ga|p=>|s=<}}
→ >7.600 C⋅Ga<{{val|7600|u=C|p=<span style="color:green"><sup>|s=</sup></span>}}
→ 7.600 C
Vegeu {{val/testcases}} per obtenir informació sobre els paràmetres val mitjançant un exemple. És exhaustiu i hi ha més de 100 exemples.
Arguments
[modifica]Val pren tres paràmetres sense nom. El primer sempre és el valor numèric. Quan el segon i el tercer són números, es converteixen en diverses notacions d'incertesa, però el segon paràmetre sense nom també pot servir per "unir gramaticalment" el primer i el tercer número.
Val neteja els espais circumdants en els seus paràmetres sense nom.
1r or |1= |
Un número. Pot estar en una notació amb punt decimal o amb notació e. Aquest número és la base del format Val.
|
|fmt=
|
Per defecte, els números es formaten amb punts que separen grups de tres dígits tant en la part sencera com en la part fraccionària. Utilitzeu |
|end= |
Posa alguna cosa al final del número principal (abans de qualsevol altra cosa que pugui seguir).
|
2n o |2= |
Incertesa en altre format.
|
3r o |3=
|
Incertesa asimètrica.
|
|errend= o |+errend= i |-errend= |
Afegeix alguna cosa després d'una incertesa.
|
|u= o |ul= |
The unit code. Val adds a space and the unit.
|
|up= o |upl= |
A unit code, but instead of a space Val adds a slash and the unit, a "per" unit (the denominator), to form a ratio.
|
|p= |
Prefix the entire Val expression. Non-spaced, but accepts markup.
|
|s= |
Suffix the entire Val expression. Non-spaced, but accepts markup.
|
|e=
|
Exponent. Val alternatively accepts e notation in the first parameter; these are mutually exclusive (see "1st" argument above).
|
|long scale= |
Usually a unit is the short ton and billion means 1×109. But there are long versions of these units and others. Use |long scale=on to assign your unit to the long scale instead. The unit code's link will change and it will sort differently in tables. "See Long and short scales".
|
|nocategory= |
If set to any value, errors in the use of this template will not cause the page to be added to the categoria Pàgines amb ús de plantilles de format incorrecte. This is useful for documentation and test pages that do not need to be fixed. |
Errors
[modifica]There is strict checking on the validity of arguments; any incorrect use will result in an error, which is displayed using {{FormattingError}}. Pages that contain incorrect use of this template will show up on Categoria:Pàgines amb ús de plantilles de format incorrecte.
Val comprova si hi ha paràmetres no admesos i dóna un avís relativament clar si es troba. Manteniu el ratolí sobre "avís" per veure els detalls. A continuació, es mostren els advertiments:
{{val|1.23|exp=6|u=m/s}}
→ 1,23 m/sError a {{val}}: El paràmetre "exp=6" de val no s'admet{{val|1.23|us=kbit/s}}
→ 1,23Error a {{val}}: El paràmetre "us=kbit/s" de val no s'admet{{val|1.23|.05|.04|.03|u=m/s}}
→ 1,23+0,05
−0,04 m/sError a {{val}}: S'ha ignorat el paràmetre 4 de val
Format convention
[modifica]As mentioned before, {{val}} should produce formatting compliant with Wikipedia's Manual of Style. It currently produces formatting compliant with the U.S. Government Printing Office Style Manual, in rules 12.9e and 12.14, which requires that the decimal separator be a full stop; i.e. “decimal point” (.), requires comma-delimiting to the left of the decimal point for numbers with four or more digits to the left (values of 1.000 or more), and also requires space-delimiting to the right of the decimal point for numbers containing five or more digits to the right (e.g., 0,12345 and 5,12345 and 125,12345).
Note that if {{val}} is used on numbers simultaneously comprising four or more digits to the left of the decimal point and five or more digits to the right, the resultant expression will delimited with commas left and spaces (actually non-selectable, non-breaking, narrow gaps) right (see below).
Ordenació
[modifica]La clau d'ordenació de cada unitat ordenable és visible a {{Val/list}}.
Aquí teniu un exemple en directe que mostra el marcador mínim per a una taula ordenable:
{| class="sortable" ! Prova d'ordenació de val ! En la unitat base |- | {{val|3|ul= Mm }} | {{val|3000000|u=m}} |- | {{val|4e6|ul= m }} | {{val|4000000|u=m}} |- | {{val|1|ul= km }} | {{val|1000|u=m}} |- | {{val|5e3|u= m }} | {{val|5000|u=m}} |- | {{val|2|u= m }} | {{val|2|u=m}} |} |
|
Un valor d'ordenació es relaciona amb una expressió Val de la següent manera.
- El valor numèric és un punt de partida.
- Si la unitat té un prefix SI, s'aplicarà aquest ordre de magnitud.
- S'aplica el valor de la unitat del seu propi sistema d'unitats.
- Si la unitat és composta, cada subunitat es multiplica o divideix per la seva dimensió.
- El resultat es passa a {{ntsh}} que aplica una fórmula de normalització.
- La sortida de {{ntsh}} s'afegeix (només de manera conductual, és a dir, "oculta") a la taula com de costum, mitjançant l'atribut data-sort-value d'una taula.
Exemples
[modifica]{{val|1234567.1234567}}
→ 1.234.567,1234567
⟨{{val| 1234567.1234567 }}⟩
→ ⟨1.234.567,1234567⟩
{{val|.1234567|fmt=commas}}
→ 0,1234567
{{val|+1234567|fmt=commas}}
→ +1.234.567
{{val|-1234567}}
→ −1.234.567
Incertesa
[modifica]{{val|1.234|0.005}}
→ 1,234±0,005
{{val|1.234|0.005|e=3}}
→ (1,234±0,005)×103
{{val|1.234|+0.005|-0.006}}
→ 1,234+0,005
−0,006
{{val|1.234|(5)}}
→ 1,234(5)
Unitats
[modifica]{{val|1.234|u=m}}
→ 1,234 m
{{val|1.234|u=m2}}
→ 1,234 m2
{{val|1.234|ul=m}}
→ 1,234 m
{{val|123.4|ul=USgal}}
→ 123,4 US gal
{{val|12.34|ul=mpgimp}}
→ 12,34 mpg-imp
{{val|12.34|u=deg}}
→ 12,34°
{{val|1.234|0.005|u='}}
→ 1,234′±0,005′
{{val|1.234|+0.005|-0.006|u="}}
→ 1,234″+0,005″
−0,006″
{{val|1.234|u=%}}
→ 1,234%
{{val|1.234|end= [[m/s]]}}
→ 1,234 m/s
{{val|12.34|u=degC}}
→ 12,34 °C
{{val|12.34|u=K}}
→ 12,34 K
Exponents
[modifica]{{val|e=5}}
→ 105
{{val|e=5|ul=m}}
→ 105 m
{{val|1.234e5|ul=m}}
→ 1,234×105 m
{{val|1.234|e=5|ul=m}}
→ 1,234×105 m
{{val|1.234e7|0.056}}
→ (1,234±0,056)×107
{{val|1.234|0.056|e=7}}
→ (1,234±0,056)×107
{{val|1.23456e-9|+0.00007|-0.00008|ul=m/s}}
→ 1,23456+0,00007
−0,00008×10−9 m/s
{{val|1.23456|+0.00007|-0.00008|e=-9|ul=m/s}}
→ 1,23456+0,00007
−0,00008×10−9 m/s
{{val|1.234e7|0.056|ul=psi}}
→ (1,234±0,056)×107 psi
{{val|1.234|0.056|e=7|ul=psi}}
→ (1,234±0,056)×107 psi
{{val|1.234e-2|(5)}}
→ 1,234(5)×10−2
{{val|1.234|(5)|e=-2}}
→ 1,234(5)×10−2
Prefix/sufix
[modifica]{{val|12.34|p=Δ }}
→ Δ 12,34
{{val|12.34|u=%|p=≅}}
→ ≅12,34%
{{val|12.34|0.25|s=%}}
→ 12,34±0,25%
Numerador/denominador
[modifica]{{val|1.234|e=7|ul=W|up=m2}}
→ 1,234×107 W/m2
- More examples
See the testcases at Val/test.
Performance impact
[modifica]For most uses, in the text of articles, Template:Val will not restrict performance, but when used inside the wikitext markup of large templates, there are some restrictions. When displaying integer amounts, Template:Val has an internal expansion depth of 15 levels, but for numbers with decimal portions, it uses 22 levels, or more.
How to add units
[modifica]The unit you will add is required to have a link version and a non-link version for stylistic reasons (including the ability of editors to avoid overlinking). The link version will be added to Val/unitswithlink to process the ul
and upl
parameters. The non-link version might need to be added to Val/units to process the u
and up
parameter; it depends on whether or not the unit needs markup, or if the characters users will give to the ul
or u
parameter are different than what is displayed, or if "technical reasons" are discovered. (See below.)
Note these points before adding units:
- For composite units you should probably link the whole, not individual units. For example the line you add would say
|m·s-1=[[Velocity|m·s{{sup|−1}}]]
linking to Velocity, not|m*s-1=[[Metre|m]]·[[Second|s]]{{sup|−1}}
. List of common physics notations has many examples of composite units that have there own page. - The val user can compose their own divisor unit from an existing unit, writing
{{val|ul=m|upl=s}}
to render there own "m/s" with two links:m
to Meter ands
to Second. - The val user can compose their own multiplier units by using the
end
parameter to prepend a string. For example, to prepend "Ma", they could write{{val|333|end= Ma|ul=uBP}}
, rendering "333 Ma 14C yr BP". These cannot be linked.
The technique involves activating "Show changes" to catch unintended changes that are otherwise difficult to detect in any of the many pages using val that would be affected.
- Edit {{Val/unitswithlink/test}}. The LHS of the "=" sign is what val users will give to the
ul
(orupl
) parameter. Activate "Show preview". This will run your test data through val, which would be similar to running val itself in a sandbox. Prove the intended link and markup here because you will not be able to show a preview in the next steps. Copy what you will be adding to the wiki with the next steps. Save the page to serve as a "current list". - Edit {{Val/unitswithlink}}. Paste the identical line proven in step 1. Sort order is not important. Show changes, and then save.
- If the unit will display differently from what is typed into
u=
, edit {{Val/units}}. Paste the identical line, and remove any links from the RHS of the "=" sign, being careful to leave any rendering work. Show changes, and then save. - Important. Run
{{Val|u=}}
and{{Val|ul=}}
in a sandbox and verify that your unit has an identical appearance in both cases. Edit {{Val/units}} to make any corrections. (The discrepancy occured for technical reasons.)
The last step is an important to the manual of style for dates and numbers.
FAQ and comments
[modifica]- Q: Why should I use val?
- A1: {{Val}} formats numbers:
- inserts commas into large numbers and spaces between decimal digits
- handles uncertainties in measurements and significant digits, providing a ± character, etc.
- handles exponents of 10 and scientific notation
- replaces "-" (hyphen) with a "−" (minus sign)
- A2: It preserves spacing:
- It makes sure the value does not wrap at the end of a line, so that it can always be read as a single value on one line in the text.
- It spaces the various parts of the value where they should be
- A3: It automates the markup for, and a link to a displayed unit.
- A4: Val helps make Wikipedia more consistent. It adheres to the Wikipedia Manual of Style for numbers. Updates to the Wikipedia Manual of Style for numbers can be applied to this template, and result in automatic modification on values that use val. All this makes sure all values on all pages have the same look and feel because they will all use the same spacing, font size, positioning, etc, and makes updating and checking by the bots easier because they can recognize a value for what it is.
- Q: Why not use <math>?
- A: For the same reasons [[Help:Math#Pros_of_HTML|HTML might be preferred over Plantilla:TeX]]:
- Because the font in math tags differs both in face and size from the prose, which can disturb the layout of a page when used inline with the prose.
- You cannot cut and paste a bitmap image rendered by the Latex.
- Images are slower to load and use more bandwidth, which is especially bad for the mobile version of Wikipedia.
- <math> does not automatically adhere to the Wikipedia Manual of Style for numbers.
- Q: Are there any known issues with val?
- A1: Because numbers can only be stored with a limited precision by Wikipedia servers, val cannot handle very large numbers, such as 123456789123456789. This is reported using a {{FormattingError}}, so it should be easy to spot. Since there is very limited use for such large numbers, there is no fix planned for this.
- A2: This template has been in full use on many pages for quite some time without major problems or breaking changes. Technically, there is no good reason not to try val.
- Q: How should I use val?
- A1: Val probably already has your unit on its current list. If not, then your unit can be added.
- A2: To avoid over linking switch from the ul= to the u= parameter of the given unit.
See also
[modifica]- {{Valid}} : number validity checking (for parameters 1, 2, 3, e : value, and uncertainties, base-10 exponent)
- {{FormattingError}} : for reporting inconsistent parameters
- {{Val/delimitnum}} : for formatting a decimal number with delimiters between groups of digits
- {{Su}} : for formatting exponents, or two-values incertainty one below the other (monospaced : currently not printable to PDF)
- {{±}} : for positive <sup> and negative <sub>
- {{Val/units}} : for formatting unit names (contents of parameters u or up)
- {{Val/unitswithlink}} : for formatting unit names with links (contents of parameters ul or upl)
TemplateData
[modifica]Aquesta és la documentació dels paràmetres de la plantilla utilitzada pel nou editor visual.
Val
Aquesta plantilla s'utilitza per presentar fàcilment valors en la notació científica, incloses la incertesa i/o les unitats, tal com s'explica al Manual d'estil de la Viquipèdia.
Paràmetre | Descripció | Tipus | Estat | |
---|---|---|---|---|
Número | 1 | Un número en notació de punt decimal o en notació e. La base principal de l'expressió Val.
| Cadena | obligatori |
Incertesa | 2 | cap descripció | Cadena | opcional |
Incertesa asimètrica - | 3 | cap descripció | Cadena | opcional |
Format | fmt | Per defecte, els números es formaten amb punts que separen grups de tres dígits tant en la part sencera com en la part fraccionada. Utilitzeu "gaps" (sense cometes) per forçar espais. Utilitzeu "none" sense cometes) per no formatar (sense punts).
| Cadena | opcional |
Final | end | Posa alguna cosa al final del número principal (abans que qualsevol altra cosa que pugui seguir). | Cadena | opcional |
Unitat | u | El codi de la unitat. Un espai i la unitat s'afegiran després del número.
| Cadena | opcional |
Unitat - enllaç al wiki | ul | El codi de la unitat que s'enllaçarà a una pàgina amb informació sobre la unitat. Un espai i aquesta unitat s'afegiran després del número.
| Cadena | opcional |
Unitat que s'ha de posar amb una barra inclinada (/) | up | Un codi d'unitat, però en lloc d'un espai, la plantilla afegeix una barra inclinada i la unitat, una unitat "per" (el denominador), per formar una fracció.
| Cadena | opcional |
La unitat s'ha de posar amb una barra inclinada (/) – enllaç al wiki | upl | Un codi d'unitat enllaçat al wiki, però en lloc d'un espai, la plantilla afegeix una barra inclinada i la unitat, una unitat "per" (el denominador), per formar una fracció.
| Cadena | opcional |
Prefix | p | Prefix per a tota l'expressió de Val. No espaiat, però accepta marques. | Contingut | opcional |
Sufix | s | Sufix per a tota l'expressió Val. No espaiat, però accepta marques. | Contingut | opcional |
Exponent | e | Val també accepta la notació e en el primer paràmetre; són excloents mútuament (vegeu el paràmetre Número).
| Nombre | opcional |
errend | errend | cap descripció | Desconegut | opcional |
4 | 4 | cap descripció | Desconegut | opcional |
5 | 5 | cap descripció | Desconegut | opcional |
Els editors poden fer proves amb aquesta plantilla al seu espai de proves (crea | modifica)
Afegiu categories en la subpàgina /ús. Vegeu les subpàgines d'aquesta plantilla, utilització de paràmetres.