Final Term is a new breed of terminal emulator.
It goes beyond mere emulation and understands what is happening inside the shell it is hosting. This allows it to offer features no other terminal can, including:
- Semantic text menus
- Smart command completion
- GUI terminal controls
For more information, screenshots and a demonstration video, visit http://finalterm.org.
Final Term is written in Vala and built on top of GTK+ 3, Clutter and Mx. It requires the development files for the following software packages:
To install Final Term, execute these shell commands:
git clone https://github.com/p-e-w/finalterm.git
cd finalterm
make
Then, run Final Term using
./finalterm
The following concrete steps have been tested and work to get Final Term installed and running on a vanilla Fedora 18 system:
sudo yum install git vala libgee-devel gnome-common gtk-doc gtk3-devel libmx-devel clutter-gtk-devel
Note that the Fedora repositories only contain the package "keybinder", which is linked against GTK+ 2.
git clone https://github.com/engla/keybinder.git
cd keybinder/
git checkout keybinder-3.0
./autogen.sh
make
sudo make install
git clone https://github.com/p-e-w/finalterm.git
cd finalterm/
make
Unfortunately, the keybinder install script fails to install the Vala bindings properly. To fix this, in the keybinder root directory, execute:
sudo cp examples/keybinder.vapi /usr/share/vala/vapi/
On Fedora there are sometimes further problems locating the keybinder library. To work around those, execute:
sudo cp /usr/local/include/keybinder-3.0/keybinder.h /usr/include/
sudo cp /usr/local/lib/libkeybinder-3.0.* /usr/lib/
sudo ldconfig
The following concrete steps have been tested and work to get Final Term installed and running on a vanilla Ubuntu 12.10 ("Quantal Quetzal") system:
This is necessary because Ubuntu does not provide an up-to-date version of Vala in its default repositories.
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 7DAAC99C
sudo add-apt-repository ppa:vala-team
sudo apt-get install git valac-0.18 libgee-0.8 libmx-dev libclutter-gtk-1.0-dev keybinder-3.0-dev
Unfortunately, the package "keybinder-3.0-dev" does not contain Vala bindings, so those have to be installed manually:
git clone https://github.com/engla/keybinder.git
cd keybinder/
git checkout keybinder-3.0
sudo cp examples/keybinder.vapi /usr/share/vala/vapi/
git clone https://github.com/p-e-w/finalterm.git
cd finalterm/
make
As on Fedora, for unknown reasons the Vala compiler can have problems locating keybinder.h. To fix this, execute:
sudo cp /usr/include/keybinder-3.0/keybinder.h /usr/include/
sudo ldconfig
This probably means that you are on Ubuntu 13.04 ("Raring Ringtail"), as reported in p-e-w#17.
The solution (for now, until I find something better) is to replace the line
--pkg keybinder
with
--pkg keybinder-3.0
in Makefile
, and recompile. Unfortunately, doing this breaks compilation on some other platforms so I cannot make it the default yet.
Final Term owes much of its existence to the awesomeness of Vala and its documentation, Clutter and Mx, as well as to those projects authors' generous decision to release their amazing work as open source software.
Much of the knowledge about terminal emulation required to build Final Term was gained from the xterm specification and the VT100 User Guide, as well as from the study of existing terminal emulators such as st and Terminator.
Final Term's color schemes are generated using the wonderful Base16 Builder by Chris Kempson.
Final Term's application icon is a modified version of the terminal icon from the Faenza icon theme by Matthieu James.
Copyright © 2013 Philipp Emanuel Weidmann ([email protected])
Final Term is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Final Term is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Final Term. If not, see http://www.gnu.org/licenses/.