commit 2bf0b3bf6183c1da9b5dee789c7aa3241ca93441 (HEAD, refs/remotes/origin/master) Author: Michael Albinus Date: Mon May 20 10:14:13 2019 +0200 Fix problems in autorevert-tests * test/lisp/autorevert-tests.el (auto-revert--deftest-remote): Fix typo. (auto-revert-test02-auto-revert-deleted-file): On emba, there are no stopped events. diff --git a/test/lisp/autorevert-tests.el b/test/lisp/autorevert-tests.el index 0cc5b9c4e9..040dbb45a9 100644 --- a/test/lisp/autorevert-tests.el +++ b/test/lisp/autorevert-tests.el @@ -150,7 +150,7 @@ This expects `auto-revert--messages' to be bound by (tramp-dissect-file-name temporary-file-directory) nil 'keep-password) (condition-case err (funcall (ert-test-body ert-test)) - (error (message "%s" err) (signal car err cdr err)))))) + (error (message "%s" err) (signal (car err) (cdr err))))))) (ert-deftest auto-revert-test00-auto-revert-mode () "Check autorevert for a file." @@ -310,8 +310,9 @@ This expects `auto-revert--messages' to be bound by ;; notification should be disabled, falling back to ;; polling. (should (string-match "any text" (buffer-string))) - ;; With w32notify, the 'stopped' events are not sent. + ;; With w32notify, and on emba, the `stopped' events are not sent. (or (eq file-notify--library 'w32notify) + (getenv "EMACS_EMBA_CI") (should-not auto-revert-notify-watch-descriptor)) ;; Once the file has been recreated, the buffer shall be commit bef1be873009d6e9f5a097396179f63a565bb6fd Author: Paul Eggert Date: Sun May 19 21:29:13 2019 -0700 Fixes for "Maintainer:" and related lines Mostly, this just removes "Maintainer: emacs-devel@gnu.org" lines, which are not that useful. It also cleans up and regularizes a few similar lines. diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 92efcf6497..df48764c52 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -21,7 +21,7 @@ # any particular service that uses that protocol. Also, it is intended for # evaluation purposes, thus possibly temporary. -# Maintainer: tzz@lifelogs.com +# Maintainer: Ted Zlatanov # URL: https://emba.gnu.org/emacs/emacs image: debian:stretch diff --git a/admin/authors.el b/admin/authors.el index a3f8bdde84..8329f3f581 100644 --- a/admin/authors.el +++ b/admin/authors.el @@ -1,10 +1,8 @@ - ;;; authors.el --- utility for maintaining Emacs's AUTHORS file ;; Copyright (C) 2000-2019 Free Software Foundation, Inc. ;; Author: Gerd Moellmann -;; Maintainer: emacs-devel@gnu.org ;; Keywords: maint ;; Package: emacs diff --git a/admin/find-gc.el b/admin/find-gc.el index bf93c4eedf..9b925565df 100644 --- a/admin/find-gc.el +++ b/admin/find-gc.el @@ -2,8 +2,6 @@ ;; Copyright (C) 1992, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/admin/last-chance.el b/admin/last-chance.el index 5f993be18e..ceed1c7cfa 100644 --- a/admin/last-chance.el +++ b/admin/last-chance.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2016-2019 Free Software Foundation, Inc. ;; Author: Thien-Thi Nguyen -;; Maintainer: emacs-devel@gnu.org ;; Keywords: maint ;; Package: emacs diff --git a/autogen.sh b/autogen.sh index 40d0c37b11..f390b1a777 100755 --- a/autogen.sh +++ b/autogen.sh @@ -4,7 +4,6 @@ ## Copyright (C) 2011-2019 Free Software Foundation, Inc. ## Author: Glenn Morris -## Maintainer: emacs-devel@gnu.org ## This file is part of GNU Emacs. diff --git a/build-aux/make-info-dir b/build-aux/make-info-dir index 2dcac87b48..51f384aff8 100755 --- a/build-aux/make-info-dir +++ b/build-aux/make-info-dir @@ -5,7 +5,6 @@ ## Copyright (C) 2013-2019 Free Software Foundation, Inc. ## Author: Glenn Morris -## Maintainer: emacs-devel@gnu.org ## This file is part of GNU Emacs. diff --git a/etc/tutorials/TUTORIAL.translators b/etc/tutorials/TUTORIAL.translators index 2747d39d35..b6b9578706 100644 --- a/etc/tutorials/TUTORIAL.translators +++ b/etc/tutorials/TUTORIAL.translators @@ -41,8 +41,8 @@ Maintainer: Alfredo Finelli Italian GNU Translation Group * TUTORIAL.ja: -Author: Kenichi Handa -Maintainer: Kenichi Handa +Author: Kenichi Handa +Maintainer: Kenichi Handa * TUTORIAL.ko: Author: Koaunghi Un @@ -94,4 +94,3 @@ Maintainer: Chao-Hong Liu ;;; Local Variables: ;;; coding: utf-8 ;;; End: - diff --git a/lisp/abbrev.el b/lisp/abbrev.el index 3c88ec661a..be19da525e 100644 --- a/lisp/abbrev.el +++ b/lisp/abbrev.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1987, 1992, 2001-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: abbrev convenience ;; Package: emacs diff --git a/lisp/align.el b/lisp/align.el index 443237b451..aeb845a561 100644 --- a/lisp/align.el +++ b/lisp/align.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1999-2019 Free Software Foundation, Inc. ;; Author: John Wiegley -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience languages lisp ;; This file is part of GNU Emacs. diff --git a/lisp/array.el b/lisp/array.el index 2fffe0197e..28635d18af 100644 --- a/lisp/array.el +++ b/lisp/array.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1987, 2000-2019 Free Software Foundation, Inc. ;; Author: David M. Brown -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions ;; This file is part of GNU Emacs. diff --git a/lisp/autoinsert.el b/lisp/autoinsert.el index f7ecfe27bb..c2ebea7008 100644 --- a/lisp/autoinsert.el +++ b/lisp/autoinsert.el @@ -6,7 +6,6 @@ ;; Author: Charlie Martin ;; Adapted-By: Daniel Pfeiffer ;; Keywords: convenience -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/lisp/bindings.el b/lisp/bindings.el index 744bcc36a8..4f09d583d7 100644 --- a/lisp/bindings.el +++ b/lisp/bindings.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1987, 1992-1996, 1999-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/bs.el b/lisp/bs.el index cd9524a440..c564da251b 100644 --- a/lisp/bs.el +++ b/lisp/bs.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1998-2019 Free Software Foundation, Inc. ;; Author: Olaf Sylvester -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; This file is part of GNU Emacs. diff --git a/lisp/buff-menu.el b/lisp/buff-menu.el index 5f88986636..c8cd25caff 100644 --- a/lisp/buff-menu.el +++ b/lisp/buff-menu.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1987, 1993-1995, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; Package: emacs diff --git a/lisp/case-table.el b/lisp/case-table.el index c27e772b04..7474d63323 100644 --- a/lisp/case-table.el +++ b/lisp/case-table.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1988, 1994, 2001-2019 Free Software Foundation, Inc. ;; Author: Howard Gayle -;; Maintainer: emacs-devel@gnu.org ;; Keywords: i18n ;; Package: emacs diff --git a/lisp/cdl.el b/lisp/cdl.el index 752e59b5d4..36f72ef051 100644 --- a/lisp/cdl.el +++ b/lisp/cdl.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993, 2001-2019 Free Software Foundation, Inc. ;; Author: Ata Etemadi -;; Maintainer: emacs-devel@gnu.org ;; Keywords: data ;; This file is part of GNU Emacs. diff --git a/lisp/cedet/cedet.el b/lisp/cedet/cedet.el index b3d4a5def2..9260cfb47d 100644 --- a/lisp/cedet/cedet.el +++ b/lisp/cedet/cedet.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. ;; Author: David Ponce -;; Maintainer: Eric M. Ludlam +;; Maintainer: Eric M. Ludlam ;; Version: 2.0 ;; Keywords: OO, lisp diff --git a/lisp/cedet/semantic/imenu.el b/lisp/cedet/semantic/imenu.el index 0fb9eca753..15ab50c72a 100644 --- a/lisp/cedet/semantic/imenu.el +++ b/lisp/cedet/semantic/imenu.el @@ -4,7 +4,7 @@ ;; Foundation, Inc. ;; Author: Eric M. Ludlam -;; Maintainer: Eric Ludlam +;; Maintainer: Eric M. Ludlam ;; This file is part of GNU Emacs. diff --git a/lisp/cedet/semantic/senator.el b/lisp/cedet/semantic/senator.el index 2462662bbd..79bb4b20ee 100644 --- a/lisp/cedet/semantic/senator.el +++ b/lisp/cedet/semantic/senator.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2000-2019 Free Software Foundation, Inc. ;; Author: David Ponce -;; Maintainer: emacs-devel@gnu.org ;; Created: 10 Nov 2000 ;; Keywords: syntax diff --git a/lisp/cedet/semantic/wisent/python.el b/lisp/cedet/semantic/wisent/python.el index c530329bae..c5849ffc97 100644 --- a/lisp/cedet/semantic/wisent/python.el +++ b/lisp/cedet/semantic/wisent/python.el @@ -2,8 +2,8 @@ ;; Copyright (C) 2002, 2004, 2006-2019 Free Software Foundation, Inc. -;; Author: Richard Kim -;; Maintainer: Richard Kim +;; Author: Richard Kim +;; Maintainer: Richard Kim ;; Created: June 2002 ;; Keywords: syntax diff --git a/lisp/char-fold.el b/lisp/char-fold.el index e61bc3edc6..426b1a9f84 100644 --- a/lisp/char-fold.el +++ b/lisp/char-fold.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2015-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: matching ;; This file is part of GNU Emacs. diff --git a/lisp/chistory.el b/lisp/chistory.el index 59bdc00c67..9c29bb7c43 100644 --- a/lisp/chistory.el +++ b/lisp/chistory.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. ;; Author: K. Shane Hartman -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; This file is part of GNU Emacs. diff --git a/lisp/cmuscheme.el b/lisp/cmuscheme.el index ed6f1bfb1a..f949a8c109 100644 --- a/lisp/cmuscheme.el +++ b/lisp/cmuscheme.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Olin Shivers -;; Maintainer: emacs-devel@gnu.org ;; Keywords: processes, lisp ;; This file is part of GNU Emacs. diff --git a/lisp/comint.el b/lisp/comint.el index d21cc1378f..3939371ab8 100644 --- a/lisp/comint.el +++ b/lisp/comint.el @@ -4,7 +4,6 @@ ;; Author: Olin Shivers ;; Simon Marshall -;; Maintainer: emacs-devel@gnu.org ;; Keywords: processes ;; Package: emacs diff --git a/lisp/completion.el b/lisp/completion.el index 89285c74d4..ff392dd821 100644 --- a/lisp/completion.el +++ b/lisp/completion.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1990, 1993, 1995, 1997, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: abbrev convenience ;; Author: Jim Salem of Thinking Machines Inc. ;; (ideas suggested by Brewster Kahle) diff --git a/lisp/composite.el b/lisp/composite.el index d2df3d1e92..87f563030b 100644 --- a/lisp/composite.el +++ b/lisp/composite.el @@ -7,7 +7,7 @@ ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H14PRO021 -;; Author: Kenichi HANDA +;; Author: Kenichi Handa ;; (according to ack.texi) ;; Keywords: mule, multilingual, character composition ;; Package: emacs diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index 6d47e607ae..e65f19dd2e 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1996-1997, 1999-2019 Free Software Foundation, Inc. ;; ;; Author: Per Abrahamsen -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, faces ;; Package: emacs diff --git a/lisp/cus-theme.el b/lisp/cus-theme.el index bc9d1d4f7d..9846aa8d99 100644 --- a/lisp/cus-theme.el +++ b/lisp/cus-theme.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2001-2019 Free Software Foundation, Inc. ;; ;; Author: Alex Schroeder -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, faces ;; Package: emacs diff --git a/lisp/custom.el b/lisp/custom.el index 29bf9e570a..e2bf8718b6 100644 --- a/lisp/custom.el +++ b/lisp/custom.el @@ -4,7 +4,6 @@ ;; Inc. ;; ;; Author: Per Abrahamsen -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, faces ;; Package: emacs diff --git a/lisp/dabbrev.el b/lisp/dabbrev.el index 2159f96028..f1fae18e74 100644 --- a/lisp/dabbrev.el +++ b/lisp/dabbrev.el @@ -6,7 +6,6 @@ ;; Author: Don Morrison ;; Lars Lindberg ;; (according to ack.texi) -;; Maintainer: emacs-devel@gnu.org ;; Created: 16 Mars 1992 ;; Lindberg's last update version: 5.7 ;; Keywords: abbrev expand completion convenience diff --git a/lisp/delsel.el b/lisp/delsel.el index 8f71bc6519..a815b91c01 100644 --- a/lisp/delsel.el +++ b/lisp/delsel.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Matthieu Devin -;; Maintainer: emacs-devel@gnu.org ;; Created: 14 Jul 92 ;; Keywords: convenience emulations diff --git a/lisp/descr-text.el b/lisp/descr-text.el index 8be2b94458..2976b788f0 100644 --- a/lisp/descr-text.el +++ b/lisp/descr-text.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1994-1996, 2001-2019 Free Software Foundation, Inc. ;; Author: Boris Goldowsky -;; Maintainer: emacs-devel@gnu.org ;; Keywords: faces, i18n, Unicode, multilingual ;; This file is part of GNU Emacs. diff --git a/lisp/dired-aux.el b/lisp/dired-aux.el index aae521287e..305cfd4f32 100644 --- a/lisp/dired-aux.el +++ b/lisp/dired-aux.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Sebastian Kremer . -;; Maintainer: emacs-devel@gnu.org ;; Keywords: files ;; Package: emacs diff --git a/lisp/dired.el b/lisp/dired.el index ea1943de1d..f137d4a5be 100644 --- a/lisp/dired.el +++ b/lisp/dired.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Sebastian Kremer -;; Maintainer: emacs-devel@gnu.org ;; Keywords: files ;; Package: emacs diff --git a/lisp/disp-table.el b/lisp/disp-table.el index 4a59750677..f1676bbfa3 100644 --- a/lisp/disp-table.el +++ b/lisp/disp-table.el @@ -5,7 +5,6 @@ ;; Author: Erik Naggum ;; Based on a previous version by Howard Gayle -;; Maintainer: emacs-devel@gnu.org ;; Keywords: i18n ;; Package: emacs diff --git a/lisp/display-fill-column-indicator.el b/lisp/display-fill-column-indicator.el index 6d5f5a9f89..ec89adea21 100644 --- a/lisp/display-fill-column-indicator.el +++ b/lisp/display-fill-column-indicator.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; This file is part of GNU Emacs. diff --git a/lisp/display-line-numbers.el b/lisp/display-line-numbers.el index d38f2e6963..ac01112215 100644 --- a/lisp/display-line-numbers.el +++ b/lisp/display-line-numbers.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2017-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; This file is part of GNU Emacs. diff --git a/lisp/dnd.el b/lisp/dnd.el index 459a7238dc..82bb7c9ef8 100644 --- a/lisp/dnd.el +++ b/lisp/dnd.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2005-2019 Free Software Foundation, Inc. ;; Author: Jan Djärv -;; Maintainer: emacs-devel@gnu.org ;; Keywords: window, drag, drop ;; Package: emacs diff --git a/lisp/dos-fns.el b/lisp/dos-fns.el index c575dd413f..bffd54006d 100644 --- a/lisp/dos-fns.el +++ b/lisp/dos-fns.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1991, 1993, 1995-1996, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/dos-vars.el b/lisp/dos-vars.el index 53de20b853..0bf10133c2 100644 --- a/lisp/dos-vars.el +++ b/lisp/dos-vars.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1998, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/dynamic-setting.el b/lisp/dynamic-setting.el index cf1a8d3b73..ea530f991a 100644 --- a/lisp/dynamic-setting.el +++ b/lisp/dynamic-setting.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2009-2019 Free Software Foundation, Inc. ;; Author: Jan Djärv -;; Maintainer: emacs-devel@gnu.org ;; Keywords: font, system-font, tool-bar-style ;; Package: emacs diff --git a/lisp/ebuff-menu.el b/lisp/ebuff-menu.el index 6543e5f197..ddfad25a38 100644 --- a/lisp/ebuff-menu.el +++ b/lisp/ebuff-menu.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Richard Mlynarik -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; This file is part of GNU Emacs. diff --git a/lisp/echistory.el b/lisp/echistory.el index e932daf2f0..8006d7bcd9 100644 --- a/lisp/echistory.el +++ b/lisp/echistory.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. ;; Author: K. Shane Hartman -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/lisp/ehelp.el b/lisp/ehelp.el index 2a24c9857c..8fc8e1f15a 100644 --- a/lisp/ehelp.el +++ b/lisp/ehelp.el @@ -4,7 +4,6 @@ ;; Author: Richard Mlynarik ;; (according to ack.texi and authors.el) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, extensions ;; This file is part of GNU Emacs. diff --git a/lisp/electric.el b/lisp/electric.el index 07da2f1d9e..1f4c132f92 100644 --- a/lisp/electric.el +++ b/lisp/electric.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: K. Shane Hartman -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/advice.el b/lisp/emacs-lisp/advice.el index 2034f33d0e..dfd6d2e5b8 100644 --- a/lisp/emacs-lisp/advice.el +++ b/lisp/emacs-lisp/advice.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1994, 2000-2019 Free Software Foundation, Inc. ;; Author: Hans Chalupsky -;; Maintainer: emacs-devel@gnu.org ;; Created: 12 Dec 1992 ;; Keywords: extensions, lisp, tools ;; Package: emacs diff --git a/lisp/emacs-lisp/avl-tree.el b/lisp/emacs-lisp/avl-tree.el index d2a3a131d1..a1739562f6 100644 --- a/lisp/emacs-lisp/avl-tree.el +++ b/lisp/emacs-lisp/avl-tree.el @@ -6,7 +6,6 @@ ;; Inge Wallin ;; Thomas Bellman ;; Toby Cubitt -;; Maintainer: emacs-devel@gnu.org ;; Created: 10 May 1991 ;; Keywords: extensions, data structures, AVL, tree diff --git a/lisp/emacs-lisp/backquote.el b/lisp/emacs-lisp/backquote.el index 5e72dc3b40..344a0ba8f6 100644 --- a/lisp/emacs-lisp/backquote.el +++ b/lisp/emacs-lisp/backquote.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Rick Sladkey -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions, internal ;; Package: emacs diff --git a/lisp/emacs-lisp/byte-opt.el b/lisp/emacs-lisp/byte-opt.el index 44cca6136c..02a9749f47 100644 --- a/lisp/emacs-lisp/byte-opt.el +++ b/lisp/emacs-lisp/byte-opt.el @@ -4,7 +4,6 @@ ;; Author: Jamie Zawinski ;; Hallvard Furuseth -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/emacs-lisp/byte-run.el b/lisp/emacs-lisp/byte-run.el index 842d1d48b4..811b485dc6 100644 --- a/lisp/emacs-lisp/byte-run.el +++ b/lisp/emacs-lisp/byte-run.el @@ -4,7 +4,6 @@ ;; Author: Jamie Zawinski ;; Hallvard Furuseth -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index e76baf5ed0..95e287c806 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -5,7 +5,6 @@ ;; Author: Jamie Zawinski ;; Hallvard Furuseth -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp ;; Package: emacs diff --git a/lisp/emacs-lisp/cconv.el b/lisp/emacs-lisp/cconv.el index 58ca9d5f57..21af4b6e63 100644 --- a/lisp/emacs-lisp/cconv.el +++ b/lisp/emacs-lisp/cconv.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2011-2019 Free Software Foundation, Inc. ;; Author: Igor Kuzmin -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp ;; Package: emacs diff --git a/lisp/emacs-lisp/cl-indent.el b/lisp/emacs-lisp/cl-indent.el index 10af440008..ea6efbf851 100644 --- a/lisp/emacs-lisp/cl-indent.el +++ b/lisp/emacs-lisp/cl-indent.el @@ -4,7 +4,6 @@ ;; Author: Richard Mlynarik ;; Created: July 1987 -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp, tools ;; Package: emacs diff --git a/lisp/emacs-lisp/debug.el b/lisp/emacs-lisp/debug.el index 8989aa0719..259f240d29 100644 --- a/lisp/emacs-lisp/debug.el +++ b/lisp/emacs-lisp/debug.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1994, 2001-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp, tools, maint ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/derived.el b/lisp/emacs-lisp/derived.el index 6db0584b98..9f7beeaef5 100644 --- a/lisp/emacs-lisp/derived.el +++ b/lisp/emacs-lisp/derived.el @@ -5,7 +5,6 @@ ;; Inc. ;; Author: David Megginson (dmeggins@aix1.uottawa.ca) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions ;; Package: emacs diff --git a/lisp/emacs-lisp/disass.el b/lisp/emacs-lisp/disass.el index 3fc22247fa..ed3c1fbaa9 100644 --- a/lisp/emacs-lisp/disass.el +++ b/lisp/emacs-lisp/disass.el @@ -4,7 +4,6 @@ ;; Author: Doug Cutting ;; Jamie Zawinski -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/edebug.el b/lisp/emacs-lisp/edebug.el index ab5553b4e8..b8da76ccf0 100644 --- a/lisp/emacs-lisp/edebug.el +++ b/lisp/emacs-lisp/edebug.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Daniel LaLiberte -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp, tools, maint ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/eldoc.el b/lisp/emacs-lisp/eldoc.el index 188d99e14c..23f303bc28 100644 --- a/lisp/emacs-lisp/eldoc.el +++ b/lisp/emacs-lisp/eldoc.el @@ -3,7 +3,7 @@ ;; Copyright (C) 1996-2019 Free Software Foundation, Inc. ;; Author: Noah Friedman -;; Maintainer: friedman@splode.com +;; Maintainer: Noah Friedman ;; Keywords: extensions ;; Created: 1995-10-06 diff --git a/lisp/emacs-lisp/elp.el b/lisp/emacs-lisp/elp.el index f0dcb51af8..1f8d31a3fc 100644 --- a/lisp/emacs-lisp/elp.el +++ b/lisp/emacs-lisp/elp.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Barry A. Warsaw -;; Maintainer: emacs-devel@gnu.org ;; Created: 26-Feb-1994 ;; Keywords: debugging lisp tools diff --git a/lisp/emacs-lisp/ewoc.el b/lisp/emacs-lisp/ewoc.el index c33b46501f..597afdd66f 100644 --- a/lisp/emacs-lisp/ewoc.el +++ b/lisp/emacs-lisp/ewoc.el @@ -4,7 +4,7 @@ ;; Author: Per Cederqvist ;; Inge Wallin -;; Maintainer: monnier@gnu.org +;; Maintainer: Stefan Monnier ;; Created: 3 Aug 1992 ;; Keywords: extensions, lisp diff --git a/lisp/emacs-lisp/float-sup.el b/lisp/emacs-lisp/float-sup.el index 54c8afe62b..6ee378e852 100644 --- a/lisp/emacs-lisp/float-sup.el +++ b/lisp/emacs-lisp/float-sup.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985-1987, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/emacs-lisp/helper.el b/lisp/emacs-lisp/helper.el index d1bd46fb58..4a84cfa3e2 100644 --- a/lisp/emacs-lisp/helper.el +++ b/lisp/emacs-lisp/helper.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. ;; Author: K. Shane Hartman -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help ;; Package: emacs diff --git a/lisp/emacs-lisp/lisp-mnt.el b/lisp/emacs-lisp/lisp-mnt.el index 91c76158a3..81adbd5d4f 100644 --- a/lisp/emacs-lisp/lisp-mnt.el +++ b/lisp/emacs-lisp/lisp-mnt.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Eric S. Raymond -;; Maintainer: emacs-devel@gnu.org ;; Created: 14 Jul 1992 ;; Keywords: docs ;; X-Bogus-Bureaucratic-Cruft: Gruad will get you if you don't watch out! diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index fa6dc98d04..021708c588 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985-1986, 1999-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp, languages ;; Package: emacs diff --git a/lisp/emacs-lisp/lisp.el b/lisp/emacs-lisp/lisp.el index 38df920f17..f653f6c109 100644 --- a/lisp/emacs-lisp/lisp.el +++ b/lisp/emacs-lisp/lisp.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1994, 2000-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp, languages ;; Package: emacs diff --git a/lisp/emacs-lisp/map-ynp.el b/lisp/emacs-lisp/map-ynp.el index a688330b74..e8337a99c8 100644 --- a/lisp/emacs-lisp/map-ynp.el +++ b/lisp/emacs-lisp/map-ynp.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1991-1995, 2000-2019 Free Software Foundation, Inc. ;; Author: Roland McGrath -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp, extensions ;; Package: emacs diff --git a/lisp/emacs-lisp/map.el b/lisp/emacs-lisp/map.el index 54e802edf4..774df3f84e 100644 --- a/lisp/emacs-lisp/map.el +++ b/lisp/emacs-lisp/map.el @@ -8,8 +8,6 @@ ;; Package-Requires: ((emacs "25")) ;; Package: map -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/emacs-lisp/regexp-opt.el b/lisp/emacs-lisp/regexp-opt.el index 00f72e284a..2753bbd548 100644 --- a/lisp/emacs-lisp/regexp-opt.el +++ b/lisp/emacs-lisp/regexp-opt.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1994-2019 Free Software Foundation, Inc. ;; Author: Simon Marshall -;; Maintainer: emacs-devel@gnu.org ;; Keywords: strings, regexps, extensions ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/ring.el b/lisp/emacs-lisp/ring.el index c7d0268a77..91c043fb3f 100644 --- a/lisp/emacs-lisp/ring.el +++ b/lisp/emacs-lisp/ring.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1992, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/rmc.el b/lisp/emacs-lisp/rmc.el index 6d1adae974..4c90f47c91 100644 --- a/lisp/emacs-lisp/rmc.el +++ b/lisp/emacs-lisp/rmc.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2016-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/emacs-lisp/rx.el b/lisp/emacs-lisp/rx.el index fdd24317c6..9d9028d87d 100644 --- a/lisp/emacs-lisp/rx.el +++ b/lisp/emacs-lisp/rx.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2001-2019 Free Software Foundation, Inc. ;; Author: Gerd Moellmann -;; Maintainer: emacs-devel@gnu.org ;; Keywords: strings, regexps, extensions ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/seq.el b/lisp/emacs-lisp/seq.el index 3413cd1513..8997b7501b 100644 --- a/lisp/emacs-lisp/seq.el +++ b/lisp/emacs-lisp/seq.el @@ -7,8 +7,6 @@ ;; Version: 2.21 ;; Package: seq -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/emacs-lisp/subr-x.el b/lisp/emacs-lisp/subr-x.el index b9ffe6a6fc..33445835ae 100644 --- a/lisp/emacs-lisp/subr-x.el +++ b/lisp/emacs-lisp/subr-x.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2013-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; Package: emacs diff --git a/lisp/emacs-lisp/syntax.el b/lisp/emacs-lisp/syntax.el index f1904e64ef..f488bed3b0 100644 --- a/lisp/emacs-lisp/syntax.el +++ b/lisp/emacs-lisp/syntax.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2000-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/tcover-ses.el b/lisp/emacs-lisp/tcover-ses.el index 29b481849e..8d2f8217c6 100644 --- a/lisp/emacs-lisp/tcover-ses.el +++ b/lisp/emacs-lisp/tcover-ses.el @@ -2,8 +2,8 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. -;; Author: Jonathan Yavner -;; Maintainer: Jonathan Yavner +;; Author: Jonathan Yavner +;; Maintainer: Jonathan Yavner ;; Keywords: spreadsheet lisp utility ;; Package: testcover diff --git a/lisp/emacs-lisp/tcover-unsafep.el b/lisp/emacs-lisp/tcover-unsafep.el index 571f53c795..daae3ad43b 100644 --- a/lisp/emacs-lisp/tcover-unsafep.el +++ b/lisp/emacs-lisp/tcover-unsafep.el @@ -2,8 +2,8 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. -;; Author: Jonathan Yavner -;; Maintainer: Jonathan Yavner +;; Author: Jonathan Yavner +;; Maintainer: Jonathan Yavner ;; Keywords: safety lisp utility ;; Package: testcover diff --git a/lisp/emacs-lisp/thunk.el b/lisp/emacs-lisp/thunk.el index e1370c4591..968dc71f67 100644 --- a/lisp/emacs-lisp/thunk.el +++ b/lisp/emacs-lisp/thunk.el @@ -7,8 +7,6 @@ ;; Version: 1.0 ;; Package: thunk -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/emacs-lisp/timer-list.el b/lisp/emacs-lisp/timer-list.el index 55aa56b72e..3a791c2af4 100644 --- a/lisp/emacs-lisp/timer-list.el +++ b/lisp/emacs-lisp/timer-list.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2016-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Package: emacs ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/timer.el b/lisp/emacs-lisp/timer.el index 22ccc35103..668da42a6e 100644 --- a/lisp/emacs-lisp/timer.el +++ b/lisp/emacs-lisp/timer.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1996, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Package: emacs ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lisp/tq.el b/lisp/emacs-lisp/tq.el index 4249305fee..ca2d2a23c7 100644 --- a/lisp/emacs-lisp/tq.el +++ b/lisp/emacs-lisp/tq.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Scott Draves -;; Maintainer: emacs-devel@gnu.org ;; Adapted-By: ESR ;; Keywords: extensions diff --git a/lisp/emacs-lisp/trace.el b/lisp/emacs-lisp/trace.el index 2f271c1f70..0a8351195f 100644 --- a/lisp/emacs-lisp/trace.el +++ b/lisp/emacs-lisp/trace.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993, 1998, 2000-2019 Free Software Foundation, Inc. ;; Author: Hans Chalupsky -;; Maintainer: emacs-devel@gnu.org ;; Created: 15 Dec 1992 ;; Keywords: tools, lisp diff --git a/lisp/emacs-lisp/warnings.el b/lisp/emacs-lisp/warnings.el index 13ca605dd0..70d6b077eb 100644 --- a/lisp/emacs-lisp/warnings.el +++ b/lisp/emacs-lisp/warnings.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; This file is part of GNU Emacs. diff --git a/lisp/emacs-lock.el b/lisp/emacs-lock.el index 0cded29193..05b4c010f6 100644 --- a/lisp/emacs-lock.el +++ b/lisp/emacs-lock.el @@ -4,7 +4,6 @@ ;; Author: Juanma Barranquero ;; Inspired by emacs-lock.el by Tom Wurgler -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions, processes ;; This file is part of GNU Emacs. diff --git a/lisp/env.el b/lisp/env.el index 5a4130eb3b..30b63a8e55 100644 --- a/lisp/env.el +++ b/lisp/env.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1991, 1994, 2000-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: processes, unix ;; Package: emacs diff --git a/lisp/erc/erc-autoaway.el b/lisp/erc/erc-autoaway.el index 9e224e0b82..298cffb49a 100644 --- a/lisp/erc/erc-autoaway.el +++ b/lisp/erc/erc-autoaway.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Jorgen Schaefer -;; Maintainer: emacs-devel@gnu.org ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcAutoAway ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-backend.el b/lisp/erc/erc-backend.el index 210830a2b4..eb441c29b4 100644 --- a/lisp/erc/erc-backend.el +++ b/lisp/erc/erc-backend.el @@ -4,7 +4,6 @@ ;; Filename: erc-backend.el ;; Author: Lawrence Mitchell -;; Maintainer: emacs-devel@gnu.org ;; Created: 2004-05-7 ;; Keywords: IRC chat client internet diff --git a/lisp/erc/erc-button.el b/lisp/erc/erc-button.el index c8aa887a65..8e2a6b980d 100644 --- a/lisp/erc/erc-button.el +++ b/lisp/erc/erc-button.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1996-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: irc, button, url, regexp ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcButton diff --git a/lisp/erc/erc-capab.el b/lisp/erc/erc-capab.el index 210a7736cc..3d99c259aa 100644 --- a/lisp/erc/erc-capab.el +++ b/lisp/erc/erc-capab.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2006-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/erc/erc-compat.el b/lisp/erc/erc-compat.el index e724e367ab..3b362774b6 100644 --- a/lisp/erc/erc-compat.el +++ b/lisp/erc/erc-compat.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2003, 2005-2019 Free Software Foundation, Inc. ;; Author: Alex Schroeder -;; Maintainer: emacs-devel@gnu.org ;; URL: http://www.emacswiki.org/cgi-bin/wiki/ERC ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-dcc.el b/lisp/erc/erc-dcc.el index a6b7532e1f..b835191960 100644 --- a/lisp/erc/erc-dcc.el +++ b/lisp/erc/erc-dcc.el @@ -6,7 +6,6 @@ ;; Author: Ben A. Mesander ;; Noah Friedman ;; Per Persson -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, processes ;; Created: 1994-01-23 diff --git a/lisp/erc/erc-ezbounce.el b/lisp/erc/erc-ezbounce.el index a2c9336826..5784e63d7f 100644 --- a/lisp/erc/erc-ezbounce.el +++ b/lisp/erc/erc-ezbounce.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002, 2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Andreas Fuchs -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-fill.el b/lisp/erc/erc-fill.el index 934b52a938..ef876f464e 100644 --- a/lisp/erc/erc-fill.el +++ b/lisp/erc/erc-fill.el @@ -4,7 +4,6 @@ ;; Author: Andreas Fuchs ;; Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcFilling ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-goodies.el b/lisp/erc/erc-goodies.el index 884c594b9e..0d16aaf541 100644 --- a/lisp/erc/erc-goodies.el +++ b/lisp/erc/erc-goodies.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2001-2019 Free Software Foundation, Inc. ;; Author: Jorgen Schaefer -;; Maintainer: emacs-devel@gnu.org ;; Most code is taken verbatim from erc.el, see there for the original ;; authors. diff --git a/lisp/erc/erc-ibuffer.el b/lisp/erc/erc-ibuffer.el index 149c858d2e..ce0104b305 100644 --- a/lisp/erc/erc-ibuffer.el +++ b/lisp/erc/erc-ibuffer.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002, 2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcIbuffer diff --git a/lisp/erc/erc-identd.el b/lisp/erc/erc-identd.el index d95e0eac0c..96b45899b4 100644 --- a/lisp/erc/erc-identd.el +++ b/lisp/erc/erc-identd.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2003, 2006-2019 Free Software Foundation, Inc. ;; Author: John Wiegley -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, processes ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-imenu.el b/lisp/erc/erc-imenu.el index 08f52f1364..e40dc1fc25 100644 --- a/lisp/erc/erc-imenu.el +++ b/lisp/erc/erc-imenu.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcImenu diff --git a/lisp/erc/erc-join.el b/lisp/erc/erc-join.el index 896521eaf0..18cc8b5425 100644 --- a/lisp/erc/erc-join.el +++ b/lisp/erc/erc-join.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Alex Schroeder -;; Maintainer: emacs-devel@gnu.org ;; Keywords: irc ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcAutoJoin diff --git a/lisp/erc/erc-lang.el b/lisp/erc/erc-lang.el index f0dbe69f79..765898da7b 100644 --- a/lisp/erc/erc-lang.el +++ b/lisp/erc/erc-lang.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002, 2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Alex Schroeder -;; Maintainer: emacs-devel@gnu.org ;; Old-Version: 1.0.0 ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcLang ;; Keywords: comm languages processes diff --git a/lisp/erc/erc-list.el b/lisp/erc/erc-list.el index d8d9e17c95..6a2ba785ba 100644 --- a/lisp/erc/erc-list.el +++ b/lisp/erc/erc-list.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2008-2019 Free Software Foundation, Inc. ;; Author: Tom Tromey -;; Maintainer: emacs-devel@gnu.org ;; Old-Version: 0.1 ;; Keywords: comm diff --git a/lisp/erc/erc-log.el b/lisp/erc/erc-log.el index 4153f5c57b..fc12dc73ef 100644 --- a/lisp/erc/erc-log.el +++ b/lisp/erc/erc-log.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2003-2019 Free Software Foundation, Inc. ;; Author: Lawrence Mitchell -;; Maintainer: emacs-devel@gnu.org ;; Keywords: IRC, chat, client, Internet, logging ;; Created 2003-04-26 diff --git a/lisp/erc/erc-match.el b/lisp/erc/erc-match.el index cc4b4a88f1..98ddebd0cf 100644 --- a/lisp/erc/erc-match.el +++ b/lisp/erc/erc-match.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. ;; Author: Andreas Fuchs -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, faces ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcMatch diff --git a/lisp/erc/erc-menu.el b/lisp/erc/erc-menu.el index 8173829797..e13404ca13 100644 --- a/lisp/erc/erc-menu.el +++ b/lisp/erc/erc-menu.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2001-2002, 2004-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, processes, menu ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-netsplit.el b/lisp/erc/erc-netsplit.el index 87c3a61b66..252af715d7 100644 --- a/lisp/erc/erc-netsplit.el +++ b/lisp/erc/erc-netsplit.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-networks.el b/lisp/erc/erc-networks.el index eca8ad6a89..e92da7b725 100644 --- a/lisp/erc/erc-networks.el +++ b/lisp/erc/erc-networks.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002, 2004-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-notify.el b/lisp/erc/erc-notify.el index 45dae89990..9bd062a98d 100644 --- a/lisp/erc/erc-notify.el +++ b/lisp/erc/erc-notify.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-page.el b/lisp/erc/erc-page.el index cb57883ae6..4e7fed7b40 100644 --- a/lisp/erc/erc-page.el +++ b/lisp/erc/erc-page.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2002, 2004, 2006-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/erc/erc-pcomplete.el b/lisp/erc/erc-pcomplete.el index dd2da85d0e..e2489a8d0e 100644 --- a/lisp/erc/erc-pcomplete.el +++ b/lisp/erc/erc-pcomplete.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Sacha Chua -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, convenience ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcCompletion diff --git a/lisp/erc/erc-replace.el b/lisp/erc/erc-replace.el index 2e0e54a030..e1c495c903 100644 --- a/lisp/erc/erc-replace.el +++ b/lisp/erc/erc-replace.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Andreas Fuchs -;; Maintainer: emacs-devel@gnu.org ;; Keywords: IRC, client, Internet ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-ring.el b/lisp/erc/erc-ring.el index 5459d8b01e..54f91d134c 100644 --- a/lisp/erc/erc-ring.el +++ b/lisp/erc/erc-ring.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2001-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Alex Schroeder -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcHistory diff --git a/lisp/erc/erc-services.el b/lisp/erc/erc-services.el index 886ba60eb4..f500f4c127 100644 --- a/lisp/erc/erc-services.el +++ b/lisp/erc/erc-services.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2002-2004, 2006-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/erc/erc-sound.el b/lisp/erc/erc-sound.el index 34f7ce62c7..38e0b2885b 100644 --- a/lisp/erc/erc-sound.el +++ b/lisp/erc/erc-sound.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2002-2003, 2006-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/erc/erc-speedbar.el b/lisp/erc/erc-speedbar.el index 0a1e38fe24..833ad2f1e7 100644 --- a/lisp/erc/erc-speedbar.el +++ b/lisp/erc/erc-speedbar.el @@ -4,7 +4,6 @@ ;; Author: Mario Lang ;; Contributor: Eric M. Ludlam -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-spelling.el b/lisp/erc/erc-spelling.el index 69a83fa032..8df7ea9e4c 100644 --- a/lisp/erc/erc-spelling.el +++ b/lisp/erc/erc-spelling.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2005-2019 Free Software Foundation, Inc. ;; Author: Jorgen Schaefer -;; Maintainer: emacs-devel@gnu.org ;; Keywords: irc ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcSpelling diff --git a/lisp/erc/erc-stamp.el b/lisp/erc/erc-stamp.el index 860fdbb77c..541c67a74f 100644 --- a/lisp/erc/erc-stamp.el +++ b/lisp/erc/erc-stamp.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, processes, timestamp ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcStamp diff --git a/lisp/erc/erc-track.el b/lisp/erc/erc-track.el index e51e6056fb..14e86c199a 100644 --- a/lisp/erc/erc-track.el +++ b/lisp/erc/erc-track.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, faces ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcChannelTracking diff --git a/lisp/erc/erc-truncate.el b/lisp/erc/erc-truncate.el index 0417429552..73c7316b34 100644 --- a/lisp/erc/erc-truncate.el +++ b/lisp/erc/erc-truncate.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2003-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Andreas Fuchs -;; Maintainer: emacs-devel@gnu.org ;; Keywords: IRC, chat, client, Internet, logging ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc-xdcc.el b/lisp/erc/erc-xdcc.el index 162b22e15c..20a91b7a30 100644 --- a/lisp/erc/erc-xdcc.el +++ b/lisp/erc/erc-xdcc.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2003-2004, 2006-2019 Free Software Foundation, Inc. ;; Author: Mario Lang -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, processes ;; This file is part of GNU Emacs. diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index d1fa5c7f12..fc0f6128f6 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el @@ -10,7 +10,6 @@ ;; Gergely Nagy (algernon@midgard.debian.net) ;; David Edmondson (dme@dme.org) ;; Kelvin White (kwhite@gnu.org) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: IRC, chat, client, Internet ;; Version: 5.3 diff --git a/lisp/expand.el b/lisp/expand.el index 0c4d343090..7eaf7fdab0 100644 --- a/lisp/expand.el +++ b/lisp/expand.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1995-1996, 2001-2019 Free Software Foundation, Inc. ;; Author: Frederic Lepied -;; Maintainer: emacs-devel@gnu.org ;; Keywords: abbrev ;; This file is part of GNU Emacs. diff --git a/lisp/faces.el b/lisp/faces.el index 89b598669c..137ce99d5e 100644 --- a/lisp/faces.el +++ b/lisp/faces.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1992-1996, 1998-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/ffap.el b/lisp/ffap.el index 08f7208945..4e91a7affa 100644 --- a/lisp/ffap.el +++ b/lisp/ffap.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1995-1997, 2000-2019 Free Software Foundation, Inc. ;; Author: Michelangelo Grigni -;; Maintainer: emacs-devel@gnu.org ;; Created: 29 Mar 1993 ;; Keywords: files, hypermedia, matching, mouse, convenience diff --git a/lisp/files-x.el b/lisp/files-x.el index b71e9204f3..0d156db0e6 100644 --- a/lisp/files-x.el +++ b/lisp/files-x.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2009-2019 Free Software Foundation, Inc. ;; Author: Juri Linkov -;; Maintainer: emacs-devel@gnu.org ;; Keywords: files ;; Package: emacs diff --git a/lisp/files.el b/lisp/files.el index 1dec0ed7ca..21fa6143e3 100644 --- a/lisp/files.el +++ b/lisp/files.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985-1987, 1992-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Package: emacs ;; This file is part of GNU Emacs. diff --git a/lisp/filesets.el b/lisp/filesets.el index b74b4a8a40..05c30dedf4 100644 --- a/lisp/filesets.el +++ b/lisp/filesets.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. ;; Author: Thomas Link -;; Maintainer: emacs-devel@gnu.org ;; Keywords: filesets convenience ;; This file is part of GNU Emacs. diff --git a/lisp/find-dired.el b/lisp/find-dired.el index ef137be9bb..578f765362 100644 --- a/lisp/find-dired.el +++ b/lisp/find-dired.el @@ -5,7 +5,6 @@ ;; Author: Roland McGrath , ;; Sebastian Kremer -;; Maintainer: emacs-devel@gnu.org ;; Keywords: unix ;; This file is part of GNU Emacs. diff --git a/lisp/find-file.el b/lisp/find-file.el index 87314086a4..f93d2a02d7 100644 --- a/lisp/find-file.el +++ b/lisp/find-file.el @@ -1,7 +1,6 @@ ;;; find-file.el --- find a file corresponding to this one given a pattern ;; Author: Henry Guillaume -;; Maintainer: emacs-devel@gnu.org ;; Keywords: c, matching, tools ;; Copyright (C) 1994-1995, 2001-2019 Free Software Foundation, Inc. diff --git a/lisp/flow-ctrl.el b/lisp/flow-ctrl.el index e92b6b4df2..0b95efaf04 100644 --- a/lisp/flow-ctrl.el +++ b/lisp/flow-ctrl.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Kevin Gallagher -;; Maintainer: emacs-devel@gnu.org ;; Adapted-By: ESR ;; Keywords: hardware diff --git a/lisp/foldout.el b/lisp/foldout.el index 3ef88fe686..2eae65a792 100644 --- a/lisp/foldout.el +++ b/lisp/foldout.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1994, 2001-2019 Free Software Foundation, Inc. ;; Author: Kevin Broadey -;; Maintainer: emacs-devel@gnu.org ;; Created: 27 Jan 1994 ;; Version: 1.10 ;; Keywords: folding, outlines diff --git a/lisp/follow.el b/lisp/follow.el index acc2b26c55..47e7aa4cd5 100644 --- a/lisp/follow.el +++ b/lisp/follow.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Anders Lindgren -;; Maintainer: emacs-devel@gnu.org ;; Created: 1995-05-25 ;; Keywords: display, window, minor-mode, convenience diff --git a/lisp/font-core.el b/lisp/font-core.el index 6b26f0cb92..da6c91bca5 100644 --- a/lisp/font-core.el +++ b/lisp/font-core.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1992-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages, faces ;; Package: emacs diff --git a/lisp/font-lock.el b/lisp/font-lock.el index 3991a4ee8e..b0e4598bac 100644 --- a/lisp/font-lock.el +++ b/lisp/font-lock.el @@ -5,7 +5,6 @@ ;; Author: Jamie Zawinski ;; Richard Stallman ;; Stefan Monnier -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages, faces ;; Package: emacs diff --git a/lisp/frame.el b/lisp/frame.el index a8c230cb7b..8e0738f31c 100644 --- a/lisp/frame.el +++ b/lisp/frame.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1994, 1996-1997, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/fringe.el b/lisp/fringe.el index 92387a2157..632efa81a8 100644 --- a/lisp/fringe.el +++ b/lisp/fringe.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. ;; Author: Simon Josefsson -;; Maintainer: emacs-devel@gnu.org ;; Keywords: frames ;; Package: emacs diff --git a/lisp/help-fns.el b/lisp/help-fns.el index 50d69e70de..9d99736807 100644 --- a/lisp/help-fns.el +++ b/lisp/help-fns.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1993-1994, 1998-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, internal ;; Package: emacs diff --git a/lisp/help-macro.el b/lisp/help-macro.el index a16d1e34b4..9c90d6da14 100644 --- a/lisp/help-macro.el +++ b/lisp/help-macro.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1994, 2001-2019 Free Software Foundation, Inc. ;; Author: Lynn Slater -;; Maintainer: emacs-devel@gnu.org ;; Created: Mon Oct 1 11:42:39 1990 ;; Adapted-By: ESR ;; Package: emacs diff --git a/lisp/help-mode.el b/lisp/help-mode.el index 6cc3f0d4f7..304c45dad3 100644 --- a/lisp/help-mode.el +++ b/lisp/help-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1993-1994, 1998-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, internal ;; Package: emacs diff --git a/lisp/help.el b/lisp/help.el index 42ff375565..0677368a4d 100644 --- a/lisp/help.el +++ b/lisp/help.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1993-1994, 1998-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, internal ;; Package: emacs diff --git a/lisp/hexl.el b/lisp/hexl.el index ee5a9c0fce..df501dfc68 100644 --- a/lisp/hexl.el +++ b/lisp/hexl.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Keith Gabryelski -;; Maintainer: emacs-devel@gnu.org ;; Keywords: data ;; This file is part of GNU Emacs. diff --git a/lisp/hippie-exp.el b/lisp/hippie-exp.el index 404f448e0d..17d3dc7d8d 100644 --- a/lisp/hippie-exp.el +++ b/lisp/hippie-exp.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992, 2001-2019 Free Software Foundation, Inc. ;; Author: Anders Holst -;; Maintainer: emacs-devel@gnu.org ;; Version: 1.6 ;; Keywords: abbrev convenience diff --git a/lisp/hl-line.el b/lisp/hl-line.el index 1c09bc26f6..e4fef214d6 100644 --- a/lisp/hl-line.el +++ b/lisp/hl-line.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1998, 2000-2019 Free Software Foundation, Inc. ;; Author: Dave Love -;; Maintainer: emacs-devel@gnu.org ;; Created: 1998-09-13 ;; Keywords: faces, frames, emulations diff --git a/lisp/icomplete.el b/lisp/icomplete.el index 10fd3a698c..698025e550 100644 --- a/lisp/icomplete.el +++ b/lisp/icomplete.el @@ -3,8 +3,8 @@ ;; Copyright (C) 1992-1994, 1997, 1999, 2001-2019 Free Software ;; Foundation, Inc. -;; Author: Ken Manheimer -;; Maintainer: Ken Manheimer +;; Author: Ken Manheimer +;; Maintainer: Ken Manheimer ;; Created: Mar 1993 Ken Manheimer, klm@nist.gov - first release to usenet ;; Keywords: help, abbrev diff --git a/lisp/ielm.el b/lisp/ielm.el index c7a31a23e6..1531415e74 100644 --- a/lisp/ielm.el +++ b/lisp/ielm.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1994, 2001-2019 Free Software Foundation, Inc. ;; Author: David Smith -;; Maintainer: emacs-devel@gnu.org ;; Created: 25 Feb 1994 ;; Keywords: lisp diff --git a/lisp/iimage.el b/lisp/iimage.el index e51108ee28..17b715a66b 100644 --- a/lisp/iimage.el +++ b/lisp/iimage.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2004-2019 Free Software Foundation, Inc. ;; Author: KOSEKI Yoshinori -;; Maintainer: emacs-devel@gnu.org ;; Keywords: multimedia ;; This file is part of GNU Emacs. diff --git a/lisp/image.el b/lisp/image.el index db11302086..6cc2cc3902 100644 --- a/lisp/image.el +++ b/lisp/image.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1998-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: multimedia ;; Package: emacs diff --git a/lisp/imenu.el b/lisp/imenu.el index 5084fe61ef..6e16e13183 100644 --- a/lisp/imenu.el +++ b/lisp/imenu.el @@ -4,7 +4,6 @@ ;; Author: Ake Stenhoff ;; Lars Lindberg -;; Maintainer: emacs-devel@gnu.org ;; Created: 8 Feb 1994 ;; Keywords: tools convenience diff --git a/lisp/indent.el b/lisp/indent.el index bf87d6af76..1dbece73d6 100644 --- a/lisp/indent.el +++ b/lisp/indent.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 1995, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Package: emacs ;; This file is part of GNU Emacs. diff --git a/lisp/info.el b/lisp/info.el index c211887a39..61803950d1 100644 --- a/lisp/info.el +++ b/lisp/info.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985-1986, 1992-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help ;; This file is part of GNU Emacs. diff --git a/lisp/informat.el b/lisp/informat.el index 8108ffe42a..246b3b979b 100644 --- a/lisp/informat.el +++ b/lisp/informat.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1986, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help ;; This file is part of GNU Emacs. diff --git a/lisp/international/isearch-x.el b/lisp/international/isearch-x.el index 6c2a2dc9b9..c12e7b39a8 100644 --- a/lisp/international/isearch-x.el +++ b/lisp/international/isearch-x.el @@ -8,8 +8,8 @@ ;; Keywords: i18n, multilingual, isearch -;; Author: Kenichi HANDA -;; Maintainer: Kenichi HANDA +;; Author: Kenichi Handa +;; Maintainer: Kenichi Handa ;; This file is part of GNU Emacs. diff --git a/lisp/international/iso-ascii.el b/lisp/international/iso-ascii.el index 395e6c4dcd..b317b8aad7 100644 --- a/lisp/international/iso-ascii.el +++ b/lisp/international/iso-ascii.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Howard Gayle -;; Maintainer: emacs-devel@gnu.org ;; Keywords: i18n ;; This file is part of GNU Emacs. diff --git a/lisp/international/iso-transl.el b/lisp/international/iso-transl.el index b573e1e47c..14da02c73d 100644 --- a/lisp/international/iso-transl.el +++ b/lisp/international/iso-transl.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Howard Gayle -;; Maintainer: emacs-devel@gnu.org ;; Keywords: i18n ;; This file is part of GNU Emacs. diff --git a/lisp/international/ogonek.el b/lisp/international/ogonek.el index 543f2e3388..fd68137f2b 100644 --- a/lisp/international/ogonek.el +++ b/lisp/international/ogonek.el @@ -4,7 +4,6 @@ ;; Author: Włodek Bzyl ;; Ryszard Kubiak -;; Maintainer: emacs-devel@gnu.org ;; Keywords: i18n ;; This file is part of GNU Emacs. diff --git a/lisp/international/quail.el b/lisp/international/quail.el index 3266b93b44..2683118aaf 100644 --- a/lisp/international/quail.el +++ b/lisp/international/quail.el @@ -6,9 +6,9 @@ ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H14PRO021 -;; Author: Kenichi HANDA -;; Naoto TAKAHASHI -;; Maintainer: Kenichi HANDA +;; Author: Kenichi Handa +;; Naoto Takahashi +;; Maintainer: Kenichi Handa ;; Keywords: mule, multilingual, input method, i18n ;; This file is part of GNU Emacs. diff --git a/lisp/international/utf7.el b/lisp/international/utf7.el index 0e67a62aa6..f22fb8d38b 100644 --- a/lisp/international/utf7.el +++ b/lisp/international/utf7.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1999-2019 Free Software Foundation, Inc. ;; Author: Jon K Hellan -;; Maintainer: bugs@gnus.org ;; Keywords: mail ;; This file is part of GNU Emacs. diff --git a/lisp/isearch.el b/lisp/isearch.el index bb29c2914b..5aaeae438a 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992-1997, 1999-2019 Free Software Foundation, Inc. ;; Author: Daniel LaLiberte -;; Maintainer: emacs-devel@gnu.org ;; Keywords: matching ;; Package: emacs diff --git a/lisp/isearchb.el b/lisp/isearchb.el index ee392b349e..dc1836865b 100644 --- a/lisp/isearchb.el +++ b/lisp/isearchb.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2004-2019 Free Software Foundation, Inc. ;; Author: John Wiegley -;; Maintainer: emacs-devel@gnu.org ;; Created: 16 Apr 2004 ;; Version: 1.5 ;; Keywords: lisp diff --git a/lisp/jka-cmpr-hook.el b/lisp/jka-cmpr-hook.el index 3aa84f45b0..b6ff9f12f1 100644 --- a/lisp/jka-cmpr-hook.el +++ b/lisp/jka-cmpr-hook.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Jay K. Adams -;; Maintainer: emacs-devel@gnu.org ;; Keywords: data ;; Package: emacs diff --git a/lisp/jka-compr.el b/lisp/jka-compr.el index 63fb449b48..8c9dd8abb6 100644 --- a/lisp/jka-compr.el +++ b/lisp/jka-compr.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Jay K. Adams -;; Maintainer: emacs-devel@gnu.org ;; Keywords: data ;; This file is part of GNU Emacs. diff --git a/lisp/kermit.el b/lisp/kermit.el index f6ed1fbda1..77c2cbd4d6 100644 --- a/lisp/kermit.el +++ b/lisp/kermit.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1988, 2001-2019 Free Software Foundation, Inc. ;; Author: Jeff Norden -;; Maintainer: emacs-devel@gnu.org ;; Created: 15 Feb 1988 ;; Keywords: comm diff --git a/lisp/language/cyrillic.el b/lisp/language/cyrillic.el index 75d4249423..564ac5f592 100644 --- a/lisp/language/cyrillic.el +++ b/lisp/language/cyrillic.el @@ -9,7 +9,7 @@ ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H13PRO009 -;; Author: Kenichi Handa +;; Author: Kenichi Handa ;; Keywords: multilingual, Cyrillic, i18n ;; This file is part of GNU Emacs. diff --git a/lisp/language/european.el b/lisp/language/european.el index 8c38175972..fedbca4eb6 100644 --- a/lisp/language/european.el +++ b/lisp/language/european.el @@ -525,7 +525,7 @@ method and applying Turkish case rules for the characters i, I, ı, İ."))) (set-case-syntax ?ı "w" table))) ;; Polish ISO 8859-2 environment. -;; Maintainer: Wlodek Bzyl +;; Maintainer: Włodek Bzyl ;; Keywords: multilingual, Polish (set-language-info-alist diff --git a/lisp/language/indian.el b/lisp/language/indian.el index d63e9b465f..894a01502c 100644 --- a/lisp/language/indian.el +++ b/lisp/language/indian.el @@ -5,7 +5,7 @@ ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H14PRO021 -;; Maintainer: Kenichi Handa +;; Maintainer: Kenichi Handa ;; KAWABATA, Taichi ;; Keywords: multilingual, i18n, Indian diff --git a/lisp/language/thai-word.el b/lisp/language/thai-word.el index e67dd09343..94c6ab9897 100644 --- a/lisp/language/thai-word.el +++ b/lisp/language/thai-word.el @@ -4,7 +4,7 @@ ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H14PRO021 -;; Author: Kenichi HANDA +;; Author: Kenichi Handa ;; Keywords: thai, word break, emacs diff --git a/lisp/leim/quail/py-punct.el b/lisp/leim/quail/py-punct.el index eed70a82ee..49ea66effb 100644 --- a/lisp/leim/quail/py-punct.el +++ b/lisp/leim/quail/py-punct.el @@ -6,7 +6,7 @@ ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H14PRO021 -;; Author: Ken'ichi HANDA +;; Author: Ken'ichi Handa ;; Keywords: multilingual, input method, Chinese diff --git a/lisp/leim/quail/pypunct-b5.el b/lisp/leim/quail/pypunct-b5.el index 45597a4ef6..9f4e73c9f0 100644 --- a/lisp/leim/quail/pypunct-b5.el +++ b/lisp/leim/quail/pypunct-b5.el @@ -5,7 +5,7 @@ ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H14PRO021 -;; Author: Ken'ichi HANDA +;; Author: Ken'ichi Handa ;; Keywords: multilingual, input method, Chinese diff --git a/lisp/linum.el b/lisp/linum.el index 0b4b0083ed..6fe30571c6 100644 --- a/lisp/linum.el +++ b/lisp/linum.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2008-2019 Free Software Foundation, Inc. ;; Author: Markus Triska -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; Version: 0.9x diff --git a/lisp/loadhist.el b/lisp/loadhist.el index 4e5d8e0f38..69f2c0bdcc 100644 --- a/lisp/loadhist.el +++ b/lisp/loadhist.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1995, 1998, 2000-2019 Free Software Foundation, Inc. ;; Author: Eric S. Raymond -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; This file is part of GNU Emacs. diff --git a/lisp/loadup.el b/lisp/loadup.el index 67e8aa7d40..c43d147622 100644 --- a/lisp/loadup.el +++ b/lisp/loadup.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1992, 1994, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/lpr.el b/lisp/lpr.el index 436f9e3e02..17a37f1554 100644 --- a/lisp/lpr.el +++ b/lisp/lpr.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1988, 1992, 1994, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: unix ;; This file is part of GNU Emacs. diff --git a/lisp/ls-lisp.el b/lisp/ls-lisp.el index 1f2c46834e..7ab97ebffe 100644 --- a/lisp/ls-lisp.el +++ b/lisp/ls-lisp.el @@ -4,7 +4,6 @@ ;; Author: Sebastian Kremer ;; Modified by: Francis J. Wright -;; Maintainer: emacs-devel@gnu.org ;; Keywords: unix, dired ;; Package: emacs diff --git a/lisp/macros.el b/lisp/macros.el index 4b38506d8a..b9020a299a 100644 --- a/lisp/macros.el +++ b/lisp/macros.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1987, 1992, 1994-1995, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: abbrev ;; Package: emacs diff --git a/lisp/mail/blessmail.el b/lisp/mail/blessmail.el index 62094bfe2d..2a2ff3dec1 100644 --- a/lisp/mail/blessmail.el +++ b/lisp/mail/blessmail.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1994, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/mail/emacsbug.el b/lisp/mail/emacsbug.el index c637e242c4..2cd6d56b42 100644 --- a/lisp/mail/emacsbug.el +++ b/lisp/mail/emacsbug.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: K. Shane Hartman -;; Maintainer: emacs-devel@gnu.org ;; Keywords: maint mail ;; Package: emacs diff --git a/lisp/mail/feedmail.el b/lisp/mail/feedmail.el index a90d9c4657..180e32bee4 100644 --- a/lisp/mail/feedmail.el +++ b/lisp/mail/feedmail.el @@ -1657,7 +1657,7 @@ local gurus." (declare-function smtp-via-smtp "ext:smtp" (sender recipients smtp-text-buffer)) (defvar smtp-server) -;; FLIM's smtp.el pointed out to me by Kenichi Handa +;; FLIM's smtp.el pointed out to me by Kenichi Handa (defun feedmail-buffer-to-smtp (prepped errors-to addr-listoid) "Function which actually calls smtp-via-smtp to send buffer as e-mail." (feedmail-say-debug ">in-> feedmail-buffer-to-smtp %s" addr-listoid) diff --git a/lisp/mail/hashcash.el b/lisp/mail/hashcash.el index 6068952997..ec17d669f3 100644 --- a/lisp/mail/hashcash.el +++ b/lisp/mail/hashcash.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2003-2005, 2007-2019 Free Software Foundation, Inc. ;; Written by: Paul Foley (1997-2002) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail, hashcash ;; This file is part of GNU Emacs. diff --git a/lisp/mail/mail-extr.el b/lisp/mail/mail-extr.el index c1e90c3dcb..e610806665 100644 --- a/lisp/mail/mail-extr.el +++ b/lisp/mail/mail-extr.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Joe Wells -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; Package: mail-utils diff --git a/lisp/mail/mail-utils.el b/lisp/mail/mail-utils.el index cbcbdfaeb2..f561c088a2 100644 --- a/lisp/mail/mail-utils.el +++ b/lisp/mail/mail-utils.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail, news ;; This file is part of GNU Emacs. diff --git a/lisp/mail/mailabbrev.el b/lisp/mail/mailabbrev.el index d59df88c68..17f4f0cba0 100644 --- a/lisp/mail/mailabbrev.el +++ b/lisp/mail/mailabbrev.el @@ -4,7 +4,6 @@ ;; Software Foundation, Inc. ;; Author: Jamie Zawinski -;; Maintainer: emacs-devel@gnu.org ;; Created: 19 Oct 90 ;; Keywords: mail diff --git a/lisp/mail/mailalias.el b/lisp/mail/mailalias.el index 42896c18eb..68e44f820c 100644 --- a/lisp/mail/mailalias.el +++ b/lisp/mail/mailalias.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1987, 1995-1997, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; This file is part of GNU Emacs. diff --git a/lisp/mail/reporter.el b/lisp/mail/reporter.el index 10db110c70..3172c9760f 100644 --- a/lisp/mail/reporter.el +++ b/lisp/mail/reporter.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1998, 2001-2019 Free Software Foundation, Inc. ;; Author: 1993-1998 Barry A. Warsaw -;; Maintainer: emacs-devel@gnu.org ;; Created: 19-Apr-1993 ;; Keywords: maint mail tools diff --git a/lisp/mail/rfc822.el b/lisp/mail/rfc822.el index a53a77e47e..4cf624cedd 100644 --- a/lisp/mail/rfc822.el +++ b/lisp/mail/rfc822.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Richard Mlynarik -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; This file is part of GNU Emacs. diff --git a/lisp/mail/rmail.el b/lisp/mail/rmail.el index 91291b8d33..d0ebf7df47 100644 --- a/lisp/mail/rmail.el +++ b/lisp/mail/rmail.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1988, 1993-1998, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; This file is part of GNU Emacs. diff --git a/lisp/mail/rmailedit.el b/lisp/mail/rmailedit.el index 01d552469f..a9ce1e6fee 100644 --- a/lisp/mail/rmailedit.el +++ b/lisp/mail/rmailedit.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 1994, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; Package: rmail diff --git a/lisp/mail/rmailkwd.el b/lisp/mail/rmailkwd.el index 9427796a06..ee71ab4f6e 100644 --- a/lisp/mail/rmailkwd.el +++ b/lisp/mail/rmailkwd.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1988, 1994, 2001-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; Package: rmail diff --git a/lisp/mail/rmailmm.el b/lisp/mail/rmailmm.el index af528135cc..d32147f4af 100644 --- a/lisp/mail/rmailmm.el +++ b/lisp/mail/rmailmm.el @@ -4,7 +4,6 @@ ;; Author: Alexander Pohoyda ;; Alex Schroeder -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; Package: rmail diff --git a/lisp/mail/rmailmsc.el b/lisp/mail/rmailmsc.el index ba0c2ae77c..4c42935899 100644 --- a/lisp/mail/rmailmsc.el +++ b/lisp/mail/rmailmsc.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; Package: rmail diff --git a/lisp/mail/rmailout.el b/lisp/mail/rmailout.el index 12d37615d6..d95670849d 100644 --- a/lisp/mail/rmailout.el +++ b/lisp/mail/rmailout.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1987, 1993-1994, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; Package: rmail diff --git a/lisp/mail/rmailsort.el b/lisp/mail/rmailsort.el index 4a701038ac..18185ec647 100644 --- a/lisp/mail/rmailsort.el +++ b/lisp/mail/rmailsort.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Masanobu UMEDA -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; Package: rmail diff --git a/lisp/mail/rmailsum.el b/lisp/mail/rmailsum.el index 79a322c1d9..80cfbfd721 100644 --- a/lisp/mail/rmailsum.el +++ b/lisp/mail/rmailsum.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1993-1996, 2000-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; Package: rmail diff --git a/lisp/mail/sendmail.el b/lisp/mail/sendmail.el index 208ebb6801..0db0557083 100644 --- a/lisp/mail/sendmail.el +++ b/lisp/mail/sendmail.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1992-1996, 1998, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; This file is part of GNU Emacs. diff --git a/lisp/mail/supercite.el b/lisp/mail/supercite.el index ad69dca8c4..317324613b 100644 --- a/lisp/mail/supercite.el +++ b/lisp/mail/supercite.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993, 1997, 2001-2019 Free Software Foundation, Inc. ;; Author: 1993 Barry A. Warsaw -;; Maintainer: emacs-devel@gnu.org ;; Created: February 1993 ;; Keywords: mail, news diff --git a/lisp/mail/undigest.el b/lisp/mail/undigest.el index bbf3c83c55..499f16e9d2 100644 --- a/lisp/mail/undigest.el +++ b/lisp/mail/undigest.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1994, 1996, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; This file is part of GNU Emacs. diff --git a/lisp/mail/unrmail.el b/lisp/mail/unrmail.el index 4d9ad67262..c409210a0c 100644 --- a/lisp/mail/unrmail.el +++ b/lisp/mail/unrmail.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1992, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; This file is part of GNU Emacs. diff --git a/lisp/makesum.el b/lisp/makesum.el index 10ad78ea17..847e304e97 100644 --- a/lisp/makesum.el +++ b/lisp/makesum.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help ;; This file is part of GNU Emacs. diff --git a/lisp/man.el b/lisp/man.el index d52ca2156d..feb0e09ab1 100644 --- a/lisp/man.el +++ b/lisp/man.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Barry A. Warsaw -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help ;; Adapted-By: ESR, pot diff --git a/lisp/menu-bar.el b/lisp/menu-bar.el index 4ff60ed991..d12cdd731a 100644 --- a/lisp/menu-bar.el +++ b/lisp/menu-bar.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1995, 2000-2019 Free Software Foundation, Inc. ;; Author: Richard M. Stallman -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal, mouse ;; Package: emacs diff --git a/lisp/misc.el b/lisp/misc.el index 4cf6cadf65..0080762700 100644 --- a/lisp/misc.el +++ b/lisp/misc.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1989, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; Package: emacs diff --git a/lisp/mouse.el b/lisp/mouse.el index 8428c1e013..af53c05f57 100644 --- a/lisp/mouse.el +++ b/lisp/mouse.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1993-1995, 1999-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: hardware, mouse ;; Package: emacs diff --git a/lisp/msb.el b/lisp/msb.el index 7a1a338fcc..b626624fbc 100644 --- a/lisp/msb.el +++ b/lisp/msb.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1995, 1997-2019 Free Software Foundation, Inc. ;; Author: Lars Lindberg -;; Maintainer: emacs-devel@gnu.org ;; Created: 8 Oct 1993 ;; Lindberg's last update version: 3.34 ;; Keywords: mouse buffer menu diff --git a/lisp/mwheel.el b/lisp/mwheel.el index 23f491db0f..86788fc69a 100644 --- a/lisp/mwheel.el +++ b/lisp/mwheel.el @@ -1,7 +1,7 @@ ;;; mwheel.el --- Wheel mouse support ;; Copyright (C) 1998, 2000-2019 Free Software Foundation, Inc. -;; Maintainer: William M. Perry +;; Maintainer: Bill Perry ;; Keywords: mouse ;; Package: emacs diff --git a/lisp/net/ange-ftp.el b/lisp/net/ange-ftp.el index b0a1e1799f..81b654c9a9 100644 --- a/lisp/net/ange-ftp.el +++ b/lisp/net/ange-ftp.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Andy Norman (ange@hplb.hpl.hp.com) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm ;; This file is part of GNU Emacs. diff --git a/lisp/net/browse-url.el b/lisp/net/browse-url.el index aa31e25fa9..0c63cbd5a4 100644 --- a/lisp/net/browse-url.el +++ b/lisp/net/browse-url.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1995-2019 Free Software Foundation, Inc. ;; Author: Denis Howe -;; Maintainer: emacs-devel@gnu.org ;; Created: 03 Apr 1995 ;; Keywords: hypertext, hypermedia, mouse diff --git a/lisp/net/goto-addr.el b/lisp/net/goto-addr.el index c25d787391..d7fd058747 100644 --- a/lisp/net/goto-addr.el +++ b/lisp/net/goto-addr.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1995, 2000-2019 Free Software Foundation, Inc. ;; Author: Eric Ding -;; Maintainer: emacs-devel@gnu.org ;; Created: 15 Aug 1995 ;; Keywords: mh-e, www, mouse, mail diff --git a/lisp/net/ldap.el b/lisp/net/ldap.el index 75fc7d6221..2df473cf71 100644 --- a/lisp/net/ldap.el +++ b/lisp/net/ldap.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1998-2019 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: emacs-devel@gnu.org ;; Created: April 1998 ;; Keywords: comm diff --git a/lisp/net/pop3.el b/lisp/net/pop3.el index 599e2305f7..1911450825 100644 --- a/lisp/net/pop3.el +++ b/lisp/net/pop3.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1996-2019 Free Software Foundation, Inc. ;; Author: Richard L. Pieri -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mail ;; This file is part of GNU Emacs. diff --git a/lisp/net/socks.el b/lisp/net/socks.el index 6356707a1d..c9f7419095 100644 --- a/lisp/net/socks.el +++ b/lisp/net/socks.el @@ -3,7 +3,7 @@ ;; Copyright (C) 1996-2000, 2002, 2007-2019 Free Software Foundation, ;; Inc. -;; Author: William M. Perry +;; Author: Bill Perry ;; Dave Love ;; Keywords: comm, firewalls diff --git a/lisp/net/telnet.el b/lisp/net/telnet.el index cf3634f7d9..465927dfdd 100644 --- a/lisp/net/telnet.el +++ b/lisp/net/telnet.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: William F. Schelter -;; Maintainer: emacs-devel@gnu.org ;; Keywords: unix, comm ;; This file is part of GNU Emacs. diff --git a/lisp/newcomment.el b/lisp/newcomment.el index ab2be080a3..ac706b949b 100644 --- a/lisp/newcomment.el +++ b/lisp/newcomment.el @@ -3,7 +3,7 @@ ;; Copyright (C) 1999-2019 Free Software Foundation, Inc. ;; Author: code extracted from Emacs-20's simple.el -;; Maintainer: Stefan Monnier +;; Maintainer: Stefan Monnier ;; Keywords: comment uncomment ;; Package: emacs diff --git a/lisp/novice.el b/lisp/novice.el index 3da4e25810..1da4b71dc9 100644 --- a/lisp/novice.el +++ b/lisp/novice.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1987, 1994, 2001-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal, help ;; This file is part of GNU Emacs. diff --git a/lisp/obarray.el b/lisp/obarray.el index c83d5d4724..fbab506cce 100644 --- a/lisp/obarray.el +++ b/lisp/obarray.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2015-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: obarray functions ;; Package: emacs diff --git a/lisp/obsolete/abbrevlist.el b/lisp/obsolete/abbrevlist.el index e2bf14f0dc..dfd7b2b492 100644 --- a/lisp/obsolete/abbrevlist.el +++ b/lisp/obsolete/abbrevlist.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1986, 1992, 2001-2019 Free Software Foundation, Inc. ;; Suggested by a previous version by Gildea. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: abbrev ;; Package: emacs ;; Obsolete-since: 24.1 diff --git a/lisp/obsolete/bruce.el b/lisp/obsolete/bruce.el index fba54c1ae0..8044a0ef93 100644 --- a/lisp/obsolete/bruce.el +++ b/lisp/obsolete/bruce.el @@ -4,7 +4,6 @@ ;; Copyright (C) 1988, 1993, 1997, 2001-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games ;; Created: Jan 1997 ;; Obsolete-since: 24.3 diff --git a/lisp/obsolete/fast-lock.el b/lisp/obsolete/fast-lock.el index 5180d4527b..10af6ab95f 100644 --- a/lisp/obsolete/fast-lock.el +++ b/lisp/obsolete/fast-lock.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1994-1998, 2001-2019 Free Software Foundation, Inc. ;; Author: Simon Marshall -;; Maintainer: emacs-devel@gnu.org ;; Keywords: faces files ;; Version: 3.14 ;; Obsolete-since: 22.1 diff --git a/lisp/obsolete/gs.el b/lisp/obsolete/gs.el index cfdc9dc67c..24c9b67abd 100644 --- a/lisp/obsolete/gs.el +++ b/lisp/obsolete/gs.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1998, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Obsolete-since: 26.1 diff --git a/lisp/obsolete/gulp.el b/lisp/obsolete/gulp.el index bdb3406a3d..373ee35d8e 100644 --- a/lisp/obsolete/gulp.el +++ b/lisp/obsolete/gulp.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1996, 2001-2019 Free Software Foundation, Inc. ;; Author: Sam Shteingold -;; Maintainer: emacs-devel@gnu.org ;; Keywords: maint ;; Obsolete-since: 25.1 diff --git a/lisp/obsolete/info-edit.el b/lisp/obsolete/info-edit.el index b64e84003f..e520faf77b 100644 --- a/lisp/obsolete/info-edit.el +++ b/lisp/obsolete/info-edit.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985-1986, 1992-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help ;; Obsolete-since: 24.4 diff --git a/lisp/obsolete/lazy-lock.el b/lisp/obsolete/lazy-lock.el index 44f8528b20..5167928002 100644 --- a/lisp/obsolete/lazy-lock.el +++ b/lisp/obsolete/lazy-lock.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1994-1998, 2001-2019 Free Software Foundation, Inc. ;; Author: Simon Marshall -;; Maintainer: emacs-devel@gnu.org ;; Keywords: faces files ;; Version: 2.11 ;; Obsolete-since: 22.1 diff --git a/lisp/obsolete/ledit.el b/lisp/obsolete/ledit.el index 6383a4266d..91efa29320 100644 --- a/lisp/obsolete/ledit.el +++ b/lisp/obsolete/ledit.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages ;; Obsolete-since: 24.3 diff --git a/lisp/obsolete/levents.el b/lisp/obsolete/levents.el index 714b3fbb76..f2b081d672 100644 --- a/lisp/obsolete/levents.el +++ b/lisp/obsolete/levents.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1993, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: emulations ;; Obsolete-since: 23.2 diff --git a/lisp/obsolete/lucid.el b/lisp/obsolete/lucid.el index d1b702ed55..9d0c5daf5e 100644 --- a/lisp/obsolete/lucid.el +++ b/lisp/obsolete/lucid.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1993, 1995, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: emulations ;; Obsolete-since: 23.2 diff --git a/lisp/obsolete/mailpost.el b/lisp/obsolete/mailpost.el index 2f74faf1d6..33cc43ccbe 100644 --- a/lisp/obsolete/mailpost.el +++ b/lisp/obsolete/mailpost.el @@ -6,7 +6,6 @@ ;; This file is part of GNU Emacs. ;; Author: Gary Delp -;; Maintainer: emacs-devel@gnu.org ;; Created: 13 Jan 1986 ;; Keywords: mail ;; Obsolete-since: 24.3 diff --git a/lisp/obsolete/meese.el b/lisp/obsolete/meese.el index 81739dfa6c..190db94f4b 100644 --- a/lisp/obsolete/meese.el +++ b/lisp/obsolete/meese.el @@ -5,7 +5,6 @@ ;; This file is part of GNU Emacs. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games ;; Obsolete-since: 24.4 diff --git a/lisp/obsolete/pc-mode.el b/lisp/obsolete/pc-mode.el index 6d1a456d61..4908b51259 100644 --- a/lisp/obsolete/pc-mode.el +++ b/lisp/obsolete/pc-mode.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1995, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: emulations ;; Obsolete-since: 24.1 diff --git a/lisp/obsolete/rcompile.el b/lisp/obsolete/rcompile.el index dfa80097b3..53537a0906 100644 --- a/lisp/obsolete/rcompile.el +++ b/lisp/obsolete/rcompile.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1994, 2001-2019 Free Software Foundation, Inc. ;; Author: Alon Albert -;; Maintainer: emacs-devel@gnu.org ;; Created: 1993 Oct 6 ;; Keywords: tools, processes ;; Obsolete-since: 24.4 diff --git a/lisp/obsolete/sregex.el b/lisp/obsolete/sregex.el index 884cd3e4e4..ba36f2dcda 100644 --- a/lisp/obsolete/sregex.el +++ b/lisp/obsolete/sregex.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1997-1998, 2000-2019 Free Software Foundation, Inc. ;; Author: Bob Glickstein -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions ;; Obsolete-since: 24.1 diff --git a/lisp/obsolete/sup-mouse.el b/lisp/obsolete/sup-mouse.el index 6bd4278925..752ebf59d8 100644 --- a/lisp/obsolete/sup-mouse.el +++ b/lisp/obsolete/sup-mouse.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 2001-2019 Free Software Foundation, Inc. ;; Author: Wolfgang Rupprecht -;; Maintainer: emacs-devel@gnu.org ;; Created: 21 Nov 1986 ;; Keywords: hardware ;; Obsolete-since: 24.4 diff --git a/lisp/obsolete/terminal.el b/lisp/obsolete/terminal.el index ce6f2309fd..d0631b32f0 100644 --- a/lisp/obsolete/terminal.el +++ b/lisp/obsolete/terminal.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Richard Mlynarik -;; Maintainer: emacs-devel@gnu.org ;; Obsolete-since: 24.4 ;; Keywords: comm, terminals diff --git a/lisp/obsolete/yow.el b/lisp/obsolete/yow.el index 5cbb2ef21e..eddb3f9029 100644 --- a/lisp/obsolete/yow.el +++ b/lisp/obsolete/yow.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1993-1995, 2000-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Author: Richard Mlynarik ;; Keywords: games ;; Obsolete-since: 24.4 diff --git a/lisp/org/ox-publish.el b/lisp/org/ox-publish.el index 74312bc20f..9126647e7c 100644 --- a/lisp/org/ox-publish.el +++ b/lisp/org/ox-publish.el @@ -2,7 +2,7 @@ ;; Copyright (C) 2006-2019 Free Software Foundation, Inc. ;; Author: David O'Toole -;; Maintainer: Carsten Dominik +;; Maintainer: Carsten Dominik ;; Keywords: hypermedia, outlines, wp ;; This file is part of GNU Emacs. diff --git a/lisp/outline.el b/lisp/outline.el index 74df77b8be..7783d37e0a 100644 --- a/lisp/outline.el +++ b/lisp/outline.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1986, 1993-1995, 1997, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: outlines ;; This file is part of GNU Emacs. diff --git a/lisp/paren.el b/lisp/paren.el index 13908d46ee..d00e7d9a81 100644 --- a/lisp/paren.el +++ b/lisp/paren.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993, 1996, 2001-2019 Free Software Foundation, Inc. ;; Author: rms@gnu.org -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages, faces ;; This file is part of GNU Emacs. diff --git a/lisp/play/cookie1.el b/lisp/play/cookie1.el index e461b37e36..fb310faf4c 100644 --- a/lisp/play/cookie1.el +++ b/lisp/play/cookie1.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993, 2001-2019 Free Software Foundation, Inc. ;; Author: Eric S. Raymond -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games, extensions ;; Created: Mon Mar 22 17:06:26 1993 diff --git a/lisp/play/dissociate.el b/lisp/play/dissociate.el index a5880c0884..fc76f2b724 100644 --- a/lisp/play/dissociate.el +++ b/lisp/play/dissociate.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games ;; This file is part of GNU Emacs. diff --git a/lisp/play/doctor.el b/lisp/play/doctor.el index b1ab6703a4..e9c78f5e5c 100644 --- a/lisp/play/doctor.el +++ b/lisp/play/doctor.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1987, 1994, 1996, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games ;; This file is part of GNU Emacs. diff --git a/lisp/play/gomoku.el b/lisp/play/gomoku.el index 6d5553b320..562e5c0ad2 100644 --- a/lisp/play/gomoku.el +++ b/lisp/play/gomoku.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Philippe Schnoebelen -;; Maintainer: emacs-devel@gnu.org ;; Adapted-By: ESR, Daniel Pfeiffer ;; Keywords: games diff --git a/lisp/play/hanoi.el b/lisp/play/hanoi.el index d762290f0d..1f2e2c0098 100644 --- a/lisp/play/hanoi.el +++ b/lisp/play/hanoi.el @@ -1,7 +1,6 @@ ;;; hanoi.el --- towers of hanoi in Emacs ;; Author: Damon Anton Permezel -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games ; Author (a) 1985, Damon Anton Permezel diff --git a/lisp/play/life.el b/lisp/play/life.el index 6cce1e5643..7d9f1475f3 100644 --- a/lisp/play/life.el +++ b/lisp/play/life.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1988, 2001-2019 Free Software Foundation, Inc. ;; Author: Kyle Jones -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games ;; This file is part of GNU Emacs. diff --git a/lisp/play/spook.el b/lisp/play/spook.el index d884c0a255..c1394a31d7 100644 --- a/lisp/play/spook.el +++ b/lisp/play/spook.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1988, 1993, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games ;; Created: May 1987 diff --git a/lisp/play/studly.el b/lisp/play/studly.el index ff1bf03e11..6d54f6d08a 100644 --- a/lisp/play/studly.el +++ b/lisp/play/studly.el @@ -5,7 +5,6 @@ ;; This file is part of GNU Emacs. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: games ;;; Commentary: diff --git a/lisp/progmodes/ada-mode.el b/lisp/progmodes/ada-mode.el index e01f1e8ecb..50f7b4c009 100644 --- a/lisp/progmodes/ada-mode.el +++ b/lisp/progmodes/ada-mode.el @@ -5,7 +5,7 @@ ;; Author: Rolf Ebert ;; Markus Heritsch ;; Emmanuel Briot -;; Maintainer: Stephen Leake +;; Maintainer: Stephen Leake ;; Keywords: languages ada ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/asm-mode.el b/lisp/progmodes/asm-mode.el index c56d16e305..491b780bd0 100644 --- a/lisp/progmodes/asm-mode.el +++ b/lisp/progmodes/asm-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1991, 2001-2019 Free Software Foundation, Inc. ;; Author: Eric S. Raymond -;; Maintainer: emacs-devel@gnu.org ;; Keywords: tools, languages ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/cc-awk.el b/lisp/progmodes/cc-awk.el index 1a67a95927..ff4ea1a090 100644 --- a/lisp/progmodes/cc-awk.el +++ b/lisp/progmodes/cc-awk.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Alan Mackenzie (originally based on awk-mode.el) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: AWK, cc-mode, unix, languages ;; Package: cc-mode diff --git a/lisp/progmodes/compile.el b/lisp/progmodes/compile.el index 1a0d9bdbb7..3930f09392 100644 --- a/lisp/progmodes/compile.el +++ b/lisp/progmodes/compile.el @@ -5,7 +5,6 @@ ;; Authors: Roland McGrath , ;; Daniel Pfeiffer -;; Maintainer: emacs-devel@gnu.org ;; Keywords: tools, processes ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/cperl-mode.el b/lisp/progmodes/cperl-mode.el index ba007d67c0..fd3eec7609 100644 --- a/lisp/progmodes/cperl-mode.el +++ b/lisp/progmodes/cperl-mode.el @@ -5,7 +5,6 @@ ;; Author: Ilya Zakharevich ;; Bob Olson ;; Jonathan Rockway -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages, Perl ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/dcl-mode.el b/lisp/progmodes/dcl-mode.el index d5803c77bb..757f0f2607 100644 --- a/lisp/progmodes/dcl-mode.el +++ b/lisp/progmodes/dcl-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1997, 2001-2019 Free Software Foundation, Inc. ;; Author: Odd Gripenstam -;; Maintainer: emacs-devel@gnu.org ;; Keywords: DCL editing major-mode languages ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/ebrowse.el b/lisp/progmodes/ebrowse.el index 3faec4959b..0f44487d43 100644 --- a/lisp/progmodes/ebrowse.el +++ b/lisp/progmodes/ebrowse.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992-2019 Free Software Foundation, Inc. ;; Author: Gerd Moellmann -;; Maintainer: emacs-devel@gnu.org ;; Keywords: C++ tags tools ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el index cb1b17b447..d62c1316ee 100644 --- a/lisp/progmodes/elisp-mode.el +++ b/lisp/progmodes/elisp-mode.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985-1986, 1999-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp, languages ;; Package: emacs diff --git a/lisp/progmodes/etags.el b/lisp/progmodes/etags.el index 910c320ab8..54ca135f27 100644 --- a/lisp/progmodes/etags.el +++ b/lisp/progmodes/etags.el @@ -4,7 +4,6 @@ ;; Software Foundation, Inc. ;; Author: Roland McGrath -;; Maintainer: emacs-devel@gnu.org ;; Keywords: tools ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/gdb-mi.el b/lisp/progmodes/gdb-mi.el index 716f40c1f3..e09aaa3741 100644 --- a/lisp/progmodes/gdb-mi.el +++ b/lisp/progmodes/gdb-mi.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2007-2019 Free Software Foundation, Inc. ;; Author: Nick Roberts -;; Maintainer: emacs-devel@gnu.org ;; Keywords: unix, tools ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el index 79178c4346..d094c95fcf 100644 --- a/lisp/progmodes/grep.el +++ b/lisp/progmodes/grep.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Roland McGrath -;; Maintainer: emacs-devel@gnu.org ;; Keywords: tools, processes ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/gud.el b/lisp/progmodes/gud.el index 4306f5daa0..f5680f263b 100644 --- a/lisp/progmodes/gud.el +++ b/lisp/progmodes/gud.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Eric S. Raymond -;; Maintainer: emacs-devel@gnu.org ;; Keywords: unix, tools ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/make-mode.el b/lisp/progmodes/make-mode.el index cffb749c3e..c3ff23558c 100644 --- a/lisp/progmodes/make-mode.el +++ b/lisp/progmodes/make-mode.el @@ -4,7 +4,6 @@ ;; Author: Thomas Neumann ;; Eric S. Raymond -;; Maintainer: emacs-devel@gnu.org ;; Adapted-By: ESR ;; Keywords: unix, tools diff --git a/lisp/progmodes/mixal-mode.el b/lisp/progmodes/mixal-mode.el index a759709b5c..1dd5d51df8 100644 --- a/lisp/progmodes/mixal-mode.el +++ b/lisp/progmodes/mixal-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2003-2019 Free Software Foundation, Inc. ;; Author: Pieter E.J. Pareit -;; Maintainer: emacs-devel@gnu.org ;; Created: 09 Nov 2002 ;; Version: 0.1 ;; Keywords: languages, Knuth, mix, mixal, asm, mixvm, The Art Of Computer Programming diff --git a/lisp/progmodes/modula2.el b/lisp/progmodes/modula2.el index aa412304c5..087d1f65fd 100644 --- a/lisp/progmodes/modula2.el +++ b/lisp/progmodes/modula2.el @@ -2,7 +2,6 @@ ;; Author: Michael Schmidt ;; Tom Perrine -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/octave.el b/lisp/progmodes/octave.el index 8a7e24e5ad..4d4e2e1cd4 100644 --- a/lisp/progmodes/octave.el +++ b/lisp/progmodes/octave.el @@ -4,7 +4,6 @@ ;; Author: Kurt Hornik ;; John Eaton -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/perl-mode.el b/lisp/progmodes/perl-mode.el index 7cbd30a0d1..f01d6b6bb2 100644 --- a/lisp/progmodes/perl-mode.el +++ b/lisp/progmodes/perl-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1990, 1994, 2001-2019 Free Software Foundation, Inc. ;; Author: William F. Mann -;; Maintainer: emacs-devel@gnu.org ;; Adapted-By: ESR ;; Keywords: languages diff --git a/lisp/progmodes/prog-mode.el b/lisp/progmodes/prog-mode.el index 2b057356b1..bd56d1a7c7 100644 --- a/lisp/progmodes/prog-mode.el +++ b/lisp/progmodes/prog-mode.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2013-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index 188bc973d9..74e865bd0b 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -6,7 +6,6 @@ ;; URL: https://github.com/fgallina/python.el ;; Version: 0.26.1 ;; Package-Requires: ((emacs "24.1") (cl-lib "1.0")) -;; Maintainer: emacs-devel@gnu.org ;; Created: Jul 2010 ;; Keywords: languages diff --git a/lisp/progmodes/sh-script.el b/lisp/progmodes/sh-script.el index 853a3500ee..8f52a36678 100644 --- a/lisp/progmodes/sh-script.el +++ b/lisp/progmodes/sh-script.el @@ -5,7 +5,6 @@ ;; Author: Daniel Pfeiffer ;; Version: 2.0f -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages, unix ;; This file is part of GNU Emacs. diff --git a/lisp/progmodes/tcl.el b/lisp/progmodes/tcl.el index ffb3d41ab6..31315e229e 100644 --- a/lisp/progmodes/tcl.el +++ b/lisp/progmodes/tcl.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1994, 1998-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Author: Tom Tromey ;; Chris Lindblad ;; Keywords: languages tcl modes diff --git a/lisp/progmodes/xscheme.el b/lisp/progmodes/xscheme.el index 62c42d39c6..7ae47126a5 100644 --- a/lisp/progmodes/xscheme.el +++ b/lisp/progmodes/xscheme.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1986-1987, 1989-1990, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: languages, lisp ;; This file is part of GNU Emacs. diff --git a/lisp/ps-bdf.el b/lisp/ps-bdf.el index be80b4a15b..2e75e53fc2 100644 --- a/lisp/ps-bdf.el +++ b/lisp/ps-bdf.el @@ -9,7 +9,7 @@ ;; National Institute of Advanced Industrial Science and Technology (AIST) ;; Registration Number H13PRO009 -;; Author: Kenichi Handa +;; Author: Kenichi Handa ;; (according to ack.texi) ;; Keywords: wp, BDF, font, PostScript ;; Package: ps-print diff --git a/lisp/ps-def.el b/lisp/ps-def.el index 2063133890..d248556ccd 100644 --- a/lisp/ps-def.el +++ b/lisp/ps-def.el @@ -3,8 +3,8 @@ ;; Copyright (C) 2007-2019 Free Software Foundation, Inc. ;; Author: Vinicius Jose Latorre -;; Kenichi Handa (multi-byte characters) -;; Maintainer: Kenichi Handa (multi-byte characters) +;; Kenichi Handa (multi-byte characters) +;; Maintainer: Kenichi Handa (multi-byte characters) ;; Vinicius Jose Latorre ;; Keywords: wp, print, PostScript ;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre diff --git a/lisp/ps-mule.el b/lisp/ps-mule.el index c88d6d2679..537ba9627d 100644 --- a/lisp/ps-mule.el +++ b/lisp/ps-mule.el @@ -3,8 +3,8 @@ ;; Copyright (C) 1998-2019 Free Software Foundation, Inc. ;; Author: Vinicius Jose Latorre -;; Kenichi Handa (multi-byte characters) -;; Maintainer: Kenichi Handa (multi-byte characters) +;; Kenichi Handa (multi-byte characters) +;; Maintainer: Kenichi Handa (multi-byte characters) ;; Vinicius Jose Latorre ;; Keywords: wp, print, PostScript, multibyte, mule ;; Package: ps-print diff --git a/lisp/ps-print.el b/lisp/ps-print.el index 59ac84a363..d0d9cbe448 100644 --- a/lisp/ps-print.el +++ b/lisp/ps-print.el @@ -5,8 +5,8 @@ ;; Author: Jim Thompson (was ) ;; Jacques Duthen (was ) ;; Vinicius Jose Latorre -;; Kenichi Handa (multi-byte characters) -;; Maintainer: Kenichi Handa (multi-byte characters) +;; Kenichi Handa (multi-byte characters) +;; Maintainer: Kenichi Handa (multi-byte characters) ;; Vinicius Jose Latorre ;; Keywords: wp, print, PostScript ;; Version: 7.3.5 @@ -1405,7 +1405,7 @@ Please send all bug fixes and enhancements to ;; prologue code suggestion, for odd/even printing suggestion and for ;; `ps-prologue-file' enhancement. ;; -;; Thanks to Ken'ichi Handa for multi-byte buffer handling. +;; Thanks to Ken'ichi Handa for multi-byte buffer handling. ;; ;; Thanks to Matthew O Persico for line number on ;; empty columns. diff --git a/lisp/ps-samp.el b/lisp/ps-samp.el index 784b4356b4..99c17c7293 100644 --- a/lisp/ps-samp.el +++ b/lisp/ps-samp.el @@ -5,8 +5,8 @@ ;; Author: Jim Thompson (was ) ;; Jacques Duthen (was ) ;; Vinicius Jose Latorre -;; Kenichi Handa (multi-byte characters) -;; Maintainer: Kenichi Handa (multi-byte characters) +;; Kenichi Handa (multi-byte characters) +;; Maintainer: Kenichi Handa (multi-byte characters) ;; Vinicius Jose Latorre ;; Keywords: wp, print, PostScript ;; X-URL: http://www.emacswiki.org/cgi-bin/wiki/ViniciusJoseLatorre diff --git a/lisp/register.el b/lisp/register.el index 775e1a2cc9..d3825fe8e2 100644 --- a/lisp/register.el +++ b/lisp/register.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1993-1994, 2001-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/replace.el b/lisp/replace.el index 9d1b7bf747..00b8be5328 100644 --- a/lisp/replace.el +++ b/lisp/replace.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1987, 1992, 1994, 1996-1997, 2000-2019 Free ;; Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Package: emacs ;; This file is part of GNU Emacs. diff --git a/lisp/reposition.el b/lisp/reposition.el index 22f9986efb..0416845e9c 100644 --- a/lisp/reposition.el +++ b/lisp/reposition.el @@ -4,7 +4,6 @@ ;; Author: Michael D. Ernst ;; Created: Jan 1991 -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/lisp/rot13.el b/lisp/rot13.el index 8f4044deac..bdb2e4b504 100644 --- a/lisp/rot13.el +++ b/lisp/rot13.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1988, 2001-2019 Free Software Foundation, Inc. ;; Author: Howard Gayle -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/lisp/savehist.el b/lisp/savehist.el index fb3b748339..84cba61aab 100644 --- a/lisp/savehist.el +++ b/lisp/savehist.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1997, 2005-2019 Free Software Foundation, Inc. ;; Author: Hrvoje Niksic -;; Maintainer: emacs-devel@gnu.org ;; Keywords: minibuffer ;; Version: 24 diff --git a/lisp/saveplace.el b/lisp/saveplace.el index 730d31ead2..960cace206 100644 --- a/lisp/saveplace.el +++ b/lisp/saveplace.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1994, 2001-2019 Free Software Foundation, Inc. ;; Author: Karl Fogel -;; Maintainer: emacs-devel@gnu.org ;; Created: July, 1993 ;; Keywords: bookmarks, placeholders diff --git a/lisp/scroll-bar.el b/lisp/scroll-bar.el index dc0df7ab3f..4fc9df8460 100644 --- a/lisp/scroll-bar.el +++ b/lisp/scroll-bar.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1993-1995, 1999-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: hardware ;; Package: emacs diff --git a/lisp/scroll-lock.el b/lisp/scroll-lock.el index 8281edb172..72127321c9 100644 --- a/lisp/scroll-lock.el +++ b/lisp/scroll-lock.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2005-2019 Free Software Foundation, Inc. ;; Author: Ralf Angeli -;; Maintainer: emacs-devel@gnu.org ;; Created: 2005-06-18 ;; This file is part of GNU Emacs. diff --git a/lisp/select.el b/lisp/select.el index af6bf467e4..a8adc168f9 100644 --- a/lisp/select.el +++ b/lisp/select.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1993-1994, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; This file is part of GNU Emacs. diff --git a/lisp/server.el b/lisp/server.el index 436a44a7e9..f692673d4f 100644 --- a/lisp/server.el +++ b/lisp/server.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: William Sommerfeld -;; Maintainer: emacs-devel@gnu.org ;; Keywords: processes ;; Changes by peck@sun.com and by rms. diff --git a/lisp/ses.el b/lisp/ses.el index 73157d6f5f..7fdacc77c9 100644 --- a/lisp/ses.el +++ b/lisp/ses.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2002-2019 Free Software Foundation, Inc. ;; Author: Jonathan Yavner -;; Maintainer: Vincent Belaïche +;; Maintainer: Vincent Belaïche ;; Keywords: spreadsheet Dijkstra ;; This file is part of GNU Emacs. diff --git a/lisp/shell.el b/lisp/shell.el index 5357027211..6e2ae85fce 100644 --- a/lisp/shell.el +++ b/lisp/shell.el @@ -5,7 +5,6 @@ ;; Author: Olin Shivers ;; Simon Marshall -;; Maintainer: emacs-devel@gnu.org ;; Keywords: processes ;; This file is part of GNU Emacs. diff --git a/lisp/simple.el b/lisp/simple.el index 4454791ad2..c0e8d58c80 100644 --- a/lisp/simple.el +++ b/lisp/simple.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985-1987, 1993-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/skeleton.el b/lisp/skeleton.el index bce73d6bfe..1d06b648a2 100644 --- a/lisp/skeleton.el +++ b/lisp/skeleton.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993-1996, 2001-2019 Free Software Foundation, Inc. ;; Author: Daniel Pfeiffer -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions, abbrev, languages, tools ;; This file is part of GNU Emacs. diff --git a/lisp/sort.el b/lisp/sort.el index 6ea1c44060..86cb1804a3 100644 --- a/lisp/sort.el +++ b/lisp/sort.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Howie Kaye -;; Maintainer: emacs-devel@gnu.org ;; Keywords: unix ;; This file is part of GNU Emacs. diff --git a/lisp/soundex.el b/lisp/soundex.el index 1f1f9caec3..9e4c79769d 100644 --- a/lisp/soundex.el +++ b/lisp/soundex.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1993, 2001-2019 Free Software Foundation, Inc. ;; Author: Christian Plaunt -;; Maintainer: emacs-devel@gnu.org ;; Keywords: matching ;; Created: Sat May 15 14:48:18 1993 diff --git a/lisp/startup.el b/lisp/startup.el index 421a6ea37d..a88118e3b9 100644 --- a/lisp/startup.el +++ b/lisp/startup.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1992, 1994-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/strokes.el b/lisp/strokes.el index 9265b8a52e..29daaa5690 100644 --- a/lisp/strokes.el +++ b/lisp/strokes.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1997, 2000-2019 Free Software Foundation, Inc. ;; Author: David Bakhash -;; Maintainer: emacs-devel@gnu.org ;; Keywords: lisp, mouse, extensions ;; This file is part of GNU Emacs. diff --git a/lisp/subr.el b/lisp/subr.el index 05fb9fea68..c97d9b96bd 100644 --- a/lisp/subr.el +++ b/lisp/subr.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1992, 1994-1995, 1999-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/t-mouse.el b/lisp/t-mouse.el index 14b292d441..1f4be160f8 100644 --- a/lisp/t-mouse.el +++ b/lisp/t-mouse.el @@ -1,7 +1,6 @@ ;;; t-mouse.el --- mouse support within the text terminal ;; Author: Nick Roberts -;; Maintainer: emacs-devel@gnu.org ;; Keywords: mouse gpm linux ;; Copyright (C) 1994-1995, 1998, 2006-2019 Free Software Foundation, diff --git a/lisp/tabify.el b/lisp/tabify.el index 37cd8fb2fd..345771e19c 100644 --- a/lisp/tabify.el +++ b/lisp/tabify.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 1994, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Package: emacs ;; This file is part of GNU Emacs. diff --git a/lisp/talk.el b/lisp/talk.el index 0b7d5db01e..b5c77a9332 100644 --- a/lisp/talk.el +++ b/lisp/talk.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1995, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, frames ;; This file is part of GNU Emacs. diff --git a/lisp/tar-mode.el b/lisp/tar-mode.el index 599da9ac80..c75fe7c373 100644 --- a/lisp/tar-mode.el +++ b/lisp/tar-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1990-1991, 1993-2019 Free Software Foundation, Inc. ;; Author: Jamie Zawinski -;; Maintainer: emacs-devel@gnu.org ;; Created: 04 Apr 1990 ;; Keywords: unix diff --git a/lisp/term/common-win.el b/lisp/term/common-win.el index b7a778fc00..d7fceb8308 100644 --- a/lisp/term/common-win.el +++ b/lisp/term/common-win.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1993-1994, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: terminals ;; This file is part of GNU Emacs. diff --git a/lisp/term/pc-win.el b/lisp/term/pc-win.el index 09275991cf..c434ea6b9c 100644 --- a/lisp/term/pc-win.el +++ b/lisp/term/pc-win.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: Morten Welinder -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/lisp/term/tty-colors.el b/lisp/term/tty-colors.el index 307586f221..2718aecb9a 100644 --- a/lisp/term/tty-colors.el +++ b/lisp/term/tty-colors.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1999-2019 Free Software Foundation, Inc. ;; Author: Eli Zaretskii -;; Maintainer: emacs-devel@gnu.org ;; Keywords: terminals, faces ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/bib-mode.el b/lisp/textmodes/bib-mode.el index 7a5d3ef775..de822326fb 100644 --- a/lisp/textmodes/bib-mode.el +++ b/lisp/textmodes/bib-mode.el @@ -4,7 +4,6 @@ ;; Author: Henry Kautz ;; (according to authors.el) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: bib ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/fill.el b/lisp/textmodes/fill.el index c285491a30..46dbcfef46 100644 --- a/lisp/textmodes/fill.el +++ b/lisp/textmodes/fill.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1992, 1994-1997, 1999, 2001-2019 Free ;; Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: wp ;; Package: emacs diff --git a/lisp/textmodes/flyspell.el b/lisp/textmodes/flyspell.el index d18916dfd0..a06f8edd6f 100644 --- a/lisp/textmodes/flyspell.el +++ b/lisp/textmodes/flyspell.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1998, 2000-2019 Free Software Foundation, Inc. ;; Author: Manuel Serrano -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/makeinfo.el b/lisp/textmodes/makeinfo.el index ff3d2420df..f351b87026 100644 --- a/lisp/textmodes/makeinfo.el +++ b/lisp/textmodes/makeinfo.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1991, 1993, 2001-2019 Free Software Foundation, Inc. ;; Author: Robert J. Chassell -;; Maintainer: emacs-devel@gnu.org ;; Keywords: docs convenience ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/nroff-mode.el b/lisp/textmodes/nroff-mode.el index f33d4df4d1..e5964d175d 100644 --- a/lisp/textmodes/nroff-mode.el +++ b/lisp/textmodes/nroff-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1994-1995, 1997, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: wp ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/page.el b/lisp/textmodes/page.el index 220ef2d7fd..bc92121599 100644 --- a/lisp/textmodes/page.el +++ b/lisp/textmodes/page.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: wp convenience ;; Package: emacs diff --git a/lisp/textmodes/paragraphs.el b/lisp/textmodes/paragraphs.el index 92a6b90785..8a1af3af25 100644 --- a/lisp/textmodes/paragraphs.el +++ b/lisp/textmodes/paragraphs.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1987, 1991, 1994-1997, 1999-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: wp ;; Package: emacs diff --git a/lisp/textmodes/picture.el b/lisp/textmodes/picture.el index b520849467..0b50854731 100644 --- a/lisp/textmodes/picture.el +++ b/lisp/textmodes/picture.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1994, 2001-2019 Free Software Foundation, Inc. ;; Author: K. Shane Hartman -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience wp ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/refbib.el b/lisp/textmodes/refbib.el index 3ba52e61ea..03b1b048a1 100644 --- a/lisp/textmodes/refbib.el +++ b/lisp/textmodes/refbib.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1989, 2001-2019 Free Software Foundation, Inc. ;; Author: Henry Kautz -;; Maintainer: emacs-devel@gnu.org ;; Keywords: bib, tex ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/refer.el b/lisp/textmodes/refer.el index f13e1d7161..3d4d0d2b06 100644 --- a/lisp/textmodes/refer.el +++ b/lisp/textmodes/refer.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992, 1996, 2001-2019 Free Software Foundation, Inc. ;; Author: Ashwin Ram -;; Maintainer: emacs-devel@gnu.org ;; Adapted-By: ESR ;; Keywords: bib diff --git a/lisp/textmodes/remember.el b/lisp/textmodes/remember.el index 67ecd3ced8..efc11084fe 100644 --- a/lisp/textmodes/remember.el +++ b/lisp/textmodes/remember.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1999-2001, 2003-2019 Free Software Foundation, Inc. ;; Author: John Wiegley -;; Maintainer: emacs-devel@gnu.org ;; Created: 29 Mar 1999 ;; Version: 2.0 ;; Keywords: data memory todo pim diff --git a/lisp/textmodes/sgml-mode.el b/lisp/textmodes/sgml-mode.el index 1b064fb825..1826129f0b 100644 --- a/lisp/textmodes/sgml-mode.el +++ b/lisp/textmodes/sgml-mode.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: James Clark -;; Maintainer: emacs-devel@gnu.org ;; Adapted-By: ESR, Daniel Pfeiffer , ;; F.Potorti@cnuce.cnr.it ;; Keywords: wp, hypermedia, comm, languages diff --git a/lisp/textmodes/table.el b/lisp/textmodes/table.el index f27c7058e7..256fac6342 100644 --- a/lisp/textmodes/table.el +++ b/lisp/textmodes/table.el @@ -590,7 +590,7 @@ ;; attempt of implementing the table feature to Emacs. This greatly ;; motivated me to follow through to its completion. ;; -;; Kenichi Handa kindly guided me through to +;; Kenichi Handa kindly guided me through to ;; overcome many technical issues while I was struggling with quail ;; related internationalization problems. ;; diff --git a/lisp/textmodes/tex-mode.el b/lisp/textmodes/tex-mode.el index 9c91d27b94..8611b735ba 100644 --- a/lisp/textmodes/tex-mode.el +++ b/lisp/textmodes/tex-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1989, 1992, 1994-1999, 2001-2019 Free ;; Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: tex ;; Contributions over the years by William F. Schelter, Dick King, diff --git a/lisp/textmodes/texinfmt.el b/lisp/textmodes/texinfmt.el index 9ccc73ad48..5a54e0d2d1 100644 --- a/lisp/textmodes/texinfmt.el +++ b/lisp/textmodes/texinfmt.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1988, 1990-1998, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: bug-texinfo@gnu.org ;; Keywords: maint, tex, docs ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/texinfo.el b/lisp/textmodes/texinfo.el index 71cdcab57e..54306d2b74 100644 --- a/lisp/textmodes/texinfo.el +++ b/lisp/textmodes/texinfo.el @@ -5,7 +5,6 @@ ;; Author: Robert J. Chassell ;; Date: [See date below for texinfo-version] -;; Maintainer: emacs-devel@gnu.org ;; Keywords: maint, tex, docs ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/texnfo-upd.el b/lisp/textmodes/texnfo-upd.el index e960e992a8..4f49c7f5d1 100644 --- a/lisp/textmodes/texnfo-upd.el +++ b/lisp/textmodes/texnfo-upd.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1989-1992, 2001-2019 Free Software Foundation, Inc. ;; Author: Robert J. Chassell -;; Maintainer: bug-texinfo@gnu.org ;; Keywords: maint, tex, docs ;; This file is part of GNU Emacs. diff --git a/lisp/textmodes/text-mode.el b/lisp/textmodes/text-mode.el index e676a5dae2..ac292e463b 100644 --- a/lisp/textmodes/text-mode.el +++ b/lisp/textmodes/text-mode.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1992, 1994, 2001-2019 Free Software Foundation, ;; Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: wp ;; Package: emacs diff --git a/lisp/textmodes/underline.el b/lisp/textmodes/underline.el index e0bfd24557..8c904f5d0e 100644 --- a/lisp/textmodes/underline.el +++ b/lisp/textmodes/underline.el @@ -2,7 +2,6 @@ ;; Copyright (C) 1985, 2001-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: wp ;; This file is part of GNU Emacs. diff --git a/lisp/thingatpt.el b/lisp/thingatpt.el index 60a20e2d18..e0184a7ccb 100644 --- a/lisp/thingatpt.el +++ b/lisp/thingatpt.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1991-1998, 2000-2019 Free Software Foundation, Inc. ;; Author: Mike Williams -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions, matching, mouse ;; Created: Thu Mar 28 13:48:23 1991 diff --git a/lisp/thread.el b/lisp/thread.el index e8f3cc7da6..3242d1dade 100644 --- a/lisp/thread.el +++ b/lisp/thread.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2018-2019 Free Software Foundation, Inc. ;; Author: Gemini Lasswell -;; Maintainer: emacs-devel@gnu.org ;; Keywords: thread, tools ;; This file is part of GNU Emacs. diff --git a/lisp/thumbs.el b/lisp/thumbs.el index 6a17a75654..dd0491a66a 100644 --- a/lisp/thumbs.el +++ b/lisp/thumbs.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2004-2019 Free Software Foundation, Inc. ;; Author: Jean-Philippe Theberge -;; Maintainer: emacs-devel@gnu.org ;; Keywords: Multimedia ;; This file is part of GNU Emacs. diff --git a/lisp/time.el b/lisp/time.el index 35157c5e80..c2f60d31bd 100644 --- a/lisp/time.el +++ b/lisp/time.el @@ -3,8 +3,6 @@ ;; Copyright (C) 1985-1987, 1993-1994, 1996, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/lisp/tmm.el b/lisp/tmm.el index 44f04eab87..bb96b5a46a 100644 --- a/lisp/tmm.el +++ b/lisp/tmm.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1994-1996, 2000-2019 Free Software Foundation, Inc. ;; Author: Ilya Zakharevich -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience ;; This file is part of GNU Emacs. diff --git a/lisp/tutorial.el b/lisp/tutorial.el index 37ebb5cbe7..e42818218e 100644 --- a/lisp/tutorial.el +++ b/lisp/tutorial.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2006-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, internal ;; Package: emacs diff --git a/lisp/uniquify.el b/lisp/uniquify.el index 3dd9e34135..29612b36c2 100644 --- a/lisp/uniquify.el +++ b/lisp/uniquify.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Dick King -;; Maintainer: emacs-devel@gnu.org ;; Keywords: files ;; Created: 15 May 86 ;; Package: emacs diff --git a/lisp/url/url-dav.el b/lisp/url/url-dav.el index a4cf0f0ec0..dba313453f 100644 --- a/lisp/url/url-dav.el +++ b/lisp/url/url-dav.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2001, 2004-2019 Free Software Foundation, Inc. ;; Author: Bill Perry -;; Maintainer: emacs-devel@gnu.org ;; Keywords: url, vc ;; This file is part of GNU Emacs. diff --git a/lisp/url/url-gw.el b/lisp/url/url-gw.el index 5436084078..00d784a9b4 100644 --- a/lisp/url/url-gw.el +++ b/lisp/url/url-gw.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1997-1998, 2004-2019 Free Software Foundation, Inc. ;; Author: Bill Perry -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, data, processes ;; This file is part of GNU Emacs. diff --git a/lisp/url/url-http.el b/lisp/url/url-http.el index 00803a103a..a11f5147af 100644 --- a/lisp/url/url-http.el +++ b/lisp/url/url-http.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1999, 2001, 2004-2019 Free Software Foundation, Inc. ;; Author: Bill Perry -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, data, processes ;; This file is part of GNU Emacs. diff --git a/lisp/url/url-util.el b/lisp/url/url-util.el index a46e7bb385..dbcc9a6168 100644 --- a/lisp/url/url-util.el +++ b/lisp/url/url-util.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Bill Perry -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, data, processes ;; This file is part of GNU Emacs. diff --git a/lisp/url/url.el b/lisp/url/url.el index 5242d42f04..eafac8a192 100644 --- a/lisp/url/url.el +++ b/lisp/url/url.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Bill Perry -;; Maintainer: emacs-devel@gnu.org ;; Keywords: comm, data, processes, hypermedia ;; This file is part of GNU Emacs. diff --git a/lisp/userlock.el b/lisp/userlock.el index f077bc9ad6..c4178ac42a 100644 --- a/lisp/userlock.el +++ b/lisp/userlock.el @@ -4,7 +4,6 @@ ;; Author: Richard King ;; (according to authors.el) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/vc/add-log.el b/lisp/vc/add-log.el index f9efd44c5c..5cd4f46ed5 100644 --- a/lisp/vc/add-log.el +++ b/lisp/vc/add-log.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985-1986, 1988, 1993-1994, 1997-1998, 2000-2019 Free ;; Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: vc tools ;; This file is part of GNU Emacs. diff --git a/lisp/vc/compare-w.el b/lisp/vc/compare-w.el index 02c08af8b2..2811d4691b 100644 --- a/lisp/vc/compare-w.el +++ b/lisp/vc/compare-w.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1986, 1989, 1993, 1997, 2001-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: convenience files vc ;; This file is part of GNU Emacs. diff --git a/lisp/vc/diff.el b/lisp/vc/diff.el index 523be87bc4..bee36592a1 100644 --- a/lisp/vc/diff.el +++ b/lisp/vc/diff.el @@ -5,7 +5,6 @@ ;; Author: Frank Bresz ;; (according to authors.el) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: unix, vc, tools ;; This file is part of GNU Emacs. diff --git a/lisp/vc/vc-annotate.el b/lisp/vc/vc-annotate.el index 84838135fc..15f234fda6 100644 --- a/lisp/vc/vc-annotate.el +++ b/lisp/vc/vc-annotate.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1997-1998, 2000-2019 Free Software Foundation, Inc. ;; Author: Martin Lorentzson -;; Maintainer: emacs-devel@gnu.org ;; Keywords: vc tools ;; Package: vc diff --git a/lisp/vc/vc-bzr.el b/lisp/vc/vc-bzr.el index ee1646cae5..3ab8c49640 100644 --- a/lisp/vc/vc-bzr.el +++ b/lisp/vc/vc-bzr.el @@ -4,7 +4,6 @@ ;; Author: Dave Love ;; Riccardo Murri -;; Maintainer: emacs-devel@gnu.org ;; Keywords: vc tools ;; Created: Sept 2006 ;; Package: vc diff --git a/lisp/vc/vc-cvs.el b/lisp/vc/vc-cvs.el index 626e190c1e..cc1845a59f 100644 --- a/lisp/vc/vc-cvs.el +++ b/lisp/vc/vc-cvs.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1995, 1998-2019 Free Software Foundation, Inc. ;; Author: FSF (see vc.el for full credits) -;; Maintainer: emacs-devel@gnu.org ;; Package: vc ;; This file is part of GNU Emacs. diff --git a/lisp/vc/vc-dispatcher.el b/lisp/vc/vc-dispatcher.el index c4b327a3f0..579448b31c 100644 --- a/lisp/vc/vc-dispatcher.el +++ b/lisp/vc/vc-dispatcher.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2008-2019 Free Software Foundation, Inc. ;; Author: FSF (see below for full credits) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: vc tools ;; Package: vc diff --git a/lisp/vc/vc-filewise.el b/lisp/vc/vc-filewise.el index f05e8efff9..37c71f9864 100644 --- a/lisp/vc/vc-filewise.el +++ b/lisp/vc/vc-filewise.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992-1996, 1998-2019 Free Software Foundation, Inc. ;; Author: FSF (see vc.el for full credits) -;; Maintainer: emacs-devel@gnu.org ;; Package: vc ;; This file is part of GNU Emacs. diff --git a/lisp/vc/vc-hg.el b/lisp/vc/vc-hg.el index 876d824cea..f1b603b2a9 100644 --- a/lisp/vc/vc-hg.el +++ b/lisp/vc/vc-hg.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2006-2019 Free Software Foundation, Inc. ;; Author: Ivan Kanis -;; Maintainer: emacs-devel@gnu.org ;; Keywords: vc tools ;; Package: vc diff --git a/lisp/vc/vc-hooks.el b/lisp/vc/vc-hooks.el index 07b3d86b51..1871e1e95c 100644 --- a/lisp/vc/vc-hooks.el +++ b/lisp/vc/vc-hooks.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992-1996, 1998-2019 Free Software Foundation, Inc. ;; Author: FSF (see vc.el for full credits) -;; Maintainer: emacs-devel@gnu.org ;; Package: vc ;; This file is part of GNU Emacs. diff --git a/lisp/vc/vc-rcs.el b/lisp/vc/vc-rcs.el index 598e98250a..ee227b19a3 100644 --- a/lisp/vc/vc-rcs.el +++ b/lisp/vc/vc-rcs.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992-2019 Free Software Foundation, Inc. ;; Author: FSF (see vc.el for full credits) -;; Maintainer: emacs-devel@gnu.org ;; Package: vc ;; This file is part of GNU Emacs. diff --git a/lisp/vc/vc-sccs.el b/lisp/vc/vc-sccs.el index 4e9f5a025f..0d27528e51 100644 --- a/lisp/vc/vc-sccs.el +++ b/lisp/vc/vc-sccs.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992-2019 Free Software Foundation, Inc. ;; Author: FSF (see vc.el for full credits) -;; Maintainer: emacs-devel@gnu.org ;; Package: vc ;; This file is part of GNU Emacs. diff --git a/lisp/vc/vc-src.el b/lisp/vc/vc-src.el index f8475925b0..b708cd41a7 100644 --- a/lisp/vc/vc-src.el +++ b/lisp/vc/vc-src.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992-2019 Free Software Foundation, Inc. ;; Author: FSF (see vc.el for full credits) -;; Maintainer: emacs-devel@gnu.org ;; Package: vc ;; This file is part of GNU Emacs. diff --git a/lisp/vc/vc.el b/lisp/vc/vc.el index b992a8ebe0..d9fb8290d2 100644 --- a/lisp/vc/vc.el +++ b/lisp/vc/vc.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1992-1998, 2000-2019 Free Software Foundation, Inc. ;; Author: FSF (see below for full credits) -;; Maintainer: emacs-devel@gnu.org ;; Keywords: vc tools ;; This file is part of GNU Emacs. diff --git a/lisp/vcursor.el b/lisp/vcursor.el index 3e8b6ee838..7673d9b7b8 100644 --- a/lisp/vcursor.el +++ b/lisp/vcursor.el @@ -4,7 +4,6 @@ ;; Inc. ;; Author: Peter Stephenson -;; Maintainer: emacs-devel@gnu.org ;; Keywords: virtual cursor, convenience ;; This file is part of GNU Emacs. diff --git a/lisp/version.el b/lisp/version.el index d13d8c31e8..d5bc3eb984 100644 --- a/lisp/version.el +++ b/lisp/version.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1992, 1994-1995, 1999-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/view.el b/lisp/view.el index e74ce1e888..c8d5f0de20 100644 --- a/lisp/view.el +++ b/lisp/view.el @@ -4,7 +4,6 @@ ;; Foundation, Inc. ;; Author: K. Shane Hartman -;; Maintainer: emacs-devel@gnu.org ;; Keywords: files ;; This file is part of GNU Emacs. diff --git a/lisp/vt100-led.el b/lisp/vt100-led.el index d7b5f0a803..6678f49dfc 100644 --- a/lisp/vt100-led.el +++ b/lisp/vt100-led.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1988, 2001-2019 Free Software Foundation, Inc. ;; Author: Howard Gayle -;; Maintainer: emacs-devel@gnu.org ;; Keywords: hardware ;; This file is part of GNU Emacs. diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el index b9f98cdc4c..713c8575c7 100644 --- a/lisp/wid-edit.el +++ b/lisp/wid-edit.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1996-1997, 1999-2019 Free Software Foundation, Inc. ;; ;; Author: Per Abrahamsen -;; Maintainer: emacs-devel@gnu.org ;; Keywords: extensions ;; Package: emacs diff --git a/lisp/window.el b/lisp/window.el index 2c9d177d0a..7e6a48460e 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -3,7 +3,6 @@ ;; Copyright (C) 1985, 1989, 1992-1994, 2000-2019 Free Software ;; Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Keywords: internal ;; Package: emacs diff --git a/lisp/woman.el b/lisp/woman.el index 39d9b806d2..57354478fb 100644 --- a/lisp/woman.el +++ b/lisp/woman.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2000-2019 Free Software Foundation, Inc. ;; Author: Francis J. Wright -;; Maintainer: emacs-devel@gnu.org ;; Keywords: help, unix ;; Adapted-By: Eli Zaretskii ;; Version: 0.551 diff --git a/lisp/x-dnd.el b/lisp/x-dnd.el index e4e2dec3b8..31d409c838 100644 --- a/lisp/x-dnd.el +++ b/lisp/x-dnd.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2004-2019 Free Software Foundation, Inc. ;; Author: Jan Djärv -;; Maintainer: emacs-devel@gnu.org ;; Keywords: window, drag, drop ;; Package: emacs diff --git a/src/xterm.c b/src/xterm.c index bff9f74a17..559d1b4892 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -8191,7 +8191,7 @@ handle_one_xevent (struct x_display_info *dpyinfo, fit in 81 bytes. So, we must prepare sufficient bytes for copy_buffer. 513 bytes (256 chars for two-byte character set) seems to be a fairly good - approximation. -- 2000.8.10 handa@etl.go.jp */ + approximation. -- 2000.8.10 handa@gnu.org */ unsigned char copy_buffer[513]; unsigned char *copy_bufptr = copy_buffer; int copy_bufsiz = sizeof (copy_buffer); diff --git a/test/lisp/emacs-lisp/map-tests.el b/test/lisp/emacs-lisp/map-tests.el index a54af8059b..5e044d4be8 100644 --- a/test/lisp/emacs-lisp/map-tests.el +++ b/test/lisp/emacs-lisp/map-tests.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2015-2019 Free Software Foundation, Inc. ;; Author: Nicolas Petton -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/test/lisp/emacs-lisp/seq-tests.el b/test/lisp/emacs-lisp/seq-tests.el index ef05e2b389..8f66ba4f92 100644 --- a/test/lisp/emacs-lisp/seq-tests.el +++ b/test/lisp/emacs-lisp/seq-tests.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2014-2019 Free Software Foundation, Inc. ;; Author: Nicolas Petton -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/test/lisp/emacs-lisp/thunk-tests.el b/test/lisp/emacs-lisp/thunk-tests.el index caa2c41546..69bfc19638 100644 --- a/test/lisp/emacs-lisp/thunk-tests.el +++ b/test/lisp/emacs-lisp/thunk-tests.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2015-2019 Free Software Foundation, Inc. ;; Author: Nicolas Petton -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/test/lisp/help-fns-tests.el b/test/lisp/help-fns-tests.el index e31ac6a4d4..2e9483074e 100644 --- a/test/lisp/help-fns-tests.el +++ b/test/lisp/help-fns-tests.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2014-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/test/lisp/md4-tests.el b/test/lisp/md4-tests.el index 9712411419..56b09c14de 100644 --- a/test/lisp/md4-tests.el +++ b/test/lisp/md4-tests.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2017-2019 Free Software Foundation, Inc. ;; Author: Mark Oteiza -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/test/lisp/org/org-tests.el b/test/lisp/org/org-tests.el index 4b82aa8382..33f9e45946 100644 --- a/test/lisp/org/org-tests.el +++ b/test/lisp/org/org-tests.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2018-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/test/lisp/soundex-tests.el b/test/lisp/soundex-tests.el index d8d79b85ce..4de45f9d53 100644 --- a/test/lisp/soundex-tests.el +++ b/test/lisp/soundex-tests.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2017-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/test/lisp/vc/diff-mode-tests.el b/test/lisp/vc/diff-mode-tests.el index 676d461076..d809b64634 100644 --- a/test/lisp/vc/diff-mode-tests.el +++ b/test/lisp/vc/diff-mode-tests.el @@ -1,7 +1,6 @@ ;; Copyright (C) 2017-2019 Free Software Foundation, Inc. ;; Author: Dima Kogan -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/test/lisp/vc/smerge-mode-tests.el b/test/lisp/vc/smerge-mode-tests.el index 032afa9dc2..67f6468922 100644 --- a/test/lisp/vc/smerge-mode-tests.el +++ b/test/lisp/vc/smerge-mode-tests.el @@ -1,7 +1,5 @@ ;; Copyright (C) 2017-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify diff --git a/test/lisp/vc/vc-bzr-tests.el b/test/lisp/vc/vc-bzr-tests.el index 8fa16cdccb..04c869ed93 100644 --- a/test/lisp/vc/vc-bzr-tests.el +++ b/test/lisp/vc/vc-bzr-tests.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2011-2019 Free Software Foundation, Inc. ;; Author: Glenn Morris -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/test/lisp/vc/vc-hg-tests.el b/test/lisp/vc/vc-hg-tests.el index 1bdc3204c0..7fc84610a0 100644 --- a/test/lisp/vc/vc-hg-tests.el +++ b/test/lisp/vc/vc-hg-tests.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2016-2019 Free Software Foundation, Inc. ;; Author: Dmitry Gutov -;; Maintainer: emacs-devel@gnu.org ;; This file is part of GNU Emacs. diff --git a/test/lisp/xdg-tests.el b/test/lisp/xdg-tests.el index 9c815065b2..b8bd606ec1 100644 --- a/test/lisp/xdg-tests.el +++ b/test/lisp/xdg-tests.el @@ -2,7 +2,6 @@ ;; Copyright (C) 2017-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org ;; Author: Mark Oteiza ;; This file is part of GNU Emacs. diff --git a/test/manual/biditest.el b/test/manual/biditest.el index d813642f78..f257910877 100644 --- a/test/manual/biditest.el +++ b/test/manual/biditest.el @@ -3,7 +3,6 @@ ;; Copyright (C) 2013-2019 Free Software Foundation, Inc. ;; Author: Eli Zaretskii -;; Maintainer: emacs-devel@gnu.org ;; Package: emacs ;; This program is free software: you can redistribute it and/or modify diff --git a/test/manual/etags/el-src/emacs/lisp/progmodes/etags.el b/test/manual/etags/el-src/emacs/lisp/progmodes/etags.el index 250aeb1cf2..30ad34099b 100644 --- a/test/manual/etags/el-src/emacs/lisp/progmodes/etags.el +++ b/test/manual/etags/el-src/emacs/lisp/progmodes/etags.el @@ -4,7 +4,6 @@ ;; Software Foundation, Inc. ;; Author: Roland McGrath -;; Maintainer: emacs-devel@gnu.org ;; Keywords: tools ;; This file is part of GNU Emacs. diff --git a/test/src/lcms-tests.el b/test/src/lcms-tests.el index f1d1110283..d92ebcbeab 100644 --- a/test/src/lcms-tests.el +++ b/test/src/lcms-tests.el @@ -2,8 +2,6 @@ ;; Copyright (C) 2017-2019 Free Software Foundation, Inc. -;; Maintainer: emacs-devel@gnu.org - ;; This file is part of GNU Emacs. ;; GNU Emacs is free software: you can redistribute it and/or modify commit 20241e2c764263ebf31cfb0c6a7a0d3b9ba52429 Author: Alexander Gramiak Date: Sun May 19 20:18:54 2019 -0600 Use HAVE_WINDOW_SYSTEM over HAVE_X11 || HAVE_NTGUI || HAVE_NS * src/keyboard.c (kbd_buffer_get_event, make_lispy_event): Use HAVE_WINDOW_SYSTEM. diff --git a/src/keyboard.c b/src/keyboard.c index 5f2b7afe6d..bb4d185c91 100644 --- a/src/keyboard.c +++ b/src/keyboard.c @@ -3909,7 +3909,7 @@ kbd_buffer_get_event (KBOARD **kbp, case END_SESSION_EVENT: case LANGUAGE_CHANGE_EVENT: #endif -#if defined (HAVE_X11) || defined (HAVE_NTGUI) || defined (HAVE_NS) +#ifdef HAVE_WINDOW_SYSTEM case DELETE_WINDOW_EVENT: case ICONIFY_EVENT: case DEICONIFY_EVENT: @@ -5283,7 +5283,7 @@ make_lispy_event (struct input_event *event) switch (event->kind) { -#if defined (HAVE_X11) || defined (HAVE_NTGUI) || defined (HAVE_NS) +#ifdef HAVE_WINDOW_SYSTEM case DELETE_WINDOW_EVENT: /* Make an event (delete-frame (FRAME)). */ return list2 (Qdelete_frame, list1 (event->frame_or_window)); commit b2b1ccb86df85705fe88360da27f237b1197575b Author: Alexander Gramiak Date: Fri May 10 17:12:39 2019 -0600 Introduce Emacs_Pix_Container and Emacs_Pix_Context typedefs Emacs_Pix_Container is a pointer to a struct representing pixmap data on the backend. Emacs_Pix_Context is the context for the bitmap/pixmap on the backend. Only w32 currently makes this distinction; they are otherwise the same type. * src/dispextern.h: Remove XImagePtr in favor of using XImage* directly. Rename XImagePtr_or_DC to Emacs_Pix_Context. [HAVE_X_WINDOWS] Alias Emacs_Pix_Container and Emacs_Pix_Context to XImage*. [HAVE_NS] Alias Emacs_Pix_Container and Emacs_Pix_Context to trivial Emacs_Pixmap definition. [HAVE_NTGUI]: Alias Emacs_Pix_Container to XImage* and Emacs_Pix_Context to HDC. * src/dispextern.h: * src/image.c: Use Emacs_Pix_Container over XImagePtr and Emacs_Pix_Context over XImagePtr_or_DC. diff --git a/src/dispextern.h b/src/dispextern.h index eee515f2d2..ec1c9620be 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -92,16 +92,16 @@ xstrcasecmp (char const *a, char const *b) #ifdef HAVE_X_WINDOWS #include /* for XrmDatabase */ typedef struct x_display_info Display_Info; -typedef XImage * XImagePtr; -typedef XImagePtr XImagePtr_or_DC; +typedef XImage *Emacs_Pix_Container; +typedef XImage *Emacs_Pix_Context; #define NativeRectangle XRectangle #endif #ifdef HAVE_NTGUI #include "w32gui.h" typedef struct w32_display_info Display_Info; -typedef XImage *XImagePtr; -typedef HDC XImagePtr_or_DC; +typedef XImage *Emacs_Pix_Container; +typedef HDC Emacs_Pix_Context; #endif #ifdef HAVE_NS @@ -109,8 +109,8 @@ typedef HDC XImagePtr_or_DC; #define FACE_COLOR_TO_PIXEL(face_color, frame) ns_color_index_to_rgba(face_color, frame) /* Following typedef needed to accommodate the MSDOS port, believe it or not. */ typedef struct ns_display_info Display_Info; -typedef Emacs_Pixmap XImagePtr; -typedef XImagePtr XImagePtr_or_DC; +typedef Emacs_Pixmap Emacs_Pix_Container; +typedef Emacs_Pixmap Emacs_Pix_Context; #else #define FACE_COLOR_TO_PIXEL(face_color, frame) face_color #endif @@ -2996,7 +2996,7 @@ struct image Non-NULL means it and its Pixmap counterpart may be out of sync and the latter is outdated. NULL means the X image has been synchronized to Pixmap. */ - XImagePtr ximg, mask_img; + XImage *ximg, *mask_img; # ifdef HAVE_NATIVE_SCALING /* Picture versions of pixmap and mask for compositing. */ @@ -3417,9 +3417,9 @@ ptrdiff_t lookup_image (struct frame *, Lisp_Object); #endif RGB_PIXEL_COLOR image_background (struct image *, struct frame *, - XImagePtr_or_DC ximg); + Emacs_Pix_Context img); int image_background_transparent (struct image *, struct frame *, - XImagePtr_or_DC mask); + Emacs_Pix_Context mask); int image_ascent (struct image *, struct face *, struct glyph_slice *); diff --git a/src/image.c b/src/image.c index 8e57444bb0..35ca3e2d66 100644 --- a/src/image.c +++ b/src/image.c @@ -132,17 +132,17 @@ static unsigned long *colors_in_color_table (int *n); #ifdef HAVE_NS /* Use with images created by ns_image_for_XPM. */ static unsigned long -XGetPixel (XImagePtr ximage, int x, int y) +XGetPixel (Emacs_Pix_Container image, int x, int y) { - return ns_get_pixel (ximage, x, y); + return ns_get_pixel (image, x, y); } /* Use with images created by ns_image_for_XPM; alpha set to 1; pixel is assumed to be in RGB form. */ static void -XPutPixel (XImagePtr ximage, int x, int y, unsigned long pixel) +XPutPixel (Emacs_Pix_Container image, int x, int y, unsigned long pixel) { - ns_put_pixel (ximage, x, y, pixel); + ns_put_pixel (image, x, y, pixel); } #endif /* HAVE_NS */ @@ -412,18 +412,19 @@ typedef void Picture; #endif static bool image_create_x_image_and_pixmap_1 (struct frame *, int, int, int, - XImagePtr *, Emacs_Pixmap *, - Picture *); -static void image_destroy_x_image (XImagePtr ximg); + Emacs_Pix_Container *, + Emacs_Pixmap *, Picture *); +static void image_destroy_x_image (Emacs_Pix_Container); #ifdef HAVE_NTGUI -static XImagePtr_or_DC image_get_x_image_or_dc (struct frame *, struct image *, - bool, HGDIOBJ *); -static void image_unget_x_image_or_dc (struct image *, bool, XImagePtr_or_DC, - HGDIOBJ); +static HDC image_get_x_image_or_dc (struct frame *, struct image *, + bool, HGDIOBJ *); +static void image_unget_x_image_or_dc (struct image *, bool, + HDC, HGDIOBJ); #else -static XImagePtr image_get_x_image (struct frame *, struct image *, bool); -static void image_unget_x_image (struct image *, bool, XImagePtr); +static Emacs_Pix_Container image_get_x_image (struct frame *, struct image *, + bool); +static void image_unget_x_image (struct image *, bool, Emacs_Pix_Container); #define image_get_x_image_or_dc(f, img, mask_p, dummy) \ image_get_x_image (f, img, mask_p) #define image_unget_x_image_or_dc(img, mask_p, ximg, dummy) \ @@ -437,7 +438,7 @@ static void image_sync_to_pixmaps (struct frame *, struct image *); /* Useful functions defined in the section `Image type independent image structures' below. */ -static unsigned long four_corners_best (XImagePtr ximg, +static unsigned long four_corners_best (XImage *ximg, int *corners, unsigned long width, unsigned long height); @@ -450,7 +451,7 @@ void x_create_bitmap_mask (struct frame *f, ptrdiff_t id) { Pixmap pixmap, mask; - XImagePtr ximg, mask_img; + XImage *ximg, *mask_img; unsigned long width, height; bool result; unsigned long bg; @@ -1122,10 +1123,10 @@ set_cairo_image_surface (struct image *img, cairo_surface_t *surface) /* Image background colors. */ /* Find the "best" corner color of a bitmap. - On W32, XIMG is assumed to a device context with the bitmap selected. */ + On W32, PIMG is assumed to a device context with the bitmap selected. */ static RGB_PIXEL_COLOR -four_corners_best (XImagePtr_or_DC ximg, int *corners, +four_corners_best (Emacs_Pix_Context pimg, int *corners, unsigned long width, unsigned long height) { RGB_PIXEL_COLOR corner_pixels[4]; @@ -1134,19 +1135,19 @@ four_corners_best (XImagePtr_or_DC ximg, int *corners, if (corners && corners[BOT_CORNER] >= 0) { - /* Get the colors at the corner_pixels of ximg. */ - corner_pixels[0] = GET_PIXEL (ximg, corners[LEFT_CORNER], corners[TOP_CORNER]); - corner_pixels[1] = GET_PIXEL (ximg, corners[RIGHT_CORNER] - 1, corners[TOP_CORNER]); - corner_pixels[2] = GET_PIXEL (ximg, corners[RIGHT_CORNER] - 1, corners[BOT_CORNER] - 1); - corner_pixels[3] = GET_PIXEL (ximg, corners[LEFT_CORNER], corners[BOT_CORNER] - 1); + /* Get the colors at the corner_pixels of pimg. */ + corner_pixels[0] = GET_PIXEL (pimg, corners[LEFT_CORNER], corners[TOP_CORNER]); + corner_pixels[1] = GET_PIXEL (pimg, corners[RIGHT_CORNER] - 1, corners[TOP_CORNER]); + corner_pixels[2] = GET_PIXEL (pimg, corners[RIGHT_CORNER] - 1, corners[BOT_CORNER] - 1); + corner_pixels[3] = GET_PIXEL (pimg, corners[LEFT_CORNER], corners[BOT_CORNER] - 1); } else { - /* Get the colors at the corner_pixels of ximg. */ - corner_pixels[0] = GET_PIXEL (ximg, 0, 0); - corner_pixels[1] = GET_PIXEL (ximg, width - 1, 0); - corner_pixels[2] = GET_PIXEL (ximg, width - 1, height - 1); - corner_pixels[3] = GET_PIXEL (ximg, 0, height - 1); + /* Get the colors at the corner_pixels of pimg. */ + corner_pixels[0] = GET_PIXEL (pimg, 0, 0); + corner_pixels[1] = GET_PIXEL (pimg, width - 1, 0); + corner_pixels[2] = GET_PIXEL (pimg, width - 1, height - 1); + corner_pixels[3] = GET_PIXEL (pimg, 0, height - 1); } /* Choose the most frequently found color as background. */ for (i = best_count = 0; i < 4; ++i) @@ -1166,27 +1167,27 @@ four_corners_best (XImagePtr_or_DC ximg, int *corners, /* Return the `background' field of IMG. If IMG doesn't have one yet, it is guessed heuristically. If non-zero, XIMG is an existing - XImage object (or device context with the image selected on W32) to - use for the heuristic. */ + Emacs_Pix_Context object (device context with the image selected on + W32) to use for the heuristic. */ RGB_PIXEL_COLOR -image_background (struct image *img, struct frame *f, XImagePtr_or_DC ximg) +image_background (struct image *img, struct frame *f, Emacs_Pix_Context pimg) { if (! img->background_valid) /* IMG doesn't have a background yet, try to guess a reasonable value. */ { - bool free_ximg = !ximg; + bool free_pimg = !pimg; #ifdef HAVE_NTGUI HGDIOBJ prev; #endif /* HAVE_NTGUI */ - if (free_ximg) - ximg = image_get_x_image_or_dc (f, img, 0, &prev); + if (free_pimg) + pimg = image_get_x_image_or_dc (f, img, 0, &prev); - img->background = four_corners_best (ximg, img->corners, img->width, img->height); + img->background = four_corners_best (pimg, img->corners, img->width, img->height); - if (free_ximg) - image_unget_x_image_or_dc (img, 0, ximg, prev); + if (free_pimg) + image_unget_x_image_or_dc (img, 0, pimg, prev); img->background_valid = 1; } @@ -1196,10 +1197,12 @@ image_background (struct image *img, struct frame *f, XImagePtr_or_DC ximg) /* Return the `background_transparent' field of IMG. If IMG doesn't have one yet, it is guessed heuristically. If non-zero, MASK is an - existing XImage object to use for the heuristic. */ + existing Emacs_Pix_Context (XImage* on X) object to use for the + heuristic. */ int -image_background_transparent (struct image *img, struct frame *f, XImagePtr_or_DC mask) +image_background_transparent (struct image *img, struct frame *f, + Emacs_Pix_Context mask) { if (! img->background_transparent_valid) /* IMG doesn't have a background yet, try to guess a reasonable value. */ @@ -2002,7 +2005,7 @@ mark_image_cache (struct image_cache *c) WIDTH and HEIGHT must both be positive. If XIMG is null, assume it is a bitmap. */ static bool -image_check_image_size (XImagePtr ximg, int width, int height) +image_check_image_size (Emacs_Pix_Container ximg, int width, int height) { #ifdef HAVE_X_WINDOWS /* Respect Xlib's limits: it cannot deal with images that have more @@ -2036,19 +2039,20 @@ image_check_image_size (XImagePtr ximg, int width, int height) #endif } -/* Create an XImage and a pixmap of size WIDTH x HEIGHT for use on - frame F. Set *XIMG and *PIXMAP to the XImage and Emacs_Pixmap - created. Set (*XIMG)->data to a raster of WIDTH x HEIGHT pixels - allocated via xmalloc. Print error messages via image_error if an - error occurs. Value is true if successful. +/* Create an Emacs_Pix_Container and a pixmap of size WIDTH x + HEIGHT for use on frame F. Set *PIMG and *PIXMAP to the + Emacs_Pix_Container and Emacs_Pixmap created. Set (*PIMG)->data + to a raster of WIDTH x HEIGHT pixels allocated via xmalloc. Print + error messages via image_error if an error occurs. Value is true + if successful. On W32, a DEPTH of zero signifies a 24 bit image, otherwise DEPTH should indicate the bit depth of the image. */ static bool image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int depth, - XImagePtr *ximg, Emacs_Pixmap *pixmap, - Picture *picture) + Emacs_Pix_Container *pimg, + Emacs_Pixmap *pixmap, Picture *picture) { #ifdef HAVE_X_WINDOWS Display *display = FRAME_X_DISPLAY (f); @@ -2059,33 +2063,33 @@ image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int d if (depth <= 0) depth = DefaultDepthOfScreen (screen); - *ximg = XCreateImage (display, DefaultVisualOfScreen (screen), + *pimg = XCreateImage (display, DefaultVisualOfScreen (screen), depth, ZPixmap, 0, NULL, width, height, depth > 16 ? 32 : depth > 8 ? 16 : 8, 0); - if (*ximg == NULL) + if (*pimg == NULL) { image_error ("Unable to allocate X image"); return 0; } - if (! image_check_image_size (*ximg, width, height)) + if (! image_check_image_size (*pimg, width, height)) { - image_destroy_x_image (*ximg); - *ximg = NULL; + image_destroy_x_image (*pimg); + *pimg = NULL; image_error ("Image too large (%dx%d)", make_fixnum (width), make_fixnum (height)); return 0; } /* Allocate image raster. */ - (*ximg)->data = xmalloc ((*ximg)->bytes_per_line * height); + (*pimg)->data = xmalloc ((*pimg)->bytes_per_line * height); /* Allocate a pixmap of the same size. */ *pixmap = XCreatePixmap (display, drawable, width, height, depth); if (*pixmap == NO_PIXMAP) { - image_destroy_x_image (*ximg); - *ximg = NULL; + image_destroy_x_image (*pimg); + *pimg = NULL; image_error ("Unable to create X pixmap"); return 0; } @@ -2152,10 +2156,10 @@ image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int d if (depth < 16) palette_colors = 1 << (depth - 1); - *ximg = xmalloc (sizeof (XImage) + palette_colors * sizeof (RGBQUAD)); + *pimg = xmalloc (sizeof (XImage) + palette_colors * sizeof (RGBQUAD)); - header = &(*ximg)->info.bmiHeader; - memset (&(*ximg)->info, 0, sizeof (BITMAPINFO)); + header = &(*pimg)->info.bmiHeader; + memset (&(*pimg)->info, 0, sizeof (BITMAPINFO)); header->biSize = sizeof (*header); header->biWidth = width; header->biHeight = -height; /* negative indicates a top-down bitmap. */ @@ -2167,10 +2171,10 @@ image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int d /* TODO: fill in palette. */ if (depth == 1) { - (*ximg)->info.bmiColors[0].rgbBlue = 0; - (*ximg)->info.bmiColors[0].rgbGreen = 0; - (*ximg)->info.bmiColors[0].rgbRed = 0; - (*ximg)->info.bmiColors[0].rgbReserved = 0; + (*pimg)->info.bmiColors[0].rgbBlue = 0; + (*pimg)->info.bmiColors[0].rgbGreen = 0; + (*pimg)->info.bmiColors[0].rgbRed = 0; + (*pimg)->info.bmiColors[0].rgbReserved = 0; /* bmiColors is a variable-length array declared by w32api headers as bmiColors[1], which triggers a warning under -Warray-bounds; shut that up. */ @@ -2178,10 +2182,10 @@ image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int d # pragma GCC push_options # pragma GCC diagnostic ignored "-Warray-bounds" # endif - (*ximg)->info.bmiColors[1].rgbBlue = 255; - (*ximg)->info.bmiColors[1].rgbGreen = 255; - (*ximg)->info.bmiColors[1].rgbRed = 255; - (*ximg)->info.bmiColors[1].rgbReserved = 0; + (*pimg)->info.bmiColors[1].rgbBlue = 255; + (*pimg)->info.bmiColors[1].rgbGreen = 255; + (*pimg)->info.bmiColors[1].rgbRed = 255; + (*pimg)->info.bmiColors[1].rgbReserved = 0; # if GNUC_PREREQ (4, 4, 0) # pragma GCC pop_options # endif @@ -2191,10 +2195,10 @@ image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int d /* Create a DIBSection and raster array for the bitmap, and store its handle in *pixmap. */ - *pixmap = CreateDIBSection (hdc, &((*ximg)->info), + *pixmap = CreateDIBSection (hdc, &((*pimg)->info), (depth < 16) ? DIB_PAL_COLORS : DIB_RGB_COLORS, /* casting avoids a GCC warning */ - (void **)&((*ximg)->data), NULL, 0); + (void **)&((*pimg)->data), NULL, 0); /* Realize display palette and garbage all frames. */ release_frame_dc (f, hdc); @@ -2206,8 +2210,8 @@ image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int d /* All system errors are < 10000, so the following is safe. */ XSETINT (errcode, err); image_error ("Unable to create bitmap, error code %d", errcode); - image_destroy_x_image (*ximg); - *ximg = NULL; + image_destroy_x_image (*pimg); + *pimg = NULL; return 0; } @@ -2219,69 +2223,70 @@ image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int d *pixmap = ns_image_for_XPM (width, height, depth); if (*pixmap == 0) { - *ximg = NULL; + *pimg = NULL; image_error ("Unable to allocate NSImage for XPM pixmap"); return 0; } - *ximg = *pixmap; + *pimg = *pixmap; return 1; #endif } -/* Destroy XImage XIMG. Free XIMG->data. */ +/* Destroy Emacs_Pix_Container PIMG. Free data associated with PIMG. */ static void -image_destroy_x_image (XImagePtr ximg) +image_destroy_x_image (Emacs_Pix_Container pimg) { eassert (input_blocked_p ()); - if (ximg) + if (pimg) { #ifdef HAVE_X_WINDOWS - xfree (ximg->data); - ximg->data = NULL; - XDestroyImage (ximg); + xfree (pimg->data); + pimg->data = NULL; + XDestroyImage (pimg); #endif /* HAVE_X_WINDOWS */ #ifdef HAVE_NTGUI /* Data will be freed by DestroyObject. */ - ximg->data = NULL; - xfree (ximg); + pimg->data = NULL; + xfree (pimg); #endif /* HAVE_NTGUI */ #ifdef HAVE_NS - ns_release_object (ximg); + ns_release_object (pimg); #endif /* HAVE_NS */ } } -/* Put XImage XIMG into pixmap PIXMAP on frame F. WIDTH and HEIGHT - are width and height of both the image and pixmap. */ +/* Put Emacs_Pix_Container PIMG into pixmap PIXMAP on frame F. + WIDTH and HEIGHT are width and height of both the image and + pixmap. */ static void -gui_put_x_image (struct frame *f, XImagePtr ximg, Emacs_Pixmap pixmap, - int width, int height) +gui_put_x_image (struct frame *f, Emacs_Pix_Container pimg, + Emacs_Pixmap pixmap, int width, int height) { #ifdef HAVE_X_WINDOWS GC gc; eassert (input_blocked_p ()); gc = XCreateGC (FRAME_X_DISPLAY (f), pixmap, 0, NULL); - XPutImage (FRAME_X_DISPLAY (f), pixmap, gc, ximg, 0, 0, 0, 0, - ximg->width, ximg->height); + XPutImage (FRAME_X_DISPLAY (f), pixmap, gc, pimg, 0, 0, 0, 0, + pimg->width, pimg->height); XFreeGC (FRAME_X_DISPLAY (f), gc); #endif /* HAVE_X_WINDOWS */ #ifdef HAVE_NTGUI #if 0 /* I don't think this is necessary looking at where it is used. */ HDC hdc = get_frame_dc (f); - SetDIBits (hdc, pixmap, 0, height, ximg->data, &(ximg->info), DIB_RGB_COLORS); + SetDIBits (hdc, pixmap, 0, height, pimg->data, &(pimg->info), DIB_RGB_COLORS); release_frame_dc (f, hdc); #endif #endif /* HAVE_NTGUI */ #ifdef HAVE_NS - eassert (ximg == pixmap); - ns_retain_object (ximg); + eassert (pimg == pixmap); + ns_retain_object (pimg); #endif } @@ -2291,7 +2296,7 @@ gui_put_x_image (struct frame *f, XImagePtr ximg, Emacs_Pixmap pixmap, static bool image_create_x_image_and_pixmap (struct frame *f, struct image *img, int width, int height, int depth, - XImagePtr *ximg, bool mask_p) + Emacs_Pix_Container *ximg, bool mask_p) { eassert ((!mask_p ? img->pixmap : img->mask) == NO_PIXMAP); @@ -2304,14 +2309,14 @@ image_create_x_image_and_pixmap (struct frame *f, struct image *img, picture); } -/* Put X image XIMG into image IMG on frame F, as a mask if and only - if MASK_P. On X, this simply records XIMG on a member of IMG, so +/* Put pixel image PIMG into image IMG on frame F, as a mask if and only + if MASK_P. On X, this simply records PIMG on a member of IMG, so it can be put into the pixmap afterwards via image_sync_to_pixmaps. - On the other platforms, it puts XIMG into the pixmap, then frees - the X image and its buffer. */ + On the other platforms, it puts PIMG into the pixmap, then frees + the pixel image and its buffer. */ static void -image_put_x_image (struct frame *f, struct image *img, XImagePtr ximg, +image_put_x_image (struct frame *f, struct image *img, Emacs_Pix_Container ximg, bool mask_p) { #ifdef HAVE_X_WINDOWS @@ -2359,12 +2364,12 @@ image_sync_to_pixmaps (struct frame *f, struct image *img) currently selected GDI object into *PREV for future restoration by image_unget_x_image_or_dc. */ -static XImagePtr_or_DC +static HDC image_get_x_image_or_dc (struct frame *f, struct image *img, bool mask_p, HGDIOBJ *prev) { HDC frame_dc = get_frame_dc (f); - XImagePtr_or_DC ximg = CreateCompatibleDC (frame_dc); + HDC ximg = CreateCompatibleDC (frame_dc); release_frame_dc (f, frame_dc); *prev = SelectObject (ximg, !mask_p ? img->pixmap : img->mask); @@ -2374,7 +2379,7 @@ image_get_x_image_or_dc (struct frame *f, struct image *img, bool mask_p, static void image_unget_x_image_or_dc (struct image *img, bool mask_p, - XImagePtr_or_DC ximg, HGDIOBJ prev) + HDC ximg, HGDIOBJ prev) { SelectObject (ximg, prev); DeleteDC (ximg); @@ -2383,11 +2388,11 @@ image_unget_x_image_or_dc (struct image *img, bool mask_p, /* Get the X image for IMG on frame F. The resulting X image data should be treated as read-only at least on X. */ -static XImagePtr +static Emacs_Pix_Container image_get_x_image (struct frame *f, struct image *img, bool mask_p) { #ifdef HAVE_X_WINDOWS - XImagePtr ximg_in_img = !mask_p ? img->ximg : img->mask_img; + XImage *ximg_in_img = !mask_p ? img->ximg : img->mask_img; if (ximg_in_img) return ximg_in_img; @@ -2395,7 +2400,7 @@ image_get_x_image (struct frame *f, struct image *img, bool mask_p) return XGetImage (FRAME_X_DISPLAY (f), !mask_p ? img->pixmap : img->mask, 0, 0, img->width, img->height, ~0, ZPixmap); #elif defined (HAVE_NS) - XImagePtr pixmap = !mask_p ? img->pixmap : img->mask; + Emacs_Pix_Container pixmap = !mask_p ? img->pixmap : img->mask; ns_retain_object (pixmap); return pixmap; @@ -2403,10 +2408,10 @@ image_get_x_image (struct frame *f, struct image *img, bool mask_p) } static void -image_unget_x_image (struct image *img, bool mask_p, XImagePtr ximg) +image_unget_x_image (struct image *img, bool mask_p, Emacs_Pix_Container ximg) { #ifdef HAVE_X_WINDOWS - XImagePtr ximg_in_img = !mask_p ? img->ximg : img->mask_img; + XImage *ximg_in_img = !mask_p ? img->ximg : img->mask_img; if (ximg_in_img) eassert (ximg == ximg_in_img); @@ -4203,7 +4208,7 @@ xpm_load_image (struct frame *f, #ifndef HAVE_NS bool have_mask = false; #endif - XImagePtr ximg = NULL, mask_img = NULL; + Emacs_Pix_Container ximg = NULL, mask_img = NULL; #define match() \ LA1 = xpm_scan (&s, end, &beg, &len) @@ -4785,7 +4790,7 @@ image_to_emacs_colors (struct frame *f, struct image *img, bool rgb_p) { int x, y; Emacs_Color *colors, *p; - XImagePtr_or_DC ximg; + Emacs_Pix_Context ximg; ptrdiff_t nbytes; #ifdef HAVE_NTGUI HGDIOBJ prev; @@ -4841,7 +4846,7 @@ image_to_emacs_colors (struct frame *f, struct image *img, bool rgb_p) stored in ximg->data. */ static void -XPutPixel (XImagePtr ximg, int x, int y, COLORREF color) +XPutPixel (XImage *ximg, int x, int y, COLORREF color) { int width = ximg->info.bmiHeader.biWidth; unsigned char * pixel; @@ -4888,7 +4893,7 @@ static void image_from_emacs_colors (struct frame *f, struct image *img, Emacs_Color *colors) { int x, y; - XImagePtr oimg = NULL; + Emacs_Pix_Container oimg = NULL; Emacs_Color *p; init_color_table (); @@ -5160,13 +5165,13 @@ static void image_build_heuristic_mask (struct frame *f, struct image *img, Lisp_Object how) { - XImagePtr_or_DC ximg; + Emacs_Pix_Context ximg; #ifdef HAVE_NTGUI HGDIOBJ prev; char *mask_img; int row_width; #elif !defined HAVE_NS - XImagePtr mask_img; + Emacs_Pix_Container mask_img; #endif int x, y; bool use_img_background; @@ -5402,7 +5407,7 @@ pbm_load (struct frame *f, struct image *img) char *contents = NULL; char *end, *p; #ifndef USE_CAIRO - XImagePtr ximg; + Emacs_Pix_Container ximg; #endif specified_file = image_spec_value (img->spec, QCfile, NULL); @@ -5702,7 +5707,7 @@ pbm_load (struct frame *f, struct image *img) #else if (NILP (image_spec_value (img->spec, QCbackground, NULL))) /* Casting avoids a GCC warning. */ - IMAGE_BACKGROUND (img, f, (XImagePtr_or_DC)ximg); + IMAGE_BACKGROUND (img, f, (Emacs_Pix_Context)ximg); /* Put ximg into the image. */ image_put_x_image (f, img, ximg, 0); @@ -6024,7 +6029,7 @@ png_load_body (struct frame *f, struct image *img, struct png_load_context *c) cairo_surface_t *surface; uint32_t *dataptr; #else - XImagePtr ximg, mask_img = NULL; + Emacs_Pix_Container ximg, mask_img = NULL; #endif /* Find out what file to load. */ @@ -6337,7 +6342,7 @@ png_load_body (struct frame *f, struct image *img, struct png_load_context *c) #else /* Maybe fill in the background field while we have ximg handy. Casting avoids a GCC warning. */ - IMAGE_BACKGROUND (img, f, (XImagePtr_or_DC)ximg); + IMAGE_BACKGROUND (img, f, (Emacs_Pix_Context)ximg); /* Put ximg into the image. */ image_put_x_image (f, img, ximg, 0); @@ -6347,7 +6352,7 @@ png_load_body (struct frame *f, struct image *img, struct png_load_context *c) { /* Fill in the background_transparent field while we have the mask handy. Casting avoids a GCC warning. */ - image_background_transparent (img, f, (XImagePtr_or_DC)mask_img); + image_background_transparent (img, f, (Emacs_Pix_Context)mask_img); image_put_x_image (f, img, mask_img, 1); } @@ -6767,7 +6772,7 @@ jpeg_load_body (struct frame *f, struct image *img, int i, ir, ig, ib; #ifndef USE_CAIRO unsigned long *colors; - XImagePtr ximg = NULL; + Emacs_Pix_Container ximg = NULL; #endif /* Open the JPEG file. */ @@ -6957,7 +6962,7 @@ jpeg_load_body (struct frame *f, struct image *img, /* Maybe fill in the background field while we have ximg handy. */ if (NILP (image_spec_value (img->spec, QCbackground, NULL))) /* Casting avoids a GCC warning. */ - IMAGE_BACKGROUND (img, f, (XImagePtr_or_DC)ximg); + IMAGE_BACKGROUND (img, f, (Emacs_Pix_Context)ximg); /* Put ximg into the image. */ image_put_x_image (f, img, ximg, 0); @@ -7257,7 +7262,7 @@ tiff_load (struct frame *f, struct image *img) int width, height, x, y, count; uint32 *buf; int rc; - XImagePtr ximg; + Emacs_Pix_Container ximg; tiff_memory_source memsrc; Lisp_Object image; @@ -7427,7 +7432,7 @@ tiff_load (struct frame *f, struct image *img) /* Maybe fill in the background field while we have ximg handy. */ if (NILP (image_spec_value (img->spec, QCbackground, NULL))) /* Casting avoids a GCC warning on W32. */ - IMAGE_BACKGROUND (img, f, (XImagePtr_or_DC)ximg); + IMAGE_BACKGROUND (img, f, (Emacs_Pix_Context)ximg); /* Put ximg into the image. */ image_put_x_image (f, img, ximg, 0); @@ -7831,7 +7836,7 @@ gif_load (struct frame *f, struct image *img) } #else /* Create the X image and pixmap. */ - XImagePtr ximg; + Emacs_Pix_Container ximg; if (!image_create_x_image_and_pixmap (f, img, width, height, 0, &ximg, 0)) { gif_close (gif, NULL); @@ -8061,7 +8066,7 @@ gif_load (struct frame *f, struct image *img) /* Maybe fill in the background field while we have ximg handy. */ if (NILP (image_spec_value (img->spec, QCbackground, NULL))) /* Casting avoids a GCC warning. */ - IMAGE_BACKGROUND (img, f, (XImagePtr_or_DC)ximg); + IMAGE_BACKGROUND (img, f, (Emacs_Pix_Context)ximg); /* Put ximg into the image. */ image_put_x_image (f, img, ximg, 0); @@ -8445,7 +8450,7 @@ imagemagick_load_image (struct frame *f, struct image *img, size_t image_width, image_height; MagickBooleanType status; #ifndef USE_CAIRO - XImagePtr ximg; + Emacs_Pix_Container ximg; #endif int x, y; MagickWand *image_wand; @@ -9276,7 +9281,7 @@ svg_load_image (struct frame *f, struct image *img, char *contents, g_object_unref (pixbuf); #else /* Try to create a x pixmap to hold the svg pixmap. */ - XImagePtr ximg; + Emacs_Pix_Container ximg; if (!image_create_x_image_and_pixmap (f, img, width, height, 0, &ximg, 0)) { g_object_unref (pixbuf); @@ -9343,7 +9348,7 @@ svg_load_image (struct frame *f, struct image *img, char *contents, /* Maybe fill in the background field while we have ximg handy. Casting avoids a GCC warning. */ - IMAGE_BACKGROUND (img, f, (XImagePtr_or_DC)ximg); + IMAGE_BACKGROUND (img, f, (Emacs_Pix_Context)ximg); /* Put ximg into the image. */ image_put_x_image (f, img, ximg, 0); @@ -9571,7 +9576,7 @@ x_kill_gs_process (Emacs_Pixmap pixmap, struct frame *f) img->pixmap. */ if (x_mutable_colormap (FRAME_X_VISUAL (f))) { - XImagePtr ximg; + XImage *ximg; block_input (); commit a4fe9c70af7a60117480d3361541550341da801a Author: Alexander Gramiak Date: Fri May 10 09:45:57 2019 -0600 Replace XChar2b with unsigned in all font backends The xfont backend using XChar2b in its API doesn't mean that we should use it everywhere else. * src/dispextern.h (glyph_string): * src/ftcrfont.c (ftcrfont_draw): * src/ftxfont.c (ftxfont_draw): * src/w32term.c (w32_draw_glyphless_glyph_string_foreground): * src/xdisp.c (init_glyph_string, get_char_face_and_encoding) (get_glyph_face_and_encoding, get_char_glyph_code) (fill_gstring_glyph_string, fill_stretch_glyph_string) (normal_char_ascent_descent, gui_get_glyph_overhangs) (compute_overhangs_and_x, gui_produce_glyphs): * src/xfont.c (xfont_get_pcm, xfont_chars_supported, xfont_open) (xfont_encode_char, xfont_text_extents, xfont_draw) * src/xftfont.c (xftfont_draw): * src/xterm.c (x_compute_glyph_string_overhangs) (x_draw_glyphless_glyph_string_foreground): Use unsigned over XChar2b. * src/nsgui.h: * src/w32gui.h: * src/xterm.h: Remove XChar2b, STORE_XCHAR2B, XCHAR2B_BYTE1, and XCHAR2B_BYTE2 typedefs and macros. * src/font.h (font_driver): (ftfont_text_extents) * src/ftcrfont.c (ftcrfont_text_extents): * src/ftfont.c (ftfont_text_extents): * src/macfont.m (macfont_text_extents): * src/nsfont.m (nsfont_text_extents): * src/w32font.h (w32_font_text_extents): * src/font.c (xfont_text_extents): * src/xftfont.c (xftfont_text_extents): Make code parameter const. diff --git a/src/dispextern.h b/src/dispextern.h index 05e09301b0..eee515f2d2 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -1317,7 +1317,7 @@ struct glyph_string enum glyph_row_area area; /* Characters to be drawn, and number of characters. */ - XChar2b *char2b; + unsigned *char2b; int nchars; /* A face-override for drawing cursors, mouse face and similar. */ diff --git a/src/font.h b/src/font.h index 3720650a2e..9ca0c97dc5 100644 --- a/src/font.h +++ b/src/font.h @@ -647,7 +647,7 @@ struct font_driver the font FONT and the sequence of glyph codes CODE, and store the result in METRICS. */ void (*text_extents) (struct font *font, - unsigned *code, int nglyphs, + const unsigned *code, int nglyphs, struct font_metrics *metrics); #ifdef HAVE_WINDOW_SYSTEM @@ -894,7 +894,7 @@ extern Lisp_Object ftfont_shape (Lisp_Object); extern unsigned ftfont_encode_char (struct font *, int); extern void ftfont_close (struct font *); extern void ftfont_filter_properties (Lisp_Object, Lisp_Object); -extern void ftfont_text_extents (struct font *, unsigned *, int, +extern void ftfont_text_extents (struct font *, const unsigned *, int, struct font_metrics *); extern void syms_of_ftfont (void); #endif /* HAVE_FREETYPE */ diff --git a/src/ftcrfont.c b/src/ftcrfont.c index e7c73eac4d..606db0b949 100644 --- a/src/ftcrfont.c +++ b/src/ftcrfont.c @@ -242,7 +242,7 @@ ftcrfont_close (struct font *font) static void ftcrfont_text_extents (struct font *font, - unsigned *code, + const unsigned *code, int nglyphs, struct font_metrics *metrics) { @@ -341,13 +341,12 @@ ftcrfont_draw (struct glyph_string *s, glyphs = alloca (sizeof (cairo_glyph_t) * len); for (i = 0; i < len; i++) { - unsigned code = ((XCHAR2B_BYTE1 (s->char2b + from + i) << 8) - | XCHAR2B_BYTE2 (s->char2b + from + i)); - - glyphs[i].index = code; + glyphs[i].index = s->char2b[from + i]; glyphs[i].x = x; glyphs[i].y = y; - x += (s->padding_p ? 1 : ftcrfont_glyph_extents (s->font, code, NULL)); + x += (s->padding_p ? 1 : ftcrfont_glyph_extents (s->font, + glyphs[i].index, + NULL)); } x_set_cr_source_with_gc_foreground (f, s->gc); diff --git a/src/ftfont.c b/src/ftfont.c index 4770c3c40b..f17bd9ab3f 100644 --- a/src/ftfont.c +++ b/src/ftfont.c @@ -1353,7 +1353,7 @@ ftfont_encode_char (struct font *font, int c) } void -ftfont_text_extents (struct font *font, unsigned int *code, +ftfont_text_extents (struct font *font, const unsigned int *code, int nglyphs, struct font_metrics *metrics) { struct font_info *ftfont_info = (struct font_info *) font; diff --git a/src/ftxfont.c b/src/ftxfont.c index f9a69c3515..8bce7f10f1 100644 --- a/src/ftxfont.c +++ b/src/ftxfont.c @@ -252,7 +252,7 @@ ftxfont_draw (struct glyph_string *s, int from, int to, int x, int y, struct font *font = s->font; XPoint p[0x700]; int n[7]; - unsigned *code; + unsigned *code = s->char2b + from; int len = to - from; int i; GC *gcs; @@ -260,14 +260,9 @@ ftxfont_draw (struct glyph_string *s, int from, int to, int x, int y, n[0] = n[1] = n[2] = n[3] = n[4] = n[5] = n[6] = 0; - USE_SAFE_ALLOCA; - SAFE_NALLOCA (code, 1, len); block_input (); if (with_background) ftxfont_draw_background (f, font, s->gc, x, y, s->width); - for (i = 0; i < len; i++) - code[i] = ((XCHAR2B_BYTE1 (s->char2b + from + i) << 8) - | XCHAR2B_BYTE2 (s->char2b + from + i)); if (face->gc == s->gc) { @@ -312,7 +307,6 @@ ftxfont_draw (struct glyph_string *s, int from, int to, int x, int y, } unblock_input (); - SAFE_FREE (); return len; } diff --git a/src/macfont.m b/src/macfont.m index 0ade77e733..d69af67981 100644 --- a/src/macfont.m +++ b/src/macfont.m @@ -1639,7 +1639,7 @@ static CGGlyph macfont_get_glyph_for_cid (struct font *font, static void macfont_close (struct font *); static int macfont_has_char (Lisp_Object, int); static unsigned macfont_encode_char (struct font *, int); -static void macfont_text_extents (struct font *, unsigned int *, int, +static void macfont_text_extents (struct font *, const unsigned int *, int, struct font_metrics *); static int macfont_draw (struct glyph_string *, int, int, int, int, bool); static Lisp_Object macfont_shape (Lisp_Object); @@ -2735,7 +2735,7 @@ So we use CTFontDescriptorCreateMatchingFontDescriptor (no } static void -macfont_text_extents (struct font *font, unsigned int *code, int nglyphs, +macfont_text_extents (struct font *font, const unsigned int *code, int nglyphs, struct font_metrics *metrics) { int width, i; diff --git a/src/nsfont.m b/src/nsfont.m index 9721e48935..eca97ab86c 100644 --- a/src/nsfont.m +++ b/src/nsfont.m @@ -945,7 +945,7 @@ when setting family in ns_spec_to_descriptor(). */ of METRICS. The glyphs are specified by their glyph codes in CODE (length NGLYPHS). */ static void -nsfont_text_extents (struct font *font, unsigned int *code, +nsfont_text_extents (struct font *font, const unsigned int *code, int nglyphs, struct font_metrics *metrics) { struct nsfont_info *font_info = (struct nsfont_info *)font; diff --git a/src/nsgui.h b/src/nsgui.h index 87c06e68a2..c21953593a 100644 --- a/src/nsgui.h +++ b/src/nsgui.h @@ -58,21 +58,6 @@ typedef struct _XCharStruct int descent; } XCharStruct; -/* Fake structure from Xlib.h to represent two-byte characters. */ -#ifndef __OBJC__ -typedef unsigned short unichar; -#endif -typedef unichar XChar2b; - -#define STORE_XCHAR2B(chp, b1, b2) \ - (*(chp) = ((XChar2b)((((b1) & 0x00ff) << 8) | ((b2) & 0x00ff)))) - -#define XCHAR2B_BYTE1(chp) \ - ((*(chp) & 0xff00) >> 8) - -#define XCHAR2B_BYTE2(chp) \ - (*(chp) & 0x00ff) - /* Used in xdisp.c when comparing faces and frame colors. */ extern unsigned long ns_color_index_to_rgba(int idx, struct frame *f); diff --git a/src/w32font.c b/src/w32font.c index 848016da1c..bd68e22cc9 100644 --- a/src/w32font.c +++ b/src/w32font.c @@ -433,7 +433,7 @@ w32font_encode_char (struct font *font, int c) CODE (length NGLYPHS). Apparently metrics can be NULL, in this case just return the overall width. */ void -w32font_text_extents (struct font *font, unsigned *code, +w32font_text_extents (struct font *font, const unsigned *code, int nglyphs, struct font_metrics *metrics) { int i; diff --git a/src/w32font.h b/src/w32font.h index 65f42a3178..c7bb7f3057 100644 --- a/src/w32font.h +++ b/src/w32font.h @@ -74,7 +74,7 @@ int w32font_open_internal (struct frame *f, Lisp_Object font_entity, int pixel_size, Lisp_Object font_object); void w32font_close (struct font *font); int w32font_has_char (Lisp_Object entity, int c); -void w32font_text_extents (struct font *font, unsigned *code, int nglyphs, +void w32font_text_extents (struct font *font, const unsigned *code, int nglyphs, struct font_metrics *metrics); int w32font_draw (struct glyph_string *s, int from, int to, int x, int y, bool with_background); diff --git a/src/w32gui.h b/src/w32gui.h index 5e1730b92c..62bad33c19 100644 --- a/src/w32gui.h +++ b/src/w32gui.h @@ -33,19 +33,6 @@ typedef HWND Window; typedef HDC Display; /* HDC so it doesn't conflict with xpm lib. */ typedef HCURSOR Emacs_Cursor; -#define XChar2b wchar_t - -/* Dealing with bits of wchar_t as if they were an XChar2b. */ -#define STORE_XCHAR2B(chp, byte1, byte2) \ - ((*(chp)) = ((XChar2b)((((byte1) & 0x00ff) << 8) | ((byte2) & 0x00ff)))) - -#define XCHAR2B_BYTE1(chp) \ - (((*(chp)) & 0xff00) >> 8) - -#define XCHAR2B_BYTE2(chp) \ - ((*(chp)) & 0x00ff) - - /* Windows equivalent of XImage. */ typedef struct _XImage { diff --git a/src/w32term.c b/src/w32term.c index 4a93b2a404..5726124b0e 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -1097,14 +1097,10 @@ w32_compute_glyph_string_overhangs (struct glyph_string *s) && s->first_glyph->type == CHAR_GLYPH && !s->font_not_found_p) { - unsigned *code = alloca (sizeof (unsigned) * s->nchars); struct font *font = s->font; struct font_metrics metrics; - int i; - for (i = 0; i < s->nchars; i++) - code[i] = s->char2b[i]; - font->driver->text_extents (font, code, s->nchars, &metrics); + font->driver->text_extents (font, s->char2b, s->nchars, &metrics); s->right_overhang = (metrics.rbearing > metrics.width ? metrics.rbearing - metrics.width : 0); s->left_overhang = metrics.lbearing < 0 ? -metrics.lbearing : 0; @@ -1349,7 +1345,7 @@ static void w32_draw_glyphless_glyph_string_foreground (struct glyph_string *s) { struct glyph *glyph = s->first_glyph; - XChar2b char2b[8]; + unsigned char2b[8]; int x, i, j; bool with_background; @@ -1406,16 +1402,12 @@ w32_draw_glyphless_glyph_string_foreground (struct glyph_string *s) { struct font *font = s->font; int upper_len = (len + 1) / 2; - unsigned code; HFONT old_font; old_font = SelectObject (s->hdc, FONT_HANDLE (font)); /* It is certain that all LEN characters in STR are ASCII. */ for (j = 0; j < len; j++) - { - code = font->driver->encode_char (font, str[j]); - STORE_XCHAR2B (char2b + j, code >> 8, code & 0xFF); - } + char2b[j] = font->driver->encode_char (font, str[j]) & 0xFFFF; font->driver->draw (s, 0, upper_len, x + glyph->slice.glyphless.upper_xoff, s->ybase + glyph->slice.glyphless.upper_yoff, diff --git a/src/xdisp.c b/src/xdisp.c index 6929ca4b4b..c561ea9e36 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -25914,7 +25914,7 @@ dump_glyph_string (struct glyph_string *s) #endif /* GLYPH_DEBUG */ /* Initialize glyph string S. CHAR2B is a suitably allocated vector - of XChar2b structures for S; it can't be allocated in + of 2-byte unsigned integers for S; it can't be allocated in init_glyph_string because it must be allocated via `alloca'. W is the window on which S is drawn. ROW and AREA are the glyph row and area within the row from which S is constructed. START is the @@ -25944,7 +25944,7 @@ init_glyph_string (struct glyph_string *s, #ifdef HAVE_NTGUI HDC hdc, #endif - XChar2b *char2b, struct window *w, struct glyph_row *row, + unsigned *char2b, struct window *w, struct glyph_row *row, enum glyph_row_area area, int start, enum draw_glyphs_face hl) { memset (s, 0, sizeof *s); @@ -26023,7 +26023,7 @@ append_glyph_string (struct glyph_string **head, struct glyph_string **tail, static struct face * get_char_face_and_encoding (struct frame *f, int c, int face_id, - XChar2b *char2b, bool display_p) + unsigned *char2b, bool display_p) { struct face *face = FACE_FROM_ID (f, face_id); unsigned code = 0; @@ -26035,7 +26035,8 @@ get_char_face_and_encoding (struct frame *f, int c, int face_id, if (code == FONT_INVALID_CODE) code = 0; } - STORE_XCHAR2B (char2b, (code >> 8), (code & 0xFF)); + /* Ensure that the code is only 2 bytes wide. */ + *char2b = code & 0xFFFF; /* Make sure X resources of the face are allocated. */ #ifdef HAVE_X_WINDOWS @@ -26056,7 +26057,7 @@ get_char_face_and_encoding (struct frame *f, int c, int face_id, static struct face * get_glyph_face_and_encoding (struct frame *f, struct glyph *glyph, - XChar2b *char2b) + unsigned *char2b) { struct face *face; unsigned code = 0; @@ -26078,7 +26079,8 @@ get_glyph_face_and_encoding (struct frame *f, struct glyph *glyph, code = 0; } - STORE_XCHAR2B (char2b, (code >> 8), (code & 0xFF)); + /* Ensure that the code is only 2 bytes wide. */ + *char2b = code & 0xFFFF; return face; } @@ -26087,7 +26089,7 @@ get_glyph_face_and_encoding (struct frame *f, struct glyph *glyph, Return true iff FONT has a glyph for C. */ static bool -get_char_glyph_code (int c, struct font *font, XChar2b *char2b) +get_char_glyph_code (int c, struct font *font, unsigned *char2b) { unsigned code; @@ -26098,7 +26100,9 @@ get_char_glyph_code (int c, struct font *font, XChar2b *char2b) if (code == FONT_INVALID_CODE) return false; - STORE_XCHAR2B (char2b, (code >> 8), (code & 0xFF)); + + /* Ensure that the code is only 2 bytes wide. */ + *char2b = code & 0xFFFF; return true; } @@ -26211,7 +26215,8 @@ fill_gstring_glyph_string (struct glyph_string *s, int face_id, Lisp_Object lglyph = LGSTRING_GLYPH (lgstring, i); unsigned code = LGLYPH_CODE (lglyph); - STORE_XCHAR2B ((s->char2b + i), code >> 8, code & 0xFF); + /* Ensure that the code is only 2 bytes wide. */ + s->char2b[i] = code & 0xFFFF; } s->width = composition_gstring_width (lgstring, s->cmp_from, s->cmp_to, NULL); return glyph - s->row->glyphs[s->area]; @@ -26390,17 +26395,16 @@ fill_stretch_glyph_string (struct glyph_string *s, int start, int end) } static struct font_metrics * -get_per_char_metric (struct font *font, XChar2b *char2b) +get_per_char_metric (struct font *font, const unsigned *char2b) { static struct font_metrics metrics; - unsigned code; if (! font) return NULL; - code = (XCHAR2B_BYTE1 (char2b) << 8) | XCHAR2B_BYTE2 (char2b); - if (code == FONT_INVALID_CODE) + if (*char2b == FONT_INVALID_CODE) return NULL; - font->driver->text_extents (font, &code, 1, &metrics); + + font->driver->text_extents (font, char2b, 1, &metrics); return &metrics; } @@ -26418,7 +26422,7 @@ normal_char_ascent_descent (struct font *font, int c, int *ascent, int *descent) if (FONT_TOO_HIGH (font)) { - XChar2b char2b; + unsigned char2b; /* Get metrics of C, defaulting to a reasonably sized ASCII character. */ @@ -26465,7 +26469,7 @@ gui_get_glyph_overhangs (struct glyph *glyph, struct frame *f, int *left, int *r if (glyph->type == CHAR_GLYPH) { - XChar2b char2b; + unsigned char2b; struct face *face = get_glyph_face_and_encoding (f, glyph, &char2b); if (face->font) { @@ -26779,7 +26783,7 @@ compute_overhangs_and_x (struct glyph_string *s, int x, bool backward_p) do \ { \ int face_id; \ - XChar2b *char2b; \ + unsigned *char2b; \ \ face_id = (row)->glyphs[area][START].face_id; \ \ @@ -26808,7 +26812,7 @@ compute_overhangs_and_x (struct glyph_string *s, int x, bool backward_p) struct face *base_face = FACE_FROM_ID (f, face_id); \ ptrdiff_t cmp_id = (row)->glyphs[area][START].u.cmp.id; \ struct composition *cmp = composition_table[cmp_id]; \ - XChar2b *char2b; \ + unsigned *char2b; \ struct glyph_string *first_s = NULL; \ int n; \ \ @@ -26840,7 +26844,7 @@ compute_overhangs_and_x (struct glyph_string *s, int x, bool backward_p) #define BUILD_GSTRING_GLYPH_STRING(START, END, HEAD, TAIL, HL, X, LAST_X) \ do { \ int face_id; \ - XChar2b *char2b; \ + unsigned *char2b; \ Lisp_Object gstring; \ \ face_id = (row)->glyphs[area][START].face_id; \ @@ -28433,7 +28437,7 @@ gui_produce_glyphs (struct it *it) if (it->what == IT_CHARACTER) { - XChar2b char2b; + unsigned char2b; struct face *face = FACE_FROM_ID (it->f, it->face_id); struct font *font = face->font; struct font_metrics *pcm = NULL; @@ -28832,7 +28836,7 @@ gui_produce_glyphs (struct it *it) int lbearing, rbearing; int i, width, ascent, descent; int c; - XChar2b char2b; + unsigned char2b; struct font_metrics *pcm; ptrdiff_t pos; diff --git a/src/xfont.c b/src/xfont.c index ff80df407d..a402f77063 100644 --- a/src/xfont.c +++ b/src/xfont.c @@ -46,18 +46,20 @@ struct xfont_info /* Prototypes of support functions. */ -static XCharStruct *xfont_get_pcm (XFontStruct *, XChar2b *); +static XCharStruct *xfont_get_pcm (XFontStruct *, unsigned char2b); /* Get metrics of character CHAR2B in XFONT. Value is null if CHAR2B is not contained in the font. */ static XCharStruct * -xfont_get_pcm (XFontStruct *xfont, XChar2b *char2b) +xfont_get_pcm (XFontStruct *xfont, unsigned char2b) { /* The result metric information. */ XCharStruct *pcm = NULL; + const unsigned char byte1 = char2b >> 8; + const unsigned char byte2 = char2b & 0xFF; - eassert (xfont && char2b); + eassert (xfont); if (xfont->per_char != NULL) { @@ -66,13 +68,13 @@ xfont_get_pcm (XFontStruct *xfont, XChar2b *char2b) /* min_char_or_byte2 specifies the linear character index corresponding to the first element of the per_char array, max_char_or_byte2 is the index of the last character. A - character with non-zero CHAR2B->byte1 is not in the font. + character with non-zero byte1 is not in the font. A character with byte2 less than min_char_or_byte2 or greater max_char_or_byte2 is not in the font. */ - if (char2b->byte1 == 0 - && char2b->byte2 >= xfont->min_char_or_byte2 - && char2b->byte2 <= xfont->max_char_or_byte2) - pcm = xfont->per_char + char2b->byte2 - xfont->min_char_or_byte2; + if (byte1 == 0 + && byte2 >= xfont->min_char_or_byte2 + && byte2 <= xfont->max_char_or_byte2) + pcm = xfont->per_char + byte2 - xfont->min_char_or_byte2; } else { @@ -89,14 +91,14 @@ xfont_get_pcm (XFontStruct *xfont, XChar2b *char2b) D = max_char_or_byte2 - min_char_or_byte2 + 1 / = integer division \ = integer modulus */ - if (char2b->byte1 >= xfont->min_byte1 - && char2b->byte1 <= xfont->max_byte1 - && char2b->byte2 >= xfont->min_char_or_byte2 - && char2b->byte2 <= xfont->max_char_or_byte2) + if (byte1 >= xfont->min_byte1 + && byte1 <= xfont->max_byte1 + && byte2 >= xfont->min_char_or_byte2 + && byte2 <= xfont->max_char_or_byte2) pcm = (xfont->per_char + ((xfont->max_char_or_byte2 - xfont->min_char_or_byte2 + 1) - * (char2b->byte1 - xfont->min_byte1)) - + (char2b->byte2 - xfont->min_char_or_byte2)); + * (byte1 - xfont->min_byte1)) + + (byte2 - xfont->min_char_or_byte2)); } } else @@ -104,8 +106,8 @@ xfont_get_pcm (XFontStruct *xfont, XChar2b *char2b) /* If the per_char pointer is null, all glyphs between the first and last character indexes inclusive have the same information, as given by both min_bounds and max_bounds. */ - if (char2b->byte2 >= xfont->min_char_or_byte2 - && char2b->byte2 <= xfont->max_char_or_byte2) + if (byte2 >= xfont->min_char_or_byte2 + && byte2 <= xfont->max_char_or_byte2) pcm = &xfont->max_bounds; } @@ -193,7 +195,6 @@ xfont_chars_supported (Lisp_Object chars, XFontStruct *xfont, { int c = XFIXNUM (XCAR (chars)); unsigned code = ENCODE_CHAR (charset, c); - XChar2b char2b; if (code == CHARSET_INVALID_CODE (charset)) break; @@ -201,9 +202,7 @@ xfont_chars_supported (Lisp_Object chars, XFontStruct *xfont, continue; if (code >= 0x10000) break; - char2b.byte1 = code >> 8; - char2b.byte2 = code & 0xFF; - if (! xfont_get_pcm (xfont, &char2b)) + if (! xfont_get_pcm (xfont, code)) break; } return (NILP (chars)); @@ -216,7 +215,6 @@ xfont_chars_supported (Lisp_Object chars, XFontStruct *xfont, { int c = XFIXNUM (AREF (chars, i)); unsigned code = ENCODE_CHAR (charset, c); - XChar2b char2b; if (code == CHARSET_INVALID_CODE (charset)) continue; @@ -224,9 +222,7 @@ xfont_chars_supported (Lisp_Object chars, XFontStruct *xfont, break; if (code >= 0x10000) continue; - char2b.byte1 = code >> 8; - char2b.byte2 = code & 0xFF; - if (xfont_get_pcm (xfont, &char2b)) + if (xfont_get_pcm (xfont, code)) break; } return (i >= 0); @@ -801,11 +797,9 @@ xfont_open (struct frame *f, Lisp_Object entity, int pixel_size) else { XCharStruct *pcm; - XChar2b char2b; Lisp_Object val; - char2b.byte1 = 0x00, char2b.byte2 = 0x20; - pcm = xfont_get_pcm (xfont, &char2b); + pcm = xfont_get_pcm (xfont, 0x20); if (pcm) font->space_width = pcm->width; else @@ -823,8 +817,8 @@ xfont_open (struct frame *f, Lisp_Object entity, int pixel_size) { int width = font->space_width, n = pcm != NULL; - for (char2b.byte2 = 33; char2b.byte2 <= 126; char2b.byte2++) - if ((pcm = xfont_get_pcm (xfont, &char2b)) != NULL) + for (unsigned char2b = 33; char2b <= 126; ++char2b) + if ((pcm = xfont_get_pcm (xfont, char2b)) != NULL) width += pcm->width, n++; if (n > 0) font->average_width = width / n; @@ -934,7 +928,6 @@ xfont_encode_char (struct font *font, int c) XFontStruct *xfont = ((struct xfont_info *) font)->xfont; struct charset *charset; unsigned code; - XChar2b char2b; charset = CHARSET_FROM_ID (font->encoding_charset); code = ENCODE_CHAR (charset, c); @@ -946,13 +939,11 @@ xfont_encode_char (struct font *font, int c) return (ENCODE_CHAR (charset, c) != CHARSET_INVALID_CODE (charset) ? code : FONT_INVALID_CODE); } - char2b.byte1 = code >> 8; - char2b.byte2 = code & 0xFF; - return (xfont_get_pcm (xfont, &char2b) ? code : FONT_INVALID_CODE); + return (xfont_get_pcm (xfont, code) ? code : FONT_INVALID_CODE); } static void -xfont_text_extents (struct font *font, unsigned int *code, +xfont_text_extents (struct font *font, const unsigned int *code, int nglyphs, struct font_metrics *metrics) { XFontStruct *xfont = ((struct xfont_info *) font)->xfont; @@ -961,13 +952,11 @@ xfont_text_extents (struct font *font, unsigned int *code, for (i = 0, first = true; i < nglyphs; i++) { - XChar2b char2b; static XCharStruct *pcm; if (code[i] >= 0x10000) continue; - char2b.byte1 = code[i] >> 8, char2b.byte2 = code[i] & 0xFF; - pcm = xfont_get_pcm (xfont, &char2b); + pcm = xfont_get_pcm (xfont, code[i]); if (! pcm) continue; if (first) @@ -1017,7 +1006,7 @@ xfont_draw (struct glyph_string *s, int from, int to, int x, int y, USE_SAFE_ALLOCA; char *str = SAFE_ALLOCA (len); for (i = 0; i < len ; i++) - str[i] = XCHAR2B_BYTE2 (s->char2b + from + i); + str[i] = s->char2b[from + i] & 0xFF; block_input (); if (with_background) { @@ -1049,21 +1038,41 @@ xfont_draw (struct glyph_string *s, int from, int to, int x, int y, { if (s->padding_p) for (i = 0; i < len; i++) - XDrawImageString16 (display, FRAME_X_DRAWABLE (s->f), - gc, x + i, y, s->char2b + from + i, 1); + { + const unsigned code = s->char2b[from + i]; + const XChar2b char2b = { .byte1 = code >> 8, + .byte2 = code & 0xFF }; + XDrawImageString16 (display, FRAME_X_DRAWABLE (s->f), + gc, x + i, y, &char2b, 1); + } else - XDrawImageString16 (display, FRAME_X_DRAWABLE (s->f), - gc, x, y, s->char2b + from, len); + { + const unsigned code = s->char2b[from]; + const XChar2b char2b = { .byte1 = code >> 8, + .byte2 = code & 0xFF }; + XDrawImageString16 (display, FRAME_X_DRAWABLE (s->f), + gc, x, y, &char2b, len); + } } else { if (s->padding_p) for (i = 0; i < len; i++) - XDrawString16 (display, FRAME_X_DRAWABLE (s->f), - gc, x + i, y, s->char2b + from + i, 1); + { + const unsigned code = s->char2b[from + i]; + const XChar2b char2b = { .byte1 = code >> 8, + .byte2 = code & 0xFF }; + XDrawString16 (display, FRAME_X_DRAWABLE (s->f), + gc, x + i, y, &char2b, 1); + } else - XDrawString16 (display, FRAME_X_DRAWABLE (s->f), - gc, x, y, s->char2b + from, len); + { + const unsigned code = s->char2b[from]; + const XChar2b char2b = { .byte1 = code >> 8, + .byte2 = code & 0xFF }; + XDrawString16 (display, FRAME_X_DRAWABLE (s->f), + gc, x, y, &char2b, len); + } } unblock_input (); diff --git a/src/xftfont.c b/src/xftfont.c index 8a4516f7f9..2edc51fe35 100644 --- a/src/xftfont.c +++ b/src/xftfont.c @@ -536,7 +536,7 @@ xftfont_encode_char (struct font *font, int c) } static void -xftfont_text_extents (struct font *font, unsigned int *code, +xftfont_text_extents (struct font *font, const unsigned int *code, int nglyphs, struct font_metrics *metrics) { struct font_info *xftfont_info = (struct font_info *) font; @@ -621,8 +621,7 @@ xftfont_draw (struct glyph_string *s, int from, int to, int x, int y, } code = alloca (sizeof (FT_UInt) * len); for (i = 0; i < len; i++) - code[i] = ((XCHAR2B_BYTE1 (s->char2b + from + i) << 8) - | XCHAR2B_BYTE2 (s->char2b + from + i)); + code[i] = s->char2b[from + i]; if (s->padding_p) for (i = 0; i < len; i++) diff --git a/src/xterm.c b/src/xterm.c index 2de6198359..bff9f74a17 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -1599,13 +1599,8 @@ x_compute_glyph_string_overhangs (struct glyph_string *s) if (s->first_glyph->type == CHAR_GLYPH) { - unsigned *code = alloca (sizeof (unsigned) * s->nchars); struct font *font = s->font; - int i; - - for (i = 0; i < s->nchars; i++) - code[i] = (s->char2b[i].byte1 << 8) | s->char2b[i].byte2; - font->driver->text_extents (font, code, s->nchars, &metrics); + font->driver->text_extents (font, s->char2b, s->nchars, &metrics); } else { @@ -1831,7 +1826,7 @@ static void x_draw_glyphless_glyph_string_foreground (struct glyph_string *s) { struct glyph *glyph = s->first_glyph; - XChar2b char2b[8]; + unsigned char2b[8]; int x, i, j; /* If first glyph of S has a left box line, start drawing the text @@ -1882,14 +1877,10 @@ x_draw_glyphless_glyph_string_foreground (struct glyph_string *s) if (str) { int upper_len = (len + 1) / 2; - unsigned code; /* It is assured that all LEN characters in STR is ASCII. */ for (j = 0; j < len; j++) - { - code = s->font->driver->encode_char (s->font, str[j]); - STORE_XCHAR2B (char2b + j, code >> 8, code & 0xFF); - } + char2b[j] = s->font->driver->encode_char (s->font, str[j]) & 0xFFFF; s->font->driver->draw (s, 0, upper_len, x + glyph->slice.glyphless.upper_xoff, s->ybase + glyph->slice.glyphless.upper_yoff, diff --git a/src/xterm.h b/src/xterm.h index 5447304578..ce1443c381 100644 --- a/src/xterm.h +++ b/src/xterm.h @@ -1262,15 +1262,6 @@ extern void x_session_close (void); #define FRAME_X_EMBEDDED_P(f) (FRAME_X_OUTPUT(f)->explicit_parent != 0) -#define STORE_XCHAR2B(chp, b1, b2) \ - ((chp)->byte1 = (b1), (chp)->byte2 = (b2)) - -#define XCHAR2B_BYTE1(chp) \ - ((chp)->byte1) - -#define XCHAR2B_BYTE2(chp) \ - ((chp)->byte2) - #define STORE_NATIVE_RECT(nr,rx,ry,rwidth,rheight) \ ((nr).x = (rx), \ (nr).y = (ry), \ commit b3d3c0daa49f5cbed7c58c7508d4d36dba3757e5 Author: Alexander Gramiak Date: Thu May 9 22:08:06 2019 -0600 Introduce Emacs_GC struct and typedef * src/dispextern.h [HAVE_X_WINDOWS]: Alias Emacs_GC to XGCValues. [!HAVE_X_WINDOWS]: Define Emacs_GC, GCForeground, and GCBackground. * src/nsgui.h: * src/w32gui.h:Remove obsolete XGCValues, GC, GCForeground, GCBackground, and GCFont definitions. * src/w32fns.c (w32_make_gc): Do not set unused font field. * src/w32term.c: Use Emacs_GC over XGCValues. Do not set unused font field. * src/xfaces.c: Use Emacs_GC over XGCValues and GC. diff --git a/src/dispextern.h b/src/dispextern.h index 2077f891d1..05e09301b0 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -40,6 +40,7 @@ typedef Cursor Emacs_Cursor; #define No_Cursor (None) typedef Pixmap Emacs_Pixmap; typedef XRectangle Emacs_Rectangle; +typedef XGCValues Emacs_GC; #else /* !HAVE_X_WINDOWS */ /* XColor-like struct used by non-X code. */ @@ -59,6 +60,20 @@ typedef struct int x, y; unsigned width, height; } Emacs_Rectangle; + +/* XGCValues-like struct used by non-X GUI code. */ +typedef struct +{ + unsigned long foreground; + unsigned long background; +} Emacs_GC; + +/* Mask values to select foreground/background. */ +/* FIXME: The GC handling in w32 really should be redesigned as to not + need these. */ +#define GCForeground 0x01 +#define GCBackground 0x02 + #endif /* HAVE_X_WINDOWS */ #ifdef MSDOS @@ -1363,7 +1378,7 @@ struct glyph_string GC gc; #endif #if defined (HAVE_NTGUI) - XGCValues *gc; + Emacs_GC *gc; HDC hdc; #endif @@ -1605,8 +1620,11 @@ struct face /* If non-zero, this is a GC that we can use without modification for drawing the characters in this face. */ +# ifdef HAVE_X_WINDOWS GC gc; - +# else + Emacs_GC *gc; +# endif /* Background stipple or bitmap used for this face. This is an id as returned from load_pixmap. */ ptrdiff_t stipple; diff --git a/src/nsgui.h b/src/nsgui.h index 592e21f60a..87c06e68a2 100644 --- a/src/nsgui.h +++ b/src/nsgui.h @@ -76,25 +76,6 @@ typedef unichar XChar2b; /* Used in xdisp.c when comparing faces and frame colors. */ extern unsigned long ns_color_index_to_rgba(int idx, struct frame *f); -/* XXX: xfaces requires these structures, but the question is are we - forced to use them? */ -typedef struct _XGCValues -{ - unsigned long foreground; - unsigned long background; -#ifdef __OBJC__ - struct ns_font *font; -#else - void *font; -#endif -} XGCValues; - -typedef XGCValues * GC; - -#define GCForeground 0x01 -#define GCBackground 0x02 -#define GCFont 0x03 - #ifdef __OBJC__ typedef id Emacs_Pixmap; #else diff --git a/src/w32fns.c b/src/w32fns.c index d74e968d37..bb74fcc164 100644 --- a/src/w32fns.c +++ b/src/w32fns.c @@ -5559,22 +5559,19 @@ w32_icon (struct frame *f, Lisp_Object parms) static void w32_make_gc (struct frame *f) { - XGCValues gc_values; + Emacs_GC gc_values; block_input (); /* Create the GC's of this frame. Note that many default values are used. */ - /* Normal video */ - gc_values.font = FRAME_FONT (f); - /* Cursor has cursor-color background, background-color foreground. */ gc_values.foreground = FRAME_BACKGROUND_PIXEL (f); gc_values.background = f->output_data.w32->cursor_pixel; f->output_data.w32->cursor_gc = XCreateGC (NULL, FRAME_W32_WINDOW (f), - (GCFont | GCForeground | GCBackground), + (GCForeground | GCBackground), &gc_values); /* Reliefs. */ diff --git a/src/w32gui.h b/src/w32gui.h index 69b6a556ff..5e1730b92c 100644 --- a/src/w32gui.h +++ b/src/w32gui.h @@ -27,21 +27,8 @@ along with GNU Emacs. If not, see . */ #define local_alloc(n) (HeapAlloc (local_heap, HEAP_ZERO_MEMORY, (n))) #define local_free(p) (HeapFree (local_heap, 0, ((LPVOID) (p)))) -/* Emulate X GC's by keeping color and font info in a structure. */ -typedef struct _XGCValues -{ - COLORREF foreground; - COLORREF background; - struct font *font; -} XGCValues; - -#define GCForeground 0x01 -#define GCBackground 0x02 -#define GCFont 0x03 - typedef HBITMAP Emacs_Pixmap; -typedef XGCValues * GC; typedef HWND Window; typedef HDC Display; /* HDC so it doesn't conflict with xpm lib. */ typedef HCURSOR Emacs_Cursor; diff --git a/src/w32term.c b/src/w32term.c index 5c492b3fa9..4a93b2a404 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -237,23 +237,21 @@ record_event (char *locus, int type) static void -XChangeGC (void *ignore, XGCValues *gc, unsigned long mask, - XGCValues *xgcv) +XChangeGC (void *ignore, Emacs_GC *gc, unsigned long mask, + Emacs_GC *egc) { if (mask & GCForeground) - gc->foreground = xgcv->foreground; + gc->foreground = egc->foreground; if (mask & GCBackground) - gc->background = xgcv->background; - if (mask & GCFont) - gc->font = xgcv->font; + gc->background = egc->background; } -XGCValues * -XCreateGC (void *ignore, HWND wignore, unsigned long mask, XGCValues *xgcv) +Emacs_GC * +XCreateGC (void *ignore, HWND wignore, unsigned long mask, Emacs_GC *egc) { - XGCValues *gc = xzalloc (sizeof (XGCValues)); + Emacs_GC *gc = xzalloc (sizeof (*gc)); - XChangeGC (ignore, gc, mask, xgcv); + XChangeGC (ignore, gc, mask, egc); return gc; } @@ -396,7 +394,7 @@ w32_draw_underwave (struct glyph_string *s, COLORREF color) /* Draw a hollow rectangle at the specified position. */ static void -w32_draw_rectangle (HDC hdc, XGCValues *gc, int x, int y, +w32_draw_rectangle (HDC hdc, Emacs_GC *gc, int x, int y, int width, int height) { HBRUSH hb, oldhb; @@ -906,38 +904,37 @@ w32_set_cursor_gc (struct glyph_string *s) else { /* Cursor on non-default face: must merge. */ - XGCValues xgcv; + Emacs_GC egc; unsigned long mask; - xgcv.background = s->f->output_data.w32->cursor_pixel; - xgcv.foreground = s->face->background; + egc.background = s->f->output_data.w32->cursor_pixel; + egc.foreground = s->face->background; /* If the glyph would be invisible, try a different foreground. */ - if (xgcv.foreground == xgcv.background) - xgcv.foreground = s->face->foreground; - if (xgcv.foreground == xgcv.background) - xgcv.foreground = s->f->output_data.w32->cursor_foreground_pixel; - if (xgcv.foreground == xgcv.background) - xgcv.foreground = s->face->foreground; + if (egc.foreground == egc.background) + egc.foreground = s->face->foreground; + if (egc.foreground == egc.background) + egc.foreground = s->f->output_data.w32->cursor_foreground_pixel; + if (egc.foreground == egc.background) + egc.foreground = s->face->foreground; /* Make sure the cursor is distinct from text in this face. */ - if (xgcv.background == s->face->background - && xgcv.foreground == s->face->foreground) + if (egc.background == s->face->background + && egc.foreground == s->face->foreground) { - xgcv.background = s->face->foreground; - xgcv.foreground = s->face->background; + egc.background = s->face->foreground; + egc.foreground = s->face->background; } IF_DEBUG (w32_check_font (s->f, s->font)); - xgcv.font = s->font; - mask = GCForeground | GCBackground | GCFont; + mask = GCForeground | GCBackground; if (FRAME_DISPLAY_INFO (s->f)->scratch_cursor_gc) XChangeGC (NULL, FRAME_DISPLAY_INFO (s->f)->scratch_cursor_gc, - mask, &xgcv); + mask, &egc); else FRAME_DISPLAY_INFO (s->f)->scratch_cursor_gc - = XCreateGC (NULL, FRAME_W32_WINDOW (s->f), mask, &xgcv); + = XCreateGC (NULL, FRAME_W32_WINDOW (s->f), mask, &egc); s->gc = FRAME_DISPLAY_INFO (s->f)->scratch_cursor_gc; } @@ -972,21 +969,20 @@ w32_set_mouse_face_gc (struct glyph_string *s) { /* Otherwise construct scratch_cursor_gc with values from FACE but font FONT. */ - XGCValues xgcv; + Emacs_GC egc; unsigned long mask; - xgcv.background = s->face->background; - xgcv.foreground = s->face->foreground; + egc.background = s->face->background; + egc.foreground = s->face->foreground; IF_DEBUG (w32_check_font (s->f, s->font)); - xgcv.font = s->font; - mask = GCForeground | GCBackground | GCFont; + mask = GCForeground | GCBackground; if (FRAME_DISPLAY_INFO (s->f)->scratch_cursor_gc) XChangeGC (NULL, FRAME_DISPLAY_INFO (s->f)->scratch_cursor_gc, - mask, &xgcv); + mask, &egc); else FRAME_DISPLAY_INFO (s->f)->scratch_cursor_gc - = XCreateGC (NULL, FRAME_W32_WINDOW (s->f), mask, &xgcv); + = XCreateGC (NULL, FRAME_W32_WINDOW (s->f), mask, &egc); s->gc = FRAME_DISPLAY_INFO (s->f)->scratch_cursor_gc; } @@ -1551,7 +1547,7 @@ static void w32_setup_relief_color (struct frame *f, struct relief *relief, double factor, int delta, COLORREF default_pixel) { - XGCValues xgcv; + Emacs_GC egc; struct w32_output *di = f->output_data.w32; unsigned long mask = GCForeground; COLORREF pixel; @@ -1563,22 +1559,21 @@ w32_setup_relief_color (struct frame *f, struct relief *relief, double factor, /* TODO: Free colors (if using palette)? */ /* Allocate new color. */ - xgcv.foreground = default_pixel; + egc.foreground = default_pixel; pixel = background; if (w32_alloc_lighter_color (f, &pixel, factor, delta)) - xgcv.foreground = relief->pixel = pixel; + egc.foreground = relief->pixel = pixel; - xgcv.font = NULL; /* avoid compiler warnings */ if (relief->gc == 0) { #if 0 /* TODO: stipple */ - xgcv.stipple = dpyinfo->gray; + egc.stipple = dpyinfo->gray; mask |= GCStipple; #endif - relief->gc = XCreateGC (NULL, FRAME_W32_WINDOW (f), mask, &xgcv); + relief->gc = XCreateGC (NULL, FRAME_W32_WINDOW (f), mask, &egc); } else - XChangeGC (NULL, relief->gc, mask, &xgcv); + XChangeGC (NULL, relief->gc, mask, &egc); } @@ -1627,7 +1622,7 @@ w32_draw_relief_rect (struct frame *f, RECT *clip_rect) { int i; - XGCValues gc; + Emacs_GC gc; HDC hdc = get_frame_dc (f); if (raised_p) @@ -2286,7 +2281,7 @@ w32_draw_stretch_glyph_string (struct glyph_string *s) /* Clear rest using the GC of the original non-cursor face. */ if (width < background_width) { - XGCValues *gc = s->face->gc; + Emacs_GC *gc = s->face->gc; int y = s->y; int w = background_width - width, h = s->height; RECT r; diff --git a/src/w32term.h b/src/w32term.h index f1373beb81..729e8d0fd4 100644 --- a/src/w32term.h +++ b/src/w32term.h @@ -142,7 +142,7 @@ struct w32_display_info int smallest_font_height; /* Reusable Graphics Context for drawing a cursor in a non-default face. */ - XGCValues *scratch_cursor_gc; + Emacs_GC *scratch_cursor_gc; /* Information about the range of text currently shown in mouse-face. */ @@ -308,7 +308,7 @@ struct w32_output HPALETTE old_palette; /* Here are the Graphics Contexts for the default font. */ - XGCValues *cursor_gc; /* cursor drawing */ + Emacs_GC *cursor_gc; /* cursor drawing */ /* The window used for this frame. May be zero while the frame object is being created @@ -388,7 +388,7 @@ struct w32_output /* Relief GCs, colors etc. */ struct relief { - XGCValues *gc; + Emacs_GC *gc; unsigned long pixel; } black_relief, white_relief; @@ -805,7 +805,7 @@ typedef struct tagTRACKMOUSEEVENT struct image; struct face; -XGCValues *XCreateGC (void *, HWND, unsigned long, XGCValues *); +Emacs_GC *XCreateGC (void *, HWND, unsigned long, Emacs_GC *); typedef DWORD (WINAPI * ClipboardSequence_Proc) (void); typedef BOOL (WINAPI * AppendMenuW_Proc) ( diff --git a/src/xfaces.c b/src/xfaces.c index a8fdca70c9..d211ec8c46 100644 --- a/src/xfaces.c +++ b/src/xfaces.c @@ -513,12 +513,12 @@ x_free_gc (struct frame *f, GC gc) #ifdef HAVE_NTGUI /* W32 emulation of GCs */ -static GC -x_create_gc (struct frame *f, unsigned long mask, XGCValues *xgcv) +static Emacs_GC * +x_create_gc (struct frame *f, unsigned long mask, Emacs_GC *egc) { - GC gc; + Emacs_GC *gc; block_input (); - gc = XCreateGC (NULL, FRAME_W32_WINDOW (f), mask, xgcv); + gc = XCreateGC (NULL, FRAME_W32_WINDOW (f), mask, egc); unblock_input (); IF_DEBUG (++ngcs); return gc; @@ -528,7 +528,7 @@ x_create_gc (struct frame *f, unsigned long mask, XGCValues *xgcv) /* Free GC which was used on frame F. */ static void -x_free_gc (struct frame *f, GC gc) +x_free_gc (struct frame *f, Emacs_GC *gc) { IF_DEBUG ((--ngcs, eassert (ngcs >= 0))); xfree (gc); @@ -539,18 +539,18 @@ x_free_gc (struct frame *f, GC gc) #ifdef HAVE_NS /* NS emulation of GCs */ -static GC +static Emacs_GC * x_create_gc (struct frame *f, unsigned long mask, - XGCValues *xgcv) + Emacs_GC *egc) { - GC gc = xmalloc (sizeof *gc); - *gc = *xgcv; + Emacs_GC *gc = xmalloc (sizeof *gc); + *gc = *egc; return gc; } static void -x_free_gc (struct frame *f, GC gc) +x_free_gc (struct frame *f, Emacs_GC *gc) { xfree (gc); } @@ -4140,25 +4140,25 @@ prepare_face_for_display (struct frame *f, struct face *face) if (face->gc == 0) { - XGCValues xgcv; + Emacs_GC egc; unsigned long mask = GCForeground | GCBackground | GCGraphicsExposures; - xgcv.foreground = face->foreground; - xgcv.background = face->background; + egc.foreground = face->foreground; + egc.background = face->background; #ifdef HAVE_X_WINDOWS - xgcv.graphics_exposures = False; + egc.graphics_exposures = False; #endif block_input (); #ifdef HAVE_X_WINDOWS if (face->stipple) { - xgcv.fill_style = FillOpaqueStippled; - xgcv.stipple = image_bitmap_pixmap (f, face->stipple); + egc.fill_style = FillOpaqueStippled; + egc.stipple = image_bitmap_pixmap (f, face->stipple); mask |= GCFillStyle | GCStipple; } #endif - face->gc = x_create_gc (f, mask, &xgcv); + face->gc = x_create_gc (f, mask, &egc); if (face->font) font_prepare_for_face (f, face); unblock_input (); commit 462b1fd7185ab8866c8db15b6e7a9b865e4d2389 Author: Alexander Gramiak Date: Thu May 9 18:12:22 2019 -0600 Introduce Emacs_Rectangle struct and typedef * src/dispextern.h [HAVE_X_WINDOWS]: Alias Emacs_Rectangle to XRectangle. [!HAVE_X_WINDOWS]: Define Emacs_Rectangle struct. Use Emacs_Rectangle over XRectangle. * src/frame.h (MonitorInfo): * src/msdos.h: * src/w32term.c: * src/xdisp.c: Use Emacs_Rectangle over XRectangle. * src/nsgui.h: * src/w32gui.h: Remove old XRectangle structs. * src/xdisp.c: * src/nsgui.h: * src/w32gui.h: Rename CONVERT_FROM_XRECT and CONVERT_TO_XRECT to CONVERT_FROM_EMACS_RECT and CONVERT_TO_EMACS_RECT respectively. diff --git a/src/dispextern.h b/src/dispextern.h index eecf95b54f..2077f891d1 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -39,7 +39,7 @@ typedef XColor Emacs_Color; typedef Cursor Emacs_Cursor; #define No_Cursor (None) typedef Pixmap Emacs_Pixmap; - +typedef XRectangle Emacs_Rectangle; #else /* !HAVE_X_WINDOWS */ /* XColor-like struct used by non-X code. */ @@ -52,6 +52,13 @@ typedef struct /* Accommodate X's usage of None as a null resource ID. */ #define No_Cursor (NULL) + +/* XRectangle-like struct used by non-X GUI code. */ +typedef struct +{ + int x, y; + unsigned width, height; +} Emacs_Rectangle; #endif /* HAVE_X_WINDOWS */ #ifdef MSDOS @@ -1046,7 +1053,7 @@ struct glyph_row #ifdef HAVE_WINDOW_SYSTEM /* Non-NULL means the current clipping area. This is temporarily set while exposing a region. Coordinates are frame-relative. */ - XRectangle *clip; + const Emacs_Rectangle *clip; #endif }; @@ -3317,7 +3324,9 @@ extern void handle_tool_bar_click (struct frame *, int, int, bool, int); extern void expose_frame (struct frame *, int, int, int, int); -extern bool gui_intersect_rectangles (XRectangle *, XRectangle *, XRectangle *); +extern bool gui_intersect_rectangles (const Emacs_Rectangle *, + const Emacs_Rectangle *, + Emacs_Rectangle *); #endif /* HAVE_WINDOW_SYSTEM */ extern void note_mouse_highlight (struct frame *, int, int); diff --git a/src/frame.h b/src/frame.h index b8aed823af..781063340d 100644 --- a/src/frame.h +++ b/src/frame.h @@ -1626,7 +1626,7 @@ flush_frame (struct frame *f) #ifdef HAVE_WINDOW_SYSTEM struct MonitorInfo { - XRectangle geom, work; + Emacs_Rectangle geom, work; int mm_width, mm_height; char *name; }; diff --git a/src/msdos.h b/src/msdos.h index 90ceea8e3d..3614c94dd0 100644 --- a/src/msdos.h +++ b/src/msdos.h @@ -86,7 +86,6 @@ typedef int GC; typedef int Pixmap; typedef int Display; typedef int Window; -typedef int XRectangle; #define PIX_TYPE unsigned long #define XDISPLAY diff --git a/src/nsgui.h b/src/nsgui.h index c6f0f4b0ea..592e21f60a 100644 --- a/src/nsgui.h +++ b/src/nsgui.h @@ -109,14 +109,6 @@ typedef void *Emacs_Cursor; typedef int Window; - -/* Some sort of attempt to normalize rectangle handling. Seems a bit - much for what is accomplished. */ -typedef struct { - int x, y; - unsigned width, height; -} XRectangle; - #ifndef __OBJC__ #if defined (__LP64__) && __LP64__ typedef double CGFloat; @@ -130,13 +122,13 @@ typedef struct _NSRect { NSPoint origin; NSSize size; } NSRect; #define NativeRectangle NSRect -#define CONVERT_TO_XRECT(xr, nr) \ +#define CONVERT_TO_EMACS_RECT(xr, nr) \ ((xr).x = (nr).origin.x, \ (xr).y = (nr).origin.y, \ (xr).width = (nr).size.width, \ (xr).height = (nr).size.height) -#define CONVERT_FROM_XRECT(xr, nr) \ +#define CONVERT_FROM_EMACS_RECT(xr, nr) \ ((nr).origin.x = (xr).x, \ (nr).origin.y = (xr).y, \ (nr).size.width = (xr).width, \ diff --git a/src/w32gui.h b/src/w32gui.h index c8df7128a7..69b6a556ff 100644 --- a/src/w32gui.h +++ b/src/w32gui.h @@ -106,20 +106,15 @@ extern HINSTANCE hinst; #define PBaseSize (1L << 8) /* program specified base for incrementing */ #define PWinGravity (1L << 9) /* program specified window gravity */ -typedef struct { - int x, y; - unsigned width, height; -} XRectangle; - #define NativeRectangle RECT -#define CONVERT_TO_XRECT(xr,nr) \ +#define CONVERT_TO_EMACS_RECT(xr,nr) \ ((xr).x = (nr).left, \ (xr).y = (nr).top, \ (xr).width = ((nr).right - (nr).left), \ (xr).height = ((nr).bottom - (nr).top)) -#define CONVERT_FROM_XRECT(xr,nr) \ +#define CONVERT_FROM_EMACS_RECT(xr,nr) \ ((nr).left = (xr).x, \ (nr).top = (xr).y, \ (nr).right = ((xr).x + (xr).width), \ diff --git a/src/w32term.c b/src/w32term.c index ed881ad3be..5c492b3fa9 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -337,7 +337,7 @@ w32_draw_underwave (struct glyph_string *s, COLORREF color) int wave_height = 3 * scale_y, wave_length = 2 * scale_x, thickness = scale_y; int dx, dy, x0, y0, width, x1, y1, x2, y2, odd, xmax; - XRectangle wave_clip, string_clip, final_clip; + Emacs_Rectangle wave_clip, string_clip, final_clip; RECT w32_final_clip, w32_string_clip; HPEN hp, oldhp; @@ -356,14 +356,14 @@ w32_draw_underwave (struct glyph_string *s, COLORREF color) wave_clip.height = wave_height; get_glyph_string_clip_rect (s, &w32_string_clip); - CONVERT_TO_XRECT (string_clip, w32_string_clip); + CONVERT_TO_EMACS_RECT (string_clip, w32_string_clip); if (!gui_intersect_rectangles (&wave_clip, &string_clip, &final_clip)) return; hp = CreatePen (PS_SOLID, thickness, color); oldhp = SelectObject (s->hdc, hp); - CONVERT_FROM_XRECT (final_clip, w32_final_clip); + CONVERT_FROM_EMACS_RECT (final_clip, w32_final_clip); w32_set_clip_rectangle (s->hdc, &w32_final_clip); /* Draw the waves */ diff --git a/src/xdisp.c b/src/xdisp.c index 0c1d966032..6929ca4b4b 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -2080,7 +2080,7 @@ frame_to_window_pixel_xy (struct window *w, int *x, int *y) int get_glyph_string_clip_rects (struct glyph_string *s, NativeRectangle *rects, int n) { - XRectangle r; + Emacs_Rectangle r; if (n <= 0) return 0; @@ -2142,7 +2142,7 @@ get_glyph_string_clip_rects (struct glyph_string *s, NativeRectangle *rects, int take the intersection with the rectangle of the cursor. */ if (s->for_overlaps & OVERLAPS_ERASED_CURSOR) { - XRectangle rc, r_save = r; + Emacs_Rectangle rc, r_save = r; rc.x = WINDOW_TEXT_TO_FRAME_PIXEL_X (s->w, s->w->phys_cursor.x); rc.y = s->w->phys_cursor.y; @@ -2208,7 +2208,7 @@ get_glyph_string_clip_rects (struct glyph_string *s, NativeRectangle *rects, int if (s->row->clip) { - XRectangle r_save = r; + Emacs_Rectangle r_save = r; if (! gui_intersect_rectangles (&r_save, s->row->clip, &r)) r.width = 0; @@ -2217,8 +2217,8 @@ get_glyph_string_clip_rects (struct glyph_string *s, NativeRectangle *rects, int if ((s->for_overlaps & OVERLAPS_BOTH) == 0 || ((s->for_overlaps & OVERLAPS_BOTH) == OVERLAPS_BOTH && n == 1)) { -#ifdef CONVERT_FROM_XRECT - CONVERT_FROM_XRECT (r, *rects); +#ifdef CONVERT_FROM_EMACS_RECT + CONVERT_FROM_EMACS_RECT (r, *rects); #else *rects = r; #endif @@ -2230,10 +2230,10 @@ get_glyph_string_clip_rects (struct glyph_string *s, NativeRectangle *rects, int multiple clipping rectangles, we exclude the row of the glyph string from the clipping rectangle. This is to avoid drawing the same text on the environment with anti-aliasing. */ -#ifdef CONVERT_FROM_XRECT - XRectangle rs[2]; +#ifdef CONVERT_FROM_EMACS_RECT + Emacs_Rectangle rs[2]; #else - XRectangle *rs = rects; + Emacs_Rectangle *rs = rects; #endif int i = 0, row_y = WINDOW_TO_FRAME_PIXEL_Y (s->w, s->row->y); @@ -2266,9 +2266,9 @@ get_glyph_string_clip_rects (struct glyph_string *s, NativeRectangle *rects, int } n = i; -#ifdef CONVERT_FROM_XRECT +#ifdef CONVERT_FROM_EMACS_RECT for (i = 0; i < n; i++) - CONVERT_FROM_XRECT (rs[i], rects[i]); + CONVERT_FROM_EMACS_RECT (rs[i], rects[i]); #endif return n; } @@ -32137,7 +32137,7 @@ cancel_mouse_face (struct frame *f) which intersects rectangle R. R is in window-relative coordinates. */ static void -expose_area (struct window *w, struct glyph_row *row, XRectangle *r, +expose_area (struct window *w, struct glyph_row *row, const Emacs_Rectangle *r, enum glyph_row_area area) { struct glyph *first = row->glyphs[area]; @@ -32195,7 +32195,7 @@ expose_area (struct window *w, struct glyph_row *row, XRectangle *r, true if mouse-face was overwritten. */ static bool -expose_line (struct window *w, struct glyph_row *row, XRectangle *r) +expose_line (struct window *w, struct glyph_row *row, const Emacs_Rectangle *r) { eassert (row->enabled_p); @@ -32230,7 +32230,7 @@ static void expose_overlaps (struct window *w, struct glyph_row *first_overlapping_row, struct glyph_row *last_overlapping_row, - XRectangle *r) + const Emacs_Rectangle *r) { struct glyph_row *row; @@ -32256,9 +32256,9 @@ expose_overlaps (struct window *w, /* Return true if W's cursor intersects rectangle R. */ static bool -phys_cursor_in_rect_p (struct window *w, XRectangle *r) +phys_cursor_in_rect_p (struct window *w, const Emacs_Rectangle *r) { - XRectangle cr, result; + Emacs_Rectangle cr, result; struct glyph *cursor_glyph; struct glyph_row *row; @@ -32416,10 +32416,10 @@ gui_draw_bottom_divider (struct window *w) mouse-face. */ static bool -expose_window (struct window *w, XRectangle *fr) +expose_window (struct window *w, const Emacs_Rectangle *fr) { struct frame *f = XFRAME (w->frame); - XRectangle wr, r; + Emacs_Rectangle wr, r; bool mouse_face_overwritten_p = false; /* If window is not yet fully initialized, do nothing. This can @@ -32578,7 +32578,7 @@ expose_window (struct window *w, XRectangle *fr) true if the exposure overwrites mouse-face. */ static bool -expose_window_tree (struct window *w, XRectangle *r) +expose_window_tree (struct window *w, const Emacs_Rectangle *r) { struct frame *f = XFRAME (w->frame); bool mouse_face_overwritten_p = false; @@ -32606,7 +32606,7 @@ expose_window_tree (struct window *w, XRectangle *r) void expose_frame (struct frame *f, int x, int y, int w, int h) { - XRectangle r; + Emacs_Rectangle r; bool mouse_face_overwritten_p = false; TRACE ((stderr, "expose_frame ")); @@ -32693,10 +32693,11 @@ expose_frame (struct frame *f, int x, int y, int w, int h) empty. */ bool -gui_intersect_rectangles (XRectangle *r1, XRectangle *r2, XRectangle *result) +gui_intersect_rectangles (const Emacs_Rectangle *r1, const Emacs_Rectangle *r2, + Emacs_Rectangle *result) { - XRectangle *left, *right; - XRectangle *upper, *lower; + const Emacs_Rectangle *left, *right; + const Emacs_Rectangle *upper, *lower; bool intersection_p = false; /* Rearrange so that R1 is the left-most rectangle. */ commit 44d577925e0f5679d417028799db47a1f5d0fd03 Author: Alexander Gramiak Date: Thu May 9 17:48:55 2019 -0600 Introduce Emacs_Pixmap typedef * src/dispextern.h [HAVE_X_WINDOWS]: Alias Emacs_Pixmap to Pixmap. (image, x_kill_gs_process): Use Emacs_Pixmap over Pixmap. * src/image.c: * src/nsgui.h: * src/nsterm.m: * src/termhooks.h: * src/w32gui.h: * src/w32term.c: * src/w32term.h: * src/xterm.c (x_free_pixmap): Use Emacs_Pixmap over Pixmap. * src/w32gui.h: Remove unused typedef Bitmap. diff --git a/src/dispextern.h b/src/dispextern.h index 0acd03c049..eecf95b54f 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -38,6 +38,7 @@ along with GNU Emacs. If not, see . */ typedef XColor Emacs_Color; typedef Cursor Emacs_Cursor; #define No_Cursor (None) +typedef Pixmap Emacs_Pixmap; #else /* !HAVE_X_WINDOWS */ @@ -86,7 +87,7 @@ typedef HDC XImagePtr_or_DC; #define FACE_COLOR_TO_PIXEL(face_color, frame) ns_color_index_to_rgba(face_color, frame) /* Following typedef needed to accommodate the MSDOS port, believe it or not. */ typedef struct ns_display_info Display_Info; -typedef Pixmap XImagePtr; +typedef Emacs_Pixmap XImagePtr; typedef XImagePtr XImagePtr_or_DC; #else #define FACE_COLOR_TO_PIXEL(face_color, frame) face_color @@ -2960,7 +2961,7 @@ struct image struct timespec timestamp; /* Pixmaps of the image. */ - Pixmap pixmap, mask; + Emacs_Pixmap pixmap, mask; #ifdef USE_CAIRO void *cr_data; @@ -3371,7 +3372,7 @@ extern void x_create_bitmap_mask (struct frame *, ptrdiff_t); #endif extern Lisp_Object image_find_image_file (Lisp_Object); -void x_kill_gs_process (Pixmap, struct frame *); +void x_kill_gs_process (Emacs_Pixmap, struct frame *); struct image_cache *make_image_cache (void); void free_image_cache (struct frame *); void clear_image_caches (Lisp_Object); diff --git a/src/image.c b/src/image.c index c768ece978..8e57444bb0 100644 --- a/src/image.c +++ b/src/image.c @@ -228,7 +228,7 @@ image_create_bitmap_from_data (struct frame *f, char *bits, #ifdef HAVE_NTGUI Lisp_Object frame UNINIT; /* The value is not used. */ - Pixmap bitmap; + Emacs_Pixmap bitmap; bitmap = CreateBitmap (width, height, FRAME_DISPLAY_INFO (XFRAME (frame))->n_planes, FRAME_DISPLAY_INFO (XFRAME (frame))->n_cbits, @@ -412,7 +412,8 @@ typedef void Picture; #endif static bool image_create_x_image_and_pixmap_1 (struct frame *, int, int, int, - XImagePtr *, Pixmap *, Picture *); + XImagePtr *, Emacs_Pixmap *, + Picture *); static void image_destroy_x_image (XImagePtr ximg); #ifdef HAVE_NTGUI @@ -2036,17 +2037,18 @@ image_check_image_size (XImagePtr ximg, int width, int height) } /* Create an XImage and a pixmap of size WIDTH x HEIGHT for use on - frame F. Set *XIMG and *PIXMAP to the XImage and Pixmap created. - Set (*XIMG)->data to a raster of WIDTH x HEIGHT pixels allocated - via xmalloc. Print error messages via image_error if an error - occurs. Value is true if successful. + frame F. Set *XIMG and *PIXMAP to the XImage and Emacs_Pixmap + created. Set (*XIMG)->data to a raster of WIDTH x HEIGHT pixels + allocated via xmalloc. Print error messages via image_error if an + error occurs. Value is true if successful. On W32, a DEPTH of zero signifies a 24 bit image, otherwise DEPTH should indicate the bit depth of the image. */ static bool image_create_x_image_and_pixmap_1 (struct frame *f, int width, int height, int depth, - XImagePtr *ximg, Pixmap *pixmap, Picture *picture) + XImagePtr *ximg, Emacs_Pixmap *pixmap, + Picture *picture) { #ifdef HAVE_X_WINDOWS Display *display = FRAME_X_DISPLAY (f); @@ -2256,7 +2258,7 @@ image_destroy_x_image (XImagePtr ximg) are width and height of both the image and pixmap. */ static void -gui_put_x_image (struct frame *f, XImagePtr ximg, Pixmap pixmap, +gui_put_x_image (struct frame *f, XImagePtr ximg, Emacs_Pixmap pixmap, int width, int height) { #ifdef HAVE_X_WINDOWS @@ -9539,7 +9541,7 @@ gs_load (struct frame *f, struct image *img) telling Emacs that Ghostscript has finished drawing. */ void -x_kill_gs_process (Pixmap pixmap, struct frame *f) +x_kill_gs_process (Emacs_Pixmap pixmap, struct frame *f) { struct image_cache *c = FRAME_IMAGE_CACHE (f); ptrdiff_t i; diff --git a/src/nsgui.h b/src/nsgui.h index 1a0453fa4a..c6f0f4b0ea 100644 --- a/src/nsgui.h +++ b/src/nsgui.h @@ -96,9 +96,9 @@ typedef XGCValues * GC; #define GCFont 0x03 #ifdef __OBJC__ -typedef id Pixmap; +typedef id Emacs_Pixmap; #else -typedef void *Pixmap; +typedef void *Emacs_Pixmap; #endif #ifdef __OBJC__ diff --git a/src/nsterm.m b/src/nsterm.m index 82a0d2348e..a927c5f646 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -4972,7 +4972,7 @@ in certain situations (rapid incoming events). ========================================================================== */ static void -ns_free_pixmap (struct frame *_f, Pixmap pixmap) +ns_free_pixmap (struct frame *_f, Emacs_Pixmap pixmap) { ns_release_object (pixmap); } diff --git a/src/termhooks.h b/src/termhooks.h index 410273875a..f1827128f1 100644 --- a/src/termhooks.h +++ b/src/termhooks.h @@ -744,7 +744,7 @@ struct terminal /* Image hooks */ #ifdef HAVE_WINDOW_SYSTEM /* Free the pixmap PIXMAP on F. */ - void (*free_pixmap) (struct frame *f, Pixmap pixmap); + void (*free_pixmap) (struct frame *f, Emacs_Pixmap pixmap); #endif diff --git a/src/w32gui.h b/src/w32gui.h index 81b4820bec..c8df7128a7 100644 --- a/src/w32gui.h +++ b/src/w32gui.h @@ -39,8 +39,7 @@ typedef struct _XGCValues #define GCBackground 0x02 #define GCFont 0x03 -typedef HBITMAP Pixmap; -typedef HBITMAP Bitmap; +typedef HBITMAP Emacs_Pixmap; typedef XGCValues * GC; typedef HWND Window; diff --git a/src/w32term.c b/src/w32term.c index 2be53cab89..ed881ad3be 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -6947,7 +6947,7 @@ w32_toggle_invisible_pointer (struct frame *f, bool invisible) ***********************************************************************/ static void -w32_free_pixmap (struct frame *_f, Pixmap pixmap) +w32_free_pixmap (struct frame *_f, Emacs_Pixmap pixmap) { DeleteObject (pixmap); } diff --git a/src/w32term.h b/src/w32term.h index 32c749e487..f1373beb81 100644 --- a/src/w32term.h +++ b/src/w32term.h @@ -56,7 +56,7 @@ extern BOOL bUseDflt; struct w32_bitmap_record { - Pixmap pixmap; + Emacs_Pixmap pixmap; char *file; HINSTANCE hinst; /* Used to load the file */ int refcount; diff --git a/src/xterm.c b/src/xterm.c index c8cddcabf5..2de6198359 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -12161,7 +12161,7 @@ x_check_font (struct frame *f, struct font *font) ***********************************************************************/ static void -x_free_pixmap (struct frame *f, Pixmap pixmap) +x_free_pixmap (struct frame *f, Emacs_Pixmap pixmap) { XFreePixmap (FRAME_X_DISPLAY (f), pixmap); } commit 06db2a052fb7335185e8d581d245ce214b3bba7c Author: Alexander Gramiak Date: Thu May 9 17:13:18 2019 -0600 Introduce Emacs_Cursor typedef * src/dispextern.h [HAVE_X_WINDOWS]: Define Emacs_Cursor alias. Move the No_Cursor definition from xterm.h. (redisplay_interface): Use Emacs_Cursor over Cursor. * src/nsgui.h: * src/nsterm.h: * src/nsterm.m: * src/w32gui.h: * src/w32term.c: * src/xdisp.c: * src/xterm.c (x_define_frame_cursor): Use Emacs_Cursor over Cursor. diff --git a/src/dispextern.h b/src/dispextern.h index e3f4297e31..0acd03c049 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -36,6 +36,9 @@ along with GNU Emacs. If not, see . */ #endif typedef XColor Emacs_Color; +typedef Cursor Emacs_Cursor; +#define No_Cursor (None) + #else /* !HAVE_X_WINDOWS */ /* XColor-like struct used by non-X code. */ @@ -46,6 +49,8 @@ typedef struct unsigned short red, green, blue; } Emacs_Color; +/* Accommodate X's usage of None as a null resource ID. */ +#define No_Cursor (NULL) #endif /* HAVE_X_WINDOWS */ #ifdef MSDOS @@ -93,8 +98,7 @@ typedef XImagePtr XImagePtr_or_DC; #endif #ifndef HAVE_WINDOW_SYSTEM -typedef int Cursor; -#define No_Cursor (0) +typedef void *Emacs_Cursor; #endif #ifndef NativeRectangle @@ -2889,7 +2893,7 @@ struct redisplay_interface void (*draw_glyph_string) (struct glyph_string *s); /* Define cursor CURSOR on frame F. */ - void (*define_frame_cursor) (struct frame *f, Cursor cursor); + void (*define_frame_cursor) (struct frame *f, Emacs_Cursor cursor); /* Clear the area at (X,Y,WIDTH,HEIGHT) of frame F. */ void (*clear_frame_area) (struct frame *f, int x, int y, diff --git a/src/nsgui.h b/src/nsgui.h index 81be68b574..1a0453fa4a 100644 --- a/src/nsgui.h +++ b/src/nsgui.h @@ -102,13 +102,11 @@ typedef void *Pixmap; #endif #ifdef __OBJC__ -typedef NSCursor * Cursor; +typedef NSCursor *Emacs_Cursor; #else -typedef void *Cursor; +typedef void *Emacs_Cursor; #endif -#define No_Cursor (0) - typedef int Window; diff --git a/src/nsterm.h b/src/nsterm.h index ad1af3098d..66e1272040 100644 --- a/src/nsterm.h +++ b/src/nsterm.h @@ -872,10 +872,10 @@ struct ns_display_info Lisp_Object rdb; /* The cursor to use for vertical scroll bars. */ - Cursor vertical_scroll_bar_cursor; + Emacs_Cursor vertical_scroll_bar_cursor; /* The cursor to use for horizontal scroll bars. */ - Cursor horizontal_scroll_bar_cursor; + Emacs_Cursor horizontal_scroll_bar_cursor; /* Information about the range of text currently shown in mouse-face. */ @@ -931,24 +931,24 @@ struct ns_output #endif /* NSCursors are initialized in initFrameFromEmacs. */ - Cursor text_cursor; - Cursor nontext_cursor; - Cursor modeline_cursor; - Cursor hand_cursor; - Cursor hourglass_cursor; - Cursor horizontal_drag_cursor; - Cursor vertical_drag_cursor; - Cursor left_edge_cursor; - Cursor top_left_corner_cursor; - Cursor top_edge_cursor; - Cursor top_right_corner_cursor; - Cursor right_edge_cursor; - Cursor bottom_right_corner_cursor; - Cursor bottom_edge_cursor; - Cursor bottom_left_corner_cursor; + Emacs_Cursor text_cursor; + Emacs_Cursor nontext_cursor; + Emacs_Cursor modeline_cursor; + Emacs_Cursor hand_cursor; + Emacs_Cursor hourglass_cursor; + Emacs_Cursor horizontal_drag_cursor; + Emacs_Cursor vertical_drag_cursor; + Emacs_Cursor left_edge_cursor; + Emacs_Cursor top_left_corner_cursor; + Emacs_Cursor top_edge_cursor; + Emacs_Cursor top_right_corner_cursor; + Emacs_Cursor right_edge_cursor; + Emacs_Cursor bottom_right_corner_cursor; + Emacs_Cursor bottom_edge_cursor; + Emacs_Cursor bottom_left_corner_cursor; /* NS-specific */ - Cursor current_pointer; + Emacs_Cursor current_pointer; /* lord knows why Emacs needs to know about our Window ids.. */ Window window_desc, parent_desc; diff --git a/src/nsterm.m b/src/nsterm.m index deac229c98..82a0d2348e 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -2576,7 +2576,7 @@ so some key presses (TAB) are swallowed by the system. */ static void -ns_define_frame_cursor (struct frame *f, Cursor cursor) +ns_define_frame_cursor (struct frame *f, Emacs_Cursor cursor) /* -------------------------------------------------------------------------- External (RIF): set frame mouse pointer type. -------------------------------------------------------------------------- */ diff --git a/src/w32fns.c b/src/w32fns.c index 2f54bdc1da..d74e968d37 100644 --- a/src/w32fns.c +++ b/src/w32fns.c @@ -2247,15 +2247,15 @@ w32_set_z_group (struct frame *f, Lisp_Object new_value, Lisp_Object old_value) /* Subroutines for creating a frame. */ -Cursor w32_load_cursor (LPCTSTR); +HCURSOR w32_load_cursor (LPCTSTR); -Cursor +HCURSOR w32_load_cursor (LPCTSTR name) { /* Try first to load cursor from application resource. */ - Cursor cursor = LoadImage ((HINSTANCE) GetModuleHandle (NULL), - name, IMAGE_CURSOR, 0, 0, - LR_DEFAULTCOLOR | LR_DEFAULTSIZE | LR_SHARED); + HCURSOR cursor = LoadImage ((HINSTANCE) GetModuleHandle (NULL), + name, IMAGE_CURSOR, 0, 0, + LR_DEFAULTCOLOR | LR_DEFAULTSIZE | LR_SHARED); if (!cursor) { /* Then try to load a shared predefined cursor. */ @@ -5217,7 +5217,7 @@ w32_wnd_proc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) case WM_EMACS_SETCURSOR: { - Cursor cursor = (Cursor) wParam; + HCURSOR cursor = (HCURSOR) wParam; f = w32_window_to_frame (dpyinfo, hwnd); if (f && cursor) { diff --git a/src/w32gui.h b/src/w32gui.h index b2ad28366c..81b4820bec 100644 --- a/src/w32gui.h +++ b/src/w32gui.h @@ -45,9 +45,7 @@ typedef HBITMAP Bitmap; typedef XGCValues * GC; typedef HWND Window; typedef HDC Display; /* HDC so it doesn't conflict with xpm lib. */ -typedef HCURSOR Cursor; - -#define No_Cursor (0) +typedef HCURSOR Emacs_Cursor; #define XChar2b wchar_t diff --git a/src/w32term.c b/src/w32term.c index 6c53bc147a..2be53cab89 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -85,7 +85,7 @@ static int any_help_event_p; extern unsigned int msh_mousewheel; extern int w32_codepage_for_font (char *fontname); -extern Cursor w32_load_cursor (LPCTSTR name); +extern HCURSOR w32_load_cursor (LPCTSTR name); /* This is display since w32 does not support multiple ones. */ @@ -166,7 +166,7 @@ int w32_message_fd = -1; static void w32_handle_tool_bar_click (struct frame *, struct input_event *); -static void w32_define_cursor (Window, Cursor); +static void w32_define_cursor (Window, Emacs_Cursor); static void w32_scroll_bar_clear (struct frame *); static void w32_raise_frame (struct frame *); @@ -3429,7 +3429,7 @@ static void w32_horizontal_scroll_bar_report_motion (struct frame **, Lisp_Objec Lisp_Object *, Lisp_Object *, Time *); static void -w32_define_cursor (Window window, Cursor cursor) +w32_define_cursor (Window window, Emacs_Cursor cursor) { PostMessage (window, WM_EMACS_SETCURSOR, (WPARAM) cursor, 0); } @@ -5806,7 +5806,7 @@ w32_draw_bar_cursor (struct window *w, struct glyph_row *row, /* RIF: Define cursor CURSOR on frame F. */ static void -w32_define_frame_cursor (struct frame *f, Cursor cursor) +w32_define_frame_cursor (struct frame *f, Emacs_Cursor cursor) { w32_define_cursor (FRAME_W32_WINDOW (f), cursor); } diff --git a/src/w32term.h b/src/w32term.h index 0dffd3db07..32c749e487 100644 --- a/src/w32term.h +++ b/src/w32term.h @@ -114,10 +114,10 @@ struct w32_display_info Window root_window; /* The cursor to use for vertical scroll bars. */ - Cursor vertical_scroll_bar_cursor; + HCURSOR vertical_scroll_bar_cursor; /* The cursor to use for horizontal scroll bars. */ - Cursor horizontal_scroll_bar_cursor; + HCURSOR horizontal_scroll_bar_cursor; /* Resource data base */ const char *rdb; @@ -348,27 +348,27 @@ struct w32_output COLORREF scroll_bar_background_pixel; /* Descriptor for the cursor in use for this window. */ - Cursor text_cursor; - Cursor nontext_cursor; - Cursor modeline_cursor; - Cursor hand_cursor; - Cursor hourglass_cursor; - Cursor horizontal_drag_cursor; - Cursor vertical_drag_cursor; - Cursor left_edge_cursor; - Cursor top_left_corner_cursor; - Cursor top_edge_cursor; - Cursor top_right_corner_cursor; - Cursor right_edge_cursor; - Cursor bottom_right_corner_cursor; - Cursor bottom_edge_cursor; - Cursor bottom_left_corner_cursor; + HCURSOR text_cursor; + HCURSOR nontext_cursor; + HCURSOR modeline_cursor; + HCURSOR hand_cursor; + HCURSOR hourglass_cursor; + HCURSOR horizontal_drag_cursor; + HCURSOR vertical_drag_cursor; + HCURSOR left_edge_cursor; + HCURSOR top_left_corner_cursor; + HCURSOR top_edge_cursor; + HCURSOR top_right_corner_cursor; + HCURSOR right_edge_cursor; + HCURSOR bottom_right_corner_cursor; + HCURSOR bottom_edge_cursor; + HCURSOR bottom_left_corner_cursor; /* Non-zero means hourglass cursor is currently displayed. */ unsigned hourglass_p : 1; /* Non-hourglass cursor that is currently active. */ - Cursor current_cursor; + HCURSOR current_cursor; DWORD dwStyle; diff --git a/src/xdisp.c b/src/xdisp.c index 1aa677fcc7..0c1d966032 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -31153,7 +31153,7 @@ Returns the alist element for the first matching AREA in MAP. */) /* Display frame CURSOR, optionally using shape defined by POINTER. */ static void -define_frame_cursor1 (struct frame *f, Cursor cursor, Lisp_Object pointer) +define_frame_cursor1 (struct frame *f, Emacs_Cursor cursor, Lisp_Object pointer) { #ifdef HAVE_WINDOW_SYSTEM if (!FRAME_WINDOW_P (f)) @@ -31205,7 +31205,7 @@ note_mode_line_or_margin_highlight (Lisp_Object window, int x, int y, struct window *w = XWINDOW (window); struct frame *f = XFRAME (w->frame); Mouse_HLInfo *hlinfo = MOUSE_HL_INFO (f); - Cursor cursor = No_Cursor; + Emacs_Cursor cursor = No_Cursor; Lisp_Object pointer = Qnil; int dx, dy, width, height; ptrdiff_t charpos; @@ -31518,7 +31518,7 @@ note_mouse_highlight (struct frame *f, int x, int y) enum window_part part = ON_NOTHING; Lisp_Object window; struct window *w; - Cursor cursor = No_Cursor; + Emacs_Cursor cursor = No_Cursor; Lisp_Object pointer = Qnil; /* Takes precedence over cursor! */ struct buffer *b; diff --git a/src/xterm.c b/src/xterm.c index 4f4a1d6d02..c8cddcabf5 100644 --- a/src/xterm.c +++ b/src/xterm.c @@ -9356,7 +9356,7 @@ x_draw_bar_cursor (struct window *w, struct glyph_row *row, int width, enum text /* RIF: Define cursor CURSOR on frame F. */ static void -x_define_frame_cursor (struct frame *f, Cursor cursor) +x_define_frame_cursor (struct frame *f, Emacs_Cursor cursor) { if (!f->pointer_invisible && f->output_data.x->current_cursor != cursor) diff --git a/src/xterm.h b/src/xterm.h index 758a1939d6..5447304578 100644 --- a/src/xterm.h +++ b/src/xterm.h @@ -731,8 +731,6 @@ struct x_output #endif }; -#define No_Cursor (None) - enum { /* Values for focus_state, used as bit mask. commit c0e146e4ec266edf348473c3db7ca8d16745f4f7 Author: Alexander Gramiak Date: Thu May 9 13:07:35 2019 -0600 Introduce Emacs_Color struct and typedef This avoids clashing with the XColor struct from X. * src/dispextern [HAVE_X_WINDOWS]: Define Emacs_Color alias. [!HAVE_X_WINDOWS]: Rename XColor compatibility struct to Emacs_Color. Remove unused fields. * src/gtkutil.c: * src/gtkutil.h: * src/image.c: * src/nsterm.h: * src/nsterm.m: * src/termhooks.h: * src/w32fns.c: * src/w32term.c: * src/w32term.h: * src/xfaces.c: * src/xfns.c: * src/xterm.h: Use Emacs_Color over XColor outside of X-specific sections. diff --git a/src/dispextern.h b/src/dispextern.h index e86ea6a02a..e3f4297e31 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -34,16 +34,17 @@ along with GNU Emacs. If not, see . */ #ifdef HAVE_XRENDER # include #endif + +typedef XColor Emacs_Color; #else /* !HAVE_X_WINDOWS */ -/* X-related stuff used by non-X gui code. */ +/* XColor-like struct used by non-X code. */ -typedef struct { +typedef struct +{ unsigned long pixel; unsigned short red, green, blue; - char flags; - char pad; -} XColor; +} Emacs_Color; #endif /* HAVE_X_WINDOWS */ @@ -3410,8 +3411,8 @@ void x_free_colors (struct frame *, unsigned long *, int); void update_face_from_frame_parameter (struct frame *, Lisp_Object, Lisp_Object); -extern bool tty_defined_color (struct frame *f, const char *, XColor *, bool, - bool); +extern bool tty_defined_color (struct frame *, const char *, Emacs_Color *, + bool, bool); Lisp_Object tty_color_name (struct frame *, int); void clear_face_cache (bool); diff --git a/src/gtkutil.c b/src/gtkutil.c index 4823357653..43918dd3da 100644 --- a/src/gtkutil.c +++ b/src/gtkutil.c @@ -520,7 +520,7 @@ get_utf8_string (const char *str) bool xg_check_special_colors (struct frame *f, const char *color_name, - XColor *color) + Emacs_Color *color) { bool success_p = 0; bool get_bg = strcmp ("gtk_selection_bg_color", color_name) == 0; diff --git a/src/gtkutil.h b/src/gtkutil.h index ec899781ca..229aa08f81 100644 --- a/src/gtkutil.h +++ b/src/gtkutil.h @@ -166,7 +166,7 @@ extern void xg_free_frame_widgets (struct frame *f); extern void xg_set_background_color (struct frame *f, unsigned long bg); extern bool xg_check_special_colors (struct frame *f, const char *color_name, - XColor *color); + Emacs_Color *color); extern void xg_set_frame_icon (struct frame *f, Pixmap icon_pixmap, diff --git a/src/image.c b/src/image.c index 071b92a741..c768ece978 100644 --- a/src/image.c +++ b/src/image.c @@ -1076,10 +1076,10 @@ image_ascent (struct image *img, struct face *face, struct glyph_slice *slice) #ifdef USE_CAIRO static uint32_t -xcolor_to_argb32 (XColor xc) +emacs_color_to_argb32 (Emacs_Color *ec) { - return ((0xffu << 24) | ((xc.red / 256) << 16) - | ((xc.green / 256) << 8) | (xc.blue / 256)); + return ((0xffu << 24) | ((ec->red / 256) << 16) + | ((ec->green / 256) << 8) | (ec->blue / 256)); } static uint32_t @@ -1087,11 +1087,11 @@ get_spec_bg_or_alpha_as_argb (struct image *img, struct frame *f) { uint32_t bgcolor = 0; - XColor xbgcolor; + Emacs_Color xbgcolor; Lisp_Object bg = image_spec_value (img->spec, QCbackground, NULL); if (STRINGP (bg) && x_parse_color (f, SSDATA (bg), &xbgcolor)) - bgcolor = xcolor_to_argb32 (xbgcolor); + bgcolor = emacs_color_to_argb32 (&xbgcolor); return bgcolor; } @@ -1321,7 +1321,7 @@ static unsigned long image_alloc_image_color (struct frame *f, struct image *img, Lisp_Object color_name, unsigned long dflt) { - XColor color; + Emacs_Color color; unsigned long result; eassert (STRINGP (color_name)); @@ -4286,7 +4286,7 @@ xpm_load_image (struct frame *f, char *color, *max_color; int key, next_key, max_key = 0; Lisp_Object symbol_color = Qnil, color_val; - XColor cdef; + Emacs_Color cdef; expect (XPM_TK_STRING); if (len <= chars_per_pixel || len >= BUFSIZ + chars_per_pixel) @@ -4772,17 +4772,17 @@ static int laplace_matrix[9] = { #define COLOR_INTENSITY(R, G, B) ((2 * (R) + 3 * (G) + (B)) / 6) -/* On frame F, return an array of XColor structures describing image - IMG->pixmap. Each XColor structure has its pixel color set. RGB_P - means also fill the red/green/blue members of the XColor - structures. Value is a pointer to the array of XColors structures, +/* On frame F, return an array of Emacs_Color structures describing image + IMG->pixmap. Each Emacs_Color structure has its pixel color set. RGB_P + means also fill the red/green/blue members of the Emacs_Color + structures. Value is a pointer to the array of Emacs_Color structures, allocated with xmalloc; it must be freed by the caller. */ -static XColor * -image_to_xcolors (struct frame *f, struct image *img, bool rgb_p) +static Emacs_Color * +image_to_emacs_colors (struct frame *f, struct image *img, bool rgb_p) { int x, y; - XColor *colors, *p; + Emacs_Color *colors, *p; XImagePtr_or_DC ximg; ptrdiff_t nbytes; #ifdef HAVE_NTGUI @@ -4798,13 +4798,13 @@ image_to_xcolors (struct frame *f, struct image *img, bool rgb_p) /* Get the X image or create a memory device context for IMG. */ ximg = image_get_x_image_or_dc (f, img, 0, &prev); - /* Fill the `pixel' members of the XColor array. I wished there + /* Fill the `pixel' members of the Emacs_Color array. I wished there were an easy and portable way to circumvent XGetPixel. */ p = colors; for (y = 0; y < img->height; ++y) { #if defined (HAVE_X_WINDOWS) || defined (HAVE_NTGUI) - XColor *row = p; + Emacs_Color *row = p; for (x = 0; x < img->width; ++x, ++p) p->pixel = GET_PIXEL (ximg, x, y); if (rgb_p) @@ -4878,16 +4878,16 @@ XPutPixel (XImagePtr ximg, int x, int y, COLORREF color) #endif /* HAVE_NTGUI */ -/* Create IMG->pixmap from an array COLORS of XColor structures, whose +/* Create IMG->pixmap from an array COLORS of Emacs_Color structures, whose RGB members are set. F is the frame on which this all happens. COLORS will be freed; an existing IMG->pixmap will be freed, too. */ static void -image_from_xcolors (struct frame *f, struct image *img, XColor *colors) +image_from_emacs_colors (struct frame *f, struct image *img, Emacs_Color *colors) { int x, y; XImagePtr oimg = NULL; - XColor *p; + Emacs_Color *p; init_color_table (); @@ -4925,8 +4925,8 @@ static void image_detect_edges (struct frame *f, struct image *img, int *matrix, int color_adjust) { - XColor *colors = image_to_xcolors (f, img, 1); - XColor *new, *p; + Emacs_Color *colors = image_to_emacs_colors (f, img, 1); + Emacs_Color *new, *p; int x, y, i, sum; ptrdiff_t nbytes; @@ -4969,7 +4969,7 @@ image_detect_edges (struct frame *f, struct image *img, for (xx = x - 1; xx < x + 2; ++xx, ++i) if (matrix[i]) { - XColor *t = COLOR (colors, xx, yy); + Emacs_Color *t = COLOR (colors, xx, yy); r += matrix[i] * t->red; g += matrix[i] * t->green; b += matrix[i] * t->blue; @@ -4983,7 +4983,7 @@ image_detect_edges (struct frame *f, struct image *img, } xfree (colors); - image_from_xcolors (f, img, new); + image_from_emacs_colors (f, img, new); #undef COLOR } @@ -5066,8 +5066,8 @@ image_disable_image (struct frame *f, struct image *img) /* Color (or grayscale). Convert to gray, and equalize. Just drawing such images with a stipple can look very odd, so we're using this method instead. */ - XColor *colors = image_to_xcolors (f, img, 1); - XColor *p, *end; + Emacs_Color *colors = image_to_emacs_colors (f, img, 1); + Emacs_Color *p, *end; const int h = 15000; const int l = 30000; @@ -5080,7 +5080,7 @@ image_disable_image (struct frame *f, struct image *img) p->red = p->green = p->blue = i2; } - image_from_xcolors (f, img, colors); + image_from_emacs_colors (f, img, colors); } /* Draw a cross over the disabled image, if we must or if we @@ -5522,7 +5522,7 @@ pbm_load (struct frame *f, struct image *img) unsigned long fg = FRAME_FOREGROUND_PIXEL (f); unsigned long bg = FRAME_BACKGROUND_PIXEL (f); #ifdef USE_CAIRO - XColor xfg, xbg; + Emacs_Color xfg, xbg; int fga32, bga32; #endif /* Parse the image specification. */ @@ -5542,7 +5542,7 @@ pbm_load (struct frame *f, struct image *img) xfg.pixel = fg; x_query_colors (f, &xfg, 1); } - fga32 = xcolor_to_argb32 (xfg); + fga32 = emacs_color_to_argb32 (&xfg); if (! fmt[PBM_BACKGROUND].count || ! STRINGP (fmt[PBM_BACKGROUND].value) @@ -5555,7 +5555,7 @@ pbm_load (struct frame *f, struct image *img) xbg.pixel = bg; x_query_colors (f, &xbg, 1); } - bga32 = xcolor_to_argb32 (xbg); + bga32 = emacs_color_to_argb32 (&xbg); #else if (fmt[PBM_FOREGROUND].count && STRINGP (fmt[PBM_FOREGROUND].value)) @@ -6180,7 +6180,7 @@ png_load_body (struct frame *f, struct image *img, struct png_load_context *c) /* png_color_16 *image_bg; */ Lisp_Object specified_bg = image_spec_value (img->spec, QCbackground, NULL); - XColor color; + Emacs_Color color; /* If the user specified a color, try to use it; if not, use the current frame background, ignoring any default background @@ -7813,7 +7813,7 @@ gif_load (struct frame *f, struct image *img) uint32_t *data32 = (uint32_t *) cairo_image_surface_get_data (surface); if (STRINGP (specified_bg)) { - XColor color; + Emacs_Color color; if (FRAME_TERMINAL (f)->defined_color_hook (f, SSDATA (specified_bg), &color, false, false)) { @@ -8548,7 +8548,7 @@ imagemagick_load_image (struct frame *f, struct image *img, /* Retrieve the frame's background color, for use later. */ { - XColor bgcolor; + Emacs_Color bgcolor; Lisp_Object specified_bg; specified_bg = image_spec_value (img->spec, QCbackground, NULL); @@ -9285,7 +9285,7 @@ svg_load_image (struct frame *f, struct image *img, char *contents, /* Handle alpha channel by combining the image with a background color. */ - XColor background; + Emacs_Color background; Lisp_Object specified_bg = image_spec_value (img->spec, QCbackground, NULL); if (!STRINGP (specified_bg) || !FRAME_TERMINAL (f)->defined_color_hook (f, diff --git a/src/nsgui.h b/src/nsgui.h index ab6cdff1e5..81be68b574 100644 --- a/src/nsgui.h +++ b/src/nsgui.h @@ -109,11 +109,6 @@ typedef void *Cursor; #define No_Cursor (0) -#ifdef __OBJC__ -typedef NSColor * Color; -#else -typedef void * Color; -#endif typedef int Window; diff --git a/src/nsterm.h b/src/nsterm.h index ffaf809785..ad1af3098d 100644 --- a/src/nsterm.h +++ b/src/nsterm.h @@ -1134,10 +1134,10 @@ extern void ns_set_doc_edited (void); extern bool ns_defined_color (struct frame *f, const char *name, - XColor *color_def, bool alloc, + Emacs_Color *color_def, bool alloc, bool makeIndex); extern void -ns_query_color (void *col, XColor *color_def, bool setPixel); +ns_query_color (void *col, Emacs_Color *color_def, bool setPixel); #ifdef __OBJC__ extern int ns_lisp_to_color (Lisp_Object color, NSColor **col); diff --git a/src/nsterm.m b/src/nsterm.m index d688aceca5..deac229c98 100644 --- a/src/nsterm.m +++ b/src/nsterm.m @@ -2327,7 +2327,7 @@ so some key presses (TAB) are swallowed by the system. */ } void -ns_query_color(void *col, XColor *color_def, bool setPixel) +ns_query_color(void *col, Emacs_Color *color_def, bool setPixel) /* -------------------------------------------------------------------------- Get ARGB values out of NSColor col and put them into color_def. If setPixel, set the pixel to a concatenated version. @@ -2350,7 +2350,7 @@ so some key presses (TAB) are swallowed by the system. */ bool ns_defined_color (struct frame *f, const char *name, - XColor *color_def, + Emacs_Color *color_def, bool alloc, bool makeIndex) /* -------------------------------------------------------------------------- @@ -2378,7 +2378,7 @@ so some key presses (TAB) are swallowed by the system. */ } static void -ns_query_frame_background_color (struct frame *f, XColor *bgcolor) +ns_query_frame_background_color (struct frame *f, Emacs_Color *bgcolor) /* -------------------------------------------------------------------------- External (hook): Store F's background color into *BGCOLOR -------------------------------------------------------------------------- */ diff --git a/src/termhooks.h b/src/termhooks.h index 0962add081..410273875a 100644 --- a/src/termhooks.h +++ b/src/termhooks.h @@ -496,7 +496,7 @@ struct terminal If MAKEINDEX (on NS), set COLOR_DEF pixel to ARGB. */ bool (*defined_color_hook) (struct frame *f, const char *color_name, - XColor *color_def, + Emacs_Color *color_def, bool alloc, bool makeIndex); @@ -515,13 +515,13 @@ struct terminal /* This hook is called to store the frame's background color into BGCOLOR. */ - void (*query_frame_background_color) (struct frame *f, XColor *bgcolor); + void (*query_frame_background_color) (struct frame *f, Emacs_Color *bgcolor); #if defined (HAVE_X_WINDOWS) || defined (HAVE_NTGUI) /* On frame F, translate pixel colors to RGB values for the NCOLORS colors in COLORS. Use cached information, if available. */ - void (*query_colors) (struct frame *f, XColor *colors, int ncolors); + void (*query_colors) (struct frame *f, Emacs_Color *colors, int ncolors); #endif /* Return the current position of the mouse. diff --git a/src/w32fns.c b/src/w32fns.c index 525642bfaa..2f54bdc1da 100644 --- a/src/w32fns.c +++ b/src/w32fns.c @@ -1174,7 +1174,7 @@ gamma_correct (struct frame *f, COLORREF *color) If ALLOC is nonzero, allocate a new colormap cell. */ bool -w32_defined_color (struct frame *f, const char *color, XColor *color_def, +w32_defined_color (struct frame *f, const char *color, Emacs_Color *color_def, bool alloc_p, bool _makeIndex) { register Lisp_Object tem; @@ -1248,7 +1248,7 @@ w32_defined_color (struct frame *f, const char *color, XColor *color_def, static int w32_decode_color (struct frame *f, Lisp_Object arg, int def) { - XColor cdef; + Emacs_Color cdef; CHECK_STRING (arg); @@ -6100,7 +6100,7 @@ DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, doc: /* SKIP: real doc in xfns.c. */) (Lisp_Object color, Lisp_Object frame) { - XColor foo; + Emacs_Color foo; struct frame *f = decode_window_system_frame (frame); CHECK_STRING (color); @@ -6115,7 +6115,7 @@ DEFUN ("xw-color-values", Fxw_color_values, Sxw_color_values, 1, 2, 0, doc: /* SKIP: real doc in xfns.c. */) (Lisp_Object color, Lisp_Object frame) { - XColor foo; + Emacs_Color foo; struct frame *f = decode_window_system_frame (frame); CHECK_STRING (color); diff --git a/src/w32gui.h b/src/w32gui.h index 5dcbbd9516..b2ad28366c 100644 --- a/src/w32gui.h +++ b/src/w32gui.h @@ -43,7 +43,6 @@ typedef HBITMAP Pixmap; typedef HBITMAP Bitmap; typedef XGCValues * GC; -typedef COLORREF Color; typedef HWND Window; typedef HDC Display; /* HDC so it doesn't conflict with xpm lib. */ typedef HCURSOR Cursor; diff --git a/src/w32term.c b/src/w32term.c index 435455e1a6..6c53bc147a 100644 --- a/src/w32term.c +++ b/src/w32term.c @@ -1517,7 +1517,7 @@ w32_alloc_lighter_color (struct frame *f, COLORREF *color, colors in COLORS. On W32, we no longer try to map colors to a palette. */ static void -w32_query_colors (struct frame *f, XColor *colors, int ncolors) +w32_query_colors (struct frame *f, Emacs_Color *colors, int ncolors) { int i; @@ -1534,7 +1534,7 @@ w32_query_colors (struct frame *f, XColor *colors, int ncolors) /* Store F's background color into *BGCOLOR. */ static void -w32_query_frame_background_color (struct frame *f, XColor *bgcolor) +w32_query_frame_background_color (struct frame *f, Emacs_Color *bgcolor) { bgcolor->pixel = FRAME_BACKGROUND_PIXEL (f); w32_query_colors (f, bgcolor, 1); @@ -7208,7 +7208,7 @@ w32_term_init (Lisp_Object display_name, char *xrm_option, char *resource_name) /* initialize palette with white and black */ { - XColor color; + Emacs_Color color; w32_defined_color (0, "white", &color, true, false); w32_defined_color (0, "black", &color, true, false); } diff --git a/src/w32term.h b/src/w32term.h index a03b9fd331..0dffd3db07 100644 --- a/src/w32term.h +++ b/src/w32term.h @@ -241,7 +241,7 @@ extern void w32_set_scroll_bar_default_height (struct frame *); extern struct w32_display_info *w32_term_init (Lisp_Object, char *, char *); -extern bool w32_defined_color (struct frame *, const char *, XColor *, +extern bool w32_defined_color (struct frame *, const char *, Emacs_Color *, bool, bool); extern int w32_display_pixel_height (struct w32_display_info *); extern int w32_display_pixel_width (struct w32_display_info *); @@ -721,7 +721,7 @@ extern void complete_deferred_msg (HWND hwnd, UINT msg, LRESULT result); extern BOOL parse_button (int, int, int *, int *); extern void w32_sys_ring_bell (struct frame *f); -extern void w32_query_color (struct frame *, XColor *); +extern void w32_query_color (struct frame *, Emacs_Color *); extern void w32_delete_display (struct w32_display_info *dpyinfo); #define FILE_NOTIFICATIONS_SIZE 16384 diff --git a/src/xfaces.c b/src/xfaces.c index 5c2414b7b0..a8fdca70c9 100644 --- a/src/xfaces.c +++ b/src/xfaces.c @@ -348,7 +348,7 @@ static void free_face_cache (struct face_cache *); static bool merge_face_ref (struct window *w, struct frame *, Lisp_Object, Lisp_Object *, bool, struct named_merge_point *); -static int color_distance (XColor *x, XColor *y); +static int color_distance (Emacs_Color *x, Emacs_Color *y); #ifdef HAVE_WINDOW_SYSTEM static void set_font_frame_param (Lisp_Object, Lisp_Object); @@ -802,7 +802,7 @@ load_pixmap (struct frame *f, Lisp_Object name) /*********************************************************************** - X Colors + Color Handling ***********************************************************************/ /* Parse RGB_LIST, and fill in the RGB fields of COLOR. @@ -810,7 +810,7 @@ load_pixmap (struct frame *f, Lisp_Object name) Return true iff RGB_LIST is OK. */ static bool -parse_rgb_list (Lisp_Object rgb_list, XColor *color) +parse_rgb_list (Lisp_Object rgb_list, Emacs_Color *color) { #define PARSE_RGB_LIST_FIELD(field) \ if (CONSP (rgb_list) && FIXNUMP (XCAR (rgb_list))) \ @@ -835,8 +835,8 @@ parse_rgb_list (Lisp_Object rgb_list, XColor *color) returned in it. */ static bool -tty_lookup_color (struct frame *f, Lisp_Object color, XColor *tty_color, - XColor *std_color) +tty_lookup_color (struct frame *f, Lisp_Object color, Emacs_Color *tty_color, + Emacs_Color *std_color) { Lisp_Object frame, color_desc; @@ -897,7 +897,7 @@ tty_lookup_color (struct frame *f, Lisp_Object color, XColor *tty_color, bool tty_defined_color (struct frame *f, const char *color_name, - XColor *color_def, bool alloc, bool _makeIndex) + Emacs_Color *color_def, bool alloc, bool _makeIndex) { bool status = true; @@ -965,7 +965,7 @@ tty_color_name (struct frame *f, int idx) static bool face_color_gray_p (struct frame *f, const char *color_name) { - XColor color; + Emacs_Color color; bool gray_p; if (FRAME_TERMINAL (f)->defined_color_hook @@ -994,7 +994,7 @@ face_color_supported_p (struct frame *f, const char *color_name, bool background_p) { Lisp_Object frame; - XColor not_used; + Emacs_Color not_used; XSETFRAME (frame, f); return @@ -1043,7 +1043,7 @@ COLOR must be a valid color name. */) static unsigned long load_color2 (struct frame *f, struct face *face, Lisp_Object name, - enum lface_attribute_index target_index, XColor *color) + enum lface_attribute_index target_index, Emacs_Color *color) { eassert (STRINGP (name)); eassert (target_index == LFACE_FOREGROUND_INDEX @@ -1117,7 +1117,7 @@ unsigned long load_color (struct frame *f, struct face *face, Lisp_Object name, enum lface_attribute_index target_index) { - XColor color; + Emacs_Color color; return load_color2 (f, face, name, target_index, &color); } @@ -1134,7 +1134,7 @@ load_face_colors (struct frame *f, struct face *face, Lisp_Object attrs[LFACE_VECTOR_SIZE]) { Lisp_Object fg, bg, dfg; - XColor xfg, xbg; + Emacs_Color xfg, xbg; bg = attrs[LFACE_BACKGROUND_INDEX]; fg = attrs[LFACE_FOREGROUND_INDEX]; @@ -4170,7 +4170,7 @@ prepare_face_for_display (struct frame *f, struct face *face) /* Returns the `distance' between the colors X and Y. */ static int -color_distance (XColor *x, XColor *y) +color_distance (Emacs_Color *x, Emacs_Color *y) { /* This formula is from a paper titled `Colour metric' by Thiadmer Riemersma. Quoting from that paper: @@ -4205,7 +4205,7 @@ two lists of the form (RED GREEN BLUE) aforementioned. */) Lisp_Object metric) { struct frame *f = decode_live_frame (frame); - XColor cdef1, cdef2; + Emacs_Color cdef1, cdef2; if (!(CONSP (color1) && parse_rgb_list (color1, &cdef1)) && !(STRINGP (color1) @@ -4885,8 +4885,8 @@ tty_supports_face_attributes_p (struct frame *f, { int weight, slant; Lisp_Object val, fg, bg; - XColor fg_tty_color, fg_std_color; - XColor bg_tty_color, bg_std_color; + Emacs_Color fg_tty_color, fg_std_color; + Emacs_Color bg_tty_color, bg_std_color; unsigned test_caps = 0; Lisp_Object *def_attrs = def_face->lface; @@ -4988,7 +4988,7 @@ tty_supports_face_attributes_p (struct frame *f, else /* Make sure the color is really different than the default. */ { - XColor def_fg_color; + Emacs_Color def_fg_color; if (tty_lookup_color (f, def_fg, &def_fg_color, 0) && (color_distance (&fg_tty_color, &def_fg_color) <= TTY_SAME_COLOR_THRESHOLD)) @@ -5012,7 +5012,7 @@ tty_supports_face_attributes_p (struct frame *f, else /* Make sure the color is really different than the default. */ { - XColor def_bg_color; + Emacs_Color def_bg_color; if (tty_lookup_color (f, def_bg, &def_bg_color, 0) && (color_distance (&bg_tty_color, &def_bg_color) <= TTY_SAME_COLOR_THRESHOLD)) diff --git a/src/xfns.c b/src/xfns.c index c8cc1704a4..4195980d33 100644 --- a/src/xfns.c +++ b/src/xfns.c @@ -653,7 +653,7 @@ gamma_correct (struct frame *f, XColor *color) bool x_defined_color (struct frame *f, const char *color_name, - XColor *color, bool alloc_p, bool _makeIndex) + Emacs_Color *color, bool alloc_p, bool _makeIndex) { bool success_p = false; Colormap cmap = FRAME_X_COLORMAP (f); diff --git a/src/xterm.h b/src/xterm.h index 84030d5c25..758a1939d6 100644 --- a/src/xterm.h +++ b/src/xterm.h @@ -1224,7 +1224,8 @@ extern void destroy_frame_xic (struct frame *); extern void xic_set_preeditarea (struct window *, int, int); extern void xic_set_statusarea (struct frame *); extern void xic_set_xfontset (struct frame *, const char *); -extern bool x_defined_color (struct frame *, const char *, XColor *, bool, bool); +extern bool x_defined_color (struct frame *, const char *, Emacs_Color *, + bool, bool); #ifdef HAVE_X_I18N extern void free_frame_xic (struct frame *); # if defined HAVE_X_WINDOWS && defined USE_X_TOOLKIT commit 05b79539f4d22bfe5160777aa5a963aeb74b000c Author: Basil L. Contovounesios Date: Mon May 20 00:29:47 2019 +0100 ; Remove some redundant Gnus autoloads * lisp/gnus/nnheader.el: * lisp/gnus/nnmail.el: Don't autoload functions from files already loaded. diff --git a/lisp/gnus/nnheader.el b/lisp/gnus/nnheader.el index d30a739949..2686cf9305 100644 --- a/lisp/gnus/nnheader.el +++ b/lisp/gnus/nnheader.el @@ -121,7 +121,6 @@ on your system, you could say something like: (autoload 'nnmail-message-id "nnmail") (autoload 'mail-position-on-field "sendmail") -(autoload 'gnus-buffer-live-p "gnus-util") ;;; Header access macros. diff --git a/lisp/gnus/nnmail.el b/lisp/gnus/nnmail.el index b6dbbea74c..37f6e75b90 100644 --- a/lisp/gnus/nnmail.el +++ b/lisp/gnus/nnmail.el @@ -34,8 +34,6 @@ (require 'mm-util) (require 'gnus-int) -(autoload 'gnus-add-buffer "gnus") -(autoload 'gnus-kill-buffer "gnus") (autoload 'mail-send-and-exit "sendmail" nil t) (defgroup nnmail nil commit 6d5a8175b34e02fc42c965b5cf6e83c954390f0b Author: Mattias Engdegård Date: Sun May 19 22:43:31 2019 +0200 Comment out inexplicable condition in filenotify * lisp/filenotify.el (file-notify-callback): Comment out condition that does not seem to make any sense. All it seems to do is allowing notifications for files on the form DIR/X/X when we really just are watching DIR/X/Y. diff --git a/lisp/filenotify.el b/lisp/filenotify.el index 26b83ce66c..d77046d287 100644 --- a/lisp/filenotify.el +++ b/lisp/filenotify.el @@ -238,11 +238,17 @@ EVENT is the cadr of the event in `file-notify-handle-event' (string-equal (file-notify--watch-filename watch) (file-name-nondirectory file)) + ;; Directory matches. - (string-equal - (file-name-nondirectory file) - (file-name-nondirectory - (file-notify--watch-directory watch))) + ;; FIXME: What purpose would this condition serve? + ;; Doesn't it just slip through events for files + ;; having the same name as the last component of the + ;; directory of the file that we are really watching? + ;;(string-equal + ;; (file-name-nondirectory file) + ;; (file-name-nondirectory + ;; (file-notify--watch-directory watch))) + ;; File1 matches. (and (stringp file1) (string-equal commit 613565494d048ec758d5051484a17fdeccd42f00 Author: Juri Linkov Date: Sun May 19 23:16:01 2019 +0300 * lisp/vc/vc-dispatcher.el (vc-do-command): Let-bind inhibit-message to t in active minibuffer. (Bug#34939) diff --git a/lisp/vc/vc-dispatcher.el b/lisp/vc/vc-dispatcher.el index edbb83f3df..c4b327a3f0 100644 --- a/lisp/vc/vc-dispatcher.el +++ b/lisp/vc/vc-dispatcher.el @@ -324,7 +324,8 @@ case, and the process object in the asynchronous case." (apply 'start-file-process command (current-buffer) command squeezed)))) (when vc-command-messages - (message "Running in background: %s" full-command)) + (let ((inhibit-message (eq (selected-window) (active-minibuffer-window)))) + (message "Running in background: %s" full-command))) ;; Get rid of the default message insertion, in case we don't ;; set a sentinel explicitly. (set-process-sentinel proc #'ignore) @@ -332,11 +333,13 @@ case, and the process object in the asynchronous case." (setq status proc) (when vc-command-messages (vc-run-delayed - (let ((message-truncate-lines t)) + (let ((message-truncate-lines t) + (inhibit-message (eq (selected-window) (active-minibuffer-window)))) (message "Done in background: %s" full-command))))) ;; Run synchronously (when vc-command-messages - (message "Running in foreground: %s" full-command)) + (let ((inhibit-message (eq (selected-window) (active-minibuffer-window)))) + (message "Running in foreground: %s" full-command))) (let ((buffer-undo-list t)) (setq status (apply 'process-file command nil t nil squeezed))) (when (and (not (eq t okstatus)) @@ -350,7 +353,8 @@ case, and the process object in the asynchronous case." (if (integerp status) (format "status %d" status) status) full-command)) (when vc-command-messages - (message "Done (status=%d): %s" status full-command)))) + (let ((inhibit-message (eq (selected-window) (active-minibuffer-window)))) + (message "Done (status=%d): %s" status full-command))))) (vc-run-delayed (run-hook-with-args 'vc-post-command-functions command file-or-list flags)) commit 82db17d0d1231c4aa26e837f37428c44a67663ea Author: Juri Linkov Date: Sun May 19 23:11:27 2019 +0300 Publicize behavior of log-view-diff at beginning/end of active region * lisp/vc/log-view.el (log-view-diff, log-view-diff-changeset): * doc/emacs/maintaining.texi (VC Change Log): Document behavior of log-view-diff at the beginning and the end of the log buffer when the region is active. (Bug#35624) * lisp/vc/vc-git.el (vc-git-print-log): Insert newline at the beginning to enable the feature of diffing with the working revision. diff --git a/doc/emacs/maintaining.texi b/doc/emacs/maintaining.texi index 4986c11103..0fbf91ae61 100644 --- a/doc/emacs/maintaining.texi +++ b/doc/emacs/maintaining.texi @@ -1033,6 +1033,7 @@ systems support modifying change comments. Visit the revision indicated at the current line. @item d +@itemx = Display a diff between the revision at point and the next earlier revision, for the specific file. @@ -1047,6 +1048,16 @@ L}), toggle between showing and hiding the full log entry for the revision at point. @end table +To compare two arbitrary revisions, activate the region: set the +beginning of the region to the line with the first revision and the +end of the region to the line with the second revision to compare, +then type @kbd{d} or @kbd{=}. When the beginning of the region is on +the top line that has no revision, it uses the current working revision +as the first revision to compare. When the end of the region is on +the bottom non-revision line after the last revision line, then it +uses the next earlier revision after the last displayed revision as +the second revision to compare. + @vindex vc-log-show-limit Because fetching many log entries can be slow, the @file{*vc-change-log*} buffer displays no more than 2000 revisions by diff --git a/lisp/vc/log-view.el b/lisp/vc/log-view.el index 3389264ce6..0b57e1d508 100644 --- a/lisp/vc/log-view.el +++ b/lisp/vc/log-view.el @@ -585,6 +585,13 @@ point, get the diff between the revision at point and its previous revision. Otherwise, get the diff between the revisions where the region starts and ends. +When the beginning of the region is on the top line that has no revision, +use the current working revision as the first revision to compare. + +When the end of the region is on the bottom non-revision line after +the last revision line, use the previous revision of the last +displayed revision as the second revision to compare. + Unlike `log-view-diff-changeset', this function only shows the part of the changeset which affected the currently considered file(s)." @@ -600,6 +607,13 @@ point, get the diff between the revision at point and its previous revision. Otherwise, get the diff between the revisions where the region starts and ends. +When the beginning of the region is on the top line that has no revision, +use the current working revision as the first revision to compare. + +When the end of the region is on the bottom non-revision line after +the last revision line, use the previous revision of the last +displayed revision as the second revision to compare. + Unlike `log-view-diff' this function shows the whole changeset, including changes affecting other files than the currently considered file(s)." diff --git a/lisp/vc/vc-git.el b/lisp/vc/vc-git.el index 61c13026cc..b6feb3b8d1 100644 --- a/lisp/vc/vc-git.el +++ b/lisp/vc/vc-git.el @@ -1017,8 +1017,8 @@ If LIMIT is a revision string, use it as an end-revision." ;; If the buffer exists from a previous invocation it might be ;; read-only. (let ((inhibit-read-only t)) - (with-current-buffer - buffer + (with-current-buffer buffer + (insert "\n") (apply 'vc-git-command buffer 'async files (append commit 1b2b136a17d222892af9c25559e1b4c41de7831c Author: Lars Ingebrigtsen Date: Sun May 19 20:50:54 2019 +0200 cus-edit.el: Remove XEmacs compat code * lisp/cus-edit.el (custom-browse-insert-prefix): Remove XEmacs compat code and make obsolete. (custom-group-value-create): Use `insert' directly. * lisp/emacs-lisp/elint.el (elint-check-conditional-form): Don't refer to function that doesn't have an if any more. diff --git a/lisp/cus-edit.el b/lisp/cus-edit.el index f87b6b621c..6d47e607ae 100644 --- a/lisp/cus-edit.el +++ b/lisp/cus-edit.el @@ -1827,20 +1827,9 @@ item in another window.\n\n")) (" `-" "bottom"))) (defun custom-browse-insert-prefix (prefix) - "Insert PREFIX. On XEmacs convert it to line graphics." - ;; Fixme: do graphics. - (if nil ; (featurep 'xemacs) - (progn - (insert "*") - (while (not (string-equal prefix "")) - (let ((entry (substring prefix 0 3))) - (setq prefix (substring prefix 3)) - (let ((overlay (make-overlay (1- (point)) (point) nil t nil)) - (name (nth 1 (assoc entry custom-browse-alist)))) - (overlay-put overlay 'end-glyph (widget-glyph-find name entry)) - (overlay-put overlay 'start-open t) - (overlay-put overlay 'end-open t))))) - (insert prefix))) + "Insert PREFIX." + (declare (obsolete insert "27.1")) + (insert prefix)) ;;; Modification of Basic Widgets. ;; @@ -4043,7 +4032,7 @@ If GROUPS-ONLY is non-nil, return only those members that are groups." (cond ((and (eq custom-buffer-style 'tree) (eq state 'hidden) (or members (custom-unloaded-widget-p widget))) - (custom-browse-insert-prefix prefix) + (insert prefix) (push (widget-create-child-and-convert widget 'custom-browse-visibility :tag "+") @@ -4056,19 +4045,17 @@ If GROUPS-ONLY is non-nil, return only those members that are groups." (widget-put widget :buttons buttons)) ((and (eq custom-buffer-style 'tree) (zerop (length members))) - (custom-browse-insert-prefix prefix) - (insert "[ ]-- ") + (insert prefix "[ ]-- ") (push (widget-create-child-and-convert widget 'custom-browse-group-tag) buttons) (insert " " tag "\n") (widget-put widget :buttons buttons)) ((eq custom-buffer-style 'tree) - (custom-browse-insert-prefix prefix) + (insert prefix) (if (zerop (length members)) (progn - (custom-browse-insert-prefix prefix) - (insert "[ ]-- ") + (insert prefix "[ ]-- ") ;; (widget-glyph-insert nil "[ ]" "empty") ;; (widget-glyph-insert nil "-- " "horizontal") (push (widget-create-child-and-convert diff --git a/lisp/emacs-lisp/elint.el b/lisp/emacs-lisp/elint.el index 3f49b51acd..4a53972016 100644 --- a/lisp/emacs-lisp/elint.el +++ b/lisp/emacs-lisp/elint.el @@ -937,7 +937,7 @@ Does basic handling of `featurep' tests." ((and (memq func '(unless or)) (equal test '(featurep (quote emacs))))) ((and (eq func 'if) - (or (null test) ; eg custom-browse-insert-prefix + (or (null test) (member test '((featurep (quote xemacs)) (not (featurep (quote emacs))))) (and (eq (car-safe test) 'and) commit a9c1e18517bbd4a49dd12c4bff085315e2d79083 Author: Lars Ingebrigtsen Date: Sun May 19 20:40:43 2019 +0200 bs.el: Remove XEmacs compat code * lisp/bs.el (bs-mode-font-lock-keywords): Remove XEmacs compat code. (bs-mode-map): Ditto. diff --git a/lisp/bs.el b/lisp/bs.el index 86a19fddcc..cd9524a440 100644 --- a/lisp/bs.el +++ b/lisp/bs.el @@ -181,12 +181,7 @@ return a string representing the column's value." (list (bs--make-header-match-string) '(1 font-lock-type-face append) '(1 'bold append)) ;; Buffername embedded by * - (list "^\\(.*\\*.*\\*.*\\)$" - 1 - ;; problem in XEmacs with font-lock-constant-face - (if (facep 'font-lock-constant-face) - 'font-lock-constant-face - 'font-lock-comment-face)) + (list "^\\(.*\\*.*\\*.*\\)$" 1 'font-lock-constant-face) ;; Dired-Buffers '("^..\\(.*Dired .*\\)$" 1 font-lock-function-name-face) ;; the star for modified buffers @@ -343,11 +338,6 @@ configuration. A value of `never' means to never show the buffer. A value of `always' means to show buffer regardless of the configuration.") -;; Make face named region (for XEmacs) -(unless (facep 'region) - (make-face 'region) - (set-face-background 'region "gray75")) - (defun bs--sort-by-name (b1 b2) "Compare buffers B1 and B2 by buffer name." (string< (buffer-name b1) @@ -448,8 +438,7 @@ Used internally, only.") (define-key map "f" 'bs-select) (define-key map "v" 'bs-view) (define-key map "!" 'bs-select-in-one-window) - (define-key map [mouse-2] 'bs-mouse-select) ;; for GNU EMACS - (define-key map [button2] 'bs-mouse-select) ;; for XEmacs + (define-key map [mouse-2] 'bs-mouse-select) (define-key map "F" 'bs-select-other-frame) (let ((key ?1)) (while (<= key ?9) @@ -459,10 +448,7 @@ Used internally, only.") (define-key map "\e-" 'negative-argument) (define-key map "o" 'bs-select-other-window) (define-key map "\C-o" 'bs-tmp-select-other-window) - ;; for GNU EMACS (define-key map [mouse-3] 'bs-mouse-select-other-frame) - ;; for XEmacs - (define-key map [button3] 'bs-mouse-select-other-frame) (define-key map [up] 'bs-up) (define-key map "n" 'bs-down) (define-key map "p" 'bs-up) commit 24d30cd61ad460739da0d9a8d397a0eca70c65f0 Author: Lars Ingebrigtsen Date: Sun May 19 20:37:54 2019 +0200 arc-mode.el: Remove XEmacs compat code * lisp/arc-mode.el (archive-mode-map): Remove XEmacs compat code. (archive-summarize-files): Ditto. diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el index 7fa403f6ca..7f435f17a1 100644 --- a/lisp/arc-mode.el +++ b/lisp/arc-mode.el @@ -417,70 +417,66 @@ file. Archive and member name will be added." (substitute-key-definition 'advertised-undo 'archive-undo map global-map) (substitute-key-definition 'undo 'archive-undo map global-map)) - (define-key map - (if (featurep 'xemacs) 'button2 [mouse-2]) 'archive-extract) - - (if (featurep 'xemacs) - () ; out of luck - - (define-key map [menu-bar immediate] - (cons "Immediate" (make-sparse-keymap "Immediate"))) - (define-key map [menu-bar immediate alternate] - '(menu-item "Alternate Display" archive-alternate-display - :enable (boundp (archive-name "alternate-display")) - :help "Toggle alternate file info display")) - (define-key map [menu-bar immediate view] - '(menu-item "View This File" archive-view - :help "Display file at cursor in View Mode")) - (define-key map [menu-bar immediate display] - '(menu-item "Display in Other Window" archive-display-other-window - :help "Display file at cursor in another window")) - (define-key map [menu-bar immediate find-file-other-window] - '(menu-item "Find in Other Window" archive-extract-other-window - :help "Edit file at cursor in another window")) - (define-key map [menu-bar immediate find-file] - '(menu-item "Find This File" archive-extract - :help "Extract file at cursor and edit it")) - - (define-key map [menu-bar mark] - (cons "Mark" (make-sparse-keymap "Mark"))) - (define-key map [menu-bar mark unmark-all] - '(menu-item "Unmark All" archive-unmark-all-files - :help "Unmark all marked files")) - (define-key map [menu-bar mark deletion] - '(menu-item "Flag" archive-flag-deleted - :help "Flag file at cursor for deletion")) - (define-key map [menu-bar mark unmark] - '(menu-item "Unflag" archive-unflag - :help "Unmark file at cursor")) - (define-key map [menu-bar mark mark] - '(menu-item "Mark" archive-mark - :help "Mark file at cursor")) - - (define-key map [menu-bar operate] - (cons "Operate" (make-sparse-keymap "Operate"))) - (define-key map [menu-bar operate chown] - '(menu-item "Change Owner..." archive-chown-entry - :enable (fboundp (archive-name "chown-entry")) - :help "Change owner of marked files")) - (define-key map [menu-bar operate chgrp] - '(menu-item "Change Group..." archive-chgrp-entry - :enable (fboundp (archive-name "chgrp-entry")) - :help "Change group ownership of marked files")) - (define-key map [menu-bar operate chmod] - '(menu-item "Change Mode..." archive-chmod-entry - :enable (fboundp (archive-name "chmod-entry")) - :help "Change mode (permissions) of marked files")) - (define-key map [menu-bar operate rename] - '(menu-item "Rename to..." archive-rename-entry - :enable (fboundp (archive-name "rename-entry")) - :help "Rename marked files")) - ;;(define-key map [menu-bar operate copy] - ;; '(menu-item "Copy to..." archive-copy)) - (define-key map [menu-bar operate expunge] - '(menu-item "Expunge Marked Files" archive-expunge - :help "Delete all flagged files from archive")) - map)) + (define-key map [mouse-2] 'archive-extract) + + (define-key map [menu-bar immediate] + (cons "Immediate" (make-sparse-keymap "Immediate"))) + (define-key map [menu-bar immediate alternate] + '(menu-item "Alternate Display" archive-alternate-display + :enable (boundp (archive-name "alternate-display")) + :help "Toggle alternate file info display")) + (define-key map [menu-bar immediate view] + '(menu-item "View This File" archive-view + :help "Display file at cursor in View Mode")) + (define-key map [menu-bar immediate display] + '(menu-item "Display in Other Window" archive-display-other-window + :help "Display file at cursor in another window")) + (define-key map [menu-bar immediate find-file-other-window] + '(menu-item "Find in Other Window" archive-extract-other-window + :help "Edit file at cursor in another window")) + (define-key map [menu-bar immediate find-file] + '(menu-item "Find This File" archive-extract + :help "Extract file at cursor and edit it")) + + (define-key map [menu-bar mark] + (cons "Mark" (make-sparse-keymap "Mark"))) + (define-key map [menu-bar mark unmark-all] + '(menu-item "Unmark All" archive-unmark-all-files + :help "Unmark all marked files")) + (define-key map [menu-bar mark deletion] + '(menu-item "Flag" archive-flag-deleted + :help "Flag file at cursor for deletion")) + (define-key map [menu-bar mark unmark] + '(menu-item "Unflag" archive-unflag + :help "Unmark file at cursor")) + (define-key map [menu-bar mark mark] + '(menu-item "Mark" archive-mark + :help "Mark file at cursor")) + + (define-key map [menu-bar operate] + (cons "Operate" (make-sparse-keymap "Operate"))) + (define-key map [menu-bar operate chown] + '(menu-item "Change Owner..." archive-chown-entry + :enable (fboundp (archive-name "chown-entry")) + :help "Change owner of marked files")) + (define-key map [menu-bar operate chgrp] + '(menu-item "Change Group..." archive-chgrp-entry + :enable (fboundp (archive-name "chgrp-entry")) + :help "Change group ownership of marked files")) + (define-key map [menu-bar operate chmod] + '(menu-item "Change Mode..." archive-chmod-entry + :enable (fboundp (archive-name "chmod-entry")) + :help "Change mode (permissions) of marked files")) + (define-key map [menu-bar operate rename] + '(menu-item "Rename to..." archive-rename-entry + :enable (fboundp (archive-name "rename-entry")) + :help "Rename marked files")) + ;;(define-key map [menu-bar operate copy] + ;; '(menu-item "Copy to..." archive-copy)) + (define-key map [menu-bar operate expunge] + '(menu-item "Expunge Marked Files" archive-expunge + :help "Delete all flagged files from archive")) + map) "Local keymap for archive mode listings.") (defvar archive-file-name-indent nil "Column where file names start.") @@ -838,13 +834,11 @@ when parsing the archive." ;; Using `concat' here copies the text also, so we can add ;; properties without problems. (let ((text (concat (aref fil 0) "\n"))) - (if (featurep 'xemacs) - () ; out of luck - (add-text-properties - (aref fil 1) (aref fil 2) - '(mouse-face highlight - help-echo "mouse-2: extract this file into a buffer") - text)) + (add-text-properties + (aref fil 1) (aref fil 2) + '(mouse-face highlight + help-echo "mouse-2: extract this file into a buffer") + text) text)) files))) (setq archive-file-list-end (point-marker))) commit d4af2f3001fea2d9ea46facaf26d3330bd8626e2 Author: Lars Ingebrigtsen Date: Sun May 19 20:30:58 2019 +0200 rfc2104.el: Remove XEmacs compat code. * lisp/net/rfc2104.el (rfc2104-string-make-unibyte): Remove XEmacs compat code. diff --git a/lisp/net/rfc2104.el b/lisp/net/rfc2104.el index 68c35aa313..9d4957ddb5 100644 --- a/lisp/net/rfc2104.el +++ b/lisp/net/rfc2104.el @@ -84,14 +84,6 @@ (setq ls (cdr ls))) v)) -(eval-when-compile - (defmacro rfc2104-string-make-unibyte (string) - "Return the unibyte equivalent of STRING. -In XEmacs return just STRING." - (if (featurep 'xemacs) - string - `(string-make-unibyte ,string)))) - (defun rfc2104-hash (hash block-length hash-length key text) (let* (;; if key is longer than B, reset it to HASH(key) (key (if (> (length key) block-length) @@ -107,7 +99,7 @@ In XEmacs return just STRING." (aset ipad i (logxor rfc2104-ipad c)) (aset opad i (logxor rfc2104-opad c))) ;; Perform inner hash. - (setq partial (rfc2104-string-make-unibyte + (setq partial (string-make-unibyte (funcall hash (concat ipad text)))) ;; Pack latter part of opad. (cl-do ((r 0 (+ 2 r)) @@ -117,7 +109,7 @@ In XEmacs return just STRING." (+ (* 16 (aref rfc2104-nybbles (aref partial r))) ( aref rfc2104-nybbles (aref partial (1+ r)))))) ;; Perform outer hash. - (rfc2104-string-make-unibyte (funcall hash opad)))) + (string-make-unibyte (funcall hash opad)))) (provide 'rfc2104) commit fac11d899be24fa031c360fd20c038b9432853ec Author: Lars Ingebrigtsen Date: Sun May 19 20:26:48 2019 +0200 (mml-generate-mime-1): Remove XEmacs compat code * lisp/gnus/mml.el (mml-generate-mime-1): Remove XEmacs compat code. diff --git a/lisp/gnus/mml.el b/lisp/gnus/mml.el index b0b4fd0a54..1df4e28f13 100644 --- a/lisp/gnus/mml.el +++ b/lisp/gnus/mml.el @@ -702,9 +702,7 @@ be \"related\" or \"alternate\"." filename))))) (t (let ((contents (cdr (assq 'contents cont)))) - (if (if (featurep 'xemacs) - (string-match "[^\000-\377]" contents) - (multibyte-string-p contents)) + (if (multibyte-string-p contents) (progn (set-buffer-multibyte t) (insert contents) commit 2b313d17399d3118c466775a7d768492b6785e75 Author: Michael Albinus Date: Sun May 19 19:52:46 2019 +0200 ; Instrument autorevert-tests diff --git a/test/lisp/autorevert-tests.el b/test/lisp/autorevert-tests.el index af9edac1be..0cc5b9c4e9 100644 --- a/test/lisp/autorevert-tests.el +++ b/test/lisp/autorevert-tests.el @@ -148,7 +148,9 @@ This expects `auto-revert--messages' to be bound by (skip-unless (auto-revert--test-enabled-remote)) (tramp-cleanup-connection (tramp-dissect-file-name temporary-file-directory) nil 'keep-password) - (funcall (ert-test-body ert-test))))) + (condition-case err + (funcall (ert-test-body ert-test)) + (error (message "%s" err) (signal car err cdr err)))))) (ert-deftest auto-revert-test00-auto-revert-mode () "Check autorevert for a file." commit 2be537e6433b9b2a8d9dcb9c23493755d35d6ecc Author: Stephen Leake Date: Sun May 19 10:28:46 2019 -0700 Minor updates to project.el * lisp/progmodes/project.el (project-find-file): Add optional 'filename' arg. (project--completing-read-strict): Ignore 'default' set to empty string. diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el index cc45a71f57..e44cee2133 100644 --- a/lisp/progmodes/project.el +++ b/lisp/progmodes/project.el @@ -443,14 +443,14 @@ pattern to search for." (read-regexp "Find regexp" (and id (regexp-quote id))))) ;;;###autoload -(defun project-find-file () +(defun project-find-file (&optional filename) "Visit a file (with completion) in the current project's roots. The completion default is the filename at point, if one is recognized." (interactive) (let* ((pr (project-current t)) (dirs (project-roots pr))) - (project-find-file-in (thing-at-point 'filename) dirs pr))) + (project-find-file-in (or filename (thing-at-point 'filename)) dirs pr))) ;;;###autoload (defun project-or-external-find-file () @@ -522,7 +522,7 @@ PREDICATE, HIST, and DEFAULT have the same meaning as in ;; removing it when it has no matches. Neither seems natural ;; enough. Removal is confusing; early expansion makes the prompt ;; too long. - (let* ((new-prompt (if default + (let* ((new-prompt (if (and default (not (string-equal default ""))) (format "%s (default %s): " prompt default) (format "%s: " prompt))) (res (completing-read new-prompt commit e4eb8c850145248c1f3c4235cdd8d11b1c05bb1e Author: Eric Abrahamsen Date: Sun May 19 09:57:50 2019 -0700 Fix Gnus group sorting to use gnus-group-list * lisp/gnus/gnus-group.el (gnus-group-sort-flat): As gnus-newsrc-hashtb is now a real (unsorted) hash table, use gnus-group-list to maintain group sort order. (gnus-group-sort-selected-flat): Ditto. * lisp/gnus/gnus-start.el (gnus-subscribe-alphabetically): Simplify function using seq-find. (gnus-subscribe-killed, gnus-subscribe-zombies): Use cl-pushnew to avoid adding duplicates (can happen when un/subscribing multiple times to one group). diff --git a/lisp/gnus/gnus-group.el b/lisp/gnus/gnus-group.el index c757c82fbc..4a14de33b0 100644 --- a/lisp/gnus/gnus-group.el +++ b/lisp/gnus/gnus-group.el @@ -3300,21 +3300,31 @@ If REVERSE (the prefix), reverse the sorting order." (funcall gnus-group-sort-alist-function (gnus-make-sort-function func) reverse) (gnus-group-unmark-all-groups) + ;; Redisplay all groups according to the newly-sorted order of + ;; `gnus-group-list'. (gnus-group-list-groups) (gnus-dribble-touch)) (defun gnus-group-sort-flat (func reverse) - ;; We peel off the dummy group from the alist. + "Sort groups in a flat list using sorting function FUNC. +If REVERSE is non-nil, reverse the sort order. + +This function sets a new value for `gnus-group-list'; its return +value is disregarded." (when func - (when (equal (gnus-info-group (car gnus-newsrc-alist)) "dummy.group") - (pop gnus-newsrc-alist)) - ;; Do the sorting. - (setq gnus-newsrc-alist - (sort gnus-newsrc-alist func)) - (when reverse - (setq gnus-newsrc-alist (nreverse gnus-newsrc-alist))) - ;; Regenerate the hash table. - (gnus-make-hashtable-from-newsrc-alist))) + (let* ((groups (remove "dummy.group" gnus-group-list)) + (sorted-infos + (sort (mapcar (lambda (g) + (gnus-get-info g)) + groups) + func))) + (setq gnus-group-list + (mapcar (lambda (i) + (gnus-info-group i)) + sorted-infos)) + (when reverse + (setq gnus-group-list (nreverse gnus-group-list))) + (setq gnus-group-list (cons "dummy.group" gnus-group-list))))) (defun gnus-group-sort-groups-by-alphabet (&optional reverse) "Sort the group buffer alphabetically by group name. @@ -3377,27 +3387,26 @@ If REVERSE, sort in reverse order." (gnus-dribble-touch))) (defun gnus-group-sort-selected-flat (groups func reverse) - (let (entries infos) - ;; First find all the group entries for these groups. - (while groups - (push (nthcdr 2 (gnus-group-entry (pop groups))) - entries)) - ;; Then sort the infos. - (setq infos - (sort - (mapcar - (lambda (entry) (car entry)) - (setq entries (nreverse entries))) - func)) + "Sort only the selected GROUPS, using FUNC. +If REVERSE is non-nil, reverse the sorting." + (let ((infos (sort + (mapcar (lambda (g) + (gnus-get-info g)) + groups) + func)) + sorted-groups) (when reverse (setq infos (nreverse infos))) - ;; Go through all the infos and replace the old entries - ;; with the new infos. - (while infos - (setcar (car entries) (pop infos)) - (pop entries)) - ;; Update the hashtable. - (gnus-make-hashtable-from-newsrc-alist))) + (setq sorted-groups (mapcar (lambda (i) (gnus-info-group i)) infos)) + + ;; Find the original locations of GROUPS in `gnus-group-list', and + ;; replace each one, in order, with a group from SORTED-GROUPS. + (dolist (i (sort (mapcar (lambda (g) + (seq-position gnus-group-list g)) + groups) + #'<)) + (setf (nth i gnus-group-list) + (pop sorted-groups))))) (defun gnus-group-sort-selected-groups-by-alphabet (&optional n reverse) "Sort the group buffer alphabetically by group name. diff --git a/lisp/gnus/gnus-start.el b/lisp/gnus/gnus-start.el index 2f8a260bf1..ef07dcd23c 100644 --- a/lisp/gnus/gnus-start.el +++ b/lisp/gnus/gnus-start.el @@ -583,12 +583,9 @@ Can be used to turn version control on or off." (defun gnus-subscribe-alphabetically (newgroup) "Subscribe new NEWGROUP and insert it in alphabetical order." - (let ((groups (cdr gnus-newsrc-alist)) - before) - (while (and (not before) groups) - (if (string< newgroup (caar groups)) - (setq before (caar groups)) - (setq groups (cdr groups)))) + (let ((before (seq-find (lambda (group) + (string< newgroup group)) + (cdr gnus-group-list)))) (gnus-subscribe-newsgroup newgroup before))) (defun gnus-subscribe-hierarchically (newgroup) @@ -618,15 +615,15 @@ It is inserted in hierarchical newsgroup order if subscribed. If not, it is killed." (if (gnus-y-or-n-p (format "Subscribe new newsgroup %s? " group)) (gnus-subscribe-hierarchically group) - (push group gnus-killed-list))) + (gnus-subscribe-killed group))) (defun gnus-subscribe-zombies (group) "Make the new GROUP into a zombie group." - (push group gnus-zombie-list)) + (cl-pushnew group gnus-zombie-list :test #'equal)) (defun gnus-subscribe-killed (group) "Make the new GROUP a killed group." - (push group gnus-killed-list)) + (cl-pushnew group gnus-killed-list :test #'equal)) (defun gnus-subscribe-newsgroup (newsgroup &optional next) "Subscribe new NEWSGROUP. commit d86235fee5b71f6212fc6abf242925a4c3e88200 Author: Lars Ingebrigtsen Date: Sun May 19 18:35:33 2019 +0200 Remove usage of string-to-multibyte from arc-mode.el * lisp/arc-mode.el (arc-insert-unibyte): Rename from insert-unibyte, make into a function, and remove the superfluous string-to-multibyte. Change callers throughout the file. diff --git a/lisp/arc-mode.el b/lisp/arc-mode.el index 9eec7ea086..7fa403f6ca 100644 --- a/lisp/arc-mode.el +++ b/lisp/arc-mode.el @@ -516,14 +516,12 @@ Each descriptor is a vector of the form ;; ------------------------------------------------------------------------- ;;; Section: Support functions. -(eval-when-compile - (defsubst insert-unibyte (&rest args) - "Like insert but don't make unibyte string and eight-bit char multibyte." - (dolist (elt args) - (if (integerp elt) - (insert (if (< elt 128) elt (decode-char 'eight-bit elt))) - (insert (string-to-multibyte elt))))) - ) +(defun arc-insert-unibyte (&rest args) + "Like insert but don't make unibyte string and eight-bit char multibyte." + (dolist (elt args) + (if (integerp elt) + (insert (if (< elt 128) elt (decode-char 'eight-bit elt))) + (insert elt)))) (defsubst archive-name (suffix) (intern (concat "archive-" (symbol-name archive-subtype) "-" suffix))) @@ -1544,7 +1542,7 @@ This doesn't recover lost files, it just undoes changes in the buffer itself." (widen) (goto-char (+ archive-proper-file-start (aref descr 4) 2)) (delete-char 13) - (insert-unibyte name))))) + (arc-insert-unibyte name))))) ;; ------------------------------------------------------------------------- ;;; Section: Lzh Archives @@ -1722,10 +1720,10 @@ This doesn't recover lost files, it just undoes changes in the buffer itself." (error "The file name is too long")) (goto-char (+ p 21)) (delete-char (1+ oldfnlen)) - (insert-unibyte newfnlen newname) + (arc-insert-unibyte newfnlen newname) (goto-char p) (delete-char 2) - (insert-unibyte newhsize (archive-lzh-resum p newhsize)))))) + (arc-insert-unibyte newhsize (archive-lzh-resum p newhsize)))))) (defun archive-lzh-ogm (newval files errtxt ofs) (save-excursion @@ -1744,10 +1742,10 @@ This doesn't recover lost files, it just undoes changes in the buffer itself." (setq newval (funcall newval (archive-l-e (+ p2 ofs) 2)))) (goto-char (+ p2 ofs)) (delete-char 2) - (insert-unibyte (logand newval 255) (ash newval -8)) + (arc-insert-unibyte (logand newval 255) (ash newval -8)) (goto-char (1+ p)) (delete-char 1) - (insert-unibyte (archive-lzh-resum (1+ p) hsize))) + (arc-insert-unibyte (archive-lzh-resum (1+ p) hsize))) (message "Member %s does not have %s field" (aref fil 1) errtxt))))))) @@ -1923,11 +1921,12 @@ This doesn't recover lost files, it just undoes changes in the buffer itself." (cond ((memq creator '(2 3)) ; Unix (goto-char (+ p 40)) (delete-char 2) - (insert-unibyte (logand newval 255) (ash newval -8))) + (arc-insert-unibyte (logand newval 255) (ash newval -8))) ((memq creator '(0 5 6 7 10 11 15)) ; Dos etc. (goto-char (+ p 38)) - (insert-unibyte (logior (logand (get-byte (point)) 254) - (logand (logxor 1 (ash newval -7)) 1))) + (arc-insert-unibyte + (logior (logand (get-byte (point)) 254) + (logand (logxor 1 (ash newval -7)) 1))) (delete-char 1)) (t (message "Don't know how to change mode for this member")))) )))) commit 45fc6685b2e9baa23737a3789aef67e1a0f38ce2 Author: Paul Eggert Date: Sun May 19 08:27:46 2019 -0700 * doc/lispintro/emacs-lisp-intro.texi: Remove euphemism. diff --git a/doc/lispintro/emacs-lisp-intro.texi b/doc/lispintro/emacs-lisp-intro.texi index 09b6698722..46d86acd4c 100644 --- a/doc/lispintro/emacs-lisp-intro.texi +++ b/doc/lispintro/emacs-lisp-intro.texi @@ -21858,14 +21858,14 @@ MENU ENTRY: NODE NAME. @end ifnottex @quotation -Robert J. Chassell started working with GNU Emacs in 1985. He wrote +Robert J. Chassell (1946--2017) started working with GNU Emacs in 1985. He wrote and edited, taught Emacs and Emacs Lisp, and spoke throughout the world on software freedom. Chassell was a founding Director and Treasurer of the Free Software Foundation, Inc. He was co-author of the @cite{Texinfo} manual, and edited more than a dozen other books. He graduated from Cambridge University, in England. He had an abiding interest in social and economic history and flew his own -airplane. He passed away on 30 June 2017. +airplane. @uref{https://www.fsf.org/blogs/community/goodbye-to-bob-chassell, "Goodbye to Bob Chassell"} commit d7c8196c96fd4bb732d1336305943feb3badf27c Author: Noam Postavsky Date: Sun May 12 12:42:35 2019 -0400 Fix dired-omit-files regexp (Bug#35668) * lisp/dired-x.el (dired-omit-files): Match beginning and end of string, rather than beginning and end of line. diff --git a/lisp/dired-x.el b/lisp/dired-x.el index defc541ddc..3b78ec47d9 100644 --- a/lisp/dired-x.el +++ b/lisp/dired-x.el @@ -159,7 +159,7 @@ See Info node `(dired-x) Omitting Variables' for more information." (put 'dired-omit-mode 'safe-local-variable 'booleanp) -(defcustom dired-omit-files "^\\.?#\\|^\\.$\\|^\\.\\.$" +(defcustom dired-omit-files "\\`[.]?#\\|\\`[.][.]?\\'" "Filenames matching this regexp will not be displayed. This only has effect when `dired-omit-mode' is t. See interactive function `dired-omit-mode' (\\[dired-omit-mode]) and variable commit d0e9113de9783094b4da7f6aeee131194653c325 Author: Stefan Monnier Date: Sun May 19 09:36:22 2019 -0400 * lisp/progmodes/hideshow.el: Simplify mouse binding; Use lexical-binding (hs-set-up-overlay, hs-adjust-block-beginning): Use non-nil default for function variables, so `add-function` can be used on them. (hs-toggle-hiding): Make it work for mouse bindings as well. (hs-minor-mode-map): Use it for the mouse binding. (hs-grok-mode-type): Use bound-and-true-p. (hs-life-goes-on): Use `declare` for the debug spec. (hs-mouse-toggle-hiding): Make it an obsolete alias. diff --git a/lisp/progmodes/hideshow.el b/lisp/progmodes/hideshow.el index dcce2a6e2a..1d62bb5875 100644 --- a/lisp/progmodes/hideshow.el +++ b/lisp/progmodes/hideshow.el @@ -1,4 +1,4 @@ -;;; hideshow.el --- minor mode cmds to selectively display code/comment blocks +;;; hideshow.el --- minor mode cmds to selectively display code/comment blocks -*- lexical-binding:t -*- ;; Copyright (C) 1994-2019 Free Software Foundation, Inc. @@ -37,7 +37,7 @@ ;; hs-show-all C-c @ C-M-s ;; hs-hide-level C-c @ C-l ;; hs-toggle-hiding C-c @ C-c -;; hs-mouse-toggle-hiding [(shift mouse-2)] +;; hs-toggle-hiding [(shift mouse-2)] ;; hs-hide-initial-comment-block ;; ;; Blocks are defined per mode. In c-mode, c++-mode and java-mode, they @@ -55,8 +55,7 @@ ;; Then, add the following to your init file: ;; ;; (load-library "hideshow") -;; (add-hook 'X-mode-hook ; other modes similarly -;; (lambda () (hs-minor-mode 1))) +;; (add-hook 'X-mode-hook #'hs-minor-mode) ; other modes similarly ;; ;; where X = {emacs-lisp,c,c++,perl,...}. You can also manually toggle ;; hideshow minor mode by typing `M-x hs-minor-mode'. After hideshow is @@ -181,8 +180,8 @@ ;; (5) Hideshow interacts badly with Ediff and `vc-diff'. At the moment, the ;; suggested workaround is to turn off hideshow entirely, for example: ;; -;; (add-hook 'ediff-prepare-buffer-hook 'turn-off-hideshow) -;; (add-hook 'vc-before-checkin-hook 'turn-off-hideshow) +;; (add-hook 'ediff-prepare-buffer-hook #'turn-off-hideshow) +;; (add-hook 'vc-before-checkin-hook #'turn-off-hideshow) ;; ;; In the case of `vc-diff', here is a less invasive workaround: ;; @@ -317,7 +316,7 @@ a block), `hs-hide-all', `hs-hide-block' and `hs-hide-level'.") These commands include the toggling commands (when the result is to show a block), `hs-show-all' and `hs-show-block'.") -(defvar hs-set-up-overlay nil +(defvar hs-set-up-overlay #'ignore "Function called with one arg, OV, a newly initialized overlay. Hideshow puts a unique overlay on each range of text to be hidden in the buffer. Here is a simple example of how to use this variable: @@ -329,7 +328,7 @@ in the buffer. Here is a simple example of how to use this variable: (count-lines (overlay-start ov) (overlay-end ov)))))) - (setq hs-set-up-overlay \\='display-code-line-counts) + (setq hs-set-up-overlay #\\='display-code-line-counts) This example shows how to get information from the overlay as well as how to set its `display' property. See `hs-make-overlay' and @@ -355,7 +354,7 @@ Use the command `hs-minor-mode' to toggle or set this variable.") (define-key map "\C-c@\C-t" 'hs-hide-all) (define-key map "\C-c@\C-d" 'hs-hide-block) (define-key map "\C-c@\C-e" 'hs-toggle-hiding) - (define-key map [(shift mouse-2)] 'hs-mouse-toggle-hiding) + (define-key map [(shift mouse-2)] 'hs-toggle-hiding) map) "Keymap for hideshow minor mode.") @@ -410,7 +409,7 @@ element (using `match-beginning') before calling `hs-forward-sexp-func'.") (defvar-local hs-block-end-regexp nil "Regexp for end of block.") -(defvar-local hs-forward-sexp-func 'forward-sexp +(defvar-local hs-forward-sexp-func #'forward-sexp "Function used to do a `forward-sexp'. Should change for Algol-ish modes. For single-character block delimiters -- ie, the syntax table regexp for the character is @@ -418,7 +417,7 @@ either `(' or `)' -- `hs-forward-sexp-func' would just be `forward-sexp'. For other modes such as simula, a more specialized function is necessary.") -(defvar-local hs-adjust-block-beginning nil +(defvar-local hs-adjust-block-beginning #'identity "Function used to tweak the block beginning. The block is hidden from the position returned by this function, as opposed to hiding it from the position returned when searching @@ -575,10 +574,8 @@ and then further adjusted to be at the end of the line." ;; `p' is the point at the end of the block beginning, which ;; may need to be adjusted (save-excursion - (if hs-adjust-block-beginning - (goto-char (funcall hs-adjust-block-beginning - header-end)) - (goto-char header-end)) + (goto-char (funcall (or hs-adjust-block-beginning #'identity) + header-end)) (setq p (line-end-position))) ;; `q' is the point at the end of the block (hs-forward-sexp mdata 1) @@ -657,9 +654,8 @@ If `hs-special-modes-alist' has information associated with the current buffer's major mode, use that. Otherwise, guess start, end and `comment-start' regexps; `forward-sexp' function; and adjust-block-beginning function." - (if (and (boundp 'comment-start) - (boundp 'comment-end) - comment-start comment-end) + (if (and (bound-and-true-p comment-start) + (bound-and-true-p comment-end)) (let* ((lookup (assoc major-mode hs-special-modes-alist)) (start-elem (or (nth 1 lookup) "\\s("))) (if (listp start-elem) @@ -677,8 +673,8 @@ function; and adjust-block-beginning function." (substring c-start-regexp 0 (1- (match-end 0))) c-start-regexp))) - hs-forward-sexp-func (or (nth 4 lookup) 'forward-sexp) - hs-adjust-block-beginning (nth 5 lookup))) + hs-forward-sexp-func (or (nth 4 lookup) #'forward-sexp) + hs-adjust-block-beginning (or (nth 5 lookup) #'identity))) (setq hs-minor-mode nil) (error "%s Mode doesn't support Hideshow Minor Mode" (format-mode-line mode-name)))) @@ -729,13 +725,12 @@ Return point, or nil if original point was not in a block." "Evaluate BODY forms if variable `hs-minor-mode' is non-nil. In the dynamic context of this macro, `inhibit-point-motion-hooks' and `case-fold-search' are both t." + (declare (debug t)) `(when hs-minor-mode (let ((inhibit-point-motion-hooks t) (case-fold-search t)) ,@body))) -(put 'hs-life-goes-on 'edebug-form-spec '(&rest form)) - (defun hs-overlay-at (position) "Return hideshow overlay at POSITION, or nil if none to be found." (let ((overlays (overlays-at position)) @@ -895,24 +890,18 @@ The hook `hs-hide-hook' is run; see `run-hooks'." (message "Hiding blocks ... done")) (run-hooks 'hs-hide-hook))) -(defun hs-toggle-hiding () +(defun hs-toggle-hiding (&optional e) "Toggle hiding/showing of a block. -See `hs-hide-block' and `hs-show-block'." +See `hs-hide-block' and `hs-show-block'. +Argument E should be the event that triggered this action." (interactive) (hs-life-goes-on + (posn-set-point (event-end e)) (if (hs-already-hidden-p) (hs-show-block) (hs-hide-block)))) -(defun hs-mouse-toggle-hiding (e) - "Toggle hiding/showing of a block. -This command should be bound to a mouse key. -Argument E is a mouse event used by `mouse-set-point'. -See `hs-hide-block' and `hs-show-block'." - (interactive "@e") - (hs-life-goes-on - (mouse-set-point e) - (hs-toggle-hiding))) +(define-obsolete-function-alias 'hs-mouse-toggle-hiding #'hs-toggle-hiding "27.1") (defun hs-hide-initial-comment-block () "Hide the first block of comments in a file. @@ -939,7 +928,7 @@ The value (hs . t) is added to `buffer-invisibility-spec'. The main commands are: `hs-hide-all', `hs-show-all', `hs-hide-block', `hs-show-block', `hs-hide-level' and `hs-toggle-hiding'. There is also -`hs-hide-initial-comment-block' and `hs-mouse-toggle-hiding'. +`hs-hide-initial-comment-block'. Turning hideshow minor mode off reverts the menu bar and the variables to default values and disables the hideshow commands. @@ -957,7 +946,7 @@ Key bindings: (hs-grok-mode-type) ;; Turn off this mode if we change major modes. (add-hook 'change-major-mode-hook - 'turn-off-hideshow + #'turn-off-hideshow nil t) (easy-menu-add hs-minor-mode-menu) (set (make-local-variable 'line-move-ignore-invisible) t) commit 9199643ab2c38cd9e7f81ccff4485463f376e19d Author: Michael Albinus Date: Sun May 19 11:34:01 2019 +0000 * test/lisp/autorevert-tests.el (auto-revert--deftest-remote): Do not handle errors. diff --git a/test/lisp/autorevert-tests.el b/test/lisp/autorevert-tests.el index 8cdddf824d..af9edac1be 100644 --- a/test/lisp/autorevert-tests.el +++ b/test/lisp/autorevert-tests.el @@ -140,7 +140,6 @@ This expects `auto-revert--messages' to be bound by `(ert-deftest ,(intern (concat (symbol-name test) "-remote")) () ,docstring :tags '(:expensive-test) - (condition-case err (let ((temporary-file-directory auto-revert-test-remote-temporary-file-directory) (auto-revert-remote-files t) @@ -149,8 +148,7 @@ This expects `auto-revert--messages' to be bound by (skip-unless (auto-revert--test-enabled-remote)) (tramp-cleanup-connection (tramp-dissect-file-name temporary-file-directory) nil 'keep-password) - (funcall (ert-test-body ert-test))) - (error (message "%s" err))))) + (funcall (ert-test-body ert-test))))) (ert-deftest auto-revert-test00-auto-revert-mode () "Check autorevert for a file." commit 8783becbba410581c6384ee021e7e83ad5236a29 Author: Martin Rudalics Date: Sun May 19 11:03:05 2019 +0200 New buffer display action function 'display-buffer-in-direction' * lisp/window.el (windows-sharing-edge) (window--try-to-split-window-in-direction) (display-buffer-in-direction): New functions. * doc/lispref/windows.texi (Buffer Display Action Functions): Describe new action function 'display-buffer-in-direction'. (Buffer Display Action Alists): Describe new entry 'direction'. Amend description of 'window' entry. * etc/NEWS: Mention 'display-buffer-in-direction' and 'direction' and 'window' action alist entries. diff --git a/doc/lispref/windows.texi b/doc/lispref/windows.texi index 32e8c2afa3..96e42a148c 100644 --- a/doc/lispref/windows.texi +++ b/doc/lispref/windows.texi @@ -2601,6 +2601,63 @@ window and displaying the buffer in that window. It can fail if all windows are dedicated to other buffers (@pxref{Dedicated Windows}). @end defun +@defun display-buffer-in-direction buffer alist +This function tries to display @var{buffer} at a location specified by +@var{alist}. For this purpose, @var{alist} should contain a +@code{direction} entry whose value is one of @code{left}, @code{above} +(or @code{up}), @code{right} and @code{below} (or @code{down}). Other +values are usually interpreted as @code{below}. + +If @var{alist} also contains a @code{window} entry, its value +specifies a reference window. That value can be a special symbol like +@code{main} which stands for the selected frame's main window +(@pxref{Side Window Options and Functions}) or @code{root} standing +for the selected frame's root window (@pxref{Windows and Frames}). It +can also specify an arbitrary valid window. Any other value (or +omitting the @code{window} entry entirely) means to use the selected +window as reference window. + +This function first tries to reuse a window in the specified direction +that already shows @var{buffer}. If no such window exists, it tries +to split the reference window in order to produce a new window in the +specified direction. If this fails as well, it will try to display +@var{buffer} in an existing window in the specified direction. In +either case, the window chosen will appear on the side of the +reference window specified by the @code{direction} entry, sharing at +least one edge with the reference window. + +If the reference window is live, the edge the chosen window will share +with it is always the opposite of the one specified by the +@code{direction} entry. For example, if the value of the +@code{direction} entry is @code{left}, the chosen window's right edge +coordinate (@pxref{Coordinates and Windows}) will equal the reference +window's left edge coordinate. + +If the reference window is internal, a reused window must share with +it the edge specified by the @code{direction} entry. Hence if, for +example, the reference window is the frame's root window and the value +of the @code{direction} entry is @code{left}, a reused window must be +on the left of the frame. This means that the left edge coordinate of +the chosen window and that of the reference window are the same. + +A new window, however, will be created by splitting the reference +window such that the chosen window will share the opposite edge with +the reference window. In our example, a new root window would be +created with a new live window and the reference window as its +children. The chosen window's right edge coordinate would then equal +the left edge coordinate of the reference window. Its left edge +coordinate would equal the left edge coordinate of the frame's new +root window. + +Four special values for @code{direction} entries allow to implicitly +specify the selected frame's main window as the reference window: +@code{leftmost}, @code{top}, @code{rightmost} and @code{bottom}. This +means that instead of, for example, @w{@code{(direction . left) +(window . main)}} one can just specify @w{@code{(direction +. leftmost)}}. An existing @code{window} @var{alist} entry is ignored +in such cases. +@end defun + @defun display-buffer-below-selected buffer alist This function tries to display @var{buffer} in a window below the selected window. If there is a window below the selected one and that @@ -2934,12 +2991,20 @@ If non-@code{nil}, the value specifies the slot of the side window supposed to display the buffer. This entry is used only by @code{display-buffer-in-side-window}. +@vindex direction@r{, a buffer display action alist entry} +@item direction +The value specifies a direction which, together with a @code{window} +entry, allows @code{display-buffer-in-direction} to determine the +location of the window to display the buffer. + @vindex window@r{, a buffer display action alist entry} @item window The value specifies a window that is in some way related to the window chosen by @code{display-buffer}. This entry is currently used by @code{display-buffer-in-atom-window} to indicate the window on whose -side the new window shall be created. +side the new window shall be created. It is also used by +@code{display-buffer-in-direction} to specify the reference window on +whose side the resulting window shall appear. @vindex allow-no-window@r{, a buffer display action alist entry} @item allow-no-window diff --git a/etc/NEWS b/etc/NEWS index b4aa8d98ff..d70cda179e 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -1778,6 +1778,11 @@ detailed explanation of the new behavior. This option allows to automatically resize minibuffer-only frames similarly to how minibuffer windows are resized on "normal" frames. ++++ +** New buffer display action function 'display-buffer-in-direction'. +This function allows to specify the location of the window chosen by +'display-buffer' in various ways. + +++ ** New buffer display action alist entry 'dedicated'. Such an entry allows to specify the dedicated status of a window @@ -1789,6 +1794,16 @@ Such an entry allows to specify a minimum height of the window used for displaying a buffer. 'display-buffer-below-selected' is the only action function to respect it at the moment. ++++ +** New buffer display action alist entry 'direction'. +This entry is used to specify the location of the window chosen by +'display-buffer-in-direction'. + ++++ +** Additional meaning of display action alist entry 'window'. +A 'window' entry can now also specify a reference window for +'display-buffer-in-direction'. + +++ ** The function 'assoc-delete-all' now takes an optional predicate argument. diff --git a/lisp/window.el b/lisp/window.el index b4f5ac5cc4..2c9d177d0a 100644 --- a/lisp/window.el +++ b/lisp/window.el @@ -7534,6 +7534,152 @@ be added to ALIST." (unless (cdr (assq 'inhibit-switch-frame alist)) (window--maybe-raise-frame frame))))) +(defun windows-sharing-edge (&optional window edge within) + "Return list of live windows sharing the same edge with WINDOW. +WINDOW must be a valid window and defaults to the selected one. +EDGE stands for the edge to share and must be either 'left', +'above', 'right' or 'below'. Omitted or nil, EDGE defaults to +'left'. + +WITHIN nil means to find a live window that shares the opposite +EDGE with WINDOW. For example, if EDGE equals 'left', WINDOW has +to share (part of) the right edge of any window returned. WITHIN +non-nil means to find all live windows that share the same EDGE +with WINDOW (Window must be internal in this case). So if EDGE +equals 'left', WINDOW's left edge has to fully encompass the left +edge of any window returned." + (setq window (window-normalize-window window)) + (setq edge (or edge 'left)) + (when (and within (window-live-p window)) + (error "Cannot share edge from within live window %s" window)) + (let ((window-edges (window-edges window nil nil t)) + (horizontal (memq edge '(left right))) + (n (pcase edge + ('left 0) ('above 1) ('right 2) ('below 3)))) + (unless (numberp n) + (error "Invalid EDGE %s" edge)) + (let ((o (mod (+ 2 n) 4)) + (p (if horizontal 1 0)) + (q (if horizontal 3 2)) + windows) + (walk-window-tree + (lambda (other) + (let ((other-edges (window-edges other nil nil t))) + (when (and (not (eq window other)) + (= (nth n window-edges) + (nth (if within n o) other-edges)) + (cond + ((= (nth p window-edges) (nth p other-edges))) + ((< (nth p window-edges) (nth p other-edges)) + (< (nth p other-edges) (nth q window-edges))) + (t + (< (nth p window-edges) (nth q other-edges))))) + (setq windows (cons other windows))))) + (window-frame window) nil 'nomini) + (reverse windows)))) + +(defun window--try-to-split-window-in-direction (window direction alist) + "Try to split WINDOW in DIRECTION. +DIRECTION is passed as SIDE argument to `split-window-no-error'. +ALIST is a buffer display alist." + (and (not (frame-parameter (window-frame window) 'unsplittable)) + (let* ((window-combination-limit + ;; When `window-combination-limit' equals + ;; `display-buffer' or equals `resize-window' and a + ;; `window-height' or `window-width' alist entry are + ;; present, bind it to t so resizing steals space + ;; preferably from the window that was split. + (if (or (eq window-combination-limit 'display-buffer) + (and (eq window-combination-limit 'window-size) + (or (cdr (assq 'window-height alist)) + (cdr (assq 'window-width alist))))) + t + window-combination-limit)) + (new-window (split-window-no-error window nil direction))) + (and (window-live-p new-window) new-window)))) + +(defun display-buffer-in-direction (buffer alist) + "Try to display BUFFER in a direction specified by ALIST. +ALIST has to contain a 'direction' entry whose value should be +one of 'left', 'above' (or 'up'), 'right', and 'below' (or +'down'). Other values are usually interpreted as 'below'. + +If ALIST also contains a 'window' entry, its value specifies a +reference window. That value can be a special symbol like +'main' (which stands for the selected frame's main window) or +'root' (standings for the selected frame's root window) or an +arbitrary valid window. Any other value (or omitting the +'window' entry) means to use the selected window as reference +window. + +This function tries to reuse or split a window such that the +window produced this way is on the side of the reference window +specified by the 'direction' entry. + +Four special values for 'direction' entries allow to implicitly +specify the selected frame's main window as reference window: +'leftmost', 'top', 'rightmost' and 'bottom'. Hence, instead of +'(direction . left) (window . main)' one can simply write +'(direction . leftmost)'." + (let ((direction (cdr (assq 'direction alist)))) + (when direction + (let ((window (cdr (assq 'window alist))) + within windows other-window-shows-buffer other-window) + ;; Sanitize WINDOW. + (cond + ((or (eq window 'main) + (memq direction '(top bottom leftmost rightmost))) + (setq window (window-main-window))) + ((eq window 'root) + (setq window (frame-root-window))) + ((window-valid-p window)) + (t + (setq window (selected-window)))) + (setq within (not (window-live-p window))) + ;; Sanitize DIRECTION + (cond + ((memq direction '(left above right below))) + ((eq direction 'leftmost) + (setq direction 'left)) + ((memq direction '(top up)) + (setq direction 'above)) + ((eq direction 'rightmost) + (setq direction 'right)) + ((memq direction '(bottom down)) + (setq direction 'below)) + (t + (setq direction 'below))) + + (setq alist + (append alist + `(,(if temp-buffer-resize-mode + '(window-height . resize-temp-buffer-window) + '(window-height . fit-window-to-buffer)) + ,(when temp-buffer-resize-mode + '(preserve-size . (nil . t)))))) + + (setq windows (windows-sharing-edge window direction within)) + (dolist (other windows) + (cond + ((and (not other-window-shows-buffer) + (eq buffer (window-buffer other))) + (setq other-window-shows-buffer t) + (setq other-window other)) + ((not other-window) + (setq other-window other)))) + (or (and other-window-shows-buffer + (window--display-buffer buffer other-window 'reuse alist)) + (and (setq other-window + (window--try-to-split-window-in-direction + window direction alist)) + (window--display-buffer buffer other-window 'window alist)) + (and (setq window other-window) + (not (window-dedicated-p other-window)) + (not (window-minibuffer-p other-window)) + (window--display-buffer buffer other-window 'reuse alist))))))) + +;; This should be rewritten as +;; (display-buffer-in-direction buffer (cons '(direction . below) alist)) (defun display-buffer-below-selected (buffer alist) "Try displaying BUFFER in a window below the selected window. If there is a window below the selected one and that window @@ -7589,6 +7735,8 @@ must also contain a 'window-height' entry with the same value." (display-buffer--maybe-pop-up-frame buffer alist) (display-buffer-at-bottom buffer alist)))) +;; This should be rewritten as +;; (display-buffer-in-direction buffer (cons '(direction . bottom) alist)) (defun display-buffer-at-bottom (buffer alist) "Try displaying BUFFER in a window at the bottom of the selected frame. This either reuses such a window provided it shows BUFFER