all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Re: indirect assignement in lisp
@ 2006-08-31  4:22 help-gnu-emacs
  0 siblings, 0 replies; 4+ messages in thread
From: help-gnu-emacs @ 2006-08-31  4:22 UTC (permalink / raw)
  Cc: wenbinye


Thank you, this helped a lot, I made it work after reading the man mage you refering to and trying a few things.

vb

<wenbinye@gmail.com> wrote in message news:1156848695.348934.164620@p79g2000cwp.googlegroups.com...
> you can get a symbol value from symbol name like this:
> (symbol-value (intern-soft (format "marked-point-%d" (- cmd-key 48))))
> 
> For a detail documents, see Info elisp 8.3 Creating and Interning
> Symbols

^ permalink raw reply	[flat|nested] 4+ messages in thread
* indirect assignement in lisp
@ 2006-08-29  6:39 help-gnu-emacs
  0 siblings, 0 replies; 4+ messages in thread
From: help-gnu-emacs @ 2006-08-29  6:39 UTC (permalink / raw)
  Cc: vb


Hello all,

say I want to assign a variable a value.

The name of the variable being assigned should depend on the key pressed by the user. Say, if user hits key "M-1" the variable to assign should be `variable-1', and if the user hits "M-2", the variable to assign should be `variable-2'.

I just don't seem to be able to figure out how to make this indirect assignment (other than using a switch statement, of course!). This is a sample of what I've been trying to do:

====================================================
(defvar marked-point-1 nil )
(defvar marked-point-2 nil )

(defun set-mark-point ()
    (interactive)
    ( let ( point-name ( cmd-key last-command-char ) )
        ( if ( or ( < cmd-key 49 ) ( > cmd-key 50 ) )
            ( message "the key is %d how did you get here?" cmd-key )
            ( progn
              ( setq point-name ( concat "marked-point-" (number-to-string (- cmd-key 48 ))))
;              ( set (eval point-name) (list (current-buffer) (point) ) )
            )
        )
    )
)
===============================================================

as one can see, point-name gets assigned to the variable name depending on the key pressed, but how do I get that variable (marked-point-1 or marked-point-2 in this case) assigned a value. I tried many variants of the commented out statement, all to no avail.

Any help would be greatly appreciated,

regards,
Vb

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-08-31  4:22 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <mailman.5877.1156833550.9609.help-gnu-emacs@gnu.org>
2006-08-29 10:51 ` indirect assignement in lisp wenbinye
2006-08-29 15:46 ` Pascal Bourguignon
2006-08-31  4:22 help-gnu-emacs
  -- strict thread matches above, loose matches on Subject: below --
2006-08-29  6:39 help-gnu-emacs

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.