zsh-users
 help / color / mirror / code / Atom feed
From: "Brian Agnew" <brianagnew@yahoo.com>
To: Will Sargent <wsargent@atg.com>, zsh-users@sunsite.dk
Subject: Re: Completing directories with special suffix
Date: Thu, 28 Mar 2002 09:59:04 +0000 (GMT)	[thread overview]
Message-ID: <20020328095904.51178.qmail@web14605.mail.yahoo.com> (raw)
In-Reply-To: <JMEGJPLJEICAFFFLHGPBGEAADAAA.wsargent@atg.com>

I solved this in a non-zsh fashion by writing a program called classfind that
parsed my classpath and built a cache of classes vs. package/directory.

So I can identify which jar I pick up a particular class from.

I then built a zsh completion around it, such that this program was invoked for
 'java com.oopsconsultancy.<TAB>'. So it doesn't complete on directories, but
from your classpath.

More details if you're interested.

Brian

 --- Will Sargent <wsargent@atg.com> wrote: > Hello all,
> 
> I'm trying to get the zsh code completion to expand out java directories and
> application modules so that I have directory completion set up with the dot
> instead of the slash.
> 
> As an example, I'd like to be able to do with java and a directory
> /com/foo/bar containing a file Main.class
> 
>    java -classpath . com.foo.bar.Main
> 
> using the dot prefix to expand on com.f<tab>, if that makes any sense.
> 
> I also use ATG Dynamo heavily, so which uses application modules in the same
> style.  I have a script for this, but it still expands things out with the /
> tag.  It's almost what I want, but not quite; I'd also like it so that only
> directories which contain a META-INF directory are considered.
> 
> So given a directory structure
> 
>     $DYNAMO_ROOT/
> 		DAS/
> 			META-INF/
> 			LDAP/
> 				META-INF/
> 				iPlanetDirectory/
> 					META-INF/
> 		DPS/
> 			META-INF/
> 		home/
> 			no meta inf dir here/
> 
> Then
> 
>   startDynamo -m DAS.LDAP.iPlanetDirectory
> 
> would be expanded out, but home wouldn't be on the possible list, and DPS
> wouldn't have any child completions.
> 
> I've created a file called _modules with the following text
> 
> #autoload
> 
> # Because of the way that the files options are processed, need to pass in
> # DYNAMO_ROOT and not $DYNAMO_HOME/..
> 
> # We also want to find files which contain a META-INF directory.
> # We also want to be able to expand out sub-modules.
> 
> DYNAMO_ROOT=$DYNAMO_HOME/..
> 
> _files -/ -W DYNAMO_ROOT
> 
> but that's as far as I've gotten for now.
> 
> What should I change to get the code working like I want?
> 
> Will.
> 
> 
> 

=====
Brian Agnew                  http://www.oopsconsultancy.com
OOPS Consultancy Ltd         brian@oopsconsultancy.com
Tel: +44 (0)7720 397526
Fax: +44 (0)20 8682 0012

__________________________________________________
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts
http://uk.my.yahoo.com


  parent reply	other threads:[~2002-03-28  9:59 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-03-27 21:52 Will Sargent
2002-03-27 21:57 ` Will Sargent
2002-03-28  9:59 ` Brian Agnew [this message]
2002-03-28 18:51   ` Will Sargent
2002-03-29  0:52     ` Brian Agnew
2002-03-29  2:36       ` Will Sargent

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

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

  git send-email \
    --in-reply-to=20020328095904.51178.qmail@web14605.mail.yahoo.com \
    --to=brianagnew@yahoo.com \
    --cc=wsargent@atg.com \
    --cc=zsh-users@sunsite.dk \
    /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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

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 NNTP newsgroup(s).