Go to file
Daniel Micay 1cb51e3665 drop support for pseudo-transparency
This has been deprecated upstream, and there isn't going to be a way to
preserve the functionality. True transparency is also deprecated as a
feature of the VTE widget, but should be possible with GTK itself.
2013-10-12 18:23:05 -04:00
util@62faf9e46b cleanup 2013-01-04 23:49:38 -05:00
.gitignore Add a .gitignore 2012-06-08 15:07:11 -04:00
.gitmodules add util repo as submodule 2012-10-05 10:57:49 -04:00
Makefile Make ncurses recognize UTF8 support 2013-05-16 03:33:15 -04:00
README.rst add C-[ as a binding to leave command mode 2013-07-15 12:30:30 -04:00
TODO.rst add improving the hint uniqueness check to TODO 2013-02-20 03:45:45 -05:00
config drop support for pseudo-transparency 2013-10-12 18:23:05 -04:00
expose_select_text.patch no longer need to set cursor visibility 2012-08-30 04:32:03 -04:00
termite.1 update man page with C-[ 2013-07-15 14:12:53 -04:00
termite.cc drop support for pseudo-transparency 2013-10-12 18:23:05 -04:00
termite.desktop Application category is deprecated for .desktop 2013-01-01 16:21:27 -05:00
termite.terminfo Make ncurses recognize UTF8 support 2013-05-16 03:33:15 -04:00
url_regex.hh url_regex.hh: make path component optional 2012-10-07 11:45:37 -04:00

README.rst

A keyboard-centric VTE-based terminal, aimed at use within a window manager
with tiling and/or tabbing support.

Termite looks for the configuration file in the following order:
``$XDG_CONFIG_HOME/termite/config``, ``~/.config/termite/config``,
``$XDG_CONFIG_DIRS/termite/config``, ``/etc/xdg/termite.cfg``.

Termite's exit status is 1 on a failure, including a termination of the child
process from an uncaught signal. Otherwise the exit status is that of the child
process.

DEPENDENCIES
============

A vte version >= ``0.34``. A patch is required to expose the functions needed
for keyboard selection.

BUILDING
========
::

    git clone --recursive https://github.com/thestinger/termite.git
    cd termite && make

KEYBINDINGS
===========

INSERT MODE
-----------

+----------------------+---------------------------------------------+
| ``ctrl-shift-x``     | activate url hints mode                     |
+----------------------+---------------------------------------------+
| ``ctrl-shift-r``     | reload configuration file                   |
+----------------------+---------------------------------------------+
| ``ctrl-shift-c``     | copy to CLIPBOARD                           |
+----------------------+---------------------------------------------+
| ``ctrl-shift-v``     | paste from CLIPBOARD                        |
+----------------------+---------------------------------------------+
| ``ctrl-shift-u``     | unicode input (standard GTK binding)        |
+----------------------+---------------------------------------------+
| ``ctrl-tab``         | start scrollback completion                 |
+----------------------+---------------------------------------------+
| ``ctrl-shift-space`` | start command mode                          |
+----------------------+---------------------------------------------+
| ``ctrl-shift-t``     | open terminal in the current directory [1]_ |
+----------------------+---------------------------------------------+
| ``ctrl-shift-up``    | scroll up a line                            |
+----------------------+---------------------------------------------+
| ``ctrl-shift-down``  | scroll down a line                          |
+----------------------+---------------------------------------------+
| ``shift-pageup``     | scroll up a page                            |
+----------------------+---------------------------------------------+
| ``shift-pagedown``   | scroll down a page                          |
+----------------------+---------------------------------------------+

.. [1] The directory can be set by a process running in the terminal. For
       example, with zsh:

       .. code:: sh

            if [[ $TERM == xterm-termite ]]; then
              . /etc/profile.d/vte.sh
              __vte_osc7
            fi
       ::

       For example, with bash:

       .. code:: sh

            if [[ $TERM == xterm-termite ]]; then
              . /etc/profile.d/vte.sh
              __vte_prompt_command
            fi

COMMAND MODE
------------

+--------------------------+-----------------------------------------------------------+
| ``escape`` or ``ctrl-[`` | deactivate command mode                                   |
+--------------------------+-----------------------------------------------------------+
| ``x``                    | activate url hints mode                                   |
+--------------------------+-----------------------------------------------------------+
| ``v``                    | visual mode                                               |
+--------------------------+-----------------------------------------------------------+
| ``V``                    | visual line mode                                          |
+--------------------------+-----------------------------------------------------------+
| ``ctrl-v``               | visual block mode                                         |
+--------------------------+-----------------------------------------------------------+
| ``hjkl`` or arrow keys   | move cursor left/down/up/right                            |
+--------------------------+-----------------------------------------------------------+
| ``w`` or ``shift-right`` | forward word                                              |
+--------------------------+-----------------------------------------------------------+
| ``b`` or ``shift-left``  | backward word                                             |
+--------------------------+-----------------------------------------------------------+
| ``W`` or ``ctrl-right``  | forward WORD (non-whitespace)                             |
+--------------------------+-----------------------------------------------------------+
| ``B`` or ``ctrl-left``   | backward WORD (non-whitespace)                            |
+--------------------------+-----------------------------------------------------------+
| ``0``                    | move cursor to the first column in the row                |
+--------------------------+-----------------------------------------------------------+
| ``^``                    | beginning-of-line (first non-blank character)             |
+--------------------------+-----------------------------------------------------------+
| ``$``                    | end-of-line                                               |
+--------------------------+-----------------------------------------------------------+
| ``g``                    | jump to start of first row                                |
+--------------------------+-----------------------------------------------------------+
| ``G``                    | jump to start of last row                                 |
+--------------------------+-----------------------------------------------------------+
| ``ctrl-u``               | move cursor half a screen up                              |
+--------------------------+-----------------------------------------------------------+
| ``ctrl-d``               | move cursor half a screen down                            |
+--------------------------+-----------------------------------------------------------+
| ``y``                    | copy to CLIPBOARD                                         |
+--------------------------+-----------------------------------------------------------+
| ``/``                    | forward search                                            |
+--------------------------+-----------------------------------------------------------+
| ``?``                    | reverse search                                            |
+--------------------------+-----------------------------------------------------------+
| ``u``                    | forward url search                                        |
+--------------------------+-----------------------------------------------------------+
| ``U``                    | reverse url search                                        |
+--------------------------+-----------------------------------------------------------+
| ``o``                    | open the current selection as a url                       |
+--------------------------+-----------------------------------------------------------+
| ``Return``               | open the current selection as a url and exit command mode |
+--------------------------+-----------------------------------------------------------+
| ``n``                    | next search match                                         |
+--------------------------+-----------------------------------------------------------+
| ``N``                    | previous search match                                     |
+--------------------------+-----------------------------------------------------------+
| ``+``                    | increase font size                                        |
+--------------------------+-----------------------------------------------------------+
| ``-``                    | decrease font size                                        |
+--------------------------+-----------------------------------------------------------+

During scrollback search, the current selection is changed to the search match
and copied to the PRIMARY clipboard buffer.

With the text input widget focused, up/down (or tab/shift-tab) cycle through
completions, escape closes the widget and enter accepts the input.

In hints mode, the input will be accepted as soon as termite considers it a
unique match.