Hallo, wollte mal fragen was ihr so für Editoren für (AVR) C benutzt. Habe mich nach nunmehr 1 1/2 Jahren intensivem AVR programmieren immer nocht nicht an einen gewöhnen können. Meine Favouriten sind die Editoren in Delphi und in Netbeans, aber die stehen natürlich ausser Konkurenz, da mit C nix zu tun. Ansonten benutzt ich meist Ultra Edit (hat aber was gekostet) und eben Programmers Notepad 2. Der eine kann das schöner, der andere kann das schöner... Vielleicht kann man in diesem Thread mal ein bischen Features, Vor- und Nachteile der diversen Editoren gegenüberstellen. Aber bitte keinen Streit, da einige Sachen halt eben einfach eine Geschmacksfrage sind. Dann fang ich mal mit Ultra Edit hier an: Vorteile: - Einfache Einbindung der avr toolchain - Codevervollständigung - Eigenes Fenster mit Funktionsliste, beim anklicken wird zur Funktion gesprungen Nachteile: - Kostenpflichtig - Einbindung der Toolchain zwar einfach, aber muss eben gemacht werden Und dann noch Programmers Notepad 2 Vorteile: - Gleich beim WinAVR Packet dabei und die Toolchain ist fertig integriert - Kostenlos Nachteile: - Keine Codevervollständigung Vielleicht schreibt ihr etwas über andere Editoren... Stefan
Hi vi ohne m! ;-) SCNR Ich komm mit dem UltraEdit ganz gut zurecht. Aber Code-Vervollständigung konnte ich ihm noch nicht beibringen. Wie geht das denn? Matthias
Der tollste: Powerpoint. Der nützlichste: "vi"¹ (3 Tage üben und man kann ihn gut brauchen, 3 Monate Blut, Schweiß und Tränen und man hat DEN Editor überhaupt, 10 Jahre mit vi arbeiten und man beherrscht 40% seiner Fähigkeiten) Der kleinste: "Copy" (copy con: bigproject.asm) Der c00lteste: ">" (> avr-dsl-wlan-firewall-src-doc-boards.zip) Gruß, Falk ¹) Erhältlich für alle Betriebssysteme und GUIs.
Kate: Vorteile: -Merkt sich beim Rechner Herunterfahren alle geöffneten Dateien mit Cursorposition u.s.w. -Funktionen lassen sich einklappen (von jeder { Klammer bis zur passenden } Klammer) das erhöht die Übersichtlichkeit -Syntax Highlight (ist wohl klar) -Eine Datei lässt sich in zwei Fenstern gleichzeitig bearbeiten, was einem ein ständiges hin und herscrollen in größeren Dateinen erspart. -Konsole integriert -F12 schaltet automatisch zwischen .c und der passenden .h Datei hin und her. Nachteile: -Eingene Programme lassen sich nicht auf Funktionsknöpfe legen (müssen immer manuell über die Konsole aufgerufen werden)
@Matthias: Wegen der Ultra-Edit Codevervollständigung: deklariere mal einfach ne Funktion und schreib dann die ersten paar Buchstaben davon dahin wo du sie aufrufen willst und drück dann STRG-Space... Wenns nicht geht muss man das wohl vorher erst irgendwie freischalten, kann mich aber gerade nicht mehr dran erinnern, ich schau mal nach... Stefan
nicht unbedingt der tollste aber auch ganz brauchbar: Dev-Cpp + Syntax Highlighting + Klammernhervorhebung + Class Browser + kein MDI-Quatsch + Code-Vervollständigung + kostenlos - kein Code Folding - kein echtes Session Management (wie Kate) läuft unter w32 (ich würde lieber Kate benutzen aber ich muss hier unter w32 arbeiten). WinAVR lässt sich problemlos einbinden aber es ist auch hier Arbeit ;-) Dominik
Ich finde Crimson Editor sehr gut. Ist ein sehr funktioneller, schneller und relativ kleiner Texteditor mit Projektverwaltung, Syntaxhervorhebnung uvw. und er ist ebenfalls frei. Weitere Infos gibts hier: http://www.crimsoneditor.com/ Bei Programmers Notepad 2 finde ich eigentlich nur schön, daß sich Funktionen etc. einklappen lassen. Gruß Thorsten
hat schon mal jemand eclipse in verbindung mit c/c++ ausprobiert? (bzw avrgcc / mspgcc)
Ich bin grad dabei, weil ich das wohl in der nächsten Zeit verwenden werden muss (emacs ist nichts für "normalsterbliche Mitleser" g). Aber erst mal eclipse update machen :\ Bei knapp 90MB... das dauert auch mit DSL-Flat...
Was stört dich an Emacs? Ich würde einem Anfänger heutzutage allerdings Xemacs empfehle. Leider habe ich nur gesehen, dass der Cygwin-Port von Xemacs offenbar keinen Grafikmodus unterstützt, der GNU Emacs dagegen schon.
Naja, doch, eine Sache gibt es da. Das GDB-Interface hat Probleme mit den CygWin-Pfaden.
Hmm, na gut, damit kenne ich mich nicht aus. ;-) Kann man vermutlich beheben, indem man eine Cygwin-Erkennung in gud.el reinnagelt.
Habe eben mal den xemacs ausprobiert... Ein sehr mächtiger Editor, aber wer auf ein bischen "Look & Feel" steht (ich gehöre auch dazu, oder habt ihr in eurem Wohnzimmer PVC Fussboden ?) sollte sich den download sparen. Wer das besagte nicht braucht: Sofort downloaden! Stefan
Um den Editorsuchenden die Wahl zumindest nach optischen Gesichtspunkten etwas zu erleichtern wär's vielleicht schön wenn ihr mal nen Screenshot von euren Editoren hier reinbeamt... Ich fang mal mit Programmers Notepad an. Prost. Stefan
OK, wer mal einen Emacs sehen will, ohne ihn gleich zu installieren. ;-) http://www.sax.de/~joerg/emacs.png Das ist ein Mitschnitt des gesamten Desktop-Arbeitsbereiches. Rechts oben eine Debuggersitzung mit dem dtostre.S-Assemblerprogramm aus der avr-libc. Links unten das w3m-Fenster, mit dem ich dieses Forum hier lese (der aktuelle Thread ist gut zu erkennen, nicht? :). Man muss das nicht unbedingt mögen :-), aber es gestattet mir halt deutlich bessere Editierfunktionen zum Schreiben meiner Beiträge hier als jeder herkömmliche Webbrowser. Nein, ich benutze den Emacs-w3m nicht als allgemeinen Browser. ;-)
> Das ist ein Mitschnitt des gesamten Desktop-Arbeitsbereiches.
Das ist jetzt aber fies: Fvwm, 6 Desktops umschaltbar, emacs, womöglich
noch einen mit Windows unter VMware und alles mit 64bit!
Hier gibt's Leute, die können sich keinen Rolls-Royce leisten, die
fahren Käfer. (Vom Preis natürlich umgekehrt).
Gruß,
Falk (vi(m)-Purist aber unter 4 Desktops fange ich gar nicht mehr an
:-)
Nix vmware. (Was soll ich mit Windows? Ich habe drei Kinder, da muss ich mir nicht noch meine Zeit mit Windows totschlagen. ;-) Auch nix 64-bit, sondern ein 900-MHz-Athlon. Gut, 512 MB RAM hat er mittlerweile, aber dafür sind wir auch ständig zu zweit in zwei X11-Sitzungen eingeloggt -- ausloggen nervt schließlich. Also alles andere als ein Rolls Royce. ;-) OK, meinen Hang zu SCSI- Festplatten würden andere vermutlich als Rolls Royce abtun, aber so selten, wie ich eine neue Festplatte brauche, fällt mir das nicht ins Gewicht. Dafür funktioniert der Krempel auch noch mit der nächsten Platte und dem nächsten Tape... Ja, umschaltbare Desktops sind was feines, den fvwm-Pager finde ich nach wie vor eine geniale Lösung -- und das Ganze ist praktisch seit > 10 Jahren in dieser Form stabil.
Ok, wie gewünscht ein Screenshot. (von Kate) http://www.marwedels.de/malte/arbeitsplatz2005-04-05.png Und wenn wir schon mit Screenshots anfangen, so kam mir gerade http://www.mikrocontroller.net/forum/read-7-94510.html#new in Erinnerung. @Jörg Wunsch Musste beim erstellen des Screenshots erfahren dass die alten Macros ja endgültig verschwunden sind... Zurück zu einem Betriebssystem ohne virtuelle Desktops kommt für mich auch nicht mehr infrage.
> Kann man vermutlich beheben, indem man eine Cygwin-Erkennung > in gud.el reinnagelt. Hm, das hat (oh wunder) natürlich schon jemand gemacht: es gibt eine cygwin-mount.el! Das hat mich natürlich gefreut :) ABER: Das Problem liegt woanders: der emacs liest die Debuginfos aus dem .elf, zB "/cygdrive/c/<irgendwo>/main.c". OK, das ist für ihn erstmal nur ein Pfad, also Laufwerksbuchstaben vorsetzen! Daraus resultiert dann "c:/cygdrive/c/<irgendwo>/main.c". Und das ist dann für das .el kein CygWin-Pfad mehr :( Ich müsste mich wahrscheinlich mal ein wenig mit RegExp auseinandersetzen, wo ich die bisher immer nur "geklaut" habe ;) grusel...
Hi, bei mir sieht es so aus, dass ich beruflich X-Tools verwende. Dabei kann man mit Struktogrammen programmieren und sehr gut seine Quelltexte durch Ausblendungen usw. strukturieren. Leider ist das Programm sehr teuer (soweit ich weiß) und hat auch noch Fehler (Abstürze). Der Ansatz dieses Programms ist aber nicht schlecht und der Code ist sehr leicht lesbar. Zu Hause habe ich unter Windows das AVR-Studio verwendet. Inzwischen versuche ich mir mein altes Windows ein wenig abzugewöhnen. Unter Linux bin ich also noch auf der Suche. Habe da im Moment an K-Develop gedacht. Emacs ist im Moment für mich noch ein wenig erschlagend (verwöhnter Windowsklicker). Gibt es hier vielleicht ein freies Programm mit dem ich auch struktogrammähnlich programmieren kann? Gruß, Ralf
> ABER: Das Problem liegt woanders: der emacs liest die Debuginfos aus > dem .elf, zB "/cygdrive/c/<irgendwo>/main.c". OK, das ist für ihn > erstmal nur ein Pfad, also Laufwerksbuchstaben vorsetzen! Daraus > resultiert dann "c:/cygdrive/c/<irgendwo>/main.c". Und das ist dann > für das .el kein CygWin-Pfad mehr :( Nö, das muss schon /cygdrive/c/<irgendwo>/main.c heißen. /cygdrive/c ist die Cygwin-Emulation für das Windows-Laufwerk C:, /cygdrive/e wäre E: usw. Sieht also alles wie eine Unix-Dateisystem-Hierarchie aus.
Jörg: Der emacs hängt da wohl anscheinend das c: noch DAVOR. Mom, Auszug aus der Bufferlist: % mmbtest.c<2> 0 C c:/cygdrive/c/Dokumente und Hab die Zeile verkürzt...
> Jörg: Der emacs hängt da wohl anscheinend das c: noch DAVOR. > Mom, Auszug aus der Bufferlist: Ah, jetzt verstehe ich, was du meinst... Ja, das braucht wohl wirklich eine Anpassung. In vi-Notation würde ich sagen s/^[A-Z]:// :-) > Hier noch ein Screenshot meines Lieblingseditors. Wie war das gleich? "Ed is the standard text editor." Siehe auch: http://c2.com/cgi/wiki?EdIsTheStandardTextEditor
Hier gings wohl eher darum, welcher Editor der Beste ist. Diskussionen über emacs-Interna haben hier wohl nichts zu suchen, oder?
** Identitätsdiebstahl? ** "Autor: Rufus T. Firefly Datum: 05.04.2005 20:53 Verwendet edline, mehr als eine Zeile beherrscht keiner..." Dieser Beitrag ist nicht von mir. Einerseits kann ich den Namen richtig schreiben (edlin), andererseits würde ich so einen Blödsinn nicht absondern. Und wenn, dann würde ich "copy con dateiname" vorschlagen.
Seit KDevelop bei mir funktioniert, benutze ich diesen. Hat Projektverwaltung, schluckt Assembler- und C-Sourcecode. Ein Tastendruck auf F9 und das ganze Projekt wird compiliert/gelinkt und in den AVR programmiert (mit avrdude und Parallelport-Adapter). Grüße Marco -
Ich verwende auch zur Mikrocontroller Programmierung den Anjuta. Anjuta ist eigentlich für GUI-Software (mit GTK) gedacht, aber frisst so ziemlich jede Programmiersprache. Es kann Codefolding, autocompletation, Syntaxhighlighting usw. Klickt man links auf eine Funktion, springt man im Editor auf diese Funktion. Man kann mehrere Files offen haben, die Auswahl erfolgt oben mit den Tabs. Bei Mikrocontroller Projekten braucht man nur das passende Makefile ins Verzeichnis kopieren. Bei GUI Programmierung wird mittels autoconf/automake die Buildumgebung automatisch erzeugt. Bei Compile-Fehlern und Warnungen kann man sich mit Mausklick durch die Fehlerzeilen bewegen. Kann also alles was Emacs in dieser Richtung kann, nur halt mit Klicki-bunti. Anjuta läuft hauptsächlich unter Windows, könnte sich aber unter Cygwin ev. in Windows bauen lassen.
@Leopold: Es gibt das komplette KDE für Mac OS X, also warum nicht KDevelop. Nur halt als X11, nicht Aqua. Apropos OS X: wenn mehrere an einem Projekt arbeiten (besonders bei extreme programming) gibt es natürlich nichts besseres als SubEthaEdit! Ich programmiere übrigens immer mit vim. Nur den finde ich uneingeschränkt mächtig, ohne umständlich zu bedienen zu sein. Ist nur ganz am Anfang halt ein wenig Überwindungssache.
warum hier jedit nicht auftaucht...? OK ist vielleicht nicht besonders resourcenschonend, aber dafür auf mehreren Plattformen zuhause
Ich verwende bevorzugt Anjuta jedoch auf einem Linux System. Kate ist ebenfalls ganz nett. Emacs / vi, wer sich den die Mühe machen will. vi nutze ich nur als Notlösung, also wenn mal kein X-Windows läuft. Mit KDevelope oder Eclipse wollte einfach keine rechte Freude aufkommen. Es ist etwas mit Kanonen auf Spatzen geschossen und besonders Eclipse zickte in meinen Test mit C ziemlich rum. Sourcenavigator ist auch noch ganz nett, wenn man sich nicht von den Fehlern im Syntaxhighlighting ins Boxhorn jagen lässt und gelegentliche Abstürze in kauft nimmt. pn2 ist auf Windows eine sehr gute Lösung. UEdit habe ich mal gekauft und ärgere mich nun schwarz, weil das damalige Download nicht mehr vorhanden ist. Und nun läuft die aktuelle Version nicht mehr mit meinem Key. Also spart Euch das Geld. pn2 reicht in den meisten Fällen aus. Wenn aber Geld keine Rolle spielt, sollte man auch über Codewrite nachdenken. Mein Favorit ist und bleibt aber anjuta.
> und gelegentliche Abstürze in kauft nimmt.
Eine abstürzende Software ist ja wohl einfach nur völlig wertlos!
>> und gelegentliche Abstürze in kauft nimmt. >Eine abstürzende Software ist ja wohl einfach nur völlig wertlos! Warum gibt's dann immer noch so viele schrottige PCs und so viele Windows-Nutzer? <SCNR>
Was hat Windows mit Absturz zu tun? Mein XP ist noch NIE abgestürzt...
Hi Betriebssystem Flamewar! Jetzt sofort!!!!1 POPCORN POPCORN POPCORN Matthias
Noch mal kurz zu Abstürzen und Sourcenavigator. Gelegentliche Abstürze bedeutet in diesem Fall das kein Code verloren geht und diese nach ca. 6h intensiver Arbeit auf einem XP System auftritt. Unter Linux konnte ich dieses Problem bisher nicht beobachten. Allerdings biete Sourcenavigator einen paar Schmankerl, wie Cross Reference und Class Browser. Wer Interesse hat findet hier mehr dazu: http://sourcenav.sourceforge.net/download.html Ich arbeite auch lieber auf Linux Systemen, halte aber ein Diskussion über das bessere Betriebssystem für ziemlich überflüssig. Aber manchmal will der Kunde eben unbedingt seine exotische Compiler/Tools-Umgebung auf Windows haben. Und dann wäre man froh, wenn man eine flexible IDE für alle üblichen Systeme/Compiler/Tools zur Verfügung hätte. Daher denke ich, wird langfristig so etwas wie Eclipse das Rennen machen, auch wenn die meisten Entwickler nicht mehr als 5% davon wirklich benötigen.
Hmm, verstehe ich nicht, was geht den Kunden meine Programmierumgebung an?
Wenn Du innerhalb eines Teams nur für bestimmte Module zuständig bist, kommst Du nicht darum herum. Wenn in Auftrag/Vertrag ein bestimmter Compiler aus welchen Gründen auch immer festgeschrieben ist, hängst Du auch wieder am Fliegenfänger. Im Automobilbereich ist es z.B. üblich die komplette Toolchain festzuschreiben und gegebenfalls Zertifizieren zu lassen. Da hast Du mit gcc keine Chance. Ausserdem haben viele Kunden Angst vor der GPL/LGPL weil sie glauben, dann ihren Quellcode offen legen zu müssen oder nicht alle Rechte am Endprodukt zu besitzen. Oder sie haben Angst, weil sie niemande für Compilerfehler haftbar machen können, weil keine richtige Firma dahinter steckt, weil angeblich kein Support vorhanden ist, etc. Eben die übliche Litanei gegen OpenSource.
Jaja, die Litanei kenne ich auch, zur Genüge. Mir war aber nicht klar, dass es Leute gibt, die mir selbst meinen Editor noch vorschreiben wollen. Vermutlich wäre sowas für mich ein k.o.- Kriterium.
"Was hat Windows mit Absturz zu tun?" Nun unter Windows heißt das eben Absturz und unter UNIX Coredump und woanders sind es Bömbchen. Das Resultat ist unter jedem OS das gleiche, die Anwendung terminiert und die Daten sind futsch. Soll also keiner so tun, als wäre ihm sowas noch nicht passiert, völlig egal welches OS. Peter
Hallo Peter Für mich ist ein ungewollter Anbsturz unter Windows, Linux oder sonst einem Betriebssystem ein "Absturz". Egal ob mit oder ohne Datenverlust. Sourcenavigator stürzte reproduzierbar auf mehreren WindowsXP Systemen nach einigen Stunden ab. Sourcenavigator läuft auch auf Linux und da konnte ich dieses Problem nicht beobachten. Es muss deshalb nicht automatisch am Betriebsystem liegen, obwohl das naheliegend scheint. Es könnte auch ein Fehler in der Win-Portierung oder in einer Lib sein. Also worüber regst Du Dich auf?
> Es könnte auch ein Fehler in der Win-Portierung oder in > einer Lib sein. Davon kannste mal ausgehen. Aber ist ja immer so, unfähige Programmierer gibts nicht und somit kann nur Windows schuld sein. Sourcennavigator gabs doch bestimmt erst nur für Linux, oder?
> Für mich ist ein ungewollter Anbsturz unter Windows, Linux oder > sonst einem Betriebssystem ein "Absturz". Egal ob mit oder ohne > Datenverlust. Also ein Absturz sollte natürlich nicht vorkommen. Aber ich finde, daß es mitnichten egal ist, ob dabei Daten verlorengehen oder nicht. Ich habe nämlich keine Lust, die Arbeit zweimal zu erledigen.
Ein Absturz ist zunächst einmal ein Absturz und deutet auf einen Bug hin. Ein Absturz mit Datenverlust ist natürlich deutlich schlimmer. Aber es ging mir dabei nicht um eine Bewertung über die schwere des Absturzes sondern um die Festellung das SourceNavigator unter WinXP nach einiger Zeit abstürzt, was mit der Linux Version bisher nicht vorgekommen ist. @ Sourcennavigator gabs doch bestimmt erst nur für Linux, oder? Sourcenavigator wurde urspünglich von Cygnus entwickelt. Cygnus wurde dann einigen Jahren von RedHat gekauft und damit wurde SourceNavigator zu OpenSource. Jeder der auf dem Amiga entwickelt hat, kennt bestimmt noch den CygnusEd. Ich vermute das CygnusEd der Ursprung des SourceNavigators ist, zumal beide die gleichen Macken beim Syntax Highlighting aufweisen. CAS soll ebenfalls an der Entwicklung unter dem Projektnamen Pathfinder im Rahmen von MultiX beteiligt gewesen sein. Also vermutlich war der Ansatz für SourceNavigator von vornherein die Plattformunabhängigkeit. Weitere Infos zu CAS/Pathfinder: http://www.cas-gmbh.de/software/snav/V452DL.html So langsam wird das Ganze etwas SourceNavigator lastig. Das Teil ist interessant, aber ich ziehe zur Zeit Anjuta vor.
Ich habe schon etliche Editoren verwendet, UltraEdit, vi, (X)emacs, textedit, eclipse,... Derzeit arbeite ich hauptsächlich mit dem Eclipse, Mein Faforit bleibt jedoch bislang der SlickEdit (v.a. sehr gut zum Analysieren von C/C++ Codes mit unvorstellbar vielen Eigenschaften. Thomas
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.