git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Christian Couder <chriscool@tuxfamily.org>
To: Junio C Hamano <gitster@pobox.com>
Cc: Xavier Maillard <xma@gnu.org>, git@vger.kernel.org
Subject: Re: [PATCH AMENDED] help: add "man.viewer" config var to use "woman" or "konqueror"
Date: Mon, 3 Mar 2008 08:38:48 +0100	[thread overview]
Message-ID: <200803030838.48976.chriscool@tuxfamily.org> (raw)
In-Reply-To: <7vir079ong.fsf@gitster.siamese.dyndns.org>

Le samedi 1 mars 2008, Junio C Hamano a écrit :
> Xavier Maillard <xma@gnu.org> writes:
> > This patch makes it possible to view man pages using other tools
> > than the "man" program. It also implements support for emacs'
> > "woman" and konqueror with the man KIO slave to view man pages.
> >
> > Note that "emacsclient" is used with option "-e" to launch "woman"
> > on GNU emacs and this works only on versions >= 22.
> >
> > Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
> > Amended-by: Xavier Maillard <xma@gnu.org>
>
> When you do something like this, please CC the original author
> to keep him in the loop.

Yes please.

> I really do not think doing it this way would scale.  What if
> somebody prefers konq under X, and otherwise woman but wants to
> fall back to man?
>
> I do not think checking emacsclient version _every time_ is a
> good idea either, but for the sake of discussing an alternative
> approach, let's say that is fine.
>
> How about allowing multi-valued man.viewer like this:
>
>         [man]
>                 viewer = woman
>                 viewer = konqueror
>                 viewer = man

I tried the above in my .git/config and I get:

$ git config man.viewer
woman
error: More than one value for the key man.viewer: konqueror
error: More than one value for the key man.viewer: man

so I guess this can work only in C.

> and have:
>
>         static struct man_viewer {
>                 char *name;
>                 void (*exec)(const char *);
>         } viewers[] = {
>                 { "woman", exec_woman },
>                 { "konqueror", exec_konqueror },
>                 { "man", exec_man },
>                 { NULL, },
>         };
>
> Then you can iterate the man.viewer values, ask the viewer's
> exec() function to show the page (or return when it is not
> in an environment that it can be useful).
>
> show_man_page() would become:
>
> 	for (each viewer in user's config)
> 		viewer.exec(page); /* will return when unable */
> 	die("no man viewer handled the request");

Great idea, I will see if I can do that in some latter patches.

Thanks,
Christian.

  reply	other threads:[~2008-03-03  7:33 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-28  4:19 [PATCH 1/2] help: add "man.viewer" config var to use "woman" or "konqueror" Christian Couder
2008-02-29  2:00 ` Xavier Maillard
2008-02-29  7:14   ` Christian Couder
2008-02-29  7:46     ` Junio C Hamano
2008-03-01  1:00       ` Xavier Maillard
2008-03-03  7:20         ` Christian Couder
2008-03-01  1:00     ` [PATCH AMENDED] " Xavier Maillard
2008-03-01  2:14       ` Junio C Hamano
2008-03-03  7:38         ` Christian Couder [this message]
2008-03-03  7:42           ` Jakub Narebski
2008-03-03 19:07             ` Christian Couder
2008-02-29  2:00 ` [PATCH 1/2] " Xavier Maillard

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: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=200803030838.48976.chriscool@tuxfamily.org \
    --to=chriscool@tuxfamily.org \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=xma@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://80x24.org/mirrors/git.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).