(parens-dont-require-spaces): New variable.
(insert-parentheses): Obey that variable.
This commit is contained in:
parent
4a6e3980e2
commit
44a53673e8
1 changed files with 10 additions and 3 deletions
|
@ -30,6 +30,9 @@
|
|||
(defvar defun-prompt-regexp nil
|
||||
"Non-nil => regexp to ignore, before the `(' that starts a defun.")
|
||||
|
||||
(defvar parens-dont-require-spaces nil
|
||||
"Non-nil => `insert-parentheses' should not insert whitespace.")
|
||||
|
||||
(defun forward-sexp (&optional arg)
|
||||
"Move forward across one balanced expression (sexp).
|
||||
With argument, do it that many times. Negative arg -N means
|
||||
|
@ -195,18 +198,22 @@ The defun marked is the one that contains point or follows point."
|
|||
|
||||
(defun insert-parentheses (arg)
|
||||
"Put parentheses around next ARG sexps. Leave point after open-paren.
|
||||
No argument is equivalent to zero: just insert () and leave point between."
|
||||
No argument is equivalent to zero: just insert `()' and leave point between.
|
||||
This command also sometimes inserts a space before and after,
|
||||
depending on the surrounding characters."
|
||||
(interactive "P")
|
||||
(if arg (setq arg (prefix-numeric-value arg))
|
||||
(setq arg 0))
|
||||
(or (eq arg 0) (skip-chars-forward " \t"))
|
||||
(and (memq (char-syntax (preceding-char)) '(?w ?_ ?\) ))
|
||||
(and (not parens-dont-require-spaces)
|
||||
(memq (char-syntax (preceding-char)) '(?w ?_ ?\) ))
|
||||
(insert " "))
|
||||
(insert ?\()
|
||||
(save-excursion
|
||||
(or (eq arg 0) (forward-sexp arg))
|
||||
(insert ?\))
|
||||
(and (memq (char-syntax (following-char)) '(?w ?_ ?\( ))
|
||||
(and (not parens-dont-require-spaces)
|
||||
(memq (char-syntax (following-char)) '(?w ?_ ?\( ))
|
||||
(insert " "))))
|
||||
|
||||
(defun move-past-close-and-reindent ()
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue