contour
is a modern and actually fast, modal, virtual terminal emulator,
for everyday use. It is aiming for power users with a modern feature mindset.
scrolloff
feature.SM ? 2026
/ RM ? 2026
)SM ? 2028
/ RM ? 2028
)contour
is packaged and available for installation on multiple distributions.
Fedora
use official packagesudo dnf install contour-terminal
Arch
use AUR packageClick the following button to install Contour from the Flathub store.
flatpak --version
)flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
.In order to configure Contour, it is necessary to modify the configuration file
contour.yml
, which is initially generated in the $HOME/.config/contour
directory. Some features also require shell integration. These can be generated
via the CLI (see below), these currently exist for zsh, fish and tcsh.
Contour is best installed from supported package managers, but you can build
from source by following the instructions below. You can use Qt 5 or Qt 6,
by default contour will be compiled with Qt 6, to change Qt version use
QTVER=5 ./scripts/install-deps.sh
to fetch dependencies and cmake flag
-D CONTOUR_QT_VERSION=5
.
./scripts/install-deps.sh
This script might ask you for the administrator password if a package dependency can be insalled via the system package manager.
You can use cmake presets to compile contour. The full list of available presets can be seen using cmake --list-presets
. To compile release build for linux or MacOs use linux-release
or macos-release
accordingly. FreeBSD and OpenBSD users can use linux-release
or configure cmake manually.
cmake --preset linux-release
cmake --build --preset linux-release
# Optionally, if you want to install from source
cmake --build --preset linux-release --target install
For Windows, you must have Windows 10, 2018 Fall Creators Update, and Visual Studio 2019, installed. It will neither build nor run on any prior Windows OS, due to libterminal making use of ConPTY API.
PATH
.cd C:\
git clone https://github.com/Microsoft/vcpkg.git
.\vcpkg\bootstrap-vcpkg.bat
contour
source folder execute .\scripts\install-deps.ps1
. This step may take a very long time.In the developer version of Powershell:
# change paths accordingly if you installed QT and vcpkg to somewhere else
cmake -S . -B build -DCMAKE_TOOLCHAIN_FILE=C:\vcpkg\scripts\buildsystems\vcpkg.cmake -DCMAKE_PREFIX_PATH=C:\Qt\6.5.0\msvc2019_64\lib\cmake
cmake --build build/
# Optionally, if you want to install from source
cmake --build build/ --target install
Usage:
contour [terminal] [config FILE] [profile NAME] [debug TAGS] [live-config] [dump-state-at-exit PATH]
[early-exit-threshold UINT] [working-directory DIRECTORY] [class WM_CLASS]
[platform PLATFORM[:OPTIONS]] [session SESSION_ID] [PROGRAM ARGS...]
contour font-locator [config FILE] [profile NAME] [debug TAGS]
contour info vt
contour help
contour version
contour license
contour parser-table
contour list-debug-tags
contour generate terminfo to FILE
contour generate config to FILE
contour generate integration shell SHELL to FILE
contour capture [logical] [words] [timeout SECONDS] [lines COUNT] to FILE
contour set profile [to NAME]
Contour - A modern C++ Terminal Emulator
-------------------------------------------
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.