Erich,

In looking at the files listed on the web site you reference, the preferences 
file for OSX (http://cran.r-project.org/contrib/extra/lyx/preferences) would 
seem to set up the execution associations for various calls to R while within 
LyX.

It is not clear to me why the locale is not being picked up, but there may be 
some interaction with LyX and the shell environment when R is executed by the 
commands listed in the preferences file, presuming that the converters section 
defines this exec mechanism. LyX is built on the QT library (primarily used 
under KDE on Linux), ported to OSX and there may be other issues at play.

Thus, if my assumptions are correct, you might want to modify each of the "R 
CMD ..." sequences to:

  "export LANG="de_CH.UTF-8"; R CMD ..."

and see if that helps.

BTW, on some of the LyX OSX related pages, there are references to the use of 
~/.MacOSX/environment.plist to set certain environment variables. The use of 
this approach is known to conflict with certain applications and I would 
recommend avoiding the use of this file, especially on Snow Leopard if you have 
upgraded.

HTH,

Marc Schwartz

On Mar 22, 2010, at 5:06 PM, Erich Studerus wrote:

> I typed "export" into the mac terminal to see the setup of my system 
> variables. Under language I get LANG="de_CH.UTF-8". So it seems my system 
> variable for language is set up correctly.
> 
> It doesn't make sense that Lyx would force C locale, although I don't know 
> where I can check this. I'm using the regular Lyx/Sweave setup described here:
> http://wiki.lyx.org/LyX/LyxWithRThroughSweave
> 
> I dont have this locale problem on my Windows 7 computer. I don't understand, 
> why R can dectect the correct locale when started from the terminal or as 
> R.app but not from the shell. How do these running modes differently look up 
> environmental variables?
> 
> Regards,
> Erich
> 
> On Mon, 22 Mar 2010 17:09:21 -0400
> Simon Urbanek <simon.urba...@r-project.org> wrote:
>> On Mar 22, 2010, at 16:32 , Erich Studerus wrote:
>>> Hello
>>> 
>>> I'm using Lyx with Sweave on Mac OS X 10.5.8 with R version 2.10.1.  When I 
>>> compile Lyx documents, R is called from shell to process R  code chunks 
>>> contained in the Lyx document. Unfortunately, R does not  automatically 
>>> detect the correct locale when called from shell. I  figured out that R 
>>> uses the C locale in shell mode by embedding the  following code in Lyx
>>> 
>>> <<echo=F>>=
>>> sys.getlocale()
>>> @
>>> 
>>> When I start R from the terminal and also in the R.app I get the  correct 
>>> locale:
>>> de_CH.UTF-8/de_CH.UTF-8/C/C/de_CH.UTF-8/de_UTF-8
>>> 
>>> How I can I get the correct locale when calling R from shell?
>>> 
>> Setup your environment accordingly? This has nothing to do with R but your 
>> environment (LANG, LANGUAGE, LC_xxx) - which is what determines  the locale. 
>> The default locale settings are system-dependent, so  either your system 
>> default locale is C or Lyx forces C locale for the  shell it starts. For 
>> details on locale specifications see, e.g.:
>> http://www.gnu.org/software/hello/manual/gettext/Locale-Environment-Variables.html#Locale-Environment-Variables
>> http://opengroup.org/onlinepubs/007908799/xbd/envvar.html
>> Cheers,
>> Simon

_______________________________________________
R-SIG-Mac mailing list
R-SIG-Mac@stat.math.ethz.ch
https://stat.ethz.ch/mailman/listinfo/r-sig-mac

Reply via email to