Both issues were raised in review.
webmin/upgrade_desc had <a href="webmin.com">, which a browser resolves
against the Webmin server rather than the public site. lang/en has
<a href=https://webmin.com>; the Turkish now matches. This was the only
relative href in any Turkish file.
proc uses __norefs=1, so the four $stime values were displayed
literally instead of expanding. lang/en spells the word out in all four
places rather than referencing stime, so the Turkish now does the same.
A scan for the same class of defect across every module found one more
case that had not been reported: useradmin/uedit_dothers was
$udel_dothers, and useradmin also sets __norefs=1. lang/en spells that
one out too, so it is fixed the same way.
The scan also found heartbeat/conf_auto_on and conf_auto_off, which are
${conf_enabled} and ${conf_disabled} in lang/en itself - so English is
affected as well, and conf_auto_ references ${default}, a key that does
not exist in the file. That is an upstream bug rather than a
translation one, so it is left alone here and reported on the PR.
A consistency check of every lang/tr against its lang/en turned up 58
lines that were wrong independently of the missing translations. All of
them are fixed here:
Missing or wrong $N placeholders (the value silently disappears from
the message at runtime, or the wrong value is shown):
acl/cert_eca, acl/hide_desc, adsl-client/index_stopdesc,
apache/reconfig_ever, apache/log_files, apache/log_files_l,
bind8/log_manual, dhcpd/listl_lfnotcont, fdisk/mkfs_desc1,
fdisk/fsck_desc1, fdisk/tunefs_desc, hpuxexports/save_ehost,
inittab/log_rename, mysql/index_ever, mysql/index_version,
mysql/log_perm_create, mysql/log_perm_delete, mysql/log_perm_modify,
sendmail/index_epath, sendmail/index_startmsg, sendmail/asave_ematch,
sendmail/mailers_efile, sendmail/generics_efile,
webalizer/index_ewebalizer, webalizer/index_econf
cron/env_ename carried a $1 that lang/en does not have, and its text
described a different error than the key means.
adsl-client/index_stopdesc and inittab/log_rename each repeated $1
where $2 was meant, so both values printed the same string.
HTML markup that did not match lang/en:
bind8/mass_desc, dhcpd/index_dhcpdnotfound, firewall/index_existing,
inetd/index_applymsg, mysql/index_nomod, mysql/index_nomods,
samba/esync_msg, samba/viewu_list, sendmail/trusts_desc,
sendmail/mailers_desc2, sendmail/domains_desc, squid/clear_msgclear,
status/proc_thresh
Several of these were also truncated mid-sentence, dropping a whole
sentence of the original text; those are now translated in full.
Encoding:
mailboxes/confirm_warnf was stored as double-encoded UTF-8 and
displayed as mojibake. It also used $1 twice instead of $1 and $2.
Trailing whitespace:
proc/kill_term, kill_hup, kill_stop, kill_cont
Untranslated strings:
fdisk/select_* device descriptions, mount/irix_mode0, irix_mode0cd,
shorewall/tunnels_ipsec:noah
bind8/mass_desc previously translated the literal configuration
keywords master, slave, stub and forward into Turkish; they are now
left in English, since they are values the user has to type.
Finishes the Turkish translation of system-status, logviewer, smart-status,
updown, htpasswd-file, bsdexports, dfsadmin, openslp, mailcap,
backup-config, at, proc, sgiexports, samba, lpadmin, cluster-cron,
tcpwrappers, hpuxexports, exports, cluster-shell, webmincron, time,
change-user, syslog, shell, inetd, htaccess-htpasswd, krb5, xterm, idmapd,
cluster-passwd, tunnel, inittab, passwd, man, xinetd, webalizer,
adsl-client and help, and removes their tr.auto files.
htaccess-htpasswd needed special handling: its existing lang/tr was a
verbatim copy of lang/en, so reusing it would have carried 75 English
strings into the finished file. The whole module was translated instead.
Six other strings that were still in English in acl, firewall, webalizer
and xinetd were translated at the same time.
Product and protocol names stay in English, including SMART, WebNFS,
Kerberos, LIPKEY, SPKM, OpenSLP, Winbind, TCP Wrappers, Xinetd, journalctl,
Boot Loader Specification, Trusted Platform Module and Alpine Package
Keeper.