Re: [Fish-users] Command substitution and functions

2014-08-20 Thread Cedric Auger
Works perfectly for me: - Welcome to fish, the friendly interactive shell Type help for instructions on how to use fish cauger@cauger-PNR ~ function url echo some url end cauger@cauger-PNR ~ open (url)/index.html xdg-open:

Re: [Fish-users] Command substitution and functions

2014-08-20 Thread Rickard von Essen
Hi, It turns out that is the function creating the url that is not working as I expected. This is the actual code: function vip vagrant ssh $argv[1] -c ifconfig eth1 | sed -ne 's/.*inet addr:\(\S*\)\s*Bcast.*/\1/p' \ ^ /dev/null end Using it gives: $ vip 192.168.233.170 But running: $

Re: [Fish-users] Command substitution and functions

2014-08-20 Thread Rickard von Essen
To boil it down a bit. Why is this having as it does: $ vip ^/dev/null 192.168.233.170 $ echo ip:(vip)- $ On Wed, Aug 20, 2014 at 3:19 PM, Rickard von Essen rickard.von.es...@gmail.com wrote: Hi, It turns out that is the function creating the url that is not working as I expected. This

Re: [Fish-users] Command substitution and functions

2014-08-20 Thread Cedric Auger
I do not know of the vagrant command. Does it really output data to stdout? (and not stderr, for instance) What does: $ echo http://;(vip) outputs? 2014-08-20 15:19 GMT+02:00 Rickard von Essen rickard.von.es...@gmail.com: Hi, It turns out that is the function creating the url that is not

Re: [Fish-users] Command substitution and functions

2014-08-20 Thread Rickard von Essen
What is strange is that $ echo http://;(vip) outputs only a new line. I would expect it to at least printout: http:// // Rickard On Wed, Aug 20, 2014 at 3:27 PM, Stestagg stest...@gmail.com wrote: My guess would be something to do with how stdout is being captured/ssh/vagrant weirdness It

Re: [Fish-users] Command substitution and functions

2014-08-20 Thread Stestagg
Sorry, replying to all this time: I can actually reproduce this without vagrant. From skimming the source, vagrant expands to something like: ssh -t host /bin/bash -c 'command' so, my equivalent function is: function x_test ssh -t HOST /bin/bash -c 'echo hi' ^ /dev/null end If i

Re: [Fish-users] Command substitution and functions

2014-08-20 Thread Michael Stillwell
On Wed, Aug 20, 2014 at 3:05 PM, Glenn Jackman jack...@pythian.com wrote: This got me at first too. Command substitution returns a *list*, not just a string. When you prefix a list with a string (http://;), that string is prefixed onto each member of the list: $ function tmp; echo 1; echo

Re: [Fish-users] Command substitution and functions

2014-08-20 Thread Glenn Jackman
This got me at first too. Command substitution returns a *list*, not just a string. When you prefix a list with a string (http://;), that string is prefixed onto each member of the list: $ function tmp; echo 1; echo 2; echo 3; end $ echo foo(tmp) foo1 foo2 foo3 If the list is empty, the string