Commit fc72b15c authored by Peter Oliver's avatar Peter Oliver Committed by Glenn Morris
Browse files

Add perl-indent-parens-as-block option (tiny change)

* lisp/progmodes/perl-mode.el (perl-indent-parens-as-block): New option.
(perl-calculate-indent): Respect it.

Fixes: debbugs:11118
parent 12e10e61
......@@ -70,7 +70,10 @@ channel keys found, if any.
** The `server-auth-key' variable can be used to set a permanent
shared key for Emacs Server.
** In Perl mode, new option `perl-indent-parens-as-block' causes non-block
closing brackets to be aligned with the line of the opening bracket.
** Obsolete packages:
*** mailpost.el
2012-04-17 Peter Oliver <> (tiny change)
* progmodes/perl-mode.el (perl-indent-parens-as-block):
New option (bug#11118).
(perl-calculate-indent): Respect it.
2012-04-17 Glenn Morris <>
* dired-aux.el (dired-mark-read-string): Doc fix.
......@@ -506,6 +506,14 @@ If nil, continued arguments are aligned with the first argument."
:type '(choice integer (const nil))
:group 'perl)
(defcustom perl-indent-parens-as-block nil
"Non-nil means that non-block ()-, {}- and []-groups are indented as blocks.
The closing bracket is aligned with the line of the opening bracket,
not the contents of the brackets."
:version "24.2"
:type 'boolean
:group 'perl)
(defcustom perl-tab-always-indent tab-always-indent
"Non-nil means TAB in Perl mode always indents the current line.
Otherwise it inserts a tab character if you type it past the first
......@@ -848,7 +856,8 @@ Optional argument PARSE-START should be the position of `beginning-of-defun'."
(cond ((nth 3 state) 'noindent) ; In a quoted string?
((null containing-sexp) ; Line is at top level.
(skip-chars-forward " \t\f")
(if (= (following-char) ?{)
(if (memq (following-char)
(if perl-indent-parens-as-block '(?\{ ?\( ?\[) '(?\{)))
0 ; move to beginning of line if it starts a function body
;; indent a little if this is a continuation line
......@@ -892,7 +901,9 @@ Optional argument PARSE-START should be the position of `beginning-of-defun'."
0 perl-continued-statement-offset)
(if (save-excursion (goto-char indent-point)
(looking-at "[ \t]*{"))
(if perl-indent-parens-as-block
"[ \t]*[{(\[]" "[ \t]*{")))
perl-continued-brace-offset 0)))
;; This line starts a new statement.
;; Position at last unclosed open.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment