unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^("
@ 2017-08-02 16:45 Ryan
  2017-08-02 21:34 ` Philipp Stephani
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Ryan @ 2017-08-02 16:45 UTC (permalink / raw)
  To: 27920


When editing Emacs Lisp code, if I write a function whose docstring
contains a line beginning with an open paren, Emacs refuses to
auto-indent any line in the function body. Removing the offenting
parenthesis or adding a non-paren character before it on the same line
allow Emacs to indent the body once again. Here's an example function
that triggers the bug:

(defun my-fun (x)
"This docstring contains a line starting with \"(\"

(This line starts with an open paren)

The offending line can occur anywhere in the docstring, except
the first line."
;; Emacs now refuses to indent the function body
t
'really-bad-indentation
'indent-region-has-no-effect
'indent-for-tab-command-has-no-effect
(list
'even-inside-function-calls))

In case that is mangled, here's a pastebin with the same function:
https://mneme.dedyn.io/zerobin/?69cf2138062fc4f6#7FIzc4PEGDq2+V390LXW4HhvC3WVMNoc9ATBmoj/3qE=



In GNU Emacs 25.2.1 (x86_64-apple-darwin13.4.0, NS appkit-1265.21 
Version 10.9.5 (Build 13F1911))
of 2017-04-21 built on builder10-9.porkrind.org
Windowing system distributor 'Apple', version 10.3.1404
Configured using:
'configure --with-ns '--enable-locallisppath=/Library/Application
Support/Emacs/${version}/site-lisp:/Library/Application
Support/Emacs/site-lisp' --with-modules'

Configured features:
NOTIFY ACL GNUTLS LIBXML2 ZLIB TOOLKIT_SCROLL_BARS NS MODULES

Important settings:
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix

Major mode: Lisp Interaction

Minor modes in effect:
recentf-mode: t
ws-butler-global-mode: t
ws-butler-mode: t
winner-mode: t
sml-modeline-mode: t
savehist-mode: t
save-place-mode: t
minibuffer-electric-default-mode: t
minibuffer-depth-indicate-mode: t
midnight-mode: t
ido-yes-or-no-mode: t
icomplete-mode: t
highlight-stages-global-mode: t
highlight-stages-mode: t
global-undo-tree-mode: t
undo-tree-mode: t
global-pointback-mode: t
pointback-mode: t
global-hl-line-mode: t
global-anzu-mode: t
anzu-mode: t
desktop-save-mode: t
delete-selection-mode: t
beacon-mode: t
auto-dim-other-buffers-mode: t
ido-ubiquitous-mode: t
ido-complete-space-or-hyphen-mode: t
ido-everywhere: t
pretty-symbols-mode: t
osx-pseudo-daemon-mode: t
diff-auto-refine-mode: t
magit-auto-revert-mode: t
global-git-commit-mode: t
async-bytecomp-package-mode: t
lexbind-mode: t
highlight-defined-mode: t
autopair-global-mode: t
autopair-mode: t
show-paren-mode: t
global-auto-complete-mode: t
auto-complete-mode: t
adjust-parens-mode: t
override-global-mode: t
shell-dirtrack-mode: t
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t

Recent messages:
Mark set [7 times]
Type "q" to restore previous buffer.
Type "q" in help window to restore its previous buffer.
Mark set
Scanning for dabbrevs...done
Expansion found in ‘*Help*’
Mark set
Indenting region...done
Mark set [3 times]
Indenting region...done

Load-path shadows:
/Users/ryan/.emacs.d/el-get/ido-completing-read+/ido-completing-read+ 
hides 
/Users/ryan/.emacs.d/.cask/25.2/elpa/ido-completing-read+-20170601.559/ido-completing-read+
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-bullets-20140918.1137/org-bullets 
hides 
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-bullets
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox hides 
/Applications/Emacs.app/Contents/Resources/lisp/org/ox
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-texinfo 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-texinfo
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-publish 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-publish
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-org 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-org
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-odt 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-odt
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-md 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-md
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-man 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-man
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-latex 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-latex
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-icalendar 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-icalendar
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-html 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-html
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-beamer 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-beamer
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ox-ascii 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ox-ascii
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org hides 
/Applications/Emacs.app/Contents/Resources/lisp/org/org
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-w3m 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-w3m
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-version 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-version
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-timer 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-timer
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-table 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-table
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-src 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-src
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-rmail 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-rmail
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-protocol 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-protocol
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-plot 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-plot
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-pcomplete 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-pcomplete
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-mouse 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mouse
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-mobile 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mobile
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-mhe 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-mhe
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-macs 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-macs
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-macro 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-macro
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-loaddefs 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-loaddefs
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-list 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-list
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-irc 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-irc
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-install 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-install
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-inlinetask 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-inlinetask
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-info 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-info
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-indent 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-indent
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-id 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-id
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-habit 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-habit
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-gnus 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-gnus
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-footnote 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-footnote
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-feed 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-feed
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-faces 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-faces
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-eshell 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-eshell
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-entities 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-entities
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-element 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-element
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-docview 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-docview
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-datetree 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-datetree
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-ctags 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-ctags
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-crypt 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-crypt
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-compat 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-compat
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-colview 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-colview
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-clock 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-clock
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-capture 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-capture
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-bibtex 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-bibtex
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-bbdb 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-bbdb
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-attach 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-attach
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-archive 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-archive
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/org-agenda 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/org-agenda
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob hides 
/Applications/Emacs.app/Contents/Resources/lisp/org/ob
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-tangle 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-tangle
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-table 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-table
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-sqlite 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-sqlite
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-sql 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-sql
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-shen 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-shen
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-screen 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-screen
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-scheme 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-scheme
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-scala 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-scala
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-sass 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-sass
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-ruby 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ruby
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-ref 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ref
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-R 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-R
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-python 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-python
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-plantuml 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-plantuml
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-picolisp 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-picolisp
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-perl 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-perl
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-org 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-org
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-octave 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-octave
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-ocaml 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ocaml
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-mscgen 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-mscgen
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-maxima 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-maxima
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-matlab 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-matlab
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-makefile 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-makefile
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-lob 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-lob
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-lisp 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-lisp
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-lilypond 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-lilypond
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-ledger 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ledger
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-latex 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-latex
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-keys 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-keys
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-js 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-js
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-java 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-java
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-io 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-io
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-haskell 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-haskell
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-gnuplot 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-gnuplot
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-fortran 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-fortran
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-exp 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-exp
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-eval 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-eval
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-emacs-lisp 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-emacs-lisp
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-dot 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-dot
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-ditaa 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-ditaa
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-css 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-css
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-core 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-core
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-comint 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-comint
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-clojure 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-clojure
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-calc 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-calc
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-C 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-C
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-awk 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-awk
/Users/ryan/.emacs.d/.cask/25.2/elpa/org-plus-contrib-20170606/ob-asymptote 
hides /Applications/Emacs.app/Contents/Resources/lisp/org/ob-asymptote
/Users/ryan/.emacs.d/.cask/25.2/elpa/seq-2.20/seq hides 
/Applications/Emacs.app/Contents/Resources/lisp/emacs-lisp/seq
/Users/ryan/.emacs.d/.cask/25.2/elpa/let-alist-1.0.5/let-alist hides 
/Applications/Emacs.app/Contents/Resources/lisp/emacs-lisp/let-alist

Features:
(shadow sort mail-extr debug buttercup-closure-matchers buttercup
buttercup-compat eieio-opt speedbar sb-image ezimage dframe tramp-cache
recentf tree-widget misearch multi-isearch dabbrev ispell imenu
ess-toolbar ess-mouse mouseme ess-swv ess-noweb ess-noweb-font-lock-mode
ess-bugs-l ess-sas-d ess-sas-l ess-sas-a ess-stata-mode ess-stata-lang
make-regexp essd-els ess-sp6-d ess-dde ess-sp3-d ess-julia julia-mode
ess-r-mode ess-r-package ess-r-syntax ess-r-completion ess-roxy essddr
ess-rd hideshow ess-s-lang ess-help ess-site checkdoc conf-mode
org-eldoc org-rmail org-mhe org-irc org-info org-gnus org-docview
doc-view image-mode org-bibtex bibtex org-bbdb org-w3m make-mode
yaml-mode sh-script smie macrostep-c cmacexp macrostep cc-mode cc-fonts
cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
jka-compr vc-git flymake emacsbug sendmail face-remap ws-butler winner
sml-modeline savehist saveplace minibuf-eldef mb-depth midnight
ido-yes-or-no icomplete highlight-stages undo-tree diff pointback assoc
hl-line anzu desktop frameset delsel beacon auto-dim-other-buffers
ido-completing-read+ loadhist bar-cursor debian-changelog-mode
git-wip-mode vc vc-dispatcher ido-complete-space-or-hyphen tempbuf
smooth-scrolling .loaddefs cus-edit cus-start cus-load warnings
system-specific-settings snakemake-mode smex ido slime etags xref
project arc-mode archive-mode hyperspec python pretty-symbols polymode
poly-base polymode-weave polymode-export polymode-debug polymode-methods
poly-lock polymode-compat polymode-classes polymode-core eieio-custom
wid-edit eieio-base color osx-pseudo-daemon org-bullets
occur-context-resize noflet cl-indent markdown-mode thingatpt
magit-filenotify magit-obsolete magit-blame magit-stash magit-bisect
magit-remote magit-commit magit-sequence magit-notes magit-worktree
magit-branch magit-files magit-refs magit-status magit magit-repos
magit-apply magit-wip magit-log magit-diff smerge-mode diff-mode
magit-core magit-autorevert autorevert filenotify magit-process
magit-margin magit-mode magit-git magit-section magit-popup git-commit
magit-utils crm log-edit message rfc822 mml mml-sec epg mailabbrev
mail-utils gmm-utils mailheader pcvs-util add-log with-editor
async-bytecomp async tramp-sh server lexbind-mode highlight-defined
header2 git-gutter-fringe fringe-helper git-gutter esup esup-child
benchmark ess ess-mode ess-noweb-mode ess-inf ess-tracebug ess-generics
ess-utils ess-custom executable ess-compat el-get el-get-autoloading
el-get-list-packages el-get-dependencies el-get-build el-get-status pp
el-get-methods el-get-fossil el-get-svn el-get-pacman el-get-github-zip
el-get-github-tar el-get-http-zip el-get-http-tar el-get-hg el-get-go
el-get-git-svn el-get-fink el-get-emacswiki el-get-http el-get-notify
el-get-emacsmirror el-get-github el-get-git el-get-elpa el-get-darcs
el-get-cvs el-get-bzr el-get-brew el-get-builtin el-get-apt-get
el-get-recipes el-get-byte-compile subr-x el-get-custom el-get-core
autoload dired creole-mode keydef cperl-mode cl-lib-highlight bs
browse-url autopair paren auto-complete edmacro kmacro popup apache-mode
adjust-parens exec-path-from-shell use-package diminish bind-key compile
org-element avl-tree org org-macro org-footnote org-pcomplete org-list
org-faces org-entities noutline outline easy-mmode org-version
ob-emacs-lisp ob ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp
ob-comint tramp tramp-compat tramp-loaddefs trampver shell pcomplete
comint ansi-color ring ob-core ob-eval org-compat org-macs org-loaddefs
format-spec find-func cal-menu calendar cal-loaddefs pallet advice
gh-common gh-profile url-parse auth-source gnus-util password-cache
url-vars marshal eieio-compat ht eieio eieio-core cl slime-autoloads rx
info cask cl-seq cl-macs cask-bootstrap package-build mm-decode
mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums
mm-util help-fns mail-prsvr json map lisp-mnt shut-up epl git commander
f dash s finder-inf package epg-config seq byte-opt gv bytecomp
byte-compile cl-extra help-mode easymenu cconv cl-loaddefs pcase cl-lib
time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel ns-win ucs-normalize term/common-win tool-bar dnd
fontset image regexp-opt fringe tabulated-list newcomment elisp-mode
lisp-mode prog-mode register page menu-bar rfn-eshadow timer select
scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame
cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai
tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian
slovak czech european ethiopic indian cyrillic chinese charscript
case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote kqueue cocoa ns
multi-tty make-network-process emacs)

Memory information:
((conses 16 2052315 185813)
(symbols 48 61653 74)
(miscs 40 11099 6570)
(strings 32 918294 11117)
(string-bytes 1 9233983)
(vectors 16 100379)
(vector-slots 8 2413977 134070)
(floats 8 1248 3579)
(intervals 56 42200 6498)
(buffers 976 217))






^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^("
  2017-08-02 16:45 bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^(" Ryan
@ 2017-08-02 21:34 ` Philipp Stephani
  2017-08-02 21:39   ` Ryan Thompson
  2017-08-04 17:24 ` Stefan Monnier
  2017-11-29  2:32 ` Noam Postavsky
  2 siblings, 1 reply; 6+ messages in thread
From: Philipp Stephani @ 2017-08-02 21:34 UTC (permalink / raw)
  To: Ryan, 27920

[-- Attachment #1: Type: text/plain, Size: 456 bytes --]

Ryan <rct@thompsonclan.org> schrieb am Mi., 2. Aug. 2017 um 18:57 Uhr:

>
> When editing Emacs Lisp code, if I write a function whose docstring
> contains a line beginning with an open paren, Emacs refuses to
> auto-indent any line in the function body.


Emacs by default doesn't accept opening parentheses in the first column
that don't start a top-level definition. See
https://www.gnu.org/software/emacs/manual/html_node/emacs/Left-Margin-Paren.html
.

[-- Attachment #2: Type: text/html, Size: 840 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^("
  2017-08-02 21:34 ` Philipp Stephani
@ 2017-08-02 21:39   ` Ryan Thompson
  2017-08-02 21:45     ` Glenn Morris
  0 siblings, 1 reply; 6+ messages in thread
From: Ryan Thompson @ 2017-08-02 21:39 UTC (permalink / raw)
  To: Philipp Stephani, 27920

[-- Attachment #1: Type: text/plain, Size: 943 bytes --]

Ok, that's good to know. That page claims that Emacs "highlights confusing
opening delimiters (those that ought to be quoted) in bold red", but I'm
not seeing that in this case. Is there some setting to enable this, or is
it likely that some other elisp package I have installed is interfering
with this highlighting? Or can Emacs not catch this kind of misplaced paren
in a string?

On Wed, Aug 2, 2017 at 2:34 PM Philipp Stephani <p.stephani2@gmail.com>
wrote:

>
>
> Ryan <rct@thompsonclan.org> schrieb am Mi., 2. Aug. 2017 um 18:57 Uhr:
>
>>
>> When editing Emacs Lisp code, if I write a function whose docstring
>> contains a line beginning with an open paren, Emacs refuses to
>> auto-indent any line in the function body.
>
>
> Emacs by default doesn't accept opening parentheses in the first column
> that don't start a top-level definition. See
> https://www.gnu.org/software/emacs/manual/html_node/emacs/Left-Margin-Paren.html
> .
>

[-- Attachment #2: Type: text/html, Size: 1598 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^("
  2017-08-02 21:39   ` Ryan Thompson
@ 2017-08-02 21:45     ` Glenn Morris
  0 siblings, 0 replies; 6+ messages in thread
From: Glenn Morris @ 2017-08-02 21:45 UTC (permalink / raw)
  To: Ryan Thompson; +Cc: Philipp Stephani, 27920

Ryan Thompson wrote:

> That page claims that Emacs "highlights confusing opening delimiters
> (those that ought to be quoted) in bold red", but I'm not seeing that
> in this case.

This feature has been broken since Emacs 24.4. https://debbugs.gnu.org/21871





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^("
  2017-08-02 16:45 bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^(" Ryan
  2017-08-02 21:34 ` Philipp Stephani
@ 2017-08-04 17:24 ` Stefan Monnier
  2017-11-29  2:32 ` Noam Postavsky
  2 siblings, 0 replies; 6+ messages in thread
From: Stefan Monnier @ 2017-08-04 17:24 UTC (permalink / raw)
  To: Ryan; +Cc: 27920

> In case that is mangled, here's a pastebin with the same function:

You can do (setq open-paren-in-column-0-is-defun-start nil)


        Stefan





^ permalink raw reply	[flat|nested] 6+ messages in thread

* bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^("
  2017-08-02 16:45 bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^(" Ryan
  2017-08-02 21:34 ` Philipp Stephani
  2017-08-04 17:24 ` Stefan Monnier
@ 2017-11-29  2:32 ` Noam Postavsky
  2 siblings, 0 replies; 6+ messages in thread
From: Noam Postavsky @ 2017-11-29  2:32 UTC (permalink / raw)
  To: Ryan; +Cc: 27920

unmerge 27920
tags 27920 = fixed
close 27920 26.1
quit

Ryan <rct@thompsonclan.org> writes:

> When editing Emacs Lisp code, if I write a function whose docstring
> contains a line beginning with an open paren, Emacs refuses to
> auto-indent any line in the function body. Removing the offenting
> parenthesis or adding a non-paren character before it on the same line
> allow Emacs to indent the body once again. Here's an example function
> that triggers the bug:

This bug was marked as wontfix, but I accidentally fixed it while fixing
Bug#25122, sorry.  ;)





^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2017-11-29  2:32 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-02 16:45 bug#27920: 25.2; Elisp indentation breaks when function docstring matches "^(" Ryan
2017-08-02 21:34 ` Philipp Stephani
2017-08-02 21:39   ` Ryan Thompson
2017-08-02 21:45     ` Glenn Morris
2017-08-04 17:24 ` Stefan Monnier
2017-11-29  2:32 ` Noam Postavsky

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).