]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/dom.el (dom-strings): New function.
authorLars Magne Ingebrigtsen <larsi@gnus.org>
Fri, 16 Jan 2015 02:08:55 +0000 (03:08 +0100)
committerLars Magne Ingebrigtsen <larsi@gnus.org>
Fri, 16 Jan 2015 02:08:55 +0000 (03:08 +0100)
doc/lispref/text.texi
lisp/ChangeLog
lisp/dom.el

index 472aedb8ee4f6f80fe5d4e47b59d6fff4bdd1697..1b8897f59e7cef72b2b1526fe2ea31c801c7a215 100644 (file)
@@ -4507,6 +4507,9 @@ which is a regular expression.
 Return all nodes in @var{dom} that have IDs that match @var{match},
 which is a regular expression.
 
+@item dom-strings @var{dom}
+Return all strings in @var{DOM}.
+
 @end table
 
 Utility functions:
index 7ef0e6a2749ce1e16ade75c37c595fa79ac026eb..6aa0c1296385022e7aa0981aad579fb90fb513e9 100644 (file)
@@ -1,5 +1,7 @@
 2015-01-16  Lars Magne Ingebrigtsen  <larsi@gnus.org>
 
+       * dom.el (dom-strings): New function.
+
        * files.el (directory-files-recursively): Don't use the word
        "path" for a file name.
 
index 527b8e61f2ef7ed118ef80c64613a840831c5208..11357e88804bd92254c4e574831aa268121349f4 100644 (file)
@@ -103,6 +103,14 @@ A name is a symbol like `td'."
        (cons dom matches)
       matches)))
 
+(defun dom-strings (dom)
+  "Return elements in DOM that are strings."
+  (cl-loop for child in (dom-children dom)
+          if (stringp child)
+          collect child
+          else
+          append (dom-strings child)))
+
 (defun dom-by-class (dom match)
   "Return elements in DOM that have a class name that matches regexp MATCH."
   (dom-elements dom 'class match))