From: Bart Schaefer <schaefer@brasslantern.com>
To: zsh-users@zsh.org
Subject: Re: Remove space added by completion
Date: Fri, 14 Feb 2014 18:33:36 -0800 [thread overview]
Message-ID: <140214183336.ZM10372@torch.brasslantern.com> (raw)
In-Reply-To: <20140215004907.GH10654@pug.qqx.org>
On Feb 14, 7:49pm, Aaron Schrab wrote:
}
} I don't know about the original poster, but one place where I often
} don't want a space after a completion is with git branch names, to make
} it easier to do commands like:
}
} # List commits in current branch but not in master
} git log master..
} # List commits from either branch which aren't in the other
} git log branch1...branch2
Try something like the following; I won't hazard to commit it because
I don't know git branch syntax well enough yet. With this diff you
should be able to complete the branch name and then type "." and it
will auto-remove the space.
diff --git a/Completion/Unix/Command/_git b/Completion/Unix/Command/_git
index c09f255..0c1288a 100644
--- a/Completion/Unix/Command/_git
+++ b/Completion/Unix/Command/_git
@@ -5398,7 +5398,7 @@ __git_branch_names () {
branch_names=(${${(f)"$(_call_program branchrefs git for-each-ref --format='"%(refname)"' refs/heads 2>/dev/null)"}#refs/heads/})
__git_command_successful $pipestatus || return 1
- _wanted branch-names expl branch-name compadd $* - $branch_names
+ _wanted branch-names expl branch-name compadd -r . $* - $branch_names
}
(( $+functions[__git_remote_branch_names] )) ||
@@ -5409,7 +5409,7 @@ __git_remote_branch_names () {
branch_names=(${${(f)"$(_call_program remote-branch-refs git for-each-ref --format='"%(refname)"' refs/remotes 2>/dev/null)"}#refs/remotes/})
__git_command_successful $pipestatus || return 1
- _wanted remote-branch-names expl 'remote branch name' compadd $* - $branch_names
+ _wanted remote-branch-names expl 'remote branch name' compadd -r . $* - $branch_names
}
(( $+functions[__git_remote_branch_names_noprefix] )) ||
@@ -5420,7 +5420,7 @@ __git_remote_branch_names_noprefix () {
branch_names=(${${${(f)"$(_call_program remote-branch-refs-noprefix git for-each-ref --format='"%(refname)"' refs/remotes 2>/dev/null)"}##*/}:#HEAD})
__git_command_successful $pipestatus || return 1
- _wanted remote-branch-names-noprefix expl 'remote branch name' compadd $* - $branch_names
+ _wanted remote-branch-names-noprefix expl 'remote branch name' compadd -r . $* - $branch_names
}
(( $+functions[__git_commits] )) ||
next prev parent reply other threads:[~2014-02-15 2:33 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-14 21:42 zzapper
2014-02-14 22:11 ` Oliver Kiddle
2014-02-15 0:49 ` Aaron Schrab
2014-02-15 2:33 ` Bart Schaefer [this message]
2014-02-15 4:45 ` Aaron Schrab
2014-02-18 16:54 ` Oliver Kiddle
2014-02-20 1:33 ` Aaron Schrab
2014-03-22 14:10 ` m0viefreak
2014-03-22 16:43 ` [PATCH] _git: auto-removable '..' suffix: remove at the end of lines m0viefreak
2014-03-22 17:37 ` Bart Schaefer
2014-03-23 3:41 ` m0viefreak
2014-03-23 6:45 ` Bart Schaefer
2014-03-23 18:38 ` [PATCH] zle/completion: fix auto-removable suffix highlighting m0viefreak
2014-02-15 12:45 ` Remove space added by completion zzapper
2014-02-20 10:05 ` Oliver Kiddle
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=140214183336.ZM10372@torch.brasslantern.com \
--to=schaefer@brasslantern.com \
--cc=zsh-users@zsh.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.
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).