[OS X Emacs] Re: delete parantheses pair
    Jack Repenning 
    jrepenning at collab.net
       
    Thu Feb 10 17:57:41 EST 2011
    
    
  
On Feb 10, 2011, at 8:42 AM, Marinos K wrote:
> (defun sc-delete-delimiters-and-msg ()
Two more minor notes:
Your call to (interactive) should be (interactive "*"), to verify in advance that you're allowed to modify this buffer.
The use of (let ...) to note the location of the open-paren is unnecessary; that's what (save-excursion is for. Just drop out the bottom of the save-excursion, and you're back at that open-paren.
(defun sc-delete-delimiters-and-msg ()
  "Deletes a pair of delimiters and the msg-expression attached in the
end (if one) leaving what' s inside intact. eg: [1,2,3].choose;->1,2,3"
  (interactive "*")
  (cond ((looking-at "\\s(")
	 (save-excursion
	   (forward-sexp)
	   (delete-char -1)
	   (if (char-equal (char-after) ?.)
	       (progn (kill-word 1)
		      (if (or (char-equal (char-after) ?\() (char-equal (char-after) ?\{))
			  (kill-sexp)))))
	 (delete-char 1))
	(t
	 (error "Not looking at open parenthesis")
	 )))
    
    
More information about the MacOSX-Emacs
mailing list