> Lukáš Procházka > 31. Dezember 2015 um 11:07 > Hello, > > how to detect which language set by \mainlanguage[xy] is active? > How to detect it by a) ConTeXt and b) Lua? > > Something like: > > \mainlanguage[cz] > > \ifmainlanguage{cz} > Do someting > \fi > > and > > if context.languages.active() == "cz" then > -- Do somthing > end You can use the modes mechanism for this because you can use ** to check for the main language (set by \mainlanguage) and * for the current language (set by \language). \mainlanguage[cs] %\language[en] \starttext \doifelsemode{**cs}{The main language is Czech.}{The main language is “\currentmainlanguage”.} \startluacode if tex.modes["**cs"] then context("The main language is Czech.") else context("The main language is “\\currentmainlanguage”.") end \stopluacode \blank \doifelsemode{*cs}{The current language is Czech.}{The current language is “\currentlanguage”.} \startluacode if tex.modes["*cs"] then context("The current language is Czech.") else context("The current language is “\\currentlanguage”.") end \stopluacode \stoptext Wolfgang