Module:T-Person: Difference between revisions

// via Wikitext Extension for VSCode
// via Wikitext Extension for VSCode
Line 111: Line 111:
     end,
     end,
      
      
     -- Languages field processor
     -- Languages field processor with native name display
     languages = function(value)
     languages = function(value)
         if not value or value == "" then return value end
         if not value or value == "" then return value end
          
          
        -- Use the sophisticated formatLanguages function directly
        -- This includes native language names alongside English names
         local NormalizationLanguage = require('Module:NormalizationLanguage')
         local NormalizationLanguage = require('Module:NormalizationLanguage')
        local languages = TemplateHelpers.splitMultiValueString(value)
        local normalized = {}
          
          
         -- Normalize language names
         -- Ensure native forms are displayed (default is already true)
        for i, language in ipairs(languages) do
        NormalizationLanguage.setShowNativeForms(true)
            normalized[i] = NormalizationLanguage.normalize(language) or language
        end
          
          
         -- Format as HTML list
         -- This will return formatted HTML with native language names
        local listItems = {}
         return NormalizationLanguage.formatLanguages(value)
        for i, language in ipairs(normalized) do
            listItems[i] = string.format("<li>%s</li>", language)
        end
       
         return string.format('<ul class="template-list template-list-language">%s</ul>',
            table.concat(listItems, ""))
     end
     end
}
}