Robert,

I couldn’t agree more. There are a few things I found frustrating in fish at 
first (some I still do, like the inability to recall previous 
commands/arguments with !! and !$ - I have to look more into coding those with 
functions), but over time I’ve found the interactive shell experience SO MUCH 
BETTER. For example, when I have to use bash on other machines, I miss the 
automatic history completion and Ctl-F to complete commands. I *love* the 
completion system and how everything can be defined as a function so it’s 
trivial to redefine default behaviors if you want.

Aleksey: fish is indeed not bash, but in a good way. There are many things that 
could be improved, for sure, but it’s great even now. The community and 
developers are friendly and helpful, and if you stick around, you’ll see that 
good-natured feedback is always received well and addressed promptly.

—Diego

 
> On May 7, 2015, at 12:28 PM, Robert Carpenter <rob...@robacarp.com> wrote:
> 
> Aleksey,
> 
> I honestly can't decide if you're trying to troll the mailing list or if you 
> have legitimate questions. I'm going to take a risk of feeding the troll here 
> in hopes that you're actually, honestly trying to understand fish-shell.
> 
> To save yourself some time, I'll put the summation at the top. Continue 
> reading if you wish. 
> 
> To sum up: Fish shell is not bash. It tries to do things better. Sometimes 
> that means different. It takes some getting used to.
> 
> And now a little more:
> 
> Several of the features you've suggested could be helpful, but I think it is 
> important to remember that fish-shell is not, nor does it try (or even want) 
> to be bash or even bash compliant. The interaction is *necessarily* different.
> 
> In my experience, bash is different, but equally frustrating when looking for 
> help on builtins:
> 
> When I run `man for`, I get a man page or BUILTIN(1)...which lists all the 
> builtin commands, does absolutely nothing to explain the behavior of the 
> 'for' command, and (perhaps more importantly) doesn't suggest any further 
> recourse for understanding what I am curious about.
> 
> Now, perhaps I'm missing some subtlety about bash -- I used it recklessly for 
> about 8 years without ever learning much about it. But the principle of 
> discoverability is completely missing from that experience. 
> 
> `env NAME=value command` is a perfectly acceptable system. It is *different*. 
> But it is different for good reasons. It is more obvious to the user, less 
> ambiguous to the interpreter, and obeys the principals of consistency, 
> composition, and modularity (env is a command, which sets an environment 
> variable, and then runs a given argument in the altered environment). These 
> rules and others are available on the wikipedia page for the Unix 
> Philosophy[1].
> 
> As for fetching help on every command when you make an error, that is 
> actually the principal of discoverability at work. It is the default paradigm 
> for any well designed shell tool, why should the shell itself be different? 
> If you find yourself wanting examples, have a look at ssh, cp, and scp. 
> 
> I'll admit, when I first started using fish-shell, I was frustrated by the 
> fact that help opened the browser by default. But my workflow is frequently 
> switching back and forth between the shell and chrome (read: stackoverflow). 
> Why not provide a richer help experience, where related commands can be 
> easily found, rich on page searching is still available (and probably 
> better)? I honestly do think that fish could use a better help experience, 
> but I also don't think your method of requesting it is helpful at all.
> 
> Robert
> 
> [1] http://en.wikipedia.org/wiki/Unix_philosophy
> 
>> On May 5, 2015, at 10:03, Aleksey Midenkov <mide...@gmail.com> wrote:
>> 
>> On Tue, May 5, 2015 at 3:01 PM, Siteshwar <sitesh...@gmail.com> wrote:
>>> Hello Aleksey,
>>> 
>>> Thanks for trying fish.
>>> 
>>> On Tue, May 5, 2015 at 4:31 PM, Aleksey Midenkov <midenok+f...@gmail.com>
>>> wrote:
>>>> 
>>>>> help for
>>>> 
>>>> It opened browser window... I don't need browser, I need quick and
>>>> easy way to access basic syntax what does inline help in bash. It's
>>>> console app after all!
>>>> 
>>>>> man for
>>>> 
>>>> Not really good: the default PAGER is 'less' which doesn't fully
>>>> comply with 'quick and easy'. Well, if to trim NAME section and quick
>>>> description ('for - perform a set of commands multiple times.') and
>>>> output with 'cat' it will be almost like 'help' in bash, but:
>>>> 
>>>>> PAGER=cat man for
>>>> fish: Unknown command 'PAGER=cat'. Did you mean to run man with a
>>>> modified environment? Try 'env PAGER=cat man…'. See
>>>> the help section on the set command by typing 'help set'.
>>>> 
>>>> I recall, that I've read something about "fish doesn't like
>>>> subshells". Well, it's good to set variables inside pipes: I like
>>>> that! But, here I want quick and easy way to use temporary settings.
>>>> Ok, let's try what error said:
>>>> 
>>>>> env PAGER=cat man for
>>>> No manual entry for for
>>>> 
>>>> 
>>>> OMG, what was that?? It set PAGER and forgot all other variables? I
>>>> guess, it executed '/usr/bin/env' which is not related to any shell
>>>> and behaves how it wants, thus not a good method. I just want a
>>>> subshell here with a quick and concise:
>>>> 
>>>>> PAGER=cat man for
>>>> 
>>>> And it is kind of cumbersome to add 'env' here (even if it worked)...
>>> 
>>> 
>>> It's rather simple. Just type 'for' and press enter to see help text .
>> 
>> Seriously? Making errors just to get inline help is not the right way
>> to do it. It will not work for all commands (f.ex. 'set' and 'echo').
>> Moreover, I don't need inline help every time I make real mistake,
>> obviously...
>> 
>> I see, that command built-ins have '--help' option. This is not unified way:
>> 
>> 1. no '--help' for syntactic statements like 'for', 'if'.
>> 2. With '--help' there is no clarity that this is sure built-in  When
>> I type 'help COMMAND' I am sure that this is help about built-in. When
>> I type 'COMMAND --help' I'm not sure if this is built-in or not (maybe
>> there is no such built-in and this is help about executable util).
>> 
>>> 
>>>> 
>>>> Btw, if someone is interested, I decided to look at 'fish' because of
>>>> course 'bash' scripting is horrible! And the fact that 'fish' supports
>>>> var-change hooks was a signal to start examining it. But such basic
>>>> and simple failures give wa-ay too much no-go. The interactivity of
>>>> 'fish' is not really good. Well, by interactivity I don't mean all
>>>> these traffic-light colors and popping stuff (which frankly don't add
>>>> good impression) but simply 'what you type and what you get'...
>>> 
>>> 
>>> Let us know if you have any suggestions to improve fish.
>> 
>> I already did. As was said, it would be good to have 'VAR=x COMMAND'
>> syntax to define temporary variables just for one command.
>> Secondly, it would be good to have 'help COMMAND' to get inline help
>> on topic, not in browser, not in man page, just on STDOUT.
>> And thirdly, no need (and in fact is nagging) to get inline help on
>> every error. If isn't yet, there should be an option to turn it off.
>> 
>>> 
>>>> 
>>>> 
>>>> 
>>>> ------------------------------------------------------------------------------
>>>> One dashboard for servers and applications across Physical-Virtual-Cloud
>>>> Widest out-of-the-box monitoring support with 50+ applications
>>>> Performance metrics, stats and reports that give you Actionable Insights
>>>> Deep dive visibility with transaction tracing using APM Insight.
>>>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>>>> _______________________________________________
>>>> Fish-users mailing list
>>>> Fish-users@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/fish-users
>>> 
>>> 
>>> 
>>> 
>>> --
>>> Regards,
>>> Siteshwar
>> 
>> ------------------------------------------------------------------------------
>> One dashboard for servers and applications across Physical-Virtual-Cloud 
>> Widest out-of-the-box monitoring support with 50+ applications
>> Performance metrics, stats and reports that give you Actionable Insights
>> Deep dive visibility with transaction tracing using APM Insight.
>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>> _______________________________________________
>> Fish-users mailing list
>> Fish-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/fish-users
> 
> 
> ------------------------------------------------------------------------------
> One dashboard for servers and applications across Physical-Virtual-Cloud 
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable Insights
> Deep dive visibility with transaction tracing using APM Insight.
> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________
> Fish-users mailing list
> Fish-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/fish-users


------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud 
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Fish-users mailing list
Fish-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/fish-users

Reply via email to