unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: etay.meiri@gmail.com
To: help-gnu-emacs@gnu.org
Subject: Re: Binding a key to an ibuffer filter
Date: Sat, 28 Feb 2009 10:49:04 -0800 (PST)	[thread overview]
Message-ID: <94c16c01-05fe-49d7-bbf9-bca2fd8d3113@d19g2000yqb.googlegroups.com> (raw)
In-Reply-To: mailman.2094.1235843417.31690.help-gnu-emacs@gnu.org

Thanks a lot.
Looks like some progress was made.
Now when I click F1 I get an error: "Symbol's function definition is
void: c"

My filter definition is as follow:

'(ibuffer-saved-filters (quote (("c" ((mode . c++-mode))) ("gnus" ((or
(mode . message-mode) (mode . mail-mode) (mode . gnus-group-mode)
(mode . gnus-summary-mode) (mode . gnus-article-mode))))
("programming" ((or (mode . emacs-lisp-mode) (mode . cperl-mode)
(mode . c-mode) (mode . java-mode) (mode . idl-mode) (mode . lisp-
mode)))))))

And I'm calling the switch function using:

(ibuffer-switch-to-saved-filters "c")

Maybe I'm not passing the parameter correctly?

Thanks,

-Etay




On Feb 28, 7:50 pm, "Drew Adams" <drew.ad...@oracle.com> wrote:
> > I'm trying to bind a key to a filter in ibuffer-mode. I created a
> > filter to display only C/C++ source files and it works ok manually (I
> > can switch to it using ibuffer-switch-to-saved-filter). I also added
> > the following code to .emacs:
>
> > (defun ibuffer-display-source-files ()
> >   (ibuffer-switch-to-saved-filters "c"))
>
> > (define-key ibuffer-mode-map [f1] 'ibuffer-display-source-files)
>
> > However, when I click F1 in ibuffer I get the following error:
>
> > Wrong type argument: commandp, ibuffer-display-source-files
>
> > Any idea?
>
> The error message is telling you that `ibuffer-display-source-files' is not a
> command. A command in Emacs is a function that has an `interactive' spec. So do
> this:
>
> (defun ibuffer-display-source-files ()
>   (interactive) ; <==== MISSING
>   (ibuffer-switch-to-saved-filter "c"))
>
> Consider also adding a doc string, for your users. ;-)



  parent reply	other threads:[~2009-02-28 18:49 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-28 17:19 Binding a key to an ibuffer filter etay.meiri
2009-02-28 17:50 ` Drew Adams
     [not found] ` <mailman.2094.1235843417.31690.help-gnu-emacs@gnu.org>
2009-02-28 18:49   ` etay.meiri [this message]
2009-02-28 19:54     ` Drew Adams

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=94c16c01-05fe-49d7-bbf9-bca2fd8d3113@d19g2000yqb.googlegroups.com \
    --to=etay.meiri@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).