Commit graph

226 commits

Author SHA1 Message Date
Paul Eggert
284c470ef7 Backslash cleanup in Elisp source files
This patch should not change behavior.  It typically omits backslashes
where they are redundant (e.g., in the string literal "^\$").
In a few places, insert backslashes where they make regular
expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
"^\\*", which has the same effect as a regular expression.
Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
RCS IDs, as that makes it clearer that the backslash is intended.
2015-09-17 16:09:39 -07:00
David Kastrup
5022e27dac ; Do not overwrite preexisting contents of unread-command-events 2015-08-04 14:34:15 +02:00
Stefan Monnier
beaab89896 Stop messing with the EMACS env var
Fixes: debbugs:20202

* lisp/net/tramp-sh.el (tramp-remote-process-environment):
* lisp/comint.el (comint-exec-1):
* lisp/term.el (term-exec-1): Don't set EMACS envvar.
* lisp/progmodes/compile.el (compilation-start): Same and bring
INSIDE_EMACS's format in line with other users.
2015-04-09 11:01:04 -04:00
Daniel Colascione
165bea7800 Automatically adjust process window sizes
* lisp/window.el (window-adjust-process-window-size-function): New
customizable variable.
(window-adjust-process-window-size)
(window-adjust-process-window-size-smallest)
(window-adjust-process-window-size-largest)
(window--process-window-list, window--adjust-process-windows):
New functions.
(window-configuration-change-hook): Add
`window--adjust-process-windows'.
* lisp/term.el (term-mode): Observe result of
`window-adjust-process-window-size-function'.
(term-check-size): Delete.
2015-03-22 21:09:32 -07:00
Paul Eggert
7e09ef09a4 Update copyright year to 2015
Run admin/update-copyright.
2015-01-01 14:26:41 -08:00
Glenn Morris
32ade3f01a Merge from emacs-24; up to 2014-07-22T06:37:31Z!yamaoka@jpl.org 2014-10-08 21:23:09 -07:00
Martin Rudalics
e76955cbb5 In term-window-width subtract 1 from width when any fringe has zero width. (Bug#18601)
* term.el (term-window-width): Subtract 1 from the width when
any fringe has zero width, not just the right fringe.  (Bug#18601)
2014-10-06 08:45:10 +02:00
Stefan Monnier
31300bee24 Consolidate management/ownership of selections.
* lisp/select.el (gui-get-selection-alist): New method.
(gui-get-selection): Use it.  Rename from x-get-selection.
(x-get-selection): Define as obsolete alias.
(x-get-clipboard): Mark obsolete.
(gui-get-primary-selection): New function.
(x-get-selection-value): Mark obsolete.
(gui-own-selection-alist, gui-disown-selection-alist)
(gui-selection-owner-p-alist): New methods.
(gui-set-selection): Use them.  Rename from x-set-selection.
(x-set-selection): Define as obsolete alias.
(gui--valid-simple-selection-p): Rename from
x-valid-simple-selection-p.
* lisp/w32-common-fns.el (gui-own-selection, gui-disown-selection)
(gui-selection-owner-p, gui-get-selection): Define for w32.
(w32-get-selection-value): Rename from x-get-selection-value.
Use the new gui-last-selected-text.
* lisp/term/x-win.el (x-get-selection-value): Remove.
(x-clipboard-yank): Declare obsolete.
(gui-own-selection, gui-disown-selection, gui-get-selection)
(gui-selection-owner-p): Define for x.
* lisp/term/w32-win.el (w32-win-suspend-error): Rename from
x-win-suspend-error.
* lisp/term/pc-win.el (w16-get-selection-value): Rename from
x-get-selection-value.
(w16-selection-owner-p): Rename from x-selection-owner-p.
(gui-own-selection, gui-disown-selection, gui-get-selection)
(gui-selection-owner-p): Define for pc.
(w16--select-text): New function.
* lisp/term/ns-win.el (gui-own-selection, gui-disown-selection)
(gui-get-selection, gui-selection-owner-p): Define for ns.
* lisp/term.el (term-mouse-paste):
* lisp/mouse.el (mouse-yank-primary): Use gui-get-primary-selection.
* src/nsselect.m (ns-own-selection-internal, ns-disown-selection-internal):
Rename from the "x-" prefix.
2014-10-01 23:19:32 -04:00
Stefan Monnier
78478ff636 * lisp/leim/quail/sisheng.el (sisheng-list): Don't bother with-case-table.
* lisp/eshell/em-smart.el (eshell-smart-scroll-window): Use
with-selected-window.
2014-07-08 15:15:28 -04:00
Dmitry Antipov
9c3883b47d * lisp/electric.el (electric-layout-post-self-insert-function):
* lisp/emacs-lisp/ert.el (ert--insert-infos):
* lisp/obsolete/vi.el (vi-set-mark):
* lisp/term.el (term-handle-scroll):
* lisp/textmodes/bibtex.el (bibtex-fill-field, bibtex-fill-entry):
* lisp/gnus/gnus-sum.el (gnus-summary-edit-article-done):
* lisp/org/org-mouse.el (org-mouse-do-remotely):
* lisp/wid-edit.el (widget-editable-list-value-create): Prefer
point-marker to copy-marker of point.
* lisp/ob-core.el (org-babel-insert-result): Prefer point-min-marker
and point-max-marker.
2014-06-22 09:43:58 +04:00
Stefan Monnier
0e8a933149 * lisp/simple.el (completion-list-mode-map): Use choose-completion for the
mouse binding as well.
(completion-list-mode, completion-setup-function): Adjust docstring and
echo area message accordingly.
* lisp/progmodes/idlwave.el (idlwave-choose-completion): Adjust to new
calling convention of choose-completion.
* lisp/comint.el (comint-dynamic-list-completions):
* lisp/term.el (term-dynamic-list-completions): Accept choose-completion.

Fixes: debbugs:17302
2014-04-22 22:22:06 -04:00
Martin Rudalics
6cb4da45dc Fixes in window size functions around Bug#16430 and Bug#16470.
* window.c (Fwindow_pixel_width, Fwindow_pixel_height)
(Fwindow_mode_line_height, Fwindow_header_line_height)
(Fwindow_right_divider_width, Fwindow_bottom_divider_width):
Minor doc-string adjustments.
(Fwindow_total_height, Fwindow_total_width): New argument ROUND.
Rewrite doc-strings.
(window_body_height, window_body_width): Do not count partially
visible lines/columns when PIXELWISE is nil (Bug#16470).
(Qfloor, Qceiling): New symbols.
* window.el (window-total-size, window-size): New argument
ROUND.
(window--min-delta-1, window-min-delta, window--max-delta-1): Be
more conservative when calculating the numbers of lines or
columns a window can shrink (Bug#16430).
(fit-window-to-buffer): Simplify code.
* term.el (term-window-width): Call window-body-width again.
2014-01-22 11:29:23 +01:00
Martin Rudalics
ad9eb30a3f Extend last fix of term-window-width (Bug#16470). 2014-01-19 17:59:51 +01:00
Martin Rudalics
4ff6d92ddd In term-window-width call window-text-width instead of window-width (Bug#16470).
* term.el (term-window-width): Call window-text-width instead of
window-width (Bug#16470).
2014-01-19 10:24:26 +01:00
Paul Eggert
ba3189039a Update copyright year to 2014 by running admin/update-copyright. 2014-01-01 07:43:34 +00:00
Glenn Morris
45069b2e00 * term.el (term-mouse-paste): Reorder to silence --without-x compilation. 2013-09-17 21:46:44 -07:00
Eli Zaretskii
84387cd259 Fix bug #15337 with non-ASCII characters in file names used by ansi
lisp/term.el (term-emulate-terminal): Decode the command string
 before passing it to term-command-hook.
2013-09-13 16:22:47 +03:00
Michael Hoffman
5755011f76 * term.el (term-suppress-hard-newline): New option (tiny change)
(term-emulate-terminal): Respect term-suppress-hard-newline.

Fixes: debbugs:12017
2013-06-12 22:27:05 -07:00
Glenn Morris
8582e4c4b9 * lisp/term.el (term-set-escape-char): Make it idempotent. 2013-05-10 19:15:46 -07:00
Glenn Morris
0f668a4db4 Merge from emacs-24; up to 2012-12-06T20:16:38Z!monnier@iro.umontreal.ca 2013-01-04 11:22:37 -08:00
Glenn Morris
d2be4dccb9 term-handle-colors-array fix
* lisp/term.el (term-handle-colors-array):
Ensure face attributes are fully specified, not nil.

Fixes: debbugs:13337
2013-01-03 10:31:45 -08:00
Glenn Morris
5b00b74939 * term.el (term-default-fg-color, term-default-bg-color): Fix custom type. 2013-01-02 22:33:25 -08:00
Paul Eggert
0877d0dc24 Merge from emacs-24; up to 2012-12-06T01:39:03Z!monnier@iro.umontreal.ca 2013-01-02 08:13:04 -08:00
Paul Eggert
ab422c4d68 Update copyright notices for 2013. 2013-01-01 09:11:05 +00:00
Juanma Barranquero
d7fe635216 lisp/*.el: Add missing declarations.
* descr-text.el (quail-find-key):
* dired.el (desktop-file-name):
* dirtrack.el (shell-prefixed-directory-name, shell-process-cd):
* generic-x.el (comint-mode, comint-exec):
* image-dired.el (widget-forward):
* info.el (speedbar-add-expansion-list, speedbar-center-buffer-smartly)
(speedbar-change-expand-button-char)
(speedbar-change-initial-expansion-list, speedbar-delete-subblock)
(speedbar-make-specialized-keymap, speedbar-make-tag-line):
* printing.el (easy-menu-add-item, easy-menu-remove-item)
(widget-field-action, widget-value-set):
* speedbar.el (imenu--make-index-alist):
* term.el (ring-empty-p, ring-ref, ring-insert-at-beginning)
(ring-length, ring-insert):
* vcursor.el (compare-windows-skip-whitespace):
* woman.el (dired-get-filename):
Declare functions.

* term/w32-win.el (cygwin-convert-path-from-windows): Fix declaration.
2012-11-17 22:52:12 +01:00
Glenn Morris
e2e13f1831 ansi-term escape-char fix
* lisp/term.el (ansi-term): Don't let C-x escape-char binding
clobber the more standard C-c binding.

Fixes: debbugs:12842
2012-11-14 22:17:56 -08:00
Glenn Morris
bf67dafaf5 Make term-default-fg-color, term-default-bg-color obsolete
* lisp/term.el (term-default-fg-color, term-default-bg-color):
Make obsolete, rather than just saying "deprecated" in the doc.
2012-11-09 20:48:44 -05:00
Glenn Morris
19e0987902 Face names should not end in -face (term-face)
* lisp/term.el (term): Rename from `term-face'.
(term-current-face, ansi-term-color-vector)
(term-default-fg-color, term-default-bg-color, term-ansi-reset):
Update all users.

* doc/emacs/misc.texi (Terminal emulator): Rename `term-face' to `term'.

* etc/NEWS: Related edit.
2012-11-09 20:40:48 -05:00
Glenn Morris
48c339f259 * term.el (term-ansi-reset): Try setting term-ansi-face-already-done to nil.
Fixes: debbugs:11785
2012-09-27 00:05:37 -07:00
Chong Yidong
59f7af816e Use declare forms, where possible, to mark obsolete functions.
* lisp/allout.el (allout-passphrase-hint-string): Likewise.
(allout-init): Use a declare form to mark obsolete.

* lisp/calendar/calendar.el (calendar-version):
* lisp/calendar/icalendar.el (icalendar-extract-ical-from-buffer)
(icalendar-convert-diary-to-ical):
* lisp/cus-edit.el (custom-mode):
* lisp/ansi-color.el (ansi-color-unfontify-region):
* lisp/international/latin1-disp.el (latin1-char-displayable-p):
* lisp/progmodes/cwarn.el (turn-on-cwarn-mode):
* lisp/progmodes/which-func.el (which-func-update-1): Use
define-obsolete-function-alias.

* lisp/bookmark.el (bookmark-jump-noselect): Use a declare form to mark
this function obsolete.

* lisp/calendar/cal-x.el (calendar-two-frame-setup)
(calendar-only-one-frame-setup, calendar-one-frame-setup):
* lisp/calendar/calendar.el (american-calendar, european-calendar)
(calendar-for-loop):
* lisp/comint.el (comint-dynamic-simple-complete)
(comint-dynamic-complete-as-filename, comint-unquote-filename):
* lisp/desktop.el (desktop-load-default):
* lisp/dired-x.el (dired-omit-here-always)
(dired-hack-local-variables, dired-default-directory):
* lisp/emacs-lisp/derived.el (derived-mode-class):
* lisp/emacs-lisp/timer.el (timer-set-time-with-usecs):
* lisp/emacs-lock.el (toggle-emacs-lock):
* lisp/epa.el (epa-display-verify-result):
* lisp/epg.el (epg-sign-keys, epg-start-sign-keys)
(epg-passphrase-callback-function):
* lisp/eshell/esh-util.el (eshell-for):
* lisp/eshell/eshell.el (eshell-remove-from-window-buffer-names)
(eshell-add-to-window-buffer-names):
* lisp/files.el (locate-file-completion):
* lisp/imenu.el (imenu-example--create-c-index)
(imenu-example--create-lisp-index)
(imenu-example--lisp-extract-index-name)
(imenu-example--name-and-position):
* lisp/international/mule-cmds.el (princ-list):
* lisp/international/mule-diag.el (decode-codepage-char):
* lisp/international/mule-util.el (detect-coding-with-priority):
* lisp/iswitchb.el (iswitchb-read-buffer):
* lisp/mail/mailalias.el (mail-complete):
* lisp/mail/sendmail.el (mail-sent-via):
* lisp/mouse.el (mouse-popup-menubar-stuff, mouse-popup-menubar)
(mouse-major-mode-menu):
* lisp/password-cache.el (password-read-and-add):
* lisp/pcomplete.el (pcomplete-parse-comint-arguments):
* lisp/progmodes/sh-script.el (sh-maybe-here-document):
* lisp/replace.el (query-replace-regexp-eval):
* lisp/savehist.el (savehist-load):
* lisp/simple.el (choose-completion-delete-max-match):
* lisp/term.el (term-dynamic-simple-complete):
* lisp/vc/ediff-init.el (ediff-check-version):
* lisp/vc/ediff-wind.el (ediff-choose-window-setup-function-automatically):
* lisp/vc/vc.el (vc-diff-switches-list):
* lisp/view.el (view-return-to-alist-update): Likewise.

* lisp/iswitchb.el (iswitchb-read-buffer): Move code of
iswitchb-define-mode-map here, and delete that obsolete function.

* lisp/subr.el (eval-next-after-load, makehash, insert-string)
(assoc-ignore-representation, assoc-ignore-case): Use declare to
mark obsolete.
(mode-line-inverse-video): Variable deleted.

* lisp/emacs-lisp/byte-run.el (make-obsolete): Doc fix; emphasize that
this applies to functions.

* lisp/erc/erc.el (erc-send-command): Use define-obsolete-function-alias.

* lisp/international/mule-util.el (string-to-sequence): Remove.

* lisp/net/newst-backend.el (newsticker-cache-filename):
* lisp/net/newst-treeview.el (newsticker-groups-filename): Fix
incorrect obsolescence declaration.

* lisp/net/snmp-mode.el (snmp-font-lock-keywords-3): Don't use obsolete
font-lock-reference-face.

* lisp/url/url-parse.el (url-recreate-url-attributes):
* lisp/url/url-util.el (url-generate-unique-filename): Use declare to mark
obsolete.

* src/xdisp.c (mode_line_inverse_video): Delete obsolete variable.
2012-09-25 12:13:02 +08:00
Glenn Morris
69678719ec Tidy up term.el menu handling
* lisp/term.el: (term-mode-map): Use easymenu for In/Out, Complete menus.
(term-pager-break-map): Initialize in the defvar.
(term-terminal-menu, term-signals-menu): Define with easymenu.
(term-terminal-menu): Also show it in line-mode. 
(term-pager-menu): New, extracted from term-process-pager.
(term-mode, term-char-mode, term-process-pager): Use easymenu-add.
(term-update-mode-line): Propertize line/char and page items.
(term-process-pager): Move keymap initialization elsewhere.

Fixes: debbugs:11957
2012-09-01 15:03:06 -07:00
Stefan Monnier
a464a6c73a More CL cleanups and reduction of use of cl.el.
* woman.el, winner.el, vc/vc-rcs.el, vc/vc-hooks.el, vc/vc-hg.el:
* vc/vc-git.el, vc/vc-dir.el, vc/vc-bzr.el, vc/vc-annotate.el:
* textmodes/tex-mode.el, textmodes/sgml-mode.el, tar-mode.el:
* strokes.el, ses.el, server.el, progmodes/js.el, progmodes/gdb-mi.el:
* progmodes/flymake.el, progmodes/ebrowse.el, progmodes/compile.el:
* play/tetris.el, play/snake.el, play/pong.el, play/landmark.el:
* play/hanoi.el, play/decipher.el, play/5x5.el, nxml/nxml-mode.el:
* net/secrets.el, net/quickurl.el, midnight.el, mail/footnote.el:
* image-dired.el, ibuffer.el, ibuf-macs.el, ibuf-ext.el, hexl.el:
* eshell/eshell.el, eshell/esh-io.el, eshell/esh-ext.el:
* eshell/esh-cmd.el, eshell/em-ls.el, eshell/em-hist.el:
* eshell/em-cmpl.el, eshell/em-banner.el:
* url/url.el, url/url-queue.el, url/url-parse.el, url/url-http.el:
* url/url-future.el, url/url-dav.el, url/url-cookie.el:
* calendar/parse-time.el, test/eshell.el: Use cl-lib.
* wid-browse.el, wdired.el, vc/vc.el, vc/vc-mtn.el, vc/vc-cvs.el:
* vc/vc-arch.el, tree-widget.el, textmodes/texinfo.el:
* textmodes/refill.el, textmodes/css-mode.el, term/tvi970.el:
* term/ns-win.el, term.el, shell.el, ps-samp.el:
* progmodes/perl-mode.el, progmodes/pascal.el, progmodes/gud.el:
* progmodes/glasses.el, progmodes/etags.el, progmodes/cwarn.el:
* play/gamegrid.el, play/bubbles.el, novice.el, notifications.el:
* net/zeroconf.el, net/xesam.el, net/snmp-mode.el, net/mairix.el:
* net/ldap.el, net/eudc.el, net/browse-url.el, man.el:
* mail/mailheader.el, mail/feedmail.el:
* url/url-util.el, url/url-privacy.el, url/url-nfs.el, url/url-misc.el:
* url/url-methods.el, url/url-gw.el, url/url-file.el, url/url-expand.el:
Dont use CL.
* ibuf-ext.el (ibuffer-mark-old-buffers): Use float-time.
* eshell/esh-opt.el (eshell-eval-using-options): Quote code with
`lambda' rather than with `quote'.
(eshell-do-opt): Adjust accordingly.
(eshell-process-option): Simplify.
* eshell/esh-var.el:
* eshell/em-script.el: Require `esh-opt' for eshell-eval-using-options.
* emacs-pcase.el (pcase--dontcare-upats, pcase--let*)
(pcase--expand, pcase--u1): Rename pcase's internal `dontcare' pattern
to `pcase--dontcare'.
* emacs-cl.el (labels): Mark obsolete.
(cl--letf, letf): Move to cl-lib.
(cl--letf*, letf*): Remove.
* emacs-cl-lib.el (cl-nth-value): Use defalias.
* emacs-cl-macs.el (cl-dolist, cl-dotimes): Add indent rule.
(cl-progv): Rewrite.
(cl--letf, cl-letf): Move from cl.el.
(cl-letf*): New macro.
* emacs-cl-extra.el (cl--progv-before, cl--progv-after): Remove.
2012-07-11 19:13:41 -04:00
Julien Danjou
ae4969c2d6 term: rework color cutomizing
* term.el (term-handle-colors-array): Use a set of new faces to
color the terminal.  Also uses :inverse-video property.
(term-default-fg-color): Set to nil by default, deprecate in favor
of `term-face'.
(term-default-bg-color): Set to nil by default, deprecate in favor
of `term-face'.
(term-current-face): Use `term-face' by default.
(term-bold-attribute): Variable deleted.
2012-06-28 12:40:24 +02:00
Chong Yidong
297a8f1ddb term.el (term-send-raw-meta): Make C-M-<char> keys work (Bug#8172).
-------------- This lime and the following will be ignored --------------

modified:
  lisp/ChangeLog
  lisp/term.el
2012-06-20 12:21:57 -04:00
Chong Yidong
6ff7caa835 Change term.el to use font-lock.
* term.el (term-mode): Set font-lock-defaults.
(term-move-columns, term-insert-char, term-emulate-terminal)
(term-erase-in-line, term-insert-spaces): Use font-lock-face.

Fixes: debbugs:7692
2012-06-20 17:21:06 +08:00
Chong Yidong
32f7f28e02 Fixes to window size calculations in term.el.
* term.el (term-window-width): Handle the case of a missing right
fringe.
(term-check-size): Use window-text-height.
(term-mode): Use define-derived-mode.  Minor cleanups.

Fixes: debbugs:8837
2012-06-20 16:34:21 +08:00
Chong Yidong
eb4a8a9a88 Fix point motion bug in term-emulate-terminal.
* lisp/term.el (term-emulate-terminal): If term-check-size is called,
move point to the process mark without resetting point.

Fixes: debbugs:4635
2012-06-17 16:26:13 +08:00
Stefan Monnier
13bdd94c38 * lisp/term.el: Move keymap initialization code to be more idiomatic.
(term-signals-menu, term-mode-map, term-raw-map, term-raw-escape-map)
(term-terminal-menu): Move initialization into declaration.
(term-escape-char): Let the user set it in her .emacs.
2012-05-11 11:05:03 -04:00
Stefan Monnier
dee6c9a34f * lisp/term.el (term-set-escape-char): Properly set term-escape-char. 2012-05-11 09:13:09 -04:00
Glenn Morris
e43273eff0 Use ctl-x-map in place of C-x (bug#10566)
For an example of the problems NOT doing this might cause, see eg
http://lists.gnu.org/archive/html/bug-gnu-emacs/2006-07/msg00000.html
Eg after:
  (global-set-key (kbd "C-u") ctl-x-map)
  (global-set-key (kbd "C-x") 'universal-argument)
just loading dired-x.el or term.el would give an error.

* lisp/dired-x.el (dired-bind-jump): Use ctl-x-map and ctl-x-4-map.
* lisp/term.el (term-raw-escape-map): Use Control-X-prefix.
* lisp/vc/vc-hooks.el (vc-prefix-map): Use ctl-x-map.
2012-01-25 21:32:56 -05:00
Glenn Morris
acaf905b11 Add 2012 to FSF copyright years for Emacs files 2012-01-05 01:46:05 -08:00
Paul Eggert
6196cffecf Spelling fixes. 2011-12-21 01:58:39 -08:00
Paul Eggert
e47695319f Spelling fixes. 2011-11-26 20:43:11 -08:00
Paul Eggert
ee7683ebb7 Spelling fixes. 2011-11-22 23:03:56 -08:00
Paul Eggert
e1dbe924b5 Spelling fixes. 2011-11-19 18:29:42 -08:00
Paul Eggert
c5e87d104b Spelling fixes. 2011-11-17 09:40:48 -08:00
Paul Eggert
f6b1b0a848 Spelling fixes. 2011-11-12 23:48:23 -08:00
Chong Yidong
ff98b2dd51 * lisp/term.el (term-mouse-paste): Yank primary selection (Bug#6845). 2011-08-21 13:56:19 -04:00
Stefan Monnier
4f91a8160f Don't quote lambda expressions with `quote'. 2011-05-23 14:57:17 -03:00
Glenn Morris
53ef76c7d3 Convert some defvars to defcustoms.
* lisp/speedbar.el (speedbar-ignored-modes, speedbar-file-unshown-regexp)
(speedbar-update-flag, speedbar-fetch-etags-command)
(speedbar-fetch-etags-arguments):
* lisp/term.el (term-buffer-maximum-size, term-input-chunk-size)
(term-completion-autolist, term-completion-addsuffix)
(term-completion-recexact, term-completion-fignore):
* lisp/term/sup-mouse.el (sup-mouse-fast-select-window):
* lisp/term/x-win.el (x-select-request-type):
Convert some defvars with "*" to defcustoms.
2011-02-16 21:13:17 -08:00