summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp/bytecomp.el
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2022-03-18 11:59:32 -0400
committerStefan Monnier <monnier@iro.umontreal.ca>2022-03-18 11:59:32 -0400
commitce28de5d3a1293ceaf4317520ec8c3d2095ab947 (patch)
treefee494d06643e8e03a8b5bf6f01f31d121cf12b1 /lisp/emacs-lisp/bytecomp.el
parentf51e12feceae18f0b6715142a4e61d6522f79389 (diff)
downloademacs-ce28de5d3a1293ceaf4317520ec8c3d2095ab947.tar.gz
emacs-ce28de5d3a1293ceaf4317520ec8c3d2095ab947.tar.bz2
emacs-ce28de5d3a1293ceaf4317520ec8c3d2095ab947.zip
Pcomplete: Better obey `completion-at-point-functions`
Functions on `completion-at-point-functions` should not modify the buffer. Pcomplete itself mostly abides by this but Eshell's use of it doesn't. Try and catch those cases. Also fix one of those cases. * lisp/pcomplete.el (pcomplete-allow-modifications): New var. (pcomplete-completions-at-point): Enforce it. (pcomplete, pcomplete-expand-and-complete, pcomplete-expand): Rebind it since these commands expect the extra side effects. * lisp/eshell/em-cmpl.el (eshell--pcomplete-insert-tab): New function, extracted from `eshell-complete-parse-arguments`. (eshell-complete-parse-arguments): Use it and obey `pcomplete-allow-modifications`.
Diffstat (limited to 'lisp/emacs-lisp/bytecomp.el')
0 files changed, 0 insertions, 0 deletions