한국   대만   중국   일본 
Module:Wd/i18n - Wikipedia Jump to content

Module : Wd/i18n

Permanently protected module
From Wikipedia, the free encyclopedia

-- The values and functions in this submodule should be localized per wiki.


local
 p
 =
 {}


function
 p
.
init
(
aliasesP
)

	p
 =
 {

		[
"errors"
]
 =
 {

			[
"unknown-data-type"
]
          =
 "Unknown or unsupported datatype '$1'."
,

			[
"missing-required-parameter"
]
 =
 "No required parameters defined, needing at least one"
,

			[
"extra-required-parameter"
]
   =
 "Parameter '$1' must be defined as optional"
,

			[
"no-function-specified"
]
      =
 "You must specify a function to call"
,
  -- equal to the standard module error message

			[
"main-called-twice"
]
          =
 'The function "main" cannot be called twice'
,

			[
"no-such-function"
]
           =
 'The function "$1" does not exist'
,
  -- equal to the standard module error message

            [
"malformed-reference"
]
        =
 "Error: Unable to display the reference properly. See [[Module:wd/doc#References|the documentation]] for details.[[Category:Module:Wd reference errors]]"

		},

		[
"info"
]
 =
 {

			[
"edit-on-wikidata"
]
 =
 "Edit this on Wikidata"

		},

		[
"numeric"
]
 =
 {

			[
"decimal-mark"
]
 =
 "."
,

			[
"delimiter"
]
    =
 ","

		},

		[
"datetime"
]
 =
 {

			[
"prefixes"
]
 =
 {

				[
"decade-period"
]
 =
 ""

			},

			[
"suffixes"
]
 =
 {

				[
"decade-period"
]
 =
 "s"
,

				[
"millennium"
]
    =
 " millennium"
,

				[
"century"
]
       =
 " century"
,

				[
"million-years"
]
 =
 " million years"
,

				[
"billion-years"
]
 =
 " billion years"
,

				[
"year"
]
          =
 " year"
,

				[
"years"
]
         =
 " years"

			},

			[
"julian-calendar"
]
 =
 "Julian calendar"
,
  -- linked page title

			[
"julian"
]
          =
 "Julian"
,

			[
"BCE"
]
             =
 "BCE"
,

			[
"CE"
]
              =
 "CE"
,

			[
"common-era"
]
      =
 "Common Era"
  -- linked page title

		},

		[
"coord"
]
 =
 {

			[
"latitude-north"
]
 =
 "N"
,

			[
"latitude-south"
]
 =
 "S"
,

			[
"longitude-east"
]
 =
 "E"
,

			[
"longitude-west"
]
 =
 "W"
,

			[
"degrees"
]
        =
 "°"
,

			[
"minutes"
]
        =
 "'"
,

			[
"seconds"
]
        =
 '"'
,

			[
"separator"
]
      =
 ", "

		},

		[
"values"
]
 =
 {

			[
"unknown"
]
 =
 "unknown"
,

			[
"none"
]
    =
 "none"

		},

		[
"cite"
]
 =
 {

			[
"version"
]
 =
 "5"
,
  -- increment this each time the below parameters are changed to avoid conflict errors

			[
"web"
]
 =
 {

				-- <= left side: all allowed reference properties for *web page sources* per https://www.wikidata.org/wiki/Help:Sources

				-- => right side: corresponding parameter names in (equivalent of) [[:en:Template:Cite web]] (if non-existent, keep empty i.e. "")

				[
aliasesP
.
statedIn
]
                =
 "website"
,

				[
aliasesP
.
referenceURL
]
            =
 "url"
,

				[
aliasesP
.
publicationDate
]
         =
 "date"
,

				[
aliasesP
.
retrieved
]
               =
 "access-date"
,

				[
aliasesP
.
title
]
                   =
 "title"
,

				[
aliasesP
.
archiveURL
]
              =
 "archive-url"
,

				[
aliasesP
.
archiveDate
]
             =
 "archive-date"
,

				[
aliasesP
.
language
]
                =
 "language"
,

				[
aliasesP
.
author
]
                  =
 "author"
,
  -- existence of author1, author2, author3, etc. is assumed

				[
aliasesP
.
authorNameString
]
        =
 "author"
,

				[
aliasesP
.
publisher
]
               =
 "publisher"
,

				[
aliasesP
.
quote
]
                   =
 "quote"
,

				[
aliasesP
.
pages
]
                   =
 "pages"
,
  -- extra option

				[
aliasesP
.
publishedIn
]
             =
 "website"
,

				[
aliasesP
.
sectionVerseOrParagraph
]
 =
 "at"

			},

			[
"q"
]
 =
 {

				-- <= left side: all allowed reference properties for *sources other than web pages* per https://www.wikidata.org/wiki/Help:Sources

				-- => right side: corresponding parameter names in (equivalent of) [[:en:Template:Cite Q]] (if non-existent, keep empty i.e. "")

				[
aliasesP
.
statedIn
]
                =
 "1"
,

				[
aliasesP
.
pages
]
                   =
 "pages"
,

				[
aliasesP
.
column
]
                  =
 "at"
,

				[
aliasesP
.
chapter
]
                 =
 "chapter"
,

				[
aliasesP
.
sectionVerseOrParagraph
]
 =
 "section"
,

				[
"external-id"
]
                    =
 "id"
,
  -- used for any type of database property ID

				[
aliasesP
.
title
]
                   =
 "title"
,

				[
aliasesP
.
publicationDate
]
         =
 "date"
,

				[
aliasesP
.
retrieved
]
               =
 "access-date"

			}

		}

	}


	p
.
getOrdinalSuffix
 =
 function
(
num
)

		if
 tostring
(
num
):
sub
(
-
2
,
-
2
)
 ==
 '1'
 then

			return
 "th"
  -- 10th, 11th, 12th, 13th, ... 19th

		end


		num
 =
 tostring
(
num
):
sub
(
-
1
)


		if
 num
 ==
 '1'
 then

			return
 "st"

		elseif
 num
 ==
 '2'
 then

			return
 "nd"

		elseif
 num
 ==
 '3'
 then

			return
 "rd"

		else

			return
 "th"

		end

	end


	p
.
addDelimiters
 =
 function
(
n
)

		local
 left
,
 num
,
 right
 =
 string.match
(
n
,
 "^([^%d]*%d)(%d*)(.-)$"
)


		if
 left
 and
 num
 and
 right
 then

			return
 left
 ..
 (
num
:
reverse
():
gsub
(
"(%d%d%d)"
,
 "%1"
 ..
 p
[
'numeric'
][
'delimiter'
]):
reverse
())
 ..
 right

		else

			return
 n

		end

	end


	return
 p

end


return
 p