One thing I find myself missing in emacs lisp is, surprisingly, a particular bit of list manipulation. I miss Python’s concise list slicing.
>>> mylist = ["foo", "bar", "baz", "qux", "frobnitz"]
>>> mylist[1:4]
['bar', 'baz', 'qux']
I see the functions butlast and nthcdr in the emacs documentation, which would give the same results from code like this:
(setq mylist '("foo" "bar" "baz" "qux" "frobnitz"))
(butlast (nthcdr 1 mylist) 1)
;; ("bar" "baz" "qux")
Is there a more concise way of getting a list slice than combining butlast and nthcdr?
Sure there is:
In modern Emacs, please note
clis deprecated see In Emacs, what does this error mean? "Warning: cl package required at runtime"