Dokumentation mit MS Word: Syntax-Highlighting

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
JensP-Anfaenger
User
Beiträge: 23
Registriert: Montag 25. April 2005, 08:31
Wohnort: Schleswig-Holstein

Hallo,

ich habe mein Programm jetzt fertig geschrieben und muss, da es sich dabei um einen Teil meiner Diplomarbeit handelt, das ganze nun schön dokumentieren.
Als Windows-User habe ich mich dabei für MS Word entschieden und wollte nun wissen, ob es die Möglichkeit gibt, SyntaxHighlighting anzuzeigen?
Kennt sich jemand aus?
Ich habe schon, um die Zeilennummerierung zu übernehmen, den Code in Excel eingefügt, die Zeilen mit einer fortlaufenden Nummer 'VERKETTET' und dann alles als Text in Word eingefügt!

Vielen Dank für eure Hilfe!

Gruß!
Jens
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Du könntest vielleicht eine HTML-Datei des Codes mit Highlighting erzeugen lassen und die in Word öffnen.

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

In Word müßtest Du das zu Fuß machen, oder? HTML erlaubt Dir über das Einbinden von Style Sheets eine Abkürzung. Aber wenn Du LaTex könntest ... ;-)

Nein, aber ernsthaft: HTML ist eine gute Idee, ansonsten könntest Du versuchen Deinen Editor zu einem Export in rtf oder so zu überzeugen. Wenn Du Glück hast, kannst Du sogar Schnipsel direkt mit Copy&Paste in Word kopieren. Also lohnt sich vielleicht sogar der Umstieg auf einen anderen Editor. Hat jemand aus dem Windows-Lager eine gute Empfehlung?

Gruß,
Christian
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

SciTE kann exportieren nach HTML, RTF, PDF, LaTex und XML...

Ich denke RTF und PDF wäre eine gute Auswahl, oder halt HTML...

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

Ei, nu, denn ist das Problem wohl gelöst. Na, vielleicht gibt es noch andere Alternativen, aber davon mal ab ist ja erst mal wichtig, daß es irgendwie geht. Ob PDF allerdings ein so tolles Format ist, um es in Word zu bearbeiten oder auch nur einzubetten, wage ich zu bezweifeln. Mir scheint RTF ist in dieser Liste wohl das Format der Wahl.

Gruß,
Christian
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!
CM hat geschrieben: Aber wenn Du LaTex könntest ...
Dann wär alles viel einfacher. Ich verwende LaTeX für nahezu alle meiner schriftlichen Arbeiten. Eine Diplomarbeit in MS Word zu schreiben muss doch früher oder später zu Krämpfen führen, oder? :) Naja, jeder wie er mag.

Gruß, mawe
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

mawe hat geschrieben:Eine Diplomarbeit in MS Word zu schreiben muss doch früher oder später zu Krämpfen führen, oder? :)
Das würde ich allerdings auch sagen!!! In der c't standen hin und wieder wahre Horror-Geschichten drin.
Ich hab meine mit OpenOffice geschrieben... Hat alles wunderbar geklappt...

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
JensP-Anfaenger
User
Beiträge: 23
Registriert: Montag 25. April 2005, 08:31
Wohnort: Schleswig-Holstein

Na, ich werde mir mal SciTE anschauen....

Danke für die Tips, ich werde meine Erfahrungen dann mal wieder posten!

Gruß!

JensP
(an Piddon: leider immer noch: -Anfaenger)
CM
User
Beiträge: 2464
Registriert: Sonntag 29. August 2004, 19:47
Kontaktdaten:

jens hat geschrieben:
mawe hat geschrieben:Eine Diplomarbeit in MS Word zu schreiben muss doch früher oder später zu Krämpfen führen, oder? :)
Das würde ich allerdings auch sagen!!! In der c't standen hin und wieder wahre Horror-Geschichten drin.
Ich hab meine mit OpenOffice geschrieben... Hat alles wunderbar geklappt...
Nun ja, ich habe meine in Word geschrieben. Motivation: Hatte am Anfang keine Ahnung. Und später umsteigen ist so eine Sache, die erst recht dazu führen kann die Liste von Horrorgeschichten zu verlängern.

Kleiner Tipp: Sogar Word bietet an verschiedene Word-Dokumente einer Arbeitet mittels Hyperlinks in ein Hauptdokument zu binden. Das funktioniert sogar, ist ganz praktisch und verhindert, daß man die "Horrorgeschichte" "Meindokumentwarlängeralszwanzigseitenundwordstürztedauerndab" erzählen muß.

Gruß,
Christian
Benutzeravatar
jens
Python-Forum Veteran
Beiträge: 8502
Registriert: Dienstag 10. August 2004, 09:40
Wohnort: duisburg
Kontaktdaten:

Also ich hab in OpenOffice alles in einem Dokument gahabt...

Egal was man benutzt... Immer in einer neuen Datei speichern und Dateinamen durchnummerieren :) Wenn mal eine Datei kapputt geht, warum auch immer, dann hat man noch eine alte Version... Und das Backup nicht vergessen...

GitHub | Open HUB | Xing | Linked in
Bitcoins to: 1JEgSQepxGjdprNedC9tXQWLpS424AL8cd
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Oder reST und SVN.. dann braucht man nicht mal zu nummerieren, das macht SVN schon selbst. Und zum schluss noch ein HTML mit hübschen Stylesheet oder gar ein PDF generieren und fertig ;)
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
JensP-Anfaenger
User
Beiträge: 23
Registriert: Montag 25. April 2005, 08:31
Wohnort: Schleswig-Holstein

Hallo,
also was die Produkte von MS angeht:
ich kann bislang noch keine schlechten Erfahrungen vorweisen und nachdem ich mir mal bei der Installation von Suse Linux 8.2 80GB Daten zerschossen habe sehe ich keine Veranlassung z.B. das Betriebssystem zu wechseln.
Außerdem habe ich mit Word meine Studienarbeit mit ganz vielen Bildern Tabellen usw. geschrieben und hatte auch keine Probleme.
Und das bei über 80 Seiten!

Und nun wieder zum Thema:
ja, das mit SciTE und *.rtf ist ja gut und schön, aber enn ich ich nun, nachdem ich das *.rtf in Word geöffnet habe, es nach Excel kopiert habe (bis hier besteht die Formatierung) und dann mit VERKETTEN eine Zeilennummerierung einfügen will, wird die Formatierung gelöscht!

Hat jemand einen Trick auf Lager, wie ich sonst eine Zeilennummerierung einfügen könnte?

Gruß!
Jens
JensP-Anfaenger
User
Beiträge: 23
Registriert: Montag 25. April 2005, 08:31
Wohnort: Schleswig-Holstein

Das Problem hat sich erledigt!

Ich habe halt mal schnell ein Skript geschrieben, das das *.rtf-File einliest, und dann vor jede Zeile eine fortlaufende Nummer setzt!

Ich werde es hier mal posten, habe aber gerade mein USB-Stick verlegt und das Skript ist auf dem Notebook!

Gruß!

Jens
BlackJack

Immer wieder verblüffend wofür die Leute Tabellenkalkulationen missbrauchen wollen.

Gibt's in Word nicht die Möglichkeit einen Absatz mit einer stinknormalen Zeilennummerierung zu versehen? Ich dachte so etwas gehört zu einer modernen Textverarbeitung dazu. In OpenOffice geht das über "Extras->Zeilennummerierung"
JensP-Anfaenger
User
Beiträge: 23
Registriert: Montag 25. April 2005, 08:31
Wohnort: Schleswig-Holstein

Hallo,

sicher kann man in Word auch eine Zeilennummerierung einfügen,

wenn ich jedoch meinen Code in meine Diplomarbeitsdokumentation einfüge, möchte ich nicht das ganze Dokument durchnummerieren, sondern nur meinen Python-Code.
Wenn ich dann noch zwischen den Code-Zeilen dukumentieren will, wird die automatische Zeilennummerierung weitergeführt!
Meine Zeilennummerierung soll also nur dazu dienen, dass ich in meiner Doku mich auf die unterschiedlichen Zeilen beziehen kann!!!
Und das ist bestimmt weder in OpenOffice noch in Word oder anderen Textverarbeitungssoftwaren möglich!

Gruß!

Jens
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi!

Jens, wir sind hier in einem Python-Forum ;) Bevor ich mich mit den Feinheiten der jeweiligen Textverarbeitung tagelang auseinandersetze, schreib ich mir ein Script das die Nummerierung erstellt. Dauert 2 Minuten ;) Das hast Du ja letztendlich auch gemacht, oder?

Gruß, mawe
BlackJack

JensP-Anfaenger hat geschrieben:sicher kann man in Word auch eine Zeilennummerierung einfügen,
wenn ich jedoch meinen Code in meine Diplomarbeitsdokumentation einfüge, möchte ich nicht das ganze Dokument durchnummerieren, sondern nur meinen Python-Code.
Wenn ich dann noch zwischen den Code-Zeilen dukumentieren will, wird die automatische Zeilennummerierung weitergeführt!
Meine Zeilennummerierung soll also nur dazu dienen, dass ich in meiner Doku mich auf die unterschiedlichen Zeilen beziehen kann!!!
Und das ist bestimmt weder in OpenOffice noch in Word oder anderen Textverarbeitungssoftwaren möglich!
Das ist in OpenOffice definitiv möglich. Man kann entscheiden welche Absätze numeriert werden und welche nicht. Und nur die Zeilen von numerierten Absätzen werden gezählt. Somit ist es problemlos möglich numerierten Quelltext durch nicht numerierte Dokumentation zu unterbrechen. Und man kann bei jedem numerierten Absatz auch sagen, dass die Numerierung wieder bei 1 anfangen soll, so dass man mehrere Programme/Module in einem Text dokumentieren kann.
JensP-Anfaenger
User
Beiträge: 23
Registriert: Montag 25. April 2005, 08:31
Wohnort: Schleswig-Holstein

Hallo,

ich habe meinen USB-Stick wiedergefunden, jetzt funktioniert die Komunikation zwischen Internet-PC und Arbeits-PC wieder!

Auf jeden Fall könnt ihr hier mein Skript zum Einfügen von Zeilennummerierungen beim *.rtf-File mal sehen:

Die Zeilennummern werden vierstellig dargestellt, also mit 'Nullen' aufgefüllt (funktioniert hier bis 9999 Zeilen).

Code: Alles auswählen

file = 'path to *.rtf-file'
filenew = 'new filename'
f=open(file,'r')
n=open(filenew,'w')
cacheold={}
cachenew={}
line=f.readline()
number=1

while line:
  if number%100==0:
    print 'line number'+str(number)
    
  if (number-1)<10:
    shownum='000'+str(number-1)
  elif (number-1)<100:
    shownum='00'+str(number-1)
  elif (number-1)<1000:
    shownum='0'+str(number-1)
  elif (number-1)<10000:
    shownum=str(number-1)

  cacheold[number]=str(line)
  cachenew[number]='\cf0 '+str(shownum)+'   '+str(line)
  number+=1
  line=f.readline()
  
n.write(cacheold[1])
for x in xrange (2,number-1):
  n.write(cachenew[x])
n.write(cacheold[number-1])

f.close()
n.close()
Also dies Skript ist eigentlich das, nach dem ich gesucht habe.
Damit ist mir dann letztlich egal, was Word oder OpenOffice können oder halt nicht!

Gruß!

Jens
mawe
Python-Forum Veteran
Beiträge: 1209
Registriert: Montag 29. September 2003, 17:18
Wohnort: Purkersdorf (bei Wien [Austria])

Hi Jens!

Nana, was soll denn das sein? ;)

Code: Alles auswählen

filename = "blabla.py"
filenew = "new_blabla.py"
old = file(filename, "r")
new = file(filenew, "w")

for number, line in enumerate(old):
    new.write("%04i %s" % (number+1, line))
Geht auch, oder? :)

Gruß, mawe
JensP-Anfaenger
User
Beiträge: 23
Registriert: Montag 25. April 2005, 08:31
Wohnort: Schleswig-Holstein

Hallo mawe,

für ein *.py geht es sicher auch so, aber ich wollte doch gern die rtf-Formatierung erhalten und habe jetzt gleich die aus SciTE so exportiert!
Ich muss mein File aus SciTE als rtf exportieren und kann es mit meinem Skript umwandeln und in Word öffnen, bei deinem müsste ich doch mein Skript speichern, kein Tool drüber laufen lassen und dann das ganze wieder öffnen in SciTE, dann exportieren und jetzt erst mit Word öffnen! Also doch letztlich komplizierter, oder?!

Gruß

Jens
Antworten