Dringend: emacs richtig einstellen



  • Daniel E. schrieb:

    DrGreenthumb schrieb:

    m-x shell ist bei mir auch unbenutzbar, wegen dieser unausgewerteten escapesequenzen 😕

    Eigentlich nimmt man eh eshell.

    Ah, danke.



  • 😮 M-x eshell 😮

    Oh mann, das muss man aber auch wissen oder - SUPER, Danke!!

    (wieso gehts dann aber eigentlich unter ner Fertig Distri wie Redhat auch mit M-x shell ohne Escapesequencen???)



  • Corcovado schrieb:

    😮 M-x eshell 😮

    Oh mann, das muss man aber auch wissen oder

    Nö, stünde auch in der Doku :).

    (wieso gehts dann aber eigentlich unter ner Fertig Distri wie Redhat auch mit M-x shell ohne Escapesequencen???)

    Wie gesagt, man kann dem Emacs das bestimmt lernen oder sowas. Aber eshell ist eine hübsche Shell mit ein paar eigenen Erweiterungen und ganz benutzbar für den Kleinkram. Mehrere GB Dateien zu kopieren legt dann allerdings den Emacs für die besagte Zeit lahm, darum macht man das normalerweise nicht.

    Bei mir funktioniert shell übrigens korrekt, aber ich habe auch keine Farbtags oder so in meinem Prompt, nur "\u@\h:\w \$". M-x ansi-term könnte vielleicht auch noch interessant sein, hmm. Aber eigentlich kommt man mit eshell gut durch ...



  • Corcovado schrieb:

    😮 M-x eshell 😮

    Irgend wie lern ich jeden Monat ein weiteres cooles Detail am Emacs kennen. Ich werd wohl auch bald auf GNUS umspringen.

    Wir könnten auch ein wenig Emacs Lisp austauschen, wenn wir schon dabei sind. Hier sind zwei skripte von mir

    ;; Compile Buffer:
    (setq compile-string-alist nil)
    
    (defun compile-buffer-string (cmd)
      (let ((compile-str (cdr (assoc (buffer-name) compile-string-alist))))
        (unless compile-str
          (setq compile-str (concat cmd " " (buffer-file-name)))
          (setq compile-string-alist
    	    (append compile-string-alist
    		    (list (cons (buffer-name) compile-str)))))
        (setq compile-str (read-from-minibuffer "Compile: " compile-str))
        (compile compile-str)
        (setcdr (assoc (buffer-name) compile-string-alist) compile-str)))
    
    (defun compile-buffer ()
      (interactive)
      (if (file-exists-p "Makefile")
          (compile-buffer-string "make -k")
        (cond
         ((eq major-mode 'c++-mode)
          (compile-buffer-string "g++ -Wall -W -std=c++98 -g"))
         ((eq major-mode 'c-mode)
          (compile-buffer-string "gcc -Wall -W -std=c99 -g"))
         (t (compile-buffer-string "")))))
    

    dient dazu die Kompilierfunktion ein wenig angenehmer zu machen, in dem man einfach den Compiler aufrufen kann, wenn keine Makefile existiert. Der string wird gespeichert. Mit

    ;; F9 -> compile-buffer
    (global-set-key '[f9] 'compile-buffer)
    

    kann man das auf F9 setzen.

    folgender Code ist ein Workarround, wenn man die Datei auf die ein Bufferzeigt umbenennen will.

    ;; Rename File
    (defun rename-buffer-file (new-filename) ;;file-name-directory
      (interactive "FRename to: ")
      (let ((filename (buffer-file-name)))
        (when (buffer-modified-p)
          (save-buffer))
        (kill-buffer (buffer-name))
        (rename-file filename new-filename)
        (switch-to-buffer (find-file new-filename))))
    


  • Daniel E. schrieb:

    Dito. XEmacs<->Emacs ...

    Du nutzt den XEmacs? Wieso, hat der irgend welche Vorteile oder liegt das an einer zufälligen Begebenheit?



  • Ich muss mir echt mal die Doku vorknuepfen...

    Wo Ihr gerade anfangt den Thread auszuweiten, wie sieht das mit so schnickschnack aus wie Codeverfollstaendigung, gibt es sowas - kann man das mit Scripten etwa ergaenzen (ich hab KEINE Ahnung wie sowas eigentlich bei so Umgebungen laeuft - bitte nich schlagen, falls die Antwort offensichtlich ist)?

    Wo muss man solche Scripten (wie obiges) eigentlich abspeichern?

    Wo stellt man denn eigentlich die Farben, Tabulatorenweite etc ein, gibt es da nich ne config - oder kann ich mich dazu in den Menus mal umschauen?



  • Für Codecompletion und weitere IDE-Features solltest du dir Cedet angucken.

    Tabs und Farben sollte in der Doku weiter erklärt werden. Hier kommt es einem eben zu gute, dass der Emacs eigentlich ein Lisp Interpreter mit einem Editor ist. Man kann da alles dran einstellen 🙂



  • OK - Danke, ich denke dass Codevervollstaendigung zwar durchaus praktisch ist, es jedoch auch ohne geht..

    Mein momentanes Problem ist, dass ich in Java entwickeln soll, aber mir in der Arbeit aber nur ein Pentium 2, 450 MHz mit WinXP zur verfuegung gestellt wurde. Nachdem ich zwei Wochen lang alle zwei Tage das System neu installieren durfte und kein anderes Windows98 da war, hab ich nun seit gewisser Zeit eben ein Debian drauf, was seitdem der Kernel entsprechend kompiliert wurde, auch problemlos laeuft, jedoch merkt man bei so Umgebungen wie Eclipse schon, dass es vorne und hinten an Performance fehlt und da ich unter Emacs schon mal entwickelt hatte und damit sehr positive Erfahrungen gemacht hatte, wollte ich nun wieder auf Emacs umsteigen. Wie sieht dieser Performance/RAM Bedarf bei CEDET aus?
    Ist es ueberhaupt auch fuer Java geeignet?

    Ist das ratsam fuer mich oder doch eher vergleichbar mit Eclipse (CEDET sieht mir sehr funktionell und abgespeckt aus, was ich sehr begruesse)?

    Ist CEDET ein eigenstaendiges Projekt oder hab ich das richtig verstanden, dass es auf einem bereits vorhandenen Emacs aufbaut?

    Wie sieht es aus mit Woerter ersetzen in einem File oder zB einem ganzen Projekt bei Emacs - gibts das irgendwo oder sollte man sich da ein Lisp Script schreiben (geht das?)?

    Gibt es so Features wie "Getter/Setter einfuegen" oder koennte man sich soetwas zB auch in Lisp schreiben?

    (Ist Lisp schwer? Kennt wer ein nicht allzu langes brauchbares Tutorial)?



  • Daniel E. schrieb:

    bei mir hat auch schon (mouse-wheel-mode t) ausgereicht.

    Dito. XEmacs<->Emacs ...

    Hm, hab ich das jetzt falsch verstanden?
    mouse-wheel-mode hat mein GNU-Emacs nämlich durchaus auch.

    Corcovado: Lies vielleicht mal Teile der Doku, ich habe das Gefühl, dass Du keine genaue Vorstellung davon hast, was Emacs normalerweise tut.
    (Textersetzung zB ganz einfach mit replace-string.)



  • nman schrieb:

    Daniel E. schrieb:

    bei mir hat auch schon (mouse-wheel-mode t) ausgereicht.

    Dito. XEmacs<->Emacs ...

    Hm, hab ich das jetzt falsch verstanden?

    Ich habe da einfach Unfug geschrieben. Bitte den Teil streichen.



  • Corcovado: Lies vielleicht mal Teile der Doku, ich habe das Gefühl, dass Du keine genaue Vorstellung davon hast, was Emacs normalerweise tut.
    (Textersetzung zB ganz einfach mit replace-string.)

    Das glaube ich auch immer mehr!!! Allerdings hab ich es nicht geschafft die Doku von heute Vormittag auf Nachmittag durchzuackern - ich hoffe es wird mir nicht uebel genommen und ich werde nun die Doku richtig durchlesen und sinnigerweise dann auch erst meine weiteren Fragen stellen. Ich hab den Emacs vorher nur von Zeit zu Zeit als Editor benutzt, da brauchte ich keine grossen Funktionalitaeten.

    Was den Thread anbelangt so habe ich meine Fragen (bis auf M-x shell, wobei ich nun aber eshell benutzen werde) beantwortet bekommen. - DANKE, ich denke Ihr habt mir jetz auch erst mal die Augen geoeffnet, was alles in dem Ding noch so drin steckt !!! 🙂


Anmelden zum Antworten