emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/objed 2f50485 102/166: Add css defun object


From: Clemens Radermacher
Subject: [elpa] externals/objed 2f50485 102/166: Add css defun object
Date: Sun, 29 Dec 2019 08:21:09 -0500 (EST)

branch: externals/objed
commit 2f5048537f35ce943dc1a7c9d5eddc6894c0654d
Author: Clemens Radermacher <address@hidden>
Commit: Clemens Radermacher <address@hidden>

    Add css defun object
---
 objed-objects.el | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/objed-objects.el b/objed-objects.el
index 2b7441a..1fc371d 100644
--- a/objed-objects.el
+++ b/objed-objects.el
@@ -2441,6 +2441,32 @@ non-nil the indentation block can contain empty lines."
                                (down-list -1)
                                (point)))))))))))
 
+
+(objed-define-object css-mode defun
+  :mode css-mode
+  :atp
+  (looking-at "^[^[:space:]]")
+  :try-next
+  (search-forward "{")
+  :try-prev
+  (search-backward "{")
+  :get-obj
+  (let* ((pos (point))
+         (end (and (search-forward "}" nil t) (point)))
+         (beg (and end
+                   (search-backward "{" nil t)
+                   (or (and (re-search-backward "^ *$" nil t)
+                            (1+ (match-end 0)))
+                       (and (re-search-backward "^" nil t)
+                            (line-beginning-position))))))
+    (when (and beg end
+               (<= beg pos end))
+      (objed-make-object
+       :beg beg
+       :ibeg (search-forward "{")
+       :end end
+       :iend (1- end)))))
+
 (objed-define-object nil tag
   :atp
   (and (derived-mode-p 'sgml-mode)



reply via email to

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