Frage zu Emacs-Lisp: Funktionsaufruf

  • Hallo!

    Kennt sich hier jemand mit Emacs-LISP aus? Ich möchte gleich dazusagen, ich habe von funktionaler Programmierung oder LISP 0 Ahnung...

    ich möchte in meiner .emacs definieren, dass durch drehen des mausrades gescrollt wird:

    (global-set-key [mouse-4] 'scroll-down)

    soweit so gut...

    wie kann ich jetzt der funktion scroll-down das argument 10 übergeben?

    (global-set-key [mouse-4] 'scroll-down 10)
    (global-set-key [mouse-4] '(scroll-down 10))
    (global-set-key [mouse-4] ('scroll-down 10))
    etc.
    funktionieren nicht.

    Vielleicht kann mir da jemand auf die Sprünge helfen?

    Lg Michi

  • Was du erreichen willst, ist IMHO das:

    (global-set-key [mouse-4] (lambda () (interactive) (scroll-down 10)))

    Damit bindest du ein anonymes Funktional ohne Parameter an [mouse-4]. Was auch dazugehört, ist der (interactive) call.

    BTW, im GNU/Emacs gibt's eine spezielle Funktion dafür:

    ;; scroll with wheel-mice
    (mouse-wheel-mode t)

    Für eine Beispielconfig kannst du http://bigfish.ull.at/~djmaecki/emacs.en.html anschaun.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!