Commit Graph

38 Commits

Author SHA1 Message Date
Jean-Marc Lasgouttes
81d863fd41 Fix bug #8537: LyX creates the environment variable LC_ALL
The current code is not able to unset an environment variable, only to set it to an empty value. This patch refactors a bit the Message class and uses a new EnvChanger helper class that allows to change temporarily an environment variable and that is able to unset variables if needed.

The patch also adds new functions hasEnv and unsetEnv in environment.cpp.

Open issues:
 * there may be systems where unsetenv is not available and putenv("name=") does not do the right thing;
 * unsetenv may lead to leaks on some platforms.
 * when using unsetenv, we may need to remove strings from the internal map that setEnv uses.
2013-02-12 12:14:06 +01:00
Lars Gullik Bjønnes
54d1cb1880 support/Messages.cpp: add space to not be taken as user defined literal
In C++11 you are not allowed to have non-literal specifiers right
after a string literal.
2012-10-24 23:46:42 +02:00
Stephan Witt
e0787e839f C++ style to avoid compiler warning for non-NLS implementation of Messages::available 2012-09-25 16:20:43 +02:00
Stephan Witt
5a9aa21350 correct Messages class implementation for non-NLS 2012-09-23 16:06:56 +02:00
Jean-Marc Lasgouttes
7a7b9abf1b Tracking correctly available translations (take 2)
The previous scheme of loading all possible translations and checking
whether the work is a bit too much "brute force" and causes problems
on Mac OS X (documents loaded with the wrong language).

Now there is an helper static method in Messages class that checks
whether a readable .mo file exist for the language. There should be an
API in gettext for doing that, but alas it is not possible.

As a consequence the method Language::translated() has been removed,
along with its cache.
2012-09-08 16:59:19 +02:00
Jean-Marc Lasgouttes
2e1c618824 Typo introduced in commit 16fd47ad. 2012-07-16 00:30:28 +02:00
Jean-Marc Lasgouttes
16fd47ad8f Fix bug #7741: incorrect locale when starting R from LyX?
The goal here is to get rid of the old code that modified variables
LANGUAGE and LC_ALL, therefore creating the problems mentionned
in the ticket.

In the new system, there is no explicit "GUI" message handler, that
needs to be reset at each language change. Instead, getGuiMessages
calls getMessages with the correct parameter. This allows to simplify
greatly the code and to remove a lot of old cruft.
2012-07-15 22:22:10 +02:00
Georg Baum
a2e8cb758b Translations for listings insets
The listings inset and include inset of type listings use two english terms
that are not localized yet: "Listing" for the caption and "Listings" for the
list of listings (not supported natively by LyX yet). The existing layout
translation mechanism has been extended to translate these terms as well:

1) Support [[stuff]] context in lib/layouttranslations
2) Support BabelPreamble and LangPreamble in InsetLayout
3) Use a InsetLayout for InsetInclude of type listings
4) Define BabelPreamble and LangPreamble in the layouts for InsetInclude
   and InsetListings
2012-04-10 20:21:01 +02:00
Kornel Benko
45b61c6ecf 1.) Corrected internal compilation for Libintl
2.) Changed cmake-files accordingly
Patch from Jean-Marc Lasgouttes


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38606 a592a061-630c-0410-9148-cb99ea01b6c8
2011-05-06 19:24:54 +00:00
Jürgen Spitzmüller
8d4c3ae854 * Messages.cpp (get):
- set again bind_textdomain_codeset before calling gettext.
	  This works around the infamous bug #7371

Patch from Peter Kümmel.

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@38325 a592a061-630c-0410-9148-cb99ea01b6c8
2011-04-10 16:53:10 +00:00
Stephan Witt
fefb5e7f71 without NLS dummy available() should return false
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36720 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-04 17:42:38 +00:00
Stephan Witt
58f1126355 attempt to make LyX linkable without NLS, assuming dummy available() should return true without NLS
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36711 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-04 08:28:10 +00:00
Georg Baum
53a72a4526 fix bug #6584
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@36687 a592a061-630c-0410-9148-cb99ea01b6c8
2010-12-03 17:48:06 +00:00
Stephan Witt
1d499cbf73 avoid compiler warning
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@35288 a592a061-630c-0410-9148-cb99ea01b6c8
2010-09-06 06:14:25 +00:00
Pavel Sanda
62ca7f3ae5 Proper camel case for FileName.absFilename
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@34234 a592a061-630c-0410-9148-cb99ea01b6c8
2010-04-21 01:19:09 +00:00
Richard Heck
c6721161b0 If the translation fails for some reason, just return what we were
given. This is already how it is done in client/.


git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@33935 a592a061-630c-0410-9148-cb99ea01b6c8
2010-03-29 21:33:26 +00:00
Jean-Marc Lasgouttes
9c0b6cf700 really reset the LANGUAGE variable to its old value, instead of some other guessed value
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@28737 a592a061-630c-0410-9148-cb99ea01b6c8
2009-03-09 13:49:53 +00:00
André Pönitz
f1cba8ff64 more latin1..utf8 schanges. all of src/* should be utf8 now
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@27425 a592a061-630c-0410-9148-cb99ea01b6c8
2008-11-14 15:58:50 +00:00
André Pönitz
7aa28f3efe char * for string literals is deprecated...
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26526 a592a061-630c-0410-9148-cb99ea01b6c8
2008-09-24 19:51:46 +00:00
Abdelrazak Younes
309ce3bf0c Fix linking problem when nls is disabled. Spotted by Dov and fix by Kornel.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@26036 a592a061-630c-0410-9148-cb99ea01b6c8
2008-08-03 06:34:52 +00:00
Abdelrazak Younes
8085efd83a Some locale related cleanup. JMarc, please when you come back, review this. It is working fine in all my testings though.
* GuiApplication: delay locale loading until setGuiLanguage() is called.

* Messages: memorize default locale for current environment.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25930 a592a061-630c-0410-9148-cb99ea01b6c8
2008-07-28 11:26:46 +00:00
Abdelrazak Younes
1d109d8c6f microptimisation.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25389 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-25 16:18:27 +00:00
Abdelrazak Younes
1c83bf9420 GUI language via RC: some bug corrections.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25386 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-25 11:10:10 +00:00
Abdelrazak Younes
39393bf788 Introduce Debug::LOCALE for locale debugging.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25385 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-25 10:53:34 +00:00
Abdelrazak Younes
928c1daa55 Messages::get(): Add two error messages just in case.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@25378 a592a061-630c-0410-9148-cb99ea01b6c8
2008-06-24 12:45:57 +00:00
Jean-Marc Lasgouttes
9b4a26a252 rename assert.h to lassert.h
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24559 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-30 08:26:40 +00:00
Peter Kümmel
2988537f7f there is no trunk/src/intl folder
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24297 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-16 16:51:29 +00:00
André Pönitz
7f461f4392 infrastructure for 'graceful asserts'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@24216 a592a061-630c-0410-9148-cb99ea01b6c8
2008-04-10 21:49:34 +00:00
André Pönitz
42fb18c6f8 look up LANGUAGE and LC_ALL only once.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@23854 a592a061-630c-0410-9148-cb99ea01b6c8
2008-03-20 19:35:53 +00:00
Uwe Stöhr
ecde9d6a0f revert r22574 to be able to compile
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22578 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-14 23:45:04 +00:00
Abdelrazak Younes
11f36d2d72 header cleanup
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22574 a592a061-630c-0410-9148-cb99ea01b6c8
2008-01-14 23:19:55 +00:00
Abdelrazak Younes
9abb7db468 getting rid of superfluous std:: statements.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22104 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 19:28:07 +00:00
Abdelrazak Younes
b89cc942eb 'using namespace lyx::support' instead of 'using support::xxx'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22103 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 18:57:56 +00:00
Abdelrazak Younes
9383f4c3c6 'using namespace std' instead of 'using std::xxx'
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@22097 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-12 10:16:00 +00:00
Bo Peng
aaa239be61 include intl/libintl.h that is relative to $TOP_SRCDIR/src
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21943 a592a061-630c-0410-9148-cb99ea01b6c8
2007-12-04 03:55:02 +00:00
André Pönitz
2506e0d643 assimilate BOOST_CURRENT_FUNCTION
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21867 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 21:10:35 +00:00
André Pönitz
9160d824d8 cosmetics
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21853 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 07:24:55 +00:00
André Pönitz
9d0ea8aeff Move debug.{cpp,h}, Messages.{cpp,h} and gettext.{cpp,h} to support/.
Now support/* should have no dependencies on src/* anymore.



git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@21851 a592a061-630c-0410-9148-cb99ea01b6c8
2007-11-29 07:04:28 +00:00