Yakuake
The Yakuake terminal is installed by default on some ditros. It’s basically a fancy dropdown terminal with a global shortcut that will hide when it loses focus.
There are a few mods I apply to it to make it and Konsole look better.
1. Use a skin with a thin/hidden titlebar.
I personally use a skin I made based on Sublime Text 3 called Soda Dark.
2. DarkSolarized color scheme.
- Save this DarkSolarized.colorscheme to
~/.local/share/konsole/DarkSolarized.colorscheme
- Right click Yakuake > Edit Current Profile > Appearance and select DarkSolarized.
3. Apply color scheme to the scrollbar
This also colors the scrollbar + tabs in Konsole.
- Paste this into
~/.config/konsolerc
and~/.config/yakuakerc
- Restart yakuake
killall yakuake; kstart5 yakuake
4. Change the $PS1
I prefer having the current directory on a different line than the command input.
So add this to your ~/.bashrc
.
### http://stackoverflow.com/questions/4133904/ps1-line-with-git-current-branch-and-colors
# \e an ASCII escape character (033)
# \] end a sequence of non-printing characters
# \s the name of the shell, the basename of $0
# (the portion following the final slash)
# \a an ASCII bell character (07)
# \n newline
# \[ begin a sequence of non-printing characters,
# which could be used to embed a terminal
# control sequence into the prompt
# \w the current working directory
### https://wiki.archlinux.org/index.php/Bash/Prompt_customization#Colors
# \e[1 bold
# \e[4Xm set background color X (0-7)
# \e[3Xm set text color X (0-7)
# \e[m reset text attributes
function __git_stuff {
if [ -n "$(git rev-parse --git-dir 2>/dev/null)" ]; then
local __a=`git name-rev --name-only @`
echo "($__a) "
fi
}
PS1_a='\e];\s\a\n' # Cleanup?
PS1_b='\e[1m\e[36m$(__git_stuff)' # Git
PS1_c='\e[31m\w' # Working Dir
PS1_d='\e[m\n$ ' # Prompt (on new line)
PS1="$PS1_a$PS1_b$PS1_c$PS1_d"
5. Popup from the bottom.
- Disable animations (duration = 0ms).
- Width: 100%
- Height: 70%
- Use a KWin Rule to position at the bottom.
- Position:
Force
0,315
1080 pixel height screen - 30px bottom panel = 1050px
100% - 70% screen height = 30%
1050px * 0.3 = 315px
- Position:
6. Add “Open Yakuake Here” right click action to Dolphin (the file manager).
Note: This was based off the KDE3 Service menu on the KDE Store.
Create the /usr/local/bin/yakuakehere
command.
sudo touch /usr/local/bin/yakuakehere
sudo chmod +x /usr/local/bin/yakuakehere
SUDO_EDITOR=kate sudoedit /usr/local/bin/yakuakehere
with the contents:
#!/bin/bash
if [ "$1" != "" ]; then
command="cd ""'"$1"'"
else
PWD=`pwd`
command="cd ""'"$PWD"'"
fi
qdbus org.kde.yakuake /yakuake/sessions addSession
qdbus org.kde.yakuake /yakuake/sessions runCommand "$command"
qdbus org.kde.yakuake /yakuake/sessions runCommand "clear"
qdbus org.kde.yakuake /yakuake/window toggleWindowState
then create: ~/.local/share/kservices5/ServiceMenus/YakuakeHere.desktop
mkdir -p ~/.local/share/kservices5/ServiceMenus/
touch ~/.local/share/kservices5/ServiceMenus/YakuakeHere.desktop
with the contents:
[Desktop Entry]
Type=Service
X-KDE-ServiceTypes=KonqPopupMenu/Plugin
MimeType=inode/directory
Actions=OpenYakuake
X-KDE-AuthorizeAction=shell_access
X-KDE-Priority=TopLevel
[Desktop Action OpenYakuake]
Icon=yakuake
Exec=yakuakehere %f
Name=Open Yakuake Here
Comment=Opens a new tab in Yakuake at the current folder
then finally run kbuildsycoca5
to apply the changes.
7. Make shortcuts similiar to the web browser
- Close Session:
Ctrl+W
- New Session:
Ctrl+T
- Next Session:
Ctrl+Tab
- Previous Session:
Ctrl+Shift+Tab
I also set the global shortcut to toggle Yakuake to be Meta+`
(the backtick underneath ~
).