Having one language file will not increase performance.
It is even the opposite.
We introduced several files because, few year ago, we have only one file. And 60% of loading a page was spent by loading language files. By using several language files, performance of dolibarr was better by a factor x2 because we only load IO an memory of what we need.
Dealing with several files is not so hard. You must only know this rule:
- The main.lang file is always loaded and contains very common strings
- For installer process, we must load language file "install.lang"
- For all admin pages (pages used by admin user only), we must load language files "admin.lang"
- All other files depends on module the feature you are working on need. If you work on something depening on thirdparty and invoice, you must load page for thirdparty (called companies.lang) and invoice (called bills.lang). Loading more is not a problem, but it decrease performance.
A tool was built to fight/delete duplicate keys. Tool is into the dev directory. I didn't use it yet but it is planned for 3.9.