Commit graph

757 commits

Author SHA1 Message Date
Justin Timmons
18af404ef3 Support python virtualenv on w32 (Bug#24464)
According to the virtualenv docs only POSIX systems follow the
structure "/path/to/venv/bin/", while windows systems use
"/path/to/venv/Scripts" for the location of the binary files, most
importantly including the python interpreter (see:
https://virtualenv.pypa.io/en/stable/userguide/#windows-notes).
* lisp/progmodes/python.el (python-shell-calculate-exec-path): Use the
"/path/to/venv/Scripts" for `windows-nt' machines.

Copyright-paperwork-exempt: yes
2017-11-05 11:39:06 -05:00
Lele Gaifax
3ad712ebc9 Add a Flymake backend for Python (bug#28808)
Implement new Flymake backend with related customizable settings.

* lisp/progmodes/python.el (python-flymake-command)
(python-flymake-command-output-pattern)
(python-flymake-msg-alist): New defcustom.
(python--flymake-parse-output): New function, able to parse
python-flymake-command output accordingly to
python-flymake-command-output-pattern.
(python-flymake): New function implementing the backend
interface using python--flymake-parse-output for the real
work.
(python-mode): Add python-flymake to flymake-diagnostic-functions.
2017-11-05 12:15:45 +00:00
Noam Postavsky
5980de3727 Disable python native completion on w32 (Bug#28580)
* lisp/progmodes/python.el
(python-shell-completion-native-disabled-interpreters): For windows-nt
systems, put an empty string to match interpreters.
2017-10-15 13:58:45 -04:00
Noam Postavsky
c194fb61c6 Make python prettify symbols into a defvar (Bug#28713)
* lisp/progmodes/python.el (python-prettify-symbols-alist): New
variable.
(python--prettify-symbols-alist): Make into obsolete alias for
`python-prettify-symbols-alist'.
2017-10-07 19:19:05 -04:00
Noam Postavsky
b33808ce77 Give more helpful messages for python completion setup failures
* lisp/progmodes/python.el (python-shell-completion-native-setup): In
case the completion setup failed with some exception, print out the
exception type and message.  If libedit is detected, raise an
exception, since this is known to fail.
2017-10-02 23:15:43 -04:00
Joerg Behrmann
a2244f417a Improve python3-compatibility of fallback completion (Bug#28499)
* lisp/progmodes/python.el (python-eldoc-setup-code): Use
inspect.getfullargspec instead of inspect.getargspec to avoid a
deprecation warning on every usage of eldoc in python-mode.

Copyright-paperwork-exempt: yes
2017-09-25 19:39:19 -04:00
Paul Eggert
bc511a64f6 Prefer HTTPS to FTP and HTTP in documentation
Most of this change is to boilerplate commentary such as license URLs.
This change was prompted by ftp://ftp.gnu.org's going-away party,
planned for November.  Change these FTP URLs to https://ftp.gnu.org
instead.  Make similar changes for URLs to other organizations moving
away from FTP.  Also, change HTTP to HTTPS for URLs to gnu.org and
fsf.org when this works, as this will further help defend against
man-in-the-middle attacks (for this part I omitted the MS-DOS and
MS-Windows sources and the test tarballs to keep the workload down).
HTTPS is not fully working to lists.gnu.org so I left those URLs alone
for now.
2017-09-13 15:54:37 -07:00
Noam Postavsky
5440b238b1 Disable completion while entering python multiline statements
The "legacy" completion mechanism sends newlines to the running python
process to get the list of completions, which confuses things if the
user is in the middle of entering a multiline statement (Bug#28051).
It's better to disable completion in this case.
* lisp/progmodes/python.el (python-shell--block-prompt): New variable.
(python-shell-prompt-set-calculated-regexps): Set it.
(python-shell-completion-at-point): Return 'ignore' as the completion
function when the current prompt is a block prompt.
2017-08-27 13:46:41 -04:00
Noam Postavsky
9714545675 Work around w32-python-2.x bug to fix prompt detection (Bug#21376)
* lisp/progmodes/python.el (python-shell-prompt-detect): Don't put
carriage returns into the temporary file when running in unbuffered
mode, the w32 build of python 2.7 chokes on them.
2017-08-20 16:43:37 -04:00
Glenn Morris
94b2e1fc00 * lisp/progmodes/python.el (auto-mode-alist): Add .pyi. (Bug#27847) 2017-07-05 15:21:28 -04:00
Glenn Morris
182912c7a9 Add watch for password back to inferior python comint filter
It was removed along with other items for speed (bug#16875),
but doesn't seem to have been causing an issue, and it's useful to
have it there (bug#27154).
* lisp/progmodes/python.el (inferior-python-mode):
Add comint-watch-for-password-prompt to comint-output-filter-functions.
2017-06-02 20:06:12 -04:00
Jules Tamagnan
c9097e9b5f Comply with pep 8 style guide for backslash in assignment (Bug#24809)
* lisp/progmodes/python.el (python-indent--calculate-indentation):
Increase indent by `python-indent-offset' after
`:after-backslash-assignment-continuation'.

Copyright-paperwork-exempt: yes
2017-05-28 23:33:25 -04:00
Philipp Stephani
4fbd330fae Protect against an infloop in python-mode
There appears to be an edge case caused by using `syntax-ppss' in a
narrowed buffer during JIT lock inside of Python triple-quote strings.
Unfortunately it is impossible to reproduce without manually
destroying the syntactic information in the Python buffer, but it has
been observed in practice.  In that case it can happen that the syntax
caches get sufficiently out of whack so that there appear to be
overlapping strings in the buffer.  As Python has no nested strings,
this situation is impossible and leads to an infloop in
`python-nav-end-of-statement'.  Protect against this by checking
whether the search for the end of the current string makes progress.

* python.el (python-nav-end-of-statement): Protect against infloop.
* progmodes/python-tests.el
(python-tests--python-nav-end-of-statement--infloop): Add unit test.
2017-03-23 23:05:19 +01:00
Paul Eggert
da17b70a99 Merge from origin/emacs-25
a094732 * etc/PROBLEMS: Say that HP-UX cc doesn't work.
1925dd9 Fix duplicate wording in Emacs manual
6de8429 * lisp/paren.el (show-paren--default, show-paren-function): A...
2d671fd Fix wording in Emacs manual
a8766a2 Document how to customize input methods
6eb8995 * lisp/net/eww.el (eww-reload): Doc fix.  (Bug#25981)
aceac95 Fix warning message about native completion (Bug#25984)
a314c1f Clarify documentation of 'raise' and 'height' display specs
f366f6e Mention problems with GPaste in PROBLEMS
6e788ef ; etc/PROBLEMS: Explain about the python+libedit problem (Bug...
6406618 Fix doc strings in info.el
c1ed152 ; * src/keyboard.c (Fposn_at_point): Fix last change.
eed9677 Fix doc string of 'posn-at-point'
0d5957e Documentation fix in elisp reference manual
2017-03-19 12:34:04 -07:00
Paul Eggert
90f5282e20 Merge from origin/emacs-25
ec4226d * lisp/woman.el (woman): Fix docstring prefix arg description.
2b774fa Mention "editor" in Emacs man page header
ae60d0c Document problems with nerd-fonts
2fdb5a9 ; Details about pinning Emacs to w32 task bar
5c3105e * doc/lispref/modes.texi (Derived Modes): Make example more i...
4c51ef4 Clarify what is the "cursor"
8303c32 ; * etc/NEWS: Copyedits.
3f7493e ; Fix a typo in comment
c54cf8d Improve commentary in lisp.h
8b92f86 ; * admin/make-tarball.txt: Cross-reference admin/release-pro...
0ba9932 Disable native completion for ipython (Bug#25067)
38fc456 Fix a typo in ada-mode manual
00e75ba ; * src/coding.c (Fencode_coding_region): Fix a typo in the d...
a541c21 Clarify documentation of 'bufferpos-to-filepos' and 'filepos-...

# Conflicts:
#	etc/NEWS
#	etc/PROBLEMS
2017-03-19 12:34:03 -07:00
Paul Eggert
468259c26e Merge from origin/emacs-25
0e35405 Improve documentation of coding-systems
c2fd04c Improve definition of 'variable-pitch' face on MS-Windows
16fb50d Fix an error message in python.el
a2a2073 Clarify major mode switching
fc38671 Add helpful comment to compile-command's docstring
ee65d85 Fix ':version' of 'select-enable-primary'
2017-03-19 12:24:51 -07:00
Noam Postavsky
aceac954ed Fix warning message about native completion (Bug#25984)
* lisp/progmodes/python.el (python-shell-completion-native-turn-on-maybe):
The relevant variable is `python-shell-completion-native-enable'.
2017-03-05 23:15:32 -05:00
Noam Postavsky
0ba9932d14 Disable native completion for ipython (Bug#25067)
* lisp/progmodes/python.el:
(python-shell-completion-native-disabled-interpreters): Add "ipython".
2017-02-07 21:18:19 -05:00
Hong Xu
7cb7a582f4 python-mode: Fix detection for opening blocks.
* python.el (python-info-dedenter-opening-block-positions): There
	can't be any back-indented lines between an opening block and the
	current line.

	* python-tests.el (python-indent-electric-colon-4): Add an indent
	test case where there is one-more indented previous opening block.
2017-01-26 20:14:19 -05:00
Dmitry Lazurkin
d4a97088f6 Fix extracting async def type and name in python mode imenu
* lisp/progmodes/python.el (python-imenu--get-defun-type-name):
New function.
(python-imenu--build-tree): Use python-imenu--get-defun-type-name for
extract async or simple def type and name at current
position (Bug#24820).
* test/lisp/progmodes/python-tests.el (python-imenu-create-index-1):
(python-imenu-create-flat-index-1): Add async def's.
2017-01-12 20:40:19 -05:00
Eli Zaretskii
16fb50db11 Fix an error message in python.el
* lisp/progmodes/python.el (python-shell-get-process-or-error):
Don't repeat the same key binding twice.  (Bug#25405)
2017-01-09 17:28:17 +02:00
Paul Eggert
bcf244ef9b Merge from origin/emacs-25
2e2a806 Fix copyright years by hand
5badc81 Update copyright year to 2017
2017-01-01 01:10:47 -08:00
Paul Eggert
5badc81c1c Update copyright year to 2017
Run admin/update-copyright.
2016-12-31 19:42:26 -08:00
Noam Postavsky
8f611e5e23 Fix bad quoting of python-shell-interpreter
`python-shell-calculate-command' was using `shell-quote-argument' as if
it was generating a shell command, but its callers don't pass the result
to a shell, and they expect to parse it with `split-string-and-unquote'.
This caused problems depending on the flavor of shell quoting in
effect (Bug#25025).

* lisp/progmodes/python.el (python-shell-calculate-command): Use
`combine-and-quote-strings' to quote the interpreter, so that it can be
parsed by `python-shell-make-comint' successfully using
`split-string-and-unquote'.
2016-12-09 00:14:48 -05:00
Michael Albinus
22946702b4 Add file-local-name
* doc/lispref/files.texi (Magic File Names): Add `file-local-name'.
(Unique File Names): Use it.

* etc/NEWS: Mention `file-local-name'.

* lisp/files.el (file-local-name): New defun.
(file-expand-wildcards):
* lisp/eshell/em-tramp.el (eshell/su, eshell/sudo):
* lisp/eshell/esh-ext.el (eshell-remote-command):
* lisp/eshell/esh-proc.el (eshell-gather-process-output):
* lisp/org/ob-core.el (org-babel-local-file-name):
* lisp/progmodes/gud.el (gud-common-init, gud-format-command):
* lisp/progmodes/python.el (python-shell-send-file):
* lisp/shell.el (shell):
* lisp/vc/ediff-diff.el (ediff-same-file-contents):
* lisp/vc/vc-git.el (vc-git-checkin): Use it.
2016-11-20 16:29:47 +01:00
Paul Eggert
c61ee94959 Merge from origin/emacs-25
4af5981 Add a comment in generated refcards about the source
ef880a5 ; * etc/refcards/calccard.tex: Remove obsolete comment.
4887e7c js-mode: Fix indent problem after a regexp
e992ac0 Fix sluggish display of symbols in UTF-8 language environment
1fc101b Don't confuse how Texinfo outputs @var with the input
91aa5d1 * doc/lispref/display.texi (Scroll Bars): * doc/lispref/frame...
f758fcd * doc/emacs/cmdargs.texi (Initial Options): Copyedit for --da...
5b0cddd More fixes in copyright notices in etc/refcards/
f994c20 Update copyright text in refcards
9ad2ae7 Fix Outline command names
26c3554 Send text received by bracketed paste to process
db0b58d Correct the statement about programming modes always running ...
78aece4 Improve documentation of 'occur'
eb364fd Do call debugger on failed cl-assert
3ef4ee8 Avoid infloop in python
8da810f Don't refer to obsolete FEATURE-unload-hook
4f478ca Improve documentation of dabbrevs
7272e5d * lisp/chistory.el (list-command-history): Doc fix.  (Bug#24890)
89b7482 * lisp/simple.el (set-mark-command): Doc fix.  (Bug#24890)
3b199f7 Improve documentation of some Help commands
93d3a0e Fix documentation of yes-or-no prompts
af04919 Fix documentation of partial completion style
ed80184 Fix documentation of the mode line on emacsclient frames
e6be855 Fix description of 'C-z' in User manual
16f7007 Improve and clarify documentation of Outline Mode
31d93aa Add Emacs version number to nt/README.W32
0b6b815 Fix python-mode hideshow regexp
dc152c5 Modernize usage of 'macOS' in doc and comments
84c5343 Prefer comments /* like this */ in C code
bb61e50 * doc/lispref/loading.texi (Autoload): Better link (Bug#24845).
3ef86fd Clarify documentation of face attribute functions
de51d59 ; * nt/README.W32: Minor copyedits.
db436e9 Don't call debug on failed cl-assert

# Conflicts:
#	doc/emacs/cmdargs.texi
#	etc/NEWS
#	etc/PROBLEMS
#	lisp/auth-source.el
#	lisp/net/tramp-sh.el
2016-11-19 14:31:05 -08:00
Mark Oteiza
5b003caa21 Fix arglist in python.el (Bug#24762)
* lisp/progmodes/python.el: Remove unneeded second args.
(python-define-auxiliary-skeleton): DOC arg should be &optional.
2016-11-17 17:58:20 -05:00
Daniel Colascione
3ef4ee84fa Avoid infloop in python
Fix bug#24905

* lisp/progmodes/python.el (python-info-docstring-p): Improve
infloop avoidance: replace (bobp) with generic test for
forward progress.
* test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid): Add
test for bug#24905
2016-11-08 15:28:49 -08:00
Daniel Colascione
112111c4e4 Avoid infloop in python
Fix bug#24905

* lisp/progmodes/python.el (python-info-docstring-p): Improve
infloop avoidance: replace (bobp) with generic test for
forward progress.
* test/lisp/progmodes/python-tests.el (python-bob-infloop-avoid): Add
test for bug#24905
2016-11-08 15:26:43 -08:00
Noam Postavsky
0b6b815118 Fix python-mode hideshow regexp
2015-02-07 "Fix hideshow integration[...]" changed the regexp added to
`hs-special-modes-alist' so that it worked when not searching from the
beginning of the line.  However, this allows matching tokens ending in
"def" or "class", not just those keywords.  This results in an infinite
loop in hs-hide-all (Bug #24815).

* lisp/progmodes/python.el (python-mode): Add symbol boundaries around
the def|class matching part of the regexp added to
hs-special-modes-alist.
2016-11-06 09:14:12 -05:00
Paul Eggert
dc152c54f4 Modernize usage of 'macOS' in doc and comments
Apple changed the spelling of its operating system again, to "macOS",
effective with macOS 10.12 Sierra (2016-09-20).  Change Emacs
documentation and comments to match this.  Stick with older OS
spellings ("OS X", "Mac OS X") when talking about older releases where
the older names are more correct.
2016-11-06 00:42:03 -07:00
Paul Eggert
6a20bd3579 Merge from origin/emacs-25
dbb3410 python.el: Fix detection of native completion in Python 3 (bu...
91c97b6 * Makefile.in (install-arch-indep): Skip etc/refcards/emacsve...
9c1cb8d * lisp/subr.el (set-transient-map): Exit for unbound events (...
9c247d2 Update category-table for Chinese characters
43986d1 Inhibit buffer relocation during regex searches
fee4cef Revert fixes to allocation of regex matching
2016-11-04 15:01:17 -07:00
Clément Pit--Claudel
dbb3410228 python.el: Fix detection of native completion in Python 3 (bug #24401)
With Python 3.5, (python-shell-completion-native-get-completions ... "")
would return an empty list, causing python.el to think that native
completion was unavailable (the difference between Python 2 and Python 3
is due to https://bugs.python.org/issue25660).

* lisp/progmodes/python.el (python-shell-completion-native-try): Use "_"
  to check whether native completion is available instead of "".
2016-10-31 08:35:33 -04:00
Dmitry Gutov
6dc0bafd59 ; Revert "Use eldoc-documentation-functions"
This reverts commit 001d88b62e.

It doesn't have the consensus, as evidenced by
http://lists.gnu.org/archive/html/emacs-devel/2016-06/msg00138.html
2016-07-18 02:17:06 +03:00
Mark Oteiza
001d88b62e Use eldoc-documentation-functions
* lisp/hexl.el (hexl-mode):
* lisp/ielm.el (inferior-emacs-lisp-mode):
* lisp/progmodes/cfengine.el (cfengine3-mode):
* lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
* lisp/progmodes/octave.el (octave-mode, inferior-octave-mode):
* lisp/progmodes/python.el (python-mode):
* lisp/simple.el (read--expression): Add buffer-locally to hook
eldoc-documentation-functions.
2016-07-17 12:49:57 -04:00
Paul Eggert
68cb71c092 Merge from origin/emacs-25
9ae514a * etc/AUTHORS: Update the AUTHORS file
3ca428e add entries to authors.el
66d556b Fix eldoc-related freezes in python mode
d59bcbc Handle mouse leaving initial window in `mouse-set-region' (Bu...
27fe1e4 org.el: Fix bindings of < and > for calendar scrolling
a813487 Fix undo boundary in recursive edit (Bug#23632)
1f85b7c Doc fixes re alist-get.  (Bug#23548)
ba3f206 * lisp/progmodes/python.el (inferior-python-mode): Avoid tabs...
56fa055 * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>:...
4c1370a * lisp/help-fns.el (describe-function-1): Fix handling of fil...
a3f7ae8 * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
601b9b2 * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
2016-06-19 00:47:00 +02:00
Noam Postavsky
2f523c1580 Make python.el work in Emacs 24
* lisp/progmodes/python.el: Bump version.
(python-define-auxiliary-skeleton): Only use format-message if
fbound (Bug#23126).
2016-06-14 08:08:01 -04:00
Jules Tamagnan
66d556b518 Fix eldoc-related freezes in python mode
* lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
(python-eldoc-function-timeout)
(python-eldoc-function-timeout-permanent): New defcustoms.
(python-eldoc-function): If python-eldoc--get-doc-at-point times
out, effectively turn off ElDoc in current buffer.  (Bug#23609)
2016-06-10 12:08:29 +03:00
Glenn Morris
ba3f206239 * lisp/progmodes/python.el (inferior-python-mode):
Avoid tabs.  (Bug#23616)
2016-06-07 18:26:33 -04:00
Sam Steingold
de45d9145d python-describe-at-point: add and bind 2016-05-18 09:56:17 -04:00
Jorgen Schaefer
1a08fb0754 Add a number of Python 3 exceptions
* lisp/progmoes/python.el (python-font-lock-keywords): Clean up the exception
list, adding a number of new Python 3 exceptions and moving some exceptions
to the Python 2 and 3 list as Python 2.7 includes them.
2016-04-27 10:46:43 +02:00
Jorgen Schaefer
40bfebec83 Add Python 3.5 keyword "await"
* lisp/progmodes/python.el (python-font-lock-keywords): Add await as
keyword.
2016-04-26 13:50:30 -04:00
Lele Gaifax
fa7886a46f Add new keywords of Python 3.5
Python 3.5, released in mid September 2015, introduced a few new
keywords to better support asynchronous code, "async" and "await"
in particular. See https://www.python.org/dev/peps/pep-0492/ for
details. (Bug#21783)
* lisp/progmodes/python.el (python-rx-constituents): Add async
def/for/with as block-start and async def as defun.
* lisp/progmodes/python.el (python-font-lock-keywords): Add async
def/for/with as keyword.
* test/automated/python-tests.el (python-indent-after-async-block-1,
python-indent-after-async-block-2, python-indent-after-async-block-3,
python-nav-beginning-of-defun-3): New tests to test indentation and
navigation for the async keyword.
2016-04-26 13:50:26 -04:00
Jorgen Schaefer
928f51945d Add Python 3.5 keyword "await"
* lisp/progmodes/python.el (python-font-lock-keywords): Add await as
keyword.
2016-04-21 10:05:26 +02:00
Lele Gaifax
1f6b0bc151 Add new keywords of Python 3.5
Python 3.5, released in mid September 2015, introduced a few new
keywords to better support asynchronous code, "async" and "await"
in particular. See https://www.python.org/dev/peps/pep-0492/ for
details. (Bug#21783)
* lisp/progmodes/python.el (python-rx-constituents): Add async
def/for/with as block-start and async def as defun.
* lisp/progmodes/python.el (python-font-lock-keywords): Add async
def/for/with as keyword.
* test/automated/python-tests.el (python-indent-after-async-block-1,
python-indent-after-async-block-2, python-indent-after-async-block-3,
python-nav-beginning-of-defun-3): New tests to test indentation and
navigation for the async keyword.
2016-04-06 10:51:09 +02:00
Dmitry Gutov
124c48619e 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.

* doc/lispref/text.texi (Mode-Specific Indent): Remove references
to them.

* etc/NEWS: Ditto.

* lisp/progmodes/python.el: (prog-widen, prog-first-column):
Remove the compatibility aliases and all uses.

Do not merge to master.
2016-03-28 03:59:05 +03:00
Paul Eggert
cb4e054e41 - 2016-01-30 11:43:26 -08:00
Alan Mackenzie
fbce4757a8 Expunge "allow" + infinitive without direct object from source and doc.
Do the same for "permit", "enable", and "prevent".

* doc/emacs/mule.texi:
* doc/lispref/control.texi:
* doc/lispref/display.texi:
* doc/lispref/frames.texi:
* doc/lispref/functions.texi:
* doc/lispref/nonascii.texi:
* doc/lispref/streams.texi:
* doc/lispref/windows.texi:
* doc/misc/dbus.texi:
* doc/misc/eww.texi:
* doc/misc/flymake.texi:
* doc/misc/octave-mode.texi:
* doc/misc/org.texi:
* doc/misc/reftex.texi:
* doc/misc/tramp.texi:
* doc/misc/wisent.texi:
* etc/NEWS:
* lisp/autorevert.el:
* lisp/cedet/mode-local.el:
* lisp/cedet/semantic/senator.el:
* lisp/cedet/semantic/wisent.el:
* lisp/dos-fns.el:
* lisp/frameset.el:
* lisp/gnus/gnus-agent.el:
* lisp/gnus/mm-util.el:
* lisp/international/characters.el:
* lisp/ldefs-boot.el:
* lisp/mail/mailclient.el:
* lisp/man.el:
* lisp/mh-e/mh-search.el:
* lisp/net/tramp-cmds.el:
* lisp/net/tramp-gvfs.el:
* lisp/org/org-crypt.el:
* lisp/org/org-element.el:
* lisp/org/org-feed.el:
* lisp/org/org.el:
* lisp/org/ox-ascii.el:
* lisp/org/ox-icalendar.el:
* lisp/org/ox-publish.el:
* lisp/org/ox.el:
* lisp/play/gamegrid.el:
* lisp/play/gomoku.el:
* lisp/progmodes/antlr-mode.el:
* lisp/progmodes/python.el:
* lisp/progmodes/vhdl-mode.el:
* lisp/strokes.el:
* lisp/textmodes/ispell.el:
* lisp/tree-widget.el:
* lisp/vc/pcvs.el:
* lisp/window.el:
* src/lisp.h:
* src/w32.c:
* src/w32heap.c:
* src/w32term.c:
* src/window.c:
* src/xfaces.c:

Replace solecisms like "This allow to do something" with a correct
alternative, such as "This allow you to do something", "This allows
something to be done" or "This allows the doing of something".
2016-01-24 20:30:39 +00:00
John Wiegley
6acd2aa02c - 2016-01-18 22:56:33 -08:00
Sam Steingold
984a149046 replace tramp-compat-split-string' (removed) with split-string'
(python-shell-tramp-refresh-process-environment)
(python-shell-calculate-pythonpath): use `split-string'
instead of defunct `tramp-compat-split-string'
2016-01-15 11:53:05 -05:00
Glenn Morris
e85e0d5951 Add some missing version tags.
* lisp/electric.el (electric-quote-comment)
(electric-quote-string, electric-quote-paragraph):
* lisp/epg-config.el (epg-gpgconf-program):
* lisp/rect.el (rectangle-preview):
* lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
* lisp/emacs-lisp/package.el (package-selected-packages)
(package-hidden-regexps):
* lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
* lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
* lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
(mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
(mml-smime-encrypt-to-self, mml2015-sign-with-sender)
(mml-smime-sign-with-sender, mml2015-always-trust)
(mml-secure-fail-when-key-problem, mml-secure-key-preferences):
* lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
(browse-url-conkeror-arguments):
* lisp/net/newst-reader.el (newsticker-download-logos):
* lisp/progmodes/gud.el (gud-guiler-command-name):
* lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
* lisp/progmodes/project.el (project-vc):
* lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
(python-shell-remote-exec-path, python-shell-first-prompt-hook)
(python-shell-completion-native-disabled-interpreters)
(python-shell-completion-native-enable)
(python-shell-completion-native-output-timeout)
(python-shell-completion-native-try-output-timeout):
* lisp/progmodes/xref.el (xref):
* lisp/term/screen.el (xterm-screen-extra-capabilities):
* lisp/term/xterm.el (xterm-max-cut-length):
Add missing version tags.
2016-01-12 20:06:49 -05:00
Paul Eggert
0e963201d0 Update copyright year to 2016
Run admin/update-copyright.
2016-01-01 01:34:24 -08:00
Dmitry Gutov
be0bba46a0 Unbreak completion in python-mode buffers
* lisp/progmodes/python.el (python-shell-completion-at-point):
Unbreak in python-mode buffers.
2015-12-30 06:25:48 +02:00
Paul Eggert
ac16149ba4 Fix docstring quoting problems with ‘ '’
Problem reported by Artur Malabarba in:
http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
Most of these fixes are to documentation; many involve fixing
longstanding quoting glitches that are independent of the
recent substitute-command-keys changes.  The changes to code are:
* lisp/cedet/mode-local.el (mode-local-augment-function-help)
(describe-mode-local-overload):
Substitute docstrings before displaying them.
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
Quote the generated docstring for later substitution.
2015-11-17 15:29:35 -08:00
Vasily Korytov
dbc090aeab Recognize .rbw and .pyw files (bug#18753)
* lisp/progmodes/python.el (auto-mode-alist):
Recognize .pyw files.

* lisp/progmodes/ruby-mode.el (auto-mode-alist):
Recognize .rbw files.
2015-11-16 01:32:35 +02:00
Juanma Barranquero
590a820fd9 Fix bug#21762
* lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
`eql' instead of `=' to accommodate the case that (syntax-after (point))
returns nil.

* test/automated/python-tests.el (python-indent-inside-paren-7):
New test.
2015-11-01 02:55:16 +01:00
Dmitry Gutov
166a6556d0 ; Remove extraneous "coding: utf-8" specifications in Elisp files 2015-09-29 01:39:46 +03:00
Paul Eggert
818fc6e128 Clarify or replace a few \u escapes.
* doc/lispref/nonascii.texi (Character Properties)
More-detailed commentary for \u escapes.
* lisp/progmodes/python.el (python--prettify-symbols-alist):
* lisp/replace.el (query-replace-from-to-separator):
* lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
(rst-mode-syntax-table):
* lisp/whitespace.el (whitespace-display-mappings):
Prefer actual character to \u escape when this makes the code
easier to follow in the usual case where Unicode chars can be
displayed.
2015-09-21 07:59:16 -07:00
Mark Oteiza
dadcf33984 Add prettify symbols to python-mode
lisp/progmodes/python.el (python-prettify-symbols-alist): New variable
lisp/progmodes/python.el (python-mode): Use it
2015-09-20 22:39:35 -04:00
Ken Manheimer
89898fcd83 Repair pdbtrack so it follows transition from one remote file to another.
* python.el (python-pdbtrack-set-tracked-buffer).
2015-09-19 21:34:36 -04:00
Paul Eggert
6afef3f6ca Go back to grave quoting in source-code docstrings etc.
This reverts almost all my recent changes to use curved quotes
in docstrings and/or strings used for error diagnostics.
There are a few exceptions, e.g., Bahá’í proper names.
* admin/unidata/unidata-gen.el (unidata-gen-table):
* lisp/abbrev.el (expand-region-abbrevs):
* lisp/align.el (align-region):
* lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
(outlineify-sticky):
* lisp/apropos.el (apropos-library):
* lisp/bookmark.el (bookmark-default-annotation-text):
* lisp/button.el (button-category-symbol, button-put)
(make-text-button):
* lisp/calc/calc-aent.el (math-read-if, math-read-factor):
* lisp/calc/calc-embed.el (calc-do-embedded):
* lisp/calc/calc-ext.el (calc-user-function-list):
* lisp/calc/calc-graph.el (calc-graph-show-dumb):
* lisp/calc/calc-help.el (calc-describe-key)
(calc-describe-thing, calc-full-help):
* lisp/calc/calc-lang.el (calc-c-language)
(math-parse-fortran-vector-end, math-parse-tex-sum)
(math-parse-eqn-matrix, math-parse-eqn-prime)
(calc-yacas-language, calc-maxima-language, calc-giac-language)
(math-read-giac-subscr, math-read-math-subscr)
(math-read-big-rec, math-read-big-balance):
* lisp/calc/calc-misc.el (calc-help, report-calc-bug):
* lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
(calc-auto-recompute):
* lisp/calc/calc-prog.el (calc-fix-token-name)
(calc-read-parse-table-part, calc-user-define-invocation)
(math-do-arg-check):
* lisp/calc/calc-store.el (calc-edit-variable):
* lisp/calc/calc-units.el (math-build-units-table-buffer):
* lisp/calc/calc-vec.el (math-read-brackets):
* lisp/calc/calc-yank.el (calc-edit-mode):
* lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
* lisp/calendar/appt.el (appt-display-message):
* lisp/calendar/diary-lib.el (diary-check-diary-file)
(diary-mail-entries, diary-from-outlook):
* lisp/calendar/icalendar.el (icalendar-export-region)
(icalendar--convert-float-to-ical)
(icalendar--convert-date-to-ical)
(icalendar--convert-ical-to-diary)
(icalendar--convert-recurring-to-diary)
(icalendar--add-diary-entry):
* lisp/calendar/time-date.el (format-seconds):
* lisp/calendar/timeclock.el (timeclock-mode-line-display)
(timeclock-make-hours-explicit, timeclock-log-data):
* lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
(todo-item-mark, todo-check-format)
(todo-insert-item--next-param, todo-edit-item--next-key)
(todo-mode):
* lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
* lisp/cedet/mode-local.el (describe-mode-local-overload)
(mode-local-print-binding, mode-local-describe-bindings-2):
* lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
* lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
* lisp/cus-start.el (standard):
* lisp/cus-theme.el (describe-theme-1):
* lisp/custom.el (custom-add-dependencies, custom-check-theme)
(custom--sort-vars-1, load-theme):
* lisp/descr-text.el (describe-text-properties-1, describe-char):
* lisp/dired-x.el (dired-do-run-mail):
* lisp/dired.el (dired-log):
* lisp/emacs-lisp/advice.el (ad-read-advised-function)
(ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
(ad-disable-advice, ad-remove-advice, ad-set-argument)
(ad-set-arguments, ad--defalias-fset, ad-activate)
(ad-deactivate):
* lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
(byte-compile-unfold-lambda, byte-optimize-form-code-walker)
(byte-optimize-while, byte-optimize-apply):
* lisp/emacs-lisp/byte-run.el (defun, defsubst):
* lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
(byte-compile-log-file, byte-compile-format-warn)
(byte-compile-nogroup-warn, byte-compile-arglist-warn)
(byte-compile-cl-warn)
(byte-compile-warn-about-unresolved-functions)
(byte-compile-file, byte-compile--declare-var)
(byte-compile-file-form-defmumble, byte-compile-form)
(byte-compile-normal-call, byte-compile-check-variable)
(byte-compile-variable-ref, byte-compile-variable-set)
(byte-compile-subr-wrong-args, byte-compile-setq-default)
(byte-compile-negation-optimizer)
(byte-compile-condition-case--old)
(byte-compile-condition-case--new, byte-compile-save-excursion)
(byte-compile-defvar, byte-compile-autoload)
(byte-compile-lambda-form)
(byte-compile-make-variable-buffer-local, display-call-tree)
(batch-byte-compile):
* lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
* lisp/emacs-lisp/chart.el (chart-space-usage):
* lisp/emacs-lisp/check-declare.el (check-declare-scan)
(check-declare-warn, check-declare-file)
(check-declare-directory):
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
(checkdoc-message-text-engine):
* lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
(cl--describe-class):
* lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
(cl--generic-describe, cl-generic-generalizers):
* lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
(cl-symbol-macrolet):
* lisp/emacs-lisp/cl.el (cl-unload-function, flet):
* lisp/emacs-lisp/copyright.el (copyright)
(copyright-update-directory):
* lisp/emacs-lisp/edebug.el (edebug-read-list):
* lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
* lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
(eieio-oref):
* lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
* lisp/emacs-lisp/eieio-speedbar.el:
(eieio-speedbar-child-make-tag-lines)
(eieio-speedbar-child-description):
* lisp/emacs-lisp/eieio.el (defclass, change-class):
* lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
(elint-init-form, elint-check-defalias-form)
(elint-check-let-form):
* lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
(ert-results-pop-to-backtrace-for-test-at-point)
(ert-results-pop-to-messages-for-test-at-point)
(ert-results-pop-to-should-forms-for-test-at-point)
(ert-describe-test):
* lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
(find-function-library):
* lisp/emacs-lisp/generator.el (iter-yield):
* lisp/emacs-lisp/gv.el (gv-define-simple-setter):
* lisp/emacs-lisp/lisp-mnt.el (lm-verify):
* lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
* lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
* lisp/emacs-lisp/nadvice.el (advice--make-docstring)
(advice--make, define-advice):
* lisp/emacs-lisp/package-x.el (package-upload-file):
* lisp/emacs-lisp/package.el (package-version-join)
(package-disabled-p, package-activate-1, package-activate)
(package--download-one-archive)
(package--download-and-read-archives)
(package-compute-transaction, package-install-from-archive)
(package-install, package-install-selected-packages)
(package-delete, package-autoremove, describe-package-1)
(package-install-button-action, package-delete-button-action)
(package-menu-hide-package, package-menu--list-to-prompt)
(package-menu--perform-transaction)
(package-menu--find-and-notify-upgrades):
* lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
* lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
* lisp/emacs-lisp/ring.el (ring-previous, ring-next):
* lisp/emacs-lisp/rx.el (rx-check, rx-anything)
(rx-check-any-string, rx-check-any, rx-check-not, rx-=)
(rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
(rx-form):
* lisp/emacs-lisp/smie.el (smie-config-save):
* lisp/emacs-lisp/subr-x.el (internal--check-binding):
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
* lisp/emacs-lisp/testcover.el (testcover-1value):
* lisp/emacs-lisp/timer.el (timer-event-handler):
* lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
(viper-toggle-search-style, viper-kill-buffer)
(viper-brac-function):
* lisp/emulation/viper-macs.el (viper-record-kbd-macro):
* lisp/env.el (setenv):
* lisp/erc/erc-button.el (erc-nick-popup):
* lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
* lisp/eshell/em-dirs.el (eshell/cd):
* lisp/eshell/em-glob.el (eshell-glob-regexp)
(eshell-glob-entries):
* lisp/eshell/em-pred.el (eshell-parse-modifiers):
* lisp/eshell/esh-opt.el (eshell-show-usage):
* lisp/facemenu.el (facemenu-add-new-face)
(facemenu-add-new-color):
* lisp/faces.el (read-face-name, read-face-font, describe-face)
(x-resolve-font-name):
* lisp/files-x.el (modify-file-local-variable):
* lisp/files.el (locate-user-emacs-file, find-alternate-file)
(set-auto-mode, hack-one-local-variable--obsolete)
(dir-locals-set-directory-class, write-file, basic-save-buffer)
(delete-directory, copy-directory, recover-session)
(recover-session-finish, insert-directory)
(file-modes-char-to-who, file-modes-symbolic-to-number)
(move-file-to-trash):
* lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
* lisp/find-cmd.el (find-generic, find-to-string):
* lisp/finder.el (finder-commentary):
* lisp/font-lock.el (font-lock-fontify-buffer):
* lisp/format.el (format-write-file, format-find-file)
(format-insert-file):
* lisp/frame.el (get-device-terminal, select-frame-by-name):
* lisp/fringe.el (fringe--check-style):
* lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
* lisp/help-fns.el (help-fns--key-bindings)
(help-fns--compiler-macro, help-fns--parent-mode)
(help-fns--obsolete, help-fns--interactive-only)
(describe-function-1, describe-variable):
* lisp/help.el (describe-mode)
(describe-minor-mode-from-indicator):
* lisp/image.el (image-type):
* lisp/international/ccl.el (ccl-dump):
* lisp/international/fontset.el (x-must-resolve-font-name):
* lisp/international/mule-cmds.el (prefer-coding-system)
(select-safe-coding-system-interactively)
(select-safe-coding-system, activate-input-method)
(toggle-input-method, describe-current-input-method)
(describe-language-environment):
* lisp/international/mule-conf.el (code-offset):
* lisp/international/mule-diag.el (describe-character-set)
(list-input-methods-1):
* lisp/mail/feedmail.el (feedmail-run-the-queue):
* lisp/mouse.el (minor-mode-menu-from-indicator):
* lisp/mpc.el (mpc-playlist-rename):
* lisp/msb.el (msb--choose-menu):
* lisp/net/ange-ftp.el (ange-ftp-shell-command):
* lisp/net/imap.el (imap-interactive-login):
* lisp/net/mairix.el (mairix-widget-create-query):
* lisp/net/newst-backend.el (newsticker--sentinel-work):
* lisp/net/newst-treeview.el (newsticker--treeview-load):
* lisp/net/rlogin.el (rlogin):
* lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
* lisp/obsolete/otodo-mode.el (todo-more-important-p):
* lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
* lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
* lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
* lisp/org/ob-core.el (org-babel-goto-named-src-block)
(org-babel-goto-named-result):
* lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
* lisp/org/ob-ref.el (org-babel-ref-resolve):
* lisp/org/org-agenda.el (org-agenda-prepare):
* lisp/org/org-clock.el (org-clock-notify-once-if-expired)
(org-clock-resolve):
* lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
* lisp/org/org-feed.el (org-feed-parse-atom-entry):
* lisp/org/org-habit.el (org-habit-parse-todo):
* lisp/org/org-mouse.el (org-mouse-popup-global-menu)
(org-mouse-context-menu):
* lisp/org/org-table.el (org-table-edit-formulas):
* lisp/org/ox.el (org-export-async-start):
* lisp/proced.el (proced-log):
* lisp/progmodes/ada-mode.el (ada-get-indent-case)
(ada-check-matching-start, ada-goto-matching-start):
* lisp/progmodes/ada-prj.el (ada-prj-display-page):
* lisp/progmodes/ada-xref.el (ada-find-executable):
* lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
* lisp/progmodes/etags.el (etags-tags-apropos-additional):
* lisp/progmodes/flymake.el (flymake-parse-err-lines)
(flymake-start-syntax-check-process):
* lisp/progmodes/python.el (python-shell-get-process-or-error)
(python-define-auxiliary-skeleton):
* lisp/progmodes/sql.el (sql-comint):
* lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
* lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
* lisp/recentf.el (recentf-open-files):
* lisp/replace.el (query-replace-read-from)
(occur-after-change-function, occur-1):
* lisp/scroll-bar.el (scroll-bar-columns):
* lisp/server.el (server-get-auth-key):
* lisp/simple.el (execute-extended-command)
(undo-outer-limit-truncate, list-processes--refresh)
(compose-mail, set-variable, choose-completion-string)
(define-alternatives):
* lisp/startup.el (site-run-file, tty-handle-args, command-line)
(command-line-1):
* lisp/subr.el (noreturn, define-error, add-to-list)
(read-char-choice, version-to-list):
* lisp/term/common-win.el (x-handle-xrm-switch)
(x-handle-name-switch, x-handle-args):
* lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
* lisp/textmodes/reftex-ref.el (reftex-label):
* lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
* lisp/textmodes/two-column.el (2C-split):
* lisp/tutorial.el (tutorial--describe-nonstandard-key)
(tutorial--find-changed-keys):
* lisp/type-break.el (type-break-noninteractive-query):
* lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
(wdired-do-perm-changes):
* lisp/whitespace.el (whitespace-report-region):
Prefer grave quoting in source-code strings used to generate help
and diagnostics.
* lisp/faces.el (face-documentation):
No need to convert quotes, since the result is a docstring.
* lisp/info.el (Info-virtual-index-find-node)
(Info-virtual-index, info-apropos):
Simplify by generating only curved quotes, since info files are
typically that ways nowadays anyway.
* lisp/international/mule-diag.el (list-input-methods):
Don’t assume text quoting style is curved.
* lisp/org/org-bibtex.el (org-bibtex-fields):
Revert my recent changes, going back to the old quoting style.
2015-09-07 16:09:27 -07:00
Paul Eggert
26bd978d87 Fix some more docstring etc. quoting problems
Mostly these fixes prevent the transliteration of apostrophes
that should stay apostrophes.  Also, prefer curved quotes in
Bahá’í proper names, as that’s the preferred Bahá’í style and
these names are chock-full of non-ASCII characters anyway.
* lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
(eieio-defclass-internal):
* lisp/emacs-lisp/eieio.el (defclass):
* lisp/hi-lock.el (hi-lock-mode):
Don’t transliterate Lisp apostrophes when generating a
doc string or diagnostic.
* lisp/international/mule-diag.el (list-coding-systems-1):
* lisp/international/ogonek.el (ogonek-jak, ogonek-how):
* lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
* lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
* lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
Substitute quotes before putting them in the help buffer.
2015-09-03 15:32:54 -07:00
Paul Eggert
7f67cdb652 Spelling fixes 2015-08-25 00:43:01 -07:00
Paul Eggert
875a5d0ead Prefer directed to neutral quotes
Prefer directed to neutral quotes in docstings and diagnostics.
In docstrings, escape apostrophes that would otherwise be translated
to curved quotes using the newer, simpler rules.
* admin/unidata/unidata-gen.el (unidata-gen-table):
* lisp/align.el (align-region):
* lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
* lisp/bookmark.el (bookmark-default-annotation-text):
* lisp/calc/calc-aent.el (math-read-if, math-read-factor):
* lisp/calc/calc-lang.el (math-read-giac-subscr)
(math-read-math-subscr):
* lisp/calc/calc-misc.el (report-calc-bug):
* lisp/calc/calc-prog.el (calc-fix-token-name)
(calc-read-parse-table-part):
* lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
* lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
* lisp/dabbrev.el (dabbrev-expand):
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
* lisp/emacs-lisp/elint.el (elint-get-top-forms):
* lisp/emacs-lisp/lisp-mnt.el (lm-verify):
* lisp/emulation/viper-cmd.el (viper-toggle-search-style):
* lisp/erc/erc-button.el (erc-nick-popup):
* lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
* lisp/eshell/em-dirs.el (eshell/cd):
* lisp/eshell/em-glob.el (eshell-glob-regexp):
* lisp/eshell/em-pred.el (eshell-parse-modifiers):
* lisp/eshell/esh-arg.el (eshell-parse-arguments):
* lisp/eshell/esh-opt.el (eshell-show-usage):
* lisp/files-x.el (modify-file-local-variable):
* lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
(filesets-update-pre010505):
* lisp/find-cmd.el (find-generic, find-to-string):
* lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
* lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
(gnus-agent-fetch-headers):
* lisp/gnus/gnus-int.el (gnus-start-news-server):
* lisp/gnus/gnus-registry.el:
(gnus-registry--split-fancy-with-parent-internal):
* lisp/gnus/gnus-score.el (gnus-summary-increase-score):
* lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
* lisp/gnus/gnus-topic.el (gnus-topic-rename):
* lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
* lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
* lisp/gnus/spam.el (spam-check-blackholes):
* lisp/mail/feedmail.el (feedmail-run-the-queue):
* lisp/mpc.el (mpc-playlist-rename):
* lisp/net/ange-ftp.el (ange-ftp-shell-command):
* lisp/net/mairix.el (mairix-widget-create-query):
* lisp/net/tramp-cache.el:
* lisp/obsolete/otodo-mode.el (todo-more-important-p):
* lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
* lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
* lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
* lisp/org/ob-core.el (org-babel-goto-named-src-block)
(org-babel-goto-named-result):
* lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
* lisp/org/ob-ref.el (org-babel-ref-resolve):
* lisp/org/org-agenda.el (org-agenda-prepare):
* lisp/org/org-bibtex.el (org-bibtex-fields):
* lisp/org/org-clock.el (org-clock-notify-once-if-expired)
(org-clock-resolve):
* lisp/org/org-feed.el (org-feed-parse-atom-entry):
* lisp/org/org-habit.el (org-habit-parse-todo):
* lisp/org/org-mouse.el (org-mouse-popup-global-menu)
(org-mouse-context-menu):
* lisp/org/org-table.el (org-table-edit-formulas):
* lisp/org/ox.el (org-export-async-start):
* lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
(dun-rooms, dun-endgame-questions):
* lisp/progmodes/ada-mode.el (ada-goto-matching-start):
* lisp/progmodes/ada-xref.el (ada-find-executable):
* lisp/progmodes/antlr-mode.el (antlr-options-alists):
* lisp/progmodes/flymake.el (flymake-parse-err-lines)
(flymake-start-syntax-check-process):
* lisp/progmodes/python.el (python-define-auxiliary-skeleton):
* lisp/progmodes/sql.el (sql-comint):
* lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
* lisp/server.el (server-get-auth-key):
* lisp/subr.el (version-to-list):
* lisp/textmodes/reftex-ref.el (reftex-label):
* lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
* lisp/vc/ediff-diff.el (ediff-same-contents):
* lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
* test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
Use directed rather than neutral quotes in diagnostics.
2015-08-24 23:57:25 -07:00
Fabián Ezequiel Gallina
af013e0d4a python.el: Fix python-shell-buffer-substring on indented code
Fixes: debbugs:21086

* lisp/progmodes/python.el (python-shell-buffer-substring):
Respect current line indentation when calculating string.

* test/automated/python-tests.el
(python-shell-buffer-substring-10)
(python-shell-buffer-substring-11)
(python-shell-buffer-substring-12): New tests.
2015-08-23 19:56:47 -03:00
Fabián Ezequiel Gallina
3caef97113 python.el: Defer shell setup code until first interactive prompt
* lisp/progmodes/python.el
(python-shell-comint-watch-for-first-prompt-output-filter): New
function.
(inferior-python-mode): Use it.
(python-shell-first-prompt-hook): New hook.
(python-shell-send-setup-code)
(python-shell-completion-native-turn-on-maybe-with-msg): Attach to
this hook instead of inferior-python-hook.
2015-08-23 16:53:02 -03:00
Fabián Ezequiel Gallina
a92066b80e python.el: Fix completion for pdb interactions
* lisp/progmodes/python.el (python-shell-completion-setup-code):
Simplify.  Toggle print_mode for native wrapped completer.
(python-shell-completion-native-setup): Ensure process buffer.
Add print_mode attribute to completer wrapper to toggle returning
or printing candidates.
(python-shell-completion-native-get-completions): Cleanup.
(python-shell-completion-get-completions): Cleanup.
(python-shell-completion-at-point): Perform prompt checks.  Force
fallback completion in pdb interactions.
2015-08-23 14:55:06 -03:00
Fabián Ezequiel Gallina
58c3762a8b python.el: Fix prompt detection with user overridden interpreter
* lisp/progmodes/python.el (python-shell-prompt-detect): Honor
buffer local python-shell-interpreter and
python-shell-interpreter-interactive-arg.
2015-08-23 13:59:48 -03:00
Fabián Ezequiel Gallina
24ae052515 python.el: fallback completion, ffap and eldoc setup enhancements
Setup codes are now sent continuously so that the current frame is
always taken into account.  This allows working within debuggers
and always keeping a fresh version of setup codes that will return
proper results.

* lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
(python-shell-send-setup-code): Send code only when
python-shell-setup-codes is non-nil.
(python-shell-completion-string-code): Cleanup trailing newline.
(python-shell-completion-get-completions): Always use
python-shell-completion-setup-code.
(python-ffap-setup-code): Work with any object, not only modules.
(python-ffap-string-code): Cleanup trailing newline.
(python-ffap-module-path): Always use python-ffap-setup-code.
(python-eldoc-string-code): Cleanup trailing newline.
(python-eldoc--get-doc-at-point): Always use
python-eldoc-setup-code.  Return non-nil only if docstring is
found.
2015-08-22 20:42:04 -03:00
Fabián Ezequiel Gallina
0a3ed5f70c ; python.el: Fix typo for previous commit 2015-08-22 19:05:31 -03:00
Fabián Ezequiel Gallina
34f58ce5d7 python.el: Increase native completion robustness.
* lisp/progmodes/python.el (python-shell-completion-native-setup):
Make completer print real candidates and just return dummy ones to
avoid input modification.
(python-shell-completion-native-get-completions): Set
comint-redirect-insert-matching-regexp to non-nil and make
comint-redirect-finished-regexp match the last dummy candidate.
Use python-shell-accept-process-output to wait for the full list
of candidates.
2015-08-22 18:07:26 -03:00
Fabián Ezequiel Gallina
66081ad6f4 ; python.el: Fix previous commit for Emacs<24.3 compatibility 2015-08-21 23:42:01 -03:00
Fabián Ezequiel Gallina
cf42b9fe8d ; python.el: Fix previous commit for Emacs<24.3 compatibility 2015-08-21 23:26:44 -03:00
Fabián Ezequiel Gallina
e2a5e3f87a python.el: Ensure remote process-environment on non-interactive processes
* lisp/progmodes/python.el
(python-shell-tramp-refresh-process-environment): New function.
(python-shell-with-environment): Use it.

* test/automated/python-tests.el (python-shell-with-environment-2): Update.
2015-08-21 22:34:39 -03:00
Fabián Ezequiel Gallina
49071a4afc ; python.el: Bump version to 25.1
Also update author email and add Package-Require header to allow
installation from Emacs 24.x.
2015-08-21 19:36:01 -03:00
Fabián Ezequiel Gallina
4150b563e7 python.el: Enhancements to process environment setup.
* lisp/progmodes/python.el (python-shell-process-environment)
(python-shell-extra-pythonpaths, python-shell-exec-path)
(python-shell-virtualenv-root): Update docstring.  Remove :safe.
(python-shell-setup-codes): Remove :safe.
(python-shell-remote-exec-path): New defcustom.
(python-shell--add-to-path-with-priority): New macro.
(python-shell-calculate-pythonpath): Give priority to
python-shell-extra-pythonpaths.  Update docstring.
(python-shell-calculate-process-environment): Give priority to
python-shell-process-environment.  Update docstring.
(python-shell-calculate-exec-path): Give priority to
python-shell-exec-path and calculated virtualenv bin directory.
Update docstring.
(python-shell-tramp-refresh-remote-path): New function.
(python-shell-with-environment): Use it when working remotely and
do not modify tramp-remote-path.  Allow nesting.
(python-shell-calculate-command): Remove useless
python-shell-with-environment call.

* test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
(python-shell-calculate-pythonpath-2)
(python-shell-calculate-process-environment-6)
(python-shell-calculate-process-environment-7)
(python-shell-calculate-process-environment-8)
(python-shell-calculate-exec-path-3)
(python-shell-calculate-exec-path-4)
(python-shell-calculate-exec-path-5)
(python-shell-calculate-exec-path-6)
(python-shell-with-environment-3): New tests.
(python-shell-calculate-process-environment-2)
(python-shell-calculate-process-environment-3)
(python-shell-calculate-process-environment-4)
(python-shell-calculate-process-environment-5)
(python-shell-calculate-exec-path-1)
(python-shell-calculate-exec-path-2)
(python-shell-with-environment-1)
(python-shell-with-environment-2): Update and simplify.
2015-08-21 19:06:57 -03:00
Paul Eggert
c1cacb0994 Avoid hard-coding "M-x command" in docstrings
* lisp/calendar/todo-mode.el (todo-mode):
* lisp/desktop.el (desktop-save-mode):
* lisp/edmacro.el (edit-kbd-macro):
* lisp/emacs-lisp/package.el (package-menu-execute):
* lisp/emulation/viper-cmd.el (viper-ask-level):
* lisp/emulation/viper-init.el (viper-expert-level):
* lisp/filesets.el (filesets-add-buffer):
* lisp/follow.el (follow-mode):
* lisp/gnus/auth-source.el (auth-sources):
* lisp/international/ogonek.el (ogonek-informacja)
(ogonek-information):
* lisp/net/tramp.el (tramp-process-actions):
* lisp/org/org-gnus.el (org-gnus-no-new-news):
* lisp/org/org.el (org-ellipsis):
* lisp/progmodes/python.el (python-shell-get-process-or-error):
* lisp/progmodes/vhdl-mode.el (vhdl-mode):
* lisp/server.el (server-start):
* lisp/type-break.el (type-break-noninteractive-query):
* lisp/userlock.el (ask-user-about-supersession-help):
* lisp/whitespace.el (whitespace-report-region):
Prefer (substitute-command-keys "`\\[foo-command]'")
to "`M-x foo-command'" in docstrings and the like.
2015-08-21 14:09:47 -07:00
Fabián Ezequiel Gallina
197f280042 ; python.el: Emacs 24.x compatibility fixes
* lisp/progmodes/python.el: Provide compatibility alternatives for
prog-widen and prog-first-column.
2015-08-11 23:56:25 -03:00
Fabián Ezequiel Gallina
287bce9888 python.el: Fix local/remote shell environment setup
* lisp/progmodes/python.el (python-shell-with-environment): Fix
remote/local environment setup.

* test/automated/python-tests.el (python-shell-with-environment-1)
(python-shell-with-environment-2): New tests.
2015-07-06 20:08:01 -03:00
Fabián Ezequiel Gallina
0fdc3f2ee8 python.el: Respect process environment for remote shells
* lisp/progmodes/python.el
(python-shell-calculate-process-environment): Calculate
process-environment or tramp-remote-process-environment depending
whether current file is remote.
(python-shell-calculate-exec-path): Calculate exec-path or
tramp-remote-path depending whether current file is remote.
(python-shell-with-environment): New macro.
(python-shell-prompt-detect, python-shell-calculate-command)
(python-shell-make-comint, python-check): Use it.
2015-07-06 07:57:14 -03:00
Fabián Ezequiel Gallina
f3400f4ca6 python.el: Avoid making let-bound defvars buffer local (Bug#18244)
* lisp/progmodes/python.el (python-shell--interpreter)
(python-shell--interpreter-args): New vars.
(inferior-python-mode, python-shell-make-comint): Use them.
2015-07-06 02:34:44 -03:00
Fabián Ezequiel Gallina
8867296609 ; python.el: Replace eval-when-compile with eval-and-compile 2015-07-06 02:02:06 -03:00
Fabián Ezequiel Gallina
02dc8dac7e python.el: Fixes for IPython 3.x (Bug#20580)
* lisp/progmodes/python.el:
(python-shell-completion-native-setup): Fix IPython 3.x setup.
(python-shell-completion-native-get-completions): Fix timeout
logic.
2015-07-06 01:59:02 -03:00
Fabián Ezequiel Gallina
a5e39bfae8 python.el: Fix mark-defun behavior (Bug#19665)
* lisp/progmodes/python.el: (python-mark-defun): New function.

* test/automated/python-tests.el (python-mark-defun-1)
(python-mark-defun-2, python-mark-defun-3): New tests.
2015-07-06 01:04:00 -03:00
Christoph Wedler
044d4cc0c0 Respect `prog-indentation-context' in python.el
* lisp/progmodes/python.el (python-indent-guess-indent-offset)
(python-indent-context, python-indent--calculate-indentation)
(python-info-current-defun)
(python-info-dedenter-opening-block-message)
(python-info-line-ends-backslash-p)
(python-info-beginning-of-backslash)
(python-info-continuation-line-p): Use `prog-widen'.
(python-indent--calculate-indentation)
(python-indent--calculate-levels)
(python-indent-calculate-indentation): Use `prog-first-column'.
(python-indent--calculate-levels): Simplify.

Ignore also initial empty lines for syntax calculation.
* lisp/progmodes/python.el (python-indent-context): Return
:no-indent for first non-empty line, not just in line 1.
* test/automated/python-tests.el (python-indent-base-case)
(python-indent-inside-paren-1, python-indent-inside-paren-2)
(python-indent-inside-paren-3, python-indent-inside-paren-4)
(python-indent-inside-paren-5, python-indent-inside-paren-6)
(python-indent-after-backslash-1)
(python-indent-after-backslash-2)
(python-indent-after-backslash-3)
(python-indent-after-backslash-4, python-indent-inside-string-1):
Expect :no-indent for first non-empty line.
2015-07-05 08:52:03 +00:00
Paul Eggert
96794d2f97 Don't quote nil and t in doc strings
This is as per "Tips for Documentation Strings" in the elisp manual.
For consistency, do the same in diagnostics and comments.
2015-05-21 10:06:44 -07:00
Fabián Ezequiel Gallina
e35bf57271 python.el: better limit for looking-back calls
* lisp/progmodes/python.el (python-shell-accept-process-output):
Use last comint prompt start as limit for looking-back.
2015-05-11 00:03:08 -03:00
Fabián Ezequiel Gallina
8b7e2c495a python.el: Fix warnings on looking-back calls missing LIMIT
* lisp/progmodes/python.el (python-shell-accept-process-output):
Pass LIMIT arg to looking-back.
2015-04-29 21:09:58 -03:00
Paul Eggert
8f1eda7a8a Spelling fixes 2015-04-19 23:59:46 -07:00
Fabián Ezequiel Gallina
659609d182 python.el: Keep symmetry on sexp navigation with parens
Fixes: debbugs:19954

* lisp/progmodes/python.el
(python-nav--forward-sexp): Add argument skip-parens-p.
(python-nav-forward-sexp, python-nav-backward-sexp)
(python-nav-forward-sexp-safe)
(python-nav-backward-sexp-safe): Use it.

* test/automated/python-tests.el
(python-nav-forward-sexp-1): Fix test.
2015-04-12 22:43:44 -03:00
Fabián Ezequiel Gallina
c9415ccbf8 python.el: Indent docstring lines to base-indent
Fixes: debbugs:19595

Thanks to immerrr <immerrr@gmail.com> for reporting and providing
an initial patch.

* lisp/progmodes/python.el
(python-indent-context): Add :inside-docstring context.
(python-indent--calculate-indentation): Handle :inside-docstring.
(python-indent-region): Re-indent docstrings.

* test/automated/python-tests.el (python-indent-region-5)
(python-indent-inside-string-2): Fix tests.
2015-04-09 01:41:55 -03:00
Fabián Ezequiel Gallina
911ed2eba4 python.el: Increase native completion robustness
Fixes: debbugs:19755

Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
this and providing useful ideas.

* lisp/progmodes/python.el
(python-shell-completion-native-output-timeout): Increase value.
(python-shell-completion-native-try-output-timeout): New var.
(python-shell-completion-native-try): Use it.
(python-shell-completion-native-setup): New readline setup avoids
polluting current context, ensures output when no-completions are
available and includes output end marker.
(python-shell-completion-native-get-completions): Trigger with one
tab only.  Call accept-process-output until output end is found or
python-shell-completion-native-output-timeout is exceeded.
2015-04-09 00:53:18 -03:00
Fabián Ezequiel Gallina
ab9252a01a python.el: Do not break IPython magic completions.
Fixes: debbugs:19736

* lisp/progmodes/python.el (python-shell-completion-setup-code):
Cleaner setup; import rlcompleter as last resource.
2015-04-06 19:18:46 -03:00
Fabián Ezequiel Gallina
cf7b034ee1 Fix previous commit to prevent infloop 2015-04-06 01:22:19 -03:00
Fabián Ezequiel Gallina
deea36f0ec python.el: Enhance docstring detection following PEP-257.
* lisp/progmodes/python.el (python-docstring-at-p): Remove function.
(python-info-assignment-statement-p): New function.
(python-info-assignment-continuation-line-p): Use it.
(python-info-docstring-p): New function.
(python-font-lock-syntactic-face-function)
(python-fill-string): Use it.

* test/automated/python-tests.el (python-info-assignment-statement-p-1)
(python-info-assignment-statement-p-2)
(python-info-assignment-statement-p-3, python-info-docstring-p-1)
(python-info-docstring-p-2, python-info-docstring-p-3)
(python-info-docstring-p-4, python-info-docstring-p-5)
(python-info-docstring-p-6): New tests.
2015-04-05 23:58:13 -03:00
Daniel Colascione
1d02107dab Shut up python-mode's indentation guesser
* lisp/progmodes/python.el
(python-indent-guess-indent-offset-verbose): New defcustom.
(python-indent-guess-indent-offset): Use it.
2015-03-26 13:46:06 -07:00
Paul Eggert
37ad855a38 Merge from origin/emacs-24
f160106 Avoid assertion violations in Rmail due to newline cache
1b0ebbd browse-url-firefox: update for firefox 36's removal of -remote
1817892 Avoid erratic behavior of menu-bar tooltips on w32  (Bug#19925)
0260932 Bump python.el version
b0adfc7 Spelling fixes
35f047c * src/fileio.c (Fmake_temp_name): Doc tweaks.
6f2971a * lisp/comint.el (comint-line-beginning-position): Revert searching
65d8ac7 Mention in admin/notes/repo how to mark commits not to be merged.
86fe750 # Remove NEWS temporary markup
4fa778b erc.el: Add old version header for package.el compatibilty
9366f05 Tramp: Disable paging with PAGER=cat

Conflicts:
	admin/notes/repo
	etc/NEWS
	lisp/ChangeLog
	lisp/erc/ChangeLog
	src/ChangeLog
2015-03-03 14:41:30 -08:00
Paul Eggert
d8e9122115 Merge from origin/emacs-24
e726f20 Handle "#" operator properly inside macro.  Fix coding bug.
618931b Handle dead frame in menu-bar-non-minibuffer-window-p.  (Bug#19728)
017a03a Document MS-Windows file-name idiosyncrasies  (Bug#19463)
f3faf4f Fix description of Customize buffer in Emacs manual.
1c1d0b7 Fix a typo in the Emacs manual's Hungry Delete description.
be7fb82 src/dispextern.h (FACE_FOR_CHAR): Fix the commentary.
33c4409 Spelling fixes
6c8231e python.el: Handle tabs in python-indent-dedent-line.
41c3b92 * lisp/progmodes/python.el: Respect user indentation after comment.
868df45 Avoid compiler warnings in decode_env_path.
b28c979 Fix XEmacs version typo in comment and ChangeLog
989fb32 Improve solution of bug #19701
6310530 Fix refilling of list of language environments in User Manual
c4c447d Restore XEmacs compatibility

Conflicts:
	doc/emacs/ChangeLog
	lisp/ChangeLog
	src/ChangeLog
	test/ChangeLog
2015-02-25 22:53:56 -08:00
Fabián Ezequiel Gallina
02609324ce Bump python.el version 2015-02-21 18:43:33 -03:00
Fabián Ezequiel Gallina
16d91bce1d python.el: Do not deactivate mark on shell fontification.
Fixes: debbugs:19871

* lisp/progmodes/python.el (python-shell-font-lock-post-command-hook):
Do not deactivate mark on fontification.
2015-02-16 19:53:59 -03:00
Fabián Ezequiel Gallina
da726ad0c6 python.el: Allow killing shell buffer if process is dead.
Fixes: debbugs:19823

* lisp/progmodes/python.el (python-shell-font-lock-kill-buffer): Don't
require a running process.
(python-shell-font-lock-post-command-hook): Fontify only if the
shell process is running.
2015-02-12 00:41:07 -03:00
Fabián Ezequiel Gallina
880415a6a6 python.el: Fix typo in eldoc initialization for Emacs 24.x 2015-02-09 23:53:11 -03:00
Fabián Ezequiel Gallina
859e865e93 python.el: Improved shell font lock respecting markers.
Fixes: debbugs:19650

* lisp/progmodes/python.el
(python-shell-font-lock-get-or-create-buffer): Use special buffer name.
(python-shell-font-lock-with-font-lock-buffer): Enable font lock.
(python-shell-font-lock-post-command-hook): Fontify by copying text
properties from fontified buffer to shell, keeping markers unchanged.
(python-shell-font-lock-turn-off): Fix typo.
(python-util-text-properties-replace-name): Delete function.
2015-02-09 23:44:06 -03:00
Fabián Ezequiel Gallina
dcec731abf python.el: Fix completion-at-point.
Fixes: debbugs:19667

* lisp/progmodes/python.el
(python-shell-completion-native-get-completions): Force process
buffer.
(python-shell-completion-at-point): Handle case where call is not
in a shell buffer.
2015-02-08 01:31:12 -03:00
Fabián Ezequiel Gallina
67dfbd6057 python.el: Fix shell font-lock multiline input.
Fixes: debbugs:19744

* lisp/progmodes/python.el
(python-shell-font-lock-post-command-hook): Handle multiline
input.
2015-02-08 00:36:30 -03:00
Fabián Ezequiel Gallina
52df70a887 python.el: Make shell font-lock respect markers.
Fixes: debbugs:19650

* lisp/progmodes/python.el (python-shell-font-lock-cleanup-buffer): Use
`erase-buffer`.
(python-shell-font-lock-comint-output-filter-function): Handle
newlines.
(python-shell-font-lock-post-command-hook): Respect markers on
text fontification.
2015-02-08 00:25:20 -03:00
Fabián Ezequiel Gallina
2155973e5e python.el: Keep eldoc visible while typing args.
Fixes: debbugs:19637

* lisp/progmodes/python.el (python-eldoc--get-symbol-at-point): New
function.
(python-eldoc--get-doc-at-point, python-eldoc-at-point): Use it.

* test/automated/python-tests.el
(python-eldoc--get-symbol-at-point-1)
(python-eldoc--get-symbol-at-point-2)
(python-eldoc--get-symbol-at-point-3)
(python-eldoc--get-symbol-at-point-4): New tests.
2015-02-07 18:39:07 -03:00
Fabián Ezequiel Gallina
2d467a0ff0 Fix hideshow integration.
Fixes: debbugs:19761

* lisp/progmodes/python.el
(python-hideshow-forward-sexp-function): New function based on
Carlos Pita <carlosjosepita@gmail.com> patch.
(python-mode): Make `hs-special-modes-alist` use it and initialize
the end regexp with the empty string to avoid skipping parens.

* test/automated/python-tests.el
(python-tests-visible-string): New function.
(python-parens-electric-indent-1)
(python-triple-quote-pairing): Fix indentation, move require calls.
(python-hideshow-hide-levels-1)
(python-hideshow-hide-levels-2): New tests.
2015-02-07 16:43:47 -03:00
Fabián Ezequiel Gallina
86c50b9af1 * lisp/progmodes/python.el (python-check-custom-command): Do not use
defvar-local for compat with Emacs<24.3.
2015-02-07 14:25:47 -03:00
Stefan Monnier
683d4b6e92 * lisp/progmodes/python.el: Preserve compatibility with Emacs-24
(python-mode): Don't assume eldoc-documentation-function has a non-nil
default.
2015-02-04 21:47:22 -05:00
Sam Steingold
4188e3cc2b Avoid the error when computing top-level indentation.
* lisp/progmodes/python.el (python-indent-calculate-indentation):
Do not apply max to an empty list
2015-02-04 16:26:43 -05:00
Paul Eggert
33c4409a8e Spelling fixes 2015-01-29 19:47:35 -08:00
Fabián Ezequiel Gallina
6c8231ee8c python.el: Handle tabs in python-indent-dedent-line.
Fixes: debbugs:19730

* lisp/progmodes/python.el (python-indent-dedent-line): Fixes for
indentation with tabs.  Thanks to <dale@codefu.org>.

* test/automated/python-tests.el
(python-indent-dedent-line-backspace-2)
(python-indent-dedent-line-backspace-3): New tests.
2015-01-30 00:41:52 -03:00
Fabián Ezequiel Gallina
41c3b9241c * lisp/progmodes/python.el (python-indent-context): Respect user
indentation after comment.

* test/automated/python-tests.el (python-indent-pep8-1)
(python-indent-pep8-2, python-indent-pep8-3)
(python-indent-after-comment-2): Fix tests.
(python-indent-after-comment-3): New test.
2015-01-30 00:19:55 -03:00
Fabián Ezequiel Gallina
95a2cb24b0 Merge from origin/emacs-24
9664def Signal a file-error from directory-files on MS-Windows  (Bug#19701)
fd4e65e Added missing test for previous commit
5485e3e5 python.el: New non-global state dependent indentation engine.
3b23e6a Fix the description of --insert command-line option  (Bug#19694)
7a7e594 Add a cross-reference in ELisp manual.  (Bug#19668)
b4f4075 Fixes: debbugs:19660
83b3c31 * test/automated/regexp-tests.el: Require regexp-opt

Conflicts:
	lisp/progmodes/python.el
2015-01-28 01:08:18 -03:00
Sam Steingold
bd7a1e1564 minor tweaks for `python-check'
* lisp/progmodes/python.el (python-check-custom-command): Buffer local
because it usually includes the buffer name.
(python-check-command): Set to epylint when pyflakes is not available.
2015-01-27 13:20:57 -05:00
Fabián Ezequiel Gallina
5485e3e5b2 python.el: New non-global state dependent indentation engine.
Fixes: debbugs:18319
Fixes: debbugs:19595

* lisp/progmodes/python.el (python-syntax-comment-or-string-p): Accept
PPSS as argument.
(python-syntax-closing-paren-p): New function.
(python-indent-current-level)
(python-indent-levels): Mark obsolete.
(python-indent-context): Return more context cases.
(python-indent--calculate-indentation)
(python-indent--calculate-levels): New functions.
(python-indent-calculate-levels): Use them.
(python-indent-calculate-indentation, python-indent-line):
(python-indent-line-function): Rewritten to use new API.
(python-indent-dedent-line): Simplify logic.
(python-indent-dedent-line-backspace): Use `unless`.
(python-indent-toggle-levels): Delete function.

* test/automated/python-tests.el (python-indent-pep8-1)
(python-indent-pep8-2, python-indent-pep8-3)
(python-indent-after-comment-1, python-indent-after-comment-2)
(python-indent-inside-paren-1, python-indent-inside-paren-2)
(python-indent-after-block-1, python-indent-after-block-2)
(python-indent-after-backslash-1, python-indent-after-backslash-2)
(python-indent-after-backslash-3, python-indent-block-enders-1)
(python-indent-block-enders-2, python-indent-block-enders-3)
(python-indent-block-enders-4, python-indent-block-enders-5)
(python-indent-dedenters-1, python-indent-dedenters-2)
(python-indent-dedenters-3, python-indent-dedenters-4)
(python-indent-dedenters-5, python-indent-dedenters-6)
(python-indent-dedenters-7, python-indent-dedenters-8): Fix tests.
(python-indent-base-case, python-indent-after-block-3)
(python-indent-after-backslash-5, python-indent-inside-paren-3)
(python-indent-inside-paren-4, python-indent-inside-paren-5)
(python-indent-inside-paren-6, python-indent-inside-string-1)
(python-indent-inside-string-2, python-indent-inside-string-3)
(python-indent-dedent-line-backspace-1): New Tests.
2015-01-27 00:17:24 -03:00
Michal Nazarewicz
fd020a2931 eldoc: modify eldoc-documentation-function' using add-function'
* lisp/emacs-lisp/eldoc.el (eldoc-documentation-function): Describe how
major modes should use `add-function' to alter value of the variable.

* lisp/hexl.el (hexl-mode): Set `eldoc-documentation-function' using
`add-function' so the default value is always used.
* lisp/ielm.el (inferior-emacs-lisp-mode): Set
`eldoc-documentation-function' using `add-function' so the default
value is always used.
* lisp/progmodes/cfengine.el (cfengine3-mode): Set
`eldoc-documentation-function' using `add-function' so the default
value is always used.
* lisp/progmodes/elisp-mode (emacs-lisp-mode): Set
`eldoc-documentation-function' using `add-function' so the default
value is always used.
* lisp/progmodes/octave.el (octave-mode): Set
`eldoc-documentation-function' using `add-function' so the default
value is always used.
* lisp/progmodes/python.el (python-mode): Set
`eldoc-documentation-function' using `add-function' so the default
value is always used.
* lisp/simple.el (read--expression): Set `eldoc-documentation-function'
using `add-function' so the default value is always used.
2015-01-20 15:04:15 +01:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
Paul Eggert
6ddd819467 Merge from origin/emacs-24
a5f90a3 * .gitattributes: New file.
5a9710f Make sure tool-bar changes are reflected on display.
93796ba * autogen.sh: Port better to non-GNU 'cp'.
9758516 Fix a typo in a comment in the previous commit.
aa472a3 Fix the pixel coordinates returned by pos-visible-in-window-p.  (Bug#19473)
d261229 * automated/tramp-tests.el (tramp--test-smb-or-windows-nt-p): New defun. (tramp-test30-special-characters): Use it. (tramp--test-check-files): Filter nil file names out.
9278f05 Omit trailing white space
1c93fd3 Sync with Tramp 2.2.11.
96ebe18 Sync with Tramp 2.2.11.
e792450 Sync with Tramp 2.2.11.
2d17e12 Fix ChangeLog entry.
6444482 Fix auto-revert-tail-mode for remote files
b5c9c13 Spelling fixes
c5504d1 src/w32proc.c (Fw32_get_codepage_charset): Doc fix.  (Bug#19458)

Conflicts:
	ChangeLog
	doc/misc/ChangeLog
	lisp/ChangeLog
	src/ChangeLog
	test/ChangeLog
2015-01-01 10:47:17 -08:00
Paul Eggert
732fd4c7e1 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 09:18:06 -08:00
Paul Eggert
b5c9c131ca Spelling fixes 2014-12-28 15:06:16 -08:00
Fabián Ezequiel Gallina
2cb7592275 python.el: Native readline completion.
This commit adds native readline completion that fallbacks to the old
mechanism when it cannot be used for the current interpreter.

* lisp/progmodes/python.el (python-shell-completion-native-disabled-interpreters)
(python-shell-completion-native-enable)
(python-shell-completion-native-output-timeout): New defcustoms.
(python-shell-completion-native-interpreter-disabled-p)
(python-shell-completion-native-try)
(python-shell-completion-native-setup)
(python-shell-completion-native-turn-off)
(python-shell-completion-native-turn-on)
(python-shell-completion-native-turn-on-maybe)
(python-shell-completion-native-turn-on-maybe-with-msg)
(python-shell-completion-native-toggle): New functions.
(python-shell-completion-native-get-completions): New function.
(python-shell-completion-at-point): Use it.

* test/automated/python-tests.el
(python-shell-completion-native-interpreter-disabled-p-1): New
test.
2014-12-27 20:58:45 -03:00
Fabián Ezequiel Gallina
7d1e62d51b python.el: Enhance shell user interaction and deprecate python-shell-get-or-create-process.
* lisp/progmodes/python.el
(python-shell-get-process-or-error): New function.
(python-shell-with-shell-buffer): Use it.
(python-shell-send-string, python-shell-send-region)
(python-shell-send-buffer, python-shell-send-defun)
(python-shell-send-file, python-shell-switch-to-shell): Use it.
Add argument MSG to display user-friendly message when no process
is running.
(python-shell-switch-to-shell): Call pop-to-buffer with NORECORD.
(python-shell-make-comint): Rename argument SHOW from POP.  Use
display-buffer instead of pop-to-buffer.
(run-python): Doc fix.  Return process.
(python-shell-get-or-create-process): Make obsolete.

* test/automated/python-tests.el (python-shell-get-or-create-process-1)
(python-shell-get-or-create-process-2)
(python-shell-get-or-create-process-3): Remove tests.
2014-12-27 20:12:00 -03:00
Fabián Ezequiel Gallina
996ad1b846 Merge from origin/emacs-24
433af0a * lisp/progmodes/python.el (python-shell-buffer-substring): Handle cornercase when region sent starts at point-min.
2014-12-27 20:09:32 -03:00
Fabián Ezequiel Gallina
433af0a060 * lisp/progmodes/python.el (python-shell-buffer-substring): Handle
cornercase when region sent starts at point-min.
2014-12-27 17:22:29 -03:00
Fabián Ezequiel Gallina
35e1f9d9fc Merge from origin/emacs-24
a5f38fa Fix ChangeLog typo
c6400e1 Fix composition of characters from Syriac and Arabis scripts.
7e9dfde python.el: Fix message when sending region.
800260c python.el: Cleanup temp files even with eval errors.
ed65b91 Fix for previous commit
2dd5163 python.el: Handle file encoding for shell.
7aa506e Spelling fixes
4cd6d77 * automated/tramp-tests.el (tramp-test17-insert-directory): Do not expect a given order of "." and "..".
a41d07b Fix rendering of composed caharacters on the mode line.  (Bug#19435)
b70977c Small doc markup fixes
73c050c * doc/lispref/modes.texi (Defining Minor Modes, SMIE Lexer): Markup fixes.
1783e6c ChangeLog fix
c741b1b TUTORIAL.es: Improve style consistency
f89efea TUTORIAL.es: spelling fixes
0d48826 Avoid compiler warning.

Conflicts:
	doc/lispref/ChangeLog
	doc/lispref/control.texi
	etc/ChangeLog
	lisp/ChangeLog
	src/ChangeLog
	test/ChangeLog
2014-12-27 13:31:20 -03:00
Fabián Ezequiel Gallina
411c1c6531 Merge from origin/emacs-24
216c6aa * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use `tramp-rsh-end-of-line', it ought to be more robust.
20cfd24 Improve indexing on the chapter/section/subsection levels.
14c3739 * lisp/progmodes/js.el (js-syntax-propertize): "return" can't be divided.
ea78112 * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use "\n" as end-of-line delimeter for passwords, when running on MS Windows.
012479a * lisp/progmodes/sh-script.el: Don't set global indent-line-function
75e114f Fix line numbers on Python shell.
d0fd23c doc/emacs/buffers.texi (Kill Buffer): Improve indexing.
8e818d1 Keep maximized when going fullscreen.
749813e python.el: Fix electric colon behavior
936d5e5 Fix last patch.
74d3b20 Fixes: debbugs:18623

Conflicts:
	doc/emacs/ChangeLog
	doc/lispref/ChangeLog
	doc/lispref/functions.texi
	lisp/ChangeLog
	src/ChangeLog
	src/xterm.c
	test/ChangeLog
2014-12-27 13:21:17 -03:00
Fabián Ezequiel Gallina
7e9dfded93 python.el: Fix message when sending region.
* lisp/progmodes/python.el (python-shell-send-region): Rename argument
send-name from nomain.  Fix message.
(python-shell-send-buffer): Rename argument send-name from arg.
2014-12-27 04:01:32 -03:00
Fabián Ezequiel Gallina
800260c4eb python.el: Cleanup temp files even with eval errors.
* lisp/progmodes/python.el (python-shell-send-file): Make file-name
mandatory.  Fix temp file removal in the majority of cases.
2014-12-27 03:38:32 -03:00
Fabián Ezequiel Gallina
ed65b91571 Fix for previous commit 2014-12-27 03:32:01 -03:00
Fabián Ezequiel Gallina
2dd5163d76 python.el: Handle file encoding for shell.
* lisp/progmodes/python.el (python-rx-constituents): Add coding-cookie.
(python-shell--save-temp-file): Write file with proper encoding.
(python-shell-buffer-substring): Add coding cookie for detected
encoding to generated content.  Fix blank lines when removing
if-name-main block.
(python-shell-send-file): Handle file encoding.
(python-info-encoding-from-cookie)
(python-info-encoding): New functions.

* test/automated/python-tests.el (python-shell-buffer-substring-1)
(python-shell-buffer-substring-2, python-shell-buffer-substring-3)
(python-shell-buffer-substring-4, python-shell-buffer-substring-5)
(python-shell-buffer-substring-6, python-shell-buffer-substring-7)
(python-shell-buffer-substring-8)
(python-info-encoding-from-cookie-1)
(python-info-encoding-from-cookie-2)
(python-info-encoding-from-cookie-3)
(python-info-encoding-from-cookie-4)
(python-info-encoding-from-cookie-5)
(python-info-encoding-from-cookie-6)
(python-info-encoding-from-cookie-7, python-info-encoding-1)
(python-info-encoding-2): New tests.
2014-12-27 01:30:21 -03:00
Fabián Ezequiel Gallina
7284a174ab python.el: Generate clearer shell buffer names.
* lisp/progmodes/python.el (python-shell-get-process-name)
(python-shell-internal-get-process-name): Use `buffer-name`.
(python-shell-internal-get-or-create-process): Simplify.

* test/automated/python-tests.el (python-shell-get-process-name-1)
(python-shell-internal-get-process-name-1): Cleanup.
(python-shell-get-process-name-2)
(python-shell-internal-get-process-name-2): New tests.
(python-shell-calculate-command-1)
(python-shell-calculate-process-environment-3)
(python-shell-calculate-exec-path-2, python-shell-make-comint-1)
(python-shell-make-comint-2, python-shell-make-comint-4)
(python-shell-get-process-1, python-util-clone-local-variables-1):
Replace obsolete function and variable references with current.
2014-12-26 17:59:33 -03:00
Fabián Ezequiel Gallina
8cf42182b8 Revert "Prevent Python process shell buffer to pop twice."
This reverts commit 4256626a7a.
2014-12-26 17:14:18 -03:00
Fabián Ezequiel Gallina
75e114fa3b Fix line numbers on Python shell.
* lisp/progmodes/python.el (python-shell--save-temp-file): Do not
append coding cookie.
(python-shell-send-string): Generalize for
python-shell-send-region.
(python--use-fake-loc): Delete var.
(python-shell-buffer-substring): Cleanup fake-loc logic.
(python-shell-send-region): Remove fake-loc logic, simplify.
2014-12-23 00:45:22 -03:00
Fabián Ezequiel Gallina
749813e9d4 python.el: Fix electric colon behavior
* lisp/progmodes/python.el (python-indent-post-self-insert-function):
Make colon to re-indent only for dedenters, handling
multiline-statements gracefully.

* test/automated/python-tests.el (python-indent-electric-colon-2)
(python-indent-electric-colon-3): New tests.
2014-12-22 02:24:42 -03:00
Ted Zlatanov
28e0d0c95d Merge from origin/emacs-24
bd6c441 * simple.el (password-word-equivalents): Add "passcode", used for numeric secrets like PINs or RSA tokens.
16d4c1c A better fix for bug#19346
82ec808 * .gitignore: Add !lib/std*.in.h, so as to not ignore the .in.h files.
3cf7629 Git ignore lib/std*.h
301a401 Always define `gnutls-available-p' even if GnuTLS is not available.
d76b9b2 Don't break example string between 2 lines (bug#19257)
75b4857 Port commit-msg to mawk
9ac0332 Improve commit-msg messages and autosquash
0c2f254 Support overflow-newline-into-fringe together with word-wrap (bug#19300)
935ee05 * net/tramp-sh.el (tramp-get-remote-path): Use a login shell in order to determine `tramp-own-remote-path'.
c2db939 python.el: Support interpreter paths with spaces
d83f329 ChangeLog fix
0f9fbb9 Port commit-message checking to FreeBSD 9.
3db1ada admin/MAINTAINERS: Update my interests and responsibilities.
6382f24 * .gitignore: Ignore autosave files.

Conflicts:
	ChangeLog
	lisp/progmodes/python.el
	src/gnutls.c
2014-12-12 19:23:19 -05:00
Stefan Monnier
074965f935 * lisp/progmodes/python.el (python-indent-line): Use `noindent' in strings.
(python-indent-levels): Document extra value.
(python-indent-calculate-indentation): Return `noindent' in strings.
(python-indent-post-self-insert-function)
(python-indent-calculate-levels): Handle new value.
2014-12-12 09:55:42 -05:00
Fabián Ezequiel Gallina
c2db939359 python.el: Support interpreter paths with spaces
Fixes: debbugs:19289

* lisp/progmodes/python.el (python-shell-parse-command): Quote
`python-shell-interpreter`.
2014-12-08 22:32:53 -03:00
Fabián Ezequiel Gallina
afa1d80fe0 python.el: Don't change `comint-prompt-read-only' globally
Fixes: debbugs:19288

* lisp/progmodes/python.el (inferior-python-mode): Set
`comint-prompt-read-only` to `t` only locally.
2014-12-08 22:19:37 -03:00
Tom Willemse
9dfa949c0d * lisp/progmodes/python.el: Recognize docstrings.
(python-docstring-at-p, python-font-lock-syntactic-face-function):
New functions.
(python-mode): Use them.
2014-12-07 11:24:35 -05:00
Stefan Monnier
0bb24df135 Merge from origin/emacs-24
bb19b22 Python.el: Update commentary on RET-behavior
2014-12-05 15:12:00 -05:00
Rasmus
bb19b229f9 Python.el: Update commentary on RET-behavior
Commentary reflect that `electric-indent-mode' in enabled by default.
2014-11-29 13:58:20 -03:00
Paul Eggert
0cce3623b1 Merge branch 'emacs-24'. 2014-11-28 23:07:16 -08:00
Fabián Ezequiel Gallina
7bf7edf53f * lisp/progmodes/python.el (python-shell-completion-setup-code): Use
__builtin__ module (or builtins in Python 3) and catch all errors
when importing readline and rlcompleter.
2014-11-26 23:45:24 -03:00
Ted Zlatanov
ba4502fe14 Merge branch 'emacs-24'
Conflicts:
	nt/addsection.c
	nt/inc/ms-w32.h
	src/w32.c
2014-11-26 21:31:11 -05:00
Fabián Ezequiel Gallina
238c052fdb Set PYTHONUNBUFFERED on shell startup.
Fixes: debbugs:18595

* lisp/progmodes/python.el (python-shell-unbuffered): New var.
(python-shell-calculate-process-environment): Use it.

* test/automated/python-tests.el
(python-shell-calculate-process-environment-4)
(python-shell-calculate-process-environment-5): New tests.
(python-shell-make-comint-3): Use file-equal-p.
(python-shell-get-or-create-process-1)
(python-shell-get-or-create-process-2)
(python-shell-get-or-create-process-3): Fix interpreter for
Windows.
2014-11-22 20:09:30 -03:00
Fabián Ezequiel Gallina
c2e145b237 * lisp/progmodes/python.el (python-mode): Avoid use of set-local to
keep Emacs 24.x compatibility.
2014-11-16 17:59:42 -03:00
Fabián Ezequiel Gallina
651ebee618 Fixes: debbugs:18596
* lisp/progmodes/python.el (run-python): Allow CMD to be optional and
default it to a safe command, even for Windows.  (bug#18596)
2014-11-16 11:20:25 -03:00
Fabián Ezequiel Gallina
cf100f60a6 Prevent resizing the echo area when iPython is enabled
Fixes: debbugs:18794

* lisp/progmodes/python.el (python-eldoc--get-doc-at-point): Strip
shell output before returning.
2014-11-16 11:11:49 -03:00