unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: "Drew Adams" <drew.adams@oracle.com>
To: "Bug-Gnu-Emacs" <bug-gnu-emacs@gnu.org>
Subject: RE: No such program, egrep error in Customize
Date: Wed, 26 Dec 2007 10:54:07 -0800	[thread overview]
Message-ID: <DNEMKBNJBGPAOPIJOOICMEEAECAA.drew.adams@oracle.com> (raw)
In-Reply-To: <DHEEKFAFJEFOJHLCFPFDEEBLCDAA.drew.adams@oracle.com>

> emacs -Q
>
> Define a defcustom with a color value.
> M-x customize-variable for the option.
> Edit the color value field a bit and use `M-TAB' to try to complete.
>
> I get these messages (error):
>
>  Starting "egrep" process...
>  apply: Searching for program: no such file or directory, egrep
>
>
> In GNU Emacs 22.1.1 (i386-mingw-nt5.1.2600)
>  of 2007-06-02 on RELEASE
> Windowing system distributor `Microsoft Corp.', version 5.1.2600
> configured using `configure --with-gcc (3.4) --cflags
> -Ic:/gnuwin32/include'

The backtrace is below. `widget-complete' (`M-TAB') is calling
`ispell-complete-word' instead of `widget-color-complete', which is the
:complete value of the `color' widget.

When I do debug-on-entry widget-complete, I see that it does this:

Debugger entered--returning value: ispell-complete-word
  widget-get((string :format " %v" :value "lightgoldenrod2" :parent
(custom-variable :documentation-shown t :custom-state modified :tag "Icicle
Region Background" :value icicle-region-background :custom-form edit
:custom-magic (custom-magic :args ... :parent #1 :indent 0 :children ...
:from #<marker (moves after insertion) at 565 in *Customize Option: Icicle
Region Background*> :to #<marker at 642 in *Customize Option: Icicle Region
Background*> :buttons nil :value nil) :buttons (... ... ... ... ...)
:comment-widget (custom-comment :parent #1 :value "" :indent 0 :from
#<marker at 1084 in *Customize Option: Icicle Region Background*> :to
#<marker at 1084 in *Customize Option: Icicle Region Background*>) :children
(#0 ...) :from #<marker (moves after insertion) at 524 in *Customize Option:
Icicle Region Background*> :to #<marker at 1126 in *Customize Option: Icicle
Region Background*>) :indent 0 :field-overlay #<overlay from 561 to 564 in
*Customize Option: Icicle Region Background*> :from #<marker (moves after
insertion) at 560 in *Customize Option: Icicle Region Background*> :to
#<marker at 565 in *Customize Option: Icicle Region Background*>)
:complete-function)
* (or (widget-get widget :complete-function) widget-complete-field)
* (call-interactively (or (widget-get widget :complete-function)
widget-complete-field))
* widget-default-complete((string :format " %v" :value "lightgoldenrod2"
:parent (custom-variable :documentation-shown t :custom-state modified :tag
"Icicle Region Background" :value icicle-region-background :custom-form edit
:custom-magic (custom-magic :args ... :parent #1 :indent 0 :children ...
:from #<marker (moves after insertion) at 565 in *Customize Option: Icicle
Region Background*> :to #<marker at 642 in *Customize Option: Icicle Region
Background*> :buttons nil :value nil) :buttons (... ... ... ... ...)
:comment-widget (custom-comment :parent #1 :value "" :indent 0 :from
#<marker at 1084 in *Customize Option: Icicle Region Background*> :to
#<marker at 1084 in *Customize Option: Icicle Region Background*>) :children
(#0 ...) :from #<marker (moves after insertion) at 524 in *Customize Option:
Icicle Region Background*> :to #<marker at 1126 in *Customize Option: Icicle
Region Background*>) :indent 0 :field-overlay #<overlay from 561 to 564 in
*Customize Option: Icicle Region Background*> :from #<marker (moves after
insertion) at 560 in *Customize Option: Icicle Region Background*> :to
#<marker at 565 in *Customize Option: Icicle Region Background*>))
* widget-apply((string :format " %v" :value "lightgoldenrod2" :parent
(custom-variable :documentation-shown t :custom-state modified :tag "Icicle
Region Background" :value icicle-region-background :custom-form edit
:custom-magic (custom-magic :args ... :parent #1 :indent 0 :children ...
:from #<marker (moves after insertion) at 565 in *Customize Option: Icicle
Region Background*> :to #<marker at 642 in *Customize Option: Icicle Region
Background*> :buttons nil :value nil) :buttons (... ... ... ... ...)
:comment-widget (custom-comment :parent #1 :value "" :indent 0 :from
#<marker at 1084 in *Customize Option: Icicle Region Background*> :to
#<marker at 1084 in *Customize Option: Icicle Region Background*>) :children
(#0 ...) :from #<marker (moves after insertion) at 524 in *Customize Option:
Icicle Region Background*> :to #<marker at 1126 in *Customize Option: Icicle
Region Background*>) :indent 0 :field-overlay #<overlay from 561 to 564 in
*Customize Option: Icicle Region Background*> :from #<marker (moves after
insertion) at 560 in *Customize Option: Icicle Region Background*> :to
#<marker at 565 in *Customize Option: Icicle Region Background*>) :complete)
* (save-restriction (widget-narrow-to-field) (widget-apply field :complete))
* (if field (save-restriction (widget-narrow-to-field) (widget-apply field
:complete)) (error "Not in an editable field"))
* (let ((field ...)) (if field (save-restriction ... ...) (error "Not in an
editable field")))
* widget-complete()
  call-interactively(widget-complete)

IOW, the :complete value of the `color' widget, `widget-color-complete',
never gets used. Both parts of the `or' in `widget-default-complete' are
inappropriate here:

 (or (widget-get widget :complete-function) widget-complete-field)

The first part returns `ispell-complete-word'. The second part returns
`complete-symbol'. My guess would be that (widget-apply... :complete) is not
picking up the :complete value from widget `color'.


---8<---- error backtrace ----

  call-process("egrep" nil t nil "-i" "^blu.*$" "/usr/dict/words")
  apply(call-process ("egrep" nil t nil "-i" "^blu.*$" "/usr/dict/words"))
  ispell-call-process("egrep" nil t nil "-i" "^blu.*$" "/usr/dict/words")
  apply(ispell-call-process "egrep" nil t nil ("-i" "^blu.*$"
"/usr/dict/words"))
  byte-code(...)
  lookup-words("blu*" "/usr/dict/words")
  ispell-complete-word(nil)
  call-interactively(ispell-complete-word)
  widget-default-complete((string :format " %v" :value "lightgoldenrod2"
:parent (custom-variable :documentation-shown t :custom-state modified :tag
"Icicle Region Background" :value icicle-region-background :custom-form edit
:custom-magic (custom-magic :args ... :parent #1 :indent 0 :children ...
:from #<marker (moves after insertion) at 565 in *Customize Option: Icicle
Region Background*> :to #<marker at 642 in *Customize Option: Icicle Region
Background*> :buttons nil :value nil) :buttons (... ... ... ... ...)
:comment-widget (custom-comment :parent #1 :value "" :indent 0 :from
#<marker at 1084 in *Customize Option: Icicle Region Background*> :to
#<marker at 1084 in *Customize Option: Icicle Region Background*>) :children
(#0 ...) :from #<marker (moves after insertion) at 524 in *Customize Option:
Icicle Region Background*> :to #<marker at 1126 in *Customize Option: Icicle
Region Background*>) :indent 0 :field-overlay #<overlay from 561 to 564 in
*Customize Option: Icicle Region Background*> :from #<marker (moves after
insertion) at 560 in *Customize Option: Icicle Region Background*> :to
#<marker at 565 in *Customize Option: Icicle Region Background*>))
  widget-apply((string :format " %v" :value "lightgoldenrod2" :parent
(custom-variable :documentation-shown t :custom-state modified :tag "Icicle
Region Background" :value icicle-region-background :custom-form edit
:custom-magic (custom-magic :args ... :parent #1 :indent 0 :children ...
:from #<marker (moves after insertion) at 565 in *Customize Option: Icicle
Region Background*> :to #<marker at 642 in *Customize Option: Icicle Region
Background*> :buttons nil :value nil) :buttons (... ... ... ... ...)
:comment-widget (custom-comment :parent #1 :value "" :indent 0 :from
#<marker at 1084 in *Customize Option: Icicle Region Background*> :to
#<marker at 1084 in *Customize Option: Icicle Region Background*>) :children
(#0 ...) :from #<marker (moves after insertion) at 524 in *Customize Option:
Icicle Region Background*> :to #<marker at 1126 in *Customize Option: Icicle
Region Background*>) :indent 0 :field-overlay #<overlay from 561 to 564 in
*Customize Option: Icicle Region Background*> :from #<marker (moves after
insertion) at 560 in *Customize Option: Icicle Region Background*> :to
#<marker at 565 in *Customize Option: Icicle Region Background*>) :complete)
  widget-complete()
  call-interactively(widget-complete)





  reply	other threads:[~2007-12-26 18:54 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-12-26 18:32 No such program, egrep error in Customize Drew Adams
2007-12-26 18:54 ` Drew Adams [this message]
2007-12-26 19:18   ` Andreas Schwab
2007-12-26 19:45     ` Drew Adams
2007-12-26 19:50     ` Eli Zaretskii
2007-12-26 19:18   ` Drew Adams
2007-12-26 19:47     ` Eli Zaretskii
2007-12-26 20:02       ` Drew Adams
2007-12-26 19:41 ` Eli Zaretskii
2007-12-26 19:53   ` Drew Adams
2007-12-29 12:42   ` Eli Zaretskii

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=DNEMKBNJBGPAOPIJOOICMEEAECAA.drew.adams@oracle.com \
    --to=drew.adams@oracle.com \
    --cc=bug-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.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

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).