2012-12-07 4 views
5

Ich benutze Scinote 5.4.0 mit OSX 10.7.4. Ich kann Skriptdateien nicht mit dem Befehl exec("path") von der Konsole ausführen. Wenn ich dies tue, wird nur die erste Zeile der Skriptdatei gelesen.Scilab Problem mit Exec-Befehl

Beispiel:

-->exec("plot1.sce") 
-->x=[0:.1:10]'; //(the first line of my code) 

Wenn ich aber aus dem Editor Scinote "mit Echo ausführen", wird das Skript nur gut laufen.

Weiß jemand, was vor sich geht? (Die Skriptdateien, die ich ausführen möchte, befinden sich in meinem aktuellen Arbeitsverzeichnis).

Danke!

Update: Ich habe gerade Scilab auf einer identischen Maschine installiert und das gleiche passiert.

Update: Pro Scilabs Bugtracker scheint von Scinote verursacht zu werden, der standardmäßig auf einem Mac läuft. Ich weiß nicht wirklich was das bedeutet oder wie man es repariert, aber das Abenteuer geht weiter!

Update: Ich fand die Lösung !: http://comments.gmane.org/gmane.comp.mathematics.scilab.user/6184

In den Einstellungen, änderte ich den EOL auf Unix, und die Standard-Dateicodierung ISO-8859-1. Ich habe neu gestartet und exec funktioniert jetzt!

+0

Ich habe gerade eine halbe Stunde damit verbracht, nach dem Problem zu suchen, bevor ich es selbst herausgefunden habe. Danke, dass du es hier geoffenbart hast –

+0

Bitte schreibe eine Antwort, damit die Frage nicht ohne eine bleibt. –

Antwort

0

Der Link ist nicht einfach so hier ist die Antwort (geklebt)

Das Problem ist eigentlich scinote ist, nicht scilab ist zu folgen. Ich habe keine Lion Maschine, um zu überprüfen, ob ich richtig bin, aber es scheint, Scinote Dateicodierung ist nicht mehr kompatibel in ML. Ich entdeckte, dass wenn ich scinote generierte Dateien mit einem anderen Texteditor (vi) die neuen Zeilen nicht richtig für meine Maschine codiert geöffnet wurden. Die andere Give-away war, dass Ausführen von Skripts vor dem Upgrade geschrieben funktionierte gut.

Gehen Sie zu den Voreinstellungen und in der Registerkarte Scinotes, Standard-Datei Kodierung zu ISO-8859-1 wechseln. Ich habe auch das End-of-Line zu Unix gewechselt.