Go to file
Daniel Micay 9baf7c94e1 rm support for transparency (deprecated upstream)
I considered replacing this with `gtk_widget_set_opacity`, but it's no
more usable than window manager transparency since the font is transparent.

Since this is already broken with URL hints and won't be around in the
future, it might as well go sooner rather than later.

Closes #128
Closes #39
2013-10-19 16:45:29 -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 rm support for transparency (deprecated upstream) 2013-10-19 16:45:29 -04:00
expose_select_text.patch no longer need to set cursor visibility 2012-08-30 04:32:03 -04:00
termite.1 rm support for transparency (deprecated upstream) 2013-10-19 16:45:29 -04:00
termite.cc rm support for transparency (deprecated upstream) 2013-10-19 16:45:29 -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.