iprecious
16-02-2011, 18:33
Moin auf's Forum,
ich spiele gerade mit dem Einpflegen von Octave/MatLab-Code in ein TeX-Doc herum.
Ich verwende das listings-Paket und binde die *.m-Files direkt ein mit Hilfe von
\lstinputlisting{...}
Nun möchte ich im TeX-Doc die Kommentare ausgeblendet haben. Nicht nur weiß, sondern komplett weg.
Bisher habe ich SEHR intensiv das listings-Paket betrachtet und glaube, es liegt ein Bug vor, ich bin GANZ kurz davor, einen Fehler meinerseits auszuschließen :-)
Folgendes habe ich probiert:
...
\lstset{
...
morecomment=[is]{\%}{\%}
}
...
Wenn ich nun in den *.m-files die Comments mit % beginnen und enden lasse, dann blendet er diese aus, vollständige Kommentarzeilen werden aber nicht gelöscht, sondern weiß gelassen. Das sieht gelinde gesagt, ziemlich unbrauchbar aus ... :)
Also habe ich versucht, statt die strings die lines auf invisible zu setzen:
...
\lstset{
...
morecomment=[il]\%
}
...
Wunderbar, nur das Problem ist, dass ALLES an Code ausgeblendet wird, was nach einer Kommentarzeile kommt. Wenn also folgendes in der *.m-File steht:
clc;
clear all;
% Einleitung:
disp('Sinnloser Beispielcode');
dann wird einfach alles nach dem clear all; ausgeblendet. Das kann es auch nicht sein ... :)
Aber gut, ich habe getestet und einfach mal versucht, komplette Kommentarzeilen wegzulassen, wobei ich diese eigentlich UNBEDINGT möchte. Aber gut, man versucht ja.
Nun gibt's bei MatLab/Octave neben der Kommentarverwendung des %-Zeichens auch noch die, dass die Darstellung von Nummern dadurch definiert wird, z.B. in folgendem Befehl:
fprintf('Die Größe beträgt %5.2f', G);
Natürlich blendet das
morecomment=[il]\%-Kommando dann nach dem Prozentzeichen alles aus, bringt mir auch nix.
So, langer Text, ich habe versucht, es so klar wie es geht, zu beschrieben. Ich hab gestern abend etwas über 2,5h in den Tiefen des Netzes gesucht, dazu laaaange die Dokumentation des listings-Paket gelesen, eine Lösung habe ich nicht gefunden.
Falls jemand eine Idee hat: DANKE!!!!!!!
Falls niemand eine Idee hat, schreib ich wohl mal dem Entwickler.
Viele Grüße
joh
ich spiele gerade mit dem Einpflegen von Octave/MatLab-Code in ein TeX-Doc herum.
Ich verwende das listings-Paket und binde die *.m-Files direkt ein mit Hilfe von
\lstinputlisting{...}
Nun möchte ich im TeX-Doc die Kommentare ausgeblendet haben. Nicht nur weiß, sondern komplett weg.
Bisher habe ich SEHR intensiv das listings-Paket betrachtet und glaube, es liegt ein Bug vor, ich bin GANZ kurz davor, einen Fehler meinerseits auszuschließen :-)
Folgendes habe ich probiert:
...
\lstset{
...
morecomment=[is]{\%}{\%}
}
...
Wenn ich nun in den *.m-files die Comments mit % beginnen und enden lasse, dann blendet er diese aus, vollständige Kommentarzeilen werden aber nicht gelöscht, sondern weiß gelassen. Das sieht gelinde gesagt, ziemlich unbrauchbar aus ... :)
Also habe ich versucht, statt die strings die lines auf invisible zu setzen:
...
\lstset{
...
morecomment=[il]\%
}
...
Wunderbar, nur das Problem ist, dass ALLES an Code ausgeblendet wird, was nach einer Kommentarzeile kommt. Wenn also folgendes in der *.m-File steht:
clc;
clear all;
% Einleitung:
disp('Sinnloser Beispielcode');
dann wird einfach alles nach dem clear all; ausgeblendet. Das kann es auch nicht sein ... :)
Aber gut, ich habe getestet und einfach mal versucht, komplette Kommentarzeilen wegzulassen, wobei ich diese eigentlich UNBEDINGT möchte. Aber gut, man versucht ja.
Nun gibt's bei MatLab/Octave neben der Kommentarverwendung des %-Zeichens auch noch die, dass die Darstellung von Nummern dadurch definiert wird, z.B. in folgendem Befehl:
fprintf('Die Größe beträgt %5.2f', G);
Natürlich blendet das
morecomment=[il]\%-Kommando dann nach dem Prozentzeichen alles aus, bringt mir auch nix.
So, langer Text, ich habe versucht, es so klar wie es geht, zu beschrieben. Ich hab gestern abend etwas über 2,5h in den Tiefen des Netzes gesucht, dazu laaaange die Dokumentation des listings-Paket gelesen, eine Lösung habe ich nicht gefunden.
Falls jemand eine Idee hat: DANKE!!!!!!!
Falls niemand eine Idee hat, schreib ich wohl mal dem Entwickler.
Viele Grüße
joh