1. 18 Feb, 2017 1 commit
    • Rami Ylimäki's avatar
      Support 24-bit direct colors on text terminals · e463e576
      Rami Ylimäki authored
      * src/term.c (init_tty): Use 24-bit terminal colors if corresponding
      foreground and background functions are present in terminal type
      definition.
      * src/tparam.h: Define prototype for tigetstr.
      
      * lisp/term/tty-colors.el (tty-color-define): Convert color palette
      index to pixel value on 16.7M color terminals.
      (tty-color-24bit): New function to convert color palette index to
      pixel value on 16.7M color terminals.
      (tty-color-desc): Don't approximate colors on 16.7M color terminals.
      * lisp/term/xterm.el (xterm-register-default-colors): Define all named
      TTY colors on 16.7M color terminals.
      
      * doc/misc/efaq.texi (Colors on a TTY): Add instructions on how to
      enable direct color TTY mode.
      * etc/NEWS: Mention direct color TTY mode and point to FAQ.
      e463e576
  2. 01 Jan, 2017 1 commit
  3. 06 Nov, 2016 1 commit
    • Paul Eggert's avatar
      Modernize usage of 'macOS' in doc and comments · dc152c54
      Paul Eggert authored
      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.
      dc152c54
  4. 03 Nov, 2016 1 commit
  5. 25 Oct, 2016 1 commit
  6. 18 Oct, 2016 1 commit
  7. 15 Oct, 2016 1 commit
    • Philipp Stephani's avatar
      Disable bracketed paste in a terminal in char mode · cf566b46
      Philipp Stephani authored
      In char mode, a terminal doesn't accept bracketed paste events,
      therefore we should disable them; see Bug#24639.  To decouple the XTerm
      management from term.el, introduce a per-buffer setting to disable
      bracketed paste for that buffer.  If bracketed paste is inhiited for at
      least one buffer in a terminal, it is disabled for the whole terminal.
      
      * term/xterm.el (xterm-inhibit-bracketed-paste-mode): New mode to
      inhibit XTerm bracketed paste per buffer.
      (xterm--buffer-terminals, xterm--update-bracketed-paste)
      (xterm--bracketed-paste-possible, xterm--is-xterm): New helper
      functions.
      (xterm--init-bracketed-paste-mode): Remove unused helper
      function.
      (terminal-init-xterm): Update bracketed paste status when
      initializing an XTerm and on window configuration change.
      
      * term.el (term-char-mode, term-line-mode): Inhibit XTerm
      bracketed paste in char mode.
      cf566b46
  8. 22 May, 2016 1 commit
    • Paul Eggert's avatar
      Bring back xterm pasting with middle mouse · 869092c9
      Paul Eggert authored
      Problem reported by Jan Synáček.
      Solution suggested by Stefan Monnier (Bug#23519).
      * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
      (xterm--pasted-text): New decl.
      (isearch-xterm-paste): New function.
      * lisp/term/xterm.el (xterm--pasted-text): New function,
      taken from xterm-paste internals.
      (xterm-paste): Use it.
      869092c9
  9. 29 Feb, 2016 1 commit
  10. 13 Jan, 2016 1 commit
    • Glenn Morris's avatar
      Add some missing version tags. · e85e0d59
      Glenn Morris authored
      * 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.
      e85e0d59
  11. 01 Jan, 2016 1 commit
  12. 29 Oct, 2015 1 commit
    • Stefan Monnier's avatar
      * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context · 84dcdbeb
      Stefan Monnier authored
      (cl--generic-derived-specializers): New function.
      (cl--generic-derived-generalizer): New generalizer.
      (cl-generic-generalizers): New specializer (derived-mode MODE).
      (cl--generic-split-args): Apply the rewriter, if any.
      (cl-generic-define-context-rewriter): New macro.
      (major-mode): Use it to define a new context-rewriter, so we can write
      `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
      
      * lisp/frame.el (window-system): New context-rewriter so we can write
      `(window-system VAL)' instead of (window-system (eql VAL)).
      (cl--generic-split-args): Apply the rewriter, if any.
      (frame-creation-function): Use the new syntax.
      
      * lisp/term/x-win.el (window-system-initialization)
      (handle-args-function, frame-creation-function)
      (gui-backend-set-selection, gui-backend-selection-owner-p)
      (gui-backend-selection-exists-p, gui-backend-get-selection):
      * lisp/term/w32-win.el (window-system-initialization)
      (handle-args-function, frame-creation-function)
      (gui-backend-set-selection, gui-backend-get-selection)
      (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
      * lisp/term/pc-win.el (gui-backend-get-selection)
      (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
      (gui-backend-set-selection, window-system-initialization)
      (frame-creation-function, handle-args-function):
      * lisp/term/ns-win.el (window-system-initialization)
      (handle-args-function, frame-creation-function)
      (gui-backend-set-selection, gui-backend-selection-exists-p)
      (gui-backend-get-selection):
      * lisp/startup.el (handle-args-function):
      * lisp/term/xterm.el (gui-backend-get-selection)
      (gui-backend-set-selection): Use the new syntax.
      84dcdbeb
  13. 02 Jul, 2015 1 commit
  14. 01 Jul, 2015 1 commit
  15. 25 May, 2015 1 commit
    • Philipp Stephani's avatar
      * lisp/term/xterm.el: Add gui-get-selection support via OSC-52 · 816a2b36
      Philipp Stephani authored
      (xterm--extra-capabilities-type): Add `getSelection'.
      (xterm--query): Add `no-async' argument.
      (xterm--init-activate-get-selection): New function.
      (terminal-init-xterm): Use it.
      (xterm--init-modify-other-keys): Rename from
      terminal-init-xterm-modify-other-keys.
      (xterm--init-bracketed-paste-mode): Rename from
      terminal-init-xterm-bracketed-paste-mode.
      (xterm--init-activate-set-selection): Rename from
      terminal-init-xterm-activate-set-selection.
      (xterm--selection-char): New function.
      (gui-backend-set-selection): Use it.  Use the &context to only apply
      this method in terminals where we enabled the feature.
      (gui-backend-get-selection): New method.
      816a2b36
  16. 23 May, 2015 1 commit
    • Stefan Monnier's avatar
      Replace gui-method macros with cl-generic with &context · 919281dd
      Stefan Monnier authored
      * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
      (gui-method-declare, gui-call): Remove.
      (frame-creation-function): Use cl-defgeneric.
      (make-frame): Adjust callers.
      
      * lisp/menu-bar.el (menu-bar-edit-menu):
      Use gui-backend-selection-exists-p.
      
      * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
      (gui-backend-get-selection): New cl-generic to replace
      gui-get-selection method.
      (gui-backend-set-selection): New cl-generic to replace
      gui-set-selection method.
      (gui-selection-owner-p): New cl-generic to replace
      gui-selection-owner-p method.
      (gui-backend-selection-exists-p): New cl-generic to replace
      gui-selection-exists-p method.  Adjust all callers.
      
      * lisp/server.el (server-create-window-system-frame): Don't ignore
      window-system spec even when unsupported.
      
      * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
      
      * lisp/startup.el (handle-args-function, window-system-initialization):
      Use cl-defgeneric.
      (command-line): Adjust calls accordingly.
      
      * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
      a window-system-initialization method.
      (handle-args-function, frame-creation-function): Use cl-defmethod.
      (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
      (gui-get-selection): Use cl-defmethod on the new functions instead.
      
      * lisp/term/pc-win.el (w16-get-selection-value): Turn into
      a gui-backend-get-selection method.
      (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
      Use cl-defmethod on the new functions instead.
      (msdos-window-system-initialization): Turn into
      a window-system-initialization method.
      (frame-creation-function, handle-args-function): Use cl-defmethod.
      
      * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
      a window-system-initialization method.
      (handle-args-function, frame-creation-function): Use cl-defmethod.
      (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
      (gui-get-selection): Use cl-defmethod on the new functions instead.
      
      * lisp/term/x-win.el (x-window-system-initialization): Turn into
      a window-system-initialization method.
      (handle-args-function, frame-creation-function): Use cl-defmethod.
      (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
      (gui-get-selection): Use cl-defmethod on the new functions instead.
      
      * lisp/term/xterm.el (xterm--set-selection): Turn into
      a gui-backend-set-selection method.
      
      * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
      (Fns_selection_owner_p): Remove unused arg `terminal'.
      (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
      919281dd
  17. 11 May, 2015 1 commit
    • Stefan Monnier's avatar
      * lisp/term/xterm.el: Fix xterm-paste handling for rxvt · 0a21b26c
      Stefan Monnier authored
      * lisp/term/rxvt.el: Require term/xterm.
      (rxvt-function-map): Use xterm-rxvt-function-map.
      (rxvt-standard-colors): Move before first use.
      (terminal-init-rxvt): Use xterm--push-map and xterm-register-default-colors.
      (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
      
      * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
      Move shared bindings between rxvt and xterm to it.
      (xterm-function-map): Use it.  Move the xterm-paste binding to
      xterm-rxvt-function-map (bug#20444).
      (xterm-standard-colors): Move before first use.
      (xterm--push-map): New function.
      (xterm-register-default-colors): Take standard colors as argument.
      (terminal-init-xterm): Use it.  Adjust call to
      xterm-register-default-colors.
      0a21b26c
  18. 04 May, 2015 1 commit
  19. 13 Apr, 2015 2 commits
  20. 01 Jan, 2015 2 commits
  21. 20 Jun, 2014 1 commit
  22. 13 Jun, 2014 1 commit
  23. 25 May, 2014 1 commit
  24. 27 Apr, 2014 1 commit
  25. 22 Apr, 2014 1 commit
  26. 17 Apr, 2014 1 commit
    • Daniel Colascione's avatar
      2014-04-17 Daniel Colascione <dancol@dancol.org> · bfc30790
      Daniel Colascione authored
      	Add support for bracketed paste mode; add infrastructure for
      	managing terminal mode enabling and disabling automatically.
      
      	* xt-mouse.el:
      	(xterm-mouse-mode): Simplify.
      	(xterm-mouse-tracking-enable-sequence)
      	(xterm-mouse-tracking-disable-sequence): New constants.
      	(turn-on-xterm-mouse-tracking-on-terminal)
      	(turn-off-xterm-mouse-tracking-on-terminal): Use
      	tty-mode-set-strings and tty-mode-reset-strings terminal
      	parameters instead of random hooks.
      	(turn-on-xterm-mouse-tracking)
      	(turn-off-xterm-mouse-tracking): Delete.
      
      	* term/xterm.el (xterm-extra-capabilities): Fix bitrotted comment.
      	(xterm-paste-ending-sequence): New constant.
      	(xterm-paste): New command used for bracketed paste support.
      
      	(xterm-modify-other-keys-terminal-list): Delete obsolete variable.
      	(terminal-init-xterm-bracketed-paste-mode): New function.
      	(terminal-init-xterm): Call it.
      	(terminal-init-xterm-modify-other-keys): Use tty-mode-set-strings
      	and tty-mode-reset-strings instead of random hooks.
      	(xterm-turn-on-modify-other-keys)
      	(xterm-turn-off-modify-other-keys)
      	(xterm-remove-modify-other-keys): Delete obsolete functions.
      
      	* term/screen.el: Rewrite to just use the xterm code.  Add
      	copyright notice.  Mention tmux.
      bfc30790
  27. 20 Feb, 2014 1 commit
  28. 01 Jan, 2014 1 commit
  29. 05 Aug, 2013 1 commit
    • Dmitry Antipov's avatar
      Do not call to `selected-frame' where it is assumed by default. · 12b4c0ea
      Dmitry Antipov authored
      Affected functions are `raise-frame', `redraw-frame',
      `frame-first-window', `frame-terminal' and `delete-frame'.
      * lisp/calendar/appt.el (appt-disp-window):
      * lisp/epg.el (epg-wait-for-completion):
      * lisp/follow.el (follow-delete-other-windows-and-split)
      (follow-avoid-tail-recenter):
      * lisp/international/mule.el (set-terminal-coding-system):
      * lisp/mail/rmail.el (rmail-mail-return):
      * lisp/net/newst-plainview.el (newsticker--buffer-set-uptodate):
      * lisp/progmodes/f90.el (f90-add-imenu-menu):
      * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-toggle):
      * lisp/server.el (server-switch-buffer):
      * lisp/simple.el (delete-completion-window):
      * lisp/talk.el (talk):
      * lisp/term/xterm.el (terminal-init-xterm-modify-other-keys)
      (xterm-turn-on-modify-other-keys, xterm-remove-modify-other-keys):
      * lisp/vc/ediff-util.el (ediff-status-info, ediff-show-diff-output):
      * lisp/vc/ediff.el (ediff-documentation): Related users changed.
      * lisp/frame.el (selected-terminal): Remove the leftover.
      12b4c0ea
  30. 14 Jun, 2013 1 commit
  31. 15 May, 2013 1 commit
    • Glenn Morris's avatar
      Misc custom group fixes · ed8be7ff
      Glenn Morris authored
      * cus-start.el (show-trailing-whitespace): Move to editing basics.
      * faces.el (trailing-whitespace): Don't use whitespace-faces group.
      * obsolete/old-whitespace.el (whitespace-faces): Remove group.
      (whitespace-highlight): Move to whitespace group.
      
      * comint.el (comint-source):
      * pcmpl-linux.el (pcmpl-linux):
      * shell.el (shell-faces):
      * eshell/esh-opt.el (eshell-opt):
      * international/ccl.el (ccl): Remove empty custom groups.
      
      * completion.el (dynamic-completion-mode):
      * jit-lock.el (jit-lock-debug-mode):
      * minibuffer.el (completion-in-region-mode):
      * type-break.el (type-break-mode-line-message-mode)
      (type-break-query-mode):
      * emulation/tpu-edt.el (tpu-edt-mode):
      * progmodes/subword.el (global-subword-mode, global-superword-mode):
      * progmodes/vhdl-mode.el (vhdl-electric-mode, vhdl-stutter-mode):
      * term/vt100.el (vt100-wide-mode): Specify explicit :group.
      
      * term/xterm.el (xterm): Change parent group to terminals.
      
      * master.el (master): Remove empty custom group.
      (master-mode): Remove unused :group argument.
      * textmodes/refill.el (refill): Remove empty custom group.
      (refill-mode): Remove unused :group argument.
      
      * textmodes/rst.el (rst-compile-toolsets): Use rst-compile group.
      
      * cedet/semantic/symref/list.el (semantic-symref-auto-expand-results)
      (semantic-symref-results-mode-hook)
      (semantic-symref-results-summary-function): Fix :group.
      
      * erc/erc-list.el (erc-list):
      * erc/erc-menu.el (erc-menu):
      * erc/erc-ring.el (erc-ring): Define custom groups, for define-erc-module.
      
      * gnus/shr-color.el (shr-color-visible-luminance-min)
      (shr-color-visible-distance-min): Use shr-color group.
      
      * url/url-news.el (url-news): Remove empty custom group.
      ed8be7ff
  32. 14 May, 2013 1 commit
  33. 11 Mar, 2013 2 commits
  34. 10 Mar, 2013 1 commit
  35. 12 Feb, 2013 1 commit
  36. 01 Jan, 2013 1 commit
  37. 17 Sep, 2012 1 commit
    • Chong Yidong's avatar
      Update docstrings and comments to use "init file" terminology. · 865fe16f
      Chong Yidong authored
      * bookmark.el (bookmark-bmenu-toggle-filenames): Doc fixes.
      * comint.el (comint-prompt-read-only):
      * custom.el (defcustom):
      * hi-lock.el (hi-lock-mode):
      * ibuffer.el (ibuffer-formats):
      * ielm.el (ielm-prompt-read-only):
      * novice.el (disable-command):
      * saveplace.el (toggle-save-place):
      * speedbar.el (speedbar-supported-extension-expressions):
      * startup.el (auto-save-list-file-prefix, init-file-user)
      (after-init-hook, inhibit-startup-echo-area-message):
      * strokes.el (strokes-help):
      * time-stamp.el (time-stamp):
      * calendar/calendar.el (calendar, diary-file):
      * calendar/diary-lib.el (diary-mail-entries, diary)
      (diary-list-entries-hook):
      * calendar/holidays.el (holidays, calendar-holidays):
      * calendar/lunar.el (lunar-phases):
      * calendar/solar.el (sunrise-sunset):
      * emulation/edt.el (edt-load-keys):
      * emulation/viper.el (viper-mode):
      * eshell/em-alias.el (eshell-command-aliases-list):
      * eshell/esh-util.el (eshell-convert-numeric-arguments):
      * international/ogonek.el (ogonek-information):
      * net/tramp-cmds.el (tramp-bug):
      * net/quickurl.el (quickurl-reread-hook-postfix):
      * play/decipher.el (decipher-font-lock-keywords):
      * progmodes/cc-styles.el (c-set-style):
      * progmodes/idlw-shell.el (idlwave-shell-prompt-pattern):
      * progmodes/inf-lisp.el (inferior-lisp-prompt):
      * progmodes/octave-mod.el (octave-mode):
      * progmodes/sql.el (sql-mode, sql-interactive-mode, sql-password):
      * progmodes/verilog-mode.el (verilog-read-defines):
      * textmodes/two-column.el (2C-mode): Likewise.
      865fe16f