From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Thierry Volpiatto Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 07 Jun 2017 09:32:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: 27272@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.149682791510512 (code B ref -1); Wed, 07 Jun 2017 09:32:01 +0000 Received: (at submit) by debbugs.gnu.org; 7 Jun 2017 09:31:55 +0000 Received: from localhost ([127.0.0.1]:60335 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIXJj-0002jT-0v for submit@debbugs.gnu.org; Wed, 07 Jun 2017 05:31:55 -0400 Received: from eggs.gnu.org ([208.118.235.92]:35595) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIXJh-0002jG-3K for submit@debbugs.gnu.org; Wed, 07 Jun 2017 05:31:53 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dIXJY-0003gm-Un for submit@debbugs.gnu.org; Wed, 07 Jun 2017 05:31:47 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:32787) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1dIXJY-0003gi-RK for submit@debbugs.gnu.org; Wed, 07 Jun 2017 05:31:44 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54775) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dIXJV-0003dw-Au for bug-gnu-emacs@gnu.org; Wed, 07 Jun 2017 05:31:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dIXJQ-0003fF-BQ for bug-gnu-emacs@gnu.org; Wed, 07 Jun 2017 05:31:41 -0400 Received: from mail-wm0-x22f.google.com ([2a00:1450:400c:c09::22f]:36655) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dIXJQ-0003eu-0Q for bug-gnu-emacs@gnu.org; Wed, 07 Jun 2017 05:31:36 -0400 Received: by mail-wm0-x22f.google.com with SMTP id 7so114107623wmo.1 for ; Wed, 07 Jun 2017 02:31:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=user-agent:from:to:subject:date:message-id:mime-version; bh=2Hf0/HOl5euF1GhbQGyOSi6QFWsBZ80y6OvqxojbyYo=; b=pcooXb8zaRip4Zbm1x1briFOth3j+KDBjGDT4mhfOqGLUevLc/DWvWkJ1ANJdgOMx3 9ZoJyxgRcWUzKFs+UjY/XcsZvXLNa3yux9H5B+uERdo5qNMAy0EZuq4e0qHX4XYM3fiM HmA/rS7f68WmnMK3VXH+xVwn23Ytko2hUxzTeof82fTllt/GWSIXx8/+OZvmt6N4f+G9 DOhmkWJJHqrsUCw+9lZGhHoQiHxYqprzAYq20VZmkasIMQ25atbkP+YsHG2pc3cN1ORS Jvo+Akdg1UW44ZoLYWGIrtsIcy/nmOAlAXJon8V7WYI7PY0inlEFq98fDoXgVHcEzEeq MJAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:user-agent:from:to:subject:date:message-id :mime-version; bh=2Hf0/HOl5euF1GhbQGyOSi6QFWsBZ80y6OvqxojbyYo=; b=c8yJ9IxzJ69jTplKki6si0S0hU383o8p4i5i2fDShUtdyhH2/8na31HTDwYylkzQmT 4oXZVK/BJ6CGsysfvbA8/M3H7sXoER7UpASTrLR+DLFP/iMV5UwmNSkv86+F7q3C7k1c 3AsEZ3L5p8D5GOrgs+bPHihi8jvgFW47aKZR5GX9YzmgwjBwKu7AAqh9Hg7uN8WEixeH 9qwPLsk5AbM4BIFKs7tqCv6QERBRoquQVJy7X2SOS8j0defvsIPGygRp5nYXEULzy2r3 19rORHGyugZVBALwxsoMi5JY8ojaH6aylB+iXTywS3jiZ5iLNNIcx5fQWk66elfqMtvg xJFw== X-Gm-Message-State: AODbwcB7EU455TgR0y/3rny9+noqPuQP/Km89K7SjxoKpYiYGimUa6OF eusMljkN/IhGFnby X-Received: by 10.28.62.199 with SMTP id l190mr846841wma.13.1496827892661; Wed, 07 Jun 2017 02:31:32 -0700 (PDT) Received: from dell-14z (ip-5-55-54-196.fr.amsterdamresidential.com. [196.54.55.5]) by smtp.gmail.com with ESMTPSA id h73sm2717610wma.10.2017.06.07.02.31.30 for (version=TLS1_2 cipher=AES128-SHA bits=128/128); Wed, 07 Jun 2017 02:31:31 -0700 (PDT) User-agent: mu4e 0.9.19; emacs 25.2.1 From: Thierry Volpiatto Date: Wed, 07 Jun 2017 11:31:28 +0200 Message-ID: <87poegnnyn.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.0 (----) If no objections can I push this ? Thanks. master 27cdf2989e82644567553f83ee9ce3f7e99bfc27 Author: Thierry Volpiatto AuthorDate: Wed Jun 7 11:25:01 2017 +0200 Commit: Thierry Volpiatto CommitDate: Wed Jun 7 11:25:01 2017 +0200 Parent: 43885eac09d More authors.el updates Merged: master Containing: master Follows: emacs-25.1 (129069) Fix eldoc with positional arg among keyword args. * lisp/progmodes/elisp-mode.el (elisp--highlight-function-argument): Switch to indexed arg searching when no keyword found behind arg. 1 file changed, 3 insertions(+), 3 deletions(-) lisp/progmodes/elisp-mode.el | 6 +++--- modified lisp/progmodes/elisp-mode.el @@ -1416,7 +1416,7 @@ In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'." (let* (case-fold-search key-have-value (sym-name (symbol-name sym)) - (cur-w (current-word)) + (cur-w (current-word t)) (args-lst-ak (cdr (member "&key" args-lst))) (limit (save-excursion (when (re-search-backward sym-name nil t) @@ -1425,7 +1425,7 @@ In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'." (substring cur-w 1) (save-excursion (let (split) - (when (re-search-backward ":\\([^()\n]*\\)" limit t) + (when (re-search-backward ":\\([^ ()\n]*\\)" limit t) (setq split (split-string (match-string 1) " " t)) (prog1 (car split) (when (cdr split) @@ -1437,7 +1437,7 @@ In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'." args-lst-ak (not (member (upcase cur-a) args-lst-ak)) (upcase (car (last args-lst-ak)))))) - (unless (string= cur-w sym-name) + (unless (and cur-w (string= cur-w sym-name)) ;; The last keyword have already a value ;; i.e :foo a b and cursor is at b. ;; If signature have also `&rest' In GNU Emacs 25.2.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.10.8) of 2017-04-22 built on dell-14z Windowing system distributor 'The X.Org Foundation', version 11.0.11701000 System Description: Linux Mint 17.3 Rosa Configured using: 'configure CFLAGS=-O3' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 Important settings: value of $LC_MONETARY: fr_FR.UTF-8 value of $LC_NUMERIC: fr_FR.UTF-8 value of $LC_TIME: fr_FR.UTF-8 value of $LANG: fr_FR.UTF-8 locale-coding-system: utf-8-unix Major mode: Emacs-Lisp Minor modes in effect: global-git-gutter-mode: t git-gutter-mode: t eldoc-in-minibuffer-mode: t global-undo-tree-mode: t undo-tree-mode: t diff-auto-refine-mode: t magit-auto-revert-mode: t auto-revert-mode: t global-git-commit-mode: t psession-mode: t dired-async-mode: t display-time-mode: t winner-mode: t auto-image-file-mode: t savehist-mode: t show-paren-mode: t helm-descbinds-mode: t helm-top-poll-mode: t helm-push-mark-mode: t helm-mode: t shell-dirtrack-mode: t helm-adaptive-mode: t helm-popup-tip-mode: t async-bytecomp-package-mode: t minibuffer-depth-indicate-mode: t override-global-mode: t tooltip-mode: t global-eldoc-mode: t eldoc-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t column-number-mode: t line-number-mode: t transient-mark-mode: t Recent messages: [C-t] show common commands, [?] describe events, [C-h i] show manual Running git commit -- [2 times] Diffing changes to be committed (C-g to abort diffing) [2 times] When done with a buffer, type C-c C-c Type C-c C-c to finish, or C-c C-k to cancel Saving file /home/thierry/labo/emacs/.git/COMMIT_EDITMSG... Wrote /home/thierry/labo/emacs/.git/COMMIT_EDITMSG Git finished [2 times] Drop all stashes in refs/stash? (y or n) y [2 times] Mark set next-line: End of buffer [12 times] Load-path shadows: /home/thierry/.emacs.d/elpa/org-20170515/ob-keys hides /usr/local/share/emacs/25.2/lisp/org/ob-keys /home/thierry/.emacs.d/elpa/org-20170515/ob-ref hides /usr/local/share/emacs/25.2/lisp/org/ob-ref /home/thierry/.emacs.d/elpa/org-20170515/ox-org hides /usr/local/share/emacs/25.2/lisp/org/ox-org /home/thierry/.emacs.d/elpa/org-20170515/ob-sass hides /usr/local/share/emacs/25.2/lisp/org/ob-sass /home/thierry/.emacs.d/elpa/org-20170515/org-bbdb hides /usr/local/share/emacs/25.2/lisp/org/org-bbdb /home/thierry/.emacs.d/elpa/org-20170515/ox-latex hides /usr/local/share/emacs/25.2/lisp/org/ox-latex /home/thierry/.emacs.d/elpa/org-20170515/ox-beamer hides /usr/local/share/emacs/25.2/lisp/org/ox-beamer /home/thierry/.emacs.d/elpa/org-20170515/org-crypt hides /usr/local/share/emacs/25.2/lisp/org/org-crypt /home/thierry/.emacs.d/elpa/org-20170515/ob-maxima hides /usr/local/share/emacs/25.2/lisp/org/ob-maxima /home/thierry/.emacs.d/elpa/org-20170515/ob-R hides /usr/local/share/emacs/25.2/lisp/org/ob-R /home/thierry/.emacs.d/elpa/org-20170515/ob-eval hides /usr/local/share/emacs/25.2/lisp/org/ob-eval /home/thierry/.emacs.d/elpa/org-20170515/org-datetree hides /usr/local/share/emacs/25.2/lisp/org/org-datetree /home/thierry/.emacs.d/elpa/org-20170515/org-element hides /usr/local/share/emacs/25.2/lisp/org/org-element /home/thierry/.emacs.d/elpa/org-20170515/ob-core hides /usr/local/share/emacs/25.2/lisp/org/ob-core /home/thierry/.emacs.d/elpa/org-20170515/ox-md hides /usr/local/share/emacs/25.2/lisp/org/ox-md /home/thierry/.emacs.d/elpa/org-20170515/org-indent hides /usr/local/share/emacs/25.2/lisp/org/org-indent /home/thierry/.emacs.d/elpa/org-20170515/ox hides /usr/local/share/emacs/25.2/lisp/org/ox /home/thierry/.emacs.d/elpa/org-20170515/ob-fortran hides /usr/local/share/emacs/25.2/lisp/org/ob-fortran /home/thierry/.emacs.d/elpa/org-20170515/ob-matlab hides /usr/local/share/emacs/25.2/lisp/org/ob-matlab /home/thierry/.emacs.d/elpa/org-20170515/org-macro hides /usr/local/share/emacs/25.2/lisp/org/org-macro /home/thierry/.emacs.d/elpa/org-20170515/ox-texinfo hides /usr/local/share/emacs/25.2/lisp/org/ox-texinfo /home/thierry/.emacs.d/elpa/org-20170515/ob-sqlite hides /usr/local/share/emacs/25.2/lisp/org/ob-sqlite /home/thierry/.emacs.d/elpa/org-20170515/org-faces hides /usr/local/share/emacs/25.2/lisp/org/org-faces /home/thierry/.emacs.d/elpa/org-20170515/org-pcomplete hides /usr/local/share/emacs/25.2/lisp/org/org-pcomplete /home/thierry/.emacs.d/elpa/org-20170515/org-mouse hides /usr/local/share/emacs/25.2/lisp/org/org-mouse /home/thierry/.emacs.d/elpa/org-20170515/ob-emacs-lisp hides /usr/local/share/emacs/25.2/lisp/org/ob-emacs-lisp /home/thierry/.emacs.d/elpa/org-20170515/org-archive hides /usr/local/share/emacs/25.2/lisp/org/org-archive /home/thierry/.emacs.d/elpa/org-20170515/org-capture hides /usr/local/share/emacs/25.2/lisp/org/org-capture /home/thierry/.emacs.d/elpa/org-20170515/ob-awk hides /usr/local/share/emacs/25.2/lisp/org/ob-awk /home/thierry/.emacs.d/elpa/org-20170515/ob-octave hides /usr/local/share/emacs/25.2/lisp/org/ob-octave /home/thierry/.emacs.d/elpa/org-20170515/org-timer hides /usr/local/share/emacs/25.2/lisp/org/org-timer /home/thierry/.emacs.d/elpa/org-20170515/ob-sql hides /usr/local/share/emacs/25.2/lisp/org/ob-sql /home/thierry/.emacs.d/elpa/org-20170515/ob-latex hides /usr/local/share/emacs/25.2/lisp/org/ob-latex /home/thierry/.emacs.d/elpa/org-20170515/org-macs hides /usr/local/share/emacs/25.2/lisp/org/org-macs /home/thierry/.emacs.d/elpa/org-20170515/org-rmail hides /usr/local/share/emacs/25.2/lisp/org/org-rmail /home/thierry/.emacs.d/elpa/org-20170515/org-w3m hides /usr/local/share/emacs/25.2/lisp/org/org-w3m /home/thierry/.emacs.d/elpa/org-20170515/ob-io hides /usr/local/share/emacs/25.2/lisp/org/ob-io /home/thierry/.emacs.d/elpa/org-20170515/ob hides /usr/local/share/emacs/25.2/lisp/org/ob /home/thierry/.emacs.d/elpa/org-20170515/ob-perl hides /usr/local/share/emacs/25.2/lisp/org/ob-perl /home/thierry/.emacs.d/elpa/org-20170515/ob-mscgen hides /usr/local/share/emacs/25.2/lisp/org/ob-mscgen /home/thierry/.emacs.d/elpa/org-20170515/ob-lilypond hides /usr/local/share/emacs/25.2/lisp/org/ob-lilypond /home/thierry/.emacs.d/elpa/org-20170515/org-footnote hides /usr/local/share/emacs/25.2/lisp/org/org-footnote /home/thierry/.emacs.d/elpa/org-20170515/ob-java hides /usr/local/share/emacs/25.2/lisp/org/ob-java /home/thierry/.emacs.d/elpa/org-20170515/ox-html hides /usr/local/share/emacs/25.2/lisp/org/ox-html /home/thierry/.emacs.d/elpa/org-20170515/ob-haskell hides /usr/local/share/emacs/25.2/lisp/org/ob-haskell /home/thierry/.emacs.d/elpa/org-20170515/org-docview hides /usr/local/share/emacs/25.2/lisp/org/org-docview /home/thierry/.emacs.d/elpa/org-20170515/ob-comint hides /usr/local/share/emacs/25.2/lisp/org/ob-comint /home/thierry/.emacs.d/elpa/org-20170515/ob-css hides /usr/local/share/emacs/25.2/lisp/org/ob-css /home/thierry/.emacs.d/elpa/org-20170515/ob-ditaa hides /usr/local/share/emacs/25.2/lisp/org/ob-ditaa /home/thierry/.emacs.d/elpa/org-20170515/ob-scala hides /usr/local/share/emacs/25.2/lisp/org/ob-scala /home/thierry/.emacs.d/elpa/org-20170515/org hides /usr/local/share/emacs/25.2/lisp/org/org /home/thierry/.emacs.d/elpa/org-20170515/org-mobile hides /usr/local/share/emacs/25.2/lisp/org/org-mobile /home/thierry/.emacs.d/elpa/org-20170515/ob-lisp hides /usr/local/share/emacs/25.2/lisp/org/ob-lisp /home/thierry/.emacs.d/elpa/org-20170515/ob-gnuplot hides /usr/local/share/emacs/25.2/lisp/org/ob-gnuplot /home/thierry/.emacs.d/elpa/org-20170515/org-src hides /usr/local/share/emacs/25.2/lisp/org/org-src /home/thierry/.emacs.d/elpa/org-20170515/ox-ascii hides /usr/local/share/emacs/25.2/lisp/org/ox-ascii /home/thierry/.emacs.d/elpa/org-20170515/ob-calc hides /usr/local/share/emacs/25.2/lisp/org/ob-calc /home/thierry/.emacs.d/elpa/org-20170515/org-irc hides /usr/local/share/emacs/25.2/lisp/org/org-irc /home/thierry/.emacs.d/elpa/org-20170515/org-loaddefs hides /usr/local/share/emacs/25.2/lisp/org/org-loaddefs /home/thierry/.emacs.d/elpa/org-20170515/org-install hides /usr/local/share/emacs/25.2/lisp/org/org-install /home/thierry/.emacs.d/elpa/org-20170515/org-info hides /usr/local/share/emacs/25.2/lisp/org/org-info /home/thierry/.emacs.d/elpa/org-20170515/ob-plantuml hides /usr/local/share/emacs/25.2/lisp/org/ob-plantuml /home/thierry/.emacs.d/elpa/org-20170515/org-feed hides /usr/local/share/emacs/25.2/lisp/org/org-feed /home/thierry/.emacs.d/elpa/org-20170515/org-version hides /usr/local/share/emacs/25.2/lisp/org/org-version /home/thierry/.emacs.d/elpa/org-20170515/ob-makefile hides /usr/local/share/emacs/25.2/lisp/org/ob-makefile /home/thierry/.emacs.d/elpa/org-20170515/org-entities hides /usr/local/share/emacs/25.2/lisp/org/org-entities /home/thierry/.emacs.d/elpa/org-20170515/ob-python hides /usr/local/share/emacs/25.2/lisp/org/ob-python /home/thierry/.emacs.d/elpa/org-20170515/ob-ledger hides /usr/local/share/emacs/25.2/lisp/org/ob-ledger /home/thierry/.emacs.d/elpa/org-20170515/ox-man hides /usr/local/share/emacs/25.2/lisp/org/ox-man /home/thierry/.emacs.d/elpa/org-20170515/ob-shen hides /usr/local/share/emacs/25.2/lisp/org/ob-shen /home/thierry/.emacs.d/elpa/org-20170515/org-inlinetask hides /usr/local/share/emacs/25.2/lisp/org/org-inlinetask /home/thierry/.emacs.d/elpa/org-20170515/org-list hides /usr/local/share/emacs/25.2/lisp/org/org-list /home/thierry/.emacs.d/elpa/org-20170515/ox-publish hides /usr/local/share/emacs/25.2/lisp/org/ox-publish /home/thierry/.emacs.d/elpa/org-20170515/org-gnus hides /usr/local/share/emacs/25.2/lisp/org/org-gnus /home/thierry/.emacs.d/elpa/org-20170515/org-agenda hides /usr/local/share/emacs/25.2/lisp/org/org-agenda /home/thierry/.emacs.d/elpa/org-20170515/org-id hides /usr/local/share/emacs/25.2/lisp/org/org-id /home/thierry/.emacs.d/elpa/org-20170515/org-plot hides /usr/local/share/emacs/25.2/lisp/org/org-plot /home/thierry/.emacs.d/elpa/org-20170515/ob-C hides /usr/local/share/emacs/25.2/lisp/org/ob-C /home/thierry/.emacs.d/elpa/org-20170515/org-clock hides /usr/local/share/emacs/25.2/lisp/org/org-clock /home/thierry/.emacs.d/elpa/org-20170515/org-attach hides /usr/local/share/emacs/25.2/lisp/org/org-attach /home/thierry/.emacs.d/elpa/org-20170515/ob-ruby hides /usr/local/share/emacs/25.2/lisp/org/ob-ruby /home/thierry/.emacs.d/elpa/org-20170515/org-habit hides /usr/local/share/emacs/25.2/lisp/org/org-habit /home/thierry/.emacs.d/elpa/org-20170515/org-eshell hides /usr/local/share/emacs/25.2/lisp/org/org-eshell /home/thierry/.emacs.d/elpa/org-20170515/ob-ocaml hides /usr/local/share/emacs/25.2/lisp/org/ob-ocaml /home/thierry/.emacs.d/elpa/org-20170515/ox-odt hides /usr/local/share/emacs/25.2/lisp/org/ox-odt /home/thierry/.emacs.d/elpa/org-20170515/ob-exp hides /usr/local/share/emacs/25.2/lisp/org/ob-exp /home/thierry/.emacs.d/elpa/org-20170515/ob-dot hides /usr/local/share/emacs/25.2/lisp/org/ob-dot /home/thierry/.emacs.d/elpa/org-20170515/ob-scheme hides /usr/local/share/emacs/25.2/lisp/org/ob-scheme /home/thierry/.emacs.d/elpa/org-20170515/ob-org hides /usr/local/share/emacs/25.2/lisp/org/ob-org /home/thierry/.emacs.d/elpa/org-20170515/org-bibtex hides /usr/local/share/emacs/25.2/lisp/org/org-bibtex /home/thierry/.emacs.d/elpa/org-20170515/org-compat hides /usr/local/share/emacs/25.2/lisp/org/org-compat /home/thierry/.emacs.d/elpa/org-20170515/ox-icalendar hides /usr/local/share/emacs/25.2/lisp/org/ox-icalendar /home/thierry/.emacs.d/elpa/org-20170515/org-colview hides /usr/local/share/emacs/25.2/lisp/org/org-colview /home/thierry/.emacs.d/elpa/org-20170515/ob-picolisp hides /usr/local/share/emacs/25.2/lisp/org/ob-picolisp /home/thierry/.emacs.d/elpa/org-20170515/org-mhe hides /usr/local/share/emacs/25.2/lisp/org/org-mhe /home/thierry/.emacs.d/elpa/org-20170515/org-table hides /usr/local/share/emacs/25.2/lisp/org/org-table /home/thierry/.emacs.d/elpa/org-20170515/ob-clojure hides /usr/local/share/emacs/25.2/lisp/org/ob-clojure /home/thierry/.emacs.d/elpa/org-20170515/ob-tangle hides /usr/local/share/emacs/25.2/lisp/org/ob-tangle /home/thierry/.emacs.d/elpa/org-20170515/ob-table hides /usr/local/share/emacs/25.2/lisp/org/ob-table /home/thierry/.emacs.d/elpa/org-20170515/ob-asymptote hides /usr/local/share/emacs/25.2/lisp/org/ob-asymptote /home/thierry/.emacs.d/elpa/org-20170515/org-ctags hides /usr/local/share/emacs/25.2/lisp/org/org-ctags /home/thierry/.emacs.d/elpa/org-20170515/ob-screen hides /usr/local/share/emacs/25.2/lisp/org/ob-screen /home/thierry/.emacs.d/elpa/org-20170515/org-protocol hides /usr/local/share/emacs/25.2/lisp/org/org-protocol /home/thierry/.emacs.d/elpa/org-20170515/ob-js hides /usr/local/share/emacs/25.2/lisp/org/ob-js /home/thierry/.emacs.d/elpa/org-20170515/ob-lob hides /usr/local/share/emacs/25.2/lisp/org/ob-lob /home/thierry/.emacs.d/elpa/let-alist-1.0.5/let-alist hides /usr/local/share/emacs/25.2/lisp/emacs-lisp/let-alist /home/thierry/.emacs.d/elpa/seq-2.20/seq hides /usr/local/share/emacs/25.2/lisp/emacs-lisp/seq Features: (shadow epa-mail face-remap emacsbug helm-command view tramp-cache whitespace helm-ls-git vc vc-dispatcher tabify make-mode vc-filewise vc-rcs ledger-config ledger vc-git naquadah-theme solar cal-dst holidays hol-loaddefs em-unix em-term term disp-table ehelp em-script em-prompt em-ls em-hist em-pred em-glob em-dirs em-cmpl em-basic em-banner em-alias tv-utils log-view realgud realgud-zshdb realgud:zshdb-track-mode realgud:zshdb-core realgud:zshdb-init realgud-trepan3k realgud:trepan3k-track-mode realgud:trepan3k-core realgud:trepan3k-init realgud-trepan2 realgud:trepan2-track-mode realgud:trepan2-core realgud:trepan2-init python realgud-trepanpl realgud:trepanpl-track-mode realgud:trepanpl-core realgud:trepanpl-init realgud-trepanjs realgud:trepanjs-track-mode realgud:trepanjs-core realgud:trepanjs-init realgud-trepan realgud:trepan-track-mode realgud:trepan-core realgud:trepan-init realgud-remake realgud:remake-track-mode realgud:remake-core realgud:remake-init realgud-rdebug realgud-rdebug-track-mode realgud-rdebug-core realgud-rdebug-init realgud-lang-ruby realgud-perldb realgud:perldb-track-mode realgud:perldb-core realgud:perldb-init realgud-lang-perl realgud-pdb realgud:pdb-track-mode realgud:pdb-core realgud:pdb-init realgud-nodejs realgud:nodejs-track-mode realgud:nodejs-core realgud:nodejs-init realgud-lang-js realgud-kshdb realgud:kshdb-track-mode realgud:kshdb-core realgud:kshdb-init realgud-jdb realgud:jdb-track-mode realgud:jdb-core realgud:jdb-init realgud-lang-java gud realgud-ipdb realgud:ipdb-track-mode realgud:ipdb-core realgud:ipdb-init realgud-lang-python realgud-gub realgud:gub-track-mode realgud:gub-core realgud:gub-init realgud-gdb realgud:gdb-track-mode realgud:gdb-init realgud:gdb-core realgud-bashdb realgud:bashdb-track-mode realgud:bashdb-core realgud:bashdb-init realgud-lang-posix-shell realgud:run realgud-track-mode realgud-backtrace-mode realgud-track realgud-shortkey realgud-menu realgud-eval realgud-cmds realgud-send realgud-window realgud-utils realgud-init realgud-file realgud-core realgud-reset realgud-buffer-helper realgud-buffer-backtrace realgud-buffer-command realgud-buffer-info realgud-regexp realgud-lochist realgud-bp realgud-bp-image-data realgud-loc realgud-buffer-source realgud-key key realgud-follow realgud-lang realgud-fringe realgud-helper loc-changes realgud-custom load-relative flycheck pcmpl-git NetworkManager dbus gh gh-users gh-issues gh-pulls gh-repos gh-comments gh-gist gh-oauth gh-api logito gh-cache pcache eieio-base gh-auth gh-url url-http tls gnutls url-auth url-gw disable-mouse powerline powerline-separators color powerline-themes windmove toc-org elp cl-indent esh-var esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg esh-groups eshell esh-module esh-mode esh-util markdown-mode addressbook-bookmark mu4e-config org-mu4e helm-mu mu4e-contrib mu4e desktop frameset mu4e-speedbar speedbar sb-image ezimage dframe mu4e-main mu4e-view epa derived mu4e-headers mu4e-compose mu4e-context mu4e-draft mu4e-actions ido rfc2368 smtpmail sendmail mu4e-mark mu4e-message flow-fill html2text mu4e-proc mu4e-proc-mu mu4e-utils mu4e-lists mu4e-vars hl-line cl mu4e-meta config-w3m w3m-search w3m doc-view subr-x jka-compr image-mode timezone w3m-hist w3m-fb bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util git-gutter cus-edit wid-edit appt diary-lib diary-loaddefs ange-ftp xdvi-search eldoc-eval undo-tree diff magit-obsolete magit-blame magit-stash magit-bisect magit-remote magit-commit magit-sequence magit-notes magit-worktree magit-branch magit-files magit-refs magit-status magit magit-repos magit-apply magit-wip magit-log magit-diff smerge-mode diff-mode magit-core magit-autorevert autorevert filenotify magit-process magit-margin magit-mode magit-git crm magit-section magit-popup git-commit magit-utils log-edit message rfc822 mml mml-sec epg epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log with-editor tramp-sh server pcomplete-extension pcmpl-unix pcmpl-gnu psession iterator iedit iedit-lib dired-extension emms-vlc-config emms-librefm-stream emms-librefm-scrobbler emms-playlist-limit emms-volume emms-volume-amixer emms-i18n emms-history emms-score emms-stream-info emms-metaplaylist-mode emms-bookmarks emms-cue emms-mode-line-icon emms-browser sort emms-playlist-sort emms-last-played emms-player-xine emms-player-mpd tq emms-playing-time emms-lyrics emms-url emms-streams emms-show-all emms-tag-editor emms-mark emms-mode-line emms-cache emms-info-ogginfo emms-info-mp3info emms-info later-do emms-playlist-mode emms-player-vlc emms-player-mplayer emms-player-simple emms-source-playlist emms-source-file locate emms-setup emms emms-compat org-config-thierry ob-sh org-crypt org-element avl-tree org-location-google-maps org-agenda google-maps google-maps-static google-maps-geocode google-maps-base org org-macro org-footnote org-pcomplete org-list org-faces org-entities noutline outline org-version ob-emacs-lisp ob ob-tangle org-src ob-ref ob-lob ob-table ob-keys ob-exp ob-comint ob-core ob-eval org-compat org-macs org-loaddefs find-func cal-menu calendar cal-loaddefs dired-async net-utils time winner w3m-wget wget wget-sysdep cmake-mode autotest-mode autoconf-mode sh-script smie executable ps-print ps-def lpr rst image-file savehist paren woman man ediff-merg ediff-wind ediff-diff ediff-mult ediff-help ediff-init ediff-util ediff init-helm-thierry helm-descbinds helm-sys popup helm-ring helm-elisp helm-eval edebug helm-mode helm-files image-dired tramp tramp-compat tramp-loaddefs trampver ucs-normalize shell pcomplete format-spec dired-x dired-aux ffap thingatpt helm-buffers helm-tags helm-bookmark helm-adaptive helm-info bookmark pp helm-locate helm-grep wgrep-helm wgrep grep helm-regexp helm-external helm-net browse-url xml url url-proxy url-privacy url-expand url-methods url-history url-cookie url-domsuf url-util mailcap helm-utils compile comint ansi-color ring helm-help helm-types helm helm-source helm-multi-match helm-lib dired helm-extensions-autoloads helm-config helm-autoloads helm-easymenu async-bytecomp advice async mb-depth edmacro kmacro use-package diminish bind-key easy-mmode finder-inf tex-site gh-common gh-profile url-parse auth-source gnus-util mm-util help-fns mail-prsvr password-cache url-vars rx s marshal cl-seq eieio-compat ht json map dash eieio eieio-core cl-macs info package seq byte-opt gv bytecomp byte-compile cl-extra help-mode easymenu cconv time-date avoid cus-start cus-load cl-loaddefs pcase cl-lib mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list newcomment elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese charscript case-table epa-hook jka-cmpr-hook help simple abbrev minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote dbusbind inotify dynamic-setting system-font-setting font-render-setting move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 852624 255376) (symbols 48 63544 4) (miscs 40 1010 3307) (strings 32 203287 136597) (string-bytes 1 6279297) (vectors 16 102612) (vector-slots 8 2224110 91733) (floats 8 3203 2112) (intervals 56 14309 3236) (buffers 976 138) (heap 1024 94228 14737)) -- Thierry Gpg Key fingerprint = 6CEC 7081 AB33 E251 4AB8 5FC2 28D1 7F53 59F2 9997 From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 07 Jun 2017 15:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149684963025671 (code B ref 27272); Wed, 07 Jun 2017 15:34:02 +0000 Received: (at 27272) by debbugs.gnu.org; 7 Jun 2017 15:33:50 +0000 Received: from localhost ([127.0.0.1]:33406 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIcxy-0006fz-Lv for submit@debbugs.gnu.org; Wed, 07 Jun 2017 11:33:50 -0400 Received: from eggs.gnu.org ([208.118.235.92]:50374) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIcxx-0006fn-7g for 27272@debbugs.gnu.org; Wed, 07 Jun 2017 11:33:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dIcxp-0004FD-3w for 27272@debbugs.gnu.org; Wed, 07 Jun 2017 11:33:44 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:52016) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dIcxp-0004F8-0K; Wed, 07 Jun 2017 11:33:41 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:4111 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1dIcxo-0003iN-9u; Wed, 07 Jun 2017 11:33:40 -0400 Date: Wed, 07 Jun 2017 18:33:36 +0300 Message-Id: <83mv9j95in.fsf@gnu.org> From: Eli Zaretskii In-reply-to: <87poegnnyn.fsf@gmail.com> (message from Thierry Volpiatto on Wed, 07 Jun 2017 11:31:28 +0200) References: <87poegnnyn.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) > From: Thierry Volpiatto > Date: Wed, 07 Jun 2017 11:31:28 +0200 > > > If no objections can I push this ? Could you perhaps provide some more explanations for what problem you are trying to solve and how? The log message doesn't help in understanding that (and also doesn't describe the actual changes, only their general idea, so it seems). Also, does any of this cause visible behavior changes? If so, perhaps a NEWS entry is in order. Thanks. From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Thierry Volpiatto Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 07 Jun 2017 16:03:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Eli Zaretskii Cc: 27272@debbugs.gnu.org Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149685135728251 (code B ref 27272); Wed, 07 Jun 2017 16:03:02 +0000 Received: (at 27272) by debbugs.gnu.org; 7 Jun 2017 16:02:37 +0000 Received: from localhost ([127.0.0.1]:33435 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIdPo-0007La-Mm for submit@debbugs.gnu.org; Wed, 07 Jun 2017 12:02:36 -0400 Received: from mail-wm0-f52.google.com ([74.125.82.52]:37469) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIdPn-0007LM-13 for 27272@debbugs.gnu.org; Wed, 07 Jun 2017 12:02:35 -0400 Received: by mail-wm0-f52.google.com with SMTP id d73so14401701wma.0 for <27272@debbugs.gnu.org>; Wed, 07 Jun 2017 09:02:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:user-agent:from:to:cc:subject:in-reply-to:date :message-id:mime-version; bh=IIcxX0U71hAmvHajgioof2q/u4BTVMaMtNUi0EiX2w0=; b=fgDaaBDttluccerTp3grYjvI4C4SfPooqDAQqemJTBFlixgz4SGedES0/YU8gVF7Wg vfWIPwkV8xBNu3v5D2oAQqzdRTBPpzMKMqT7RgEl4yBI+wQX/3ZCvkXoWpNI+Yc8AU7C 9ZOjcWkDYIdGtVvDStmBGH5IvBZr0E5vKYUVOKDqvEjs7AmxiLzlMEK6wyvf6qIM0zww JZhx2AWlLMteqZ0t3jJ+2cVD/bf8cxvsYvzaMcLK9/NE/WzmbCxGvijD+27o3lpAsWCn 1QgA20dDvhXf0JIqiHyiIiLJF1AqLy89lAX7ZAzrmN5qV9lGmnCRhIqSPnhHr3mc+hBl WBfQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version; bh=IIcxX0U71hAmvHajgioof2q/u4BTVMaMtNUi0EiX2w0=; b=KabIZXI4y0LdhSKQP6q6dZasgjRmm7WEtMdfRDvkqAtzpK2549yjd5jUynO+ZYCHnc hg57Eo2ahVNX5r6wp9DIK3XFOtfDwT8hSDxggWEAYsPAbDJhjJN2Z+kGMQCkj9/QZi7V 3ZKl6pbDVeXlFSmHBbU6gcwzW/cIiNT+idD/BFVIbqbS0Uy6ilGnY6D7QtgdDiTXokTw DwSCTPhJcBTmJq/09h59j+ARhKe432rmdgd3UDOcOYGGfQsBMSMxeTzxjte3nbF/6x/9 Hm4cEPn8yNWi5vwjTbB6e62mrH4FFLs1gWOpp+XkmhupAQkpGjz4yztzg6H0tjS1sOH7 2oPg== X-Gm-Message-State: AODbwcAj9MXXCorjNCO5mze/+kmS82NizABt3zthvFgQ52RIZqVu1x8F lxrErR8xqPhsQNj0kUA= X-Received: by 10.28.136.201 with SMTP id k192mr293225wmd.122.1496851348869; Wed, 07 Jun 2017 09:02:28 -0700 (PDT) Received: from dell-14z ([179.43.151.3]) by smtp.gmail.com with ESMTPSA id o65sm2481291wmo.19.2017.06.07.09.02.26 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Wed, 07 Jun 2017 09:02:27 -0700 (PDT) References: <87poegnnyn.fsf@gmail.com> <83mv9j95in.fsf@gnu.org> User-agent: mu4e 0.9.19; emacs 24.5.1 From: Thierry Volpiatto In-reply-to: <83mv9j95in.fsf@gnu.org> Date: Wed, 07 Jun 2017 18:02:24 +0200 Message-ID: <87wp8nbxbj.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Eli Zaretskii writes: > Could you perhaps provide some more explanations for what problem you > are trying to solve and how? (cl-defun foo (prompt lst &key a b c)) (foo "prompt: " bar :b 2) Try to move your cursor on the different args with and without patch applied. Thanks. -- Thierry Gpg Key fingerprint = 6CEC 7081 AB33 E251 4AB8 5FC2 28D1 7F53 59F2 9997 From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 07 Jun 2017 16:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Eli Zaretskii , Thierry Volpiatto Cc: 27272@debbugs.gnu.org Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149685212429325 (code B ref 27272); Wed, 07 Jun 2017 16:16:02 +0000 Received: (at 27272) by debbugs.gnu.org; 7 Jun 2017 16:15:24 +0000 Received: from localhost ([127.0.0.1]:33445 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIdcB-0007cv-SO for submit@debbugs.gnu.org; Wed, 07 Jun 2017 12:15:24 -0400 Received: from mail-wr0-f177.google.com ([209.85.128.177]:36559) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIdc9-0007ch-FU for 27272@debbugs.gnu.org; Wed, 07 Jun 2017 12:15:21 -0400 Received: by mail-wr0-f177.google.com with SMTP id v111so8281853wrc.3 for <27272@debbugs.gnu.org>; Wed, 07 Jun 2017 09:15:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=XF+ScJIisKQV5qMVWlqu0cevcb/8ydmuLAH2BsqqeeY=; b=KywRK+0jHdbWpZmRdZpgtSa84Vd1z/ecCE0v/ezIP76W3zQxk/F/j1qhXal1cAUDq/ RhGY3fLwvsTlTem/Mec2E78u7QyFutL8xLbLatfPevisp9AE8VaCzCykqyjqMaKAqlwg Rtk75dIHAb4TN9Dr0vIqkJ8Tj14ENe6VV0Ped+SAh2qaDQG7BMa70CRVKjeJ97NU4p+I pf1jNGasQyPOmFUxlSgaifT84bmbFokyAlijieB7tRlZG+RXcqurRbb/6JPP7kvcWDgX 6WLgT0Cp0vaHaJx7VmmI5I0ngpEYcssip9aZgR1A6442fFRACLjsEzF+0SMAq1bjosMA I0Og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:subject:to:cc:references:from:message-id :date:user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=XF+ScJIisKQV5qMVWlqu0cevcb/8ydmuLAH2BsqqeeY=; b=c1z4i8ryQU5uzwNl6Lqp3qjIy0dVSGBkg6AHNHk8DbHr207ubrv0HHQbOwuip4Sbpx udoYo3sQZ5ShrwLd+gZKbCKQSnQVcMw/v7c/mX+DgBxHxAA8Ou/nhOxr1J4eTVKQ1Bnb e81b/GAiGyBUXOJDTLBZKHfrSV85plw0sElEix/z/R94ooBhoLt3YRrj9wf87hbtKiJY DuK179lEXFpIFzquJ6+Ec/PIw50h2JEaCylijGZ+VbHvrY68blQtrPYvPLkTUjgERAhi 0wIsYTXUI+YWQYObIddSZujqPB0x9Q3tWrqFMg2fMBMJ737JBPOQIAqpONn3a+OWbvnv gTdg== X-Gm-Message-State: AODbwcAKfKzzez++rKwPq5sc88X6FU4LgxX1px64WTIKvCWEzxGZczNZ dx3i46QnXxCfj8Tl3hE= X-Received: by 10.223.166.13 with SMTP id k13mr25347466wrc.197.1496852115311; Wed, 07 Jun 2017 09:15:15 -0700 (PDT) Received: from [192.168.0.133] ([212.50.99.193]) by smtp.googlemail.com with ESMTPSA id u141sm2704815wmd.28.2017.06.07.09.15.13 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 07 Jun 2017 09:15:14 -0700 (PDT) References: <87poegnnyn.fsf@gmail.com> <83mv9j95in.fsf@gnu.org> From: Dmitry Gutov Message-ID: <0f74ccdc-5c15-2fca-2e8b-d76ec77a4fce@yandex.ru> Date: Wed, 7 Jun 2017 19:15:12 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:54.0) Gecko/20100101 Thunderbird/54.0 MIME-Version: 1.0 In-Reply-To: <83mv9j95in.fsf@gnu.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) On 6/7/17 6:33 PM, Eli Zaretskii wrote: > Could you perhaps provide some more explanations for what problem you > are trying to solve and how? The log message doesn't help in > understanding that (and also doesn't describe the actual changes, only > their general idea, so it seems). It would be great to have a test or two there, and that would take care of the explanation, probably. > Also, does any of this cause visible behavior changes? If so, perhaps > a NEWS entry is in order. I'm guessing it's purely a bugfix. From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 07 Jun 2017 17:01:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.14968548433227 (code B ref 27272); Wed, 07 Jun 2017 17:01:01 +0000 Received: (at 27272) by debbugs.gnu.org; 7 Jun 2017 17:00:43 +0000 Received: from localhost ([127.0.0.1]:33483 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIeK2-0000pl-PE for submit@debbugs.gnu.org; Wed, 07 Jun 2017 13:00:42 -0400 Received: from eggs.gnu.org ([208.118.235.92]:48684) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIeK1-0000jz-IP for 27272@debbugs.gnu.org; Wed, 07 Jun 2017 13:00:41 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dIeJr-0000Ha-ER for 27272@debbugs.gnu.org; Wed, 07 Jun 2017 13:00:36 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_20,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:53523) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dIeJr-0000HT-Av; Wed, 07 Jun 2017 13:00:31 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:4156 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1dIeJq-0001MJ-Lq; Wed, 07 Jun 2017 13:00:31 -0400 Date: Wed, 07 Jun 2017 20:00:25 +0300 Message-Id: <83ink791hy.fsf@gnu.org> From: Eli Zaretskii In-reply-to: <87wp8nbxbj.fsf@gmail.com> (message from Thierry Volpiatto on Wed, 07 Jun 2017 18:02:24 +0200) References: <87poegnnyn.fsf@gmail.com> <83mv9j95in.fsf@gnu.org> <87wp8nbxbj.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) > From: Thierry Volpiatto > Cc: 27272@debbugs.gnu.org > Date: Wed, 07 Jun 2017 18:02:24 +0200 > > > Could you perhaps provide some more explanations for what problem you > > are trying to solve and how? > > (cl-defun foo (prompt lst &key a b c)) > > (foo "prompt: " bar :b 2) > > Try to move your cursor on the different args with and without patch applied. Could you please tell it in English? From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Thierry Volpiatto Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 08 Jun 2017 08:18:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Eli Zaretskii Cc: 27272@debbugs.gnu.org Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149690986920626 (code B ref 27272); Thu, 08 Jun 2017 08:18:02 +0000 Received: (at 27272) by debbugs.gnu.org; 8 Jun 2017 08:17:49 +0000 Received: from localhost ([127.0.0.1]:34071 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIsdY-0005Mc-OA for submit@debbugs.gnu.org; Thu, 08 Jun 2017 04:17:48 -0400 Received: from mail-wm0-f45.google.com ([74.125.82.45]:35434) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIsdW-0005MP-OF for 27272@debbugs.gnu.org; Thu, 08 Jun 2017 04:17:47 -0400 Received: by mail-wm0-f45.google.com with SMTP id x70so72206491wme.0 for <27272@debbugs.gnu.org>; Thu, 08 Jun 2017 01:17:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:user-agent:from:to:cc:subject:in-reply-to:date :message-id:mime-version; bh=96xxyRP9+ZWIo/Oe3hpec33dBQ2YMCAh2oBr4sRx+uk=; b=bwPNyis9avFpFmRcaRjFGvrR3v76nKbpPtgtCp+iS/PLkplTZgieRLCC5F4WrmP8AT Py5+HihiXwO7o/Sm74jxJK/jLjwMWUPJ+vuGRMMYzPy7Vx0iojR6xtr7fkztCSbDiVsl n9XrhILcvUIVZe/i1q3Qj9yWxgxZdsBw/OAZ6MylNEIu/WJ0tr1QNpB+b+k50H6Y5ESu UeeoYwhLBiM3FBFLU1TQ1rboHKq5FTdwcp22Yu/r4DVA8vDs1NBmNw6M7GfDoeeMEfIB nYunRcdFPzHut3h7X1++6ZNqEFSOup8D6bo/pqhEeQLpZZjM3uXTSCO/M6e4ACXqBL3h oa9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version; bh=96xxyRP9+ZWIo/Oe3hpec33dBQ2YMCAh2oBr4sRx+uk=; b=oi50QomNGc9B6d9aKDwq7jmNiqQzkbaVnNnLv5cYiO2AJ1NyBoMv2F/YOE8EFFtZjk JPLWbnYT5xD3EvTCFaH+6RM8N1glyEjbIjW7c//GXYY4t6i/VP0zfSTJqrmVSseEYwtn 7pUaowonMcZhp3dxm95Cys048r7h93EYofn0hy3+dog5Jwavvg8fUt0Qvi1Zo+7BhXWi Zrf45Wri+9rtCJt6TpX+2gHP+nnqFPTpFYP2dd92j70G806VgqwZSzG5q8+ThLBUHBT+ p+MnpIWoct2MRuBMxSg20DeLurQ5qFUwz13viaaV+yJbJibAtGuNO7CqYNHEvG+/PZ0U iHow== X-Gm-Message-State: AODbwcAO8u5vq1lZc3cKz6IpCLK1h7dgTTIH2YsFDZY5k6EOkJawcuxO rMjCesnFYvL+HtsNPfw= X-Received: by 10.28.197.129 with SMTP id v123mr2329218wmf.101.1496909860821; Thu, 08 Jun 2017 01:17:40 -0700 (PDT) Received: from dell-14z ([179.43.169.163]) by smtp.gmail.com with ESMTPSA id e21sm5987318wma.24.2017.06.08.01.17.38 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Thu, 08 Jun 2017 01:17:39 -0700 (PDT) References: <87poegnnyn.fsf@gmail.com> <83mv9j95in.fsf@gnu.org> <87wp8nbxbj.fsf@gmail.com> <83ink791hy.fsf@gnu.org> <87shjbegwy.fsf@gmail.com> <83fufb8avt.fsf@gnu.org> User-agent: mu4e 0.9.19; emacs 24.5.1 From: Thierry Volpiatto In-reply-to: <83fufb8avt.fsf@gnu.org> Date: Thu, 08 Jun 2017 10:17:36 +0200 Message-ID: <87efuuki5b.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Eli Zaretskii writes: >> From: Thierry Volpiatto >> Date: Wed, 07 Jun 2017 21:28:29 +0200 >> >> >> Try to move your cursor on the different args with and without patch applied. >> > >> > Could you please tell it in English? >> >> No I can't sorry. > > Then I don't see how I can approve your patch. Maybe you can ask > someone else to explain the issue. Perhaps I have also other things to do than loosing my time on this mailing list. So ignore the patch and consider this bugreport: Eldoc is highlighting wrongly positional arguments when they are mixed with keyword arguments. Then if you feel it is a bug, fix it (or not) otherwise close this bugreport. Thanks. BTW I am the original author of the code I was trying to patch, nevermind. -- Thierry Gpg Key fingerprint = 6CEC 7081 AB33 E251 4AB8 5FC2 28D1 7F53 59F2 9997 From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 08 Jun 2017 15:05:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.14969342821316 (code B ref 27272); Thu, 08 Jun 2017 15:05:02 +0000 Received: (at 27272) by debbugs.gnu.org; 8 Jun 2017 15:04:42 +0000 Received: from localhost ([127.0.0.1]:35250 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIyzJ-0000LA-WC for submit@debbugs.gnu.org; Thu, 08 Jun 2017 11:04:42 -0400 Received: from eggs.gnu.org ([208.118.235.92]:53362) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dIyzI-0000Kx-Ac for 27272@debbugs.gnu.org; Thu, 08 Jun 2017 11:04:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dIyzA-0000iC-3u for 27272@debbugs.gnu.org; Thu, 08 Jun 2017 11:04:35 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAYES_40,T_RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:56277) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dIyzA-0000hz-15; Thu, 08 Jun 2017 11:04:32 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1241 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1dIyz9-0001rx-A3; Thu, 08 Jun 2017 11:04:31 -0400 Date: Thu, 08 Jun 2017 18:04:29 +0300 Message-Id: <838tl28qrm.fsf@gnu.org> From: Eli Zaretskii In-reply-to: <87efuuki5b.fsf@gmail.com> (message from Thierry Volpiatto on Thu, 08 Jun 2017 10:17:36 +0200) References: <87poegnnyn.fsf@gmail.com> <83mv9j95in.fsf@gnu.org> <87wp8nbxbj.fsf@gmail.com> <83ink791hy.fsf@gnu.org> <87shjbegwy.fsf@gmail.com> <83fufb8avt.fsf@gnu.org> <87efuuki5b.fsf@gmail.com> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) > From: Thierry Volpiatto > Cc: 27272@debbugs.gnu.org > Date: Thu, 08 Jun 2017 10:17:36 +0200 > > >> >> Try to move your cursor on the different args with and without patch applied. > >> > > >> > Could you please tell it in English? > >> > >> No I can't sorry. > > > > Then I don't see how I can approve your patch. Maybe you can ask > > someone else to explain the issue. > > Perhaps I have also other things to do than loosing my time on this > mailing list. > > So ignore the patch and consider this bugreport: > > Eldoc is highlighting wrongly positional arguments when they are mixed > with keyword arguments. > > Then if you feel it is a bug, fix it (or not) otherwise close this > bugreport. > > Thanks. > > BTW I am the original author of the code I was trying to patch, nevermind. Oh, my. I feel there's some gigantic misunderstanding here, most probably due to my wording. Sorry about that. Let me try again. Could you please elaborate on the incorrect behavior in the example you provided? You wrote: > (cl-defun foo (prompt lst &key a b c)) > > (foo "prompt: " bar :b 2) > > Try to move your cursor on the different args with and without patch applied. Can you please point out which positional arguments are wrongly highlighted, and in which one of these two lines? From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Johan =?UTF-8?Q?Bockg=C3=A5rd?= Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 10 Jun 2017 16:16:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149711133911693 (code B ref 27272); Sat, 10 Jun 2017 16:16:01 +0000 Received: (at 27272) by debbugs.gnu.org; 10 Jun 2017 16:15:39 +0000 Received: from localhost ([127.0.0.1]:39098 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dJj34-00032X-PY for submit@debbugs.gnu.org; Sat, 10 Jun 2017 12:15:38 -0400 Received: from manu26.manufrog.com ([98.142.98.2]:56266) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dJj33-00032K-7a for 27272@debbugs.gnu.org; Sat, 10 Jun 2017 12:15:37 -0400 Received: from c-5306e555.04-211-6c6b701.cust.bredbandsbolaget.se ([85.229.6.83]:40710 helo=muon.localdomain) by manu26.manufrog.com with esmtpa (Exim 4.89) (envelope-from ) id 1dJj2w-003FlO-Lz; Sat, 10 Jun 2017 18:15:30 +0200 Received: by muon.localdomain (Postfix, from userid 1000) id E8D424841D3; Sat, 10 Jun 2017 18:15:28 +0200 (CEST) From: Johan =?UTF-8?Q?Bockg=C3=A5rd?= References: <87poegnnyn.fsf@gmail.com> Date: Sat, 10 Jun 2017 18:15:28 +0200 In-Reply-To: <87poegnnyn.fsf@gmail.com> (Thierry Volpiatto's message of "Wed, 07 Jun 2017 11:31:28 +0200") Message-ID: <87tw3ng6ov.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - manu26.manufrog.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - gnu.org X-Get-Message-Sender-Via: manu26.manufrog.com: authenticated_id: noreply@tryserumgardar.se X-Authenticated-Sender: manu26.manufrog.com: noreply@tryserumgardar.se X-Source: X-Source-Args: X-Source-Dir: X-Spam-Score: 1.0 (+) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 1.0 (+) Thierry Volpiatto writes: > Fix eldoc with positional arg among keyword args. > > * lisp/progmodes/elisp-mode.el (elisp--highlight-function-argument): > Switch to indexed arg searching when no keyword found behind arg. This code is wrong both with and without your fix. All mandatory and optional arguments should be used *before* keywords are matched. Given this definition of `foo', (cl-defun foo (x &key a b c) (list x a b c)) `:b' in the following call specifies the positional argument `x', not the keyword argument `b': (foo :b :a 1) => (:b 1 nil nil) From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Thierry Volpiatto Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 11 Jun 2017 08:09:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Johan =?UTF-8?Q?Bockg=C3=A5rd?= Cc: 27272@debbugs.gnu.org Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149716852218678 (code B ref 27272); Sun, 11 Jun 2017 08:09:02 +0000 Received: (at 27272) by debbugs.gnu.org; 11 Jun 2017 08:08:42 +0000 Received: from localhost ([127.0.0.1]:39708 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dJxvN-0004rC-N0 for submit@debbugs.gnu.org; Sun, 11 Jun 2017 04:08:41 -0400 Received: from mail-wr0-f177.google.com ([209.85.128.177]:33099) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dJxvM-0004qz-7Y for 27272@debbugs.gnu.org; Sun, 11 Jun 2017 04:08:40 -0400 Received: by mail-wr0-f177.google.com with SMTP id v104so67592428wrb.0 for <27272@debbugs.gnu.org>; Sun, 11 Jun 2017 01:08:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:user-agent:from:to:cc:subject:in-reply-to:date :message-id:mime-version:content-transfer-encoding; bh=6f4kAY+KUx58bVSfUvgTP5F9HcgjVJSPAqa/VCIoSCA=; b=hvsoU7woLwZpu+nYBO6c+rEdSJMMbQ12s3XXAk1EafJep7NllBAvFokZKDOLvdAfpq w6MSByZQrqC2jXFr1zBaJ620RkoaBr17csHCJ16xXCls8PHLIKPo/z7hU/paI/06EMzv WRQO7g9jlBD1m2fqvKikcHX9zcXC+pPanwqQp2D6dnZEQMXwXSJAoepyc9uC8RZNK3Bc Fr2qUmF2CiFCz5n2PMsKNpV3DPf0BkFVfey7111Woaj7bKrd7Itl0yYj6Lsyb7tixIyE U9fCUxLzXTQig6vMKxgeEAJEZFsDYuWSTjzVyjtnGyZd9RXbFjv2gtVhsbEx4ALbBkHz fY3g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version:content-transfer-encoding; bh=6f4kAY+KUx58bVSfUvgTP5F9HcgjVJSPAqa/VCIoSCA=; b=cvAZ9kUNMattSabEJpBtwNchxGEQFyotHeeZ2CThpl4P6YJuBJUmOR0ScXMzn1N01w DtIfa82WoveMsQTpU7Q/AkVV/vxldqliOQmVGoMga1W9oSNWpzjzgynYJ2GPQi9EQgB2 xPpWBUB2oOT0pJXQTqcDZo9+t0vixQHGg5aG6IJNqh/v804XQRxvlTxyrrO5egbhWEXH /rmB67ZmdfQsE7p102JpP+JNiNOpaO5oDprLfZuLBjG08SXfrjaoQWtHRw3wEtkXUcCo oIJxuEN/A8VU2mp4FwdpA8XKfcaQ+vrAAOQ6C5GtpJ3HqqzVK2cUciPucdcsSpx6CnhP 6s2g== X-Gm-Message-State: AODbwcCgRd3B2IKCs4xgIGPZdkxe0X14uRm+1hZCuOau57Cvgir+syYd HJ4KIfsY3bj25BOI X-Received: by 10.223.139.158 with SMTP id o30mr3684332wra.178.1497168514022; Sun, 11 Jun 2017 01:08:34 -0700 (PDT) Received: from dell-14z ([179.43.176.99]) by smtp.gmail.com with ESMTPSA id e24sm11685607wre.54.2017.06.11.01.08.32 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Sun, 11 Jun 2017 01:08:33 -0700 (PDT) References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> User-agent: mu4e 0.9.19; emacs 24.5.1 From: Thierry Volpiatto In-reply-to: <87tw3ng6ov.fsf@gnu.org> Date: Sun, 11 Jun 2017 10:08:29 +0200 Message-ID: <878tkzc5fm.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -1.0 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Johan Bockgård writes: > Thierry Volpiatto writes: > >> Fix eldoc with positional arg among keyword args. >> >> * lisp/progmodes/elisp-mode.el (elisp--highlight-function-argument): >> Switch to indexed arg searching when no keyword found behind arg. > > This code is wrong both with and without your fix. All mandatory and > optional arguments should be used *before* keywords are matched. > > Given this definition of `foo', > > (cl-defun foo (x &key a b c) > (list x a b c)) > > `:b' in the following call specifies the positional argument `x', not > the keyword argument `b': > > (foo :b :a 1) => (:b 1 nil nil) Fixed as well. Thanks. -- Thierry Gpg Key fingerprint = 6CEC 7081 AB33 E251 4AB8 5FC2 28D1 7F53 59F2 9997 From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: npostavs@users.sourceforge.net Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 15 Jun 2017 00:05:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org, Johan =?UTF-8?Q?Bockg=C3=A5rd?= Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149748506610792 (code B ref 27272); Thu, 15 Jun 2017 00:05:01 +0000 Received: (at 27272) by debbugs.gnu.org; 15 Jun 2017 00:04:26 +0000 Received: from localhost ([127.0.0.1]:48143 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dLIGw-0002nz-Gi for submit@debbugs.gnu.org; Wed, 14 Jun 2017 20:04:26 -0400 Received: from mail-io0-f194.google.com ([209.85.223.194]:32855) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dLIGv-0002nm-7c for 27272@debbugs.gnu.org; Wed, 14 Jun 2017 20:04:25 -0400 Received: by mail-io0-f194.google.com with SMTP id j200so322472ioe.0 for <27272@debbugs.gnu.org>; Wed, 14 Jun 2017 17:04:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=GtMC3d/PkfrwI4/kdCtJT6XKIgXXqFk26zADLccFh7M=; b=ZGvjQylS7i8ePZ3CKrNAGLhM+WCrI00PStyjl5MROdWMEl6+X4WXe3jDEJcBDs7xhA O/AFp3YLTNHIlh4XEr73+b6QTgjT2czfrz67L3BnV76zv6KIyoeDhDQlB6N1/XYQQXW2 riYDPm44encbN/RHke/XTDGS9EK33+glMQXE305z5QSjKg2eNSvt/dpdu8IayXkYyTI4 ma8k1nFWZ/4PMJgBizwyrh3DYza0MiFy3bpWFQrEQmCmE4JEuFewT2Kro0vmEf0rJc5D oosfCoSEMWzfSbEYUijmPgCXMSAuK1hoFK2NG9MaN3du64IRIgl0AZA5IDgRNjvt5gMf S6LQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version :content-transfer-encoding; bh=GtMC3d/PkfrwI4/kdCtJT6XKIgXXqFk26zADLccFh7M=; b=nfO4+U5SXXpI/trqi9X9dPYFjV7NnuTSBkq+wPuKGSaSABcx5RAbJS9aQfyNTRPV/B 6md5kOiDMIYLJqD0qMT78/a0E+H6Wypq2iZPM8aBYIjuMYqHHP2B8hRLaXdtiW9ztSJP b1UJRt6s49slow8cfjh4FzxHLTyEFYkkAafWdJkhfXC0V70OxAjJ/+vZrZihqnLLlewG m4mr5MqMTguQxPjxrFfqe3jtSIj1idzSzbpZthS+VxPlEA9M3g2XW3W6Mw/2f6j+CCld svlVeq69BAg+1R+Dv6CWkN8Hokr3+4YMZba0Kl9yNFUMelS1aYamABmVdV66Drr/oDzs mYKg== X-Gm-Message-State: AKS2vOxZ5Xw4wA+oFo4dA6mqC+oF9tUU0F13r0iYsL8Rvvwccn4QzJUz TBxZePq7DqaOaDVr X-Received: by 10.107.11.77 with SMTP id v74mr2802966ioi.39.1497485059664; Wed, 14 Jun 2017 17:04:19 -0700 (PDT) Received: from zony ([45.2.7.65]) by smtp.googlemail.com with ESMTPSA id 97sm741181iot.25.2017.06.14.17.04.18 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 14 Jun 2017 17:04:18 -0700 (PDT) From: npostavs@users.sourceforge.net References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> <878tkzc5fm.fsf@gmail.com> Date: Wed, 14 Jun 2017 20:05:56 -0400 In-Reply-To: <878tkzc5fm.fsf@gmail.com> (Thierry Volpiatto's message of "Sun, 11 Jun 2017 10:08:29 +0200") Message-ID: <87wp8eru6z.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -1.0 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) Thierry Volpiatto writes: > Johan Bockg=C3=A5rd writes: > >> Thierry Volpiatto writes: >> >>> Fix eldoc with positional arg among keyword args. >>> >>> * lisp/progmodes/elisp-mode.el (elisp--highlight-function-argument): >>> Switch to indexed arg searching when no keyword found behind arg. >> >> This code is wrong both with and without your fix. All mandatory and >> optional arguments should be used *before* keywords are matched. >> >> Given this definition of `foo', >> >> (cl-defun foo (x &key a b c) >> (list x a b c)) >> >> `:b' in the following call specifies the positional argument `x', not >> the keyword argument `b': >> >> (foo :b :a 1) =3D> (:b 1 nil nil) > > Fixed as well. Do you mean you have an updated patch that fixes this as well (which you seem to have forgotten to post)? From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Thierry Volpiatto Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 15 Jun 2017 03:27:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: npostavs@users.sourceforge.net Cc: 27272@debbugs.gnu.org, Johan =?UTF-8?Q?Bockg=C3=A5rd?= Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149749717610790 (code B ref 27272); Thu, 15 Jun 2017 03:27:01 +0000 Received: (at 27272) by debbugs.gnu.org; 15 Jun 2017 03:26:16 +0000 Received: from localhost ([127.0.0.1]:48390 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dLLQG-0002ny-Im for submit@debbugs.gnu.org; Wed, 14 Jun 2017 23:26:16 -0400 Received: from mail-wr0-f195.google.com ([209.85.128.195]:35347) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dLLQF-0002nj-5v for 27272@debbugs.gnu.org; Wed, 14 Jun 2017 23:26:15 -0400 Received: by mail-wr0-f195.google.com with SMTP id z45so481565wrb.2 for <27272@debbugs.gnu.org>; Wed, 14 Jun 2017 20:26:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:user-agent:from:to:cc:subject:in-reply-to:date :message-id:mime-version; bh=FzPJ+lA9KO4EZvf4xgFb8I1vrGpq512M1yFbShSSpBE=; b=akuJh32FFQ85FN40+LnuXwXMK9kDrpesUUiqQudMGPNGEKDvJ2Mtfq/5d9RLAA6gLl VDrIV2bqI2PJXBt9rlBxUxzOEASKysF2Ev/7OFFesGDFM7JdFBDsUGnfLnNOmNFRonWB H4UkMbC9/+W9iK9cEgAyQQt83c7GKkE2VpK/9IMOe+1Tbcgsq4cPHAF1JSJiPknJ8Mqc Is5XWebr7RFOuW62MF6aUD8nlGLGdp+wpatSaPvOAxYU3eQKDhb1v6a2HDg92SOQ4oAU VkSYhj81WETKoB5IJMb5Kr/EXyy4P30NJ6RSJTDcLQ/zo/9V4F0mxCx85SRXzqHGwr9U x9ew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version; bh=FzPJ+lA9KO4EZvf4xgFb8I1vrGpq512M1yFbShSSpBE=; b=TaLGUgFuAgi0VLdDm7BdSEjnl/qHU7LJqBXcDl8Lo0Bb6GaNBtkTe8hF3Wp60mmx5/ l4aeUcUSKL5pTzl9ib6rF1Drk36ra9v/GAT6xNjE+uH84lTj6reVk1a5Ke74IgZXRV1h /Lh4o1IngAUHZUx8gcSw40l127JztN0MeZL65oESpESbuzpVfmF7uAufBIORJBe7WgRi sXLQpY0EL8cJ8fikze2Y7/nM3nPaXnktH9Fw/LA3zFCMqorl+z4RxBzs9rU8aXtp8hID WHx8VgaYfjpy61Kw9Ko6uhvwOQ7RWUsm54vc4mO5xo3gN/3uUm5MdbvsRZug+IWKkp7V G5ZQ== X-Gm-Message-State: AKS2vOzn/mvBeqENe3+B35AnrnQaUrTwBKJIcQkjt+X4S72c5X8DCQre FBOdsrYzrc3YYvAB X-Received: by 10.28.151.193 with SMTP id z184mr1952164wmd.2.1497497169078; Wed, 14 Jun 2017 20:26:09 -0700 (PDT) Received: from dell-14z ([179.43.176.3]) by smtp.gmail.com with ESMTPSA id e131sm1483664wmd.28.2017.06.14.20.26.06 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Wed, 14 Jun 2017 20:26:07 -0700 (PDT) References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> <878tkzc5fm.fsf@gmail.com> <87wp8eru6z.fsf@users.sourceforge.net> User-agent: mu4e 0.9.19; emacs 24.5.1 From: Thierry Volpiatto In-reply-to: <87wp8eru6z.fsf@users.sourceforge.net> Date: Thu, 15 Jun 2017 05:26:05 +0200 Message-ID: <87lgound82.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -1.0 (-) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) npostavs@users.sourceforge.net writes: > Do you mean you have an updated patch that fixes this as well (which you > seem to have forgotten to post)? It is here. diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el index b3f452ca5b9..b2b3015581d 100644 --- a/lisp/progmodes/elisp-mode.el +++ b/lisp/progmodes/elisp-mode.el @@ -1400,7 +1400,8 @@ In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'." (args-lst (mapcar (lambda (x) (replace-regexp-in-string "\\`[(]\\|[)]\\'" "" x)) - (split-string args)))) + (split-string args))) + (start-key-pos (cl-position "&key" args-lst :test 'equal))) ;; Find the current argument in the argument string. We need to ;; handle `&rest' and informal `...' properly. ;; @@ -1412,11 +1413,12 @@ In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'." ;; When `&key' is used finding position based on `index' ;; would be wrong, so find the arg at point and determine ;; position in ARGS based on this current arg. - (when (string-match "&key" args) + (when (and (string-match "&key" args) + (> index start-key-pos)) (let* (case-fold-search key-have-value (sym-name (symbol-name sym)) - (cur-w (current-word)) + (cur-w (current-word t)) (args-lst-ak (cdr (member "&key" args-lst))) (limit (save-excursion (when (re-search-backward sym-name nil t) @@ -1425,7 +1427,7 @@ In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'." (substring cur-w 1) (save-excursion (let (split) - (when (re-search-backward ":\\([^()\n]*\\)" limit t) + (when (re-search-backward ":\\([^ ()\n]*\\)" limit t) (setq split (split-string (match-string 1) " " t)) (prog1 (car split) (when (cdr split) @@ -1437,7 +1439,7 @@ In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'." args-lst-ak (not (member (upcase cur-a) args-lst-ak)) (upcase (car (last args-lst-ak)))))) - (unless (string= cur-w sym-name) + (unless (or (null cur-w) (string= cur-w sym-name)) ;; The last keyword have already a value ;; i.e :foo a b and cursor is at b. ;; If signature have also `&rest' -- Thierry Gpg Key fingerprint = 6CEC 7081 AB33 E251 4AB8 5FC2 28D1 7F53 59F2 9997 From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: npostavs@users.sourceforge.net Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 30 Jun 2017 04:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org, Johan =?UTF-8?Q?Bockg=C3=A5rd?= Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.14987952161218 (code B ref 27272); Fri, 30 Jun 2017 04:01:02 +0000 Received: (at 27272) by debbugs.gnu.org; 30 Jun 2017 04:00:16 +0000 Received: from localhost ([127.0.0.1]:45324 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dQn6N-0000Ja-OU for submit@debbugs.gnu.org; Fri, 30 Jun 2017 00:00:15 -0400 Received: from mail-io0-f172.google.com ([209.85.223.172]:34503) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dQn6L-0000JL-Qd for 27272@debbugs.gnu.org; Fri, 30 Jun 2017 00:00:14 -0400 Received: by mail-io0-f172.google.com with SMTP id r36so17921296ioi.1 for <27272@debbugs.gnu.org>; Thu, 29 Jun 2017 21:00:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version:content-transfer-encoding; bh=BLsjhqibY9W3xioKbA0NbA7WTlrGDF0cLAcJ0BtnoKM=; b=Hep9YGN8EpfB75756xFAZiVNEf+3UkH4orX9eLu3Se9Wpng1a8ZGu7xeokfe51LpF2 lWs+hSDBOt5KQAq5QEuIPy88Ry/FYE+GnziAF+Ui2XqA/YUfSqOHpAk6SvQyPrtI1Q+/ U0HsM+Zn63kgS9eG9zVcosi1wO+zWT5Lp13e05wtkbWqIHy7Wt1gay5bbpJoSBYYPYZj PZOTejwMcOBExLBCwYoPXgkso1lb8Br+UmYBzH+dG3ml6FBb/R8JVbjfxLQ7zaToB9Cb EyV4HT7/S8rBd2F4Rj7LiQeLk1S+t8y2Z78O6ymeqElnZ9edwA8rqP+W4alhDCf1Diuz MDJw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version :content-transfer-encoding; bh=BLsjhqibY9W3xioKbA0NbA7WTlrGDF0cLAcJ0BtnoKM=; b=hzjKm6qfCmR8ThNhOauJHY87WkPiJ8vDdJtEECjfOkRHy7zdzCJqfUV0rviU6+ZjS6 L9spS8LsIWa63fpLNkRjQx3m02iLEeF5K+ddR/QhMjziHG2+4HGoY8gtLK4Tz7M2UZkz WmibDYZsggtKhCEN1egOmPXMZBTJC0KgIBVBRyBQ1OeRLQmD4G073Rhxq6GKCo9SJof0 PF7Oc7ocnh/NgnK0fei0FyzZTHw0xFCA7eQ3vI0rAN05TupWTSdccrm8wTXf+JOnghzZ gozF1i8iIHVVX7J9S8FvpJ07zgEaqqzabb6Uqp4bv4XAHOMExYuishyf+OKGGXkCzlp/ 8v4w== X-Gm-Message-State: AKS2vOws+7kIcuk5+4QwtNAEs9r9zn8itQgbDgPNY0PjUoRD/Uk4V/jg hdA9N5WRqZnFaA== X-Received: by 10.107.55.68 with SMTP id e65mr18488687ioa.221.1498795207910; Thu, 29 Jun 2017 21:00:07 -0700 (PDT) Received: from zony ([45.2.7.65]) by smtp.googlemail.com with ESMTPSA id t18sm5518356ita.25.2017.06.29.21.00.05 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Thu, 29 Jun 2017 21:00:06 -0700 (PDT) From: npostavs@users.sourceforge.net References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> <878tkzc5fm.fsf@gmail.com> <87wp8eru6z.fsf@users.sourceforge.net> <87lgound82.fsf@gmail.com> Date: Fri, 30 Jun 2017 00:01:43 -0400 In-Reply-To: <87lgound82.fsf@gmail.com> (Thierry Volpiatto's message of "Thu, 15 Jun 2017 05:26:05 +0200") Message-ID: <87o9t6ktso.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam-Score: -2.1 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.1 (--) Thierry Volpiatto writes: > npostavs@users.sourceforge.net writes: > >> Do you mean you have an updated patch that fixes this as well (which you >> seem to have forgotten to post)? > > It is here. I get a compile warning In elisp--highlight-function-argument: ../../emacs-master/lisp/progmodes/elisp-mode.el:1404:44:Warning: reference = to free variable =E2=80=98args-lst=E2=80=99 and then at run-time eldoc is non-functional, it just prints eldoc error: (void-variable args-lst) From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Thierry Volpiatto Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Fri, 30 Jun 2017 06:38:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: npostavs@users.sourceforge.net Cc: 27272@debbugs.gnu.org, Johan =?UTF-8?Q?Bockg=C3=A5rd?= Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.149880462422792 (code B ref 27272); Fri, 30 Jun 2017 06:38:01 +0000 Received: (at 27272) by debbugs.gnu.org; 30 Jun 2017 06:37:04 +0000 Received: from localhost ([127.0.0.1]:45379 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dQpY7-0005vX-RE for submit@debbugs.gnu.org; Fri, 30 Jun 2017 02:37:04 -0400 Received: from mail-wm0-f68.google.com ([74.125.82.68]:34667) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dQpY6-0005v2-Gj for 27272@debbugs.gnu.org; Fri, 30 Jun 2017 02:37:02 -0400 Received: by mail-wm0-f68.google.com with SMTP id p204so6147454wmg.1 for <27272@debbugs.gnu.org>; Thu, 29 Jun 2017 23:37:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=references:user-agent:from:to:cc:subject:in-reply-to:date :message-id:mime-version:content-transfer-encoding; bh=cMb9RNqkmWX9bj+JBzEm9RSVAgofYsKZAMfD2rKvzfM=; b=IwJlj288raE3zKyqFXSjTfXTg4+/TLOxXfNhfI1Hyz5m/Br0eGChHe4kgiYZ+WGW8f YPwvkjGOIh9065QBktUPSRgLhLC8jMxWB5wpoImYqJVBCzR1lhfoAlY/f0lTPemkbKLV U9VzbCqWrMba6XdNUsN8qUoK3GWKzxwku/bE5u6xHvRALw0vvmmCcMwU6K6XXPMQ0/R8 34BE0mYMFK13jKfQXnliw8CGnIoavRLqSIyJ0AZgVEQnYiryzzr+pICY3yfGyD12GiWY HenhD/FE8ATkV1pigVF5KHZ9P3JeD+XsQ36IV047KeYfFjpq0ucu8QLVIe/8qI3mr7I3 dA9g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:references:user-agent:from:to:cc:subject :in-reply-to:date:message-id:mime-version:content-transfer-encoding; bh=cMb9RNqkmWX9bj+JBzEm9RSVAgofYsKZAMfD2rKvzfM=; b=odQpc0Uft9Lk1ldrCuHVaSU0OrF5PYnBuJMyFNyHRHBOPRj8B+tVxlxx8wJHUSTIpH 37tsy3esCcdL+MZMM9MYMUw6DBbtwATgvXcsDJNnt8KLl55zUVkMZO6cLHCzfc/bXvFX KtzYjcEYVgOXNxVKPZ1ELhPasVxZyCV5xLGXVvqt0V+sB5YvKt/xSlPT6lRuRjxUonaZ WWxGOBPdEGesbsVSL87X93LXzdAtZtmMQ6D/GrcIDrzQsE71H7s7JOPqom/EtXwXSZDR 63S22iKGYGZKelaEw/XC3+/ULdV1JnPocpPJazbb+VuZy5jq5OqdD8t69wrInkMDnleJ emnA== X-Gm-Message-State: AKS2vOyV4XDAkZi+cKaGfYHvbITALTVh2LJgli6Ea6G/rLK7P5oTg66W lcEsM+y880cWlg== X-Received: by 10.28.6.77 with SMTP id 74mr4263140wmg.96.1498804616703; Thu, 29 Jun 2017 23:36:56 -0700 (PDT) Received: from dell-14z ([179.43.163.98]) by smtp.gmail.com with ESMTPSA id 2sm4585705wrn.24.2017.06.29.23.36.54 (version=TLS1_2 cipher=AES128-SHA bits=128/128); Thu, 29 Jun 2017 23:36:55 -0700 (PDT) References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> <878tkzc5fm.fsf@gmail.com> <87wp8eru6z.fsf@users.sourceforge.net> <87lgound82.fsf@gmail.com> <87o9t6ktso.fsf@users.sourceforge.net> User-agent: mu4e 0.9.19; emacs 24.5.1 From: Thierry Volpiatto In-reply-to: <87o9t6ktso.fsf@users.sourceforge.net> Date: Fri, 30 Jun 2017 08:36:52 +0200 Message-ID: <87a84qx9q3.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.5 (/) npostavs@users.sourceforge.net writes: > Thierry Volpiatto writes: > >> npostavs@users.sourceforge.net writes: >> >>> Do you mean you have an updated patch that fixes this as well (which you >>> seem to have forgotten to post)? >> >> It is here. > > I get a compile warning > > In elisp--highlight-function-argument: > ../../emacs-master/lisp/progmodes/elisp-mode.el:1404:44:Warning: reference to > free variable ‘args-lst’ > > and then at run-time eldoc is non-functional, it just prints > > eldoc error: (void-variable args-lst) This patch is an adaptation of what I use in my .emacs.el, originally the patch was correct, I have then deleted it (because the patch was refused) and then created it again on your request, forgetting to merge one line; Use let* instead of let. Don't expect me to send another patch for such trivial change and more generally to collaborate anymore on any emacs bugs. -- Thierry Gpg Key fingerprint = 6CEC 7081 AB33 E251 4AB8 5FC2 28D1 7F53 59F2 9997 From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: Noam Postavsky Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 01 Jul 2017 21:01:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org, Johan =?UTF-8?Q?Bockg=C3=A5rd?= Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.14989428287929 (code B ref 27272); Sat, 01 Jul 2017 21:01:02 +0000 Received: (at 27272) by debbugs.gnu.org; 1 Jul 2017 21:00:28 +0000 Received: from localhost ([127.0.0.1]:48019 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dRPVE-00023Z-3X for submit@debbugs.gnu.org; Sat, 01 Jul 2017 17:00:28 -0400 Received: from mail-oi0-f43.google.com ([209.85.218.43]:35500) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dRPVC-0001wq-Pm for 27272@debbugs.gnu.org; Sat, 01 Jul 2017 17:00:27 -0400 Received: by mail-oi0-f43.google.com with SMTP id 191so33609547oii.2 for <27272@debbugs.gnu.org>; Sat, 01 Jul 2017 14:00:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=4PW8vycNJGMZlVfXIpzjAu4KYXJKKsPbZIWStadEOGA=; b=FxuHa3QCIm1wx8TKhCxxM9JaH1H4sN39bG5yGFNYpNMXr3HcYWkjSRB4Mz6ad7X+sC JVH2DHOg77/I9m6eVj7VZ2DuOy4sA+fpmZkIlEhcx70+p7ev35eZy9/ZNhSjGexIrt31 70DZhKQJg72KThQsJYNe12LOBXGYQ1G39wjWeXl0Yr33m8PliyKa8ecLUWJSSDNp9qZY VlWuUkUblM9zEtAsO2SKLkUUfgOLXOCz9adYyfzebCJMSVQkrVxsy2XfGqyDckQOHzLb SuJe12BdYIf9KRYGQMGrGXscPLi6L7mLqFyLv27P8BHi7X/qhNaOdCV8zrtBkZJrsPb5 ktGw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=4PW8vycNJGMZlVfXIpzjAu4KYXJKKsPbZIWStadEOGA=; b=nn9zh6tZXCgu12ddJBBB+8qlbFmRu0tmHierWRktc0zpe03z560c5t4QP88+xT9IZU MWIh1bOTCZLU4SL+A0QTQp67cx/GFZbhh/X9R/+rkhuntIDKZuK/GzjV7ltgp6iezI54 R0Zn68apg5twE5b3YmKWi5jzaiFJArPuhWWHFKGpQETTyB+IBgaomGwiBkM2hmLzJKDj t5tTehFdcztnhZDQMuuXuJ7rVqFE/Jg7D2Kp3PFoVlIln693TNTwkZLu1WlBylqvz6oF OJqUVhVvRHilC/rhSEBi8NwYnGQ5RPEfMmnBGbL9eMcDWQe6tLlprjra9UbEfZ1Sr8n/ Dh1A== X-Gm-Message-State: AKS2vOxGScgT0HmpuCp3kjepdZ9+I6UFQmLwg1nAAGGTNnZr5iOeiL5z aJb3AHfL9flcN8Qr1g1R3kUBz3ffpA== X-Received: by 10.202.168.130 with SMTP id r124mr16581359oie.91.1498942820032; Sat, 01 Jul 2017 14:00:20 -0700 (PDT) MIME-Version: 1.0 Received: by 10.74.113.91 with HTTP; Sat, 1 Jul 2017 14:00:19 -0700 (PDT) In-Reply-To: <87a84qx9q3.fsf@gmail.com> References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> <878tkzc5fm.fsf@gmail.com> <87wp8eru6z.fsf@users.sourceforge.net> <87lgound82.fsf@gmail.com> <87o9t6ktso.fsf@users.sourceforge.net> <87a84qx9q3.fsf@gmail.com> From: Noam Postavsky Date: Sat, 1 Jul 2017 17:00:19 -0400 X-Google-Sender-Auth: Hw5sNMR0id5MWnjMatF1hxsJ53Y Message-ID: Content-Type: text/plain; charset="UTF-8" X-Spam-Score: -2.1 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.1 (--) On Fri, Jun 30, 2017 at 2:36 AM, Thierry Volpiatto wrote: > > This patch is an adaptation of what I use in my .emacs.el, originally > the patch was correct, I have then deleted it (because the patch was > refused) and then created it again on your request, forgetting to merge > one line; Use let* instead of let. Thanks, we will have to test the patch to make sure it works since it hasn't been tested in isolation then. > Don't expect me to send another patch for such trivial change and more > generally to collaborate anymore on any emacs bugs. Yes, I noticed throughout this thread you have been avoiding any effort beyond posting your patch but I don't understand why. Are you angry about something? From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: npostavs@users.sourceforge.net Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Thu, 20 Jul 2017 02:21:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org, Johan =?UTF-8?Q?Bockg=C3=A5rd?= Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.150051724028579 (code B ref 27272); Thu, 20 Jul 2017 02:21:02 +0000 Received: (at 27272) by debbugs.gnu.org; 20 Jul 2017 02:20:40 +0000 Received: from localhost ([127.0.0.1]:48379 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dY14w-0007Qq-Mn for submit@debbugs.gnu.org; Wed, 19 Jul 2017 22:20:39 -0400 Received: from mail-io0-f181.google.com ([209.85.223.181]:36315) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dY14u-0007Qd-60 for 27272@debbugs.gnu.org; Wed, 19 Jul 2017 22:20:36 -0400 Received: by mail-io0-f181.google.com with SMTP id q2so6865003ioe.3 for <27272@debbugs.gnu.org>; Wed, 19 Jul 2017 19:20:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=zUAGHmnok4pmZNqTruuYO2OeOvM+iJ2xRQVKVOAiekA=; b=JmPg+FgKPvVpBBl538jCenPMe/ifY0ZNblnVds/rxZzwl9jy6ZEJcr8rdL6yfdhNgL SQeNHG+hmYaSeTX4O3U9kt6vFuQmhmHH9gWnzKDtUH6DKt0wZN/TxqWeJWPXf04ASN9Z yKOArStxixpElUhc7WvxjUol9dJ02/jRo7mSrKVVa7euaLcPUqG6rTphbICH6TOwcKqP Lik1m/oZbk9Oo1gW0IEHaMEo3ldoIQM6kz3TwhZqv7J4kkiR8Njd05WNVuFbSW4TIaHQ H+UfJJ94JAhwYYAlNcEcitl2KBJ/Ca/4oS7urxOzEGAB1UVCF1k04AXDCjnssqmiRTQj bGSg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=zUAGHmnok4pmZNqTruuYO2OeOvM+iJ2xRQVKVOAiekA=; b=Lt3h7zyMaDd57yfTBAUjveY8gBZUlCNnF41h7XSnyilxs65/zghX/8JHa3bad3KoMr 8J8dvuiKmGOpeF9hyc3Jy+JjbT0NVAVq4fLgxquFhd8THpcsRigFYUzg1RP5qj/du/DY uE1FNZ1OT7IXuPVix3RRgOF077Vua7SiKRybpB0sfXW8PXWVa4yFMIXwvwV8SMon4d1i Un+qdDX8Zpx1tZJoc0x544oYIgl0YiLcM6XhnRSP80YacIA1twUKTI7DJKd6k2Zti+ob H/n7fEP3KjahLEstVu5CMdkqjPikTFyOiOS7piP/BtOBp7HQAkA6pPs8OMaWk+OxM5Ze YBpQ== X-Gm-Message-State: AIVw110VUk1ut+czpqJGWY+W5au/sgUE6h1Z5wKfUcOCeGTbic2pcoL3 e8sqbm9YdzflWg== X-Received: by 10.107.137.17 with SMTP id l17mr2068933iod.305.1500517230556; Wed, 19 Jul 2017 19:20:30 -0700 (PDT) Received: from zony ([45.2.7.65]) by smtp.googlemail.com with ESMTPSA id g198sm711469itb.3.2017.07.19.19.20.28 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 19 Jul 2017 19:20:29 -0700 (PDT) From: npostavs@users.sourceforge.net References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> <878tkzc5fm.fsf@gmail.com> <87wp8eru6z.fsf@users.sourceforge.net> <87lgound82.fsf@gmail.com> <87o9t6ktso.fsf@users.sourceforge.net> <87a84qx9q3.fsf@gmail.com> Date: Wed, 19 Jul 2017 22:22:04 -0400 In-Reply-To: (Noam Postavsky's message of "Sat, 1 Jul 2017 17:00:19 -0400") Message-ID: <87shhralv7.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: -2.1 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.1 (--) --=-=-= Content-Type: text/plain Noam Postavsky writes: > On Fri, Jun 30, 2017 at 2:36 AM, Thierry Volpiatto > wrote: >> >> This patch is an adaptation of what I use in my .emacs.el, originally >> the patch was correct, I have then deleted it (because the patch was >> refused) and then created it again on your request, forgetting to merge >> one line; Use let* instead of let. > > Thanks, we will have to test the patch to make sure it works since it > hasn't been tested in isolation then. I've added a commit message and tests, I will push in a few days if there are no objections. --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=v3-0001-Fix-eldoc-highlighting-for-key-args-Bug-27272.patch Content-Description: patch >From 27ddcf55804d4e852b2572ec4b7cab7dacecc5d6 Mon Sep 17 00:00:00 2001 From: Thierry Volpiatto Date: Thu, 15 Jun 2017 05:26:05 +0200 Subject: [PATCH v3 1/2] Fix eldoc highlighting for &key args (Bug#27272) * lisp/progmodes/elisp-mode.el (elisp--highlight-function-argument): Only switch to keyword-based searching if INDEX is greater than the index of `&key' in the argument list. All arguments prior to the `&key' are position based. Additionally, be more strict about what is a keyword when searching for the current keyword. --- lisp/progmodes/elisp-mode.el | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el index b3f452ca5b..c70d5baffe 100644 --- a/lisp/progmodes/elisp-mode.el +++ b/lisp/progmodes/elisp-mode.el @@ -1394,13 +1394,14 @@ (defun elisp--highlight-function-argument (sym args index prefix) ;; FIXME: This should probably work on the list representation of `args' ;; rather than its string representation. ;; FIXME: This function is much too long, we need to split it up! - (let ((start nil) - (end 0) - (argument-face 'eldoc-highlight-function-argument) - (args-lst (mapcar (lambda (x) - (replace-regexp-in-string - "\\`[(]\\|[)]\\'" "" x)) - (split-string args)))) + (let* ((start nil) + (end 0) + (argument-face 'eldoc-highlight-function-argument) + (args-lst (mapcar (lambda (x) + (replace-regexp-in-string + "\\`[(]\\|[)]\\'" "" x)) + (split-string args))) + (start-key-pos (cl-position "&key" args-lst :test 'equal))) ;; Find the current argument in the argument string. We need to ;; handle `&rest' and informal `...' properly. ;; @@ -1412,11 +1413,12 @@ (defun elisp--highlight-function-argument (sym args index prefix) ;; When `&key' is used finding position based on `index' ;; would be wrong, so find the arg at point and determine ;; position in ARGS based on this current arg. - (when (string-match "&key" args) + (when (and start-key-pos + (> index start-key-pos)) (let* (case-fold-search key-have-value (sym-name (symbol-name sym)) - (cur-w (current-word)) + (cur-w (current-word t)) (args-lst-ak (cdr (member "&key" args-lst))) (limit (save-excursion (when (re-search-backward sym-name nil t) @@ -1425,7 +1427,7 @@ (defun elisp--highlight-function-argument (sym args index prefix) (substring cur-w 1) (save-excursion (let (split) - (when (re-search-backward ":\\([^()\n]*\\)" limit t) + (when (re-search-backward ":\\([^ ()\n]*\\)" limit t) (setq split (split-string (match-string 1) " " t)) (prog1 (car split) (when (cdr split) @@ -1437,7 +1439,7 @@ (defun elisp--highlight-function-argument (sym args index prefix) args-lst-ak (not (member (upcase cur-a) args-lst-ak)) (upcase (car (last args-lst-ak)))))) - (unless (string= cur-w sym-name) + (unless (or (null cur-w) (string= cur-w sym-name)) ;; The last keyword have already a value ;; i.e :foo a b and cursor is at b. ;; If signature have also `&rest' -- 2.11.1 --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=v3-0002-Add-tests-for-previous-commit.patch Content-Description: patch >From 2e15fa20c441d5ead95a416e7fd67c525bc5fbaf Mon Sep 17 00:00:00 2001 From: Noam Postavsky Date: Wed, 19 Jul 2017 22:06:02 -0400 Subject: [PATCH v3 2/2] Add tests for previous commit * test/lisp/progmodes/elisp-mode-tests.el (elisp-mode-tests--face-propertized-string): New function. (elisp--highlight-function-argument-indexed) (elisp--highlight-function-argument-keyed-1) (elisp--highlight-function-argument-keyed-2): New tests. --- test/lisp/progmodes/elisp-mode-tests.el | 56 +++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) diff --git a/test/lisp/progmodes/elisp-mode-tests.el b/test/lisp/progmodes/elisp-mode-tests.el index ee0837f2c4..675aa31a79 100644 --- a/test/lisp/progmodes/elisp-mode-tests.el +++ b/test/lisp/progmodes/elisp-mode-tests.el @@ -24,6 +24,7 @@ (require 'ert) (require 'xref) +(eval-when-compile (require 'cl-lib)) ;;; Completion @@ -180,6 +181,61 @@ (ert-deftest eval-last-sexp-print-format-large-int-echo () (call-interactively #'eval-last-sexp) (should (equal (current-message) "66 (#o102, #x42, ?B)")))))) +;;; eldoc + +(defun elisp-mode-tests--face-propertized-string (string) + "Return substring of STRING with a non-nil `face' property." + (let* ((start (next-single-property-change 0 'face string)) + (end (and start (next-single-property-change start 'face string)))) + (and end + (substring string start end)))) + +(ert-deftest elisp--highlight-function-argument-indexed () + (dotimes (i 3) + (should + (equal (elisp-mode-tests--face-propertized-string + (elisp--highlight-function-argument 'foo "(A B C)" (1+ i) "foo: ")) + (propertize (nth i '("A" "B" "C")) + 'face 'eldoc-highlight-function-argument))))) + +(ert-deftest elisp--highlight-function-argument-keyed-1 () + (with-temp-buffer + (emacs-lisp-mode) + (insert "(foo prompt bar :b 2)") + (goto-char (1+ (point-min))) + (cl-flet ((bold-arg (i) + (elisp-mode-tests--face-propertized-string + (elisp--highlight-function-argument + 'foo "(PROMPT LST &key A B C)" i "foo: ")))) + (should-not (bold-arg 0)) + (progn (forward-sexp) (forward-char)) + (should (equal (bold-arg 1) "PROMPT")) + (progn (forward-sexp) (forward-char)) + (should (equal (bold-arg 2) "LST")) + ;; Both `:b' and `2' should highlight the `B' arg. + (progn (forward-sexp) (forward-char)) + (should (equal (bold-arg 3) "B")) + (progn (forward-sexp) (forward-char)) + (should (equal (bold-arg 4) "B"))))) + +(ert-deftest elisp--highlight-function-argument-keyed-2 () + (with-temp-buffer + (emacs-lisp-mode) + (insert "(foo :b :a 1)") + (goto-char (1+ (point-min))) + (cl-flet ((bold-arg (i) + (elisp-mode-tests--face-propertized-string + (elisp--highlight-function-argument + 'foo "(X &key A B C)" i "foo: ")))) + (should-not (bold-arg 0)) + ;; The `:b' specifies positional arg `X'. + (progn (forward-sexp) (forward-char)) + (should (equal (bold-arg 1) "X")) + (progn (forward-sexp) (forward-char)) + (should (equal (bold-arg 2) "A")) + (progn (forward-sexp) (forward-char)) + (should (equal (bold-arg 3) "A"))))) + ;;; xref (defun xref-elisp-test-descr-to-target (xref) -- 2.11.1 --=-=-=-- From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: npostavs@users.sourceforge.net Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 05 Aug 2017 01:34:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org, Johan =?UTF-8?Q?Bockg=C3=A5rd?= Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.150189682729542 (code B ref 27272); Sat, 05 Aug 2017 01:34:02 +0000 Received: (at 27272) by debbugs.gnu.org; 5 Aug 2017 01:33:47 +0000 Received: from localhost ([127.0.0.1]:42204 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ddnyN-0007gP-39 for submit@debbugs.gnu.org; Fri, 04 Aug 2017 21:33:47 -0400 Received: from mail-it0-f45.google.com ([209.85.214.45]:35008) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ddnyK-0007gC-N6 for 27272@debbugs.gnu.org; Fri, 04 Aug 2017 21:33:45 -0400 Received: by mail-it0-f45.google.com with SMTP id h199so15010535ith.0 for <27272@debbugs.gnu.org>; Fri, 04 Aug 2017 18:33:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=AQq6UlkvDgoO/sCtEc68uA9OJU5fuuuMdOzvq6t8Jrg=; b=WZLCGHQ6wtx6ep8oSyyJF29zIvK41fsKFzpf0fQO6qNOyGzNjxM4IbMsEhIBXhKfsR skObRwNPmqqBU4ODhvQDv5qFdeMiuZSuaiO+oOgWtb5azpIKER6Ko0yRkzIqOwbjNWZG apCfmWAlL0G6+cletqGNd6h5xPO3MXxpArbjBWropkYXC45upGagiu8QEtr768yctBwy w3p/nmg0vNRQwUuXoBJ1kNheL1GlKtNwIYdU/cFRr92gu/FMuQFazGei0KA48ftRnlZA DEvtYW7OgKXlMOq4qG+c7Lj0oHe1lz9do9Azxydz3aFG3MRO+Xkm40sEsZZ0R9phabNI c6Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=AQq6UlkvDgoO/sCtEc68uA9OJU5fuuuMdOzvq6t8Jrg=; b=U2656nJKWZwa42WnEIyoEYduzWBXeJGsHqkEWygG998arCMUXEZktR++uBFEL6IWQ1 p361x1MyrJ2swB+c1KW1FVHkqDVgedksjno1+IzFiHCz3R3ulSBkd0XF6CM7lvFQIwHy Cveh3PMz/2scgywtZ1NVMniGc4Dfp43ZuuDryDcqG1WoIq3OovMbQc3w3pTJZiRWXPz5 nLK09N/SO0tdB5yfWI+sWpjwC1xdVoMUBsrroDAHC9UiOTHVF8k+9sVRJKgREEEjlA0i onptbouPDzjh4qp//e/FheunkI96953CCBqCoVC57VImBYyy76B8xO3dL9GordBP/o+/ FUzA== X-Gm-Message-State: AHYfb5jCwRwZyccCujCjmYtLoVvAjDq5lreQ+VgEmMZu9/Xz0B5PM8hE 7Ss0aUcxKwZyIw== X-Received: by 10.36.29.69 with SMTP id 66mr4519248itj.121.1501896819127; Fri, 04 Aug 2017 18:33:39 -0700 (PDT) Received: from zony ([45.2.119.48]) by smtp.googlemail.com with ESMTPSA id i190sm990504itb.3.2017.08.04.18.33.37 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 04 Aug 2017 18:33:37 -0700 (PDT) From: npostavs@users.sourceforge.net References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> <878tkzc5fm.fsf@gmail.com> <87wp8eru6z.fsf@users.sourceforge.net> <87lgound82.fsf@gmail.com> <87o9t6ktso.fsf@users.sourceforge.net> <87a84qx9q3.fsf@gmail.com> <87shhralv7.fsf@users.sourceforge.net> Date: Fri, 04 Aug 2017 21:35:18 -0400 In-Reply-To: <87shhralv7.fsf@users.sourceforge.net> (npostavs@users.sourceforge.net's message of "Wed, 19 Jul 2017 22:22:04 -0400") Message-ID: <874ltm7q5l.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Score: 0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.7 (/) --=-=-= Content-Type: text/plain npostavs@users.sourceforge.net writes: > Noam Postavsky writes: >> Thanks, we will have to test the patch to make sure it works since it >> hasn't been tested in isolation then. > > I've added a commit message and tests, I will push in a few days if there > are no objections. Actually, I found another little problem: it uses `cl-position' without requiring `cl-lib', so it triggers void-function errors in the *scratch* buffer from 'emacs -Q'. Here's a new version that uses `member' instead of `cl-position'. --=-=-= Content-Type: text/x-diff Content-Disposition: inline; filename=v4-0001-Fix-eldoc-highlighting-for-key-args-Bug-27272.patch Content-Description: patch >From b6861be04246d29ea46cf4130700df4d923fac58 Mon Sep 17 00:00:00 2001 From: Thierry Volpiatto Date: Thu, 15 Jun 2017 05:26:05 +0200 Subject: [PATCH v4] Fix eldoc highlighting for &key args (Bug#27272) * lisp/progmodes/elisp-mode.el (elisp--highlight-function-argument): Only switch to keyword-based searching if INDEX point beyond `&key' in the argument list. All arguments prior to the `&key' are position based. Additionally, be more strict about what is a keyword when searching for the current keyword. --- lisp/progmodes/elisp-mode.el | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/lisp/progmodes/elisp-mode.el b/lisp/progmodes/elisp-mode.el index b3f452ca5b..47739f5957 100644 --- a/lisp/progmodes/elisp-mode.el +++ b/lisp/progmodes/elisp-mode.el @@ -1394,13 +1394,14 @@ (defun elisp--highlight-function-argument (sym args index prefix) ;; FIXME: This should probably work on the list representation of `args' ;; rather than its string representation. ;; FIXME: This function is much too long, we need to split it up! - (let ((start nil) - (end 0) - (argument-face 'eldoc-highlight-function-argument) - (args-lst (mapcar (lambda (x) - (replace-regexp-in-string - "\\`[(]\\|[)]\\'" "" x)) - (split-string args)))) + (let* ((start nil) + (end 0) + (argument-face 'eldoc-highlight-function-argument) + (args-lst (mapcar (lambda (x) + (replace-regexp-in-string + "\\`[(]\\|[)]\\'" "" x)) + (split-string args))) + (args-lst-ak (cdr (member "&key" args-lst)))) ;; Find the current argument in the argument string. We need to ;; handle `&rest' and informal `...' properly. ;; @@ -1412,12 +1413,12 @@ (defun elisp--highlight-function-argument (sym args index prefix) ;; When `&key' is used finding position based on `index' ;; would be wrong, so find the arg at point and determine ;; position in ARGS based on this current arg. - (when (string-match "&key" args) + (when (and args-lst-ak + (>= index (- (length args-lst) (length args-lst-ak)))) (let* (case-fold-search key-have-value (sym-name (symbol-name sym)) - (cur-w (current-word)) - (args-lst-ak (cdr (member "&key" args-lst))) + (cur-w (current-word t)) (limit (save-excursion (when (re-search-backward sym-name nil t) (match-end 0)))) @@ -1425,7 +1426,7 @@ (defun elisp--highlight-function-argument (sym args index prefix) (substring cur-w 1) (save-excursion (let (split) - (when (re-search-backward ":\\([^()\n]*\\)" limit t) + (when (re-search-backward ":\\([^ ()\n]*\\)" limit t) (setq split (split-string (match-string 1) " " t)) (prog1 (car split) (when (cdr split) @@ -1437,7 +1438,7 @@ (defun elisp--highlight-function-argument (sym args index prefix) args-lst-ak (not (member (upcase cur-a) args-lst-ak)) (upcase (car (last args-lst-ak)))))) - (unless (string= cur-w sym-name) + (unless (or (null cur-w) (string= cur-w sym-name)) ;; The last keyword have already a value ;; i.e :foo a b and cursor is at b. ;; If signature have also `&rest' -- 2.11.1 --=-=-=-- From unknown Fri Sep 12 18:17:18 2025 X-Loop: help-debbugs@gnu.org Subject: bug#27272: 25.2; [patch] Fix positional args among keyword args in eldoc. Resent-From: npostavs@users.sourceforge.net Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 16 Aug 2017 01:30:03 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 27272 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Thierry Volpiatto Cc: 27272@debbugs.gnu.org, Johan =?UTF-8?Q?Bockg=C3=A5rd?= Received: via spool by 27272-submit@debbugs.gnu.org id=B27272.150284696630276 (code B ref 27272); Wed, 16 Aug 2017 01:30:03 +0000 Received: (at 27272) by debbugs.gnu.org; 16 Aug 2017 01:29:26 +0000 Received: from localhost ([127.0.0.1]:40037 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dhn9B-0007sB-OS for submit@debbugs.gnu.org; Tue, 15 Aug 2017 21:29:25 -0400 Received: from mail-io0-f195.google.com ([209.85.223.195]:34536) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1dhn99-0007rs-4R; Tue, 15 Aug 2017 21:29:23 -0400 Received: by mail-io0-f195.google.com with SMTP id m88so1577541iod.1; Tue, 15 Aug 2017 18:29:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:references:date:in-reply-to:message-id :user-agent:mime-version; bh=JdapOKj4nW1M98H1r4gurg4D7sJq6ydfiXf8Vv9qeeQ=; b=l+B7lT78C1FoU49XWIkswfeDYifQlsgkALfMS1sNW7JVFWeYU2GpQOIqBvqxIqLaI0 X9e5FjXgTnGJYxOI48+J8qbP3yN7D5lx0EeikGDM3ENHP5D5k9JHnQv38P3tFEaDE9kk sydaoZiRhk0gJpQKFg4zNu3tArCv18tvhpp8o5EKObS9Lj7GlR87Ufwk6djgYeKcxjGb x1jNAJQWCJ/D7dQJuQdrk1rj2/RWMnn+1oturNhdd7WS2Rn/6mfY/ShQ8LnpY1TBCJ/d Dp80gQYlfQZeEmz/bZm9Z4Cf56wtzvByMBxYjH+AL88Cxd2JbZshdDMBqU6vqVlivUOB ZZ+g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:references:date :in-reply-to:message-id:user-agent:mime-version; bh=JdapOKj4nW1M98H1r4gurg4D7sJq6ydfiXf8Vv9qeeQ=; b=lPUS7WL/mIlCzrIr5uAFY6NK5xK3eE8Ksr3L8pNDYfqxhC9nbLfgR+St0VPxQ48X/K 6WB8gxvF6Ig8+tpv97++uZ30bU2tR89ylAqesRjBhUkfJHM5PJvh+hQWF8EqNQhz92Ul YgXz+fRZ8tD5hrwcyjzBcunQY/f5v9/UZe5rGyzq4scBMIqkVV4A7oujqUF1AfXMR1Xl Q+rzTpjVqt/LIl1U2FYWae9O/Ed7xPn81DROW1gVZH78B2MoNhqGUbZcirVr/kjYnGe+ PjpAoEz4QK8mv4USRWcR/P9mzRhXXhc1WslKTWIc5MagLu9fWfTLjJGtH3AbVOTbFoEb Fryw== X-Gm-Message-State: AHYfb5hJjlAFDDao/M+RB4WYFeOmV+uZa3tGkv2Evko4N3jC+AuW/lm8 7wql14lN86c1y+Um X-Received: by 10.107.27.10 with SMTP id b10mr51197iob.241.1502846957366; Tue, 15 Aug 2017 18:29:17 -0700 (PDT) Received: from zony ([45.2.119.49]) by smtp.googlemail.com with ESMTPSA id h76sm5273941ioe.28.2017.08.15.18.29.15 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 15 Aug 2017 18:29:15 -0700 (PDT) From: npostavs@users.sourceforge.net References: <87poegnnyn.fsf@gmail.com> <87tw3ng6ov.fsf@gnu.org> <878tkzc5fm.fsf@gmail.com> <87wp8eru6z.fsf@users.sourceforge.net> <87lgound82.fsf@gmail.com> <87o9t6ktso.fsf@users.sourceforge.net> <87a84qx9q3.fsf@gmail.com> <87shhralv7.fsf@users.sourceforge.net> <874ltm7q5l.fsf@users.sourceforge.net> Date: Tue, 15 Aug 2017 21:30:53 -0400 In-Reply-To: <874ltm7q5l.fsf@users.sourceforge.net> (npostavs@users.sourceforge.net's message of "Fri, 04 Aug 2017 21:35:18 -0400") Message-ID: <87pobwz4c2.fsf@users.sourceforge.net> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -2.1 (--) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -2.1 (--) tags 27272 fixed close 27272 26.1 quit >> I've added a commit message and tests, I will push in a few days if there >> are no objections. > > Actually, I found another little problem: it uses `cl-position' without > requiring `cl-lib', so it triggers void-function errors in the *scratch* > buffer from 'emacs -Q'. Here's a new version that uses `member' instead > of `cl-position'. Pushed to master. [1: 55c9238189]: 2017-08-15 21:22:41 -0400 Fix eldoc highlighting for &key args (Bug#27272) http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=55c9238189795448075e2d4af93a7b29a505f23c [2: 3305dec538]: 2017-08-15 21:22:41 -0400 Add tests for previous commit http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=3305dec5387021791eb09a93df5ab784b2297dc8