The path to the lyx binary is either <build_dir>/bin (CMake) or
<build_dir>/src (autotools). This means the po directory can be found one
directory up.
Since 00387b2a38 it is possible to construct a dummy Messages object
which does not translate at all. With the old gettext implementation, a
Messages object without a defined language would have used a language from
an environment variable. Therefore, the duplicate definition of _() is no
longer needed. This gettext removal was really a good idea!
This is done by handling explicitly a dummy Message object, where no parsing of mo file is attempted. This avoids in turn that the lyxerr object is used during initialization of a global dummy Message object.
- added bindings for 'math-delim' as a workaround
for US keyboards with Windows
- added bindings for 'word-left' and 'word-right'
- added two more sets of bindings for 'math-subscript'
and 'math-superscript'
- corrected some greek letter bindings
- insert is bound to 'math-mode'
- changed 'screen-recenter' binding to C-j
- added various other bindings
Thanks to Michael Stepner for many of the fixes and testing.
With gettext, we have been forced to install .mo files at the right place in order to read them. Now that we have our code, the situation changes.
* Add new method Package::messages_file(code), when returns the right path, depending on whether we are running in place.
* In Messages class use that intead of the existing one.
Get the default language by a mix of QLocale and LyXRC::gui_language
Known limitations:
* encoding is supposed to be UTF-8 (the charset parameter is checked);
* context is not handled (implemented differently in LyX);
* plural forms not implemented (not used for now in LyX);.
* tThe byte endianness of the machine on which the .mo file have been
built is expected to be the same as the one of the machine where this
code is run.