Freie Alternative zu UltraEdit?
-
Erkenner der Editoren schrieb:
Na toll, dann hat man nichtmal eine Übersicht aller derzeit verwendeten Variablen.
Das können moderne Editoren aber deutlich besser.
Die gruppieren die Variablen sogar nach den Funktionen und Klassen.Natürlich geht das auch mit Vim. Und zwar mit jedem Vim. Egal ob GUI-Version:
http://img371.imageshack.us/img371/9466/bild1fz8.png
Oder Terminal-Version:
http://img56.imageshack.us/img56/1100/bild2ao7.pngWenn (g)Vim das Plugin nicht automatisch mitbringt, dann lädt man sich halt Tag List selbst runter.
-
Erkenner der Editoren schrieb:
Und wie blendet man in Vim eigentlich in einer Seitenleiste die Klassen, Funktionen
und Variablen ein, die in einer Quelltextdateie benutzt werden?Emacs kann es prinzipiell, wenn der entsprechende Modus es kann, siehe JDEE.
Aber man sollte nicht vergessen, dass sowohl Vim als auch Emacs keine IDE sind sondern Editoren und ihr auch viele Emacs/Vi(m) verfechter finden werdet die, wie ich, zum Programmieren durchaus auch eine IDE einsetzen da diese wiederum andere Vorteile mit sich bringt.
Wie vertausche ich in vim folgende 2 Code Ausdrücke und zwar
so, daß beide am Ende noch in einer Zeile stehen:x=3+2; y=2+1;
x=3+2; y=2+1;
Bin mal gespannt wie kompliziert diese Einfache Aufgabe ist.
In einem normalen GUI Editor macht man das mit Cut & Paste und zwar so, ohne daß man viel darüber nachdenken muß wie es geht.Genau so, ansonsten könntest du, es ganz naiv machen indem du den cursor zum x bewegst, dann v drückst jetzt den Cursor nach rechts bewegst zu gewünschten Stelle drückst d, dann $ und dann p.
Das wäre Copy 'n Paste unter Vi(m) wie man es auch mit der Maus machen würde. Der geübte Vim User kennt jedoch sicher einen besseren Weg.Unter Emacs würde ich das so machen (Cursor steht am Anfang der Zeile und es ist keine spezieller Modus eingeschaltet - es handelt sich also nur um Text):
Ich klicke(!) mit dem Cursor auf das y, drücke Strg+k, dann Strg+a, dann Strg+y dann <Leerzeichen>.
Klicken hab ich deshalb dazugeschrieben weil ich hier gerade an einem Thinkpad sitze und der Trackpoint mitten auf der Tastatur ein sehr effizienter Weg ist um den Cursor zu bewegen
Ansonsten, wenn ich nen Touchpad hätte würd ich es so machen:
Strg+f bis zum y dann wie oben, bei längeren Zeilen Alt+f bis ich in der Nähe bin dann Strg+f.Übrigens das Umgewöhnen auf eine andere Art als mit den Pfeilen zu navigieren geschieht sehr reibungslos, anfangs verwendet man ab und an auch mal noch gerne die Pfeiltasten, das mache ich selbst heute noch, wenn ich nur Text lese und Zeilenweise scrollen will. Es gibt übrigens keinerlei Verbote, du hast ja die Freiheit damit so zu arbeiten wie DU es willst. Das ist die Kernidee von Emacs.
-
nman schrieb:
Geht in Emacs natürlich auch, schneller bist Du aber mit der Funktion transpose-sexps, die standardmäßig auf Ctrl-Alt-T liegt
Oder
ESC t
, falls man nicht drei Tasten auf ein mal drücken möchte.
-
Um konsequent zu sein, war das mein einziger Beitrag zur konkreten Nutzung, schießlich werde ich auch kein Video veröffentlichen zur Demonstration, weil ich davon nichts habe, wenn ich andere davon überzeugen kann Emacs oder Vi einzusetzen..
Wobei ich mal eines sagen muss: seit ich Emacs nutze arbeite ich auch mit anderen Anwendungen effektiver, ich wusste vorher gar nicht, dass man Token/Wortweise Navigieren/Löschen kann. Seit ich aber Emacs nutze habe ich durch ausprobieren festgestellt, dass ich selbst hier in einer Opera TextArea mit Strg+Pfeiltasten wortweise navigieren kann (eher ineffektiv, da man dazu Strg+Pfeiltasten nutzen muss, aber das Löschen ganzer Wörter mit Strg+Backspace ist eine extrem feine Sache
-
Furry schrieb:
nman schrieb:
Geht in Emacs natürlich auch, schneller bist Du aber mit der Funktion transpose-sexps, die standardmäßig auf Ctrl-Alt-T liegt
Oder
ESC t
, falls man nicht drei Tasten auf ein mal drücken möchte.M-t (bzw. ESC t) ruft aber transpose-words auf, was in diesem Fall nicht sehr praktisch sein dürfte.
-
PC-Experte schrieb:
Um konsequent zu sein, war das mein einziger Beitrag zur konkreten Nutzung, schießlich werde ich auch kein Video veröffentlichen zur Demonstration, weil ich davon nichts habe, wenn ich andere davon überzeugen kann Emacs oder Vi einzusetzen..
Das stimmt doch nicht, denn mehr User = mehr Bugreports = mehr Code Fixes = höhere Stabiität und davon profitierst du dann.
-
nman schrieb:
Furry schrieb:
nman schrieb:
Geht in Emacs natürlich auch, schneller bist Du aber mit der Funktion transpose-sexps, die standardmäßig auf Ctrl-Alt-T liegt
Oder
ESC t
, falls man nicht drei Tasten auf ein mal drücken möchte.M-t (bzw. ESC t) ruft aber transpose-words auf, was in diesem Fall nicht sehr praktisch sein dürfte.
ups (_)>
-
@nman, cool das kannt ich ja noch gar nicht
Aber eine Frage bleibt mir noch was sind sexps? In der Doku finden sich zwar einige Funktionen die auf sexps arbeiten, aber ich hab beim Durchsuchen gerade keine Beschreibung von sexps gefunden.
-
sexps ist die Mehrzahl von sexp, was die Abkürzung für Symbolic Expression ist: http://en.wikipedia.org/wiki/S-expression
-
Erkenner der Editoren schrieb:
Das stimmt doch nicht, denn mehr User = mehr Bugreports = mehr Code Fixes = höhere Stabiität und davon profitierst du dann.
Emacs ist äußerst stabil, sogar die CVS-Version.
Und selbst wenn ein Tool instabil ist, verwende ich es lieber einfach nicht oder suche selbst Bugs, statt meine Zeit mit dem Dreh von Konvertierungsvideos zu verplempern.
-
nman schrieb:
Nein, Du sagst "X ist doof und jeder der X verwendet, macht das nur, weil er gerne leet sein möchte und ist obendrein abnormal". Dann sage ich "Du bist doof".
Machst Du übrigens sehr häufig so, falls es Dir noch nicht aufgefallen sein sollte. Ein einfaches "Ich halte X für schlecht weil […]" ohne Polemiken gegen Andersdenkende habe ich bei Dir bis jetzt kaum je gesehen.hmmm... da hast du nicht ganz unrecht. ich verteile verbale tiefschläge in richtung einer nebulösen masse und du, als repräsentant der vim-user, schlägst nur zurück. nun, da du diese trolltaktik durschschaut hast, wirst du sicherlich nicht mehr drauf reinfallen, oder?
-
fricky schrieb:
hmmm... da hast du nicht ganz unrecht. ich verteile verbale tiefschläge in richtung einer nebulösen masse und du, als repräsentant der vim-user, schlägst nur zurück. nun, da du diese trolltaktik durschschaut hast, wirst du sicherlich nicht mehr drauf reinfallen, oder?
Ich verwende sowohl Emacs, als auch vim und neuere Editoren wie Textmate.
Ich bin mir auch nicht ganz sicher, was man als "reinfallen" werten soll. Ärgern tue ich mich über Deine Posts ja ohnehin nicht, dazu sind sie mir viel zu egal. Auf Deine Posts werde ich hingegen wohl besser weiterhin nicht eingehen, auch wenn ich eine Zeit lang den Eindruck hatte, dass Du Dir ein bisschen Mühe gibst, Dich nicht allzu dämlich aufzuführen. Mittelfristig ist das einfach sinnvoller.
-
PC-Experte schrieb:
Aber man sollte nicht vergessen, dass sowohl Vim als auch Emacs keine IDE sind sondern Editoren und ihr auch viele Emacs/Vi(m) verfechter finden werdet die, wie ich, zum Programmieren durchaus auch eine IDE einsetzen da diese wiederum andere Vorteile mit sich bringt.
Wozu sollte ich dann Vim und Emacs lernen?
Für die kleinen winzigen Konfigurationsdateien in Linux lerne ich ganz bestimmt kein Vim und Emacs, da reicht auch nano.
Das muß sich also schon lohnen.
Ich dachte daher, wenn dann eigentlich nur zum Programmieren aber wenn Vim und Emacs nichtmal als IDE was taugt, dann kann man das natürlich vergessen.Geany eignet sich übrigens auch als kleine IDE.
Genau so, ansonsten könntest du, es ganz naiv machen indem du den cursor zum x bewegst, dann v drückst jetzt den Cursor nach rechts bewegst zu gewünschten Stelle drückst d, dann $ und dann p.
Das wäre Copy 'n Paste unter Vi(m) wie man es auch mit der Maus machen würde. Der geübte Vim User kennt jedoch sicher einen besseren Weg.Ich wollte wissen wie man es ohne Maus macht, dazu soll der Vim ja schließlich da sein.
-
nman schrieb:
Auf Deine Posts werde ich hingegen wohl besser weiterhin nicht eingehen, auch wenn ich eine Zeit lang den Eindruck hatte, dass Du Dir ein bisschen Mühe gibst, Dich nicht allzu dämlich aufzuführen.
hey, das wäre aber gemein! den tip, den du mir letztens gegeben hast (den mit debian), war wirklich gut. du musst eins wissen: ich bin ein gnadenloser lästerer. ich kann weder linux noch windows gut leiden. PCs sind für mich reine gebrauchsgegenstände und daher hasse ich alles, was mir die benutzung erschwert (z.b. sowas wie vim, oder wie letztens erst makefiles unter linux, die an gewisser stelle tabs statt spaces erwarten. da hätt ich wieder kotzen können). also nimms bitte nicht so schwer, wenn ich mal wieder ein paar böse sprüche raushaue.
-
Ich dachte daher, wenn dann eigentlich nur zum Programmieren aber wenn Vim und Emacs nichtmal als IDE was taugt, dann kann man das natürlich vergessen.
Nun, IDE steht ja für integrated development environment und diesen Begriff kann man ja nicht als alternative zu UltraEdit verwenden. Und die beiden Editoren, Vim und Emacs, kann man auch als IDEs so weit konfigurieren, dass man sie in der Konfiguration als vollständige IDEs bezeichnen kann. Aber dazu müsste man sich erstmal damit beschäftigen, sich dazu ein wenig bewegen und diese Programme, die am Anfang sicherlich nicht so "einfach" zu bedienen sind, kennenlernen.
So nebenbei, habe mich heute dazu entschlossen, zum ersten mal Visual Studio kennenzulernen, erstmal installiert - mindestens unglaubliche 1.7 GByte! Vielleicht habe ich ja auch falsch gemacht und na ja, ist ja eine IDE.sowas wie vim, oder wie letztens erst makefiles unter linux, die an gewisser stelle tabs statt spaces erwarten
Es gibt Editoren wie der genannte Vim, die bei den erwähnten Makefiles sich weigern, spaces einzufügen, dort wo tabs erwartet werden, und meistens fügen die dort automatisch tabs hinzu und das auch bevor man auf den Gedanken kommt, dort spaces einzufügen
-
x schrieb:
Aber dazu müsste man sich erstmal damit beschäftigen, sich dazu ein wenig bewegen und diese Programme, die am Anfang sicherlich nicht so "einfach" zu bedienen sind, kennenlernen.
es lohnt sich aber kaum, in das erlernen von vim energie und zeit zu investieren, weil es einfacher zu bedienende editoren gibt, die all das können, was man benbötigt.
[/quote]
Es gibt Editoren wie der genannte Vim, die bei den erwähnten Makefiles sich weigern, spaces einzufügen, dort wo tabs erwartet werden, und meistens fügen die dort automatisch tabs hinzu und das auch bevor man auf den Gedanken kommt, dort spaces einzufügen
[/quote]
aber niemand sagt einem, dass makefiles und vim wie arsch und eimer zusammengehören. woran erkennt vim überhaupt, dass es 'zwangs-tabs' einfügen soll? am dateinamen Makefile (mit grossem M)?
-
es lohnt sich aber kaum, in das erlernen von vim energie und zeit zu investieren, weil es einfacher zu bedienende editoren gibt, die all das können, was man benbötigt.
Ok, das ist sicherlich so, dass es einfacher zu bedienende Editoren gibt. Obwohl "einfach" relativ ist. Jetzt, wo ich recht lange Vim benutze, sagen würde, der Editor ist einfach zu benutzen - nach einer bestimmter Zeit erkennt man die Logik und die ist ja von Menschen für Menschen gemacht.
Wenn man diesen Gedanken verfolgt - "es gibt etwas einfacheres, wozu das andere" - dann könnte man genauso gut sagen, wozu das Einmaleins auswendig lernen, es gibt ja Taschenrechner.
Ich neige fast dazu, zu behaupten, die Funktionalitäten von Vim oder Emacs sind das Einmaleins - es gibt eine bestimmte Barriere, die zu überwinden ist, danach ist der PC plötzlich keine Schreibmachine mehr.
Die Behauptung, es gebe Editoren, die all das können, was man benötigt, würde ich so korrigieren: Es gibt Editoren, die all das können, was man im Augenblick weiss, denn sicherlich weiss man Augenblick später mehr, und die Editoren, die vorher Alleskönner waren, nun, nicht mehr mal befriedigend sind... Am Rande dazu, bei Vim ist das mir bisher noch nicht passiert.
-
x schrieb:
Wenn man diesen Gedanken verfolgt - "es gibt etwas einfacheres, wozu das andere" - dann könnte man genauso gut sagen, wozu das Einmaleins auswendig lernen, es gibt ja Taschenrechner.
ich weiss nicht, wozu man das 1*1 auswendig lernen soll. vielleicht macht man es als mentales training oder um ein gefühl für zahlen zu bekommen? jedenfalls hast du ein guten vergleich genannt. der unterschied zu vim ist jedoch: es gibt einen tieferen sinn, warum schulkinder das 1*1 lernen sollen. die bedienung von vim zu erlernen hat auschliesslich den zweck, vim bedienen zu können und mehr nicht. und selbstverständlich benutze ich lieber einen taschenrechener, weil für mich einen editor kein selbstzweck und auch kein übungsgerät für gehirnjogging ist.
-
fricky schrieb:
x schrieb:
Wenn man diesen Gedanken verfolgt - "es gibt etwas einfacheres, wozu das andere" - dann könnte man genauso gut sagen, wozu das Einmaleins auswendig lernen, es gibt ja Taschenrechner.
ich weiss nicht, wozu man das 1*1 auswendig lernen soll. vielleicht macht man es als mentales training oder um ein gefühl für zahlen zu bekommen? jedenfalls hast du ein guten vergleich genannt. der unterschied zu vim ist jedoch: es gibt einen tieferen sinn, warum schulkinder das 1*1 lernen sollen. die bedienung von vim zu erlernen hat auschliesslich den zweck, vim bedienen zu können und mehr nicht. und selbstverständlich benutze ich lieber einen taschenrechener, weil für mich einen editor kein selbstzweck und auch kein übungsgerät für gehirnjogging ist.
Seh ich nicht so, das 1*1 zu können ist im Alltag durchaus sinnvoll, denn meist hat man keinen Taschenrechner zur Hand (ok, die meisten Handys können rechnen), oder bis du die Zahlen eingetippt hast habe ich sie längst effizient(!) im Kopf berechnet. Und da hast du schon wieder die Parallele zu Vim/Emacs.
Die Aussage, dass Emacs keine IDE ist, ist übrigens so falsch, da die ganzen Language-Modes durchaus IDE-Typische Aufagben unterstützen wie Auto-Completion, zu Definition einer Methode springen, Kompilieren und danach Fehler anzeigen und einem erlauben zur entsprechenden Stelle zu springen, Debugging, Code-Generation (hängt stark vom entsprechenden Modus ab, JDEE kann es z.B.).
Einen GUI-Builder hab ich bisher noch nicht gesehen, aber würde mich nicht wundern, falls es sowas gäbeUnd Emacs hat natürlich auch einen integrierten IRC-Client und diverse Spiele für den Zeitvertreib :p
-
Erkenner der Editoren schrieb:
Ich dachte daher, wenn dann eigentlich nur zum Programmieren aber wenn Vim und Emacs nichtmal als IDE was taugt, dann kann man das natürlich vergessen.
Emacs ist eine ziemlich gute IDE für so gut wie alle Programmiersprachen. Nenne mir ein Feature, welches Emacs fehlt um eine gute IDE zu sein.
Ach ja und die grafische Oberfläche ist ja klicki-bunti. Da braucht man keine Anweisungen auswendig lernen.