From: Sven Wischnowsky <wischnow@informatik.hu-berlin.de>
To: zsh-workers@sunsite.auc.dk
Subject: Re: _x_geometry problem
Date: Fri, 18 Feb 2000 10:58:37 +0100 (MET) [thread overview]
Message-ID: <200002180958.KAA30933@beta.informatik.hu-berlin.de> (raw)
In-Reply-To: Tanaka Akira's message of 18 Feb 2000 08:44:45 +0900
Tanaka Akira wrote:
> I found a problem about _x_geometry.
>
> Z(2):akr@is27e1u11% Src/zsh -f
> is27e1u11% bindkey -e; autoload -U compinit; compinit -D
> is27e1u11% zstyle ':completion*:messages' format '%d'
> is27e1u11% /usr/X11/bin/ico -geometry <TAB
> -default-
>
> With set -x:
> ...
> +_arguments:251> _x_geometry -J -default-
> +_x_geometry:3> (( 2 ))
> +_x_geometry:4> _message -default-
> ...
>
> Hm. _x_geometry fail to detect whether its arguments has a message or
> not.
Oops. This comes from times when argument lists were simpler...
The patch also adds the matcher-list style to _zstyle and removes
_matcher from the .distfile.
Bye
Sven
diff -ru ../z.old/Completion/Builtins/_zstyle Completion/Builtins/_zstyle
--- ../z.old/Completion/Builtins/_zstyle Fri Feb 18 10:15:16 2000
+++ Completion/Builtins/_zstyle Fri Feb 18 10:22:31 2000
@@ -42,6 +42,7 @@
list-rows-first c:bool
local c:
matcher c:
+ matcher-list c:
max-errors c:
menu c:boolauto
numbers c:bool
diff -ru ../z.old/Completion/Core/.distfiles Completion/Core/.distfiles
--- ../z.old/Completion/Core/.distfiles Fri Feb 18 10:15:25 2000
+++ Completion/Core/.distfiles Fri Feb 18 10:22:01 2000
@@ -1,7 +1,7 @@
DISTFILES_SRC='
.distfiles
_alternative _approximate _compalso _complete _correct _description
- _expand _files _funcall _list _main_complete _match _matcher
+ _expand _files _funcall _list _main_complete _match
_menu _multi_parts _message _normal _oldlist _options
_parameters _path_files _prefix _requested _sep_parts
_set_options _setup _sort_tags _tags
diff -ru ../z.old/Completion/Core/_message Completion/Core/_message
--- ../z.old/Completion/Core/_message Fri Feb 18 10:15:22 2000
+++ Completion/Core/_message Fri Feb 18 10:54:02 2000
@@ -1,14 +1,20 @@
#autoload
-local format
+local format raw
_tags messages || return 1
-zstyle -s ":completion:${curcontext}:messages" format format ||
- zstyle -s ":completion:${curcontext}:descriptions" format format
+if [[ "$1" = -r ]]; then
+ raw=yes
+ shift
+ format="$1"
+else
+ zstyle -s ":completion:${curcontext}:messages" format format ||
+ zstyle -s ":completion:${curcontext}:descriptions" format format
+fi
-if [[ -n "$format" ]]; then
- zformat -f format "$format" "d:$1" "${(@)argv[2,-1]}"
+if [[ -n "$format$raw" ]]; then
+ [[ -z "$raw" ]] && zformat -f format "$format" "d:$1" "${(@)argv[2,-1]}"
if [[ $compstate[nmatches] -eq 0 ]]; then
compstate[list]='list force'
compstate[insert]=''
diff -ru ../z.old/Completion/X/_x_borderwidth Completion/X/_x_borderwidth
--- ../z.old/Completion/X/_x_borderwidth Fri Feb 18 10:15:35 2000
+++ Completion/X/_x_borderwidth Fri Feb 18 10:55:05 2000
@@ -1,7 +1,9 @@
#autoload
-if (( $# )); then
- _message "$2"
+local x="$argv[(I)-X]"
+
+if (( x )); then
+ _message -r "$argv[x + 1]"
else
_message 'border width'
fi
diff -ru ../z.old/Completion/X/_x_geometry Completion/X/_x_geometry
--- ../z.old/Completion/X/_x_geometry Fri Feb 18 10:15:35 2000
+++ Completion/X/_x_geometry Fri Feb 18 10:54:30 2000
@@ -1,7 +1,9 @@
#autoload
-if (( $# )); then
- _message "$2"
+local x="$argv[(I)-X]"
+
+if (( x )); then
+ _message -r "$argv[x + 1]"
else
_message 'geometry'
fi
diff -ru ../z.old/Completion/X/_x_locale Completion/X/_x_locale
--- ../z.old/Completion/X/_x_locale Fri Feb 18 10:15:35 2000
+++ Completion/X/_x_locale Fri Feb 18 10:55:02 2000
@@ -1,7 +1,9 @@
#autoload
-if (( $# )); then
- _message "$2"
+local x="$argv[(I)-X]"
+
+if (( x )); then
+ _message -r "$argv[x + 1]"
else
_message 'locale'
fi
diff -ru ../z.old/Completion/X/_x_name Completion/X/_x_name
--- ../z.old/Completion/X/_x_name Fri Feb 18 10:15:35 2000
+++ Completion/X/_x_name Fri Feb 18 10:54:58 2000
@@ -1,7 +1,9 @@
#autoload
-if (( $# )); then
- _message "$2"
+local x="$argv[(I)-X]"
+
+if (( x )); then
+ _message -r "$argv[x + 1]"
else
_message 'name'
fi
diff -ru ../z.old/Completion/X/_x_resource Completion/X/_x_resource
--- ../z.old/Completion/X/_x_resource Fri Feb 18 10:15:35 2000
+++ Completion/X/_x_resource Fri Feb 18 10:54:56 2000
@@ -1,7 +1,9 @@
#autoload
-if (( $# )); then
- _message "$2"
+local x="$argv[(I)-X]"
+
+if (( x )); then
+ _message -r "$argv[x + 1]"
else
_message 'resource'
fi
diff -ru ../z.old/Completion/X/_x_selection_timeout Completion/X/_x_selection_timeout
--- ../z.old/Completion/X/_x_selection_timeout Fri Feb 18 10:15:35 2000
+++ Completion/X/_x_selection_timeout Fri Feb 18 10:54:52 2000
@@ -1,7 +1,9 @@
#autoload
-if (( $# )); then
- _message "$2"
+local x="$argv[(I)-X]"
+
+if (( x )); then
+ _message -r "$argv[x + 1]"
else
_message 'selection timeout'
fi
diff -ru ../z.old/Completion/X/_x_title Completion/X/_x_title
--- ../z.old/Completion/X/_x_title Fri Feb 18 10:15:36 2000
+++ Completion/X/_x_title Fri Feb 18 10:54:49 2000
@@ -1,7 +1,9 @@
#autoload
-if (( $# )); then
- _message "$2"
+local x="$argv[(I)-X]"
+
+if (( x )); then
+ _message -r "$argv[x + 1]"
else
_message 'title'
fi
diff -ru ../z.old/Doc/Zsh/compsys.yo Doc/Zsh/compsys.yo
--- ../z.old/Doc/Zsh/compsys.yo Fri Feb 18 10:14:49 2000
+++ Doc/Zsh/compsys.yo Fri Feb 18 10:57:08 2000
@@ -1922,7 +1922,7 @@
compadd "$expl[@]" - "$files[@]")
)
findex(_message)
-item(tt(_message) var(descr))(
+item(tt(_message) [ -r ] var(descr))(
The var(descr) is used like the third
argument to the tt(_description) function. However, the resulting
string will always be shown whether or not matches were
@@ -1932,6 +1932,11 @@
This function also uses the tt(format) style for the tt(messages) tag in
preference to the tt(format) style for the tt(descriptions) tag. The
latter is used only if the former is unset.
+
+If the tt(-r) option is given, no style is used and the var(descr) is
+used literally as the string to display. This is only used in cases
+where that string is taken from some pre-processed argument list
+containing an expanded description.
)
findex(_setup)
item(tt(_setup) var(tag))(
--
Sven Wischnowsky wischnow@informatik.hu-berlin.de
next reply other threads:[~2000-02-18 9:58 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-02-18 9:58 Sven Wischnowsky [this message]
-- strict thread matches above, loose matches on Subject: below --
2000-02-17 23:44 Tanaka Akira
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=200002180958.KAA30933@beta.informatik.hu-berlin.de \
--to=wischnow@informatik.hu-berlin.de \
--cc=zsh-workers@sunsite.auc.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).