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

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

Re: Getting substring


From: Heime
Subject: Re: Getting substring
Date: Thu, 17 Aug 2023 03:16:08 +0000





Sent with Proton Mail secure email.

------- Original Message -------
On Thursday, August 17th, 2023 at 3:07 PM, Pierre Rouleau 
<prouleau001@gmail.com> wrote:


> Heime,
> 
> I think you need to learn a little bit of Emacs Lisp, or Lisp. Read a book
> on Lisp to get you going. Asking questions like you do won't help you
> much. You first need to understand LIsp and the way it deals with
> functions, the concepts.
> 
> LISPcraft from Robert Wilensky is old (1984) but small and it covers the
> basics which apply to Emacs Lisp. It's a nice read and the book is
> relatively small.
 
The error message (wrong-type-argument listp "bigoplus"), suggests that the 
code 
expects a list argument but is receiving a string instead.

Doing C-h f pcase says

(pcase EXP &rest CASES)

Evaluate EXP to get EXPVAL; try passing control to one of CASES.

Does not specify whether EXP is a string or whatever.

> On Wed, Aug 16, 2023 at 11:01 PM Heime heimeborgia@protonmail.com wrote:
> 
> > Sent with Proton Mail secure email.
> > 
> > ------- Original Message -------
> > On Thursday, August 17th, 2023 at 2:52 PM, Heime <
> > heimeborgia@protonmail.com> wrote:
> > 
> > > Sent with Proton Mail secure email.
> > > 
> > > ------- Original Message -------
> > > On Thursday, August 17th, 2023 at 2:33 PM, Pierre Rouleau
> > > prouleau001@gmail.com wrote:
> > > 
> > > > I mean,
> > > > Executing :
> > > > 
> > > > > (setq str "bigoplus ⨁︁")
> > > > > (message "%s TEST: " (car (split-string str)))
> > > > 
> > > > prints bigoplus.
> > > > 
> > > > but
> > > > 
> > > > (message "%s TEST: " (car (split-string grafm)))
> > > > 
> > > > will depend of what grafm holds.
> > > > 
> > > > On Wed, Aug 16, 2023 at 10:30 PM Pierre Rouleau prouleau001@gmail.com
> > > > 
> > > > wrote:
> > > > 
> > > > > Why does the following not print the first word?
> > > > > 
> > > > > > (message "%s TEST: " (car (split-string grafm)))
> > > > > 
> > > > > Are you sure it does not print it? It prints bigoplus for me.
> > > > > You can also look into the 'Message' buffer to see what was printed
> > > > > by
> > > > > the message function. - Pierre
> > > 
> > > I now realise my mistake of putting "%s" before "TEST". I was thus doing
> > > things
> > > correctly after all.
> > > 
> > > The command (car (split-string grafm)) also works if there are no spaces
> > > in
> > > 'grafm', it still returns the string as a first element in the list
> > > result.
> > 
> > Have started to wonder whether the following is wrong to do
> > 
> > (setq grafm "bigoplus ⨁︁")
> > (pcase (car (split-string grafm))
> > "bigoplus" ("Detected bigoplus"))
> > 
> > It is not a string.
> 
> 
> --
> /Pierre



reply via email to

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