AltYo - drop-down terminal emulator, written in vala, depends only on libvte and gtk3.
Vala Makefile

README.md

AltYo

AltYo - drop-down terminal emulator, written in Vala, depends only on libvte and gtk3.

Main program advantages.

  • The design of altyo allows to open an unlimited tab count, even with long terminal titles.
    if tabs do not fit in one row, they will move to a new line.
  • Drag and drop tabs.
  • Tabs do not stand out from the terminal. (solid view)
  • Title of the tabs fully customisable.
    Highlight parts of the terminal header by color (for example, highlight username and hostname)
    Adjust the header of the terminal, using regular expressions(for example cut unnecessary parts).
  • Autostart with desktop session.
  • Autostarts programs in new tabs ,for example start mocp and mutt, by default.
  • Alert popup shows when you the terminal will be closed with an important program (ssh, wget pattern is customizable), even if executed in the background.
  • Delayed "Close tab", 10 seconds before tab will actually be closed. If necessary, <Ctrl><Shift>R can be pressed to restore the closed tab, tabs can also be restored from the terminal popup menu.
  • Important tabs can be 'Locked', the program will then ask to confirm tab closing. ("Lock tab" is in from the context menu on tab button)
  • All options can be configured via graphical settings dialog.
  • The program will warn the user when incorrect values are filled in the configuration, if settings are absent in config file, the program will use the default values.
  • Hotkey for the first 20 unlimited tabs (double press of alt+5 will switch to the 15th tab, triple press will switch to the 25th tab and so on)
  • You may use css to style the program (thanks to gtk3)
  • Multi monitor support.
    • The monitor in which altYo is started by default can be configured.
    • Individual window size and position for each monitor.
    • Program contains "Follow the mouse" mode, after hiding, window will shown on the monitor with mouse pointer.
  • Tiling window manager support (usual window).
    Use --standalone command line option to run in tiling window manager,
    For any other window managers, altyo will operate as usual terminal emulator (like xterm).
  • Multiple instances. You may run several instances of alto in same time.
    In order to do that, an unique id and configuration file for each instance should be setup.
    For example:
    altyo --id=org.gtk.altyo_left_monitor -c ~/.config/altyo/config_left_monitor.ini
    altyo --id=org.gtk.altyo_right_monitor -c ~/.config/altyo/config_right_monitor.ini
    now each instance can be controlled individually
    altyo --id=org.gtk.altyo_left_monitor -e "htop"
    altyo --id=org.gtk.altyo_right_monitor -e "mc"
    The id can be omitted: --id=none may be used, but in that case there will be no possibility to control instances from the command line.

Main window Preferences Look and feel Preferences Key bindings Preferences Advanced Tiling window manager Tiling window manager Normal window

small video presentation of the available features:

Installing

Packages for Ubuntu and Debian available there https://launchpad.net/~linvinus/+archive/altyo
Package for Arch Linux AUR https://aur.archlinux.org/packages/altyo-git/ (package created by willemw)
Ebuild for Gentoo/Sabayon https://drive.google.com/file/d/0B6vs0mKF7AyLQzdYOEdEVzJOZWM/view?usp=sharing (ebuild created by giacomogiorgianni)

Source code available there https://github.com/linvinus/AltYo
How to install from sources is described in INSTALL file.

Tips and tricks:

  1. A new stand-alone terminal may always be opened in current directory by pressing <Ctrl><Shift>N (default key binding).
  2. In search mode (when text entry have a focus), the following hotkeys may be used: ctrl+1 - toggle "Wrap search"
    ctrl+2 - toggle "Match case-sensitive"
    ctrl+3 - toggle search mode "terminal text"/"terminals titles"
    ctrl+Up or Enter - find next
    ctrl+Down - find prev
    Up - search history
    Down - search history
    Esc - close search dialog
    (Soddy, but those shortcuts are hardcoded).
  3. Switching tabs by searching in the titles.
    In order to switch tabs by searching a search dialog <Ctrl><Shift>F (default key binding) should be opened,
    then the search option "terminals titles" has to be activated, by pressing <Ctrl+3>. Type in order to search for part of the tab titles.
    The hotkeys : ctrl+Up or Enter - find next
    ctrl+Down - find prev
    can be used to cycle through the search results
    Also, you may configure special hotkeys to quickly activate the "Search in terminals titles" mode.
  4. Tabs can be sorted by hostname (if tab title contains host name in the following form <user>@<host>:<path>)
    To do that after pressing right mouse button on tab title, in the context menu, select "Sort by hostname"
    Also, you may configure a special hotkey for the "Sort by hostname" action.
  5. Altyo is portable, the executable file can be copied on an USB flash drive.
    The only requirement on the target machine is that Gtk 3.4 or newer and libvte 3.0 or newer sould be installed.
    Those libraries should be available on fresh distributives.
  6. Double click on an empty space in the tab bar will open a new tab.
  7. Middle mouse button click on a tab button will close the tab.
  8. You may set the default TERM variable at Advanced -> Terminal regexps ->TERM, e.g. TERM=xterm-256color

FAQ:

  • Q) ubuntu "global menu" + alt+grave "global menu" show application menu, when user press alt+grave, but it should not
  • A) disable gtk3 auto mnemonics
     dconf write /org/gnome/desktop/interface/automatic-mnemonics false

Reviews about AltYo

Video Review from Noah and Chris in Linux Action Show The worlds #1 Linux podcast. https://www.youtube.com/watch?v=RJyBoqvQg54#t=665 (http://www.jupiterbroadcasting.com/show/linuxactionshow/)

zenway.ru (Russian) http://zenway.ru/page/altyo
muhas.ru (Russian) http://muhas.ru/?p=202