aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: 9dbe396adc3dfe54f177ed25c2a02369260b1838 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# Introduction

This emacs module implements a bridge to libvterm to display a terminal in a
emacs buffer.

## Warning

This is a **alpha-release**, so it will crash your emacs. If it does, please
report a bug!

# Installation

You need to have `libvterm` installed, on Linux use your distros package manager, for example:

```
sudo apt-get install libvterm
```

On MAC OS X:

```
hombrew install libvterm
```

Then clone the repository:

```
git clone https://github.com/akermu/emacs-libvterm.git
```

Run the build:

```
mkdir -p build
cd build
cmake ..
make
```

And add this to your `init.el`:

```
(add-to-list 'load-path "path/to/emacs-libvterm")
(require 'vterm)
```

If you want to have the module compiled, wrap the call to `require` as follows:

```
(add-to-list 'load-path "path/to/emacs-libvterm")
(let (vterm-install)
  (require 'vterm))
```

# Debugging and testing

If you have successfully build the module, you can test the module by executing
the following command in the `build` directory:

```
make run
```

# Usage

## `vterm`

Open a terminal in the current window.

## `vterm-other-window`

Open a terminal in another window.

# Customization

## `vterm-shell`

Shell to run in a new vterm. Defaults to `$SHELL`.

## `vterm-keymap-exceptions`

List of keys, which should be processed by emacs and not by the terminal.

## Colors

Set the `:foreground` and `:background` attributes of the following faces to a
color you like:

- vterm
- vterm-color-black
- vterm-color-red
- vterm-color-green
- vterm-color-yellow
- vterm-color-blue
- vterm-color-magenta
- vterm-color-cyan
- vterm-color-white

# Limitations

- Mouse support is non-existing