Hi Leute, hat jemand von euch ne Idee, ob/wie man z.b. das Datum einer *.c Datei an den Anfang dieser Datei automatisch schreiben lassen kann. Bei OpenOffice heißt das Feldbefehl. OS: MSW oder Unix. Also ungefähr so: __________________________________________________ /******************************************** Datum: "22.12.2020" Autor: "Heinz Hackel" Dateiname: "myavr.c" ********************************************/ #include ... .... ... return 0; } ______________________________________________
warum Anführungszeichen? warum eigenes Format? warum nicht auf was verbreitetes zurückgreifen, wie doxygen? Beispiel aus Wordclock-projekt:
1 | /*---------------------------------------------------------------------*//**
|
2 | * @file user.h
|
3 | *
|
4 | * The user-module handles the user interface of the wordclock
|
5 | * \details
|
6 | * This includes the reaction on the input via IR-RC as well as
|
7 | * the output of the time.
|
8 | *
|
9 | * \version $Id: user.h 347 2010-08-19 20:13:32Z vt $
|
10 | *
|
11 | * \author Copyright (c) 2010 Vlad Tepesch
|
12 | *
|
13 | * \remarks
|
14 | * This program is free software; you can redistribute it and/or modify
|
15 | * it under the terms of the GNU General Public License as published by
|
16 | * the Free Software Foundation; either version 2 of the License, or
|
17 | * (at your option) any later version.
|
18 | */
|
19 | /*---------------------------------------------------------------------*/
|
die Strichellinien sind nur für die Abhebung im Code und können auch weggelassen werden. wichtig ist, dass die eigentliche Dokumentation mit "/** " beginnt deswegen Tip zum Googeln: Doxygen
Wenn man einen ordentlichen Editor nimmt, dann kann der das. Leider hast du vergessen zu sagen, mit welchem du arbeitest. svn und andere können das auch beim Einchecken.
Klaus Wachtler schrieb: > svn und andere können das auch beim Einchecken. ich glaub, das kann so ziemlich jedes revision control system. Da man ein solches eigentlich immer benutzen sollte, erübrigt sich die Frage nach dem Editor eigentlich. im obigen Beispiel sorgt übrigens $Id$ dafür, dass die Informationen (Autor, Revision, datum) automatisch eingetragen werden.
Mrt schrieb: > np++, vs2010 c++, gedit, ... egal egal kenne ich nicht; du meintest bestimmt emacs ... :-)
Klaus Wachtler schrieb: > egal kenne ich nicht; du meintest bestimmt emacs ... :-) Haha...ihr Computerkinder der 80er seid doch alles Weichbecher. Wir haben damals noch direkt mit der Magnetnadel die Bits auf dem Band eingestellt! Nein, im Ernst: Ich bin sehr gespannt, welche Editorprogramme wir spät-90er Computerkinder (und damit IDE-Benutzer) in Zukunft so belächlen werden, wie die Emacser heute die IDEs... ;-)
bla schrieb: > Haha...ihr Computerkinder der 80er seid doch alles Weichbecher. Wir > haben damals noch direkt mit der Magnetnadel die Bits auf dem Band > eingestellt! http://xkcd.com/378/
Vlad Tepesch (vlad_tepesch) schrieb: > .. das kann so ziemlich jedes revision control system. > Da man ein solches eigentlich immer benutzen sollte, erübrigt sich die > Frage nach dem Editor eigentlich. "revision control system" ?? Mal im ernst, wozu bracht man sowas? Schreibt ihr ständig an Quelltexten, die auch 20 andere Leute beackern? Wenn ich an meinem C-Code was ändere dann kommt ein neues Datum in den Dateikopf (zuletzt geändert am ..) und entsprechende Kommentare dazu, so dass ich mich zurecht finde und gut ist es. Wozu so einen zusätzlichen Ballast aufladen? Oder geht es hier um größere Projekte die dann auf sourceforge.net landen?
Gelegenheitsprogrammierer schrieb: > Vlad Tepesch (vlad_tepesch) schrieb: > >> .. das kann so ziemlich jedes revision control system. >> Da man ein solches eigentlich immer benutzen sollte, erübrigt sich die >> Frage nach dem Editor eigentlich. > > "revision control system" ?? > > Mal im ernst, wozu bracht man sowas? Ist halt gelegentlich ganz nett zu haben. > Schreibt ihr ständig an Quelltexten, die auch 20 andere Leute beackern? Ja, nein, kommt drauf an. > Wenn ich an meinem C-Code was ändere dann kommt ein neues Datum in den > Dateikopf (zuletzt geändert am ..) und entsprechende Kommentare dazu, so > dass ich mich zurecht finde und gut ist es. Wozu so einen zusätzlichen > Ballast aufladen? Ballast - Ansichtssache. Datum und Kommentare könnte man auch als Ballast ansehen. Real Programmers(tm) don't comment their perfectly obvious code... ;-) > Oder geht es hier um größere Projekte die dann auf sourceforge.net > landen? Für private kleine Projekte dürfte der typische Fall eher so aussehen: man hat 1, 2, 3 Tage lang den Code mächtig umstrukturiert. Dann fällt am Ende auf dass das alles Mist (vulgo: keine so gute Idee) war was man da versucht hat. Und an dem Punkt wird eine Versionsverwaltung selbst für das 1-Mann-Projekt sehr nützlich, sieh es einfach als eine Art etwas komisches Backup. Nein, ist mir noch nie passiert, ich schwör!!!11!elf
Gelegenheitsprogrammierer schrieb: > Vlad Tepesch (vlad_tepesch) schrieb: > >> .. das kann so ziemlich jedes revision control system. >> Da man ein solches eigentlich immer benutzen sollte, erübrigt sich die >> Frage nach dem Editor eigentlich. > > "revision control system" ?? > > Mal im ernst, wozu bracht man sowas? Für mich gehört es zur Grundausstattung bei der Programmierung. Genauso könnte man fragen "wozu braucht man make". Es geht auch ohne, aber halt unkomfortabel. > Schreibt ihr ständig an Quelltexten, die auch 20 andere Leute beackern? Nein, aber das muß man auch nicht, um Revisionskontrolle sinnvoll zu nutzen. > Wenn ich an meinem C-Code was ändere dann kommt ein neues Datum in den > Dateikopf (zuletzt geändert am ..) und entsprechende Kommentare dazu, so > dass ich mich zurecht finde und gut ist es. Und wenn die Datei jetzt nicht mehr geht und du zurück zur vorherigen Version mußt, bzw. dir mal schnell einen diff zu einer früheren Version anschauen willst? Oder wenn du früher mal was gemacht hast, aber wieder rausgenommen, weil es damals nicht sinnvoll war und jetzt aber gerne wüßtest, wie das damals noch war? Oder wenn du mal experimentell eine größere Umstellung machen willst? Klar kannst du dir auch ein Verzeichnis anlegen, wo du regelmäßig ein zip-File mit dem ganzen Projekt speicherst, aber übersichtlich ist das nicht. Es kostet mehr Arbeit und ist deutlich unübersichtlicher, als mit einem Revisionskontrollsystem. > Wozu so einen zusätzlichen Ballast aufladen? Was für einen Ballast? Das Aufsetzen von subversion oder git ist trivial, und man kann es sofort nutzen. Man muß sich halt angewöhnen, nach Änderungen zu commiten und dabei eine sinnvolle commit-Message zu schreiben, aber die kann nachher sehr hilfreich sein und kann auch automatisch als Changelog in den Sourcecode eingetragen werden. > Oder geht es hier um größere Projekte die dann auf sourceforge.net > landen? Auch bei kleinen Projekten ist es sinnvoll, sowas zu nutzen, auch wenn es da vielleicht nicht ganz so essenziell ist, wie bei großen. Wenn ich mir das Chaos anschaue, das manche produzieren, weil mit Kopien oder Archiven vom Projekt irgendwie versuchen, das nachzubilden, was einem subversion bietet, kann ich nur den Kopf schütteln.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.