Jump to content

FISH shell


abarbarian

Recommended Posts

abarbarian

Main site

http://fishshell.com/

 

 

Fish the friendly interactive shell.Fish is a fully-equipped command line shell (like bash or zsh) that is smart and user-friendly. fish supports powerful features like syntax highlighting, auto suggestions, and tab completions that just work, with nothing to learn or configure.

If you want to make your command line more productive, more useful, and more fun, without learning a bunch of arcane syntax and configuration options, then fish might be just what you're looking for!

 

There is a 4bit terminal color scheme designer available on-line.

 

http://ciembor.github.io/4bit/

 

However you can always use the fish_config command which I used as I could not seem to get the hang of the above.

The web interface allows you to view your functions, variables and history, and to make changes to your prompt and color configuration.

fish_config starts a local web server and then opens a web browser window; when you have finished, close the browser window and then press the Enter key to terminate the configuration session.

 

There is excellent documentation on the main site covering most if not all the main parts of fish.

 

Here are a few ways folk have personalised fish,

 

http://geraldkaszuba...ing-fish-shell/

 

https://github.com/c.../tomorrow-theme

 

A whole host of themes here, just click on a theme to view it.

 

https://github.com/b...e/master/themes

 

You can use fish in vi mode with this script,

 

https://github.com/D...er/vi-mode.fish

 

Here are a couple of shots of the web based fish_config.You get a great deal of information from the various tabs which is very helpful. I still have to figure out how to set FireFox as the default web browser though. The program started NetSurf which would not open up the web page correctly so I copy and pasted the addy into FF and this worked so not a big handicap.

 

2014-05-11-1300201052x988scrot.png

 

2014-05-11-1302321093x998scrot.png

 

A few shots of me trying out fish.The fish alternative to "alias" which is included but "function" is preferred.Below you can see me trying to create one.As I do not really know what I am doing it took me a couple of tries to get right. Looking at other folks examples always helps me in cases like this :rolleyes: though it can be a little like wading through two feet of glue.

 

2014-05-11-130633487x345scrot.png

 

2014-05-11-130724497x857scrot.png

 

2014-05-11-133956487x706scrot.png

 

I'm quite liking fishing and think I may keep it as my shell.Now all I need to figure out is how to get a black background for the terminal and some decent fonts and how to resize the terminal window. :fishing:

 

An as I am morphing into a geek I am taking notes aswell. :Laughing:

 

2014-05-11-1455451057x751scrot.png

Edited by abarbarian
  • Like 1
Link to comment
Share on other sites

abarbarian

2014-05-11-185504674x541scrot.png

 

Well I made some progress.Now all I need is a decent font.I guess I'll need to figure out how to get the fonts and install them and use them with xterm :look: I think I have the last bit figured out. :228823:

Link to comment
Share on other sites

abarbarian

2014-05-11-202604914x608scrot.png

 

I gave that font a try but no matter what I did I could not get the font to go bigger. So I reverted to the included font and made the window bigger and sized from 10 to 12 and it will have to do for now.I want to mute the red down a tad as well but all things will have to wait for another day as I have spent long enough on this.Fishing certainly is not boring. :fishing:

  • Like 1
Link to comment
Share on other sites

securitybreach

So why do you use xterm? I always found Xtern awkward and archaic but that has always been my opinion B)

Link to comment
Share on other sites

abarbarian

So why do you use xterm? I always found Xtern awkward and archaic but that has always been my opinion B)

 

Came with the os.Seems to do everything I ask. Hmmmmmmmm it has taken me two days to get to my original aim, a black background, mind you I was sidetracked.Life is too short me Arch needs attention elsewhere. An do I really need to study loads of stuff for a new shell when all I do is update and fiddle a tad. :Laughing:

  • Like 1
Link to comment
Share on other sites

abarbarian

You should try urxvt (rxvt-unicode). It is simple, lightweight, can be ran as a daemon, super fast, full transparency, themeable, etc. and it is all configured in simple text file (~/.Xresources or ~/.Xdefaults)

https://wiki.archlin...hp/rxvt-unicode

 

My ~/.Xdefaults: http://ix.io/cfZ

 

See how simple it is B)

 

Another day perhaps. I'm burnt out today. Besides I'm going to sulk, no one has commented on my witty warning message. :thudna5:

Link to comment
Share on other sites

V.T. Eric Layton

Spiffy. I'll stick with bash, though. One shell is enough for me. Besides, fish didn't come with chips. There's just something wrong with that.

 

fish-and-chips.jpg

 

Umm... now I'm hungry. :yes:

Link to comment
Share on other sites

securitybreach

I thought the same thing Eric till I tried zsh. I cannot believe it took me over a decade to move away from bash. Zsh is like bash on steroids and I couln't be happier with it. I will never use bash again

Link to comment
Share on other sites

abarbarian

Spiffy. I'll stick with bash, though. One shell is enough for me. Besides, fish didn't come with chips. There's just something wrong with that.

 

fish-and-chips.jpg

 

Umm... now I'm hungry. :yes:

 

Well you could not run fish without some chips :blissysmile:

  • Like 1
Link to comment
Share on other sites

abarbarian

Have a small problem. I can get terminal set up with black background and it works when I close and open a terminal. If I reboot settings are lost. I can get things back by,

 

><(((“>$ xrdb ~/.Xresources 

 

So my settings in ~/.Xresources work, sort of. The permissions for .Xresources are root/root which I find strange as it is located in my user home.

 

Can I change permissions for .Xresources to user/user without causing any trouble ? Or do I need to do something else ?

 

:ermm:

Link to comment
Share on other sites

securitybreach

I am not for sure if you are referring to xterm or not but the permissions on ~/.Xresources should be [username] users:

0EVzxaj.png

Link to comment
Share on other sites

abarbarian

╰─><(((“>$ ls -al .Xresources															   12/05/14
-rw-r--r-- 1 root root 970 May 11 20:24 .Xresources

 

Duno why mine is root ????? I'll change it and see if I nuke the system. :ermm:

Link to comment
Share on other sites

abarbarian

Well I changed permissions.

 

╰─><(((“>$ ls -al .Xresources															   12/05/14
-rw-r--r-- 1 bloodaxe users 970 May 11 20:24 .Xresources

 

but after a reboot I still get a white background in terminal till I do.

 

╰─><(((“>$ xrdb ~/.Xresources 

 

Any ideas folks ? I can not seem to see any way of setting background in fish either :'(

Link to comment
Share on other sites

abarbarian

Well after searching through tons of files on me pc and reading tons of not applicable threads on the web I finally have a terminal with a black back ground that starts from me icon on the dock.

 

Found the solution when I started the terminal from the menu and it came up all luverly and coloured.Started from the icon and it was plain old plain old. So I tried fiddling with the icon settings to no avail. Deleted the icon and reinstated and hurray a nice coloured terminal thet starts from the icon.

A side product of this adventure is that I figured out how ro get a nicer coloured calcurse aswell.

 

2014-05-13-1410161693x544scrot.png

 

The Arch wiki which I never found so did not read gives a warrning about using fish as the main shell,

 

 

In Arch, there are a lot of shell scripts written for Bash, and these have not been translated to fish. It is advisable not to set fish as your default shell because of this.

 

Not setting fish as system wide default allows the arch scripts to run on startup, ensure the environment variables are set correctly, and generally reduces the issues associated with using a non-Bash compatible terminal like fish.

If you decide to set fish as your default shell, you may find that you no longer have very much in your path. You can add a section to your ~/.config/fish/config.fish file that will set your path correctly on login. This is much like .profile or .bash_profile as it is only executed for login shells.

if status --is-login

set PATH $PATH /usr/bin /sbin

end

 

Note that you will need to manually add various other environment variables, such as $MOZ_PLUGIN_PATH. It is a huge amount of work to get a seamless experience with fish as your default shell.

 

At the moment I am doing,

 

xterm -e fish

 

I had set fish as my default and did not seem to run into any problems.

 

Will I run into trouble using fish as my default ? :breakfast:

Link to comment
Share on other sites

securitybreach

If the wiki mentions it specifically, then I would assume that eventually it will break your installation.

 

Hehe, from Fish's homepage:

Finally, a command line shell for the 90s

 

http://fishshell.com/

Link to comment
Share on other sites

abarbarian

 

I think the wiki covers my reasons for not using zsh perfectly.

 

Although Zsh is usable out of the box, it is almost certainly not set up the way most users would like to use it, but due to the sheer amount of customization available in Zsh, configuring Zsh can be a daunting and time-consuming experience.

 

I may have a look at it some time but I have just spent a load of time reading up on fish so I'll keep that for now.

 

I'll ask about fish over at G+ and see what the great unwashed say about it. :fish:

  • Like 1
Link to comment
Share on other sites

V.T. Eric Layton

Bash, Zsh, Fish...

 

I'm going to create a shell called Tush. I'll run it on my Old Crabbian (an offshoot of Debian for crochety ol' farts) along with Ice Skunk and Ice Buzzard. :)

 

iceskunk.png icebuzzard.png

Link to comment
Share on other sites

securitybreach

I think the wiki covers my reasons for not using zsh perfectly.

 

 

 

I may have a look at it some time but I have just spent a load of time reading up on fish so I'll keep that for now.

 

I'll ask about fish over at G+ and see what the great unwashed say about it. :fish:

 

Actually it pretty simple as there are a ton of themes (example config files) available so you can easily find one you like and install it. https://github.com/r...zsh/wiki/Themes

 

Also, the config file is super easy as it is written in easily readable format. Here is my ~/.zsh file for example:

[set show-all-if-ambiguous on
export VISUAL="vim"
export EDITOR="vim"

setopt appendhistory autocd beep extendedglob notify
bindkey -v

autoload -U compinit promptinit
compinit
promptinit

#History search
[[ -n "${key[PageUp]}" ]] && bindkey "${key[PageUp]}" history-beginning-search-backward
[[ -n "${key[PageDown]}" ]] && bindkey "${key[PageDown]}" history-beginning-search-forward
HISTFILE=~/.histfile
HISTSIZE=300
SAVEHIST=300

# This will set the default prompt to the walters theme
prompt grml-chroot

zstyle :compinstall filename '/home/comhack/.zshrc'

#For autocompletion with an arrow-key driven interface
zstyle ':completion:*' completer _complete _match _approximate
zstyle ':completion:*:match:*' original only
zstyle ':completion:*:approximate:*' max-errors 1 numeric
zstyle ':completion:*' menu select

#For autocompletion of command line switches for aliases
setopt completealiases

#Colors
autoload -U colors && colors
PROMPT="%{$fg[red]%}%n%{$reset_color%}@%{$fg[blue]%}%m %{$fg_no_bold[yellow]%}%1~ %{$reset_color%}%#"
#PROMPT="%{$fg[red]%}%n%{$reset_color%}@%{$fg[blue]%}%m %{$fg_no_bold[yellow]%} [%T] %n@%M %1~ %{$reset_color%}%#"
RPROMPT="[%{$fg_no_bold[yellow]%}%?%{$reset_color%}]"

#Syntax highlighting
source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh

#Aliases
alias ls='ls --color=auto -Fsh'
alias grep='grep --color=auto'
alias rb='dbus-send --system --print-reply --dest="org.freedesktop.Hal" /org/freedesktop/Hal/devices/computer org.freedesktop.Hal.Device.SystemPowerManagement.Reboot'
alias pa='packer -Syu'
alias di='di -H -x tmpfs,run'
alias tor=tor-browser-en
# Mplayer
alias play="mplayer -msgcolor -msgmodule"
alias playcd="mplayer cdda://"
#alias playdvd="mplayer dvd://"
alias playdvd="mplayer -mouse-movements dvdnav://"
alias playvcd="mplayer vcd://2"

# BBC Radio
bbcradio() { local s PS3="Select a station: ";select s in 1 1x 2 3 4 4x 5l 5lsp 6 "Asian Network an" "Nations & Local lcl";do break;done;s=($s);play -playlist
"http://www.bbc.co.uk/radio/listen/live/r"${s[@]:-1}".asx";}
alias bbclondon="play -playlist http://www.bbc.co.uk/radio/listen/live/bbclondon.asx"
alias bbcworld="play -playlist http://www.bbc.co.uk/worldservice/meta/tx/nb/live/eneuk.asx"

source /usr/share/doc/pkgfile/command-not-found.zsh

 

There is a lot you can configure but you can easily set it up with same defaults and just change the theme.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...