help-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Passing a list of symbols to function argument


From: Heime
Subject: Passing a list of symbols to function argument
Date: Fri, 29 Nov 2024 17:34:01 +0000

Why do I get 

   Wrong type argument: stringp, tabtrail

When using the call 

   (poalatuk '(72 tabtrail global))

to the function


(defun poalatuk (actm-seqr)

  (interactive
    (let* ( (colw (read-number "Line Column: " 72))
            (cseq '("extended" "disable" "tabtrail"))
            (rsel (completing-read "Selector: " cseq nil t "tabtrail"))
            (scope (completing-read "Scope: "
                     '("global" "local") nil t "local")) )

      ;; Pass a single list as argument
      (list (list colw rsel scope))) )

  ;; -------------------------------------------------------------

  (message "poalatuk: %S" actm-seqr)

  (let* ( (colw (nth 0 actm-seqr))              ;; Extract column width.
          (rsel (intern (nth 1 actm-seqr)))     ;; Extract mode selector.
          (scope (intern (nth 2 actm-seqr))) )  ;; Extract scope.

    (require 'whitespace)

    (if (eq scope 'global)
          (global-whitespace-mode 0)
      (whitespace-mode 0))

    (pcase rsel

      ('tabtrail
         (setq whitespace-line-column (or colw 72))
         (setq whitespace-style
                '(face tabs tab-mark trailing lines-char))
         (if (eq scope 'global)
               (global-whitespace-mode 1)
           (whitespace-mode 1)))

      ('extended
         (setq whitespace-line-column (or colw 72))
         (setq whitespace-style
                '(face tabs tab-mark indentation trailing lines-char
                  space-before-tab space-after-tab))
         (if (eq scope 'global)
               (global-whitespace-mode 1)
           (whitespace-mode 1)) )

      ('disable
         (if (eq scope 'global)
               (global-whitespace-mode 0)
           (whitespace-mode 0)) )) ))

I want to pass alist as an argument to the function such as
   
   (poalatuk '(72 tabtrail global))

And expecting that actm-seqr would be alist.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]