Misplaced Pages

Template talk:ISO 639 name

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

This is an old revision of this page, as edited by Gonnym (talk | contribs) at 17:44, 26 December 2024 (Mono language issue: Reply). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Revision as of 17:44, 26 December 2024 by Gonnym (talk | contribs) (Mono language issue: Reply)(diff) ← Previous revision | Latest revision (diff) | Newer revision → (diff)
Template:ISO 639 name is permanently protected from editing because it is a heavily used or highly visible template. Substantial changes should first be proposed and discussed here on this page. If the proposal is uncontroversial or has been discussed and is supported by consensus, editors may use {{edit template-protected}} to notify an administrator or template editor to make the requested edit. Usually, any contributor may edit the template's documentation to add usage notes or categories.

Any contributor may edit the template's sandbox. This template does not have a testcases subpage. You can create the testcases subpage here.


This template does not require a rating on Misplaced Pages's content assessment scale.
It is of interest to the following WikiProjects:
WikiProject iconLanguages
WikiProject iconThis template is within the scope of WikiProject Languages, a collaborative effort to improve the coverage of languages on Misplaced Pages. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.LanguagesWikipedia:WikiProject LanguagesTemplate:WikiProject Languageslanguage
WikiProject iconWriting systems
WikiProject iconThis template falls within the scope of WikiProject Writing systems, a WikiProject interested in improving the encyclopaedic coverage and content of articles relating to writing systems on Misplaced Pages. If you would like to help out, you are welcome to drop by the project page and/or leave a query at the project’s talk page.Writing systemsWikipedia:WikiProject Writing systemsTemplate:WikiProject Writing systemsWriting system

Archives
Archive 1


This page has archives. Sections older than 180 days may be automatically archived by Lowercase sigmabot III when more than 3 sections are present.

Template broken (2024)

Template looks like it's broken. It's giving the following as an output: Lua error in package.lua at line 80: module 'Module:Language/data/ISO 639 deprecated' not found. HapHaxion (talk / contribs) 14:59, 11 July 2024 (UTC)

Two suggestions

Hi, is it possible to add two features?

Thanks.-- Carnby (talk) 20:12, 3 September 2024 (UTC)

ISO 639 does not recognize Mozambican Portuguese. Not in ISO 639? not going to be added to a template specifically for ISO 639 recognized languages.
If you want to create a shortcut (did you mean a redirect?) to {{ISO 639 name link}}, go ahead.
Trappist the monk (talk) 20:41, 3 September 2024 (UTC)
I've just discovered {{Llink}}, seems to be fine. Thanks anyway.-- Carnby (talk) 05:15, 4 September 2024 (UTC)

Mono language issue

There is an issue with this language, see the following:

Gonnym (talk) 13:45, 27 October 2024 (UTC)

You must tell the template which of the four you want. The name must be exactly as it is listed in the ISO 639 data modules (for a list of them, see Module:ISO 639 name § Data mapping):
  • {{ISO 639 code|Mono (Democratic Republic of Congo)}} → mnh
  • {{ISO 639 code|Mono (USA)}} → mnr
  • {{ISO 639 code|Mono (Cameroon)}} → mru
  • {{ISO 639 code|Mono (Solomon Islands)}} → mte
Trappist the monk (talk) 14:17, 27 October 2024 (UTC)
Ah, thanks for reminding me of this. Do you have any idea why {{IPA|mnr|test}} gets the non-disambiguated name (Category:Pages with Mono IPA)? Gonnym (talk) 14:26, 27 October 2024 (UTC)
To get the language name, Module:IPA uses:
{{lang|fn=name_from_tag|mnr}} → Mono (lines 65–72)
Module:Lang always strips IANA/ISO disambiguators. Module:IPA might do better to fetch the name from Module:ISO 639 name using the |raw=yes parameter:
{{#invoke:ISO 639 name|iso_639_code_to_name|mnr|raw=yes}} → Mono (USA)
also available to the template:
{{ISO 639 name|mnr|raw=yes}} → Mono (USA)
Trappist the monk (talk) 15:00, 27 October 2024 (UTC)
Is _iso_639_code_to_name (frame) meant as a module entry point also? It currently doesn't work like _iso_639_name_to_code (args). Gonnym (talk) 15:29, 27 October 2024 (UTC)
Not clear to me why the code is written as it is. Usually, when I use an underscore-prefixed function name, that name (if exported) is for access from another module. _iso_639_code_to_name (frame) is not exported and because it accepts frame as a variable, would be a template access point. Mayhaps I got started on creating module access points and got side-tracked? Don't know, I'll give some thought to fixing that.
Trappist the monk (talk) 16:43, 27 October 2024 (UTC)
@Trappist the monk: That doesn't work because the input can be an IETF tag. Barring an exposed function to fetch the language name, the article to link, the raw name, and the canonical/sanitized tag from an IETF tag all at once (which would be great), is there no equivalent to {{#invoke:Lang|category_from_tag}} except it returns just the language part, i.e. without "Articles containing" or "-language text"? Nardog (talk) 05:27, 26 December 2024 (UTC)
What do you mean by: the input can be an IETF tag? {{ISO 639 name}} supports ISO 639-1, -2, -3, and -5 language tags only. It does not support IETF language tags. The only category link emitted by {{ISO 639 name}} is Category:ISO 639 name template errors; there is no other categorization.
Trappist the monk (talk) 15:20, 26 December 2024 (UTC)
You said Module:IPA might do better to fetch the name from Module:ISO 639 name using the |raw=yes parameter. I'm pointing out that doesn't work because e.g. {{IPA|pt-BR|...}} needs to show the same label as {{langx|pt-BR|...}} (which, if used in an article, puts it in Category:Articles containing Brazilian Portuguese-language text rather than Category:Articles containing Portuguese-language text). Nardog (talk) 15:28, 26 December 2024 (UTC)
That was for the rare case of Mono, a name shared by several different languages, each with its own language tag. If {{IPA}} and {{Langx}} must show the same label then {{ISO 639 name}} is not the correct tool for {{IPA}}.
How {{langx}} categorizes out-of-scope for {{ISO 639 name}}.
This is the wrong venue to be discussing changes to Module:Lang. Certainly Module:Lang can be tweaked so that name_from_tag() supports |raw=yes. It would be up to Module:IPA to decide what it does with that parameter.
Trappist the monk (talk) 16:42, 26 December 2024 (UTC)
You're telling me. I'm pointing out you and Gonnym were missing a bigger picture when suggesting Module:IPA use this module.
So is there no exposed function that converts e.g. pt-BR to "Brazilian Portuguese" and mnr to "Mono (USA)", i.e. what {{lang(x)}} does to generate categories? Can you make one? Nardog (talk) 16:52, 26 December 2024 (UTC)
There is no support in Module:ISO 639 name for IETF language tags because IETF is not ISO 639. Module:ISO 639 name will return a language name from an ISO 639 language tag:
{{ISO 639 name|pt-BR}} → Portuguese error: pt-BR is an IETF tag (help)
{{ISO 639 name|mnr}} → Mono
and to get the name with disambiguator (if present):
{{ISO 639 name|mnr|raw=yes}} → Mono (USA)
Trappist the monk (talk) 17:16, 26 December 2024 (UTC)
Again, I'm only asking here because you were already having a relevant discussion here. I'm not asking if this module has it, I'm asking if any module does. Nardog (talk) 17:19, 26 December 2024 (UTC)
Then Module:Lang should also have a |raw=yes option to get the full name. Gonnym (talk) 17:44, 26 December 2024 (UTC)
Categories: