unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: XeCycle <XeCycle@Gmail.com>
To: help-gnu-emacs@gnu.org
Subject: Re: Preloading TAGS and completion table (resend)
Date: Wed, 11 Jul 2012 19:07:21 +0800	[thread overview]
Message-ID: <87y5mqftee.fsf@xc.laptop> (raw)
In-Reply-To: BC5672F8AD4C054BAF167C9801500D1A9153C3BD@USCIMMBX003.net.plm.eds.com

[-- Attachment #1: Type: text/plain, Size: 2379 bytes --]

"Ludwig, Mark" <ludwig.mark@siemens.com> writes:

> [Sorry, resending in plain text]
>
> I use Emacs to maintain a large software system (>10,000,000
> lines of code).  We have multiple releases in the field under
> active maintenance (plus the next release under development).  I
> have cron jobs that make TAGS daily (overnight) because it takes
> hours to read the entire source in the multiple release source
> branches.  Each TAGS file per branch is over 40MB.  I run an
> instance of Emacs per release branch, because we use ClearCase,
> so the "same file name" potentially has different contents
> depending on the view (i.e., can't use Emacs Server across
> releases).
>
> When I want to use tag completion, it takes about a minute for
> Emacs to construct the completion table.

(By TAGS I assume you're using etags completion)
Have you tried gtags?  I tried it in Linux kernel source, and it
gives completion list beginning with two letters in roughly 0.1
secs.  The time may vary, but I think it should be able to give
you the list in seconds.

> Meanwhile, I can't do anything else in Emacs.  I'm wondering if
> it's possible to get the completion table pre-loaded in the
> background, so when I am finding a tag and hit '?' I get an
> instantaneous response the first time, instead of a minute-long
> wait.
>
> For context, I have been using EMACS/Emacs for over 30 years and
> my .emacs file is tiny, only pointing to another file with the
> real customization.  My customization is ~1,000 lines, and I
> byte-compile it.  I like pretending my name is Luke and using the
> source, but could use some tips and pointers about whether it's a
> good idea to try this in the background.  I'm not even sure it's
> possible to run this in the background (asynchronously).  Does
> Emacs have such asynchronous execution capability?
>
> If asynchronous execution isn't possible or wise, I'll settle for
> a way to forcibly load the completion table (without my needing
> to manually trigger it).  I don't see a way to do that, either.
>
> Thanks in advance!
> Mark
>
> P.S. If there is a better e-mail list for this question, please let me know.
>
>

-- 
Carl Lei (XeCycle)
Department of Physics, Shanghai Jiao Tong University
OpenPGP public key: 7795E591
Fingerprint: 1FB6 7F1F D45D F681 C845 27F7 8D71 8EC4 7795 E591

[-- Attachment #2: Type: application/pgp-signature, Size: 489 bytes --]

      reply	other threads:[~2012-07-11 11:07 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-07-10 19:49 Preloading TAGS and completion table (resend) Ludwig, Mark
2012-07-11 11:07 ` XeCycle [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87y5mqftee.fsf@xc.laptop \
    --to=xecycle@gmail.com \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).