karl@dartvax.UUCP (S. Delage.) (06/25/84)
Recently someone asked about getting line numbers in Emacs. ( I don't recall who. ) Someone else ( ditto ) answered for CCA Emacs, which has a variable. Gosling Emacs doesn't, but at the end of this article is a function that computes the current line. ( Albeit slowly. ) I have two questions, as well. 1. Is it possible to bind-to-key not just a function invocation but a function invocation with argument? For example, (bind-to-key "function-name first-arg" "\^C") 2. Is it possible to input a variable-name from the keyboard ( via get-tty-variable, most likely. ) and then use that variable's value somehow? Something like (setq var (get-tty-variable "Variable name? ") ) gives the string he inputs, so that var = "variable-name". What I want is for var to be the variable variable-name, which has some other value. Thanks for your consideration. karl@dartmouth = {decvax,cornell,astrovax,uvm-gen,colby}!dartvax!colby ; This returns the number indicating what line dot is on in the ; current buffer. (defun (current-line-number line (save-excursion (set-mark) (beginning-of-file) (narrow-region) ; Now we're only looking at the first N lines. (setq line 1) (end-of-line) (while (! (eobp)) (setq line (+ line 1)) (next-line) ) ) (widen-region) ; Put back the rest of the file. line ) )
chris@umcp-cs.UUCP (06/29/84)
* From: karl@dartvax.UUCP Recently someone asked about getting line numbers in Emacs. ... If you mean ``on the display'', I have (after many requests) put line numbers into the Emacs window code. It was surprisingly easy to do for #85, and surprisingly harder to do for #264 (which has fancier optimization). This should appear at UniPress sometime in the near future. (What will happen after that is anyone's guess ...) I have two questions, as well. 1. Is it possible to bind-to-key not just a function invocation but a function invocation with argument? For example, (bind-to-key "function-name first-arg" "\^C") No. The solution I generally use is to bind the key to a helper function that calls the main function after getting the argument(s). 2. Is it possible to input a variable-name from the keyboard ( via get-tty-variable, most likely. ) and then use that variable's value somehow? Sure: (defun (print-variable &v (setq &v (get-tty-variable ": print ")) (message &v " => " (execute-mlisp-line &v)))) (execute-mlisp-line) is the MLisp equivalent of a real ``eval'' function. -- In-Real-Life: Chris Torek, Univ of MD Comp Sci (301) 454-7690 UUCP: {seismo,allegra,brl-bmd}!umcp-cs!chris CSNet: chris@umcp-cs ARPA: chris@maryland