X-Loop: help-debbugs@HIDDEN Subject: bug#31754: 25.1; etags output lacks info for making xref more useful Resent-From: Gauthier =?UTF-8?Q?=C3=96stervall?= <gauthier@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Fri, 08 Jun 2018 09:23:02 +0000 Resent-Message-ID: <handler.31754.B.1528449750748 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: report 31754 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 31754 <at> debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN Received: via spool by submit <at> debbugs.gnu.org id=B.1528449750748 (code B ref -1); Fri, 08 Jun 2018 09:23:02 +0000 Received: (at submit) by debbugs.gnu.org; 8 Jun 2018 09:22:30 +0000 Received: from localhost ([127.0.0.1]:38711 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1fRDbJ-0000Bz-Pe for submit <at> debbugs.gnu.org; Fri, 08 Jun 2018 05:22:30 -0400 Received: from eggs.gnu.org ([208.118.235.92]:39364) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <gauthier@HIDDEN>) id 1fRDbI-0000Bm-Bh for submit <at> debbugs.gnu.org; Fri, 08 Jun 2018 05:22:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <gauthier@HIDDEN>) id 1fRDbB-000712-9W for submit <at> debbugs.gnu.org; Fri, 08 Jun 2018 05:22:23 -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,T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:54823) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from <gauthier@HIDDEN>) id 1fRDbB-00070y-5A for submit <at> debbugs.gnu.org; Fri, 08 Jun 2018 05:22:21 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:58541) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <gauthier@HIDDEN>) id 1fRDb9-0008Hr-8l for bug-gnu-emacs@HIDDEN; Fri, 08 Jun 2018 05:22:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <gauthier@HIDDEN>) id 1fRDb5-0006yl-Si for bug-gnu-emacs@HIDDEN; Fri, 08 Jun 2018 05:22:19 -0400 Received: from mail-qt0-x229.google.com ([2607:f8b0:400d:c0d::229]:39299) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from <gauthier@HIDDEN>) id 1fRDb5-0006yP-Jq for bug-gnu-emacs@HIDDEN; Fri, 08 Jun 2018 05:22:15 -0400 Received: by mail-qt0-x229.google.com with SMTP id p23-v6so12761046qtn.6 for <bug-gnu-emacs@HIDDEN>; Fri, 08 Jun 2018 02:22:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ostervall-se.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=vydoBgbm98bbCT+33DjF+bm0BB5/zIzHTZM7kMBQuJg=; b=aTDRKdBurpop+7NDq/2tQZez4t5xtby+gb6CAbMsqkagRg5SjG4DW1EASmE5+0bM8+ Lhz77vUHGIKGoHu600Lt/vXsEdqHt+f1AP9rvqQPk/lt7AaZmR0hceb6y6krTjzYyAnq G8rZz6M0fJaSAJglwcm+rkSz8KeeaRlK9DhB2d5C/JN7ki8ldH5wtccnbEQmu0RwaR7+ D+ZsWXo42bOISI2JYc0HROpQpMWR+YTudW00n4uMb3gqZ6NxF8z2yGf8pMSUFhRQAwL4 uaXFIPOCsOcWm1jV+1/+v3+MLysBHDZBfqaSjSBrR7dHU95ue4BDqIlxpm6zZ/pWsncX M8EQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=vydoBgbm98bbCT+33DjF+bm0BB5/zIzHTZM7kMBQuJg=; b=s6o1KFJYT40lPQIBn0qy+O0Gz16cFEFS5Gf8Oqw3GRvaz1IIi2K2c6DUASFmyZh1oW JJ6ZgxP6xM0nc4CGojT1EbR4o6vDozdncQGtxPvm0qRVOxt+oKbAd1LUe6lK4Oag/75V jpNCI5vmOCCpVza/pZtZodiRfYkaZS3qyvt2/U/2+anPHusXv86rAXWwEyugl6wyct5o ebWLDyHNoCJUsu7njdWSsh9m0PU4sR5bGHvr1Y2AQ19RLlyCsEVZxiv/0/MmDXn6JJEN ORRkHcM3tPMWSmsQyQgF8Nll8ioBWnf+W5Jv+qOL+84cTXXug5wFKiGxRwANtN6SE37r VWKQ== X-Gm-Message-State: APt69E3xW1QxYMbMMLRq8TYue58HlQ3SMtMvbfPjVe7vdVTAiO976IAe Y8C+5oieA/rpKu/vrEaLUU1rxIMZWkdvYmd7X114KvQw6B4= X-Google-Smtp-Source: ADUXVKLimc0O2mDUFC28A/S+myeCAgWyj2ujU0YUo7Qq5lqFamcrAsBb4uNIp/K2dmzJSXtFhXfBZuyUjFWLeA6hIKM= X-Received: by 2002:ac8:1492:: with SMTP id l18-v6mr1291582qtj.129.1528449734542; Fri, 08 Jun 2018 02:22:14 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:ac8:115:0:0:0:0:0 with HTTP; Fri, 8 Jun 2018 02:21:54 -0700 (PDT) X-Originating-IP: [176.10.221.242] From: Gauthier =?UTF-8?Q?=C3=96stervall?= <gauthier@HIDDEN> Date: Fri, 8 Jun 2018 11:21:54 +0200 Message-ID: <CAM8gEghdn-rdauiBY+0vD2L5z4+4oUftD4i6fhz9p8zwsPMRRA@HIDDEN> Content-Type: text/plain; charset="UTF-8" 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: -5.0 (-----) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -6.0 (------) Given the following code: ---8<--- int my_identifier(int a) { return 2 * a; } int my_identifier(int a, int b) { return a + b; } ---8<--- and a TAGS file generated with etags (no options). Running xref-find-definitions (M-.) opens a suggestion buffer with this content: ---8<--- /home/gauthier/tmp/xref.c 1: int my_identifier( 5: int my_identifier( ---8<--- This could be more helpful, the suggestions are not distinguishable. I suggest including at least the whole source row. The example source is only a minimal example, obviously not a real problem in C. This disturbs me when I have multiple identifier definitions. --- In GNU Emacs 25.1.1 (x86_64-pc-linux-gnu, GTK+ Version 3.22.11) of 2017-09-15, modified by Debian built on trouble Windowing system distributor 'The X.Org Foundation', version 11.0.11902000 System Description: Debian GNU/Linux 9.4 (stretch) Configured using: 'configure --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes --enable-locallisppath=/etc/emacs25:/etc/emacs:/usr/local/share/emacs/25.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/25.1/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --build x86_64-linux-gnu --prefix=/usr --sharedstatedir=/var/lib --libexecdir=/usr/lib --localstatedir=/var/lib --infodir=/usr/share/info --mandir=/usr/share/man --with-pop=yes --enable-locallisppath=/etc/emacs25:/etc/emacs:/usr/local/share/emacs/25.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/25.1/site-lisp:/usr/share/emacs/site-lisp --with-sound=alsa --with-x=yes --with-x-toolkit=gtk3 --with-toolkit-scroll-bars 'CFLAGS=-g -O2 -fdebug-prefix-map=/build/emacs25-wN2qS3/emacs25-25.1+1=. -fstack-protector-strong -Wformat -Werror=format-security -Wall' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' LDFLAGS=-Wl,-z,relro' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GCONF GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 Important settings: value of $LANG: en_US.utf8 value of $XMODIFIERS: @im=ibus locale-coding-system: utf-8-unix Major mode: robot mode Minor modes in effect: magit-auto-revert-mode: t auto-revert-mode: t dumb-jump-mode: t flx-ido-mode: t global-git-commit-mode: t async-bytecomp-package-mode: t shell-dirtrack-mode: t diff-auto-refine-mode: t ido-everywhere: t global-cwarn-mode: t dtrt-indent-mode: t show-paren-mode: t tooltip-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: (only) Recent messages: Type C-c C-c to finish, or C-c C-k to cancel (No changes need to be saved) Saving file /home/gauthier/.emacs.d/whsettings... Wrote /home/gauthier/.emacs.d/whsettings File TAGS is large (11.7M), really open? (y or n) y Note: indent-tabs-mode adjusted to nil Mark set [2 times] Saving file /home/gauthier/.emacs.d/whsettings... Wrote /home/gauthier/.emacs.d/whsettings Mark saved where search started Load-path shadows: /home/gauthier/.emacs.d/elpa/git-commit-20171007.346/git-commit hides ~/.emacs.d/includes/git-commit /usr/share/emacs/25.1/site-lisp/debian-startup hides /usr/share/emacs/site-lisp/debian-startup /usr/share/emacs25/site-lisp/cmake-data/cmake-mode hides /usr/share/emacs/site-lisp/cmake-mode ~/.emacs.d/includes/ruby-mode hides /usr/share/emacs/25.1/lisp/progmodes/ruby-mode Features: (shadow sort mail-extr emacsbug sendmail conf-mode flyspell ispell magit-obsolete magit-blame magit-stash magit-bisect magit-remote magit-commit epa magit-sequence magit-notes magit-worktree magit-branch magit-files magit-refs magit-status subr-x magit esh-var esh-io esh-cmd esh-opt esh-ext esh-proc esh-arg esh-groups eshell esh-module esh-mode esh-util dired-x magit-repos magit-apply magit-wip magit-log magit-diff smerge-mode magit-core magit-autorevert autorevert filenotify magit-process magit-margin magit-mode magit-git magit-section magit-popup disp-table blank-mode rect misearch multi-isearch projectile grep ibuf-ext vc-bzr vc-hg haskell-doc inf-haskell haskell-decl-scan imenu haskell haskell-completions haskell-load haskell-commands highlight-uses-mode haskell-modules haskell-sandbox haskell-navigate-imports haskell-repl haskell-collapse hideshow haskell-debug haskell-interactive-mode haskell-presentation-mode haskell-compile haskell-hoogle haskell-process haskell-session url-util url-parse auth-source url-vars json map haskell-mode haskell-cabal haskell-utils haskell-font-lock haskell-indentation haskell-string haskell-sort-imports haskell-lexeme rx haskell-align-imports haskell-compat haskell-complete-module haskell-ghc-support noutline outline flymake dabbrev haskell-customize dumb-jump popup f etags xref project eieio eieio-core fill-column-indicator flx-ido flx google-c-style visual defaultcontent buffer-move windmove git-commit with-editor async-bytecomp async shell pcomplete server magit-utils vc-git diff-mode crm log-edit easy-mmode message format-spec rfc822 mml mml-sec password-cache epg gnus-util mm-decode mm-bodies mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mm-util help-fns mail-prsvr mailabbrev mail-utils gmm-utils mailheader pcvs-util add-log highlight-symbol thingatpt copy ws-trim pymacs python-mode info-look darkroom-mode frame-local-vars w32-fullscreen gas-mode revbufs ido ibuffer ag vc-svn cl-seq derived compile comint ansi-color ring find-dired s dash dired column-marker bisque-darker-theme smart-mode-line cl-macs cl cwarn cc-mode cc-fonts cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs hl-line dtrt-indent cus-start cus-load advice paren finder-inf edmacro kmacro highlight-symbol-autoloads rainbow-mode-autoloads info package epg-config seq byte-opt gv bytecomp byte-compile cl-extra help-mode easymenu cconv cl-loaddefs pcase cl-lib time-date 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 885150 128230) (symbols 48 39371 0) (miscs 40 951 1965) (strings 32 83523 14685) (string-bytes 1 2857273) (vectors 16 61900) (vector-slots 8 2683541 97025) (floats 8 8004 1127) (intervals 56 6166 738) (buffers 976 33))
Content-Disposition: inline Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) Content-Type: text/plain; charset=utf-8 X-Loop: help-debbugs@HIDDEN From: help-debbugs@HIDDEN (GNU bug Tracking System) To: Gauthier =?UTF-8?Q?=C3=96stervall?= <gauthier@HIDDEN> Subject: bug#31754: Acknowledgement (25.1; etags output lacks info for making xref more useful) Message-ID: <handler.31754.B.1528449750748.ack <at> debbugs.gnu.org> References: <CAM8gEghdn-rdauiBY+0vD2L5z4+4oUftD4i6fhz9p8zwsPMRRA@HIDDEN> X-Gnu-PR-Message: ack 31754 X-Gnu-PR-Package: emacs Reply-To: 31754 <at> debbugs.gnu.org Date: Fri, 08 Jun 2018 09:23:02 +0000 Thank you for filing a new bug report with debbugs.gnu.org. This is an automatically generated reply to let you know your message has been received. Your message is being forwarded to the package maintainers and other interested parties for their attention; they will reply in due course. Your message has been sent to the package maintainer(s): bug-gnu-emacs@HIDDEN If you wish to submit further information on this problem, please send it to 31754 <at> debbugs.gnu.org. Please do not send mail to help-debbugs@HIDDEN unless you wish to report a problem with the Bug-tracking system. --=20 31754: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D31754 GNU Bug Tracking System Contact help-debbugs@HIDDEN with problems
X-Loop: help-debbugs@HIDDEN Subject: bug#31754: 25.1; etags output lacks info for making xref more useful Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Mon, 11 Jun 2018 17:47:01 +0000 Resent-Message-ID: <handler.31754.B31754.152873918526894 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 31754 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Gauthier =?UTF-8?Q?=C3=96stervall?= <gauthier@HIDDEN> Cc: 31754 <at> debbugs.gnu.org Reply-To: Eli Zaretskii <eliz@HIDDEN> Received: via spool by 31754-submit <at> debbugs.gnu.org id=B31754.152873918526894 (code B ref 31754); Mon, 11 Jun 2018 17:47:01 +0000 Received: (at 31754) by debbugs.gnu.org; 11 Jun 2018 17:46:25 +0000 Received: from localhost ([127.0.0.1]:43650 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1fSQtd-0006zh-Ci for submit <at> debbugs.gnu.org; Mon, 11 Jun 2018 13:46:25 -0400 Received: from eggs.gnu.org ([208.118.235.92]:42167) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1fSQta-0006zU-VO for 31754 <at> debbugs.gnu.org; Mon, 11 Jun 2018 13:46:23 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <eliz@HIDDEN>) id 1fSQtR-0001QA-Qs for 31754 <at> debbugs.gnu.org; Mon, 11 Jun 2018 13:46:17 -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.5 required=5.0 tests=BAYES_05 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:49397) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eliz@HIDDEN>) id 1fSQtG-0001MM-He; Mon, 11 Jun 2018 13:46:02 -0400 Received: from [176.228.60.248] (port=2334 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from <eliz@HIDDEN>) id 1fSQtF-0006TD-Oh; Mon, 11 Jun 2018 13:46:02 -0400 Date: Mon, 11 Jun 2018 20:46:09 +0300 Message-Id: <83y3flp672.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-reply-to: <CAM8gEghdn-rdauiBY+0vD2L5z4+4oUftD4i6fhz9p8zwsPMRRA@HIDDEN> (message from Gauthier =?UTF-8?Q?=C3=96stervall?= on Fri, 8 Jun 2018 11:21:54 +0200) References: <CAM8gEghdn-rdauiBY+0vD2L5z4+4oUftD4i6fhz9p8zwsPMRRA@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit 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 <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -6.0 (------) severity 31754 wishlist thanks > From: Gauthier Östervall <gauthier@HIDDEN> > Date: Fri, 8 Jun 2018 11:21:54 +0200 > > Given the following code: > > ---8<--- > int my_identifier(int a) { > return 2 * a; > } > > int my_identifier(int a, int b) { > return a + b; > } > ---8<--- > > and a TAGS file generated with etags (no options). > > Running xref-find-definitions (M-.) opens a suggestion buffer with this content: > > ---8<--- > /home/gauthier/tmp/xref.c > 1: int my_identifier( > 5: int my_identifier( > ---8<--- > > This could be more helpful, the suggestions are not distinguishable. I > suggest including at least the whole source row. I originally thought that etags should be extended to include the while line in TAGS, at least as an option, but the more I think about this, the less I'm convinced thats the right approach. For starters, no one said that line will show enough to tell the difference. For example, imagine this code: int my_identifier(int a, int b) { return 2 * a + b; } int my_identifier(int a, int b, double fac) { return fac*a + b; } So now I think that perhaps we should leave etags alone, and instead add a feature to xref whereby the lines in the XREF buffer will show in a tooltip the full signature of the function. Any takers?
Received: (at control) by debbugs.gnu.org; 11 Jun 2018 17:46:15 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Jun 11 13:46:15 2018 Received: from localhost ([127.0.0.1]:43647 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1fSQtT-0006zJ-30 for submit <at> debbugs.gnu.org; Mon, 11 Jun 2018 13:46:15 -0400 Received: from eggs.gnu.org ([208.118.235.92]:42153) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1fSQtQ-0006z6-15 for control <at> debbugs.gnu.org; Mon, 11 Jun 2018 13:46:13 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <eliz@HIDDEN>) id 1fSQtG-0001MS-Lg for control <at> debbugs.gnu.org; Mon, 11 Jun 2018 13:46:06 -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.5 required=5.0 tests=BAYES_05 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:49397) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eliz@HIDDEN>) id 1fSQtG-0001MM-He; Mon, 11 Jun 2018 13:46:02 -0400 Received: from [176.228.60.248] (port=2334 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from <eliz@HIDDEN>) id 1fSQtF-0006TD-Oh; Mon, 11 Jun 2018 13:46:02 -0400 Date: Mon, 11 Jun 2018 20:46:09 +0300 Message-Id: <83y3flp672.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> To: Gauthier =?utf-8?Q?=C3=96stervall?= <gauthier@HIDDEN> In-reply-to: <CAM8gEghdn-rdauiBY+0vD2L5z4+4oUftD4i6fhz9p8zwsPMRRA@HIDDEN> (message from Gauthier =?utf-8?Q?=C3=96stervall?= on Fri, 8 Jun 2018 11:21:54 +0200) Subject: Re: bug#31754: 25.1; etags output lacks info for making xref more useful References: <CAM8gEghdn-rdauiBY+0vD2L5z4+4oUftD4i6fhz9p8zwsPMRRA@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit 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-Debbugs-Envelope-To: control Cc: 31754 <at> debbugs.gnu.org X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Reply-To: Eli Zaretskii <eliz@HIDDEN> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -6.0 (------) severity 31754 wishlist thanks > From: Gauthier Östervall <gauthier@HIDDEN> > Date: Fri, 8 Jun 2018 11:21:54 +0200 > > Given the following code: > > ---8<--- > int my_identifier(int a) { > return 2 * a; > } > > int my_identifier(int a, int b) { > return a + b; > } > ---8<--- > > and a TAGS file generated with etags (no options). > > Running xref-find-definitions (M-.) opens a suggestion buffer with this content: > > ---8<--- > /home/gauthier/tmp/xref.c > 1: int my_identifier( > 5: int my_identifier( > ---8<--- > > This could be more helpful, the suggestions are not distinguishable. I > suggest including at least the whole source row. I originally thought that etags should be extended to include the while line in TAGS, at least as an option, but the more I think about this, the less I'm convinced thats the right approach. For starters, no one said that line will show enough to tell the difference. For example, imagine this code: int my_identifier(int a, int b) { return 2 * a + b; } int my_identifier(int a, int b, double fac) { return fac*a + b; } So now I think that perhaps we should leave etags alone, and instead add a feature to xref whereby the lines in the XREF buffer will show in a tooltip the full signature of the function. Any takers?
X-Loop: help-debbugs@HIDDEN Subject: bug#31754: 25.1; etags output lacks info for making xref more useful Resent-From: Gauthier =?UTF-8?Q?=C3=96stervall?= <gauthier@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 12 Jun 2018 14:51:01 +0000 Resent-Message-ID: <handler.31754.B31754.15288150128861 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 31754 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Eli Zaretskii <eliz@HIDDEN> Cc: 31754 <at> debbugs.gnu.org Received: via spool by 31754-submit <at> debbugs.gnu.org id=B31754.15288150128861 (code B ref 31754); Tue, 12 Jun 2018 14:51:01 +0000 Received: (at 31754) by debbugs.gnu.org; 12 Jun 2018 14:50:12 +0000 Received: from localhost ([127.0.0.1]:45145 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1fSkcd-0002Ir-TB for submit <at> debbugs.gnu.org; Tue, 12 Jun 2018 10:50:12 -0400 Received: from mail-qt0-f180.google.com ([209.85.216.180]:40514) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <gauthier@HIDDEN>) id 1fSkcc-0002Id-AP for 31754 <at> debbugs.gnu.org; Tue, 12 Jun 2018 10:50:10 -0400 Received: by mail-qt0-f180.google.com with SMTP id q6-v6so23925458qtn.7 for <31754 <at> debbugs.gnu.org>; Tue, 12 Jun 2018 07:50:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ostervall-se.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=12eGJCMZNOsGMEUtwxpiLbSOU0AoS+3F8hdeJ9KibGs=; b=cn5tJhrajciI1HYNk7mQOcXrMxcSmglnc6TmxYEOzDJybAv57CdE2w9GX6YraMB7lR +oMu7Ctcw69RzRPGqhwUXzJT+3/tOioYuuIZfoFhybFUjjX5HaZo8/wTPhd+i63Pzkax XmWJdIvNE1o4p6R1HeZ/Ek98COigvGJQmy94I+3rJXHFDQeSX4QZfvTjHUYJ6K51qiDN F7VRpqElnxESuVVSa6WQdBJbxDpPAAM+roVdz0ysy0HXAKdxaX+QWcdTQ0ZS1ZrHrv4K dTRZ06bgI/qjrHNpMyPiELto0KlLM7T5K1hdxDwQ21aUfoswNd6hMFQd/CoatZBOsVWB 0QPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=12eGJCMZNOsGMEUtwxpiLbSOU0AoS+3F8hdeJ9KibGs=; b=GjxWLZjDNbmi13qjRMiq0YaeHrW8nRouB9XMnJMcuBVMiMy87pJ4Tw7MbOT/JAKvlG BZEDBDsa0vbs/QCTEcf61abFkcJ4kI7yuWybZhOmHbcnnmWTFFeo75FHQko2CNE1mnFf QaLh1pLXINVot/MwTV28xpmgibAjBpG4OOC2rJeu8cJBbhCOYs8c5nkdUYZHG2v3HRVL Q6YmvucXYJBOHb2MPqUBNcnyPgC/tTXjvxIxbDXPDne1aGUEffh0MEnc6aj9LsrCcpjg qhARabTT3ABgzjX5aeb38xrKSWnuqUHicghKlFmtNJAnKmDs3g14uxKcfjVKEEsIvi5R RcCQ== X-Gm-Message-State: APt69E2MIO7rETILaUt1XKVdNezNGxBLcrsWooFE0f61aU6F2AtnDTOP WKt++BEA59nQ63uCS2nqyVjux/5rHxXmmX9MVaTTjQ== X-Google-Smtp-Source: ADUXVKKe0rHZ3IzhhQIWZ3IznTXSHQ0cZNu8sGRF+OzTLNlJOtsmW1FBiJQygLb289nE/kwLMOVxIWwmOtPmKFY1Muc= X-Received: by 2002:a0c:e74c:: with SMTP id g12-v6mr746483qvn.203.1528815004646; Tue, 12 Jun 2018 07:50:04 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:ac8:391:0:0:0:0:0 with HTTP; Tue, 12 Jun 2018 07:49:44 -0700 (PDT) X-Originating-IP: [176.10.221.242] In-Reply-To: <83y3flp672.fsf@HIDDEN> References: <CAM8gEghdn-rdauiBY+0vD2L5z4+4oUftD4i6fhz9p8zwsPMRRA@HIDDEN> <83y3flp672.fsf@HIDDEN> From: Gauthier =?UTF-8?Q?=C3=96stervall?= <gauthier@HIDDEN> Date: Tue, 12 Jun 2018 16:49:44 +0200 Message-ID: <CAM8gEgiPcw_wxfGAjEEpkocQA_kPX=v6Nmn4=7OGGSkZykvO7g@HIDDEN> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -1.0 (-) On Mon, Jun 11, 2018 at 7:46 PM, Eli Zaretskii <eliz@HIDDEN> wrote: > severity 31754 wishlist > thanks > >> From: Gauthier =C3=96stervall <gauthier@HIDDEN> >> Date: Fri, 8 Jun 2018 11:21:54 +0200 >> This could be more helpful, the suggestions are not distinguishable. I >> suggest including at least the whole source row. > > I originally thought that etags should be extended to include the > while line in TAGS, at least as an option, but the more I think about > this, the less I'm convinced thats the right approach. For starters, > no one said that line will show enough to tell the difference. For > example, imagine this code: > > int my_identifier(int a, > int b) { > return 2 * a + b; > } > > int my_identifier(int a, > int b, double fac) { > return fac*a + b; > } > Agreed, showing the whole row is not enough. > So now I think that perhaps we should leave etags alone, and instead > add a feature to xref whereby the lines in the XREF buffer will show > in a tooltip the full signature of the function. I am not a fan of tooltips, to be honest. I guess I'm not alone here. I like to visually grep all the suggestions then go to the right one fast, instead of needing to put my cursor on every row before I can see their tooltip. In order to show the full signature, XREF would need to parse the source files. etags is already parsing files anyway, I can't see why not let it save whole signatures to TAGS?
X-Loop: help-debbugs@HIDDEN Subject: bug#31754: 25.1; etags output lacks info for making xref more useful Resent-From: Eli Zaretskii <eliz@HIDDEN> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> Resent-CC: bug-gnu-emacs@HIDDEN Resent-Date: Tue, 12 Jun 2018 17:06:02 +0000 Resent-Message-ID: <handler.31754.B31754.152882314020863 <at> debbugs.gnu.org> Resent-Sender: help-debbugs@HIDDEN X-GNU-PR-Message: followup 31754 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: Gauthier =?UTF-8?Q?=C3=96stervall?= <gauthier@HIDDEN> Cc: 31754 <at> debbugs.gnu.org Reply-To: Eli Zaretskii <eliz@HIDDEN> Received: via spool by 31754-submit <at> debbugs.gnu.org id=B31754.152882314020863 (code B ref 31754); Tue, 12 Jun 2018 17:06:02 +0000 Received: (at 31754) by debbugs.gnu.org; 12 Jun 2018 17:05:40 +0000 Received: from localhost ([127.0.0.1]:45285 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1fSmjj-0005QQ-T2 for submit <at> debbugs.gnu.org; Tue, 12 Jun 2018 13:05:40 -0400 Received: from eggs.gnu.org ([208.118.235.92]:45794) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <eliz@HIDDEN>) id 1fSmjh-0005QE-QY for 31754 <at> debbugs.gnu.org; Tue, 12 Jun 2018 13:05:38 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <eliz@HIDDEN>) id 1fSmjZ-0001L2-DR for 31754 <at> debbugs.gnu.org; Tue, 12 Jun 2018 13:05:32 -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 autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:39950) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from <eliz@HIDDEN>) id 1fSmjZ-0001Kx-8U; Tue, 12 Jun 2018 13:05:29 -0400 Received: from [176.228.60.248] (port=4174 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from <eliz@HIDDEN>) id 1fSmjY-0001Qm-NC; Tue, 12 Jun 2018 13:05:29 -0400 Date: Tue, 12 Jun 2018 20:05:38 +0300 Message-Id: <83r2lc3pgd.fsf@HIDDEN> From: Eli Zaretskii <eliz@HIDDEN> In-reply-to: <CAM8gEgiPcw_wxfGAjEEpkocQA_kPX=v6Nmn4=7OGGSkZykvO7g@HIDDEN> (message from Gauthier =?UTF-8?Q?=C3=96stervall?= on Tue, 12 Jun 2018 16:49:44 +0200) References: <CAM8gEghdn-rdauiBY+0vD2L5z4+4oUftD4i6fhz9p8zwsPMRRA@HIDDEN> <83y3flp672.fsf@HIDDEN> <CAM8gEgiPcw_wxfGAjEEpkocQA_kPX=v6Nmn4=7OGGSkZykvO7g@HIDDEN> MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit 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 <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -6.0 (------) > From: Gauthier Östervall <gauthier@HIDDEN> > Date: Tue, 12 Jun 2018 16:49:44 +0200 > Cc: 31754 <at> debbugs.gnu.org > > > So now I think that perhaps we should leave etags alone, and instead > > add a feature to xref whereby the lines in the XREF buffer will show > > in a tooltip the full signature of the function. > > I am not a fan of tooltips, to be honest. It's standard UI for these cases. But we could, of course, have an option whereby the XREF buffer itself would display enough of the function's beginning to show the same info. > In order to show the full signature, XREF would need to parse the > source files. Well, "parse" is really an exaggeration here. More like "display the first sexp", I'd say. Every programming language mode already knows how to do such limited "parsing". > etags is already parsing files anyway, I can't see why not let it > save whole signatures to TAGS? Because it will bloat TAGS by a large factor. Think about large projects with hundreds of source files. Even in Emacs, which is not such a large package by modern standards, the combined TAGS table weighs in at about 4MB. The larger TAGS, the slower searches and completion based on it. It isn't TAGS' role, anyway. TAGS is there to provide "links" to the places in sources where functions are defined, it only shows the text at that place for 2 purposes: (1) so that links won't break when the source file changes in small ways, and the function moves to a different line/byte offset; and (2) to show the identifier (the function's name) itself, so as to allow Emacs to find in TAGS the identifier the user requests. Anything else is something Xref should do when it finds the place where TAGS points, IMO. Besides, this feature will I think be valuable with Xref back-ends other than etags.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.