Emacs (weitgehend) ohne X11

rubricanis

Homo ludens
Um mir emacs auf dem terminal anzusehen habe ich emacs24 mal per pkg installiert. Da wurden dann gleich jede Menge X11 sachen mit installiert.Letztlich macht mich das nich ärmer, aber gefallen tut mir sowas nicht.

Laut emacs-wiki geht es nicht ohne (eigentlich ziemlich schwach sowas) aber man kann das wohl auf folgendes begrenzen:
ibc6-dev libjpeg62-dev libncurses5-dev libpng-dev libtiff3g-dev libungif4-dev xaw3dg-dev zlib1g-dev xlibs-dev

Daher meine fFage: hat schon einmal jemand eine abgespekte Version gebaut und wenn ja, was ist da zu tun ?

Noch ein weiter Frage: Wenn ich das richtig verstanden habe sind die emacs-dev durchaus stabile Versionen. Benutzt ihr die oder die normalen ?

Oder ist emacs inzwischen ganz out ?

Peter
 
Um mir emacs auf dem terminal anzusehen […]

Du schwimmst schlicht gegen den Strom. Das Terminal hat im Emacs zu laufen – nicht umgekehrt.

Laut emacs-wiki geht es nicht ohne (eigentlich ziemlich schwach sowas)

Wer gegen den Strom schwimmt, sollte sich nicht wundern, dass es schwieriger ist.

Aber ganz im Ernst: Wenn Du einen Editor suchst, den Du für einzelne Dateien in der Konsole öffnest, editierst und dann wieder schließt, bist Du wahrscheinlich mit Vi oder anderen besser bedient. Ich hatte Emacs auch zuerst so benutzt, aber es ist nicht optimal. Betrachte ihn eher als ein auf Textverarbeitung (im weitesten Sinne) optimiertes Betriebssystem oder eine Lispmaschine für Arme. Es gibt durchaus Möglichkeiten, Dateien im Emacs schnell von einem Terminal aus zu öffnen (emacsclient), aber ihn in einem Terminal laufen zu lassen ist, soweit ich es sagen kann und es mag Ausnahmen geben, schlicht nicht üblich.
 
Du schwimmst schlicht gegen den Strom. Das Terminal hat im Emacs zu laufen – nicht umgekehrt..
Hmmm, emacs auf meiner Win7 Box und damit die Dateien a.d. Server bearbeiten: geht das und macht das Sinn?
Aber ganz im Ernst: Wenn Du einen Editor suchst, den Du für einzelne Dateien in der Konsole öffnest, editierst und dann wieder schließt, bist Du wahrscheinlich mit Vi oder anderen besser bedient. Ich hatte Emacs auch zuerst so benutzt, aber es ist nicht optimal. Betrachte ihn eher als ein auf Textverarbeitung (im weitesten Sinne) optimiertes Betriebssystem oder eine Lispmaschine für Arme. Es gibt durchaus Möglichkeiten, Dateien im Emacs schnell von einem Terminal aus zu öffnen (emacsclient), aber ihn in einem Terminal laufen zu lassen ist, soweit ich es sagen kann und es mag Ausnahmen geben, schlicht nicht üblich.
Ich habe mir mal einige Alternative kurz angeschaut aber das überzeugt mich nicht wirklich. Dann werde ich wohl bei Notepad++ bleiben was gut funktioniert. Ich hätte nur gerne einen Editor für mehrere Dateien (a.d. Server) der eine Konsole enthält. Mal schauen, vielleicht gibt es ja sowas.

Ich habe früher auch IDEs benutzt, bin aber davon abgekommen. Irgendwo hakt es da immer, zumindest wenn man auch mal quer zum Strom schwimmt...

Peter
 
Ich denke ich habe eine Lösung für Win Multi-Tab Editor + Console gefunden. Für Notepad++ gibt es ein Plugin NppExec mit dem man andere Console Apllicationen steuern kann, also auch Putty. Das Ganze scheint ein wenig kompliziert zu initialisieren zu sein, ist aber wohl machbar. Wir werden sehen ...

Peter
 
Du schriebst, dass Du eine gute Lösung gefunden hast, aber ich werde trotzdem kurz auf Deine Frage eingehen.

Hmmm, emacs auf meiner Win7 Box und damit die Dateien a.d. Server bearbeiten: geht das und macht das Sinn?

Das ist absolut üblich und klappt sehr gut. Schau dir mal Tramp an (C-h i (tramp) RET). Damit kanst Du über SSH, FTP etc. bequem Dateien bearbeiten, die auf anderen Rechnern liegen. (Ich habe im Moment kein Windows zur Hand, aber das funktionierte für mich auch mit plink.) Es ist natürlich auch eine (an die Zsh angelehnte) Shell eingebaut, die auch gut unter Windows funktioniert (M-x eshell RET). Die reicht für die gängigsten Anwendungen und hat den Vorteil, dass du ganz transparent auch in über Tramp verbundene Rechner wechseln kannst. (Z.B. funktionieren Sachen wie cd /ssh:host: oder cp ~/baz /shh:host:/foo/bar/. Aber natürlich kannst Du auch eine externe Shell Deiner Wahl im Emacs laufen lassen (z.B. mit M-x term RET).

Ich habe früher auch IDEs benutzt, bin aber davon abgekommen. Irgendwo hakt es da immer, zumindest wenn man auch mal quer zum Strom schwimmt...

An sich ist Emacs eine der konfigurierfreundlichsten Umgebungen, die ich kenne. Alles ist sehr gut und zugänglich dokumentiert und der Quellcode zu so ziemlich allem ist nur einen Befehl entfernt (M-x find-function …). Du kannst so gut wie alles zur Laufzeit nach Belieben ändern und ausprobieren. So gut wie alles sage ich, weil das so nur für die in Emacs Lisp geschriebene Funktionalität gilt. Das ist zwar der weitaus größte Teil (nur die unterste Ebene ist in C geschrieben), aber das, wonach Du oben fragst, gehört leider nicht dazu. Ich nehme an, dass es irgendwie ginge, aber so wenig Bedarf danach besteht, dass es nicht von Hause aus unterstützt wird.

Das Nette ist unter Anderem, dass man überall zu Hause ist, wo Emacs läuft. Mir ist fast egal, auf welchem Betriebssystem mein Betriebssystem läuft. Aber es ist natürlich nicht für jeden was und die generelle Umgangsweise mit Emacs erinnert tatsächlich eher an Lispmaschinen als an Unix oder vielleicht eine Mischung zwischen beidem.
 
Zuletzt bearbeitet:
...Das Nette ist unter Anderem, dass man überall zu Hause ist, wo Emacs läuft. Mir ist fast egal, auf welchem Betriebssystem mein Betriebssystem läuft. Aber es ist natürlich nicht für jeden was und die generelle Umgangsweise mit Emacs erinnert tatsächlich eher an Lispmaschinen als an Unix oder vielleicht eine Mischung zwischen beidem.
Zunächst einmal vielen Dank für deine Ausführungen. Nur weil ich jetzt eine adequate Lösung für ein aktuelles Problem gefunden habe, heißt das ja nicht dass das Thema emacs damit vom Tisch ist. Wenn ich mich erst einmal in FreeBSD eingerichtet habe - was noch etwas dauern wird -, werde ich mich wieder damit befassen da der emacs ja eine ganze Menge mehr ist als nur eine IDE. Insbesondere der o.G. Aspekt scheint mir wichtig da für mich das OS eher Mittel zum Zweck ist und eine gewisse Unabhängigkeit von der Platform seine Vorzüge hat. Und zur Abwechslung 'nen büschen Lisp kann ja nicht schaden...

Kannst du noch kurz etwas dazu sagen ob die Unterscheidung emacs/xemacs irgendwelche Relevanz hat und wenn ja welche.

Peter
 
Gern geschehen. Um es kurz zu machen: XEmacs ist tot. Er wurde seinerzeit vom GNU Emacs geforkt – was für böses Blut sorgte – und hatte zeitweise in manchen Punkten die Nase vorn. Ein nettes Feature, das GNU Emacs bis heute nicht hat, war beispielsweise die Möglichkeit, ihn auch über in C geschriebene Module bequem erweitern zu können. Heutzutage führt eigentlich kein Weg am GNU Emacs vorbei. Wenn Du Dich irgendwann damit beschäftigen solltest und weitere Fragen aufkommen, helfe ich Dir gerne weiter.

Eines noch kurz zum Thema IDEs: Was moderne IDEs machen oder machen sollen (unabhängig davon, ob man die Zielsetzung teilt), machen sie oft sehr gut. Über das IntelliSense in VS zum Beispiel kann man nun wirklich nicht meckern, denke ich. Es kann durchaus sein, dass Du in einzelnen Punkten im Emacs ein schlechteres Ergebnis hast, oder mehr Konfigurationsaufwand betreiben musst, um zum gleichen Ergebnis zu kommen, als in einer auf diesen Anwendungsfall optimierten IDE. Das kommt auf die jeweilige Sprache und die für sie angebotenen Pakete an. In der Regel wird man aber sehr gut versorgt. Der (für mich riesige) Vorteil ist, dass Du wirklich alles integrieren kannst, was im weitesten Sinne mit Textverarbeitung zu tun hat – das ist eine ganze Menge – und wie (relativ) einfach Emacs es einem macht, ihn sich auf den Leib zu schneidern. Jede Sprache, die ich verwende, fast jedes Programm, das ich verwende (bis auf den Browser – meistens jedenfalls) ist, was die UI angeht, auf mich optimiert und unifiziert.
 
Zuletzt bearbeitet:
Eines noch kurz zum Thema IDEs: Was moderne IDEs machen oder machen sollen (unabhängig davon, ob man die Zielsetzung teilt), machen sie oft sehr gut.
Yep, das sehe ich auch so! Und wenn ich etwas nur für Win oder Mac machen wollte, gäbe es da keine Frage. Etwas anderes ist es wenn man portabel programmieren will oder etwas abseitige Sprachen verwendet. Klar geht das (nahezu) immer irgendwie, aber dann klemmt es doch schnell gewaltig oder man muss sich tief in die IDE einarbeiten und beim nächsten Projekt/Platform paßt es dann wieder nicht. Ich habe lange Zeit Eclipse verwendet, bin aber letztlich doch bei einem einfachen Text-Editor mit ein wenig syntakt support + tools gelandet und komme damit recht gut zurecht, YMMV.

Aber das wird langsam OT ...

Peter
 
Um mir emacs auf dem terminal anzusehen habe ich emacs24 mal per pkg installiert. Da wurden dann gleich jede Menge X11 sachen mit installiert.Letztlich macht mich das nich ärmer, aber gefallen tut mir sowas nicht.

Laut emacs-wiki geht es nicht ohne (eigentlich ziemlich schwach sowas) aber man kann das wohl auf folgendes begrenzen:
ibc6-dev libjpeg62-dev libncurses5-dev libpng-dev libtiff3g-dev libungif4-dev xaw3dg-dev zlib1g-dev xlibs-dev

Daher meine fFage: hat schon einmal jemand eine abgespekte Version gebaut und wenn ja, was ist da zu tun ?

Installier einfach das Paket emacs-nox11. Da ist der ganze X11 Kram nicht dabei.

Code:
root>pkg install emacs-nox11
 
Danke für Info namor ! Habe ich schon istalliert und werde ich mir demnächst mal näher anschauen.

Peter
 
Installier einfach das Paket emacs-nox11. Da ist der ganze X11 Kram nicht dabei.

Code:
root>pkg install emacs-nox11

Witzig – das ist genau das Paket, das ich früher unter FreeBSD benutzt hatte. Hatte ich vollkommen vergessen. Dabei hatte ich mich beim Lesen der Frage noch gewundert, dass es unter FreeBSD kein solches Paket gibt. Da hätte ich mir die ganzen Erklärungen, dass sowieso so gut wie niemand Emacs im Terminal laufen lässt, wenn er nicht dazu gezwungen ist, gut sparen können. Fürs nächste Mal merke ichs mir aber.
 
Na ja, ich hatte mit pkg search nach emacs gesucht und da erschien dann eine ganze Latte von allerlei Paketen und nox11 ist mir dabei nicht aufgefallen bzw dachte das das etwas mit x11 zu tun hat. Nächstes mal schaue ich genauer :rolleyes:

Auf win7 habe ich emacs problemlos installiert aber jetzt benutze ich erst mal nox11 und gehe langsam durch das Tutorial duch. Gibt es Pakete die ich in jedem Falle installieren sollte ?
 
Gibt es Pakete die ich in jedem Falle installieren sollte ?

Ohje – Die Frage ist ohne weitere Einschränkungen schwierig zu beantworten. Um nur mal wahllos ein paar mitgelieferte Sachen zu erwähnen, die wahrscheinlich einige aktivieren: Tramp, Ido, desktop-save-mode, ibuffer, winner-mode, etc. Unterstützung für VCS ist zwar auch eingebaut, aber speziell für Git installieren sich viele Magit. (Wissen, dass es sowas wie Eshell, Ielm und Dired gibt, schadet sicher auch nicht.) Jedenfalls gibt es so vieles, dass es mir sehr schwerfällt, darauf zu antworten, ohne gleich einen Riesenbeitrag zu schreiben. Würde ich jetzt z.B. Org-mode empfehlen, auf den viele schwören und der sicher auch erwähnenswert ist, könnte es sein, dass Du gar nichts damit anfangen kannst. Ansonsten hängt natürlich auch viel von den verwendeten Sprachen ab

Sieh Dich auf jeden Fall im EmacsWiki um, schau Dir vielleicht mal Blogs wie den von Sacha Chua an oder auch http://www.masteringemacs.org. Neuere Konzepte und Experimente finden sich oft auf http://emacsrocks.com. Es ist auch sehr interessant, sich die Konfigurationsdateien anderer anzusehen.

Vor allem nicht vergessen, dass sehr gute Dokumentation eingebaut ist. Vergiss nie C-h c, C-h k, C-h w, C-h m usw. Nett ist auch M-x emacs-index-search, M-x elisp-index-search und zu wissen, dass neben der Referenz auch ein Buch zum Einstieg in Emacs Lisp eingebaut ist (C-h i g (eintr) RET).

Mit dem Tutorial bist Du jedenfalls erstmal gut beraten.
 
Zuletzt bearbeitet:
Sorry, das war eine dumme Frage! Als Anfänger leidet man eh unter so etwas wie information overflow und ich muss langsam machen und habe zunächst mit dem System genug zu tun. Emacs kommt erst an zweiter oder dritter Stelle und da muss ich mich auch erst langsam reinfinden. Thanks anyway!
 
Gern geschehen.

Ja, ich würde mir da auch einfach Zeit nehmen. Ich benutze Emacs jetzt seit fast zehn Jahren und lerne immer noch viel Neues. Das Tutorial ist für den Anfang erstmal genau das Richtige. Was ich persönlich fast immer empfehle, wäre Ido. (Und Tramp, aber das hast Du schon weiter oben kurz kennengelernt.) Ido würde ich mir auch als Anfänger schon anschauen, weil es das Wechseln von Buffern enorm erleichtert und verbessert – also etwas, das man wirklich andauernd macht. Ansonsten je nach Bedarf suchen und sich über das freuen, worüber man stolpert.

Ansonsten viel Spaß!
 
Zurück
Oben