From 48749ca873a5ba385dc372a6a57738024cc2acfb Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Wed, 29 Jan 2020 13:37:46 +0100 Subject: [PATCH] treewide: switch to bcp47 language codes Fixes: #3477 Signed-off-by: Jo-Philipp Wich --- .../po/{pt-br => pt_BR}/adblock.po | 0 .../po/{zh-cn => zh_Hans}/adblock.po | 0 .../po/{zh-tw => zh_Hant}/adblock.po | 0 .../po/{zh-cn => zh_Hans}/advanced-reboot.po | 0 .../po/{zh-tw => zh_Hant}/advanced-reboot.po | 0 .../luci-app-ahcp/po/{no => nb_NO}/ahcp.po | 0 .../luci-app-ahcp/po/{pt-br => pt_BR}/ahcp.po | 0 .../po/{zh-cn => zh_Hans}/ahcp.po | 0 .../po/{zh-tw => zh_Hant}/ahcp.po | 0 .../po/{pt-br => pt_BR}/aria2.po | 0 .../po/{zh-cn => zh_Hans}/aria2.po | 0 .../po/{zh-tw => zh_Hant}/aria2.po | 0 .../{zh-cn => zh_Hans}/attendedsysupgrade.po | 0 .../{zh-tw => zh_Hant}/attendedsysupgrade.po | 0 .../po/{zh-cn => zh_Hans}/banip.po | 0 .../po/{zh-tw => zh_Hant}/banip.po | 0 .../po/{zh-cn => zh_Hans}/bcp38.po | 0 .../po/{zh-tw => zh_Hant}/bcp38.po | 0 .../po/{zh-cn => zh_Hans}/bmx7.po | 0 .../po/{zh-tw => zh_Hant}/bmx7.po | 0 .../po/{zh-cn => zh_Hans}/clamav.po | 0 .../po/{zh-tw => zh_Hant}/clamav.po | 0 .../po/{no => nb_NO}/commands.po | 0 .../po/{pt-br => pt_BR}/commands.po | 0 .../po/{zh-cn => zh_Hans}/commands.po | 0 .../po/{zh-tw => zh_Hant}/commands.po | 0 .../po/{no => nb_NO}/coovachilli.po | 0 .../po/{pt-br => pt_BR}/coovachilli.po | 0 .../po/{zh-cn => zh_Hans}/coovachilli.po | 0 .../po/{zh-tw => zh_Hant}/coovachilli.po | 0 .../po/{zh-cn => zh_Hans}/cshark.po | 0 .../po/{zh-tw => zh_Hant}/cshark.po | 0 .../po/{zh-cn => zh_Hans}/dcwapd.po | 0 .../po/{zh-tw => zh_Hant}/dcwapd.po | 0 .../luci-app-ddns/po/{no => nb_NO}/ddns.po | 0 .../luci-app-ddns/po/{pt-br => pt_BR}/ddns.po | 0 .../po/{zh-cn => zh_Hans}/ddns.po | 0 .../po/{zh-tw => zh_Hant}/ddns.po | 0 .../po/{no => nb_NO}/diag_core.po | 0 .../po/{pt-br => pt_BR}/diag_core.po | 0 .../po/{zh-cn => zh_Hans}/diag_core.po | 0 .../po/{zh-tw => zh_Hant}/diag_core.po | 0 .../po/{zh-cn => zh_Hans}/dnscrypt-proxy.po | 0 .../po/{zh-tw => zh_Hant}/dnscrypt-proxy.po | 0 .../po/{zh-cn => zh_Hans}/dump1090.po | 0 .../po/{zh-tw => zh_Hant}/dump1090.po | 0 .../po/{pt-br => pt_BR}/dynapoint.po | 0 .../po/{zh-cn => zh_Hans}/dynapoint.po | 0 .../po/{zh-tw => zh_Hant}/dynapoint.po | 0 .../po/{no => nb_NO}/firewall.po | 0 .../po/{pt-br => pt_BR}/firewall.po | 0 .../po/{zh-cn => zh_Hans}/firewall.po | 0 .../po/{zh-tw => zh_Hant}/firewall.po | 0 .../po/{pt-br => pt_BR}/fwknopd.po | 0 .../po/{zh-cn => zh_Hans}/fwknopd.po | 0 .../po/{zh-tw => zh_Hant}/fwknopd.po | 0 .../po/{no => nb_NO}/hd_idle.po | 0 .../po/{pt-br => pt_BR}/hd_idle.po | 0 .../po/{zh-cn => zh_Hans}/hd_idle.po | 0 .../po/{zh-tw => zh_Hant}/hd_idle.po | 0 .../po/{zh-cn => zh_Hans}/https-dns-proxy.po | 0 .../po/{zh-tw => zh_Hant}/https-dns-proxy.po | 0 .../luci-app-ksmbd/po/{no => nb_NO}/ksmbd.po | 0 .../po/{pt-br => pt_BR}/ksmbd.po | 0 .../po/{zh-cn => zh_Hans}/ksmbd.po | 0 .../po/{zh-tw => zh_Hant}/ksmbd.po | 0 .../po/{zh-cn => zh_Hans}/ltqtapi.po | 0 .../po/{zh-tw => zh_Hant}/ltqtapi.po | 0 .../luci-app-lxc/po/{zh-cn => zh_Hans}/lxc.po | 0 .../luci-app-lxc/po/{zh-tw => zh_Hant}/lxc.po | 0 .../po/{no => nb_NO}/minidlna.po | 0 .../po/{pt-br => pt_BR}/minidlna.po | 0 .../po/{zh-cn => zh_Hans}/minidlna.po | 0 .../po/{zh-tw => zh_Hant}/minidlna.po | 0 .../po/{pt-br => pt_BR}/mjpg-streamer.po | 0 .../po/{zh-cn => zh_Hans}/mjpg-streamer.po | 0 .../po/{zh-tw => zh_Hant}/mjpg-streamer.po | 0 .../po/{zh-cn => zh_Hans}/mwan3.po | 0 .../po/{zh-tw => zh_Hant}/mwan3.po | 0 .../po/{zh-cn => zh_Hans}/nextdns.po | 0 .../po/{zh-tw => zh_Hant}/nextdns.po | 0 .../po/{zh-cn => zh_Hans}/nft-qos.po | 0 .../po/{zh-tw => zh_Hant}/nft-qos.po | 0 .../po/{zh-cn => zh_Hans}/nlbwmon.po | 0 .../po/{zh-tw => zh_Hant}/nlbwmon.po | 0 .../po/{zh-cn => zh_Hans}/noddos.po | 0 .../po/{zh-tw => zh_Hant}/noddos.po | 0 .../luci-app-ntpc/po/{no => nb_NO}/ntpc.po | 0 .../luci-app-ntpc/po/{pt-br => pt_BR}/ntpc.po | 0 .../po/{zh-cn => zh_Hans}/ntpc.po | 0 .../po/{zh-tw => zh_Hant}/ntpc.po | 0 .../luci-app-nut/po/{zh-cn => zh_Hans}/nut.po | 0 .../luci-app-nut/po/{zh-tw => zh_Hant}/nut.po | 0 .../po/{zh-cn => zh_Hans}/ocserv.po | 0 .../po/{zh-tw => zh_Hant}/ocserv.po | 0 .../po/{zh-cn => zh_Hans}/olsr-services.po | 0 .../po/{zh-tw => zh_Hant}/olsr-services.po | 0 .../po/{zh-cn => zh_Hans}/olsr-viz.po | 0 .../po/{zh-tw => zh_Hant}/olsr-viz.po | 0 .../luci-app-olsr/po/{no => nb_NO}/olsr.po | 0 .../luci-app-olsr/po/{pt-br => pt_BR}/olsr.po | 0 .../po/{zh-cn => zh_Hans}/olsr.po | 0 .../po/{zh-tw => zh_Hant}/olsr.po | 0 .../po/{zh-cn => zh_Hans}/omcproxy.po | 0 .../po/{zh-tw => zh_Hant}/omcproxy.po | 0 .../po/{no => nb_NO}/openvpn.po | 0 .../po/{pt-br => pt_BR}/openvpn.po | 0 .../po/{zh-cn => zh_Hans}/openvpn.po | 0 .../po/{zh-tw => zh_Hant}/openvpn.po | 0 .../luci-app-opkg/po/{no => nb_NO}/opkg.po | 0 .../luci-app-opkg/po/{pt-br => pt_BR}/opkg.po | 0 .../po/{zh-cn => zh_Hans}/opkg.po | 0 .../po/{zh-tw => zh_Hant}/opkg.po | 0 .../po/{no => nb_NO}/p910nd.po | 0 .../po/{pt-br => pt_BR}/p910nd.po | 0 .../po/{zh-cn => zh_Hans}/p910nd.po | 0 .../po/{zh-tw => zh_Hant}/p910nd.po | 0 .../po/{zh-cn => zh_Hans}/pagekitec.po | 0 .../po/{zh-tw => zh_Hant}/pagekitec.po | 0 .../po/{no => nb_NO}/polipo.po | 0 .../po/{pt-br => pt_BR}/polipo.po | 0 .../po/{zh-cn => zh_Hans}/polipo.po | 0 .../po/{zh-tw => zh_Hant}/polipo.po | 0 .../po/{pt-br => pt_BR}/privoxy.po | 0 .../po/{zh-cn => zh_Hans}/privoxy.po | 0 .../po/{zh-tw => zh_Hant}/privoxy.po | 0 .../luci-app-qos/po/{no => nb_NO}/qos.po | 0 .../luci-app-qos/po/{pt-br => pt_BR}/qos.po | 0 .../luci-app-qos/po/{zh-cn => zh_Hans}/qos.po | 0 .../luci-app-qos/po/{zh-tw => zh_Hant}/qos.po | 0 .../po/{pt-br => pt_BR}/radicale.po | 0 .../po/{zh-cn => zh_Hans}/radicale.po | 0 .../po/{zh-tw => zh_Hant}/radicale.po | 0 .../po/{zh-cn => zh_Hans}/radicale2.po | 0 .../po/{zh-tw => zh_Hant}/radicale2.po | 0 .../po/{zh-cn => zh_Hans}/rp-pppoe-server.po | 0 .../po/{zh-tw => zh_Hant}/rp-pppoe-server.po | 0 .../luci-app-samba/po/{no => nb_NO}/samba.po | 0 .../po/{pt-br => pt_BR}/samba.po | 0 .../po/{zh-cn => zh_Hans}/samba.po | 0 .../po/{zh-tw => zh_Hant}/samba.po | 0 .../po/{no => nb_NO}/samba4.po | 0 .../po/{pt-br => pt_BR}/samba4.po | 0 .../po/{zh-cn => zh_Hans}/samba4.po | 0 .../po/{zh-tw => zh_Hant}/samba4.po | 0 .../po/{no => nb_NO}/ser2net.po | 0 .../po/{pt-br => pt_BR}/ser2net.po | 0 .../po/{zh-cn => zh_Hans}/ser2net.po | 0 .../po/{zh-tw => zh_Hant}/ser2net.po | 0 .../{zh-cn => zh_Hans}/shadowsocks-libev.po | 0 .../{zh-tw => zh_Hant}/shadowsocks-libev.po | 0 .../po/{pt-br => pt_BR}/shairplay.po | 0 .../po/{zh-cn => zh_Hans}/shairplay.po | 0 .../po/{zh-tw => zh_Hant}/shairplay.po | 0 .../po/{pt-br => pt_BR}/simple-adblock.po | 0 .../po/{zh-cn => zh_Hans}/simple-adblock.po | 0 .../po/{zh-tw => zh_Hant}/simple-adblock.po | 0 .../po/{no => nb_NO}/splash.po | 0 .../po/{pt-br => pt_BR}/splash.po | 0 .../po/{zh-cn => zh_Hans}/splash.po | 0 .../po/{zh-tw => zh_Hant}/splash.po | 0 .../po/{zh-cn => zh_Hans}/squid.po | 0 .../po/{zh-tw => zh_Hant}/squid.po | 0 .../po/{no => nb_NO}/statistics.po | 0 .../po/{pt-br => pt_BR}/statistics.po | 0 .../po/{zh-cn => zh_Hans}/statistics.po | 0 .../po/{zh-tw => zh_Hant}/statistics.po | 0 .../po/{no => nb_NO}/tinyproxy.po | 0 .../po/{pt-br => pt_BR}/tinyproxy.po | 0 .../po/{zh-cn => zh_Hans}/tinyproxy.po | 0 .../po/{zh-tw => zh_Hant}/tinyproxy.po | 0 .../po/{no => nb_NO}/transmission.po | 0 .../po/{pt-br => pt_BR}/transmission.po | 0 .../po/{zh-cn => zh_Hans}/transmission.po | 0 .../po/{zh-tw => zh_Hant}/transmission.po | 0 .../po/{pt-br => pt_BR}/travelmate.po | 0 .../po/{zh-cn => zh_Hans}/travelmate.po | 0 .../po/{zh-tw => zh_Hant}/travelmate.po | 0 .../po/{zh-cn => zh_Hans}/ttyd.po | 0 .../po/{zh-tw => zh_Hant}/ttyd.po | 0 .../po/{zh-cn => zh_Hans}/udpxy.po | 0 .../po/{zh-tw => zh_Hant}/udpxy.po | 0 .../po/{pt-br => pt_BR}/uhttpd.po | 0 .../po/{zh-cn => zh_Hans}/uhttpd.po | 0 .../po/{zh-tw => zh_Hant}/uhttpd.po | 0 .../po/{zh-cn => zh_Hans}/unbound.po | 0 .../po/{zh-tw => zh_Hant}/unbound.po | 0 .../luci-app-upnp/po/{no => nb_NO}/upnp.po | 0 .../luci-app-upnp/po/{pt-br => pt_BR}/upnp.po | 0 .../po/{zh-cn => zh_Hans}/upnp.po | 0 .../po/{zh-tw => zh_Hant}/upnp.po | 0 .../po/{no => nb_NO}/vnstat.po | 0 .../po/{pt-br => pt_BR}/vnstat.po | 0 .../po/{zh-cn => zh_Hans}/vnstat.po | 0 .../po/{zh-tw => zh_Hant}/vnstat.po | 0 .../po/{no => nb_NO}/vnstat2.po | 0 .../po/{pt-br => pt_BR}/vnstat2.po | 0 .../po/{zh-cn => zh_Hans}/vnstat2.po | 0 .../po/{zh-tw => zh_Hant}/vnstat2.po | 0 .../{ => zh_Hans}/zh-cn/vpn-policy-routing.po | 0 .../{ => zh_Hant}/zh-tw/vpn-policy-routing.po | 0 .../po/{pt-br => pt_BR}/vpnbypass.po | 0 .../po/{zh-cn => zh_Hans}/vpnbypass.po | 0 .../po/{zh-tw => zh_Hant}/vpnbypass.po | 0 .../po/{no => nb_NO}/watchcat.po | 0 .../po/{pt-br => pt_BR}/watchcat.po | 0 .../po/{zh-cn => zh_Hans}/watchcat.po | 0 .../po/{zh-tw => zh_Hant}/watchcat.po | 0 .../po/{pt-br => pt_BR}/wifischedule.po | 0 .../po/{zh-cn => zh_Hans}/wifischedule.po | 0 .../po/{zh-tw => zh_Hant}/wifischedule.po | 0 .../po/{pt-br => pt_BR}/wireguard.po | 0 .../po/{zh-cn => zh_Hans}/wireguard.po | 0 .../po/{zh-tw => zh_Hant}/wireguard.po | 0 .../luci-app-wol/po/{no => nb_NO}/wol.po | 0 .../luci-app-wol/po/{pt-br => pt_BR}/wol.po | 0 .../luci-app-wol/po/{zh-cn => zh_Hans}/wol.po | 0 .../luci-app-wol/po/{zh-tw => zh_Hant}/wol.po | 0 .../po/{zh-cn => zh_Hans}/yggdrasil.po | 0 .../po/{zh-tw => zh_Hant}/yggdrasil.po | 0 luci.mk | 26 ++++++++++++------- modules/luci-base/po/{no => nb_NO}/base.po | 0 modules/luci-base/po/{pt-br => pt_BR}/base.po | 0 .../luci-base/po/{zh-cn => zh_Hans}/base.po | 0 .../luci-base/po/{zh-tw => zh_Hant}/base.po | 0 225 files changed, 17 insertions(+), 9 deletions(-) rename applications/luci-app-adblock/po/{pt-br => pt_BR}/adblock.po (100%) rename applications/luci-app-adblock/po/{zh-cn => zh_Hans}/adblock.po (100%) rename applications/luci-app-adblock/po/{zh-tw => zh_Hant}/adblock.po (100%) rename applications/luci-app-advanced-reboot/po/{zh-cn => zh_Hans}/advanced-reboot.po (100%) rename applications/luci-app-advanced-reboot/po/{zh-tw => zh_Hant}/advanced-reboot.po (100%) rename applications/luci-app-ahcp/po/{no => nb_NO}/ahcp.po (100%) rename applications/luci-app-ahcp/po/{pt-br => pt_BR}/ahcp.po (100%) rename applications/luci-app-ahcp/po/{zh-cn => zh_Hans}/ahcp.po (100%) rename applications/luci-app-ahcp/po/{zh-tw => zh_Hant}/ahcp.po (100%) rename applications/luci-app-aria2/po/{pt-br => pt_BR}/aria2.po (100%) rename applications/luci-app-aria2/po/{zh-cn => zh_Hans}/aria2.po (100%) rename applications/luci-app-aria2/po/{zh-tw => zh_Hant}/aria2.po (100%) rename applications/luci-app-attendedsysupgrade/po/{zh-cn => zh_Hans}/attendedsysupgrade.po (100%) rename applications/luci-app-attendedsysupgrade/po/{zh-tw => zh_Hant}/attendedsysupgrade.po (100%) rename applications/luci-app-banip/po/{zh-cn => zh_Hans}/banip.po (100%) rename applications/luci-app-banip/po/{zh-tw => zh_Hant}/banip.po (100%) rename applications/luci-app-bcp38/po/{zh-cn => zh_Hans}/bcp38.po (100%) rename applications/luci-app-bcp38/po/{zh-tw => zh_Hant}/bcp38.po (100%) rename applications/luci-app-bmx7/po/{zh-cn => zh_Hans}/bmx7.po (100%) rename applications/luci-app-bmx7/po/{zh-tw => zh_Hant}/bmx7.po (100%) rename applications/luci-app-clamav/po/{zh-cn => zh_Hans}/clamav.po (100%) rename applications/luci-app-clamav/po/{zh-tw => zh_Hant}/clamav.po (100%) rename applications/luci-app-commands/po/{no => nb_NO}/commands.po (100%) rename applications/luci-app-commands/po/{pt-br => pt_BR}/commands.po (100%) rename applications/luci-app-commands/po/{zh-cn => zh_Hans}/commands.po (100%) rename applications/luci-app-commands/po/{zh-tw => zh_Hant}/commands.po (100%) rename applications/luci-app-coovachilli/po/{no => nb_NO}/coovachilli.po (100%) rename applications/luci-app-coovachilli/po/{pt-br => pt_BR}/coovachilli.po (100%) rename applications/luci-app-coovachilli/po/{zh-cn => zh_Hans}/coovachilli.po (100%) rename applications/luci-app-coovachilli/po/{zh-tw => zh_Hant}/coovachilli.po (100%) rename applications/luci-app-cshark/po/{zh-cn => zh_Hans}/cshark.po (100%) rename applications/luci-app-cshark/po/{zh-tw => zh_Hant}/cshark.po (100%) rename applications/luci-app-dcwapd/po/{zh-cn => zh_Hans}/dcwapd.po (100%) rename applications/luci-app-dcwapd/po/{zh-tw => zh_Hant}/dcwapd.po (100%) rename applications/luci-app-ddns/po/{no => nb_NO}/ddns.po (100%) rename applications/luci-app-ddns/po/{pt-br => pt_BR}/ddns.po (100%) rename applications/luci-app-ddns/po/{zh-cn => zh_Hans}/ddns.po (100%) rename applications/luci-app-ddns/po/{zh-tw => zh_Hant}/ddns.po (100%) rename applications/luci-app-diag-core/po/{no => nb_NO}/diag_core.po (100%) rename applications/luci-app-diag-core/po/{pt-br => pt_BR}/diag_core.po (100%) rename applications/luci-app-diag-core/po/{zh-cn => zh_Hans}/diag_core.po (100%) rename applications/luci-app-diag-core/po/{zh-tw => zh_Hant}/diag_core.po (100%) rename applications/luci-app-dnscrypt-proxy/po/{zh-cn => zh_Hans}/dnscrypt-proxy.po (100%) rename applications/luci-app-dnscrypt-proxy/po/{zh-tw => zh_Hant}/dnscrypt-proxy.po (100%) rename applications/luci-app-dump1090/po/{zh-cn => zh_Hans}/dump1090.po (100%) rename applications/luci-app-dump1090/po/{zh-tw => zh_Hant}/dump1090.po (100%) rename applications/luci-app-dynapoint/po/{pt-br => pt_BR}/dynapoint.po (100%) rename applications/luci-app-dynapoint/po/{zh-cn => zh_Hans}/dynapoint.po (100%) rename applications/luci-app-dynapoint/po/{zh-tw => zh_Hant}/dynapoint.po (100%) rename applications/luci-app-firewall/po/{no => nb_NO}/firewall.po (100%) rename applications/luci-app-firewall/po/{pt-br => pt_BR}/firewall.po (100%) rename applications/luci-app-firewall/po/{zh-cn => zh_Hans}/firewall.po (100%) rename applications/luci-app-firewall/po/{zh-tw => zh_Hant}/firewall.po (100%) rename applications/luci-app-fwknopd/po/{pt-br => pt_BR}/fwknopd.po (100%) rename applications/luci-app-fwknopd/po/{zh-cn => zh_Hans}/fwknopd.po (100%) rename applications/luci-app-fwknopd/po/{zh-tw => zh_Hant}/fwknopd.po (100%) rename applications/luci-app-hd-idle/po/{no => nb_NO}/hd_idle.po (100%) rename applications/luci-app-hd-idle/po/{pt-br => pt_BR}/hd_idle.po (100%) rename applications/luci-app-hd-idle/po/{zh-cn => zh_Hans}/hd_idle.po (100%) rename applications/luci-app-hd-idle/po/{zh-tw => zh_Hant}/hd_idle.po (100%) rename applications/luci-app-https-dns-proxy/po/{zh-cn => zh_Hans}/https-dns-proxy.po (100%) rename applications/luci-app-https-dns-proxy/po/{zh-tw => zh_Hant}/https-dns-proxy.po (100%) rename applications/luci-app-ksmbd/po/{no => nb_NO}/ksmbd.po (100%) rename applications/luci-app-ksmbd/po/{pt-br => pt_BR}/ksmbd.po (100%) rename applications/luci-app-ksmbd/po/{zh-cn => zh_Hans}/ksmbd.po (100%) rename applications/luci-app-ksmbd/po/{zh-tw => zh_Hant}/ksmbd.po (100%) rename applications/luci-app-ltqtapi/po/{zh-cn => zh_Hans}/ltqtapi.po (100%) rename applications/luci-app-ltqtapi/po/{zh-tw => zh_Hant}/ltqtapi.po (100%) rename applications/luci-app-lxc/po/{zh-cn => zh_Hans}/lxc.po (100%) rename applications/luci-app-lxc/po/{zh-tw => zh_Hant}/lxc.po (100%) rename applications/luci-app-minidlna/po/{no => nb_NO}/minidlna.po (100%) rename applications/luci-app-minidlna/po/{pt-br => pt_BR}/minidlna.po (100%) rename applications/luci-app-minidlna/po/{zh-cn => zh_Hans}/minidlna.po (100%) rename applications/luci-app-minidlna/po/{zh-tw => zh_Hant}/minidlna.po (100%) rename applications/luci-app-mjpg-streamer/po/{pt-br => pt_BR}/mjpg-streamer.po (100%) rename applications/luci-app-mjpg-streamer/po/{zh-cn => zh_Hans}/mjpg-streamer.po (100%) rename applications/luci-app-mjpg-streamer/po/{zh-tw => zh_Hant}/mjpg-streamer.po (100%) rename applications/luci-app-mwan3/po/{zh-cn => zh_Hans}/mwan3.po (100%) rename applications/luci-app-mwan3/po/{zh-tw => zh_Hant}/mwan3.po (100%) rename applications/luci-app-nextdns/po/{zh-cn => zh_Hans}/nextdns.po (100%) rename applications/luci-app-nextdns/po/{zh-tw => zh_Hant}/nextdns.po (100%) rename applications/luci-app-nft-qos/po/{zh-cn => zh_Hans}/nft-qos.po (100%) rename applications/luci-app-nft-qos/po/{zh-tw => zh_Hant}/nft-qos.po (100%) rename applications/luci-app-nlbwmon/po/{zh-cn => zh_Hans}/nlbwmon.po (100%) rename applications/luci-app-nlbwmon/po/{zh-tw => zh_Hant}/nlbwmon.po (100%) rename applications/luci-app-noddos/po/{zh-cn => zh_Hans}/noddos.po (100%) rename applications/luci-app-noddos/po/{zh-tw => zh_Hant}/noddos.po (100%) rename applications/luci-app-ntpc/po/{no => nb_NO}/ntpc.po (100%) rename applications/luci-app-ntpc/po/{pt-br => pt_BR}/ntpc.po (100%) rename applications/luci-app-ntpc/po/{zh-cn => zh_Hans}/ntpc.po (100%) rename applications/luci-app-ntpc/po/{zh-tw => zh_Hant}/ntpc.po (100%) rename applications/luci-app-nut/po/{zh-cn => zh_Hans}/nut.po (100%) rename applications/luci-app-nut/po/{zh-tw => zh_Hant}/nut.po (100%) rename applications/luci-app-ocserv/po/{zh-cn => zh_Hans}/ocserv.po (100%) rename applications/luci-app-ocserv/po/{zh-tw => zh_Hant}/ocserv.po (100%) rename applications/luci-app-olsr-services/po/{zh-cn => zh_Hans}/olsr-services.po (100%) rename applications/luci-app-olsr-services/po/{zh-tw => zh_Hant}/olsr-services.po (100%) rename applications/luci-app-olsr-viz/po/{zh-cn => zh_Hans}/olsr-viz.po (100%) rename applications/luci-app-olsr-viz/po/{zh-tw => zh_Hant}/olsr-viz.po (100%) rename applications/luci-app-olsr/po/{no => nb_NO}/olsr.po (100%) rename applications/luci-app-olsr/po/{pt-br => pt_BR}/olsr.po (100%) rename applications/luci-app-olsr/po/{zh-cn => zh_Hans}/olsr.po (100%) rename applications/luci-app-olsr/po/{zh-tw => zh_Hant}/olsr.po (100%) rename applications/luci-app-omcproxy/po/{zh-cn => zh_Hans}/omcproxy.po (100%) rename applications/luci-app-omcproxy/po/{zh-tw => zh_Hant}/omcproxy.po (100%) rename applications/luci-app-openvpn/po/{no => nb_NO}/openvpn.po (100%) rename applications/luci-app-openvpn/po/{pt-br => pt_BR}/openvpn.po (100%) rename applications/luci-app-openvpn/po/{zh-cn => zh_Hans}/openvpn.po (100%) rename applications/luci-app-openvpn/po/{zh-tw => zh_Hant}/openvpn.po (100%) rename applications/luci-app-opkg/po/{no => nb_NO}/opkg.po (100%) rename applications/luci-app-opkg/po/{pt-br => pt_BR}/opkg.po (100%) rename applications/luci-app-opkg/po/{zh-cn => zh_Hans}/opkg.po (100%) rename applications/luci-app-opkg/po/{zh-tw => zh_Hant}/opkg.po (100%) rename applications/luci-app-p910nd/po/{no => nb_NO}/p910nd.po (100%) rename applications/luci-app-p910nd/po/{pt-br => pt_BR}/p910nd.po (100%) rename applications/luci-app-p910nd/po/{zh-cn => zh_Hans}/p910nd.po (100%) rename applications/luci-app-p910nd/po/{zh-tw => zh_Hant}/p910nd.po (100%) rename applications/luci-app-pagekitec/po/{zh-cn => zh_Hans}/pagekitec.po (100%) rename applications/luci-app-pagekitec/po/{zh-tw => zh_Hant}/pagekitec.po (100%) rename applications/luci-app-polipo/po/{no => nb_NO}/polipo.po (100%) rename applications/luci-app-polipo/po/{pt-br => pt_BR}/polipo.po (100%) rename applications/luci-app-polipo/po/{zh-cn => zh_Hans}/polipo.po (100%) rename applications/luci-app-polipo/po/{zh-tw => zh_Hant}/polipo.po (100%) rename applications/luci-app-privoxy/po/{pt-br => pt_BR}/privoxy.po (100%) rename applications/luci-app-privoxy/po/{zh-cn => zh_Hans}/privoxy.po (100%) rename applications/luci-app-privoxy/po/{zh-tw => zh_Hant}/privoxy.po (100%) rename applications/luci-app-qos/po/{no => nb_NO}/qos.po (100%) rename applications/luci-app-qos/po/{pt-br => pt_BR}/qos.po (100%) rename applications/luci-app-qos/po/{zh-cn => zh_Hans}/qos.po (100%) rename applications/luci-app-qos/po/{zh-tw => zh_Hant}/qos.po (100%) rename applications/luci-app-radicale/po/{pt-br => pt_BR}/radicale.po (100%) rename applications/luci-app-radicale/po/{zh-cn => zh_Hans}/radicale.po (100%) rename applications/luci-app-radicale/po/{zh-tw => zh_Hant}/radicale.po (100%) rename applications/luci-app-radicale2/po/{zh-cn => zh_Hans}/radicale2.po (100%) rename applications/luci-app-radicale2/po/{zh-tw => zh_Hant}/radicale2.po (100%) rename applications/luci-app-rp-pppoe-server/po/{zh-cn => zh_Hans}/rp-pppoe-server.po (100%) rename applications/luci-app-rp-pppoe-server/po/{zh-tw => zh_Hant}/rp-pppoe-server.po (100%) rename applications/luci-app-samba/po/{no => nb_NO}/samba.po (100%) rename applications/luci-app-samba/po/{pt-br => pt_BR}/samba.po (100%) rename applications/luci-app-samba/po/{zh-cn => zh_Hans}/samba.po (100%) rename applications/luci-app-samba/po/{zh-tw => zh_Hant}/samba.po (100%) rename applications/luci-app-samba4/po/{no => nb_NO}/samba4.po (100%) rename applications/luci-app-samba4/po/{pt-br => pt_BR}/samba4.po (100%) rename applications/luci-app-samba4/po/{zh-cn => zh_Hans}/samba4.po (100%) rename applications/luci-app-samba4/po/{zh-tw => zh_Hant}/samba4.po (100%) rename applications/luci-app-ser2net/po/{no => nb_NO}/ser2net.po (100%) rename applications/luci-app-ser2net/po/{pt-br => pt_BR}/ser2net.po (100%) rename applications/luci-app-ser2net/po/{zh-cn => zh_Hans}/ser2net.po (100%) rename applications/luci-app-ser2net/po/{zh-tw => zh_Hant}/ser2net.po (100%) rename applications/luci-app-shadowsocks-libev/po/{zh-cn => zh_Hans}/shadowsocks-libev.po (100%) rename applications/luci-app-shadowsocks-libev/po/{zh-tw => zh_Hant}/shadowsocks-libev.po (100%) rename applications/luci-app-shairplay/po/{pt-br => pt_BR}/shairplay.po (100%) rename applications/luci-app-shairplay/po/{zh-cn => zh_Hans}/shairplay.po (100%) rename applications/luci-app-shairplay/po/{zh-tw => zh_Hant}/shairplay.po (100%) rename applications/luci-app-simple-adblock/po/{pt-br => pt_BR}/simple-adblock.po (100%) rename applications/luci-app-simple-adblock/po/{zh-cn => zh_Hans}/simple-adblock.po (100%) rename applications/luci-app-simple-adblock/po/{zh-tw => zh_Hant}/simple-adblock.po (100%) rename applications/luci-app-splash/po/{no => nb_NO}/splash.po (100%) rename applications/luci-app-splash/po/{pt-br => pt_BR}/splash.po (100%) rename applications/luci-app-splash/po/{zh-cn => zh_Hans}/splash.po (100%) rename applications/luci-app-splash/po/{zh-tw => zh_Hant}/splash.po (100%) rename applications/luci-app-squid/po/{zh-cn => zh_Hans}/squid.po (100%) rename applications/luci-app-squid/po/{zh-tw => zh_Hant}/squid.po (100%) rename applications/luci-app-statistics/po/{no => nb_NO}/statistics.po (100%) rename applications/luci-app-statistics/po/{pt-br => pt_BR}/statistics.po (100%) rename applications/luci-app-statistics/po/{zh-cn => zh_Hans}/statistics.po (100%) rename applications/luci-app-statistics/po/{zh-tw => zh_Hant}/statistics.po (100%) rename applications/luci-app-tinyproxy/po/{no => nb_NO}/tinyproxy.po (100%) rename applications/luci-app-tinyproxy/po/{pt-br => pt_BR}/tinyproxy.po (100%) rename applications/luci-app-tinyproxy/po/{zh-cn => zh_Hans}/tinyproxy.po (100%) rename applications/luci-app-tinyproxy/po/{zh-tw => zh_Hant}/tinyproxy.po (100%) rename applications/luci-app-transmission/po/{no => nb_NO}/transmission.po (100%) rename applications/luci-app-transmission/po/{pt-br => pt_BR}/transmission.po (100%) rename applications/luci-app-transmission/po/{zh-cn => zh_Hans}/transmission.po (100%) rename applications/luci-app-transmission/po/{zh-tw => zh_Hant}/transmission.po (100%) rename applications/luci-app-travelmate/po/{pt-br => pt_BR}/travelmate.po (100%) rename applications/luci-app-travelmate/po/{zh-cn => zh_Hans}/travelmate.po (100%) rename applications/luci-app-travelmate/po/{zh-tw => zh_Hant}/travelmate.po (100%) rename applications/luci-app-ttyd/po/{zh-cn => zh_Hans}/ttyd.po (100%) rename applications/luci-app-ttyd/po/{zh-tw => zh_Hant}/ttyd.po (100%) rename applications/luci-app-udpxy/po/{zh-cn => zh_Hans}/udpxy.po (100%) rename applications/luci-app-udpxy/po/{zh-tw => zh_Hant}/udpxy.po (100%) rename applications/luci-app-uhttpd/po/{pt-br => pt_BR}/uhttpd.po (100%) rename applications/luci-app-uhttpd/po/{zh-cn => zh_Hans}/uhttpd.po (100%) rename applications/luci-app-uhttpd/po/{zh-tw => zh_Hant}/uhttpd.po (100%) rename applications/luci-app-unbound/po/{zh-cn => zh_Hans}/unbound.po (100%) rename applications/luci-app-unbound/po/{zh-tw => zh_Hant}/unbound.po (100%) rename applications/luci-app-upnp/po/{no => nb_NO}/upnp.po (100%) rename applications/luci-app-upnp/po/{pt-br => pt_BR}/upnp.po (100%) rename applications/luci-app-upnp/po/{zh-cn => zh_Hans}/upnp.po (100%) rename applications/luci-app-upnp/po/{zh-tw => zh_Hant}/upnp.po (100%) rename applications/luci-app-vnstat/po/{no => nb_NO}/vnstat.po (100%) rename applications/luci-app-vnstat/po/{pt-br => pt_BR}/vnstat.po (100%) rename applications/luci-app-vnstat/po/{zh-cn => zh_Hans}/vnstat.po (100%) rename applications/luci-app-vnstat/po/{zh-tw => zh_Hant}/vnstat.po (100%) rename applications/luci-app-vnstat2/po/{no => nb_NO}/vnstat2.po (100%) rename applications/luci-app-vnstat2/po/{pt-br => pt_BR}/vnstat2.po (100%) rename applications/luci-app-vnstat2/po/{zh-cn => zh_Hans}/vnstat2.po (100%) rename applications/luci-app-vnstat2/po/{zh-tw => zh_Hant}/vnstat2.po (100%) rename applications/luci-app-vpn-policy-routing/po/{ => zh_Hans}/zh-cn/vpn-policy-routing.po (100%) rename applications/luci-app-vpn-policy-routing/po/{ => zh_Hant}/zh-tw/vpn-policy-routing.po (100%) rename applications/luci-app-vpnbypass/po/{pt-br => pt_BR}/vpnbypass.po (100%) rename applications/luci-app-vpnbypass/po/{zh-cn => zh_Hans}/vpnbypass.po (100%) rename applications/luci-app-vpnbypass/po/{zh-tw => zh_Hant}/vpnbypass.po (100%) rename applications/luci-app-watchcat/po/{no => nb_NO}/watchcat.po (100%) rename applications/luci-app-watchcat/po/{pt-br => pt_BR}/watchcat.po (100%) rename applications/luci-app-watchcat/po/{zh-cn => zh_Hans}/watchcat.po (100%) rename applications/luci-app-watchcat/po/{zh-tw => zh_Hant}/watchcat.po (100%) rename applications/luci-app-wifischedule/po/{pt-br => pt_BR}/wifischedule.po (100%) rename applications/luci-app-wifischedule/po/{zh-cn => zh_Hans}/wifischedule.po (100%) rename applications/luci-app-wifischedule/po/{zh-tw => zh_Hant}/wifischedule.po (100%) rename applications/luci-app-wireguard/po/{pt-br => pt_BR}/wireguard.po (100%) rename applications/luci-app-wireguard/po/{zh-cn => zh_Hans}/wireguard.po (100%) rename applications/luci-app-wireguard/po/{zh-tw => zh_Hant}/wireguard.po (100%) rename applications/luci-app-wol/po/{no => nb_NO}/wol.po (100%) rename applications/luci-app-wol/po/{pt-br => pt_BR}/wol.po (100%) rename applications/luci-app-wol/po/{zh-cn => zh_Hans}/wol.po (100%) rename applications/luci-app-wol/po/{zh-tw => zh_Hant}/wol.po (100%) rename applications/luci-app-yggdrasil/po/{zh-cn => zh_Hans}/yggdrasil.po (100%) rename applications/luci-app-yggdrasil/po/{zh-tw => zh_Hant}/yggdrasil.po (100%) rename modules/luci-base/po/{no => nb_NO}/base.po (100%) rename modules/luci-base/po/{pt-br => pt_BR}/base.po (100%) rename modules/luci-base/po/{zh-cn => zh_Hans}/base.po (100%) rename modules/luci-base/po/{zh-tw => zh_Hant}/base.po (100%) diff --git a/applications/luci-app-adblock/po/pt-br/adblock.po b/applications/luci-app-adblock/po/pt_BR/adblock.po similarity index 100% rename from applications/luci-app-adblock/po/pt-br/adblock.po rename to applications/luci-app-adblock/po/pt_BR/adblock.po diff --git a/applications/luci-app-adblock/po/zh-cn/adblock.po b/applications/luci-app-adblock/po/zh_Hans/adblock.po similarity index 100% rename from applications/luci-app-adblock/po/zh-cn/adblock.po rename to applications/luci-app-adblock/po/zh_Hans/adblock.po diff --git a/applications/luci-app-adblock/po/zh-tw/adblock.po b/applications/luci-app-adblock/po/zh_Hant/adblock.po similarity index 100% rename from applications/luci-app-adblock/po/zh-tw/adblock.po rename to applications/luci-app-adblock/po/zh_Hant/adblock.po diff --git a/applications/luci-app-advanced-reboot/po/zh-cn/advanced-reboot.po b/applications/luci-app-advanced-reboot/po/zh_Hans/advanced-reboot.po similarity index 100% rename from applications/luci-app-advanced-reboot/po/zh-cn/advanced-reboot.po rename to applications/luci-app-advanced-reboot/po/zh_Hans/advanced-reboot.po diff --git a/applications/luci-app-advanced-reboot/po/zh-tw/advanced-reboot.po b/applications/luci-app-advanced-reboot/po/zh_Hant/advanced-reboot.po similarity index 100% rename from applications/luci-app-advanced-reboot/po/zh-tw/advanced-reboot.po rename to applications/luci-app-advanced-reboot/po/zh_Hant/advanced-reboot.po diff --git a/applications/luci-app-ahcp/po/no/ahcp.po b/applications/luci-app-ahcp/po/nb_NO/ahcp.po similarity index 100% rename from applications/luci-app-ahcp/po/no/ahcp.po rename to applications/luci-app-ahcp/po/nb_NO/ahcp.po diff --git a/applications/luci-app-ahcp/po/pt-br/ahcp.po b/applications/luci-app-ahcp/po/pt_BR/ahcp.po similarity index 100% rename from applications/luci-app-ahcp/po/pt-br/ahcp.po rename to applications/luci-app-ahcp/po/pt_BR/ahcp.po diff --git a/applications/luci-app-ahcp/po/zh-cn/ahcp.po b/applications/luci-app-ahcp/po/zh_Hans/ahcp.po similarity index 100% rename from applications/luci-app-ahcp/po/zh-cn/ahcp.po rename to applications/luci-app-ahcp/po/zh_Hans/ahcp.po diff --git a/applications/luci-app-ahcp/po/zh-tw/ahcp.po b/applications/luci-app-ahcp/po/zh_Hant/ahcp.po similarity index 100% rename from applications/luci-app-ahcp/po/zh-tw/ahcp.po rename to applications/luci-app-ahcp/po/zh_Hant/ahcp.po diff --git a/applications/luci-app-aria2/po/pt-br/aria2.po b/applications/luci-app-aria2/po/pt_BR/aria2.po similarity index 100% rename from applications/luci-app-aria2/po/pt-br/aria2.po rename to applications/luci-app-aria2/po/pt_BR/aria2.po diff --git a/applications/luci-app-aria2/po/zh-cn/aria2.po b/applications/luci-app-aria2/po/zh_Hans/aria2.po similarity index 100% rename from applications/luci-app-aria2/po/zh-cn/aria2.po rename to applications/luci-app-aria2/po/zh_Hans/aria2.po diff --git a/applications/luci-app-aria2/po/zh-tw/aria2.po b/applications/luci-app-aria2/po/zh_Hant/aria2.po similarity index 100% rename from applications/luci-app-aria2/po/zh-tw/aria2.po rename to applications/luci-app-aria2/po/zh_Hant/aria2.po diff --git a/applications/luci-app-attendedsysupgrade/po/zh-cn/attendedsysupgrade.po b/applications/luci-app-attendedsysupgrade/po/zh_Hans/attendedsysupgrade.po similarity index 100% rename from applications/luci-app-attendedsysupgrade/po/zh-cn/attendedsysupgrade.po rename to applications/luci-app-attendedsysupgrade/po/zh_Hans/attendedsysupgrade.po diff --git a/applications/luci-app-attendedsysupgrade/po/zh-tw/attendedsysupgrade.po b/applications/luci-app-attendedsysupgrade/po/zh_Hant/attendedsysupgrade.po similarity index 100% rename from applications/luci-app-attendedsysupgrade/po/zh-tw/attendedsysupgrade.po rename to applications/luci-app-attendedsysupgrade/po/zh_Hant/attendedsysupgrade.po diff --git a/applications/luci-app-banip/po/zh-cn/banip.po b/applications/luci-app-banip/po/zh_Hans/banip.po similarity index 100% rename from applications/luci-app-banip/po/zh-cn/banip.po rename to applications/luci-app-banip/po/zh_Hans/banip.po diff --git a/applications/luci-app-banip/po/zh-tw/banip.po b/applications/luci-app-banip/po/zh_Hant/banip.po similarity index 100% rename from applications/luci-app-banip/po/zh-tw/banip.po rename to applications/luci-app-banip/po/zh_Hant/banip.po diff --git a/applications/luci-app-bcp38/po/zh-cn/bcp38.po b/applications/luci-app-bcp38/po/zh_Hans/bcp38.po similarity index 100% rename from applications/luci-app-bcp38/po/zh-cn/bcp38.po rename to applications/luci-app-bcp38/po/zh_Hans/bcp38.po diff --git a/applications/luci-app-bcp38/po/zh-tw/bcp38.po b/applications/luci-app-bcp38/po/zh_Hant/bcp38.po similarity index 100% rename from applications/luci-app-bcp38/po/zh-tw/bcp38.po rename to applications/luci-app-bcp38/po/zh_Hant/bcp38.po diff --git a/applications/luci-app-bmx7/po/zh-cn/bmx7.po b/applications/luci-app-bmx7/po/zh_Hans/bmx7.po similarity index 100% rename from applications/luci-app-bmx7/po/zh-cn/bmx7.po rename to applications/luci-app-bmx7/po/zh_Hans/bmx7.po diff --git a/applications/luci-app-bmx7/po/zh-tw/bmx7.po b/applications/luci-app-bmx7/po/zh_Hant/bmx7.po similarity index 100% rename from applications/luci-app-bmx7/po/zh-tw/bmx7.po rename to applications/luci-app-bmx7/po/zh_Hant/bmx7.po diff --git a/applications/luci-app-clamav/po/zh-cn/clamav.po b/applications/luci-app-clamav/po/zh_Hans/clamav.po similarity index 100% rename from applications/luci-app-clamav/po/zh-cn/clamav.po rename to applications/luci-app-clamav/po/zh_Hans/clamav.po diff --git a/applications/luci-app-clamav/po/zh-tw/clamav.po b/applications/luci-app-clamav/po/zh_Hant/clamav.po similarity index 100% rename from applications/luci-app-clamav/po/zh-tw/clamav.po rename to applications/luci-app-clamav/po/zh_Hant/clamav.po diff --git a/applications/luci-app-commands/po/no/commands.po b/applications/luci-app-commands/po/nb_NO/commands.po similarity index 100% rename from applications/luci-app-commands/po/no/commands.po rename to applications/luci-app-commands/po/nb_NO/commands.po diff --git a/applications/luci-app-commands/po/pt-br/commands.po b/applications/luci-app-commands/po/pt_BR/commands.po similarity index 100% rename from applications/luci-app-commands/po/pt-br/commands.po rename to applications/luci-app-commands/po/pt_BR/commands.po diff --git a/applications/luci-app-commands/po/zh-cn/commands.po b/applications/luci-app-commands/po/zh_Hans/commands.po similarity index 100% rename from applications/luci-app-commands/po/zh-cn/commands.po rename to applications/luci-app-commands/po/zh_Hans/commands.po diff --git a/applications/luci-app-commands/po/zh-tw/commands.po b/applications/luci-app-commands/po/zh_Hant/commands.po similarity index 100% rename from applications/luci-app-commands/po/zh-tw/commands.po rename to applications/luci-app-commands/po/zh_Hant/commands.po diff --git a/applications/luci-app-coovachilli/po/no/coovachilli.po b/applications/luci-app-coovachilli/po/nb_NO/coovachilli.po similarity index 100% rename from applications/luci-app-coovachilli/po/no/coovachilli.po rename to applications/luci-app-coovachilli/po/nb_NO/coovachilli.po diff --git a/applications/luci-app-coovachilli/po/pt-br/coovachilli.po b/applications/luci-app-coovachilli/po/pt_BR/coovachilli.po similarity index 100% rename from applications/luci-app-coovachilli/po/pt-br/coovachilli.po rename to applications/luci-app-coovachilli/po/pt_BR/coovachilli.po diff --git a/applications/luci-app-coovachilli/po/zh-cn/coovachilli.po b/applications/luci-app-coovachilli/po/zh_Hans/coovachilli.po similarity index 100% rename from applications/luci-app-coovachilli/po/zh-cn/coovachilli.po rename to applications/luci-app-coovachilli/po/zh_Hans/coovachilli.po diff --git a/applications/luci-app-coovachilli/po/zh-tw/coovachilli.po b/applications/luci-app-coovachilli/po/zh_Hant/coovachilli.po similarity index 100% rename from applications/luci-app-coovachilli/po/zh-tw/coovachilli.po rename to applications/luci-app-coovachilli/po/zh_Hant/coovachilli.po diff --git a/applications/luci-app-cshark/po/zh-cn/cshark.po b/applications/luci-app-cshark/po/zh_Hans/cshark.po similarity index 100% rename from applications/luci-app-cshark/po/zh-cn/cshark.po rename to applications/luci-app-cshark/po/zh_Hans/cshark.po diff --git a/applications/luci-app-cshark/po/zh-tw/cshark.po b/applications/luci-app-cshark/po/zh_Hant/cshark.po similarity index 100% rename from applications/luci-app-cshark/po/zh-tw/cshark.po rename to applications/luci-app-cshark/po/zh_Hant/cshark.po diff --git a/applications/luci-app-dcwapd/po/zh-cn/dcwapd.po b/applications/luci-app-dcwapd/po/zh_Hans/dcwapd.po similarity index 100% rename from applications/luci-app-dcwapd/po/zh-cn/dcwapd.po rename to applications/luci-app-dcwapd/po/zh_Hans/dcwapd.po diff --git a/applications/luci-app-dcwapd/po/zh-tw/dcwapd.po b/applications/luci-app-dcwapd/po/zh_Hant/dcwapd.po similarity index 100% rename from applications/luci-app-dcwapd/po/zh-tw/dcwapd.po rename to applications/luci-app-dcwapd/po/zh_Hant/dcwapd.po diff --git a/applications/luci-app-ddns/po/no/ddns.po b/applications/luci-app-ddns/po/nb_NO/ddns.po similarity index 100% rename from applications/luci-app-ddns/po/no/ddns.po rename to applications/luci-app-ddns/po/nb_NO/ddns.po diff --git a/applications/luci-app-ddns/po/pt-br/ddns.po b/applications/luci-app-ddns/po/pt_BR/ddns.po similarity index 100% rename from applications/luci-app-ddns/po/pt-br/ddns.po rename to applications/luci-app-ddns/po/pt_BR/ddns.po diff --git a/applications/luci-app-ddns/po/zh-cn/ddns.po b/applications/luci-app-ddns/po/zh_Hans/ddns.po similarity index 100% rename from applications/luci-app-ddns/po/zh-cn/ddns.po rename to applications/luci-app-ddns/po/zh_Hans/ddns.po diff --git a/applications/luci-app-ddns/po/zh-tw/ddns.po b/applications/luci-app-ddns/po/zh_Hant/ddns.po similarity index 100% rename from applications/luci-app-ddns/po/zh-tw/ddns.po rename to applications/luci-app-ddns/po/zh_Hant/ddns.po diff --git a/applications/luci-app-diag-core/po/no/diag_core.po b/applications/luci-app-diag-core/po/nb_NO/diag_core.po similarity index 100% rename from applications/luci-app-diag-core/po/no/diag_core.po rename to applications/luci-app-diag-core/po/nb_NO/diag_core.po diff --git a/applications/luci-app-diag-core/po/pt-br/diag_core.po b/applications/luci-app-diag-core/po/pt_BR/diag_core.po similarity index 100% rename from applications/luci-app-diag-core/po/pt-br/diag_core.po rename to applications/luci-app-diag-core/po/pt_BR/diag_core.po diff --git a/applications/luci-app-diag-core/po/zh-cn/diag_core.po b/applications/luci-app-diag-core/po/zh_Hans/diag_core.po similarity index 100% rename from applications/luci-app-diag-core/po/zh-cn/diag_core.po rename to applications/luci-app-diag-core/po/zh_Hans/diag_core.po diff --git a/applications/luci-app-diag-core/po/zh-tw/diag_core.po b/applications/luci-app-diag-core/po/zh_Hant/diag_core.po similarity index 100% rename from applications/luci-app-diag-core/po/zh-tw/diag_core.po rename to applications/luci-app-diag-core/po/zh_Hant/diag_core.po diff --git a/applications/luci-app-dnscrypt-proxy/po/zh-cn/dnscrypt-proxy.po b/applications/luci-app-dnscrypt-proxy/po/zh_Hans/dnscrypt-proxy.po similarity index 100% rename from applications/luci-app-dnscrypt-proxy/po/zh-cn/dnscrypt-proxy.po rename to applications/luci-app-dnscrypt-proxy/po/zh_Hans/dnscrypt-proxy.po diff --git a/applications/luci-app-dnscrypt-proxy/po/zh-tw/dnscrypt-proxy.po b/applications/luci-app-dnscrypt-proxy/po/zh_Hant/dnscrypt-proxy.po similarity index 100% rename from applications/luci-app-dnscrypt-proxy/po/zh-tw/dnscrypt-proxy.po rename to applications/luci-app-dnscrypt-proxy/po/zh_Hant/dnscrypt-proxy.po diff --git a/applications/luci-app-dump1090/po/zh-cn/dump1090.po b/applications/luci-app-dump1090/po/zh_Hans/dump1090.po similarity index 100% rename from applications/luci-app-dump1090/po/zh-cn/dump1090.po rename to applications/luci-app-dump1090/po/zh_Hans/dump1090.po diff --git a/applications/luci-app-dump1090/po/zh-tw/dump1090.po b/applications/luci-app-dump1090/po/zh_Hant/dump1090.po similarity index 100% rename from applications/luci-app-dump1090/po/zh-tw/dump1090.po rename to applications/luci-app-dump1090/po/zh_Hant/dump1090.po diff --git a/applications/luci-app-dynapoint/po/pt-br/dynapoint.po b/applications/luci-app-dynapoint/po/pt_BR/dynapoint.po similarity index 100% rename from applications/luci-app-dynapoint/po/pt-br/dynapoint.po rename to applications/luci-app-dynapoint/po/pt_BR/dynapoint.po diff --git a/applications/luci-app-dynapoint/po/zh-cn/dynapoint.po b/applications/luci-app-dynapoint/po/zh_Hans/dynapoint.po similarity index 100% rename from applications/luci-app-dynapoint/po/zh-cn/dynapoint.po rename to applications/luci-app-dynapoint/po/zh_Hans/dynapoint.po diff --git a/applications/luci-app-dynapoint/po/zh-tw/dynapoint.po b/applications/luci-app-dynapoint/po/zh_Hant/dynapoint.po similarity index 100% rename from applications/luci-app-dynapoint/po/zh-tw/dynapoint.po rename to applications/luci-app-dynapoint/po/zh_Hant/dynapoint.po diff --git a/applications/luci-app-firewall/po/no/firewall.po b/applications/luci-app-firewall/po/nb_NO/firewall.po similarity index 100% rename from applications/luci-app-firewall/po/no/firewall.po rename to applications/luci-app-firewall/po/nb_NO/firewall.po diff --git a/applications/luci-app-firewall/po/pt-br/firewall.po b/applications/luci-app-firewall/po/pt_BR/firewall.po similarity index 100% rename from applications/luci-app-firewall/po/pt-br/firewall.po rename to applications/luci-app-firewall/po/pt_BR/firewall.po diff --git a/applications/luci-app-firewall/po/zh-cn/firewall.po b/applications/luci-app-firewall/po/zh_Hans/firewall.po similarity index 100% rename from applications/luci-app-firewall/po/zh-cn/firewall.po rename to applications/luci-app-firewall/po/zh_Hans/firewall.po diff --git a/applications/luci-app-firewall/po/zh-tw/firewall.po b/applications/luci-app-firewall/po/zh_Hant/firewall.po similarity index 100% rename from applications/luci-app-firewall/po/zh-tw/firewall.po rename to applications/luci-app-firewall/po/zh_Hant/firewall.po diff --git a/applications/luci-app-fwknopd/po/pt-br/fwknopd.po b/applications/luci-app-fwknopd/po/pt_BR/fwknopd.po similarity index 100% rename from applications/luci-app-fwknopd/po/pt-br/fwknopd.po rename to applications/luci-app-fwknopd/po/pt_BR/fwknopd.po diff --git a/applications/luci-app-fwknopd/po/zh-cn/fwknopd.po b/applications/luci-app-fwknopd/po/zh_Hans/fwknopd.po similarity index 100% rename from applications/luci-app-fwknopd/po/zh-cn/fwknopd.po rename to applications/luci-app-fwknopd/po/zh_Hans/fwknopd.po diff --git a/applications/luci-app-fwknopd/po/zh-tw/fwknopd.po b/applications/luci-app-fwknopd/po/zh_Hant/fwknopd.po similarity index 100% rename from applications/luci-app-fwknopd/po/zh-tw/fwknopd.po rename to applications/luci-app-fwknopd/po/zh_Hant/fwknopd.po diff --git a/applications/luci-app-hd-idle/po/no/hd_idle.po b/applications/luci-app-hd-idle/po/nb_NO/hd_idle.po similarity index 100% rename from applications/luci-app-hd-idle/po/no/hd_idle.po rename to applications/luci-app-hd-idle/po/nb_NO/hd_idle.po diff --git a/applications/luci-app-hd-idle/po/pt-br/hd_idle.po b/applications/luci-app-hd-idle/po/pt_BR/hd_idle.po similarity index 100% rename from applications/luci-app-hd-idle/po/pt-br/hd_idle.po rename to applications/luci-app-hd-idle/po/pt_BR/hd_idle.po diff --git a/applications/luci-app-hd-idle/po/zh-cn/hd_idle.po b/applications/luci-app-hd-idle/po/zh_Hans/hd_idle.po similarity index 100% rename from applications/luci-app-hd-idle/po/zh-cn/hd_idle.po rename to applications/luci-app-hd-idle/po/zh_Hans/hd_idle.po diff --git a/applications/luci-app-hd-idle/po/zh-tw/hd_idle.po b/applications/luci-app-hd-idle/po/zh_Hant/hd_idle.po similarity index 100% rename from applications/luci-app-hd-idle/po/zh-tw/hd_idle.po rename to applications/luci-app-hd-idle/po/zh_Hant/hd_idle.po diff --git a/applications/luci-app-https-dns-proxy/po/zh-cn/https-dns-proxy.po b/applications/luci-app-https-dns-proxy/po/zh_Hans/https-dns-proxy.po similarity index 100% rename from applications/luci-app-https-dns-proxy/po/zh-cn/https-dns-proxy.po rename to applications/luci-app-https-dns-proxy/po/zh_Hans/https-dns-proxy.po diff --git a/applications/luci-app-https-dns-proxy/po/zh-tw/https-dns-proxy.po b/applications/luci-app-https-dns-proxy/po/zh_Hant/https-dns-proxy.po similarity index 100% rename from applications/luci-app-https-dns-proxy/po/zh-tw/https-dns-proxy.po rename to applications/luci-app-https-dns-proxy/po/zh_Hant/https-dns-proxy.po diff --git a/applications/luci-app-ksmbd/po/no/ksmbd.po b/applications/luci-app-ksmbd/po/nb_NO/ksmbd.po similarity index 100% rename from applications/luci-app-ksmbd/po/no/ksmbd.po rename to applications/luci-app-ksmbd/po/nb_NO/ksmbd.po diff --git a/applications/luci-app-ksmbd/po/pt-br/ksmbd.po b/applications/luci-app-ksmbd/po/pt_BR/ksmbd.po similarity index 100% rename from applications/luci-app-ksmbd/po/pt-br/ksmbd.po rename to applications/luci-app-ksmbd/po/pt_BR/ksmbd.po diff --git a/applications/luci-app-ksmbd/po/zh-cn/ksmbd.po b/applications/luci-app-ksmbd/po/zh_Hans/ksmbd.po similarity index 100% rename from applications/luci-app-ksmbd/po/zh-cn/ksmbd.po rename to applications/luci-app-ksmbd/po/zh_Hans/ksmbd.po diff --git a/applications/luci-app-ksmbd/po/zh-tw/ksmbd.po b/applications/luci-app-ksmbd/po/zh_Hant/ksmbd.po similarity index 100% rename from applications/luci-app-ksmbd/po/zh-tw/ksmbd.po rename to applications/luci-app-ksmbd/po/zh_Hant/ksmbd.po diff --git a/applications/luci-app-ltqtapi/po/zh-cn/ltqtapi.po b/applications/luci-app-ltqtapi/po/zh_Hans/ltqtapi.po similarity index 100% rename from applications/luci-app-ltqtapi/po/zh-cn/ltqtapi.po rename to applications/luci-app-ltqtapi/po/zh_Hans/ltqtapi.po diff --git a/applications/luci-app-ltqtapi/po/zh-tw/ltqtapi.po b/applications/luci-app-ltqtapi/po/zh_Hant/ltqtapi.po similarity index 100% rename from applications/luci-app-ltqtapi/po/zh-tw/ltqtapi.po rename to applications/luci-app-ltqtapi/po/zh_Hant/ltqtapi.po diff --git a/applications/luci-app-lxc/po/zh-cn/lxc.po b/applications/luci-app-lxc/po/zh_Hans/lxc.po similarity index 100% rename from applications/luci-app-lxc/po/zh-cn/lxc.po rename to applications/luci-app-lxc/po/zh_Hans/lxc.po diff --git a/applications/luci-app-lxc/po/zh-tw/lxc.po b/applications/luci-app-lxc/po/zh_Hant/lxc.po similarity index 100% rename from applications/luci-app-lxc/po/zh-tw/lxc.po rename to applications/luci-app-lxc/po/zh_Hant/lxc.po diff --git a/applications/luci-app-minidlna/po/no/minidlna.po b/applications/luci-app-minidlna/po/nb_NO/minidlna.po similarity index 100% rename from applications/luci-app-minidlna/po/no/minidlna.po rename to applications/luci-app-minidlna/po/nb_NO/minidlna.po diff --git a/applications/luci-app-minidlna/po/pt-br/minidlna.po b/applications/luci-app-minidlna/po/pt_BR/minidlna.po similarity index 100% rename from applications/luci-app-minidlna/po/pt-br/minidlna.po rename to applications/luci-app-minidlna/po/pt_BR/minidlna.po diff --git a/applications/luci-app-minidlna/po/zh-cn/minidlna.po b/applications/luci-app-minidlna/po/zh_Hans/minidlna.po similarity index 100% rename from applications/luci-app-minidlna/po/zh-cn/minidlna.po rename to applications/luci-app-minidlna/po/zh_Hans/minidlna.po diff --git a/applications/luci-app-minidlna/po/zh-tw/minidlna.po b/applications/luci-app-minidlna/po/zh_Hant/minidlna.po similarity index 100% rename from applications/luci-app-minidlna/po/zh-tw/minidlna.po rename to applications/luci-app-minidlna/po/zh_Hant/minidlna.po diff --git a/applications/luci-app-mjpg-streamer/po/pt-br/mjpg-streamer.po b/applications/luci-app-mjpg-streamer/po/pt_BR/mjpg-streamer.po similarity index 100% rename from applications/luci-app-mjpg-streamer/po/pt-br/mjpg-streamer.po rename to applications/luci-app-mjpg-streamer/po/pt_BR/mjpg-streamer.po diff --git a/applications/luci-app-mjpg-streamer/po/zh-cn/mjpg-streamer.po b/applications/luci-app-mjpg-streamer/po/zh_Hans/mjpg-streamer.po similarity index 100% rename from applications/luci-app-mjpg-streamer/po/zh-cn/mjpg-streamer.po rename to applications/luci-app-mjpg-streamer/po/zh_Hans/mjpg-streamer.po diff --git a/applications/luci-app-mjpg-streamer/po/zh-tw/mjpg-streamer.po b/applications/luci-app-mjpg-streamer/po/zh_Hant/mjpg-streamer.po similarity index 100% rename from applications/luci-app-mjpg-streamer/po/zh-tw/mjpg-streamer.po rename to applications/luci-app-mjpg-streamer/po/zh_Hant/mjpg-streamer.po diff --git a/applications/luci-app-mwan3/po/zh-cn/mwan3.po b/applications/luci-app-mwan3/po/zh_Hans/mwan3.po similarity index 100% rename from applications/luci-app-mwan3/po/zh-cn/mwan3.po rename to applications/luci-app-mwan3/po/zh_Hans/mwan3.po diff --git a/applications/luci-app-mwan3/po/zh-tw/mwan3.po b/applications/luci-app-mwan3/po/zh_Hant/mwan3.po similarity index 100% rename from applications/luci-app-mwan3/po/zh-tw/mwan3.po rename to applications/luci-app-mwan3/po/zh_Hant/mwan3.po diff --git a/applications/luci-app-nextdns/po/zh-cn/nextdns.po b/applications/luci-app-nextdns/po/zh_Hans/nextdns.po similarity index 100% rename from applications/luci-app-nextdns/po/zh-cn/nextdns.po rename to applications/luci-app-nextdns/po/zh_Hans/nextdns.po diff --git a/applications/luci-app-nextdns/po/zh-tw/nextdns.po b/applications/luci-app-nextdns/po/zh_Hant/nextdns.po similarity index 100% rename from applications/luci-app-nextdns/po/zh-tw/nextdns.po rename to applications/luci-app-nextdns/po/zh_Hant/nextdns.po diff --git a/applications/luci-app-nft-qos/po/zh-cn/nft-qos.po b/applications/luci-app-nft-qos/po/zh_Hans/nft-qos.po similarity index 100% rename from applications/luci-app-nft-qos/po/zh-cn/nft-qos.po rename to applications/luci-app-nft-qos/po/zh_Hans/nft-qos.po diff --git a/applications/luci-app-nft-qos/po/zh-tw/nft-qos.po b/applications/luci-app-nft-qos/po/zh_Hant/nft-qos.po similarity index 100% rename from applications/luci-app-nft-qos/po/zh-tw/nft-qos.po rename to applications/luci-app-nft-qos/po/zh_Hant/nft-qos.po diff --git a/applications/luci-app-nlbwmon/po/zh-cn/nlbwmon.po b/applications/luci-app-nlbwmon/po/zh_Hans/nlbwmon.po similarity index 100% rename from applications/luci-app-nlbwmon/po/zh-cn/nlbwmon.po rename to applications/luci-app-nlbwmon/po/zh_Hans/nlbwmon.po diff --git a/applications/luci-app-nlbwmon/po/zh-tw/nlbwmon.po b/applications/luci-app-nlbwmon/po/zh_Hant/nlbwmon.po similarity index 100% rename from applications/luci-app-nlbwmon/po/zh-tw/nlbwmon.po rename to applications/luci-app-nlbwmon/po/zh_Hant/nlbwmon.po diff --git a/applications/luci-app-noddos/po/zh-cn/noddos.po b/applications/luci-app-noddos/po/zh_Hans/noddos.po similarity index 100% rename from applications/luci-app-noddos/po/zh-cn/noddos.po rename to applications/luci-app-noddos/po/zh_Hans/noddos.po diff --git a/applications/luci-app-noddos/po/zh-tw/noddos.po b/applications/luci-app-noddos/po/zh_Hant/noddos.po similarity index 100% rename from applications/luci-app-noddos/po/zh-tw/noddos.po rename to applications/luci-app-noddos/po/zh_Hant/noddos.po diff --git a/applications/luci-app-ntpc/po/no/ntpc.po b/applications/luci-app-ntpc/po/nb_NO/ntpc.po similarity index 100% rename from applications/luci-app-ntpc/po/no/ntpc.po rename to applications/luci-app-ntpc/po/nb_NO/ntpc.po diff --git a/applications/luci-app-ntpc/po/pt-br/ntpc.po b/applications/luci-app-ntpc/po/pt_BR/ntpc.po similarity index 100% rename from applications/luci-app-ntpc/po/pt-br/ntpc.po rename to applications/luci-app-ntpc/po/pt_BR/ntpc.po diff --git a/applications/luci-app-ntpc/po/zh-cn/ntpc.po b/applications/luci-app-ntpc/po/zh_Hans/ntpc.po similarity index 100% rename from applications/luci-app-ntpc/po/zh-cn/ntpc.po rename to applications/luci-app-ntpc/po/zh_Hans/ntpc.po diff --git a/applications/luci-app-ntpc/po/zh-tw/ntpc.po b/applications/luci-app-ntpc/po/zh_Hant/ntpc.po similarity index 100% rename from applications/luci-app-ntpc/po/zh-tw/ntpc.po rename to applications/luci-app-ntpc/po/zh_Hant/ntpc.po diff --git a/applications/luci-app-nut/po/zh-cn/nut.po b/applications/luci-app-nut/po/zh_Hans/nut.po similarity index 100% rename from applications/luci-app-nut/po/zh-cn/nut.po rename to applications/luci-app-nut/po/zh_Hans/nut.po diff --git a/applications/luci-app-nut/po/zh-tw/nut.po b/applications/luci-app-nut/po/zh_Hant/nut.po similarity index 100% rename from applications/luci-app-nut/po/zh-tw/nut.po rename to applications/luci-app-nut/po/zh_Hant/nut.po diff --git a/applications/luci-app-ocserv/po/zh-cn/ocserv.po b/applications/luci-app-ocserv/po/zh_Hans/ocserv.po similarity index 100% rename from applications/luci-app-ocserv/po/zh-cn/ocserv.po rename to applications/luci-app-ocserv/po/zh_Hans/ocserv.po diff --git a/applications/luci-app-ocserv/po/zh-tw/ocserv.po b/applications/luci-app-ocserv/po/zh_Hant/ocserv.po similarity index 100% rename from applications/luci-app-ocserv/po/zh-tw/ocserv.po rename to applications/luci-app-ocserv/po/zh_Hant/ocserv.po diff --git a/applications/luci-app-olsr-services/po/zh-cn/olsr-services.po b/applications/luci-app-olsr-services/po/zh_Hans/olsr-services.po similarity index 100% rename from applications/luci-app-olsr-services/po/zh-cn/olsr-services.po rename to applications/luci-app-olsr-services/po/zh_Hans/olsr-services.po diff --git a/applications/luci-app-olsr-services/po/zh-tw/olsr-services.po b/applications/luci-app-olsr-services/po/zh_Hant/olsr-services.po similarity index 100% rename from applications/luci-app-olsr-services/po/zh-tw/olsr-services.po rename to applications/luci-app-olsr-services/po/zh_Hant/olsr-services.po diff --git a/applications/luci-app-olsr-viz/po/zh-cn/olsr-viz.po b/applications/luci-app-olsr-viz/po/zh_Hans/olsr-viz.po similarity index 100% rename from applications/luci-app-olsr-viz/po/zh-cn/olsr-viz.po rename to applications/luci-app-olsr-viz/po/zh_Hans/olsr-viz.po diff --git a/applications/luci-app-olsr-viz/po/zh-tw/olsr-viz.po b/applications/luci-app-olsr-viz/po/zh_Hant/olsr-viz.po similarity index 100% rename from applications/luci-app-olsr-viz/po/zh-tw/olsr-viz.po rename to applications/luci-app-olsr-viz/po/zh_Hant/olsr-viz.po diff --git a/applications/luci-app-olsr/po/no/olsr.po b/applications/luci-app-olsr/po/nb_NO/olsr.po similarity index 100% rename from applications/luci-app-olsr/po/no/olsr.po rename to applications/luci-app-olsr/po/nb_NO/olsr.po diff --git a/applications/luci-app-olsr/po/pt-br/olsr.po b/applications/luci-app-olsr/po/pt_BR/olsr.po similarity index 100% rename from applications/luci-app-olsr/po/pt-br/olsr.po rename to applications/luci-app-olsr/po/pt_BR/olsr.po diff --git a/applications/luci-app-olsr/po/zh-cn/olsr.po b/applications/luci-app-olsr/po/zh_Hans/olsr.po similarity index 100% rename from applications/luci-app-olsr/po/zh-cn/olsr.po rename to applications/luci-app-olsr/po/zh_Hans/olsr.po diff --git a/applications/luci-app-olsr/po/zh-tw/olsr.po b/applications/luci-app-olsr/po/zh_Hant/olsr.po similarity index 100% rename from applications/luci-app-olsr/po/zh-tw/olsr.po rename to applications/luci-app-olsr/po/zh_Hant/olsr.po diff --git a/applications/luci-app-omcproxy/po/zh-cn/omcproxy.po b/applications/luci-app-omcproxy/po/zh_Hans/omcproxy.po similarity index 100% rename from applications/luci-app-omcproxy/po/zh-cn/omcproxy.po rename to applications/luci-app-omcproxy/po/zh_Hans/omcproxy.po diff --git a/applications/luci-app-omcproxy/po/zh-tw/omcproxy.po b/applications/luci-app-omcproxy/po/zh_Hant/omcproxy.po similarity index 100% rename from applications/luci-app-omcproxy/po/zh-tw/omcproxy.po rename to applications/luci-app-omcproxy/po/zh_Hant/omcproxy.po diff --git a/applications/luci-app-openvpn/po/no/openvpn.po b/applications/luci-app-openvpn/po/nb_NO/openvpn.po similarity index 100% rename from applications/luci-app-openvpn/po/no/openvpn.po rename to applications/luci-app-openvpn/po/nb_NO/openvpn.po diff --git a/applications/luci-app-openvpn/po/pt-br/openvpn.po b/applications/luci-app-openvpn/po/pt_BR/openvpn.po similarity index 100% rename from applications/luci-app-openvpn/po/pt-br/openvpn.po rename to applications/luci-app-openvpn/po/pt_BR/openvpn.po diff --git a/applications/luci-app-openvpn/po/zh-cn/openvpn.po b/applications/luci-app-openvpn/po/zh_Hans/openvpn.po similarity index 100% rename from applications/luci-app-openvpn/po/zh-cn/openvpn.po rename to applications/luci-app-openvpn/po/zh_Hans/openvpn.po diff --git a/applications/luci-app-openvpn/po/zh-tw/openvpn.po b/applications/luci-app-openvpn/po/zh_Hant/openvpn.po similarity index 100% rename from applications/luci-app-openvpn/po/zh-tw/openvpn.po rename to applications/luci-app-openvpn/po/zh_Hant/openvpn.po diff --git a/applications/luci-app-opkg/po/no/opkg.po b/applications/luci-app-opkg/po/nb_NO/opkg.po similarity index 100% rename from applications/luci-app-opkg/po/no/opkg.po rename to applications/luci-app-opkg/po/nb_NO/opkg.po diff --git a/applications/luci-app-opkg/po/pt-br/opkg.po b/applications/luci-app-opkg/po/pt_BR/opkg.po similarity index 100% rename from applications/luci-app-opkg/po/pt-br/opkg.po rename to applications/luci-app-opkg/po/pt_BR/opkg.po diff --git a/applications/luci-app-opkg/po/zh-cn/opkg.po b/applications/luci-app-opkg/po/zh_Hans/opkg.po similarity index 100% rename from applications/luci-app-opkg/po/zh-cn/opkg.po rename to applications/luci-app-opkg/po/zh_Hans/opkg.po diff --git a/applications/luci-app-opkg/po/zh-tw/opkg.po b/applications/luci-app-opkg/po/zh_Hant/opkg.po similarity index 100% rename from applications/luci-app-opkg/po/zh-tw/opkg.po rename to applications/luci-app-opkg/po/zh_Hant/opkg.po diff --git a/applications/luci-app-p910nd/po/no/p910nd.po b/applications/luci-app-p910nd/po/nb_NO/p910nd.po similarity index 100% rename from applications/luci-app-p910nd/po/no/p910nd.po rename to applications/luci-app-p910nd/po/nb_NO/p910nd.po diff --git a/applications/luci-app-p910nd/po/pt-br/p910nd.po b/applications/luci-app-p910nd/po/pt_BR/p910nd.po similarity index 100% rename from applications/luci-app-p910nd/po/pt-br/p910nd.po rename to applications/luci-app-p910nd/po/pt_BR/p910nd.po diff --git a/applications/luci-app-p910nd/po/zh-cn/p910nd.po b/applications/luci-app-p910nd/po/zh_Hans/p910nd.po similarity index 100% rename from applications/luci-app-p910nd/po/zh-cn/p910nd.po rename to applications/luci-app-p910nd/po/zh_Hans/p910nd.po diff --git a/applications/luci-app-p910nd/po/zh-tw/p910nd.po b/applications/luci-app-p910nd/po/zh_Hant/p910nd.po similarity index 100% rename from applications/luci-app-p910nd/po/zh-tw/p910nd.po rename to applications/luci-app-p910nd/po/zh_Hant/p910nd.po diff --git a/applications/luci-app-pagekitec/po/zh-cn/pagekitec.po b/applications/luci-app-pagekitec/po/zh_Hans/pagekitec.po similarity index 100% rename from applications/luci-app-pagekitec/po/zh-cn/pagekitec.po rename to applications/luci-app-pagekitec/po/zh_Hans/pagekitec.po diff --git a/applications/luci-app-pagekitec/po/zh-tw/pagekitec.po b/applications/luci-app-pagekitec/po/zh_Hant/pagekitec.po similarity index 100% rename from applications/luci-app-pagekitec/po/zh-tw/pagekitec.po rename to applications/luci-app-pagekitec/po/zh_Hant/pagekitec.po diff --git a/applications/luci-app-polipo/po/no/polipo.po b/applications/luci-app-polipo/po/nb_NO/polipo.po similarity index 100% rename from applications/luci-app-polipo/po/no/polipo.po rename to applications/luci-app-polipo/po/nb_NO/polipo.po diff --git a/applications/luci-app-polipo/po/pt-br/polipo.po b/applications/luci-app-polipo/po/pt_BR/polipo.po similarity index 100% rename from applications/luci-app-polipo/po/pt-br/polipo.po rename to applications/luci-app-polipo/po/pt_BR/polipo.po diff --git a/applications/luci-app-polipo/po/zh-cn/polipo.po b/applications/luci-app-polipo/po/zh_Hans/polipo.po similarity index 100% rename from applications/luci-app-polipo/po/zh-cn/polipo.po rename to applications/luci-app-polipo/po/zh_Hans/polipo.po diff --git a/applications/luci-app-polipo/po/zh-tw/polipo.po b/applications/luci-app-polipo/po/zh_Hant/polipo.po similarity index 100% rename from applications/luci-app-polipo/po/zh-tw/polipo.po rename to applications/luci-app-polipo/po/zh_Hant/polipo.po diff --git a/applications/luci-app-privoxy/po/pt-br/privoxy.po b/applications/luci-app-privoxy/po/pt_BR/privoxy.po similarity index 100% rename from applications/luci-app-privoxy/po/pt-br/privoxy.po rename to applications/luci-app-privoxy/po/pt_BR/privoxy.po diff --git a/applications/luci-app-privoxy/po/zh-cn/privoxy.po b/applications/luci-app-privoxy/po/zh_Hans/privoxy.po similarity index 100% rename from applications/luci-app-privoxy/po/zh-cn/privoxy.po rename to applications/luci-app-privoxy/po/zh_Hans/privoxy.po diff --git a/applications/luci-app-privoxy/po/zh-tw/privoxy.po b/applications/luci-app-privoxy/po/zh_Hant/privoxy.po similarity index 100% rename from applications/luci-app-privoxy/po/zh-tw/privoxy.po rename to applications/luci-app-privoxy/po/zh_Hant/privoxy.po diff --git a/applications/luci-app-qos/po/no/qos.po b/applications/luci-app-qos/po/nb_NO/qos.po similarity index 100% rename from applications/luci-app-qos/po/no/qos.po rename to applications/luci-app-qos/po/nb_NO/qos.po diff --git a/applications/luci-app-qos/po/pt-br/qos.po b/applications/luci-app-qos/po/pt_BR/qos.po similarity index 100% rename from applications/luci-app-qos/po/pt-br/qos.po rename to applications/luci-app-qos/po/pt_BR/qos.po diff --git a/applications/luci-app-qos/po/zh-cn/qos.po b/applications/luci-app-qos/po/zh_Hans/qos.po similarity index 100% rename from applications/luci-app-qos/po/zh-cn/qos.po rename to applications/luci-app-qos/po/zh_Hans/qos.po diff --git a/applications/luci-app-qos/po/zh-tw/qos.po b/applications/luci-app-qos/po/zh_Hant/qos.po similarity index 100% rename from applications/luci-app-qos/po/zh-tw/qos.po rename to applications/luci-app-qos/po/zh_Hant/qos.po diff --git a/applications/luci-app-radicale/po/pt-br/radicale.po b/applications/luci-app-radicale/po/pt_BR/radicale.po similarity index 100% rename from applications/luci-app-radicale/po/pt-br/radicale.po rename to applications/luci-app-radicale/po/pt_BR/radicale.po diff --git a/applications/luci-app-radicale/po/zh-cn/radicale.po b/applications/luci-app-radicale/po/zh_Hans/radicale.po similarity index 100% rename from applications/luci-app-radicale/po/zh-cn/radicale.po rename to applications/luci-app-radicale/po/zh_Hans/radicale.po diff --git a/applications/luci-app-radicale/po/zh-tw/radicale.po b/applications/luci-app-radicale/po/zh_Hant/radicale.po similarity index 100% rename from applications/luci-app-radicale/po/zh-tw/radicale.po rename to applications/luci-app-radicale/po/zh_Hant/radicale.po diff --git a/applications/luci-app-radicale2/po/zh-cn/radicale2.po b/applications/luci-app-radicale2/po/zh_Hans/radicale2.po similarity index 100% rename from applications/luci-app-radicale2/po/zh-cn/radicale2.po rename to applications/luci-app-radicale2/po/zh_Hans/radicale2.po diff --git a/applications/luci-app-radicale2/po/zh-tw/radicale2.po b/applications/luci-app-radicale2/po/zh_Hant/radicale2.po similarity index 100% rename from applications/luci-app-radicale2/po/zh-tw/radicale2.po rename to applications/luci-app-radicale2/po/zh_Hant/radicale2.po diff --git a/applications/luci-app-rp-pppoe-server/po/zh-cn/rp-pppoe-server.po b/applications/luci-app-rp-pppoe-server/po/zh_Hans/rp-pppoe-server.po similarity index 100% rename from applications/luci-app-rp-pppoe-server/po/zh-cn/rp-pppoe-server.po rename to applications/luci-app-rp-pppoe-server/po/zh_Hans/rp-pppoe-server.po diff --git a/applications/luci-app-rp-pppoe-server/po/zh-tw/rp-pppoe-server.po b/applications/luci-app-rp-pppoe-server/po/zh_Hant/rp-pppoe-server.po similarity index 100% rename from applications/luci-app-rp-pppoe-server/po/zh-tw/rp-pppoe-server.po rename to applications/luci-app-rp-pppoe-server/po/zh_Hant/rp-pppoe-server.po diff --git a/applications/luci-app-samba/po/no/samba.po b/applications/luci-app-samba/po/nb_NO/samba.po similarity index 100% rename from applications/luci-app-samba/po/no/samba.po rename to applications/luci-app-samba/po/nb_NO/samba.po diff --git a/applications/luci-app-samba/po/pt-br/samba.po b/applications/luci-app-samba/po/pt_BR/samba.po similarity index 100% rename from applications/luci-app-samba/po/pt-br/samba.po rename to applications/luci-app-samba/po/pt_BR/samba.po diff --git a/applications/luci-app-samba/po/zh-cn/samba.po b/applications/luci-app-samba/po/zh_Hans/samba.po similarity index 100% rename from applications/luci-app-samba/po/zh-cn/samba.po rename to applications/luci-app-samba/po/zh_Hans/samba.po diff --git a/applications/luci-app-samba/po/zh-tw/samba.po b/applications/luci-app-samba/po/zh_Hant/samba.po similarity index 100% rename from applications/luci-app-samba/po/zh-tw/samba.po rename to applications/luci-app-samba/po/zh_Hant/samba.po diff --git a/applications/luci-app-samba4/po/no/samba4.po b/applications/luci-app-samba4/po/nb_NO/samba4.po similarity index 100% rename from applications/luci-app-samba4/po/no/samba4.po rename to applications/luci-app-samba4/po/nb_NO/samba4.po diff --git a/applications/luci-app-samba4/po/pt-br/samba4.po b/applications/luci-app-samba4/po/pt_BR/samba4.po similarity index 100% rename from applications/luci-app-samba4/po/pt-br/samba4.po rename to applications/luci-app-samba4/po/pt_BR/samba4.po diff --git a/applications/luci-app-samba4/po/zh-cn/samba4.po b/applications/luci-app-samba4/po/zh_Hans/samba4.po similarity index 100% rename from applications/luci-app-samba4/po/zh-cn/samba4.po rename to applications/luci-app-samba4/po/zh_Hans/samba4.po diff --git a/applications/luci-app-samba4/po/zh-tw/samba4.po b/applications/luci-app-samba4/po/zh_Hant/samba4.po similarity index 100% rename from applications/luci-app-samba4/po/zh-tw/samba4.po rename to applications/luci-app-samba4/po/zh_Hant/samba4.po diff --git a/applications/luci-app-ser2net/po/no/ser2net.po b/applications/luci-app-ser2net/po/nb_NO/ser2net.po similarity index 100% rename from applications/luci-app-ser2net/po/no/ser2net.po rename to applications/luci-app-ser2net/po/nb_NO/ser2net.po diff --git a/applications/luci-app-ser2net/po/pt-br/ser2net.po b/applications/luci-app-ser2net/po/pt_BR/ser2net.po similarity index 100% rename from applications/luci-app-ser2net/po/pt-br/ser2net.po rename to applications/luci-app-ser2net/po/pt_BR/ser2net.po diff --git a/applications/luci-app-ser2net/po/zh-cn/ser2net.po b/applications/luci-app-ser2net/po/zh_Hans/ser2net.po similarity index 100% rename from applications/luci-app-ser2net/po/zh-cn/ser2net.po rename to applications/luci-app-ser2net/po/zh_Hans/ser2net.po diff --git a/applications/luci-app-ser2net/po/zh-tw/ser2net.po b/applications/luci-app-ser2net/po/zh_Hant/ser2net.po similarity index 100% rename from applications/luci-app-ser2net/po/zh-tw/ser2net.po rename to applications/luci-app-ser2net/po/zh_Hant/ser2net.po diff --git a/applications/luci-app-shadowsocks-libev/po/zh-cn/shadowsocks-libev.po b/applications/luci-app-shadowsocks-libev/po/zh_Hans/shadowsocks-libev.po similarity index 100% rename from applications/luci-app-shadowsocks-libev/po/zh-cn/shadowsocks-libev.po rename to applications/luci-app-shadowsocks-libev/po/zh_Hans/shadowsocks-libev.po diff --git a/applications/luci-app-shadowsocks-libev/po/zh-tw/shadowsocks-libev.po b/applications/luci-app-shadowsocks-libev/po/zh_Hant/shadowsocks-libev.po similarity index 100% rename from applications/luci-app-shadowsocks-libev/po/zh-tw/shadowsocks-libev.po rename to applications/luci-app-shadowsocks-libev/po/zh_Hant/shadowsocks-libev.po diff --git a/applications/luci-app-shairplay/po/pt-br/shairplay.po b/applications/luci-app-shairplay/po/pt_BR/shairplay.po similarity index 100% rename from applications/luci-app-shairplay/po/pt-br/shairplay.po rename to applications/luci-app-shairplay/po/pt_BR/shairplay.po diff --git a/applications/luci-app-shairplay/po/zh-cn/shairplay.po b/applications/luci-app-shairplay/po/zh_Hans/shairplay.po similarity index 100% rename from applications/luci-app-shairplay/po/zh-cn/shairplay.po rename to applications/luci-app-shairplay/po/zh_Hans/shairplay.po diff --git a/applications/luci-app-shairplay/po/zh-tw/shairplay.po b/applications/luci-app-shairplay/po/zh_Hant/shairplay.po similarity index 100% rename from applications/luci-app-shairplay/po/zh-tw/shairplay.po rename to applications/luci-app-shairplay/po/zh_Hant/shairplay.po diff --git a/applications/luci-app-simple-adblock/po/pt-br/simple-adblock.po b/applications/luci-app-simple-adblock/po/pt_BR/simple-adblock.po similarity index 100% rename from applications/luci-app-simple-adblock/po/pt-br/simple-adblock.po rename to applications/luci-app-simple-adblock/po/pt_BR/simple-adblock.po diff --git a/applications/luci-app-simple-adblock/po/zh-cn/simple-adblock.po b/applications/luci-app-simple-adblock/po/zh_Hans/simple-adblock.po similarity index 100% rename from applications/luci-app-simple-adblock/po/zh-cn/simple-adblock.po rename to applications/luci-app-simple-adblock/po/zh_Hans/simple-adblock.po diff --git a/applications/luci-app-simple-adblock/po/zh-tw/simple-adblock.po b/applications/luci-app-simple-adblock/po/zh_Hant/simple-adblock.po similarity index 100% rename from applications/luci-app-simple-adblock/po/zh-tw/simple-adblock.po rename to applications/luci-app-simple-adblock/po/zh_Hant/simple-adblock.po diff --git a/applications/luci-app-splash/po/no/splash.po b/applications/luci-app-splash/po/nb_NO/splash.po similarity index 100% rename from applications/luci-app-splash/po/no/splash.po rename to applications/luci-app-splash/po/nb_NO/splash.po diff --git a/applications/luci-app-splash/po/pt-br/splash.po b/applications/luci-app-splash/po/pt_BR/splash.po similarity index 100% rename from applications/luci-app-splash/po/pt-br/splash.po rename to applications/luci-app-splash/po/pt_BR/splash.po diff --git a/applications/luci-app-splash/po/zh-cn/splash.po b/applications/luci-app-splash/po/zh_Hans/splash.po similarity index 100% rename from applications/luci-app-splash/po/zh-cn/splash.po rename to applications/luci-app-splash/po/zh_Hans/splash.po diff --git a/applications/luci-app-splash/po/zh-tw/splash.po b/applications/luci-app-splash/po/zh_Hant/splash.po similarity index 100% rename from applications/luci-app-splash/po/zh-tw/splash.po rename to applications/luci-app-splash/po/zh_Hant/splash.po diff --git a/applications/luci-app-squid/po/zh-cn/squid.po b/applications/luci-app-squid/po/zh_Hans/squid.po similarity index 100% rename from applications/luci-app-squid/po/zh-cn/squid.po rename to applications/luci-app-squid/po/zh_Hans/squid.po diff --git a/applications/luci-app-squid/po/zh-tw/squid.po b/applications/luci-app-squid/po/zh_Hant/squid.po similarity index 100% rename from applications/luci-app-squid/po/zh-tw/squid.po rename to applications/luci-app-squid/po/zh_Hant/squid.po diff --git a/applications/luci-app-statistics/po/no/statistics.po b/applications/luci-app-statistics/po/nb_NO/statistics.po similarity index 100% rename from applications/luci-app-statistics/po/no/statistics.po rename to applications/luci-app-statistics/po/nb_NO/statistics.po diff --git a/applications/luci-app-statistics/po/pt-br/statistics.po b/applications/luci-app-statistics/po/pt_BR/statistics.po similarity index 100% rename from applications/luci-app-statistics/po/pt-br/statistics.po rename to applications/luci-app-statistics/po/pt_BR/statistics.po diff --git a/applications/luci-app-statistics/po/zh-cn/statistics.po b/applications/luci-app-statistics/po/zh_Hans/statistics.po similarity index 100% rename from applications/luci-app-statistics/po/zh-cn/statistics.po rename to applications/luci-app-statistics/po/zh_Hans/statistics.po diff --git a/applications/luci-app-statistics/po/zh-tw/statistics.po b/applications/luci-app-statistics/po/zh_Hant/statistics.po similarity index 100% rename from applications/luci-app-statistics/po/zh-tw/statistics.po rename to applications/luci-app-statistics/po/zh_Hant/statistics.po diff --git a/applications/luci-app-tinyproxy/po/no/tinyproxy.po b/applications/luci-app-tinyproxy/po/nb_NO/tinyproxy.po similarity index 100% rename from applications/luci-app-tinyproxy/po/no/tinyproxy.po rename to applications/luci-app-tinyproxy/po/nb_NO/tinyproxy.po diff --git a/applications/luci-app-tinyproxy/po/pt-br/tinyproxy.po b/applications/luci-app-tinyproxy/po/pt_BR/tinyproxy.po similarity index 100% rename from applications/luci-app-tinyproxy/po/pt-br/tinyproxy.po rename to applications/luci-app-tinyproxy/po/pt_BR/tinyproxy.po diff --git a/applications/luci-app-tinyproxy/po/zh-cn/tinyproxy.po b/applications/luci-app-tinyproxy/po/zh_Hans/tinyproxy.po similarity index 100% rename from applications/luci-app-tinyproxy/po/zh-cn/tinyproxy.po rename to applications/luci-app-tinyproxy/po/zh_Hans/tinyproxy.po diff --git a/applications/luci-app-tinyproxy/po/zh-tw/tinyproxy.po b/applications/luci-app-tinyproxy/po/zh_Hant/tinyproxy.po similarity index 100% rename from applications/luci-app-tinyproxy/po/zh-tw/tinyproxy.po rename to applications/luci-app-tinyproxy/po/zh_Hant/tinyproxy.po diff --git a/applications/luci-app-transmission/po/no/transmission.po b/applications/luci-app-transmission/po/nb_NO/transmission.po similarity index 100% rename from applications/luci-app-transmission/po/no/transmission.po rename to applications/luci-app-transmission/po/nb_NO/transmission.po diff --git a/applications/luci-app-transmission/po/pt-br/transmission.po b/applications/luci-app-transmission/po/pt_BR/transmission.po similarity index 100% rename from applications/luci-app-transmission/po/pt-br/transmission.po rename to applications/luci-app-transmission/po/pt_BR/transmission.po diff --git a/applications/luci-app-transmission/po/zh-cn/transmission.po b/applications/luci-app-transmission/po/zh_Hans/transmission.po similarity index 100% rename from applications/luci-app-transmission/po/zh-cn/transmission.po rename to applications/luci-app-transmission/po/zh_Hans/transmission.po diff --git a/applications/luci-app-transmission/po/zh-tw/transmission.po b/applications/luci-app-transmission/po/zh_Hant/transmission.po similarity index 100% rename from applications/luci-app-transmission/po/zh-tw/transmission.po rename to applications/luci-app-transmission/po/zh_Hant/transmission.po diff --git a/applications/luci-app-travelmate/po/pt-br/travelmate.po b/applications/luci-app-travelmate/po/pt_BR/travelmate.po similarity index 100% rename from applications/luci-app-travelmate/po/pt-br/travelmate.po rename to applications/luci-app-travelmate/po/pt_BR/travelmate.po diff --git a/applications/luci-app-travelmate/po/zh-cn/travelmate.po b/applications/luci-app-travelmate/po/zh_Hans/travelmate.po similarity index 100% rename from applications/luci-app-travelmate/po/zh-cn/travelmate.po rename to applications/luci-app-travelmate/po/zh_Hans/travelmate.po diff --git a/applications/luci-app-travelmate/po/zh-tw/travelmate.po b/applications/luci-app-travelmate/po/zh_Hant/travelmate.po similarity index 100% rename from applications/luci-app-travelmate/po/zh-tw/travelmate.po rename to applications/luci-app-travelmate/po/zh_Hant/travelmate.po diff --git a/applications/luci-app-ttyd/po/zh-cn/ttyd.po b/applications/luci-app-ttyd/po/zh_Hans/ttyd.po similarity index 100% rename from applications/luci-app-ttyd/po/zh-cn/ttyd.po rename to applications/luci-app-ttyd/po/zh_Hans/ttyd.po diff --git a/applications/luci-app-ttyd/po/zh-tw/ttyd.po b/applications/luci-app-ttyd/po/zh_Hant/ttyd.po similarity index 100% rename from applications/luci-app-ttyd/po/zh-tw/ttyd.po rename to applications/luci-app-ttyd/po/zh_Hant/ttyd.po diff --git a/applications/luci-app-udpxy/po/zh-cn/udpxy.po b/applications/luci-app-udpxy/po/zh_Hans/udpxy.po similarity index 100% rename from applications/luci-app-udpxy/po/zh-cn/udpxy.po rename to applications/luci-app-udpxy/po/zh_Hans/udpxy.po diff --git a/applications/luci-app-udpxy/po/zh-tw/udpxy.po b/applications/luci-app-udpxy/po/zh_Hant/udpxy.po similarity index 100% rename from applications/luci-app-udpxy/po/zh-tw/udpxy.po rename to applications/luci-app-udpxy/po/zh_Hant/udpxy.po diff --git a/applications/luci-app-uhttpd/po/pt-br/uhttpd.po b/applications/luci-app-uhttpd/po/pt_BR/uhttpd.po similarity index 100% rename from applications/luci-app-uhttpd/po/pt-br/uhttpd.po rename to applications/luci-app-uhttpd/po/pt_BR/uhttpd.po diff --git a/applications/luci-app-uhttpd/po/zh-cn/uhttpd.po b/applications/luci-app-uhttpd/po/zh_Hans/uhttpd.po similarity index 100% rename from applications/luci-app-uhttpd/po/zh-cn/uhttpd.po rename to applications/luci-app-uhttpd/po/zh_Hans/uhttpd.po diff --git a/applications/luci-app-uhttpd/po/zh-tw/uhttpd.po b/applications/luci-app-uhttpd/po/zh_Hant/uhttpd.po similarity index 100% rename from applications/luci-app-uhttpd/po/zh-tw/uhttpd.po rename to applications/luci-app-uhttpd/po/zh_Hant/uhttpd.po diff --git a/applications/luci-app-unbound/po/zh-cn/unbound.po b/applications/luci-app-unbound/po/zh_Hans/unbound.po similarity index 100% rename from applications/luci-app-unbound/po/zh-cn/unbound.po rename to applications/luci-app-unbound/po/zh_Hans/unbound.po diff --git a/applications/luci-app-unbound/po/zh-tw/unbound.po b/applications/luci-app-unbound/po/zh_Hant/unbound.po similarity index 100% rename from applications/luci-app-unbound/po/zh-tw/unbound.po rename to applications/luci-app-unbound/po/zh_Hant/unbound.po diff --git a/applications/luci-app-upnp/po/no/upnp.po b/applications/luci-app-upnp/po/nb_NO/upnp.po similarity index 100% rename from applications/luci-app-upnp/po/no/upnp.po rename to applications/luci-app-upnp/po/nb_NO/upnp.po diff --git a/applications/luci-app-upnp/po/pt-br/upnp.po b/applications/luci-app-upnp/po/pt_BR/upnp.po similarity index 100% rename from applications/luci-app-upnp/po/pt-br/upnp.po rename to applications/luci-app-upnp/po/pt_BR/upnp.po diff --git a/applications/luci-app-upnp/po/zh-cn/upnp.po b/applications/luci-app-upnp/po/zh_Hans/upnp.po similarity index 100% rename from applications/luci-app-upnp/po/zh-cn/upnp.po rename to applications/luci-app-upnp/po/zh_Hans/upnp.po diff --git a/applications/luci-app-upnp/po/zh-tw/upnp.po b/applications/luci-app-upnp/po/zh_Hant/upnp.po similarity index 100% rename from applications/luci-app-upnp/po/zh-tw/upnp.po rename to applications/luci-app-upnp/po/zh_Hant/upnp.po diff --git a/applications/luci-app-vnstat/po/no/vnstat.po b/applications/luci-app-vnstat/po/nb_NO/vnstat.po similarity index 100% rename from applications/luci-app-vnstat/po/no/vnstat.po rename to applications/luci-app-vnstat/po/nb_NO/vnstat.po diff --git a/applications/luci-app-vnstat/po/pt-br/vnstat.po b/applications/luci-app-vnstat/po/pt_BR/vnstat.po similarity index 100% rename from applications/luci-app-vnstat/po/pt-br/vnstat.po rename to applications/luci-app-vnstat/po/pt_BR/vnstat.po diff --git a/applications/luci-app-vnstat/po/zh-cn/vnstat.po b/applications/luci-app-vnstat/po/zh_Hans/vnstat.po similarity index 100% rename from applications/luci-app-vnstat/po/zh-cn/vnstat.po rename to applications/luci-app-vnstat/po/zh_Hans/vnstat.po diff --git a/applications/luci-app-vnstat/po/zh-tw/vnstat.po b/applications/luci-app-vnstat/po/zh_Hant/vnstat.po similarity index 100% rename from applications/luci-app-vnstat/po/zh-tw/vnstat.po rename to applications/luci-app-vnstat/po/zh_Hant/vnstat.po diff --git a/applications/luci-app-vnstat2/po/no/vnstat2.po b/applications/luci-app-vnstat2/po/nb_NO/vnstat2.po similarity index 100% rename from applications/luci-app-vnstat2/po/no/vnstat2.po rename to applications/luci-app-vnstat2/po/nb_NO/vnstat2.po diff --git a/applications/luci-app-vnstat2/po/pt-br/vnstat2.po b/applications/luci-app-vnstat2/po/pt_BR/vnstat2.po similarity index 100% rename from applications/luci-app-vnstat2/po/pt-br/vnstat2.po rename to applications/luci-app-vnstat2/po/pt_BR/vnstat2.po diff --git a/applications/luci-app-vnstat2/po/zh-cn/vnstat2.po b/applications/luci-app-vnstat2/po/zh_Hans/vnstat2.po similarity index 100% rename from applications/luci-app-vnstat2/po/zh-cn/vnstat2.po rename to applications/luci-app-vnstat2/po/zh_Hans/vnstat2.po diff --git a/applications/luci-app-vnstat2/po/zh-tw/vnstat2.po b/applications/luci-app-vnstat2/po/zh_Hant/vnstat2.po similarity index 100% rename from applications/luci-app-vnstat2/po/zh-tw/vnstat2.po rename to applications/luci-app-vnstat2/po/zh_Hant/vnstat2.po diff --git a/applications/luci-app-vpn-policy-routing/po/zh-cn/vpn-policy-routing.po b/applications/luci-app-vpn-policy-routing/po/zh_Hans/zh-cn/vpn-policy-routing.po similarity index 100% rename from applications/luci-app-vpn-policy-routing/po/zh-cn/vpn-policy-routing.po rename to applications/luci-app-vpn-policy-routing/po/zh_Hans/zh-cn/vpn-policy-routing.po diff --git a/applications/luci-app-vpn-policy-routing/po/zh-tw/vpn-policy-routing.po b/applications/luci-app-vpn-policy-routing/po/zh_Hant/zh-tw/vpn-policy-routing.po similarity index 100% rename from applications/luci-app-vpn-policy-routing/po/zh-tw/vpn-policy-routing.po rename to applications/luci-app-vpn-policy-routing/po/zh_Hant/zh-tw/vpn-policy-routing.po diff --git a/applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po b/applications/luci-app-vpnbypass/po/pt_BR/vpnbypass.po similarity index 100% rename from applications/luci-app-vpnbypass/po/pt-br/vpnbypass.po rename to applications/luci-app-vpnbypass/po/pt_BR/vpnbypass.po diff --git a/applications/luci-app-vpnbypass/po/zh-cn/vpnbypass.po b/applications/luci-app-vpnbypass/po/zh_Hans/vpnbypass.po similarity index 100% rename from applications/luci-app-vpnbypass/po/zh-cn/vpnbypass.po rename to applications/luci-app-vpnbypass/po/zh_Hans/vpnbypass.po diff --git a/applications/luci-app-vpnbypass/po/zh-tw/vpnbypass.po b/applications/luci-app-vpnbypass/po/zh_Hant/vpnbypass.po similarity index 100% rename from applications/luci-app-vpnbypass/po/zh-tw/vpnbypass.po rename to applications/luci-app-vpnbypass/po/zh_Hant/vpnbypass.po diff --git a/applications/luci-app-watchcat/po/no/watchcat.po b/applications/luci-app-watchcat/po/nb_NO/watchcat.po similarity index 100% rename from applications/luci-app-watchcat/po/no/watchcat.po rename to applications/luci-app-watchcat/po/nb_NO/watchcat.po diff --git a/applications/luci-app-watchcat/po/pt-br/watchcat.po b/applications/luci-app-watchcat/po/pt_BR/watchcat.po similarity index 100% rename from applications/luci-app-watchcat/po/pt-br/watchcat.po rename to applications/luci-app-watchcat/po/pt_BR/watchcat.po diff --git a/applications/luci-app-watchcat/po/zh-cn/watchcat.po b/applications/luci-app-watchcat/po/zh_Hans/watchcat.po similarity index 100% rename from applications/luci-app-watchcat/po/zh-cn/watchcat.po rename to applications/luci-app-watchcat/po/zh_Hans/watchcat.po diff --git a/applications/luci-app-watchcat/po/zh-tw/watchcat.po b/applications/luci-app-watchcat/po/zh_Hant/watchcat.po similarity index 100% rename from applications/luci-app-watchcat/po/zh-tw/watchcat.po rename to applications/luci-app-watchcat/po/zh_Hant/watchcat.po diff --git a/applications/luci-app-wifischedule/po/pt-br/wifischedule.po b/applications/luci-app-wifischedule/po/pt_BR/wifischedule.po similarity index 100% rename from applications/luci-app-wifischedule/po/pt-br/wifischedule.po rename to applications/luci-app-wifischedule/po/pt_BR/wifischedule.po diff --git a/applications/luci-app-wifischedule/po/zh-cn/wifischedule.po b/applications/luci-app-wifischedule/po/zh_Hans/wifischedule.po similarity index 100% rename from applications/luci-app-wifischedule/po/zh-cn/wifischedule.po rename to applications/luci-app-wifischedule/po/zh_Hans/wifischedule.po diff --git a/applications/luci-app-wifischedule/po/zh-tw/wifischedule.po b/applications/luci-app-wifischedule/po/zh_Hant/wifischedule.po similarity index 100% rename from applications/luci-app-wifischedule/po/zh-tw/wifischedule.po rename to applications/luci-app-wifischedule/po/zh_Hant/wifischedule.po diff --git a/applications/luci-app-wireguard/po/pt-br/wireguard.po b/applications/luci-app-wireguard/po/pt_BR/wireguard.po similarity index 100% rename from applications/luci-app-wireguard/po/pt-br/wireguard.po rename to applications/luci-app-wireguard/po/pt_BR/wireguard.po diff --git a/applications/luci-app-wireguard/po/zh-cn/wireguard.po b/applications/luci-app-wireguard/po/zh_Hans/wireguard.po similarity index 100% rename from applications/luci-app-wireguard/po/zh-cn/wireguard.po rename to applications/luci-app-wireguard/po/zh_Hans/wireguard.po diff --git a/applications/luci-app-wireguard/po/zh-tw/wireguard.po b/applications/luci-app-wireguard/po/zh_Hant/wireguard.po similarity index 100% rename from applications/luci-app-wireguard/po/zh-tw/wireguard.po rename to applications/luci-app-wireguard/po/zh_Hant/wireguard.po diff --git a/applications/luci-app-wol/po/no/wol.po b/applications/luci-app-wol/po/nb_NO/wol.po similarity index 100% rename from applications/luci-app-wol/po/no/wol.po rename to applications/luci-app-wol/po/nb_NO/wol.po diff --git a/applications/luci-app-wol/po/pt-br/wol.po b/applications/luci-app-wol/po/pt_BR/wol.po similarity index 100% rename from applications/luci-app-wol/po/pt-br/wol.po rename to applications/luci-app-wol/po/pt_BR/wol.po diff --git a/applications/luci-app-wol/po/zh-cn/wol.po b/applications/luci-app-wol/po/zh_Hans/wol.po similarity index 100% rename from applications/luci-app-wol/po/zh-cn/wol.po rename to applications/luci-app-wol/po/zh_Hans/wol.po diff --git a/applications/luci-app-wol/po/zh-tw/wol.po b/applications/luci-app-wol/po/zh_Hant/wol.po similarity index 100% rename from applications/luci-app-wol/po/zh-tw/wol.po rename to applications/luci-app-wol/po/zh_Hant/wol.po diff --git a/applications/luci-app-yggdrasil/po/zh-cn/yggdrasil.po b/applications/luci-app-yggdrasil/po/zh_Hans/yggdrasil.po similarity index 100% rename from applications/luci-app-yggdrasil/po/zh-cn/yggdrasil.po rename to applications/luci-app-yggdrasil/po/zh_Hans/yggdrasil.po diff --git a/applications/luci-app-yggdrasil/po/zh-tw/yggdrasil.po b/applications/luci-app-yggdrasil/po/zh_Hant/yggdrasil.po similarity index 100% rename from applications/luci-app-yggdrasil/po/zh-tw/yggdrasil.po rename to applications/luci-app-yggdrasil/po/zh_Hant/yggdrasil.po diff --git a/luci.mk b/luci.mk index 5a6e5fdd2c..5333fe11a1 100644 --- a/luci.mk +++ b/luci.mk @@ -28,9 +28,9 @@ LUCI_LANG.ja=日本語 (Japanese) LUCI_LANG.ko=한국어 (Korean) LUCI_LANG.mr=Marāṭhī (Marathi) LUCI_LANG.ms=Bahasa Melayu (Malay) -LUCI_LANG.no=Norsk (Norwegian) +LUCI_LANG.nb_NO=Norsk (Norwegian) LUCI_LANG.pl=Polski (Polish) -LUCI_LANG.pt-br=Português do Brasil (Brazialian Portuguese) +LUCI_LANG.pt_BR=Português do Brasil (Brazialian Portuguese) LUCI_LANG.pt=Português (Portuguese) LUCI_LANG.ro=Română (Romanian) LUCI_LANG.ru=Русский (Russian) @@ -39,8 +39,8 @@ LUCI_LANG.sv=Svenska (Swedish) LUCI_LANG.tr=Türkçe (Turkish) LUCI_LANG.uk=Українська (Ukrainian) LUCI_LANG.vi=Tiếng Việt (Vietnamese) -LUCI_LANG.zh-cn=中文 (Chinese) -LUCI_LANG.zh-tw=臺灣華語 (Taiwanese) +LUCI_LANG.zh_Hans=中文 (Chinese) +LUCI_LANG.zh_Hant=臺灣華語 (Taiwanese) # Submenu titles LUCI_MENU.col=1. Collections @@ -50,6 +50,12 @@ LUCI_MENU.theme=4. Themes LUCI_MENU.proto=5. Protocols LUCI_MENU.lib=6. Libraries +# Language aliases +LUCI_LC_ALIAS.nb_NO=no +LUCI_LC_ALIAS.pt_BR=pt-br +LUCI_LC_ALIAS.zh_Hans=zh-cn +LUCI_LC_ALIAS.zh_Hant=zh-tw + PKG_NAME?=$(LUCI_NAME) @@ -228,27 +234,29 @@ endif LUCI_BUILD_PACKAGES := $(PKG_NAME) +# 1: LuCI language code +# 2: BCP 47 language tag define LuciTranslation define Package/luci-i18n-$(LUCI_BASENAME)-$(1) SECTION:=luci CATEGORY:=LuCI TITLE:=$(PKG_NAME) - $(1) translation HIDDEN:=1 - DEFAULT:=LUCI_LANG_$(1)||(ALL&&m) + DEFAULT:=LUCI_LANG_$(2)||(ALL&&m) DEPENDS:=$(PKG_NAME) PKGARCH:=all endef define Package/luci-i18n-$(LUCI_BASENAME)-$(1)/description - Translation for $(PKG_NAME) - $(LUCI_LANG.$(1)) + Translation for $(PKG_NAME) - $(LUCI_LANG.$(2)) endef define Package/luci-i18n-$(LUCI_BASENAME)-$(1)/install $$(INSTALL_DIR) $$(1)/etc/uci-defaults - echo "uci set luci.languages.$(subst -,_,$(1))='$(LUCI_LANG.$(1))'; uci commit luci" \ + echo "uci set luci.languages.$(subst -,_,$(1))='$(LUCI_LANG.$(2))'; uci commit luci" \ > $$(1)/etc/uci-defaults/luci-i18n-$(LUCI_BASENAME)-$(1) $$(INSTALL_DIR) $$(1)$(LUCI_LIBRARYDIR)/i18n - $(foreach po,$(wildcard ${CURDIR}/po/$(1)/*.po), \ + $(foreach po,$(wildcard ${CURDIR}/po/$(2)/*.po), \ po2lmo $(po) \ $$(1)$(LUCI_LIBRARYDIR)/i18n/$(basename $(notdir $(po))).$(1).lmo;) endef @@ -264,5 +272,5 @@ define LuciTranslation endef -$(foreach lang,$(LUCI_LANGUAGES),$(eval $(call LuciTranslation,$(lang)))) +$(foreach lang,$(LUCI_LANGUAGES),$(eval $(call LuciTranslation,$(firstword $(LUCI_LC_ALIAS.$(lang)) $(lang)),$(lang)))) $(foreach pkg,$(LUCI_BUILD_PACKAGES),$(eval $(call BuildPackage,$(pkg)))) diff --git a/modules/luci-base/po/no/base.po b/modules/luci-base/po/nb_NO/base.po similarity index 100% rename from modules/luci-base/po/no/base.po rename to modules/luci-base/po/nb_NO/base.po diff --git a/modules/luci-base/po/pt-br/base.po b/modules/luci-base/po/pt_BR/base.po similarity index 100% rename from modules/luci-base/po/pt-br/base.po rename to modules/luci-base/po/pt_BR/base.po diff --git a/modules/luci-base/po/zh-cn/base.po b/modules/luci-base/po/zh_Hans/base.po similarity index 100% rename from modules/luci-base/po/zh-cn/base.po rename to modules/luci-base/po/zh_Hans/base.po diff --git a/modules/luci-base/po/zh-tw/base.po b/modules/luci-base/po/zh_Hant/base.po similarity index 100% rename from modules/luci-base/po/zh-tw/base.po rename to modules/luci-base/po/zh_Hant/base.po -- 2.30.2