[Löst] Behöver köra ett program med en_US.ISO8859-1

Här diskuterar vi skal, kommandon och klassiska linuxverktyg.
Användarvisningsbild
PureW
Inlägg: 153
Blev medlem: 22 maj 2007, 21:02
OS: Ubuntu
Utgåva: 16.04 Xenial Xerus LTS
Ort: Göteborg

[Löst] Behöver köra ett program med en_US.ISO8859-1

Inlägg av PureW »

Tjena

Har ett problem med Matlab. Matlab öppnar textfiler i systemets "locale" vilket i detta fallet blir utf-8.

Men jag jobbar via svn med system som har en_US.ISO8859-1 som "locale". Detta ställer till problem.
Jag skulle vilja kunna öppna matlab och få matlab att tro att det är en_US.ISO8859-1 som "gäller",
så att texten tolkas på rätt sätt. (Det går ej att välja teckenkodning i matlab).
Senast redigerad av 1 PureW, redigerad totalt 23 gånger.
Lars
Inlägg: 6191
Blev medlem: 14 jan 2007, 19:31
OS: Ubuntu
Utgåva: 22.10 Kinetic Kudu
Ort: Stockholm

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av Lars »

Kod: Markera allt

LANG=en_US.ISO8859-1 matlab
eller

Kod: Markera allt

export LANG=en_US.ISO8859-1
matlab
Användarvisningsbild
PureW
Inlägg: 153
Blev medlem: 22 maj 2007, 21:02
OS: Ubuntu
Utgåva: 16.04 Xenial Xerus LTS
Ort: Göteborg

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av PureW »

Från Matlabs support har jag fått tipset att köra

Kod: Markera allt

setenv LANG en_US.ISO8859-1
eller motsvarande.

Din lösning, Lars, måste väl anses som motsvarande? Det löser ej problemet
och isåfall får jag kanske ta ett snack med dem igen.
Användarvisningsbild
Konservburk
Inlägg: 5919
Blev medlem: 07 apr 2007, 22:28

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av Konservburk »

Har du försökt sätta LC_CTYPE istället?
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av andol »

Hurtillvida man sätter miljövariabler med export eller setenv beror på vilket skal man använder sig utav. För bash (default i Ubuntu), bland annat, så är det export som gäller. setenv å andra sidan används i bland annat tcsh.

Kan även vara så att du inte har aktuell locale installerad. Vilken information ger följande kommando dig?

Kod: Markera allt

locale -a
Användarvisningsbild
PureW
Inlägg: 153
Blev medlem: 22 maj 2007, 21:02
OS: Ubuntu
Utgåva: 16.04 Xenial Xerus LTS
Ort: Göteborg

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av PureW »

Konservburk skrev:Har du försökt sätta LC_CTYPE istället?
Japp, inget resultat där heller.
andol skrev:Hurtillvida man sätter miljövariabler med export eller setenv beror på vilket skal man använder sig utav. För bash (default i Ubuntu), bland annat, så är det export som gäller. setenv å andra sidan används i bland annat tcsh.

Kan även vara så att du inte har aktuell locale installerad. Vilken information ger följande kommando dig?

Kod: Markera allt

locale -a
Verkar ej som att ISO XXX är installerat...

Kod: Markera allt

locale -a
C
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_NG
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US.utf8
en_ZA.utf8
en_ZW.utf8
POSIX
sv_FI.utf8
sv_SE.utf8
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av andol »

För att generera localen ifråga så vill du först skapa filen /var/lib/locales/supported.d/en_US-latin1 med följande innehåll. (Egentligen så är filnamnet valfritt, bara det ligger i den katalogen.)

Kod: Markera allt

en_US ISO-8859-1
Kör sen detta kommando

Kod: Markera allt

sudo locale-gen
Användarvisningsbild
PureW
Inlägg: 153
Blev medlem: 22 maj 2007, 21:02
OS: Ubuntu
Utgåva: 16.04 Xenial Xerus LTS
Ort: Göteborg

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av PureW »

Nu går det framåt. Jag generarde en sådan locale enligt ovan, och nu outputtar Matlab följande när jag startar:
MATLAB:I18n:InconsistentUiLanguage - The user UI language setting, en_US.ISO8859-1, is different from the user locale setting, sv_SE.UTF-8.
Matlab startas med
LANG=en_US.ISO8859-1 matlab

Dock visar locale -a inte att latin1 är installerat tycker jag:

Kod: Markera allt

locale -a
C
en_AU.utf8
en_BW.utf8
en_CA.utf8
en_DK.utf8
en_GB.utf8
en_HK.utf8
en_IE.utf8
en_IN
en_NG
en_NZ.utf8
en_PH.utf8
en_SG.utf8
en_US
en_US.utf8
en_ZA.utf8
en_ZW.utf8
POSIX
sv_FI.utf8
sv_SE.utf8
Senast redigerad av 1 PureW, redigerad totalt 20 gånger.
andol
Inlägg: 3093
Blev medlem: 31 dec 2007, 00:19
OS: Ubuntu
Utgåva: 23.10 Mantic Minotaur

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av andol »

Vad händer om du sätter "rubbet" med LC_ALL?
Användarvisningsbild
PureW
Inlägg: 153
Blev medlem: 22 maj 2007, 21:02
OS: Ubuntu
Utgåva: 16.04 Xenial Xerus LTS
Ort: Göteborg

Re: Behöver köra ett program med en_US.ISO8859-1 som locale

Inlägg av PureW »

andol skrev:Vad händer om du sätter "rubbet" med LC_ALL?
JA, det funkar! Hurra!!!!!!! *Dansar runt i lägenheten*

Tack för all hjälp. Detta ställde till ganska tråkiga problem för kandidatarbetets kommentarer :)
Skriv svar

Återgå till "Terminalforum"