From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Tom Tromey Newsgroups: gmane.emacs.devel Subject: Re: Generation of tags for the current project on the fly Date: Wed, 17 Jan 2018 16:20:23 -0700 Message-ID: <877esgqdhk.fsf@tromey.com> References: <4559858d-eb32-d071-fdad-e51430700260@yandex.ru> <83shbb30z1.fsf@gnu.org> <8360863o6a.fsf@gnu.org> <27a58fb2-d2ee-e5fc-158d-ec41be401987@yandex.ru> <83y3l0za1f.fsf@gnu.org> <259c557d-e3a3-c01b-9ba3-30df09d247ea@yandex.ru> <83inc3znpu.fsf@gnu.org> <98f4f0c3-6815-bf86-fa23-1a330c60b9f3@yandex.ru> <87lggwkuth.fsf@tromey.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1516231195 7908 195.159.176.226 (17 Jan 2018 23:19:55 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 17 Jan 2018 23:19:55 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.0.90 (gnu/linux) Cc: Eli Zaretskii , Tom Tromey , emacs-devel@gnu.org To: Dmitry Gutov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Jan 18 00:19:50 2018 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ebwzW-0000xl-VW for ged-emacs-devel@m.gmane.org; Thu, 18 Jan 2018 00:19:35 +0100 Original-Received: from localhost ([::1]:42330 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebx1X-0008My-0s for ged-emacs-devel@m.gmane.org; Wed, 17 Jan 2018 18:21:39 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:60999) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ebx0U-0008L4-Oo for emacs-devel@gnu.org; Wed, 17 Jan 2018 18:20:35 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ebx0R-0002i7-6U for emacs-devel@gnu.org; Wed, 17 Jan 2018 18:20:34 -0500 Original-Received: from gateway30.websitewelcome.com ([192.185.144.21]:20253) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1ebx0Q-0002gA-JR for emacs-devel@gnu.org; Wed, 17 Jan 2018 18:20:30 -0500 Original-Received: from cm11.websitewelcome.com (cm11.websitewelcome.com [100.42.49.5]) by gateway30.websitewelcome.com (Postfix) with ESMTP id 10AAC80A4 for ; Wed, 17 Jan 2018 17:20:29 -0600 (CST) Original-Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with SMTP id bx0Oef7mwvkfxbx0OeBivY; Wed, 17 Jan 2018 17:20:29 -0600 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date: References:Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help:List-Unsubscribe: List-Subscribe:List-Post:List-Owner:List-Archive; bh=+PoNLAiBeE3bjm8FCSdoOvN+ReurWpqY1c9HIlmg9yk=; b=RQ3ubfyjTSemFVcsJYQp4rKREV r9tq6HUx8ypaoJBdBlDm4/Oao6iG/P1zJmLqUdiDtZvTIHN/X/AOE+akdcuyd6W4F0VOoh0+89dFl AyGGtmyvl51SfWamsQsLF76dV; Original-Received: from 75-166-96-23.hlrn.qwest.net ([75.166.96.23]:34154 helo=bapiya) by box5379.bluehost.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256) (Exim 4.89) (envelope-from ) id 1ebx0O-003t3s-K6; Wed, 17 Jan 2018 17:20:28 -0600 X-Attribution: Tom In-Reply-To: (Dmitry Gutov's message of "Thu, 18 Jan 2018 01:44:19 +0300") X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - box5379.bluehost.com X-AntiAbuse: Original Domain - gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - tromey.com X-BWhitelist: no X-Source-IP: 75.166.96.23 X-Source-L: No X-Exim-ID: 1ebx0O-003t3s-K6 X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 75-166-96-23.hlrn.qwest.net (bapiya) [75.166.96.23]:34154 X-Source-Auth: tom+tromey.com X-Email-Count: 3 X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-Received-From: 192.185.144.21 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:222064 Archived-At: >>>>> "Dmitry" == Dmitry Gutov writes: >> A while ago I wrote to this list about some work I'd done in etags. >> This was one of the features -- that is, I made "etags -u" work in etags >> mode, not just ctags mode. Dmitry> ctags supports incremental updates? Yeah, see "-u" in "ctags --help": -u, --update Update the tag entries for the given files, leaving tag entries for other files in place. Currently, this is implemented by deleting the existing entries for the given files and then rewriting the new entries at the end of the tags file. It is often faster to simply rebuild the entire tag file than to use this. Dmitry> The config file duplicates some info in .gitignore and Dmitry> project-vc-ignores, though. Which is unfortunate. True, but there are two reasons for this. One, there are still several version control systems in use, and I didn't want to try to parse every config file. Second, sometimes a generated file will be checked in, but you might still want to omit it from TAGS -- so some mechanism like this is needed. Dmitry> I also doubt that 'make tags' will go away anytime soon. Sure, me too, but this approach is taken by more tools nowadays, and it can live alongside "make tags". Dmitry> Any chance your code supports something analogous to 'global Dmitry> --single-update' (except with multiple file arguments, hopefully)? Dmitry> That's what I've been trying to describe. It could certainly be done without much effort. >> I suppose I could push my branch to git if that would be convenient. >> Just let me know. Dmitry> I'm sure it would be helpful, even if only to study the approach. I pushed it to feature/etags-update. Tom