GNU bug report logs - #28475
25.3; python double-indents multi-line function argument blocks

Previous Next

Package: emacs;

Reported by: Ross Donaldson <gastove <at> gmail.com>

Date: Sat, 16 Sep 2017 19:07:02 UTC

Severity: normal

Tags: fixed

Found in version 25.3

Fixed in version 26.1

Done: Noam Postavsky <npostavs <at> users.sourceforge.net>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 28475 in the body.
You can then email your comments to 28475 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Sat, 16 Sep 2017 19:07:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Ross Donaldson <gastove <at> gmail.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Sat, 16 Sep 2017 19:07:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Ross Donaldson <gastove <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 25.3; python double-indents multi-line function argument blocks
Date: Sat, 16 Sep 2017 11:42:18 -0700
python-mode double-indents the arguments to function definitions.

To reproduce:
1. emacs -Q
2. Enter the following:

# This is fine:
def foo(arg):
print('hello')

# This is indented double:
def foo(
bar,
baz
):
print('hello')


# It should be:
def foo(
bar,
baz
):
print('hello')

# Only seems to be true for `def`s so far, eg:
baz = list(
'good'
)

This is caused by the function `python-indent--calculate-indentation`, line ~1023 of `python.el`. Frustratingly, the behavior is hardcoded, and apparently intentional, as we see at the end of the function:

```
(`(,(or :inside-paren-newline-start-from-block) . ,start)
;; Add two indentation levels to make the suite stand out.
(goto-char start)
(+ (current-indentation) (* python-indent-offset 2)))
```

This is problematic. Python's holy grail of style, PEP-8, does not specify how this indentation should be done. However, many companies which write python -- like my employer -- create internal style guides to fill in gaps left by PEP-8. So far, in my career, they *all* indicate a single indent to be appropriate in this context.

I'd like to propose two solutions; I don't know which will suit best:

1. Stop doubling indentation
2. Make the indent scaling integer a variable, so that this behavior can be changed.

A final complication for me is that, at least on `master` of the Github emacs-mirror (https://github.com/emacs-mirror/emacs), this function still uses `prog-widen` and `prog-first-column`, which have been removed from emacs. I'm not sure how to correctly patch this function to remove them.

So! With a little guidance on `prog-widen`/`prog-first-column`, I'm happy to create and submit a patch, or I can leave this in y'all's capable hands.

Thanks very much!





In GNU Emacs 25.3.1 (x86_64-apple-darwin16.7.0, Carbon Version 157 AppKit 1504.83)
of 2017-09-16 built on concordance.local
Windowing system distributor 'Apple Inc.', version 10.12.6
Configured using:
'configure --enable-locallisppath=/usr/local/share/emacs/site-lisp
--infodir=/usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/info/emacs
--prefix=/usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7 --with-mac
--enable-mac-app=/usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7'

Configured features:
NOTIFY ACL LIBXML2 ZLIB TOOLKIT_SCROLL_BARS

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

Major mode: Python

Minor modes in effect:
semantic-minor-modes-format: ((:eval (if (or semantic-highlight-edits-mode semantic-show-unmatched-syntax-mode)  S)))
magit-auto-revert-mode: t
global-git-commit-mode: t
global-ethan-wspace-mode: t
ethan-wspace-clean-many-nls-eof-mode: t
ethan-wspace-clean-no-nl-eof-mode: t
ethan-wspace-clean-eol-mode: t
ethan-wspace-clean-tabs-mode: t
highlight-indentation-mode: t
elpy-mode: t
pyvenv-mode: t
flymake-mode: t
TeX-PDF-mode: t
subword-mode: t
hl-line-mode: t
jabber-activity-mode: t
erc-truncate-mode: t
erc-spelling-mode: t
erc-list-mode: t
erc-menu-mode: t
erc-autojoin-mode: t
erc-ring-mode: t
erc-networks-mode: t
erc-pcomplete-mode: t
erc-track-mode: t
erc-match-mode: t
erc-button-mode: t
erc-fill-mode: t
erc-stamp-mode: t
erc-netsplit-mode: t
erc-irccontrols-mode: t
erc-noncommands-mode: t
erc-move-to-prompt-mode: t
erc-readonly-mode: t
show-smartparens-global-mode: t
show-smartparens-mode: t
smartparens-global-mode: t
smartparens-mode: t
persp-mode: t
helm-mode: t
async-bytecomp-package-mode: t
projectile-mode: t
helm-descbinds-mode: t
global-company-mode: t
company-mode: t
ggtags-mode: t
orary/programming-mode: t
global-auto-revert-mode: t
global-undo-tree-mode: t
undo-tree-mode: t
flyspell-mode: t
yas-global-mode: t
yas-minor-mode: t
global-flycheck-mode: t
flycheck-mode: t
global-diff-hl-mode: t
diff-hl-mode: t
diff-auto-refine-mode: t
delete-selection-mode: t
beacon-mode: t
shell-dirtrack-mode: t
diredp-highlight-autofiles-mode: t
auto-image-file-mode: t
recentf-mode: t
save-place-mode: t
override-global-mode: t
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
electric-indent-mode: t
mac-mouse-wheel-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
column-number-mode: t
line-number-mode: t
transient-mark-mode: t

Recent messages:
Saving file /Users/gastove/.Mail/gastove <at> gmail.com/[Gmail].Drafts/cur/1505586077.ea990019f27375ff.concordance:2,DS...
Wrote /Users/gastove/.emacs.d/savefile/undo-tree/.!Users!gastove!.Mail!gastove <at> gmail.com![Gmail].Drafts!cur!1505586077.ea990019f27375ff.concordance:2,DS.~undo-tree~
Wrote /Users/gastove/.Mail/gastove <at> gmail.com/[Gmail].Drafts/cur/1505586077.ea990019f27375ff.concordance:2,DS
[mu4e] Saved (559 lines)
Sending...
Mark set [2 times]
Sending via mail...
Sending...done
[mu4e] Message sent
[mu4e] Are you sure you want to quit? (y or n) y

Load-path shadows:
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox hides /Users/gastove/.emacs.d/elpa/org-20170911/ox
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-texinfo hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-texinfo
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-publish hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-publish
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-org hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-org
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-odt hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-odt
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-md hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-md
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-man hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-man
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-latex hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-latex
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-icalendar hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-icalendar
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-html hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-html
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-beamer hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-beamer
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-ascii hides /Users/gastove/.emacs.d/elpa/org-20170911/ox-ascii
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org hides /Users/gastove/.emacs.d/elpa/org-20170911/org
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-w3m hides /Users/gastove/.emacs.d/elpa/org-20170911/org-w3m
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-version hides /Users/gastove/.emacs.d/elpa/org-20170911/org-version
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-timer hides /Users/gastove/.emacs.d/elpa/org-20170911/org-timer
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-table hides /Users/gastove/.emacs.d/elpa/org-20170911/org-table
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-src hides /Users/gastove/.emacs.d/elpa/org-20170911/org-src
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-rmail hides /Users/gastove/.emacs.d/elpa/org-20170911/org-rmail
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-protocol hides /Users/gastove/.emacs.d/elpa/org-20170911/org-protocol
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-plot hides /Users/gastove/.emacs.d/elpa/org-20170911/org-plot
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-pcomplete hides /Users/gastove/.emacs.d/elpa/org-20170911/org-pcomplete
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-mouse hides /Users/gastove/.emacs.d/elpa/org-20170911/org-mouse
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-mobile hides /Users/gastove/.emacs.d/elpa/org-20170911/org-mobile
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-mhe hides /Users/gastove/.emacs.d/elpa/org-20170911/org-mhe
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-macs hides /Users/gastove/.emacs.d/elpa/org-20170911/org-macs
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-macro hides /Users/gastove/.emacs.d/elpa/org-20170911/org-macro
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-loaddefs hides /Users/gastove/.emacs.d/elpa/org-20170911/org-loaddefs
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-list hides /Users/gastove/.emacs.d/elpa/org-20170911/org-list
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-lint hides /Users/gastove/.emacs.d/elpa/org-20170911/org-lint
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-irc hides /Users/gastove/.emacs.d/elpa/org-20170911/org-irc
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-install hides /Users/gastove/.emacs.d/elpa/org-20170911/org-install
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-inlinetask hides /Users/gastove/.emacs.d/elpa/org-20170911/org-inlinetask
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-info hides /Users/gastove/.emacs.d/elpa/org-20170911/org-info
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-indent hides /Users/gastove/.emacs.d/elpa/org-20170911/org-indent
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-id hides /Users/gastove/.emacs.d/elpa/org-20170911/org-id
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-habit hides /Users/gastove/.emacs.d/elpa/org-20170911/org-habit
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-gnus hides /Users/gastove/.emacs.d/elpa/org-20170911/org-gnus
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-footnote hides /Users/gastove/.emacs.d/elpa/org-20170911/org-footnote
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-feed hides /Users/gastove/.emacs.d/elpa/org-20170911/org-feed
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-faces hides /Users/gastove/.emacs.d/elpa/org-20170911/org-faces
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-eww hides /Users/gastove/.emacs.d/elpa/org-20170911/org-eww
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-eshell hides /Users/gastove/.emacs.d/elpa/org-20170911/org-eshell
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-entities hides /Users/gastove/.emacs.d/elpa/org-20170911/org-entities
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-element hides /Users/gastove/.emacs.d/elpa/org-20170911/org-element
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-duration hides /Users/gastove/.emacs.d/elpa/org-20170911/org-duration
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-docview hides /Users/gastove/.emacs.d/elpa/org-20170911/org-docview
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-datetree hides /Users/gastove/.emacs.d/elpa/org-20170911/org-datetree
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-ctags hides /Users/gastove/.emacs.d/elpa/org-20170911/org-ctags
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-crypt hides /Users/gastove/.emacs.d/elpa/org-20170911/org-crypt
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-compat hides /Users/gastove/.emacs.d/elpa/org-20170911/org-compat
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-colview hides /Users/gastove/.emacs.d/elpa/org-20170911/org-colview
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-clock hides /Users/gastove/.emacs.d/elpa/org-20170911/org-clock
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-capture hides /Users/gastove/.emacs.d/elpa/org-20170911/org-capture
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-bibtex hides /Users/gastove/.emacs.d/elpa/org-20170911/org-bibtex
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-bbdb hides /Users/gastove/.emacs.d/elpa/org-20170911/org-bbdb
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-attach hides /Users/gastove/.emacs.d/elpa/org-20170911/org-attach
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-archive hides /Users/gastove/.emacs.d/elpa/org-20170911/org-archive
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-agenda hides /Users/gastove/.emacs.d/elpa/org-20170911/org-agenda
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob hides /Users/gastove/.emacs.d/elpa/org-20170911/ob
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-vala hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-vala
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-tangle hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-tangle
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-table hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-table
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-stan hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-stan
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-sqlite hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-sqlite
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-sql hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-sql
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-shen hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-shen
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-shell hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-shell
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-sed hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-sed
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-screen hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-screen
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-scheme hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-scheme
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-sass hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-sass
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ruby hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-ruby
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ref hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-ref
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-R hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-R
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-python hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-python
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-processing hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-processing
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-plantuml hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-plantuml
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-picolisp hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-picolisp
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-perl hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-perl
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-org hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-org
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-octave hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-octave
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ocaml hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-ocaml
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-mscgen hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-mscgen
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-maxima hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-maxima
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-matlab hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-matlab
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-makefile hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-makefile
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-lua hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-lua
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-lob hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-lob
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-lisp hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-lisp
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-lilypond hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-lilypond
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ledger hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-ledger
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-latex hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-latex
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-keys hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-keys
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-js hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-js
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-java hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-java
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-J hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-J
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-io hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-io
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-hledger hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-hledger
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-haskell hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-haskell
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-groovy hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-groovy
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-gnuplot hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-gnuplot
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-fortran hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-fortran
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-forth hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-forth
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-exp hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-exp
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-eval hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-eval
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-emacs-lisp hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-emacs-lisp
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ebnf hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-ebnf
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-dot hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-dot
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ditaa hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-ditaa
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-css hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-css
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-core hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-core
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-coq hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-coq
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-comint hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-comint
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-clojure hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-clojure
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-calc hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-calc
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-C hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-C
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-awk hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-awk
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-asymptote hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-asymptote
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-abc hides /Users/gastove/.emacs.d/elpa/org-20170911/ob-abc
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-texinfo hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-texinfo
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-publish hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-publish
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-org hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-org
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-odt hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-odt
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-md hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-md
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-man hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-man
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-latex hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-latex
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-icalendar hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-icalendar
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-html hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-html
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-beamer hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-beamer
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ox-ascii hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ox-ascii
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-w3m hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-w3m
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-version hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-version
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-timer hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-timer
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-table hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-table
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-src hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-src
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-rmail hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-rmail
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-protocol hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-protocol
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-plot hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-plot
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-pcomplete hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-pcomplete
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-mouse hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-mouse
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-mobile hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-mobile
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-mhe hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-mhe
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-macs hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-macs
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-macro hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-macro
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-loaddefs hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-loaddefs
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-list hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-list
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-irc hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-irc
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-install hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-install
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-inlinetask hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-inlinetask
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-info hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-info
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-indent hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-indent
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-id hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-id
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-habit hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-habit
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-gnus hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-gnus
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-footnote hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-footnote
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-feed hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-feed
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-faces hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-faces
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-eshell hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-eshell
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-entities hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-entities
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-element hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-element
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-docview hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-docview
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-datetree hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-datetree
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-ctags hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-ctags
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-crypt hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-crypt
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-compat hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-compat
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-colview hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-colview
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-clock hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-clock
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-capture hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-capture
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-bibtex hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-bibtex
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-bbdb hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-bbdb
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-attach hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-attach
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-archive hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-archive
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/org-agenda hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/org-agenda
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-tangle hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-tangle
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-table hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-table
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-sqlite hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-sqlite
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-sql hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-sql
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-shen hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-shen
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-screen hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-screen
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-scheme hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-scheme
/Users/gastove/.emacs.d/elpa/scala-mode-20170802.432/ob-scala hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-scala
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-sass hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-sass
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ruby hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-ruby
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ref hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-ref
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-R hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-R
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-python hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-python
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-plantuml hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-plantuml
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-picolisp hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-picolisp
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-perl hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-perl
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-org hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-org
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-octave hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-octave
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ocaml hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-ocaml
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-mscgen hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-mscgen
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-maxima hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-maxima
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-matlab hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-matlab
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-makefile hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-makefile
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-lob hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-lob
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-lisp hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-lisp
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-lilypond hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-lilypond
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ledger hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-ledger
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-latex hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-latex
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-keys hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-keys
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-js hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-js
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-java hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-java
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-io hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-io
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-haskell hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-haskell
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-gnuplot hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-gnuplot
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-fortran hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-fortran
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-exp hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-exp
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-eval hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-eval
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-emacs-lisp hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-emacs-lisp
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-dot hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-dot
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-ditaa hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-ditaa
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-css hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-css
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-core hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-core
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-comint hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-comint
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-clojure hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-clojure
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-calc hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-calc
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-C hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-C
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-awk hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-awk
/Users/gastove/.emacs.d/elpa/org-plus-contrib-20170911/ob-asymptote hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/org/ob-asymptote
/Users/gastove/.emacs.d/elpa/seq-2.20/seq hides /usr/local/Cellar/emacs-mac/emacs-25.3-mac-6.7/share/emacs/25.3/lisp/emacs-lisp/seq

Features:
(mailalias mail-extr sort helm-x-files shadow whitespace face-remap
emacsbug semantic/find helm-semantic helm-imenu semantic/util-modes
semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local
cedet eieio-opt vc-bzr vc-src vc-sccs vc-cvs vc-rcs diff-hl-dired vc-git
helm-for-files helm-bookmark helm-adaptive magit-bookmark 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 magit-core magit-autorevert
magit-process magit-margin magit-mode magit-git magit-section
magit-popup git-commit magit-utils log-edit pcvs-util with-editor
helm-command helm-elisp helm-eval edebug helm-info ethan-wspace
smartparens-markdown markdown-mode winner helm-external helm-net init
server orary-work orary-rss orary-misc php-mode add-log coffee-mode
smartparens-rust rust-mode dockerfile-mode sh-script smie
smartparens-haskell haskell-mode haskell-cabal haskell-utils
haskell-font-lock haskell-indentation haskell-string
haskell-sort-imports haskell-lexeme haskell-align-imports haskell-compat
haskell-complete-module haskell-ghc-support haskell-customize orary-web
company-restclient know-your-http-well http-status-codes http-relations
http-methods http-headers orary-stats 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
ess-s-lang ess-help ess-site smartparens-ess ess ess-mode ess-noweb-mode
ess-inf ess-tracebug ess-generics ess-utils ess-custom executable
ess-compat orary-scala orary-python ein jedi jedi-core
python-environment epc ctable concurrent deferred auto-complete
highlight-indentation elpy pyvenv elpy-profile elpy-django elpy-refactor
smartparens-python python files-x cus-edit cus-start cus-load
orary-purescript orary-org ob-python ob-sql ob-shell ob-scheme geiser
ob-scala ensime ensime-mode ensime-sbt sbt-mode sbt-mode-rgrep
sbt-mode-comint sbt-mode-buffer sbt-mode-project sbt-mode-vars
ensime-http ensime-ui ensime-semantic-highlight ensime-doc ensime-search
ensime-helm ensime-undo ensime-startup ensime-refactor ensime-popup
ensime-goto-testfile ensime-eldoc ensime-notes ensime-company
ensime-editor ensime-ivy ensime-model ivy ivy-overlay popup ensime-debug
gdb-mi bindat gud ensime-stacktrace ensime-inf ensime-overlay
ensime-completion-util ensime-config ensime-util ensime-client
ensime-vars smartparens-scala scala-mode scala-mode-prettify-symbols
scala-mode-imenu scala-mode-map scala-mode-fontlock scala-mode-indent
scala-mode-paragraph scala-mode-syntax scala-mode-lib flymake
ensime-macros ob-R ob-java ox-confluence ob-async ob-clojure
ob-restclient restclient ox-pandoc ox-org ox-rst ox-gfm ox-md ox-odt
ox-latex ox-icalendar ox-html table ox-ascii ox-publish ox org-bullets
orary-javascript tide tide-lv typescript-mode orary-go company-go
go-mode find-file ffap orary-formats thrift mm-archive network-stream
nsm url-cache url-handlers rng-nxml rng-valid rng-loc rng-uri rng-parse
nxml-parse rng-match rng-dt rng-util rng-pttrn nxml-ns nxml-mode
nxml-outln nxml-rap nxml-util nxml-glyph nxml-enc xmltok hideshow
company-auctex smartparens-latex latex tex-ispell tex-style tex crm
orary-fsharp dabbrev orary-emacs-lisp orary-clojure clj-refactor
pkg-info lisp-mnt epl cap-words superword subword hydra lv inflections
edn peg cider cider-repl-history pulse tramp-sh cider-debug
cider-browse-ns cider-inspector cider-mode cider-interaction arc-mode
archive-mode cider-repl cider-resolve cider-test cider-overlays
cider-stacktrace cider-doc org-table cider-grimoire cider-popup
cider-eldoc cider-client cider-common cider-util nrepl-client queue
nrepl-dict cider-compat spinner multiple-cursors-core rect paredit
clj-refactor-compat seq-25 smartparens-clojure clojure-mode align
orary-lisp orary-floobits floobits orary-twitter orary-notify
sauron-notifications sauron-twittering twittering-mode sauron-org appt
diary-lib diary-loaddefs sauron-erc sauron-jabber sauron alert log4e
gntp orary-mu4e org-mu4e mu4e-contrib mu4e desktop frameset
mu4e-speedbar speedbar sb-image ezimage dframe mu4e-main mu4e-context
mu4e-view epa mu4e-headers mu4e-compose mu4e-draft mu4e-actions rfc2368
smtpmail sendmail mu4e-mark mu4e-message html2text mu4e-proc mu4e-utils
doc-view jka-compr image-mode mu4e-lists mu4e-vars hl-line mu4e-meta
orary-jabber jabber jabber-notifications notifications jabber-libnotify
dbus jabber-awesome jabber-osd jabber-wmii jabber-xmessage
jabber-festival jabber-sawfish jabber-ratpoison jabber-tmux
jabber-screen jabber-socks5 jabber-ft-server jabber-si-server
jabber-ft-client jabber-ft-common jabber-si-client jabber-si-common
jabber-feature-neg jabber-truncate jabber-time jabber-autoaway
jabber-vcard-avatars jabber-chatstates jabber-events jabber-vcard
jabber-avatar jabber-activity jabber-watch jabber-modeline
jabber-ahc-presence jabber-ahc jabber-version jabber-ourversion
jabber-muc-nick-completion hippie-exp jabber-browse jabber-search
jabber-register jabber-roster jabber-presence jabber-muc
jabber-bookmarks jabber-private jabber-muc-nick-coloring hexrgb
jabber-widget jabber-disco jabber-chat jabber-history jabber-chatbuffer
jabber-alert jabber-iq jabber-core jabber-console jabber-keymap
jabber-sasl sasl sasl-anonymous sasl-login sasl-plain fsm jabber-logon
jabber-conn srv dns starttls jabber-xml jabber-menu jabber-util
emoji-cheat-sheet-plus orary-irc erc-truncate erc-autoaway erc-spelling
erc-notify erc-log erc-list erc-menu erc-join erc-ring erc-networks
erc-pcomplete erc-track erc-match erc-button erc-fill erc-stamp
erc-netsplit erc-goodies erc erc-backend erc-compat orary-smartparens
smartparens-config smartparens-javascript smartparens-html smartparens
orary-projectile ag vc-svn find-dired persp-projectile perspective
orary-emote orary-helm helm-mode helm-config helm-easymenu
async-bytecomp helm-projectile helm-files helm-tags helm-buffers
helm-locate helm-types projectile ibuf-ext ibuffer helm-ag helm-grep
helm-regexp helm-utils helm-help helm-descbinds helm helm-source
helm-multi-match helm-lib async orary-company company-tern
dash-functional tern company-oddmuse company-keywords company-etags
company-gtags company-dabbrev-code company-dabbrev company-files
company-capf company-cmake company-xcode company-clang company-semantic
company-eclim company-template company-css company-nxml company-bbdb
company orary-magit orary-text orary-programming ggtags
rainbow-delimiters orary-keymap orary-editor autorevert filenotify
undo-tree diff rainbow-mode flyspell ispell wgrep-ag wgrep-helm wgrep
grep compile yasnippet re-builder gist gh-gist gh-oauth gh-api logito
gh-cache gh-auth gh-url url-http tls gnutls url-auth url-gw timezone
flycheck editorconfig ediff-merg ediff-wind ediff-diff ediff-mult
ediff-help ediff-init ediff-util ediff easy-kill js2-mode etags xref
project js sgml-mode cc-mode cc-fonts cc-guess cc-menus cc-cmds
cc-styles cc-align cc-engine cc-vars cc-defs elfeed-link elfeed-show
elfeed-search message rfc822 mml mml-sec epg mm-decode mm-bodies
mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev
gmm-utils mailheader shr dom subr-x elfeed-csv elfeed elfeed-curl
elfeed-log elfeed-db elfeed-lib url-queue browse-url xml-query xml
org-element avl-tree org org-macro org-footnote org-pcomplete org-list
org-faces org-entities noutline outline org-version ob-emacs-lisp ob
ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint
ob-core ob-eval org-compat org-macs org-loaddefs find-func cal-menu
calendar cal-loaddefs diff-hl vc-dir ewoc vc vc-dispatcher diff-mode
delsel orary-functions request mail-utils url url-proxy url-privacy
url-expand url-methods url-history url-cookie url-domsuf url-util
mailcap orary-ui beacon smart-mode-line rich-minority ucs-utils
persistent-soft list-utils pcache eieio-base font-utils unicode-fonts
which-func imenu rhombus-theme color orary-core midnight zop-to-char
windmove ace-window avy crux ido tramp tramp-compat tramp-loaddefs
trampver ucs-normalize shell pcomplete comint ansi-color ring thingatpt
dired+ image-dired format-spec image-file highlight dired-aux bookmark+
bookmark+-key advice derived dired-x dired bookmark+-1 bookmark+-bmu
bookmark+-lit bookmark pp time savehist recentf tree-widget wid-edit
saveplace orary-osx exec-path-from-shell f use-package diminish bind-key
easy-mmode finder-inf tex-site gh-common gh-profile url-parse
auth-source gnus-util mm-util help-fns mail-prsvr password-cache
url-vars s marshal eieio-compat ht json map dash eieio eieio-core rx
edmacro kmacro cl-seq cl-macs cl info package epg-config seq byte-opt gv
bytecomp byte-compile cl-extra help-mode easymenu cconv cl-loaddefs
pcase cl-lib mule-util time-date tooltip eldoc electric uniquify
ediff-hook vc-hooks lisp-float-type mwheel mac-win 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 mac multi-tty
make-network-process emacs)

Memory information:
((conses 16 1387771 125337)
(symbols 48 109814 640)
(miscs 40 1796 2542)
(strings 32 580903 41329)
(string-bytes 1 15890923)
(vectors 16 147216)
(vector-slots 8 4305852 85685)
(floats 8 2555 1154)
(intervals 56 9975 2564)
(buffers 976 66))

--
Ross Donaldson
Data Engineer, Disqus
Technologist, Reed College Software Design Studio
http://csv.rodeo




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Sun, 24 Sep 2017 12:27:01 GMT) Full text and rfc822 format available.

Message #8 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: Ross Donaldson <gastove <at> gmail.com>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3;
 python double-indents multi-line function argument blocks
Date: Sun, 24 Sep 2017 08:26:22 -0400
Ross Donaldson <gastove <at> gmail.com> writes:

> python-mode double-indents the arguments to function definitions.
>
> To reproduce:
> 1. emacs -Q
> 2. Enter the following:

It seems your email client dropped the whitespace, but I guess you meant

# This is fine:
def foo(arg):
    print('hello')

# This is indented double:
def foo(
        bar,
        baz
):
    print('hello')

# It should be:
def foo(
    bar,
    baz
):
    print('hello')

# Only seems to be true for `def`s so far, eg:
baz = list(
    'good'
)


> This is caused by the function `python-indent--calculate-indentation`,
> line ~1023 of `python.el`. Frustratingly, the behavior is hardcoded,
> and apparently intentional, as we see at the end of the function:
>
> ```
> (`(,(or :inside-paren-newline-start-from-block) . ,start)
> ;; Add two indentation levels to make the suite stand out.
> (goto-char start)
> (+ (current-indentation) (* python-indent-offset 2)))
> ```
>
> This is problematic. Python's holy grail of style, PEP-8, does not
> specify how this indentation should be done. However, many companies
> which write python -- like my employer -- create internal style guides
> to fill in gaps left by PEP-8. So far, in my career, they *all*
> indicate a single indent to be appropriate in this context.
>
> I'd like to propose two solutions; I don't know which will suit best:
>
> 1. Stop doubling indentation
> 2. Make the indent scaling integer a variable, so that this behavior can be changed.

I think the latter will be best, in case some people want the current
indentation still.

> A final complication for me is that, at least on `master` of the
> Github emacs-mirror (https://github.com/emacs-mirror/emacs), this
> function still uses `prog-widen` and `prog-first-column`, which have
> been removed from emacs. I'm not sure how to correctly patch this
> function to remove them.

I think it's rather that `prog-widen' and `prog-first-column' have been
*added* to Emacs.

> So! With a little guidance on `prog-widen`/`prog-first-column`, I'm
> happy to create and submit a patch, or I can leave this in y'all's
> capable hands.

If you can build from the git checkout write your patch against the
emacs-26 branch then you should be able to use the prog-FOO functions.
Otherwise, just write it against 25.3, it should be easy enough to
update the patch afterwards, if needed.

Have you assigned copyright to Emacs?  If the patch ends up more than
about 15 lines we won't be able to accept it until you do.  I guess just
adding and using the new custom variable should fit within that limit
though.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Sun, 24 Sep 2017 16:27:01 GMT) Full text and rfc822 format available.

Message #11 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Ross Donaldson <gastove <at> gmail.com>
To: Noam Postavsky <npostavs <at> users.sourceforge.net>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3; python double-indents multi-line function
 argument blocks
Date: Sun, 24 Sep 2017 16:25:48 +0000
[Message part 1 (text/plain, inline)]
First: apologies for the whitespace cleanup, but yes, you correctly figured
out what the bug report was intended to be. Thanks!

I was thrown off by the `prog-FOO` commands because of this message in the
ChangeLog:

```
2016-03-27  Dmitry Gutov  <dgutov <at> yandex.ru>

Remove prog-indentation-context

* lisp/progmodes/prog-mode.el: (prog-indentation-context)
(prog-first-column, prog-widen): Remove, as discussed in
http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
```

But I see you are correct, and only `prog-indentation-context` was removed.

I haven't assigned copyright to Emacs yet; I'd be happy to, and also, I
suspect this patch will be quite short. I'll send it over soon.

On Sun, Sep 24, 2017 at 5:26 AM Noam Postavsky <
npostavs <at> users.sourceforge.net> wrote:

> Ross Donaldson <gastove <at> gmail.com> writes:
>
> > python-mode double-indents the arguments to function definitions.
> >
> > To reproduce:
> > 1. emacs -Q
> > 2. Enter the following:
>
> It seems your email client dropped the whitespace, but I guess you meant
>
> # This is fine:
> def foo(arg):
>     print('hello')
>
> # This is indented double:
> def foo(
>         bar,
>         baz
> ):
>     print('hello')
>
> # It should be:
> def foo(
>     bar,
>     baz
> ):
>     print('hello')
>
> # Only seems to be true for `def`s so far, eg:
> baz = list(
>     'good'
> )
>
>
> > This is caused by the function `python-indent--calculate-indentation`,
> > line ~1023 of `python.el`. Frustratingly, the behavior is hardcoded,
> > and apparently intentional, as we see at the end of the function:
> >
> > ```
> > (`(,(or :inside-paren-newline-start-from-block) . ,start)
> > ;; Add two indentation levels to make the suite stand out.
> > (goto-char start)
> > (+ (current-indentation) (* python-indent-offset 2)))
> > ```
> >
> > This is problematic. Python's holy grail of style, PEP-8, does not
> > specify how this indentation should be done. However, many companies
> > which write python -- like my employer -- create internal style guides
> > to fill in gaps left by PEP-8. So far, in my career, they *all*
> > indicate a single indent to be appropriate in this context.
> >
> > I'd like to propose two solutions; I don't know which will suit best:
> >
> > 1. Stop doubling indentation
> > 2. Make the indent scaling integer a variable, so that this behavior can
> be changed.
>
> I think the latter will be best, in case some people want the current
> indentation still.
>
> > A final complication for me is that, at least on `master` of the
> > Github emacs-mirror (https://github.com/emacs-mirror/emacs), this
> > function still uses `prog-widen` and `prog-first-column`, which have
> > been removed from emacs. I'm not sure how to correctly patch this
> > function to remove them.
>
> I think it's rather that `prog-widen' and `prog-first-column' have been
> *added* to Emacs.
>
> > So! With a little guidance on `prog-widen`/`prog-first-column`, I'm
> > happy to create and submit a patch, or I can leave this in y'all's
> > capable hands.
>
> If you can build from the git checkout write your patch against the
> emacs-26 branch then you should be able to use the prog-FOO functions.
> Otherwise, just write it against 25.3, it should be easy enough to
> update the patch afterwards, if needed.
>
> Have you assigned copyright to Emacs?  If the patch ends up more than
> about 15 lines we won't be able to accept it until you do.  I guess just
> adding and using the new custom variable should fit within that limit
> though.
>
[Message part 2 (text/html, inline)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Sun, 24 Sep 2017 16:43:02 GMT) Full text and rfc822 format available.

Message #14 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: Ross Donaldson <gastove <at> gmail.com>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3;
 python double-indents multi-line function argument blocks
Date: Sun, 24 Sep 2017 12:42:12 -0400
Ross Donaldson <gastove <at> gmail.com> writes:

> I was thrown off by the `prog-FOO` commands because of this message
> in the ChangeLog:
>
> ```
> 2016-03-27  Dmitry Gutov  <dgutov <at> yandex.ru>
>
> Remove prog-indentation-context
>
> * lisp/progmodes/prog-mode.el: (prog-indentation-context)
> (prog-first-column, prog-widen): Remove, as discussed in
> http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
> ```

Oh, that is a bit confusing, but now I see what happened: it was indeed
removed for Emacs-25, but is still present in Emacs-26 and later.  If
you look to the end of that message you will see

	Do not merge to master.

Which gives the hint.


> I haven't assigned copyright to Emacs yet; I'd be happy to, and also,
> I suspect this patch will be quite short. I'll send it over soon.

Thanks!




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Sun, 24 Sep 2017 17:03:01 GMT) Full text and rfc822 format available.

Message #17 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Ross Donaldson <gastove <at> gmail.com>
To: Noam Postavsky <npostavs <at> users.sourceforge.net>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3; python double-indents multi-line function
 argument blocks
Date: Sun, 24 Sep 2017 17:02:05 +0000
[Message part 1 (text/plain, inline)]
Ahhh, I see. Well! This patch didn't need to touch either function, so!

Here we are.

On Sun, Sep 24, 2017 at 9:42 AM Noam Postavsky <
npostavs <at> users.sourceforge.net> wrote:

> Ross Donaldson <gastove <at> gmail.com> writes:
>
> > I was thrown off by the `prog-FOO` commands because of this message
> > in the ChangeLog:
> >
> > ```
> > 2016-03-27  Dmitry Gutov  <dgutov <at> yandex.ru>
> >
> > Remove prog-indentation-context
> >
> > * lisp/progmodes/prog-mode.el: (prog-indentation-context)
> > (prog-first-column, prog-widen): Remove, as discussed in
> > http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
> > ```
>
> Oh, that is a bit confusing, but now I see what happened: it was indeed
> removed for Emacs-25, but is still present in Emacs-26 and later.  If
> you look to the end of that message you will see
>
>         Do not merge to master.
>
> Which gives the hint.
>
>
> > I haven't assigned copyright to Emacs yet; I'd be happy to, and also,
> > I suspect this patch will be quite short. I'll send it over soon.
>
> Thanks!
>
[Message part 2 (text/html, inline)]
[scale-by-const.patch (application/octet-stream, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Sun, 24 Sep 2017 17:43:01 GMT) Full text and rfc822 format available.

Message #20 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: Ross Donaldson <gastove <at> gmail.com>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3;
 python double-indents multi-line function argument blocks
Date: Sun, 24 Sep 2017 13:42:12 -0400
Ross Donaldson <gastove <at> gmail.com> writes:

> From 83a622ec32a64ae30e68de18a84cc32fc6a811d9 Mon Sep 17 00:00:00 2001
> From: Ross Donaldson <gastove <at> gmail.com>
> Date: Sun, 24 Sep 2017 09:42:23 -0700
> Subject: [PATCH] Rather than scaling certain python blocks by a
> constant, scale by a defcustom
>
> This provides customization of the number of indent levels in
> multi-line `def` blocks in python; it also corrects a nearby (but
> unrelated) incorrect symbol quote.

You're missing the ChangeLog style entry here, see CONTRIBUTE under
"Commit messages" for details.  Also, an imperative style usually reads
more concisely ("Provide customization..." rather than "This
provides...").

I think a NEWS entry would be appropriate as well.

> -  :safe' booleanp)
> +  :safe 'booleanp)

It's better not to mix up your change with unrelated whitespace fixes.

>  (defcustom python-indent-trigger-commands
>    '(indent-for-tab-command yas-expand yas/expand)
> @@ -746,6 +746,12 @@ It makes underscores and dots word constituent chars.")
>    :type '(repeat symbol)
>    :group 'python)
>  
> +(defcustom python-indent-def-block-scale 2
> +  "Multiplier applied to indentation inside multi-line def blocks."
> +  :version "26.0"

This should rather be "26.1", as released Emacs versions always end in ".1".

> +  :type 'integer
> +  :safe (lambda (i) (and (integerp i) (< 0 i))))

I would probably go with 'natnump here.  This does also allow 0 which is
probably not generally wanted, but still "safe", I think.

>          (`(,(or :inside-paren-newline-start-from-block) . ,start)
> -         ;; Add two indentation levels to make the suite stand out.
>           (goto-char start)
> -         (+ (current-indentation) (* python-indent-offset 2)))))))
> +         (+ (current-indentation) (* python-indent-offset python-indent-def-block-scale)))))))

A line break here would keep the line to within a reasonable width
(generally we try to stay in 80 columns).

Thanks for working on this.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Tue, 26 Sep 2017 00:51:01 GMT) Full text and rfc822 format available.

Message #23 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Noam Postavsky <npostavs <at> users.sourceforge.net>,
 Ross Donaldson <gastove <at> gmail.com>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3; python double-indents multi-line function
 argument blocks
Date: Tue, 26 Sep 2017 03:50:34 +0300
On 9/24/17 7:42 PM, Noam Postavsky wrote:

> Oh, that is a bit confusing, but now I see what happened: it was indeed
> removed for Emacs-25, but is still present in Emacs-26 and later.

Ouch. Thanks for the reminder.

I better do something about that for Emacs 26 while there is still some 
time.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Thu, 12 Oct 2017 21:12:02 GMT) Full text and rfc822 format available.

Message #26 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Ross Donaldson <gastove <at> gmail.com>
To: Noam Postavsky <npostavs <at> users.sourceforge.net>
Cc: Ross Donaldson <gastove <at> gmail.com>, 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3;
 python double-indents multi-line function argument blocks
Date: Thu, 12 Oct 2017 14:11:49 -0700
ARG -- apologies! I somehow missed this as it came in. Thank you very much for the feedback; I'll make those changes and submit a new patch soon.

Noam Postavsky writes:

> Ross Donaldson <gastove <at> gmail.com> writes:
>
>> From 83a622ec32a64ae30e68de18a84cc32fc6a811d9 Mon Sep 17 00:00:00 2001
>> From: Ross Donaldson <gastove <at> gmail.com>
>> Date: Sun, 24 Sep 2017 09:42:23 -0700
>> Subject: [PATCH] Rather than scaling certain python blocks by a
>> constant, scale by a defcustom
>>
>> This provides customization of the number of indent levels in
>> multi-line `def` blocks in python; it also corrects a nearby (but
>> unrelated) incorrect symbol quote.
>
> You're missing the ChangeLog style entry here, see CONTRIBUTE under
> "Commit messages" for details.  Also, an imperative style usually reads
> more concisely ("Provide customization..." rather than "This
> provides...").
>
> I think a NEWS entry would be appropriate as well.
>
>> -  :safe' booleanp)
>> +  :safe 'booleanp)
>
> It's better not to mix up your change with unrelated whitespace fixes.
>
>>  (defcustom python-indent-trigger-commands
>>    '(indent-for-tab-command yas-expand yas/expand)
>> @@ -746,6 +746,12 @@ It makes underscores and dots word constituent chars.")
>>    :type '(repeat symbol)
>>    :group 'python)
>>
>> +(defcustom python-indent-def-block-scale 2
>> +  "Multiplier applied to indentation inside multi-line def blocks."
>> +  :version "26.0"
>
> This should rather be "26.1", as released Emacs versions always end in ".1".
>
>> +  :type 'integer
>> +  :safe (lambda (i) (and (integerp i) (< 0 i))))
>
> I would probably go with 'natnump here.  This does also allow 0 which is
> probably not generally wanted, but still "safe", I think.
>
>>          (`(,(or :inside-paren-newline-start-from-block) . ,start)
>> -         ;; Add two indentation levels to make the suite stand out.
>>           (goto-char start)
>> -         (+ (current-indentation) (* python-indent-offset 2)))))))
>> +         (+ (current-indentation) (* python-indent-offset python-indent-def-block-scale)))))))
>
> A line break here would keep the line to within a reasonable width
> (generally we try to stay in 80 columns).
>
> Thanks for working on this.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Tue, 07 Nov 2017 01:11:02 GMT) Full text and rfc822 format available.

Message #29 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: Ross Donaldson <gastove <at> gmail.com>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3;
 python double-indents multi-line function argument blocks
Date: Mon, 06 Nov 2017 20:10:29 -0500
Ross Donaldson <gastove <at> gmail.com> writes:

> ARG -- apologies! I somehow missed this as it came in. Thank you very
> much for the feedback; I'll make those changes and submit a new patch
> soon.

There's no deadline, just checking if maybe this got lost again...




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Mon, 25 Dec 2017 20:55:02 GMT) Full text and rfc822 format available.

Message #32 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Ross Donaldson <gastove <at> gmail.com>
To: Noam Postavsky <npostavs <at> users.sourceforge.net>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3; python double-indents multi-line function
 argument blocks
Date: Mon, 25 Dec 2017 20:54:35 +0000
[Message part 1 (text/plain, inline)]
Okay. Let's try this again.

Thanks for the guidance and the patience! Let me know if this is closer ;P


On Mon, Nov 6, 2017 at 5:10 PM Noam Postavsky <
npostavs <at> users.sourceforge.net> wrote:

> Ross Donaldson <gastove <at> gmail.com> writes:
>
> > ARG -- apologies! I somehow missed this as it came in. Thank you very
> > much for the feedback; I'll make those changes and submit a new patch
> > soon.
>
> There's no deadline, just checking if maybe this got lost again...
>
[Message part 2 (text/html, inline)]
[0001-Provide-a-new-customization-variable-for-python-mode.patch (application/octet-stream, attachment)]

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Mon, 01 Jan 2018 16:18:02 GMT) Full text and rfc822 format available.

Message #35 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Noam Postavsky <npostavs <at> users.sourceforge.net>
To: Ross Donaldson <gastove <at> gmail.com>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3;
 python double-indents multi-line function argument blocks
Date: Mon, 01 Jan 2018 11:17:18 -0500
tags 28475 fixed
close 28475 26.1
quit

Ross Donaldson <gastove <at> gmail.com> writes:

> Okay. Let's try this again.
>
> Thanks for the guidance and the patience! Let me know if this is
> closer ;P

Thanks, pushed to emacs-26.

[1: c59ecb005e]: 2018-01-01 11:16:00 -0500
  New customization variable for python-mode indentation (Bug#28475)
  https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=c59ecb005e560420d927ad7884c9030ba15319a4




Added tag(s) fixed. Request was from Noam Postavsky <npostavs <at> users.sourceforge.net> to control <at> debbugs.gnu.org. (Mon, 01 Jan 2018 16:18:02 GMT) Full text and rfc822 format available.

bug marked as fixed in version 26.1, send any further explanations to 28475 <at> debbugs.gnu.org and Ross Donaldson <gastove <at> gmail.com> Request was from Noam Postavsky <npostavs <at> users.sourceforge.net> to control <at> debbugs.gnu.org. (Mon, 01 Jan 2018 16:18:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#28475; Package emacs. (Tue, 02 Jan 2018 17:57:02 GMT) Full text and rfc822 format available.

Message #42 received at 28475 <at> debbugs.gnu.org (full text, mbox):

From: Ross Donaldson <gastove <at> gmail.com>
To: Noam Postavsky <npostavs <at> users.sourceforge.net>
Cc: 28475 <at> debbugs.gnu.org
Subject: Re: bug#28475: 25.3; python double-indents multi-line function
 argument blocks
Date: Tue, 02 Jan 2018 17:55:54 +0000
[Message part 1 (text/plain, inline)]
Thanks very much!

On Mon, Jan 1, 2018 at 8:17 AM Noam Postavsky <
npostavs <at> users.sourceforge.net> wrote:

> tags 28475 fixed
> close 28475 26.1
> quit
>
> Ross Donaldson <gastove <at> gmail.com> writes:
>
> > Okay. Let's try this again.
> >
> > Thanks for the guidance and the patience! Let me know if this is
> > closer ;P
>
> Thanks, pushed to emacs-26.
>
> [1: c59ecb005e]: 2018-01-01 11:16:00 -0500
>   New customization variable for python-mode indentation (Bug#28475)
>
> https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=c59ecb005e560420d927ad7884c9030ba15319a4
>
[Message part 2 (text/html, inline)]

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Wed, 31 Jan 2018 12:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 6 years and 85 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.