diff --git a/ChangeLog b/ChangeLog index 2ab82350da2..09a7968d587 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2015-01-27 Paul Eggert + + Port autogen.sh hook creation to Apple Git + * autogen.sh: Do not assume that the hook samples exist. + This ports to git version 1.9.3 (Apple Git-50). + For some reason Apple decided to populate the git hooks directory + in a different way from the way that standard Git does it. + The downside is that patch applications won't be checked on Apple, + but that's better than autogen.sh failing. + Problem reported by Sam Steingold in: + http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00898.html + 2015-01-26 Paul Eggert * INSTALL.REPO: Mention minimum Git version. diff --git a/autogen.sh b/autogen.sh index c3ae1d766df..bc9c5a008e0 100755 --- a/autogen.sh +++ b/autogen.sh @@ -226,6 +226,7 @@ if test -d .git/hooks; then tailored_hooks="$tailored_hooks $hook" done for hook in applypatch-msg pre-applypatch; do + test ! -r .git/hooks/$hook.sample || cmp .git/hooks/$hook.sample .git/hooks/$hook >/dev/null 2>&1 || sample_hooks="$sample_hooks $hook" done diff --git a/etc/ChangeLog b/etc/ChangeLog index 71ecf7fad39..b31e8a99383 100644 --- a/etc/ChangeLog +++ b/etc/ChangeLog @@ -1,3 +1,7 @@ +2015-01-27 Thomas Fitzsimmons + + * NEWS: Document EUDC improvements. + 2015-01-26 Lars Ingebrigtsen * publicsuffix.txt: Install an updated version of the file from diff --git a/etc/NEWS b/etc/NEWS index d5baed3dae7..755277854b7 100644 --- a/etc/NEWS +++ b/etc/NEWS @@ -495,6 +495,38 @@ As a result of the above, these commands are now obsolete: `find-tag-other-window', `find-tag-other-frame', `find-tag-regexp', `tags-apropos' and `tags-loop-continue'. +** EUDC +EUDC's LDAP backend has been improved. + +*** EUDC supports LDAP-over-SSL URLs (ldaps://). + +*** EUDC passes LDAP passwords through a pipe to the ldapsearch +subprocess instead of on the command line. + +*** EUDC handles LDAP wildcards automatically so the user shouldn't +need to configure this manually anymore. + +*** The LDAP configuration section of EUDC's manual has been +rewritten. + +There have also been customization changes. + +*** New custom variable `eudc-server-hotlist' to allow specifying +multiple EUDC servers in init file. + +*** Custom variable `eudc-inline-query-format' defaults to completing +on email and firstname instead of surname. + +*** Custom variable `eudc-expansion-overwrites-query' defaults to nil +to avoid interfering with the kill ring. + +*** Custom variable `eudc-inline-expansion-format' defaults to +"Firstname Surname ". + +*** New custom variable `ldap-ldapsearch-password-prompt-regexp' to +allow overriding the regular expression that recognizes the ldapsearch +command line's password prompt. + ** Obsolete packages --- diff --git a/lisp/ChangeLog b/lisp/ChangeLog index ff352a25eea..80dfeef3750 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,30 @@ -2015-01-26 Stefan Monnier +2015-01-27 Sam Steingold + * progmodes/python.el (python-check-custom-command): Buffer local + because it usually includes the buffer name. + (python-check-command): Set to epylint when pyflakes is not available. + +2015-01-27 Thomas Fitzsimmons + + * net/eudcb-bbdb.el, net/eudcb-ldap.el, net/eudcb-mab.el, + net/eudc-bob.el, net/eudcb-ph.el, net/eudc.el, net/eudc-export.el, + net/eudc-hotlist.el, net/eudc-vars.el: New maintainer. + +2015-01-27 Artur Malabarba + + * isearch.el (isearch-process-search-char): Add docstring. + +2015-01-27 Oleh Krehel + + * emacs-lisp/derived.el (define-derived-mode): Declare indent 3. + +2015-01-27 Katsumi Yamaoka + + * emacs-lisp/cl.el (cl--function-convert): Run cl--labels-convert + for the case cl-flet or cl-labels form is wrapped with lexical-let + (bug#19613). + +2015-01-26 Stefan Monnier * emacs-lisp/cl-generic.el (cl--generic-method): New struct. (cl--generic): The method-table is now a (list-of cl--generic-method). diff --git a/lisp/emacs-lisp/cl.el b/lisp/emacs-lisp/cl.el index da3eab73fc4..1cd7bd76b0e 100644 --- a/lisp/emacs-lisp/cl.el +++ b/lisp/emacs-lisp/cl.el @@ -342,6 +342,8 @@ The two cases that are handled are: - renaming of F when it's a function defined via `cl-labels' or `labels'." (require 'cl-macs) (declare-function cl--expr-contains-any "cl-macs" (x y)) + (declare-function cl--labels-convert "cl-macs" (f)) + (defvar cl--labels-convert-cache) (cond ;; ¡¡Big Ugly Hack!! We can't use a compiler-macro because those are checked ;; *after* handling `function', but we want to stop macroexpansion from @@ -374,13 +376,8 @@ The two cases that are handled are: (setq cl--function-convert-cache (cons newf res)) res)))) (t - (let ((found (assq f macroexpand-all-environment))) - (if (and found (ignore-errors - (eq (cadr (cl-caddr found)) 'cl-labels-args))) - (cadr (cl-caddr (cl-cadddr found))) - (let ((res `(function ,f))) - (setq cl--function-convert-cache (cons f res)) - res)))))) + (setq cl--labels-convert-cache cl--function-convert-cache) + (cl--labels-convert f)))) (defmacro lexical-let (bindings &rest body) "Like `let', but lexically scoped. diff --git a/lisp/emacs-lisp/derived.el b/lisp/emacs-lisp/derived.el index a250ea60d21..52da4c99eaf 100644 --- a/lisp/emacs-lisp/derived.el +++ b/lisp/emacs-lisp/derived.el @@ -162,7 +162,8 @@ The new mode runs the hook constructed by the function See Info node `(elisp)Derived Modes' for more details." (declare (debug (&define name symbolp sexp [&optional stringp] [&rest keywordp sexp] def-body)) - (doc-string 4)) + (doc-string 4) + (indent 3)) (when (and docstring (not (stringp docstring))) ;; Some trickiness, since what appears to be the docstring may really be diff --git a/lisp/emacs-lisp/eieio-core.el b/lisp/emacs-lisp/eieio-core.el index 261138bfbf8..7492f0522ab 100644 --- a/lisp/emacs-lisp/eieio-core.el +++ b/lisp/emacs-lisp/eieio-core.el @@ -1258,7 +1258,7 @@ method invocation orders of the involved classes." (eieio--class-precedence-list tag)))) -;;;### (autoloads nil "eieio-compat" "eieio-compat.el" "57805f02023795a01567781e70aaf9f9") +;;;### (autoloads nil "eieio-compat" "eieio-compat.el" "b568ffb3c90ed5d0ae673f0051d608ee") ;;; Generated autoloads from eieio-compat.el (autoload 'eieio--defalias "eieio-compat" "\ diff --git a/lisp/emacs-lisp/eieio.el b/lisp/emacs-lisp/eieio.el index 3dba8e0e7bf..91469b4b96c 100644 --- a/lisp/emacs-lisp/eieio.el +++ b/lisp/emacs-lisp/eieio.el @@ -942,7 +942,7 @@ Optional argument GROUP is the sub-group of slots to display. ;;;*** -;;;### (autoloads nil "eieio-opt" "eieio-opt.el" "d7b8682e15aebad7dbe6384dc5ed655f") +;;;### (autoloads nil "eieio-opt" "eieio-opt.el" "b849f8bf1312d5ef57e53d02173e4b5a") ;;; Generated autoloads from eieio-opt.el (autoload 'eieio-browse "eieio-opt" "\ diff --git a/lisp/gnus/ChangeLog b/lisp/gnus/ChangeLog index 2f3f3753ebd..7bf4a6e01d6 100644 --- a/lisp/gnus/ChangeLog +++ b/lisp/gnus/ChangeLog @@ -1,3 +1,17 @@ +2015-01-27 Lars Ingebrigtsen + + * nnir.el (nnir-imap-expr-to-imap): Check for literal+ capability in + IMAP. + +2015-01-27 Eric Abrahamsen + + * nnir.el (nnir-run-imap): Enable non-ASCII IMAP searches. + + * nnmairix.el ("nnmairix"): Declare nnmairix as virtual. + + * gnus-bcklg.el (gnus-backlog-enter-article): No virtual groups should + be added to the backlog. + 2015-01-26 Trevor Murphy * nnimap.el (nnimap-header-parameters): Refactor and request diff --git a/lisp/gnus/gnus-bcklg.el b/lisp/gnus/gnus-bcklg.el index b26f367a79b..e0c457a8829 100644 --- a/lisp/gnus/gnus-bcklg.el +++ b/lisp/gnus/gnus-bcklg.el @@ -61,7 +61,7 @@ (defun gnus-backlog-enter-article (group number buffer) (when (and (numberp number) - (not (string-match "^nnvirtual" group))) + (not (gnus-virtual-group-p group))) (gnus-backlog-setup) (let ((ident (intern (concat group ":" (int-to-string number)) gnus-backlog-hashtb)) @@ -126,7 +126,7 @@ (defun gnus-backlog-request-article (group number &optional buffer) (when (and (numberp number) - (not (string-match "^nnvirtual" group))) + (not (gnus-virtual-group-p group))) (gnus-backlog-setup) (let ((ident (intern (concat group ":" (int-to-string number)) gnus-backlog-hashtb)) diff --git a/lisp/gnus/nnir.el b/lisp/gnus/nnir.el index 08ca7c7e06b..6d111e89e80 100644 --- a/lisp/gnus/nnir.el +++ b/lisp/gnus/nnir.el @@ -284,6 +284,8 @@ is `(valuefunc member)'." (eval-when-compile (autoload 'nnimap-buffer "nnimap") (autoload 'nnimap-command "nnimap") + (autoload 'nnimap-capability "nnimap") + (autoload 'nnimap-wait-for-line "nnimap") (autoload 'nnimap-change-group "nnimap") (autoload 'nnimap-make-thread-query "nnimap") (autoload 'gnus-registry-action "gnus-registry") @@ -968,33 +970,52 @@ details on the language and supported extensions." (catch 'found (mapcar #'(lambda (group) - (let (artlist) - (condition-case () - (when (nnimap-change-group - (gnus-group-short-name group) server) - (with-current-buffer (nnimap-buffer) - (message "Searching %s..." group) - (let ((arts 0) - (result (nnimap-command "UID SEARCH %s" - (if (string= criteria "") - qstring - (nnir-imap-make-query - criteria qstring))))) - (mapc - (lambda (artnum) - (let ((artn (string-to-number artnum))) - (when (> artn 0) - (push (vector group artn 100) - artlist) - (when (assq 'shortcut query) - (throw 'found (list artlist))) - (setq arts (1+ arts))))) - (and (car result) - (cdr (assoc "SEARCH" (cdr result))))) - (message "Searching %s... %d matches" group arts))) - (message "Searching %s...done" group)) - (quit nil)) - (nreverse artlist))) + (let (artlist) + (condition-case () + (when (nnimap-change-group + (gnus-group-short-name group) server) + (with-current-buffer (nnimap-buffer) + (message "Searching %s..." group) + (let* ((arts 0) + (literal+ (nnimap-capability "LITERAL+")) + (search (split-string + (if (string= criteria "") + qstring + (nnir-imap-make-query + criteria qstring)) + "\n")) + (coding (upcase + (replace-regexp-in-string + "-\\(unix\\|dos\\|mac\\)" "" + (symbol-name + (cdr default-process-coding-system))))) + call result) + (setq call (nnimap-send-command + "UID SEARCH CHARSET %s %s" coding (pop search))) + (while search ; Non-ascii search terms + (unless literal+ + (nnimap-wait-for-line "^\\+\\(.*\\)\n")) + (process-send-string (get-buffer-process (current-buffer)) (pop search)) + (process-send-string (get-buffer-process (current-buffer)) + (if (nnimap-newlinep nnimap-object) + "\n" + "\r\n"))) + (setq result (nnimap-get-response call)) + (mapc + (lambda (artnum) + (let ((artn (string-to-number artnum))) + (when (> artn 0) + (push (vector group artn 100) + artlist) + (when (assq 'shortcut query) + (throw 'found (list artlist))) + (setq arts (1+ arts))))) + (and (car result) + (cdr (assoc "SEARCH" (cdr result))))) + (message "Searching %s... %d matches" group arts))) + (message "Searching %s...done" group)) + (quit nil)) + (nreverse artlist))) groups)))))) (defun nnir-imap-make-query (criteria qstring) @@ -1048,25 +1069,30 @@ In future the following will be added to the language: (defun nnir-imap-expr-to-imap (criteria expr) "Convert EXPR into an IMAP search expression on CRITERIA" ;; What sort of expression is this, eh? - (cond - ;; Simple string term - ((stringp expr) - (format "%s %S" criteria expr)) - ;; Trivial term: and - ((eq expr 'and) nil) - ;; Composite term: or expression - ((eq (car-safe expr) 'or) - (format "OR %s %s" - (nnir-imap-expr-to-imap criteria (second expr)) - (nnir-imap-expr-to-imap criteria (third expr)))) - ;; Composite term: just the fax, mam - ((eq (car-safe expr) 'not) - (format "NOT (%s)" (nnir-imap-query-to-imap criteria (rest expr)))) - ;; Composite term: just expand it all. - ((and (not (null expr)) (listp expr)) - (format "(%s)" (nnir-imap-query-to-imap criteria expr))) - ;; Complex value, give up for now. - (t (error "Unhandled input: %S" expr)))) + (let ((literal+ (nnimap-capability "LITERAL+"))) + (cond + ;; Simple string term + ((stringp expr) + (format "%s %S" criteria expr)) + ;; Trivial term: and + ((eq expr 'and) nil) + ;; Composite term: or expression + ((eq (car-safe expr) 'or) + (format "OR %s %s" + (nnir-imap-expr-to-imap criteria (second expr)) + (nnir-imap-expr-to-imap criteria (third expr)))) + ;; Composite term: just the fax, mam + ((eq (car-safe expr) 'not) + (format "NOT (%s)" (nnir-imap-query-to-imap criteria (rest expr)))) + ;; Composite term: non-ascii search term + ((numberp (car-safe expr)) + (format "%s {%d%s}\n%s" criteria (car expr) + (if literal+ "+" "") (second expr))) + ;; Composite term: just expand it all. + ((and (not (null expr)) (listp expr)) + (format "(%s)" (nnir-imap-query-to-imap criteria expr))) + ;; Complex value, give up for now. + (t (error "Unhandled input: %S" expr))))) (defun nnir-imap-parse-query (string) @@ -1108,6 +1134,11 @@ that the search language can then understand and use." ((eq term 'and) 'and) ;; negated term ((eq term 'not) (list 'not (nnir-imap-next-expr))) + ;; non-ascii search string + ((and (stringp term) + (not (= (string-bytes term) + (length term)))) + (list (string-bytes term) term)) ;; generic term (t term)))) diff --git a/lisp/gnus/nnmairix.el b/lisp/gnus/nnmairix.el index 5a01ce8c25c..96b40e5b845 100644 --- a/lisp/gnus/nnmairix.el +++ b/lisp/gnus/nnmairix.el @@ -417,7 +417,7 @@ Other back ends might or might not work.") (nnoo-define-basics nnmairix) -(gnus-declare-backend "nnmairix" 'mail 'address) +(gnus-declare-backend "nnmairix" 'mail 'address 'virtual) (deffoo nnmairix-open-server (server &optional definitions) ;; just set server variables diff --git a/lisp/isearch.el b/lisp/isearch.el index 191ec8270eb..99ca73f9f54 100644 --- a/lisp/isearch.el +++ b/lisp/isearch.el @@ -2349,6 +2349,8 @@ With argument, add COUNT copies of the character." (isearch-process-search-char char count)))) (defun isearch-process-search-char (char &optional count) + "Add CHAR to the search string, COUNT times. +Search is updated accordingly." ;; * and ? are special in regexps when not preceded by \. ;; } and | are special in regexps when preceded by \. ;; Nothing special for + because it matches at least once. diff --git a/lisp/net/eudc-bob.el b/lisp/net/eudc-bob.el index 622ea72d021..f01f671de9e 100644 --- a/lisp/net/eudc-bob.el +++ b/lisp/net/eudc-bob.el @@ -3,7 +3,8 @@ ;; Copyright (C) 1999-2015 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: Pavel Janík +;; Pavel Janík +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; Package: eudc diff --git a/lisp/net/eudc-export.el b/lisp/net/eudc-export.el index bbdb294da7f..0e54d841d57 100644 --- a/lisp/net/eudc-export.el +++ b/lisp/net/eudc-export.el @@ -3,7 +3,8 @@ ;; Copyright (C) 1998-2015 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: Pavel Janík +;; Pavel Janík +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; Package: eudc diff --git a/lisp/net/eudc-hotlist.el b/lisp/net/eudc-hotlist.el index b3c9a6db0d5..7416ad090eb 100644 --- a/lisp/net/eudc-hotlist.el +++ b/lisp/net/eudc-hotlist.el @@ -3,7 +3,8 @@ ;; Copyright (C) 1998-2015 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: Pavel Janík +;; Pavel Janík +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; Package: eudc diff --git a/lisp/net/eudc-vars.el b/lisp/net/eudc-vars.el index 29ddf613376..36a583daa4d 100644 --- a/lisp/net/eudc-vars.el +++ b/lisp/net/eudc-vars.el @@ -3,7 +3,8 @@ ;; Copyright (C) 1998-2015 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: Pavel Janík +;; Pavel Janík +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; Package: eudc diff --git a/lisp/net/eudc.el b/lisp/net/eudc.el index 4dd80972e3f..cf5d13fce88 100644 --- a/lisp/net/eudc.el +++ b/lisp/net/eudc.el @@ -3,7 +3,8 @@ ;; Copyright (C) 1998-2015 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: Pavel Janík +;; Pavel Janík +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; This file is part of GNU Emacs. diff --git a/lisp/net/eudcb-bbdb.el b/lisp/net/eudcb-bbdb.el index 0400e5b5bb4..5be2bec0c5d 100644 --- a/lisp/net/eudcb-bbdb.el +++ b/lisp/net/eudcb-bbdb.el @@ -3,7 +3,8 @@ ;; Copyright (C) 1998-2015 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: Pavel Janík +;; Pavel Janík +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; Package: eudc diff --git a/lisp/net/eudcb-ldap.el b/lisp/net/eudcb-ldap.el index 92972c5f99e..1d426a7b7b0 100644 --- a/lisp/net/eudcb-ldap.el +++ b/lisp/net/eudcb-ldap.el @@ -3,7 +3,8 @@ ;; Copyright (C) 1998-2015 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: Pavel Janík +;; Pavel Janík +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; Package: eudc diff --git a/lisp/net/eudcb-mab.el b/lisp/net/eudcb-mab.el index 81d8f24ecb2..a11cd95b05d 100644 --- a/lisp/net/eudcb-mab.el +++ b/lisp/net/eudcb-mab.el @@ -3,7 +3,7 @@ ;; Copyright (C) 2003-2015 Free Software Foundation, Inc. ;; Author: John Wiegley -;; Maintainer: emacs-devel@gnu.org +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; Package: eudc diff --git a/lisp/net/eudcb-ph.el b/lisp/net/eudcb-ph.el index fc6aad671c0..1897e0b08bc 100644 --- a/lisp/net/eudcb-ph.el +++ b/lisp/net/eudcb-ph.el @@ -3,7 +3,8 @@ ;; Copyright (C) 1998-2015 Free Software Foundation, Inc. ;; Author: Oscar Figueiredo -;; Maintainer: Pavel Janík +;; Pavel Janík +;; Maintainer: Thomas Fitzsimmons ;; Keywords: comm ;; Package: eudc diff --git a/lisp/progmodes/python.el b/lisp/progmodes/python.el index d298f96bc81..13ff439bef2 100644 --- a/lisp/progmodes/python.el +++ b/lisp/progmodes/python.el @@ -3816,7 +3816,9 @@ The skeleton will be bound to python-skeleton-NAME." ;;; Code check (defcustom python-check-command - "pyflakes" + (or (executable-find "pyflakes") + (executable-find "epylint") + "install pyflakes, pylint or something else") "Command used to check a Python file." :type 'string :group 'python) @@ -3827,7 +3829,7 @@ The skeleton will be bound to python-skeleton-NAME." :type 'string :group 'python) -(defvar python-check-custom-command nil +(defvar-local python-check-custom-command nil "Internal use.") (defun python-check (command) diff --git a/src/ChangeLog b/src/ChangeLog index eb823b3e152..8e5166e22be 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,46 @@ +2015-01-27 Paul Eggert + + Use bool for boolean in xfaces.c + * dispextern.h: Adjust to signature changes. + * font.c (font_at, font_range): + * fontset.c (Finternal_char_font): + * fringe.c (draw_fringe_bitmap_1): + * xdisp.c (handle_face_prop, face_before_or_after_it_pos) + (get_next_display_element, highlight_trailing_whitespace) + (display_string, calc_line_height_property) + (note_mode_line_or_margin_highlight, note_mouse_highlight): + * xfaces.c (tty_suppress_bold_inverse_default_colors_p) + (menu_face_changed_default, recompute_basic_faces) + (Fbitmap_spec_p, parse_rgb_list, tty_lookup_color) + (tty_defined_color, defined_color, face_color_gray_p) + (face_color_supported_p, load_color2, load_face_colors) + (Fx_list_fonts, LFACEP, push_named_merge_point) + (resolve_face_name, lface_from_face_name_no_resolve) + (lface_from_face_name, get_lface_attributes_no_remap) + (get_lface_attributes, lface_fully_specified_p) + (set_lface_from_font, merge_face_vectors, merge_named_face) + (merge_face_ref, Finternal_make_lisp_face) + (Finternal_lisp_face_p, Finternal_copy_lisp_face) + (Finternal_set_lisp_face_attribute) + (update_face_from_frame_parameter, set_font_frame_param) + (face_boolean_x_resource_value) + (Finternal_set_lisp_face_attribute_from_resource) + (x_update_menu_appearance, Finternal_get_lisp_face_attribute) + (Finternal_merge_in_global_face, Fface_font, face_attr_equal_p) + (lface_equal_p, Finternal_lisp_face_equal_p) + (Finternal_lisp_face_empty_p, lface_same_font_attributes_p) + (Fcolor_distance, lookup_named_face, lookup_basic_face) + (lookup_derived_face, Fface_attributes_as_vector) + (x_supports_face_attributes_p, tty_supports_face_attributes_p) + (Fdisplay_supports_face_attributes_p, realize_basic_faces) + (realize_default_face, realize_named_face) + (realize_non_ascii_face, realize_x_face, map_tty_color) + (realize_tty_face, compute_char_face, face_at_buffer_position) + (face_for_overlay_string, face_at_string_position): + Use bool for boolean. + * xfaces.c (set_lface_from_font): + Return void, since callers never use the result. + 2015-01-26 Andreas Schwab * image.c (lookup_pixel_color): Reorder conditions that are diff --git a/src/dispextern.h b/src/dispextern.h index bf0c2fc0a47..9ea64fb9f63 100644 --- a/src/dispextern.h +++ b/src/dispextern.h @@ -3407,23 +3407,20 @@ char *choose_face_font (struct frame *, Lisp_Object *, Lisp_Object, #ifdef HAVE_WINDOW_SYSTEM void prepare_face_for_display (struct frame *, struct face *); #endif -int lookup_named_face (struct frame *, Lisp_Object, int); +int lookup_named_face (struct frame *, Lisp_Object, bool); int lookup_basic_face (struct frame *, int); int smaller_face (struct frame *, int, int); int face_with_height (struct frame *, int, int); -int lookup_derived_face (struct frame *, Lisp_Object, int, int); +int lookup_derived_face (struct frame *, Lisp_Object, int, bool); void init_frame_faces (struct frame *); void free_frame_faces (struct frame *); void recompute_basic_faces (struct frame *); -int face_at_buffer_position (struct window *w, ptrdiff_t pos, - ptrdiff_t *endptr, ptrdiff_t limit, - int mouse, int base_face_id); -int face_for_overlay_string (struct window *w, ptrdiff_t pos, - ptrdiff_t *endptr, ptrdiff_t limit, - int mouse, Lisp_Object overlay); -int face_at_string_position (struct window *w, Lisp_Object string, - ptrdiff_t pos, ptrdiff_t bufpos, - ptrdiff_t *endptr, enum face_id, int mouse); +int face_at_buffer_position (struct window *, ptrdiff_t, ptrdiff_t *, ptrdiff_t, + bool, int); +int face_for_overlay_string (struct window *, ptrdiff_t, ptrdiff_t *, ptrdiff_t, + bool, Lisp_Object); +int face_at_string_position (struct window *, Lisp_Object, ptrdiff_t, ptrdiff_t, + ptrdiff_t *, enum face_id, bool); int merge_faces (struct frame *, Lisp_Object, int, int); int compute_char_face (struct frame *, int, Lisp_Object); void free_all_realized_faces (Lisp_Object); diff --git a/src/font.c b/src/font.c index d1a008e794d..9ea43cdfc85 100644 --- a/src/font.c +++ b/src/font.c @@ -3707,10 +3707,10 @@ font_at (int c, ptrdiff_t pos, struct face *face, struct window *w, if (STRINGP (string)) face_id = face_at_string_position (w, string, pos, 0, &endptr, - DEFAULT_FACE_ID, 0); + DEFAULT_FACE_ID, false); else face_id = face_at_buffer_position (w, pos, &endptr, - pos + 100, 0, -1); + pos + 100, false, -1); face = FACE_FROM_ID (f, face_id); } if (multibyte) @@ -3754,7 +3754,7 @@ font_range (ptrdiff_t pos, ptrdiff_t pos_byte, ptrdiff_t *limit, int face_id; face_id = face_at_buffer_position (w, pos, &ignore, - *limit, 0, -1); + *limit, false, -1); face = FACE_FROM_ID (XFRAME (w->frame), face_id); } } diff --git a/src/fontset.c b/src/fontset.c index 357526bacfe..c0303fa5a34 100644 --- a/src/fontset.c +++ b/src/fontset.c @@ -1828,7 +1828,7 @@ DEFUN ("internal-char-font", Finternal_char_font, Sinternal_char_font, 1, 2, 0, w = XWINDOW (window); f = XFRAME (w->frame); face_id = face_at_buffer_position (w, pos, &dummy, - pos + 100, 0, -1); + pos + 100, false, -1); } if (! CHAR_VALID_P (c)) return Qnil; diff --git a/src/fringe.c b/src/fringe.c index 464379d0cd0..5e5ec60a48f 100644 --- a/src/fringe.c +++ b/src/fringe.c @@ -587,7 +587,7 @@ draw_fringe_bitmap_1 (struct window *w, struct glyph_row *row, int left_p, int o if (face_id == DEFAULT_FACE_ID) { Lisp_Object face = fringe_faces[which]; - face_id = NILP (face) ? lookup_named_face (f, Qfringe, 0) + face_id = NILP (face) ? lookup_named_face (f, Qfringe, false) : lookup_derived_face (f, face, FRINGE_FACE_ID, 0); if (face_id < 0) face_id = FRINGE_FACE_ID; diff --git a/src/xdisp.c b/src/xdisp.c index 0ced00f9525..5da611e0565 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -3883,7 +3883,7 @@ handle_face_prop (struct it *it) &next_stop, (IT_CHARPOS (*it) + TEXT_PROP_DISTANCE_LIMIT), - 0, it->base_face_id); + false, it->base_face_id); /* Is this a start of a run of characters with box face? Caveat: this can be called for a freshly initialized @@ -3959,7 +3959,7 @@ handle_face_prop (struct it *it) &next_stop, (IT_CHARPOS (*it) + TEXT_PROP_DISTANCE_LIMIT), - 0, + false, from_overlay); } else @@ -3994,7 +3994,7 @@ handle_face_prop (struct it *it) IT_STRING_CHARPOS (*it), bufpos, &next_stop, - base_face_id, 0); + base_face_id, false); /* Is this a start of a run of characters with box? Caveat: this can be called for a freshly allocated iterator; face_id @@ -4136,7 +4136,7 @@ face_before_or_after_it_pos (struct it *it, int before_p) charpos, bufpos, &next_check_charpos, - base_face_id, 0); + base_face_id, false); /* Correct the face for charsets different from ASCII. Do it for the multibyte case only. The face returned above is @@ -4225,7 +4225,7 @@ face_before_or_after_it_pos (struct it *it, int before_p) face_id = face_at_buffer_position (it->w, CHARPOS (pos), &next_check_charpos, - limit, 0, -1); + limit, false, -1); /* Correct the face for charsets different from ASCII. Do it for the multibyte case only. The face returned above is @@ -7203,7 +7203,7 @@ get_next_display_element (struct it *it) { next_face_id = face_at_buffer_position (it->w, CHARPOS (pos), &ignore, - CHARPOS (pos) + TEXT_PROP_DISTANCE_LIMIT, 0, -1); + CHARPOS (pos) + TEXT_PROP_DISTANCE_LIMIT, false, -1); it->end_of_box_run_p = (FACE_FROM_ID (it->f, next_face_id)->box == FACE_NO_BOX); @@ -19632,7 +19632,7 @@ highlight_trailing_whitespace (struct frame *f, struct glyph_row *row) && glyph->u.ch == ' ')) && trailing_whitespace_p (glyph->charpos)) { - int face_id = lookup_named_face (f, Qtrailing_whitespace, 0); + int face_id = lookup_named_face (f, Qtrailing_whitespace, false); if (face_id < 0) return; @@ -23642,7 +23642,7 @@ display_string (const char *string, Lisp_Object lisp_string, Lisp_Object face_st it->face_id = face_at_string_position (it->w, face_string, face_string_pos, - 0, &endptr, it->base_face_id, 0); + 0, &endptr, it->base_face_id, false); face = FACE_FROM_ID (it->f, it->face_id); it->face_box_p = face->box != FACE_NO_BOX; } @@ -26307,7 +26307,7 @@ calc_line_height_property (struct it *it, Lisp_Object val, struct font *font, int face_id; struct face *face; - face_id = lookup_named_face (it->f, face_name, 0); + face_id = lookup_named_face (it->f, face_name, false); if (face_id < 0) return make_number (-1); @@ -29533,7 +29533,7 @@ note_mode_line_or_margin_highlight (Lisp_Object window, int x, int y, charpos, 0, &ignore, glyph->face_id, - 1); + true); show_mouse_face (hlinfo, DRAW_MOUSE_FACE); if (NILP (pointer)) @@ -29861,7 +29861,7 @@ note_mouse_highlight (struct frame *f, int x, int y) hlinfo->mouse_face_window = window; hlinfo->mouse_face_face_id = face_at_string_position (w, object, pos, 0, &ignore, - glyph->face_id, 1); + glyph->face_id, true); show_mouse_face (hlinfo, DRAW_MOUSE_FACE); cursor = No_Cursor; } diff --git a/src/xfaces.c b/src/xfaces.c index 31048aece5d..7c9f62683fd 100644 --- a/src/xfaces.c +++ b/src/xfaces.c @@ -265,11 +265,11 @@ along with GNU Emacs. If not, see . */ #include -/* Non-zero if face attribute ATTR is unspecified. */ +/* True if face attribute ATTR is unspecified. */ #define UNSPECIFIEDP(ATTR) EQ ((ATTR), Qunspecified) -/* Non-zero if face attribute ATTR is `ignore-defface'. */ +/* True if face attribute ATTR is `ignore-defface'. */ #define IGNORE_DEFFACE_P(ATTR) EQ ((ATTR), QCignore_defface) @@ -318,12 +318,12 @@ static int clear_font_table_count; int face_change_count; -/* Non-zero means don't display bold text if a face's foreground +/* True means don't display bold text if a face's foreground and background colors are the inverse of the default colors of the display. This is a kluge to suppress `bold black' foreground text which is hard to read on an LCD monitor. */ -static int tty_suppress_bold_inverse_default_colors_p; +static bool tty_suppress_bold_inverse_default_colors_p; /* A list of the form `((x . y))' used to avoid consing in Finternal_set_lisp_face_attribute. */ @@ -338,10 +338,10 @@ static int npixmaps_allocated; static int ngcs; #endif -/* Non-zero means the definition of the `menu' face for new frames has +/* True means the definition of the `menu' face for new frames has been changed. */ -static int menu_face_changed_default; +static bool menu_face_changed_default; struct named_merge_point; @@ -354,8 +354,8 @@ static bool realize_default_face (struct frame *); static void realize_named_face (struct frame *, Lisp_Object, int); static struct face_cache *make_face_cache (struct frame *); static void free_face_cache (struct face_cache *); -static int merge_face_ref (struct frame *, Lisp_Object, Lisp_Object *, - int, struct named_merge_point *); +static bool merge_face_ref (struct frame *, Lisp_Object, Lisp_Object *, + bool, struct named_merge_point *); static int color_distance (XColor *x, XColor *y); #ifdef HAVE_WINDOW_SYSTEM @@ -638,14 +638,14 @@ recompute_basic_faces (struct frame *f) { if (FRAME_FACE_CACHE (f)) { - clear_face_cache (0); + clear_face_cache (false); if (!realize_basic_faces (f)) emacs_abort (); } } -/* Clear the face caches of all frames. CLEAR_FONTS_P non-zero means +/* Clear the face caches of all frames. CLEAR_FONTS_P means try to free unused fonts, too. */ void @@ -715,11 +715,11 @@ the pixmap. Bits are stored row by row, each row occupies \(WIDTH + 7)/8 bytes. */) (Lisp_Object object) { - bool pixmap_p = 0; + bool pixmap_p = false; if (STRINGP (object)) /* If OBJECT is a string, it's a file name. */ - pixmap_p = 1; + pixmap_p = true; else if (CONSP (object)) { /* Otherwise OBJECT must be (WIDTH HEIGHT DATA), WIDTH and @@ -749,7 +749,7 @@ the pixmap. Bits are stored row by row, each row occupies int bytes_per_row = ((XINT (width) + BITS_PER_CHAR - 1) / BITS_PER_CHAR); if (XINT (height) <= SBYTES (data) / bytes_per_row) - pixmap_p = 1; + pixmap_p = true; } } @@ -820,9 +820,9 @@ load_pixmap (struct frame *f, Lisp_Object name) /* Parse RGB_LIST, and fill in the RGB fields of COLOR. RGB_LIST should contain (at least) 3 lisp integers. - Return 0 if there's a problem with RGB_LIST, otherwise return 1. */ + Return true iff RGB_LIST is OK. */ -static int +static bool parse_rgb_list (Lisp_Object rgb_list, XColor *color) { #define PARSE_RGB_LIST_FIELD(field) \ @@ -832,13 +832,13 @@ parse_rgb_list (Lisp_Object rgb_list, XColor *color) rgb_list = XCDR (rgb_list); \ } \ else \ - return 0; + return false; PARSE_RGB_LIST_FIELD (red); PARSE_RGB_LIST_FIELD (green); PARSE_RGB_LIST_FIELD (blue); - return 1; + return true; } @@ -854,7 +854,7 @@ tty_lookup_color (struct frame *f, Lisp_Object color, XColor *tty_color, Lisp_Object frame, color_desc; if (!STRINGP (color) || NILP (Ffboundp (Qtty_color_desc))) - return 0; + return false; XSETFRAME (frame, f); @@ -864,13 +864,13 @@ tty_lookup_color (struct frame *f, Lisp_Object color, XColor *tty_color, Lisp_Object rgb; if (! INTEGERP (XCAR (XCDR (color_desc)))) - return 0; + return false; tty_color->pixel = XINT (XCAR (XCDR (color_desc))); rgb = XCDR (XCDR (color_desc)); if (! parse_rgb_list (rgb, tty_color)) - return 0; + return false; /* Should we fill in STD_COLOR too? */ if (std_color) @@ -889,21 +889,21 @@ tty_lookup_color (struct frame *f, Lisp_Object color, XColor *tty_color, /* Look up STD_COLOR separately. */ rgb = call1 (Qtty_color_standard_values, color); if (! parse_rgb_list (rgb, std_color)) - return 0; + return false; } } - return 1; + return true; } else if (NILP (Fsymbol_value (intern ("tty-defined-color-alist")))) /* We were called early during startup, and the colors are not yet set up in tty-defined-color-alist. Don't return a failure indication, since this produces the annoying "Unable to load color" messages in the *Messages* buffer. */ - return 1; + return true; else /* tty-color-desc seems to have returned a bad value. */ - return 0; + return false; } /* A version of defined_color for non-X frames. */ @@ -912,7 +912,7 @@ static bool tty_defined_color (struct frame *f, const char *color_name, XColor *color_def, bool alloc) { - bool status = 1; + bool status = true; /* Defaults. */ color_def->pixel = FACE_TTY_DEFAULT_COLOR; @@ -932,7 +932,7 @@ tty_defined_color (struct frame *f, const char *color_name, } if (color_def->pixel != FACE_TTY_DEFAULT_COLOR) - status = 1; + status = true; return status; } @@ -960,7 +960,7 @@ defined_color (struct frame *f, const char *color_name, XColor *color_def, #endif #ifdef HAVE_NS else if (FRAME_NS_P (f)) - return ns_defined_color (f, color_name, color_def, alloc, 1); + return ns_defined_color (f, color_name, color_def, alloc, true); #endif else emacs_abort (); @@ -1000,18 +1000,18 @@ tty_color_name (struct frame *f, int idx) } -/* Return non-zero if COLOR_NAME is a shade of gray (or white or +/* Return true if COLOR_NAME is a shade of gray (or white or black) on frame F. The criterion implemented here is not a terribly sophisticated one. */ -static int +static bool face_color_gray_p (struct frame *f, const char *color_name) { XColor color; - int gray_p; + bool gray_p; - if (defined_color (f, color_name, &color, 0)) + if (defined_color (f, color_name, &color, false)) gray_p = (/* Any color sufficiently close to black counts as gray. */ (color.red < 5000 && color.green < 5000 && color.blue < 5000) || @@ -1022,19 +1022,18 @@ face_color_gray_p (struct frame *f, const char *color_name) && (eabs (color.blue - color.red) < max (color.blue, color.red) / 20))); else - gray_p = 0; + gray_p = false; return gray_p; } -/* Return non-zero if color COLOR_NAME can be displayed on frame F. - BACKGROUND_P non-zero means the color will be used as background - color. */ +/* Return true if color COLOR_NAME can be displayed on frame F. + BACKGROUND_P means the color will be used as background color. */ -static int +static bool face_color_supported_p (struct frame *f, const char *color_name, - int background_p) + bool background_p) { Lisp_Object frame; XColor not_used; @@ -1052,7 +1051,7 @@ face_color_supported_p (struct frame *f, const char *color_name, && face_color_gray_p (f, color_name))) : #endif - tty_defined_color (f, color_name, ¬_used, 0); + tty_defined_color (f, color_name, ¬_used, false); } @@ -1098,39 +1097,39 @@ load_color2 (struct frame *f, struct face *face, Lisp_Object name, /* if the color map is full, defined_color will return a best match to the values in an existing cell. */ - if (!defined_color (f, SSDATA (name), color, 1)) + if (!defined_color (f, SSDATA (name), color, true)) { add_to_log ("Unable to load color \"%s\"", name, Qnil); switch (target_index) { case LFACE_FOREGROUND_INDEX: - face->foreground_defaulted_p = 1; + face->foreground_defaulted_p = true; color->pixel = FRAME_FOREGROUND_PIXEL (f); break; case LFACE_BACKGROUND_INDEX: - face->background_defaulted_p = 1; + face->background_defaulted_p = true; color->pixel = FRAME_BACKGROUND_PIXEL (f); break; case LFACE_UNDERLINE_INDEX: - face->underline_defaulted_p = 1; + face->underline_defaulted_p = true; color->pixel = FRAME_FOREGROUND_PIXEL (f); break; case LFACE_OVERLINE_INDEX: - face->overline_color_defaulted_p = 1; + face->overline_color_defaulted_p = true; color->pixel = FRAME_FOREGROUND_PIXEL (f); break; case LFACE_STRIKE_THROUGH_INDEX: - face->strike_through_color_defaulted_p = 1; + face->strike_through_color_defaulted_p = true; color->pixel = FRAME_FOREGROUND_PIXEL (f); break; case LFACE_BOX_INDEX: - face->box_color_defaulted_p = 1; + face->box_color_defaulted_p = true; color->pixel = FRAME_FOREGROUND_PIXEL (f); break; @@ -1196,7 +1195,7 @@ load_face_colors (struct frame *f, struct face *face, face_color_supported_p is smart enough to know that grays are "supported" as background because we are supposed to use stipple for them. */ - if (!face_color_supported_p (f, SSDATA (bg), 0) + if (!face_color_supported_p (f, SSDATA (bg), false) && !NILP (Fbitmap_spec_p (Vface_default_stipple))) { x_destroy_bitmap (f, face->stipple); @@ -1561,7 +1560,7 @@ the WIDTH times as wide as FACE on FRAME. */) { /* This is of limited utility since it works with character widths. Keep it for compatibility. --gerd. */ - int face_id = lookup_named_face (f, face, 0); + int face_id = lookup_named_face (f, face, false); struct face *width_face = (face_id < 0 ? NULL : FACE_FROM_ID (f, face_id)); @@ -1643,7 +1642,7 @@ the WIDTH times as wide as FACE on FRAME. */) #define LFACE_DISTANT_FOREGROUND(LFACE) \ AREF ((LFACE), LFACE_DISTANT_FOREGROUND_INDEX) -/* Non-zero if LFACE is a Lisp face. A Lisp face is a vector of size +/* True if LFACE is a Lisp face. A Lisp face is a vector of size LFACE_VECTOR_SIZE which has the symbol `face' in slot 0. */ #define LFACEP(LFACE) \ @@ -1773,12 +1772,12 @@ struct named_merge_point }; -/* If a face merging cycle is detected for FACE_NAME, return 0, +/* If a face merging cycle is detected for FACE_NAME, return false, otherwise add NEW_NAMED_MERGE_POINT, which is initialized using FACE_NAME and NAMED_MERGE_POINT_KIND, as the head of the linked list - pointed to by NAMED_MERGE_POINTS, and return 1. */ + pointed to by NAMED_MERGE_POINTS, and return true. */ -static int +static bool push_named_merge_point (struct named_merge_point *new_named_merge_point, Lisp_Object face_name, enum named_merge_point_kind named_merge_point_kind, @@ -1791,7 +1790,7 @@ push_named_merge_point (struct named_merge_point *new_named_merge_point, { if (prev->named_merge_point_kind == named_merge_point_kind) /* A cycle, so fail. */ - return 0; + return false; else if (prev->named_merge_point_kind == NAMED_MERGE_POINT_REMAP) /* A remap `hides ' any previous normal merge points (because the remap means that it's actually different face), @@ -1806,7 +1805,7 @@ push_named_merge_point (struct named_merge_point *new_named_merge_point, *named_merge_points = new_named_merge_point; - return 1; + return true; } @@ -1817,7 +1816,7 @@ push_named_merge_point (struct named_merge_point *new_named_merge_point, Return default face in case of errors. */ static Lisp_Object -resolve_face_name (Lisp_Object face_name, int signal_p) +resolve_face_name (Lisp_Object face_name, bool signal_p) { Lisp_Object orig_face; Lisp_Object tortoise, hare; @@ -1831,7 +1830,7 @@ resolve_face_name (Lisp_Object face_name, int signal_p) orig_face = face_name; tortoise = hare = face_name; - while (1) + while (true) { face_name = hare; hare = Fget (hare, Qface_alias); @@ -1859,12 +1858,12 @@ resolve_face_name (Lisp_Object face_name, int signal_p) /* Return the face definition of FACE_NAME on frame F. F null means return the definition for new frames. FACE_NAME may be a string or a symbol (apparently Emacs 20.2 allowed strings as face names in - face text properties; Ediff uses that). If SIGNAL_P is non-zero, - signal an error if FACE_NAME is not a valid face name. If SIGNAL_P - is zero, value is nil if FACE_NAME is not a valid face name. */ + face text properties; Ediff uses that). + If SIGNAL_P, signal an error if FACE_NAME is not a valid face name. + Otherwise, value is nil if FACE_NAME is not a valid face name. */ static Lisp_Object lface_from_face_name_no_resolve (struct frame *f, Lisp_Object face_name, - int signal_p) + bool signal_p) { Lisp_Object lface; @@ -1887,12 +1886,11 @@ lface_from_face_name_no_resolve (struct frame *f, Lisp_Object face_name, return the definition for new frames. FACE_NAME may be a string or a symbol (apparently Emacs 20.2 allowed strings as face names in face text properties; Ediff uses that). If FACE_NAME is an alias - for another face, return that face's definition. If SIGNAL_P is - non-zero, signal an error if FACE_NAME is not a valid face name. - If SIGNAL_P is zero, value is nil if FACE_NAME is not a valid face - name. */ + for another face, return that face's definition. + If SIGNAL_P, signal an error if FACE_NAME is not a valid face name. + Otherwise, value is nil if FACE_NAME is not a valid face name. */ static Lisp_Object -lface_from_face_name (struct frame *f, Lisp_Object face_name, int signal_p) +lface_from_face_name (struct frame *f, Lisp_Object face_name, bool signal_p) { face_name = resolve_face_name (face_name, signal_p); return lface_from_face_name_no_resolve (f, face_name, signal_p); @@ -1901,14 +1899,14 @@ lface_from_face_name (struct frame *f, Lisp_Object face_name, int signal_p) /* Get face attributes of face FACE_NAME from frame-local faces on frame F. Store the resulting attributes in ATTRS which must point - to a vector of Lisp_Objects of size LFACE_VECTOR_SIZE. If SIGNAL_P - is non-zero, signal an error if FACE_NAME does not name a face. - Otherwise, value is zero if FACE_NAME is not a face. */ + to a vector of Lisp_Objects of size LFACE_VECTOR_SIZE. + If SIGNAL_P, signal an error if FACE_NAME does not name a face. + Otherwise, return true iff FACE_NAME is a face. */ -static int +static bool get_lface_attributes_no_remap (struct frame *f, Lisp_Object face_name, Lisp_Object attrs[LFACE_VECTOR_SIZE], - int signal_p) + bool signal_p) { Lisp_Object lface; @@ -1924,13 +1922,13 @@ get_lface_attributes_no_remap (struct frame *f, Lisp_Object face_name, /* Get face attributes of face FACE_NAME from frame-local faces on frame F. Store the resulting attributes in ATTRS which must point to a vector of Lisp_Objects of size LFACE_VECTOR_SIZE. If FACE_NAME is an - alias for another face, use that face's definition. If SIGNAL_P is - non-zero, signal an error if FACE_NAME does not name a face. - Otherwise, value is zero if FACE_NAME is not a face. */ + alias for another face, use that face's definition. + If SIGNAL_P, signal an error if FACE_NAME does not name a face. + Otherwise, return true iff FACE_NAME is a face. */ -static int +static bool get_lface_attributes (struct frame *f, Lisp_Object face_name, - Lisp_Object attrs[LFACE_VECTOR_SIZE], int signal_p, + Lisp_Object attrs[LFACE_VECTOR_SIZE], bool signal_p, struct named_merge_point *named_merge_points) { Lisp_Object face_remapping; @@ -1963,10 +1961,10 @@ get_lface_attributes (struct frame *f, Lisp_Object face_name, } -/* Non-zero if all attributes in face attribute vector ATTRS are +/* True iff all attributes in face attribute vector ATTRS are specified, i.e. are non-nil. */ -static int +static bool lface_fully_specified_p (Lisp_Object attrs[LFACE_VECTOR_SIZE]) { int i; @@ -1983,13 +1981,13 @@ lface_fully_specified_p (Lisp_Object attrs[LFACE_VECTOR_SIZE]) #ifdef HAVE_WINDOW_SYSTEM /* Set font-related attributes of Lisp face LFACE from FONT-OBJECT. - If FORCE_P is zero, set only unspecified attributes of LFACE. The + If FORCE_P, set only unspecified attributes of LFACE. The exception is `font' attribute. It is set to FONT_OBJECT regardless of FORCE_P. */ -static int +static void set_lface_from_font (struct frame *f, Lisp_Object lface, - Lisp_Object font_object, int force_p) + Lisp_Object font_object, bool force_p) { Lisp_Object val; struct font *font = XFONT_OBJECT (font_object); @@ -2037,7 +2035,6 @@ set_lface_from_font (struct frame *f, Lisp_Object lface, } ASET (lface, LFACE_FONT_INDEX, font_object); - return 1; } #endif /* HAVE_WINDOW_SYSTEM */ @@ -2108,7 +2105,7 @@ merge_face_vectors (struct frame *f, Lisp_Object *from, Lisp_Object *to, other code uses `unspecified' as a generic value for face attributes. */ if (!UNSPECIFIEDP (from[LFACE_INHERIT_INDEX]) && !NILP (from[LFACE_INHERIT_INDEX])) - merge_face_ref (f, from[LFACE_INHERIT_INDEX], to, 0, named_merge_points); + merge_face_ref (f, from[LFACE_INHERIT_INDEX], to, false, named_merge_points); if (FONT_SPEC_P (from[LFACE_FONT_INDEX])) { @@ -2166,11 +2163,11 @@ merge_face_vectors (struct frame *f, Lisp_Object *from, Lisp_Object *to, } /* Merge the named face FACE_NAME on frame F, into the vector of face - attributes TO. NAMED_MERGE_POINTS is used to detect loops in face - inheritance. Returns true if FACE_NAME is a valid face name and + attributes TO. Use NAMED_MERGE_POINTS to detect loops in face + inheritance. Return true if FACE_NAME is a valid face name and merging succeeded. */ -static int +static bool merge_named_face (struct frame *f, Lisp_Object face_name, Lisp_Object *to, struct named_merge_point *named_merge_points) { @@ -2182,7 +2179,8 @@ merge_named_face (struct frame *f, Lisp_Object face_name, Lisp_Object *to, { struct gcpro gcpro1; Lisp_Object from[LFACE_VECTOR_SIZE]; - int ok = get_lface_attributes (f, face_name, from, 0, named_merge_points); + bool ok = get_lface_attributes (f, face_name, from, false, + named_merge_points); if (ok) { @@ -2194,15 +2192,15 @@ merge_named_face (struct frame *f, Lisp_Object face_name, Lisp_Object *to, return ok; } else - return 0; + return false; } /* Merge face attributes from the lisp `face reference' FACE_REF on - frame F into the face attribute vector TO. If ERR_MSGS is non-zero, + frame F into the face attribute vector TO. If ERR_MSGS, problems with FACE_REF cause an error message to be shown. Return - non-zero if no errors occurred (regardless of the value of ERR_MSGS). - NAMED_MERGE_POINTS is used to detect loops in face inheritance or + true if no errors occurred (regardless of the value of ERR_MSGS). + Use NAMED_MERGE_POINTS to detect loops in face inheritance or list structure; it may be 0 for most callers. FACE_REF may be a single face specification or a list of such @@ -2221,11 +2219,11 @@ merge_named_face (struct frame *f, Lisp_Object face_name, Lisp_Object *to, Face specifications earlier in lists take precedence over later specifications. */ -static int +static bool merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, - int err_msgs, struct named_merge_point *named_merge_points) + bool err_msgs, struct named_merge_point *named_merge_points) { - int ok = 1; /* Succeed without an error? */ + bool ok = true; /* Succeed without an error? */ if (CONSP (face_ref)) { @@ -2250,7 +2248,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, { if (err_msgs) add_to_log ("Invalid face color", color_name, Qnil); - ok = 0; + ok = false; } } else if (SYMBOLP (first) @@ -2261,7 +2259,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, { Lisp_Object keyword = XCAR (face_ref); Lisp_Object value = XCAR (XCDR (face_ref)); - int err = 0; + bool err = false; /* Specifying `unspecified' is a no-op. */ if (EQ (value, Qunspecified)) @@ -2274,7 +2272,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, font_clear_prop (to, FONT_FAMILY_INDEX); } else - err = 1; + err = true; } else if (EQ (keyword, QCfoundry)) { @@ -2284,7 +2282,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, font_clear_prop (to, FONT_FOUNDRY_INDEX); } else - err = 1; + err = true; } else if (EQ (keyword, QCheight)) { @@ -2297,7 +2295,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, font_clear_prop (to, FONT_SIZE_INDEX); } else - err = 1; + err = true; } else if (EQ (keyword, QCweight)) { @@ -2307,7 +2305,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, font_clear_prop (to, FONT_WEIGHT_INDEX); } else - err = 1; + err = true; } else if (EQ (keyword, QCslant)) { @@ -2317,7 +2315,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, font_clear_prop (to, FONT_SLANT_INDEX); } else - err = 1; + err = true; } else if (EQ (keyword, QCunderline)) { @@ -2327,7 +2325,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, || CONSP (value)) to[LFACE_UNDERLINE_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCoverline)) { @@ -2336,7 +2334,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, || STRINGP (value)) to[LFACE_OVERLINE_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCstrike_through)) { @@ -2345,7 +2343,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, || STRINGP (value)) to[LFACE_STRIKE_THROUGH_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCbox)) { @@ -2357,7 +2355,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, || NILP (value)) to[LFACE_BOX_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCinverse_video) || EQ (keyword, QCreverse_video)) @@ -2365,28 +2363,28 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, if (EQ (value, Qt) || NILP (value)) to[LFACE_INVERSE_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCforeground)) { if (STRINGP (value)) to[LFACE_FOREGROUND_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCdistant_foreground)) { if (STRINGP (value)) to[LFACE_DISTANT_FOREGROUND_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCbackground)) { if (STRINGP (value)) to[LFACE_BACKGROUND_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCstipple)) { @@ -2395,7 +2393,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, if (!NILP (pixmap_p)) to[LFACE_STIPPLE_INDEX] = value; else - err = 1; + err = true; #endif /* HAVE_WINDOW_SYSTEM */ } else if (EQ (keyword, QCwidth)) @@ -2406,14 +2404,14 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, font_clear_prop (to, FONT_WIDTH_INDEX); } else - err = 1; + err = true; } else if (EQ (keyword, QCfont)) { if (FONTP (value)) to[LFACE_FONT_INDEX] = value; else - err = 1; + err = true; } else if (EQ (keyword, QCinherit)) { @@ -2421,15 +2419,15 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, normal face reference. */ if (! merge_face_ref (f, value, to, err_msgs, named_merge_points)) - err = 1; + err = true; } else - err = 1; + err = true; if (err) { add_to_log ("Invalid face attribute %S %S", keyword, value); - ok = 0; + ok = false; } face_ref = XCDR (XCDR (face_ref)); @@ -2446,7 +2444,7 @@ merge_face_ref (struct frame *f, Lisp_Object face_ref, Lisp_Object *to, ok = merge_face_ref (f, next, to, err_msgs, named_merge_points); if (! merge_face_ref (f, first, to, err_msgs, named_merge_points)) - ok = 0; + ok = false; } } else @@ -2475,13 +2473,13 @@ Value is a vector of face attributes. */) int i; CHECK_SYMBOL (face); - global_lface = lface_from_face_name (NULL, face, 0); + global_lface = lface_from_face_name (NULL, face, false); if (!NILP (frame)) { CHECK_LIVE_FRAME (frame); f = XFRAME (frame); - lface = lface_from_face_name (f, face, 0); + lface = lface_from_face_name (f, face, false); } else f = NULL, lface = Qnil; @@ -2557,15 +2555,15 @@ Otherwise check for the existence of a global face. */) { Lisp_Object lface; - face = resolve_face_name (face, 1); + face = resolve_face_name (face, true); if (!NILP (frame)) { CHECK_LIVE_FRAME (frame); - lface = lface_from_face_name (XFRAME (frame), face, 0); + lface = lface_from_face_name (XFRAME (frame), face, false); } else - lface = lface_from_face_name (NULL, face, 0); + lface = lface_from_face_name (NULL, face, false); return lface; } @@ -2592,7 +2590,7 @@ The value is TO. */) { /* Copy global definition of FROM. We don't make copies of strings etc. because 20.2 didn't do it either. */ - lface = lface_from_face_name (NULL, from, 1); + lface = lface_from_face_name (NULL, from, true); copy = Finternal_make_lisp_face (to, Qnil); } else @@ -2602,7 +2600,7 @@ The value is TO. */) new_frame = frame; CHECK_LIVE_FRAME (frame); CHECK_LIVE_FRAME (new_frame); - lface = lface_from_face_name (XFRAME (frame), from, 1); + lface = lface_from_face_name (XFRAME (frame), from, true); copy = Finternal_make_lisp_face (to, new_frame); } @@ -2642,7 +2640,7 @@ FRAME 0 means change the face on all frames, and change the default CHECK_SYMBOL (face); CHECK_SYMBOL (attr); - face = resolve_face_name (face, 1); + face = resolve_face_name (face, true); /* If FRAME is 0, change face on all frames, and change the default for new frames. */ @@ -2658,7 +2656,7 @@ FRAME 0 means change the face on all frames, and change the default /* Set lface to the Lisp attribute vector of FACE. */ if (EQ (frame, Qt)) { - lface = lface_from_face_name (NULL, face, 1); + lface = lface_from_face_name (NULL, face, true); /* When updating face-new-frame-defaults, we put :ignore-defface where the caller wants `unspecified'. This forces the frame @@ -2675,7 +2673,7 @@ FRAME 0 means change the face on all frames, and change the default frame = selected_frame; CHECK_LIVE_FRAME (frame); - lface = lface_from_face_name (XFRAME (frame), face, 0); + lface = lface_from_face_name (XFRAME (frame), face, false); /* If a frame-local face doesn't exist yet, create one. */ if (NILP (lface)) @@ -2760,14 +2758,14 @@ FRAME 0 means change the face on all frames, and change the default } else if (EQ (attr, QCunderline)) { - bool valid_p = 0; + bool valid_p = false; if (UNSPECIFIEDP (value) || IGNORE_DEFFACE_P (value)) - valid_p = 1; + valid_p = true; else if (NILP (value) || EQ (value, Qt)) - valid_p = 1; + valid_p = true; else if (STRINGP (value) && SCHARS (value) > 0) - valid_p = 1; + valid_p = true; else if (CONSP (value)) { Lisp_Object key, val, list; @@ -2779,7 +2777,7 @@ FRAME 0 means change the face on all frames, and change the default Non-nil symbols other than t are not documented as being valid. Eg compare with inverse-video, which explicitly rejects them. */ - valid_p = 1; + valid_p = true; while (!NILP (CAR_SAFE(list))) { @@ -2790,7 +2788,7 @@ FRAME 0 means change the face on all frames, and change the default if (NILP (key) || NILP (val)) { - valid_p = 0; + valid_p = false; break; } @@ -2798,14 +2796,14 @@ FRAME 0 means change the face on all frames, and change the default && !(EQ (val, Qforeground_color) || (STRINGP (val) && SCHARS (val) > 0))) { - valid_p = 0; + valid_p = false; break; } else if (EQ (key, QCstyle) && !(EQ (val, Qline) || EQ (val, Qwave))) { - valid_p = 0; + valid_p = false; break; } } @@ -2855,9 +2853,9 @@ FRAME 0 means change the face on all frames, and change the default value = make_number (1); if (UNSPECIFIEDP (value) || IGNORE_DEFFACE_P (value)) - valid_p = 1; + valid_p = true; else if (NILP (value)) - valid_p = 1; + valid_p = true; else if (INTEGERP (value)) valid_p = XINT (value) != 0; else if (STRINGP (value)) @@ -2900,7 +2898,7 @@ FRAME 0 means change the face on all frames, and change the default valid_p = NILP (tem); } else - valid_p = 0; + valid_p = false; if (!valid_p) signal_error ("Invalid face box", value); @@ -3042,7 +3040,7 @@ FRAME 0 means change the face on all frames, and change the default signal_error ("Font not available", value); value = font_object; } - set_lface_from_font (f, lface, value, 1); + set_lface_from_font (f, lface, value, true); } } else @@ -3187,10 +3185,10 @@ FRAME 0 means change the face on all frames, and change the default struct frame *f = XFRAME (frame); if (FRAME_FACE_CACHE (f) == NULL) FRAME_FACE_CACHE (f) = make_face_cache (f); - FRAME_FACE_CACHE (f)->menu_face_changed_p = 1; + FRAME_FACE_CACHE (f)->menu_face_changed_p = true; } else - menu_face_changed_default = 1; + menu_face_changed_default = true; } if (!NILP (param)) @@ -3235,7 +3233,7 @@ update_face_from_frame_parameter (struct frame *f, Lisp_Object param, if (EQ (param, Qforeground_color)) { face = Qdefault; - lface = lface_from_face_name (f, face, 1); + lface = lface_from_face_name (f, face, true); ASET (lface, LFACE_FOREGROUND_INDEX, (STRINGP (new_value) ? new_value : Qunspecified)); realize_basic_faces (f); @@ -3251,7 +3249,7 @@ update_face_from_frame_parameter (struct frame *f, Lisp_Object param, call1 (Qframe_set_background_mode, frame); face = Qdefault; - lface = lface_from_face_name (f, face, 1); + lface = lface_from_face_name (f, face, true); ASET (lface, LFACE_BACKGROUND_INDEX, (STRINGP (new_value) ? new_value : Qunspecified)); realize_basic_faces (f); @@ -3260,21 +3258,21 @@ update_face_from_frame_parameter (struct frame *f, Lisp_Object param, else if (EQ (param, Qborder_color)) { face = Qborder; - lface = lface_from_face_name (f, face, 1); + lface = lface_from_face_name (f, face, true); ASET (lface, LFACE_BACKGROUND_INDEX, (STRINGP (new_value) ? new_value : Qunspecified)); } else if (EQ (param, Qcursor_color)) { face = Qcursor; - lface = lface_from_face_name (f, face, 1); + lface = lface_from_face_name (f, face, true); ASET (lface, LFACE_BACKGROUND_INDEX, (STRINGP (new_value) ? new_value : Qunspecified)); } else if (EQ (param, Qmouse_color)) { face = Qmouse; - lface = lface_from_face_name (f, face, 1); + lface = lface_from_face_name (f, face, true); ASET (lface, LFACE_BACKGROUND_INDEX, (STRINGP (new_value) ? new_value : Qunspecified)); } @@ -3318,7 +3316,7 @@ set_font_frame_param (Lisp_Object frame, Lisp_Object lface) return; ASET (lface, LFACE_FONT_INDEX, font); } - f->default_face_done_p = 0; + f->default_face_done_p = false; AUTO_FRAME_ARG (arg, Qfont, font); Fmodify_frame_parameters (frame, arg); } @@ -3348,11 +3346,11 @@ ordinary `x-get-resource' doesn't take a frame argument. */) /* Return resource string VALUE as a boolean value, i.e. nil, or t. If VALUE is "on" or "true", return t. If VALUE is "off" or - "false", return nil. Otherwise, if SIGNAL_P is non-zero, signal an - error; if SIGNAL_P is zero, return 0. */ + "false", return nil. Otherwise, if SIGNAL_P, signal an + error; if !SIGNAL_P, return 0. */ static Lisp_Object -face_boolean_x_resource_value (Lisp_Object value, int signal_p) +face_boolean_x_resource_value (Lisp_Object value, bool signal_p) { Lisp_Object result = make_number (0); @@ -3392,11 +3390,11 @@ DEFUN ("internal-set-lisp-face-attribute-from-resource", signal_error ("Invalid face height from X resource", value); } else if (EQ (attr, QCbold) || EQ (attr, QCitalic)) - value = face_boolean_x_resource_value (value, 1); + value = face_boolean_x_resource_value (value, true); else if (EQ (attr, QCweight) || EQ (attr, QCslant) || EQ (attr, QCwidth)) value = intern (SSDATA (value)); else if (EQ (attr, QCreverse_video) || EQ (attr, QCinverse_video)) - value = face_boolean_x_resource_value (value, 1); + value = face_boolean_x_resource_value (value, true); else if (EQ (attr, QCunderline) || EQ (attr, QCoverline) || EQ (attr, QCstrike_through)) @@ -3405,7 +3403,7 @@ DEFUN ("internal-set-lisp-face-attribute-from-resource", /* If the result of face_boolean_x_resource_value is t or nil, VALUE does NOT specify a color. */ - boolean_value = face_boolean_x_resource_value (value, 0); + boolean_value = face_boolean_x_resource_value (value, false); if (SYMBOLP (boolean_value)) value = boolean_value; } @@ -3439,10 +3437,10 @@ x_update_menu_appearance (struct frame *f) char line[512]; char *buf = line; ptrdiff_t bufsize = sizeof line; - Lisp_Object lface = lface_from_face_name (f, Qmenu, 1); + Lisp_Object lface = lface_from_face_name (f, Qmenu, true); struct face *face = FACE_FROM_ID (f, MENU_FACE_ID); const char *myname = SSDATA (Vx_resource_name); - bool changed_p = 0; + bool changed_p = false; #ifdef USE_MOTIF const char *popup_path = "popup_menu"; #else @@ -3458,7 +3456,7 @@ x_update_menu_appearance (struct frame *f) exprintf (&buf, &bufsize, line, -1, "%s.pane.menubar*foreground: %s", myname, SDATA (LFACE_FOREGROUND (lface))); XrmPutLineResource (&rdb, line); - changed_p = 1; + changed_p = true; } if (STRINGP (LFACE_BACKGROUND (lface))) @@ -3471,7 +3469,7 @@ x_update_menu_appearance (struct frame *f) exprintf (&buf, &bufsize, line, -1, "%s.pane.menubar*background: %s", myname, SDATA (LFACE_BACKGROUND (lface))); XrmPutLineResource (&rdb, line); - changed_p = 1; + changed_p = true; } if (face->font @@ -3514,7 +3512,7 @@ x_update_menu_appearance (struct frame *f) exprintf (&buf, &bufsize, line, -1, "%s.%s*font%s: %s", myname, popup_path, suffix, fontsetname); XrmPutLineResource (&rdb, line); - changed_p = 1; + changed_p = true; if (fontsetname != SSDATA (xlfd)) xfree (fontsetname); } @@ -3581,7 +3579,7 @@ frames). If FRAME is omitted or nil, use the selected frame. */) (Lisp_Object symbol, Lisp_Object keyword, Lisp_Object frame) { struct frame *f = EQ (frame, Qt) ? NULL : decode_live_frame (frame); - Lisp_Object lface = lface_from_face_name (f, symbol, 1), value = Qnil; + Lisp_Object lface = lface_from_face_name (f, symbol, true), value = Qnil; CHECK_SYMBOL (symbol); CHECK_SYMBOL (keyword); @@ -3664,8 +3662,8 @@ Default face attributes override any local face attributes. */) struct frame *f = XFRAME (frame); CHECK_LIVE_FRAME (frame); - global_lface = lface_from_face_name (NULL, face, 1); - local_lface = lface_from_face_name (f, face, 0); + global_lface = lface_from_face_name (NULL, face, true); + local_lface = lface_from_face_name (f, face, false); if (NILP (local_lface)) local_lface = Finternal_make_lisp_face (face, frame); @@ -3754,7 +3752,7 @@ return the font name used for CHARACTER. */) if (EQ (frame, Qt)) { Lisp_Object result = Qnil; - Lisp_Object lface = lface_from_face_name (NULL, face, 1); + Lisp_Object lface = lface_from_face_name (NULL, face, true); if (!UNSPECIFIEDP (LFACE_WEIGHT (lface)) && !EQ (LFACE_WEIGHT (lface), Qnormal)) @@ -3769,7 +3767,7 @@ return the font name used for CHARACTER. */) else { struct frame *f = decode_live_frame (frame); - int face_id = lookup_named_face (f, face, 1); + int face_id = lookup_named_face (f, face, true); struct face *fface = FACE_FROM_ID (f, face_id); if (! fface) @@ -3794,7 +3792,7 @@ return the font name used for CHARACTER. */) } -/* Compare face-attribute values v1 and v2 for equality. Value is non-zero if +/* Compare face-attribute values v1 and v2 for equality. Value is true if all attributes are `equal'. Tries to be fast because this function is called quite often. */ @@ -3804,22 +3802,22 @@ face_attr_equal_p (Lisp_Object v1, Lisp_Object v2) /* Type can differ, e.g. when one attribute is unspecified, i.e. nil, and the other is specified. */ if (XTYPE (v1) != XTYPE (v2)) - return 0; + return false; if (EQ (v1, v2)) - return 1; + return true; switch (XTYPE (v1)) { case Lisp_String: if (SBYTES (v1) != SBYTES (v2)) - return 0; + return false; return memcmp (SDATA (v1), SDATA (v2), SBYTES (v1)) == 0; case_Lisp_Int: case Lisp_Symbol: - return 0; + return false; default: return !NILP (Fequal (v1, v2)); @@ -3827,7 +3825,7 @@ face_attr_equal_p (Lisp_Object v1, Lisp_Object v2) } -/* Compare face vectors V1 and V2 for equality. Value is non-zero if +/* Compare face vectors V1 and V2 for equality. Value is true if all attributes are `equal'. Tries to be fast because this function is called quite often. */ @@ -3835,7 +3833,7 @@ static bool lface_equal_p (Lisp_Object *v1, Lisp_Object *v2) { int i; - bool equal_p = 1; + bool equal_p = true; for (i = 1; i < LFACE_VECTOR_SIZE && equal_p; ++i) equal_p = face_attr_equal_p (v1[i], v2[i]); @@ -3852,7 +3850,7 @@ If FRAME is t, report on the defaults for FACE1 and FACE2 (for new frames). If FRAME is omitted or nil, use the selected frame. */) (Lisp_Object face1, Lisp_Object face2, Lisp_Object frame) { - int equal_p; + bool equal_p; struct frame *f; Lisp_Object lface1, lface2; @@ -3862,8 +3860,8 @@ If FRAME is omitted or nil, use the selected frame. */) Emacs. That frame is not an X frame. */ f = EQ (frame, Qt) ? NULL : decode_live_frame (frame); - lface1 = lface_from_face_name (f, face1, 1); - lface2 = lface_from_face_name (f, face2, 1); + lface1 = lface_from_face_name (f, face1, true); + lface2 = lface_from_face_name (f, face2, true); equal_p = lface_equal_p (XVECTOR (lface1)->contents, XVECTOR (lface2)->contents); return equal_p ? Qt : Qnil; @@ -3879,7 +3877,7 @@ If FRAME is omitted or nil, use the selected frame. */) (Lisp_Object face, Lisp_Object frame) { struct frame *f = EQ (frame, Qt) ? NULL : decode_live_frame (frame); - Lisp_Object lface = lface_from_face_name (f, face, 1); + Lisp_Object lface = lface_from_face_name (f, face, true); int i; for (i = 1; i < LFACE_VECTOR_SIZE; ++i) @@ -3932,12 +3930,12 @@ lface_hash (Lisp_Object *v) #ifdef HAVE_WINDOW_SYSTEM -/* Return non-zero if LFACE1 and LFACE2 specify the same font (without +/* Return true if LFACE1 and LFACE2 specify the same font (without considering charsets/registries). They do if they specify the same family, point size, weight, width, slant, and font. Both LFACE1 and LFACE2 must be fully-specified. */ -static int +static bool lface_same_font_attributes_p (Lisp_Object *lface1, Lisp_Object *lface2) { eassert (lface_fully_specified_p (lface1) @@ -4094,10 +4092,12 @@ If FRAME is unspecified or nil, the current frame is used. */) XColor cdef1, cdef2; if (!(CONSP (color1) && parse_rgb_list (color1, &cdef1)) - && !(STRINGP (color1) && defined_color (f, SSDATA (color1), &cdef1, 0))) + && !(STRINGP (color1) + && defined_color (f, SSDATA (color1), &cdef1, false))) signal_error ("Invalid color", color1); if (!(CONSP (color2) && parse_rgb_list (color2, &cdef2)) - && !(STRINGP (color2) && defined_color (f, SSDATA (color2), &cdef2, 0))) + && !(STRINGP (color2) + && defined_color (f, SSDATA (color2), &cdef2, false))) signal_error ("Invalid color", color2); return make_number (color_distance (&cdef1, &cdef2)); @@ -4413,7 +4413,7 @@ face_for_font (struct frame *f, Lisp_Object font_object, struct face *base_face) face isn't realized and cannot be realized. */ int -lookup_named_face (struct frame *f, Lisp_Object symbol, int signal_p) +lookup_named_face (struct frame *f, Lisp_Object symbol, bool signal_p) { Lisp_Object attrs[LFACE_VECTOR_SIZE]; Lisp_Object symbol_attrs[LFACE_VECTOR_SIZE]; @@ -4480,7 +4480,7 @@ lookup_basic_face (struct frame *f, int face_id) /* If there is a remapping entry, lookup the face using NAME, which will handle the remapping too. */ - remapped_face_id = lookup_named_face (f, name, 0); + remapped_face_id = lookup_named_face (f, name, false); if (remapped_face_id < 0) return face_id; /* Give up. */ @@ -4582,7 +4582,7 @@ face_with_height (struct frame *f, int face_id, int height) int lookup_derived_face (struct frame *f, Lisp_Object symbol, int face_id, - int signal_p) + bool signal_p) { Lisp_Object attrs[LFACE_VECTOR_SIZE]; Lisp_Object symbol_attrs[LFACE_VECTOR_SIZE]; @@ -4608,7 +4608,7 @@ DEFUN ("face-attributes-as-vector", Fface_attributes_as_vector, lface = Fmake_vector (make_number (LFACE_VECTOR_SIZE), Qunspecified); merge_face_ref (XFRAME (selected_frame), plist, XVECTOR (lface)->contents, - 1, 0); + true, 0); return lface; } @@ -4673,7 +4673,7 @@ x_supports_face_attributes_p (struct frame *f, || (!UNSPECIFIEDP (attrs[LFACE_BOX_INDEX]) && face_attr_equal_p (attrs[LFACE_BOX_INDEX], def_attrs[LFACE_BOX_INDEX]))) - return 0; + return false; /* Check font-related attributes, as those are the most commonly "unsupported" on a window-system (because of missing fonts). */ @@ -4703,7 +4703,7 @@ x_supports_face_attributes_p (struct frame *f, supported. */ if (face->font == def_face->font || ! face->font) - return 0; + return false; for (i = FONT_TYPE_INDEX; i <= FONT_SIZE_INDEX; i++) if (! EQ (face->font->props[i], def_face->font->props[i])) { @@ -4711,18 +4711,18 @@ x_supports_face_attributes_p (struct frame *f, if (i < FONT_FOUNDRY_INDEX || i > FONT_REGISTRY_INDEX || face->font->driver->case_sensitive) - return 1; + return true; s1 = SYMBOL_NAME (face->font->props[i]); s2 = SYMBOL_NAME (def_face->font->props[i]); if (! EQ (Fcompare_strings (s1, make_number (0), Qnil, s2, make_number (0), Qnil, Qt), Qt)) - return 1; + return true; } - return 0; + return false; } /* Everything checks out, this face is supported. */ - return 1; + return true; } #endif /* HAVE_WINDOW_SYSTEM */ @@ -4771,7 +4771,7 @@ tty_supports_face_attributes_p (struct frame *f, || !UNSPECIFIEDP (attrs[LFACE_OVERLINE_INDEX]) || !UNSPECIFIEDP (attrs[LFACE_STRIKE_THROUGH_INDEX]) || !UNSPECIFIEDP (attrs[LFACE_BOX_INDEX])) - return 0; + return false; /* Test for terminal `capabilities' (non-color character attributes). */ @@ -4785,17 +4785,17 @@ tty_supports_face_attributes_p (struct frame *f, if (weight > 100) { if (def_weight > 100) - return 0; /* same as default */ + return false; /* same as default */ test_caps = TTY_CAP_BOLD; } else if (weight < 100) { if (def_weight < 100) - return 0; /* same as default */ + return false; /* same as default */ test_caps = TTY_CAP_DIM; } else if (def_weight == 100) - return 0; /* same as default */ + return false; /* same as default */ } /* font slant */ @@ -4805,7 +4805,7 @@ tty_supports_face_attributes_p (struct frame *f, { int def_slant = FONT_SLANT_NAME_NUMERIC (def_attrs[LFACE_SLANT_INDEX]); if (slant == 100 || slant == def_slant) - return 0; /* same as default */ + return false; /* same as default */ else test_caps |= TTY_CAP_ITALIC; } @@ -4815,11 +4815,11 @@ tty_supports_face_attributes_p (struct frame *f, if (!UNSPECIFIEDP (val)) { if (STRINGP (val)) - return 0; /* ttys can't use colored underlines */ + return false; /* ttys can't use colored underlines */ else if (EQ (CAR_SAFE (val), QCstyle) && EQ (CAR_SAFE (CDR_SAFE (val)), Qwave)) - return 0; /* ttys can't use wave underlines */ + return false; /* ttys can't use wave underlines */ else if (face_attr_equal_p (val, def_attrs[LFACE_UNDERLINE_INDEX])) - return 0; /* same as default */ + return false; /* same as default */ else test_caps |= TTY_CAP_UNDERLINE; } @@ -4829,7 +4829,7 @@ tty_supports_face_attributes_p (struct frame *f, if (!UNSPECIFIEDP (val)) { if (face_attr_equal_p (val, def_attrs[LFACE_INVERSE_INDEX])) - return 0; /* same as default */ + return false; /* same as default */ else test_caps |= TTY_CAP_INVERSE; } @@ -4844,12 +4844,12 @@ tty_supports_face_attributes_p (struct frame *f, Lisp_Object def_fg = def_attrs[LFACE_FOREGROUND_INDEX]; if (face_attr_equal_p (fg, def_fg)) - return 0; /* same as default */ + return false; /* same as default */ else if (! tty_lookup_color (f, fg, &fg_tty_color, &fg_std_color)) - return 0; /* not a valid color */ + return false; /* not a valid color */ else if (color_distance (&fg_tty_color, &fg_std_color) > TTY_SAME_COLOR_THRESHOLD) - return 0; /* displayed color is too different */ + return false; /* displayed color is too different */ else /* Make sure the color is really different than the default. */ { @@ -4857,7 +4857,7 @@ tty_supports_face_attributes_p (struct frame *f, if (tty_lookup_color (f, def_fg, &def_fg_color, 0) && (color_distance (&fg_tty_color, &def_fg_color) <= TTY_SAME_COLOR_THRESHOLD)) - return 0; + return false; } } @@ -4868,12 +4868,12 @@ tty_supports_face_attributes_p (struct frame *f, Lisp_Object def_bg = def_attrs[LFACE_BACKGROUND_INDEX]; if (face_attr_equal_p (bg, def_bg)) - return 0; /* same as default */ + return false; /* same as default */ else if (! tty_lookup_color (f, bg, &bg_tty_color, &bg_std_color)) - return 0; /* not a valid color */ + return false; /* not a valid color */ else if (color_distance (&bg_tty_color, &bg_std_color) > TTY_SAME_COLOR_THRESHOLD) - return 0; /* displayed color is too different */ + return false; /* displayed color is too different */ else /* Make sure the color is really different than the default. */ { @@ -4881,7 +4881,7 @@ tty_supports_face_attributes_p (struct frame *f, if (tty_lookup_color (f, def_bg, &def_bg_color, 0) && (color_distance (&bg_tty_color, &def_bg_color) <= TTY_SAME_COLOR_THRESHOLD)) - return 0; + return false; } } @@ -4896,7 +4896,7 @@ tty_supports_face_attributes_p (struct frame *f, - color_distance (&fg_tty_color, &bg_tty_color)); if (delta_delta > TTY_SAME_COLOR_THRESHOLD || delta_delta < -TTY_SAME_COLOR_THRESHOLD) - return 0; + return false; } @@ -4927,7 +4927,7 @@ satisfied by the tty display code's automatic substitution of a `dim' face for italic. */) (Lisp_Object attributes, Lisp_Object display) { - bool supports = 0; + bool supports = false; int i; Lisp_Object frame; struct frame *f; @@ -4962,7 +4962,7 @@ face for italic. */) for (i = 0; i < LFACE_VECTOR_SIZE; i++) attrs[i] = Qunspecified; - merge_face_ref (f, attributes, attrs, 1, 0); + merge_face_ref (f, attributes, attrs, true, 0); def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); if (def_face == NULL) @@ -5140,7 +5140,7 @@ face_fontset (Lisp_Object attrs[LFACE_VECTOR_SIZE]) static bool realize_basic_faces (struct frame *f) { - bool success_p = 0; + bool success_p = false; ptrdiff_t count = SPECPDL_INDEX (); /* Block input here so that we won't be surprised by an X expose @@ -5170,14 +5170,14 @@ realize_basic_faces (struct frame *f) /* Reflect changes in the `menu' face in menu bars. */ if (FRAME_FACE_CACHE (f)->menu_face_changed_p) { - FRAME_FACE_CACHE (f)->menu_face_changed_p = 0; + FRAME_FACE_CACHE (f)->menu_face_changed_p = false; #ifdef USE_X_TOOLKIT if (FRAME_WINDOW_P (f)) x_update_menu_appearance (f); #endif } - success_p = 1; + success_p = true; } unbind_to (count, Qnil); @@ -5199,7 +5199,7 @@ realize_default_face (struct frame *f) struct face *face; /* If the `default' face is not yet known, create it. */ - lface = lface_from_face_name (f, Qdefault, 0); + lface = lface_from_face_name (f, Qdefault, false); if (NILP (lface)) { Lisp_Object frame; @@ -5215,7 +5215,7 @@ realize_default_face (struct frame *f) XSETFONT (font_object, FRAME_FONT (f)); set_lface_from_font (f, lface, font_object, f->default_face_done_p); ASET (lface, LFACE_FONTSET_INDEX, fontset_name (FRAME_FONTSET (f))); - f->default_face_done_p = 1; + f->default_face_done_p = true; } #endif /* HAVE_WINDOW_SYSTEM */ @@ -5257,7 +5257,7 @@ realize_default_face (struct frame *f) if (CONSP (color) && STRINGP (XCDR (color))) ASET (lface, LFACE_FOREGROUND_INDEX, XCDR (color)); else if (FRAME_WINDOW_P (f)) - return 0; + return false; else if (FRAME_INITIAL_P (f) || FRAME_TERMCAP_P (f) || FRAME_MSDOS_P (f)) ASET (lface, LFACE_FOREGROUND_INDEX, build_string (unspecified_fg)); else @@ -5272,7 +5272,7 @@ realize_default_face (struct frame *f) if (CONSP (color) && STRINGP (XCDR (color))) ASET (lface, LFACE_BACKGROUND_INDEX, XCDR (color)); else if (FRAME_WINDOW_P (f)) - return 0; + return false; else if (FRAME_INITIAL_P (f) || FRAME_TERMCAP_P (f) || FRAME_MSDOS_P (f)) ASET (lface, LFACE_BACKGROUND_INDEX, build_string (unspecified_bg)); else @@ -5295,7 +5295,7 @@ realize_default_face (struct frame *f) /* This can happen when making a frame on a display that does not support the default font. */ if (!face->font) - return 0; + return false; /* Otherwise, the font specified for the frame was not acceptable as a font for the default face (perhaps because @@ -5305,7 +5305,7 @@ realize_default_face (struct frame *f) } #endif /* HAVE_X_WINDOWS */ #endif /* HAVE_WINDOW_SYSTEM */ - return 1; + return true; } @@ -5317,12 +5317,12 @@ static void realize_named_face (struct frame *f, Lisp_Object symbol, int id) { struct face_cache *c = FRAME_FACE_CACHE (f); - Lisp_Object lface = lface_from_face_name (f, symbol, 0); + Lisp_Object lface = lface_from_face_name (f, symbol, false); Lisp_Object attrs[LFACE_VECTOR_SIZE]; Lisp_Object symbol_attrs[LFACE_VECTOR_SIZE]; /* The default face must exist and be fully specified. */ - get_lface_attributes_no_remap (f, Qdefault, attrs, 1); + get_lface_attributes_no_remap (f, Qdefault, attrs, true); check_lface_attrs (attrs); eassert (lface_fully_specified_p (attrs)); @@ -5335,7 +5335,7 @@ realize_named_face (struct frame *f, Lisp_Object symbol, int id) } /* Merge SYMBOL's face with the default face. */ - get_lface_attributes_no_remap (f, symbol, symbol_attrs, 1); + get_lface_attributes_no_remap (f, symbol, symbol_attrs, true); merge_face_vectors (f, symbol_attrs, attrs, 0); /* Realize the face. */ @@ -5407,7 +5407,7 @@ realize_non_ascii_face (struct frame *f, Lisp_Object font_object, && FONT_WEIGHT_NUMERIC (font_object) <= 100); /* Don't try to free the colors copied bitwise from BASE_FACE. */ - face->colors_copied_bitwise_p = 1; + face->colors_copied_bitwise_p = true; face->font = NILP (font_object) ? NULL : XFONT_OBJECT (font_object); face->gc = 0; @@ -5491,7 +5491,7 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) if (face->font && FONT_WEIGHT_NAME_NUMERIC (attrs[LFACE_WEIGHT_INDEX]) > 100 && FONT_WEIGHT_NUMERIC (attrs[LFACE_FONT_INDEX]) <= 100) - face->overstrike = 1; + face->overstrike = true; /* Load colors, and set remaining attributes. */ @@ -5516,7 +5516,7 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) face->box = FACE_SIMPLE_BOX; face->box_line_width = XINT (box); face->box_color = face->foreground; - face->box_color_defaulted_p = 1; + face->box_color_defaulted_p = true; } else if (CONSP (box)) { @@ -5524,7 +5524,7 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) being one of `raised' or `sunken'. */ face->box = FACE_SIMPLE_BOX; face->box_color = face->foreground; - face->box_color_defaulted_p = 1; + face->box_color_defaulted_p = true; face->box_line_width = 1; while (CONSP (box)) @@ -5550,7 +5550,7 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) { face->box_color = load_color (f, face, value, LFACE_BOX_INDEX); - face->use_box_color_for_shadows_p = 1; + face->use_box_color_for_shadows_p = true; } } else if (EQ (keyword, QCstyle)) @@ -5569,34 +5569,34 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) if (EQ (underline, Qt)) { /* Use default color (same as foreground color). */ - face->underline_p = 1; + face->underline_p = true; face->underline_type = FACE_UNDER_LINE; - face->underline_defaulted_p = 1; + face->underline_defaulted_p = true; face->underline_color = 0; } else if (STRINGP (underline)) { /* Use specified color. */ - face->underline_p = 1; + face->underline_p = true; face->underline_type = FACE_UNDER_LINE; - face->underline_defaulted_p = 0; + face->underline_defaulted_p = false; face->underline_color = load_color (f, face, underline, LFACE_UNDERLINE_INDEX); } else if (NILP (underline)) { - face->underline_p = 0; - face->underline_defaulted_p = 0; + face->underline_p = false; + face->underline_defaulted_p = false; face->underline_color = 0; } else if (CONSP (underline)) { /* `(:color COLOR :style STYLE)'. STYLE being one of `line' or `wave'. */ - face->underline_p = 1; + face->underline_p = true; face->underline_color = 0; - face->underline_defaulted_p = 1; + face->underline_defaulted_p = true; face->underline_type = FACE_UNDER_LINE; /* FIXME? This is also not robust about checking the precise form. @@ -5617,12 +5617,12 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) { if (EQ (value, Qforeground_color)) { - face->underline_defaulted_p = 1; + face->underline_defaulted_p = true; face->underline_color = 0; } else if (STRINGP (value)) { - face->underline_defaulted_p = 0; + face->underline_defaulted_p = false; face->underline_color = load_color (f, face, value, LFACE_UNDERLINE_INDEX); } @@ -5643,13 +5643,13 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) face->overline_color = load_color (f, face, attrs[LFACE_OVERLINE_INDEX], LFACE_OVERLINE_INDEX); - face->overline_p = 1; + face->overline_p = true; } else if (EQ (overline, Qt)) { face->overline_color = face->foreground; - face->overline_color_defaulted_p = 1; - face->overline_p = 1; + face->overline_color_defaulted_p = true; + face->overline_p = true; } strike_through = attrs[LFACE_STRIKE_THROUGH_INDEX]; @@ -5658,13 +5658,13 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) face->strike_through_color = load_color (f, face, attrs[LFACE_STRIKE_THROUGH_INDEX], LFACE_STRIKE_THROUGH_INDEX); - face->strike_through_p = 1; + face->strike_through_p = true; } else if (EQ (strike_through, Qt)) { face->strike_through_color = face->foreground; - face->strike_through_color_defaulted_p = 1; - face->strike_through_p = 1; + face->strike_through_color_defaulted_p = true; + face->strike_through_p = true; } stipple = attrs[LFACE_STIPPLE_INDEX]; @@ -5678,15 +5678,15 @@ realize_x_face (struct face_cache *cache, Lisp_Object attrs[LFACE_VECTOR_SIZE]) /* Map a specified color of face FACE on frame F to a tty color index. IDX is either LFACE_FOREGROUND_INDEX or LFACE_BACKGROUND_INDEX, and - specifies which color to map. Set *DEFAULTED to 1 if mapping to the + specifies which color to map. Set *DEFAULTED to true if mapping to the default foreground/background colors. */ static void map_tty_color (struct frame *f, struct face *face, - enum lface_attribute_index idx, int *defaulted) + enum lface_attribute_index idx, bool *defaulted) { Lisp_Object frame, color, def; - int foreground_p = idx == LFACE_FOREGROUND_INDEX; + bool foreground_p = idx == LFACE_FOREGROUND_INDEX; unsigned long default_pixel = foreground_p ? FACE_TTY_DEFAULT_FG_COLOR : FACE_TTY_DEFAULT_BG_COLOR; unsigned long pixel = default_pixel; @@ -5728,7 +5728,7 @@ map_tty_color (struct frame *f, struct face *face, else pixel = FRAME_BACKGROUND_PIXEL (f); face->lface[idx] = tty_color_name (f, pixel); - *defaulted = 1; + *defaulted = true; } else if (pixel == default_other_pixel) { @@ -5737,7 +5737,7 @@ map_tty_color (struct frame *f, struct face *face, else pixel = FRAME_FOREGROUND_PIXEL (f); face->lface[idx] = tty_color_name (f, pixel); - *defaulted = 1; + *defaulted = true; } } #endif /* MSDOS */ @@ -5760,7 +5760,7 @@ realize_tty_face (struct face_cache *cache, { struct face *face; int weight, slant; - int face_colors_defaulted = 0; + bool face_colors_defaulted = false; struct frame *f = cache->f; /* Frame must be a termcap frame. */ @@ -5768,7 +5768,7 @@ realize_tty_face (struct face_cache *cache, /* Allocate a new realized face. */ face = make_realized_face (attrs); -#if 0 +#if false face->font_name = FRAME_MSDOS_P (cache->f) ? "ms-dos" : "tty"; #endif @@ -5776,13 +5776,13 @@ realize_tty_face (struct face_cache *cache, weight = FONT_WEIGHT_NAME_NUMERIC (attrs[LFACE_WEIGHT_INDEX]); slant = FONT_SLANT_NAME_NUMERIC (attrs[LFACE_SLANT_INDEX]); if (weight > 100) - face->tty_bold_p = 1; + face->tty_bold_p = true; if (slant != 100) - face->tty_italic_p = 1; + face->tty_italic_p = true; if (!NILP (attrs[LFACE_UNDERLINE_INDEX])) - face->tty_underline_p = 1; + face->tty_underline_p = true; if (!NILP (attrs[LFACE_INVERSE_INDEX])) - face->tty_reverse_p = 1; + face->tty_reverse_p = true; /* Map color names to color indices. */ map_tty_color (f, face, LFACE_FOREGROUND_INDEX, &face_colors_defaulted); @@ -5802,7 +5802,7 @@ realize_tty_face (struct face_cache *cache, && face->tty_bold_p && face->background == FACE_TTY_DEFAULT_FG_COLOR && face->foreground == FACE_TTY_DEFAULT_BG_COLOR) - face->tty_bold_p = 0; + face->tty_bold_p = false; return face; } @@ -5851,7 +5851,7 @@ compute_char_face (struct frame *f, int ch, Lisp_Object prop) Lisp_Object attrs[LFACE_VECTOR_SIZE]; struct face *default_face = FACE_FROM_ID (f, DEFAULT_FACE_ID); memcpy (attrs, default_face->lface, sizeof attrs); - merge_face_ref (f, prop, attrs, 1, 0); + merge_face_ref (f, prop, attrs, true, 0); face_id = lookup_face (f, attrs); } @@ -5869,7 +5869,7 @@ compute_char_face (struct frame *f, int ch, Lisp_Object prop) LIMIT is a position not to scan beyond. That is to limit the time this function can take. - If MOUSE is non-zero, use the character's mouse-face, not its face. + If MOUSE, use the character's mouse-face, not its face. BASE_FACE_ID, if non-negative, specifies a base face id to use instead of DEFAULT_FACE_ID. @@ -5879,7 +5879,7 @@ compute_char_face (struct frame *f, int ch, Lisp_Object prop) int face_at_buffer_position (struct window *w, ptrdiff_t pos, ptrdiff_t *endptr, ptrdiff_t limit, - int mouse, int base_face_id) + bool mouse, int base_face_id) { struct frame *f = XFRAME (w->frame); Lisp_Object attrs[LFACE_VECTOR_SIZE]; @@ -5912,7 +5912,7 @@ face_at_buffer_position (struct window *w, ptrdiff_t pos, { ptrdiff_t next_overlay; - GET_OVERLAYS_AT (pos, overlay_vec, noverlays, &next_overlay, 0); + GET_OVERLAYS_AT (pos, overlay_vec, noverlays, &next_overlay, false); if (next_overlay < endpos) endpos = next_overlay; } @@ -5945,7 +5945,7 @@ face_at_buffer_position (struct window *w, ptrdiff_t pos, /* Merge in attributes specified via text properties. */ if (!NILP (prop)) - merge_face_ref (f, prop, attrs, 1, 0); + merge_face_ref (f, prop, attrs, true, 0); /* Now merge the overlay data. */ noverlays = sort_overlays (overlay_vec, noverlays, w); @@ -5956,7 +5956,7 @@ face_at_buffer_position (struct window *w, ptrdiff_t pos, prop = Foverlay_get (overlay_vec[i], propname); if (!NILP (prop)) - merge_face_ref (f, prop, attrs, 1, 0); + merge_face_ref (f, prop, attrs, true, 0); oend = OVERLAY_END (overlay_vec[i]); oendpos = OVERLAY_POSITION (oend); @@ -5982,7 +5982,7 @@ face_at_buffer_position (struct window *w, ptrdiff_t pos, int face_for_overlay_string (struct window *w, ptrdiff_t pos, ptrdiff_t *endptr, ptrdiff_t limit, - int mouse, Lisp_Object overlay) + bool mouse, Lisp_Object overlay) { struct frame *f = XFRAME (w->frame); Lisp_Object attrs[LFACE_VECTOR_SIZE]; @@ -6021,7 +6021,7 @@ face_for_overlay_string (struct window *w, ptrdiff_t pos, /* Merge in attributes specified via text properties. */ if (!NILP (prop)) - merge_face_ref (f, prop, attrs, 1, 0); + merge_face_ref (f, prop, attrs, true, 0); *endptr = endpos; @@ -6043,7 +6043,7 @@ face_for_overlay_string (struct window *w, ptrdiff_t pos, BASE_FACE_ID is the id of a face to merge with. For strings coming from overlays or the `display' property it is the face at BUFPOS. - If MOUSE_P is non-zero, use the character's mouse-face, not its face. + If MOUSE_P, use the character's mouse-face, not its face. Set *ENDPTR to the next position where to check for faces in STRING; -1 if the face is constant from POS to the end of the @@ -6056,7 +6056,7 @@ int face_at_string_position (struct window *w, Lisp_Object string, ptrdiff_t pos, ptrdiff_t bufpos, ptrdiff_t *endptr, enum face_id base_face_id, - int mouse_p) + bool mouse_p) { Lisp_Object prop, position, end, limit; struct frame *f = XFRAME (WINDOW_FRAME (w)); @@ -6101,7 +6101,7 @@ face_at_string_position (struct window *w, Lisp_Object string, /* Merge in attributes specified via text properties. */ if (!NILP (prop)) - merge_face_ref (f, prop, attrs, 1, 0); + merge_face_ref (f, prop, attrs, true, 0); /* Look up a realized face with the given face attributes, or realize a new one for ASCII characters. */