Questions tagged [iteration]
The iteration tag has no usage guidance.
17
questions
6
votes
1answer
2k views
How to break out of a dolist loop?
Is it possible to break out of a dolist loop? if not, are there alternatives to dolist that don't involve a while loop and indexing a list?
6
votes
1answer
114 views
How do I properly populate a function by iterating over an alist?
I've defined a function that is supposed to iterate over an alist, and use the CAR and CDR of each element in the list to populate the regexp in re-search-forward and the replacement string in replace-...
4
votes
3answers
136 views
idiomatic way to lexically scope variables in a cl-loop body
Here is some asynchronous code in a cl-loop:
;;; foo.el --- -*- lexical-binding: t; -*-
(let ((my-list '(a b c)))
(cl-loop for index below (length my-list)
...
4
votes
2answers
65 views
How do I splat the arguments to the `or` function?
I would like to evaluate a list of booleans like
(nil nil t)
into a single boolean, such that if any element is true, then the expression evaluates to true.
I first looked at the (or) function in ...
3
votes
4answers
387 views
How to mapcar uneven lists?
I am aware I can use mapcar to join 2 lists into pairs, however all the map functions seem to quit at the shortest list.
This for example
(cl-mapcar #'concat '("1" "2" "3" "4") '("a" "b" "c"))
...
3
votes
1answer
164 views
How to map or iterate over a list of files and set the result to `org-agenda-files`?
looking for a little help with my function. I'm trying to create a loop-while that'll return a list of files back to org-agenda-files. It's just not working though and i keep getting errors. Any ideas ...
2
votes
2answers
765 views
How to loop over every line in a buffer? [duplicate]
I am searching for some kind of reduce function, which loops through every line of a buffer, but I can not find it. Does anybody know the name of such a function?
Something similar to Perl
while (&...
2
votes
1answer
48 views
Infinite repetition (iteration) in Elisp code
There is an option to
repeat a macro an infinite number of times until the function quits (for example, by reaching the end of the buffer) or if the user cancels the command in keyboard macros
...
2
votes
0answers
35 views
What kind of destructuring does cl-loop support?
1. Summary
Is it possible to destructure an unordered plist in cl-loop's for-clauses?
2. Details
From the documentation I would have expected destructuring to be universal, e.g. I would have ...
1
vote
2answers
734 views
Loop through top-level headings in Emacs Org-mode
I want to apply (org-id-get-create) to every top-level heading in the buffer. How can I loop through all top-level org-mode headings in the current buffer?
1
vote
1answer
57 views
Iterate with both value and index
I want to iterate over a list with both the index and the value in the loop.
Currently, the code looks like this:
(let ((my-list '(a b c)))
(cl-loop for index below (length my-list)
for ...
1
vote
2answers
302 views
Standard emacs lisp function for “collect-if”
Is there a standard emacs-lisp function replacement for
(defun collect-if (PREDICATE LIST)
(loop for el in LIST if (funcall PREDICATE el) collect el))
Example toy application: Extract the odd ...
1
vote
1answer
125 views
Searching for multiple items with occur
I am new to Emacs and I am trying to search for all words entered one by one using 'occur'. I am trying following code:
(defun occurlist (ss)
(interactive "s\Enter list of search items: ")
(...
0
votes
3answers
407 views
how to do a next in a elisp dotimes loop
By next I mean next as found in ruby/perl/python/etc
#!/usr/bin/ruby
for i in 0..5
if i < 2 then
next
end
puts "Value of local variable is #{i}"
end
0
votes
1answer
181 views
Emacs loops mysteriously
I am using emacs 25.3 and I observe that one indentation function that I wrote loop mysteriously. My function goes following:
(defun aut-indent-func ()
(interactive)
(defun loop (begin)
(...
0
votes
2answers
23 views
Query-replace stops after first item in while
Following this StackOverflow question, I coded this function to clean up text pasted from other sources, such as Google Docs:
(defun sanitize-md ()
"Replace characters."
(interactive &...
0
votes
1answer
66 views
Confusion about iter-defun
I'd like to make an iterator that yields pairs:
(0 1)
(1 1)
(1 2)
(2 2)
(2 3)
(3 3)
etc.
I've tried variants of the following:
(iter-defun iter-rectangle-sizes ()
(let ((rect '(0 1)))
(while ...