staging.inyokaproject.org

Die Anweisung "dired ..." funktioniert in emacs26 nicht mehr

Status: Gelöst | Ubuntu-Version: Ubuntu 20.04 (Focal Fossa)
Antworten |

Friedolin-K

Anmeldungsdatum:
27. Oktober 2015

Beiträge: 45

Hallo,

ich habe mich schon zwei Jahre lang nicht mehr im Forum gemeldet, da meine Ubuntu-Installation einwandfrei lief. Nun habe auf Ubuntu 20.04 aktualisiert und prompt gibt es Probleme:

Unter Ubuntu 20.04 musste ich emacs26 (über die Paketverwaltung) installieren (vorher war es emacs25). Seit 30 Jahren habe ich den Eintrag

(dired "directory")

in meinem Init-file .emacs von Emacs. Nun verursacht dieser Eintrag beim Starten von emacs26 die Fehlermeldung

"Warning (initialization): An error occurred while loading ‘/home/friedolin/.emacs’: Wrong type argument: stringp, nil"

Die gleiche Meldung kommt, wenn ich im Menü den Punkt "File/Open Directory" anklicke.

Für mich wird Emacs dadurch fast unbrauchbar, da es kein Fenster mehr gibt, das die Ordner anzeigt.

Ich habe versucht, wieder emacs25 (von der Seite "ppa.launchpad.net/kelleyk/emacs/ubuntu") zu installieren, was unter Ubuntu 20.04 offenbar nicht möglich ist. Emacs26 von dieser Seite zeigt den gleichen Fehler.

Weiß jemand Rat?

Friedolin

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 10978

Ich kann das Problem unter Ubuntu 20.04 nicht nachvollziehen.

Was sagt denn M-x describe-symbol dired bei dir? Hier sieht das mit emacs26 aus den Ubuntu-Quellen so aus:

dired is an interactive autoloaded compiled Lisp function in ‘dired.el’.

It is bound to C-x d, <menu-bar> <file> <dired>.

(dired DIRNAME &optional SWITCHES)

"Edit" directory DIRNAME--delete, rename, print, etc. some files in it.
Optional second argument SWITCHES specifies the ‘ls’ options used.
(Interactively, use a prefix argument to be able to specify SWITCHES.)

If DIRNAME is a string, Dired displays a list of files in DIRNAME (which
may also have shell wildcards appended to select certain files).

If DIRNAME is a cons, its first element is taken as the directory name
and the rest as an explicit list of files to make directory entries for.
In this case, SWITCHES are applied to each of the files separately, and
therefore switches that control the order of the files in the produced
listing have no effect.

You can flag files for deletion with d and then
delete them by typing x.
Type h after entering Dired for more info.

If DIRNAME is already in a Dired buffer, that buffer is used without refresh.

Schau auch mal, ob

ChickenLipsRfun2eat Team-Icon

Supporter
Avatar von ChickenLipsRfun2eat

Anmeldungsdatum:
6. Dezember 2009

Beiträge: 12070

Hallo!

Hast du ggf. das Snap verpasst bekommen? Unter Ubuntu sind die Möglichkeiten sehr vielfältig, Emacs zu installieren. (siehe Emacs/Installation). Eventuell gibt es auch einen Mischmasch zwischen systemweiten Paketen und den lokalen.

Prüfen kannst du das mit snap list und dpkg -l | grep -i emacs.

Friedolin-K

(Themenstarter)

Anmeldungsdatum:
27. Oktober 2015

Beiträge: 45

Hallo seahawk1986,

ich glaube, du bist 46 Jahre jünger als ich.

seahawk1986 schrieb:

Schau auch mal, ob

  • dired wie erwartet funktioniert, wenn du emacs ohne selbst angepasste Konfigurationsdatei startest (also z.B. emacs -q)

Das wars! Der unschuldige Eintrag

(add-hook 'dired-load-hook (function (lambda () (load "dired-x") (dired-omit-mode t) )))

war schuld! Herzlichen Dank! Ich habe keine Ahnung mehr, warum ich diesen Eintrag vor vielen Jahren in .emacs einfügte, auch weiß ich nicht nicht mehr, was er bedeutete.

ChickenLipsRfun2eat schrieb:

Hast du ggf. das Snap verpasst bekommen?

Ja, hatte ich, aber das snap-emacs habe ich gleich wieder deinstalliert.

Ich hatte früher einmal die snap-Version von evince, die Probleme mit den fonts hatte und die ich gleich wieder aus dem System geworfen hatte. Aber das gehört nicht hierher.

Viele Grüße Friedolin

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 10978

Friedolin-K schrieb:

Das wars! Der unschuldige Eintrag

(add-hook 'dired-load-hook 
          (function (lambda ()
                      (load "dired-x")
                      (dired-omit-mode t)
                      )))

war schuld! Herzlichen Dank! Ich habe keine Ahnung mehr, warum ich diesen Eintrag vor vielen Jahren in .emacs einfügte, auch weiß ich nicht nicht mehr, was er bedeutete.

Ich denke das sollte dazu dienen unwichtige Dateien aus den dired-Listings zu entfernen, im Emacs-Wiki taucht das in leicht veränderter Form auf: https://www.emacswiki.org/emacs/DiredOmitMode

Friedolin-K

(Themenstarter)

Anmeldungsdatum:
27. Oktober 2015

Beiträge: 45

seahawk1986 schrieb:

Friedolin-K schrieb:

Das wars! Der unschuldige Eintrag

(add-hook 'dired-load-hook 
          (function (lambda ()
                      (load "dired-x")
                      (dired-omit-mode t)
                      )))
> 

war schuld!

Ich denke das sollte dazu dienen unwichtige Dateien aus den dired-Listings zu entfernen, im Emacs-Wiki taucht das in leicht veränderter Form auf: https://www.emacswiki.org/emacs/DiredOmitMode

Das ist richtig. Nachdem ich diesen Eintrag deaktiviert hatte, konnte ich mit der F1 Taste nicht mehr den Omit-Modus ein- und ausschalten:

(global-set-key [f1] 'dired-omit-mode)

Das fehlte mir schon. Nachdem ich den Eintrag nun durch die veränderte Form im Emacs-Wiki (danke für den Link!) ersetzt hatte, funktioniert F1 wieder. Nach diesem kurzen Besuch im Forum bin ich wieder rundum zufrieden und versöhnt mit Ubuntu 20.04.

Viele Grüße Friedolin

Friedolin-K

(Themenstarter)

Anmeldungsdatum:
27. Oktober 2015

Beiträge: 45

Hallo!

Ich habe doch noch eine Frage:

Soeben versuchte ich, auctex zu installieren. Ich erfuhr, dass auctex veraltet sei und nur mit emecs24 und darunter funktioniert. Gibt es einen Ersatz für dieses vorzügliche Programm?

Gruß Friedolin

seahawk1986

Anmeldungsdatum:
27. Oktober 2006

Beiträge: 10978

Friedolin-K schrieb:

Ich erfuhr, dass auctex veraltet sei und nur mit emecs24 und darunter funktioniert.

Wo hast du das erfahren? Ich hatte keine Probleme das für Emacs 26 über elpa zu installieren, vgl. https://www.gnu.org/software/auctex/download.html

Friedolin-K

(Themenstarter)

Anmeldungsdatum:
27. Oktober 2015

Beiträge: 45

Ich hatte angeklickt: Options/Manage Emacs Packages

und dann auctex angeklickt.

Da kam der Hinweis: auctex sei "obsolet".

Ich installierte nicht weiter. Eigenartig: Nun steht trotzdem auf der Package-Seite: auctex sei installiert, obwohl nichts (oder nicht viel) passiert ist.

Inzwischen habe ich auf der gnu-auctex Seite gefunden, dass auctex überhaupt nicht veraltet ist.

Gruß Friedolin

Friedolin-K

(Themenstarter)

Anmeldungsdatum:
27. Oktober 2015

Beiträge: 45

Auch ich habe nun auctex über elpa installiert und hatte keine Probleme:

M-x package-reinstall auctex

installierte auctex vollständig ohne zu meckern, dass auctex veraltet sei.

Alles funktioniert.

Gruß Friedolin

Antworten |