On Wed, Dec 1, 2010 at 5:13 PM, Martin Bähr
<mba...@email.archlab.tuwien.ac.at> wrote:
> On Wed, Dec 01, 2010 at 12:47:36AM -0700, James Bowlin wrote:
>> The other solution (that I can think of) is to use another
>> variable (or flag or both) that makes text mode sticky just
>> like what I did for quiet mode.  Philip pointed out that
>> with such complications I'm drifting away from the original
>> design ideas of fish:  http://fishshell.org/user_doc/design.html
>
> yes, i agree, it's not good to make things complicated. to be honest
> though, i never liked the idea of using a browser for help in the first
> place. help should be simple and always work, what if no browser is
> installed at all? i'd like to see all help as text. possibly the html
> can be converted to plain text and included in that form as a backup to
> the browser help. i'd be happy to just always use a -t option to avoid
> a browser.
>

I think one way to compromise this is write a help wraper that do not call
browser. Here is the demo:
> cat help.fish

function help
       eval "$argv" --help
end

But is can cause errors:

> help if
fish: Could not locate end of block. The “end” command is missing,
misspelled or a “;” is missing.
/home/grissiom/My_projects/local-etc/shells/fish/functions/help.fish
(line 3): if --help
                                                                              ^
in . (source) call of file “-”,
       called on line 3 of file
“/home/grissiom/My_projects/local-etc/shells/fish/functions/help.fish”,

in function “help”,
       called on standard input,
       with parameter list “if”


      if - conditionally execute a command

  Synopsis
      if CONDITION; COMMANDS_TRUE...; [else; COMMANDS_FALSE...;] end

  Description
      if will execute the command CONDITION. If the condition's exit status
      is 0, the commands COMMANDS_TRUE will execute. If the exit status is
      not 0 and else is given, COMMANDS_FALSE will be executed.

      In order to use the exit status of multiple commands as the condition
      of an if block, use begin; ...; end and the short circuit commands and
      and or.

      The exit status of the last foreground command to exit can always be
      accessed using the $status variable.

  Example
      if test -f foo.txt
           echo foo.txt exists
      else
           echo foo.txt does not exist
      end

       will print foo.txt exists if the file foo.txt exists and is a regular
      file, otherwise it will print foo.txt does not exist.

.: Error while reading file “<stdin>”

So...

-- 
Cheers,
Grissiom

------------------------------------------------------------------------------
Increase Visibility of Your 3D Game App & Earn a Chance To Win $500!
Tap into the largest installed PC base & get more eyes on your game by
optimizing for Intel(R) Graphics Technology. Get started today with the
Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs.
http://p.sf.net/sfu/intelisp-dev2dev
_______________________________________________
Fish-users mailing list
Fish-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fish-users

Reply via email to