mirror of https://github.com/liamg/aminal.git
|
||
---|---|---|
.circleci | ||
.github/ISSUE_TEMPLATE | ||
buffer | ||
config | ||
demo | ||
glfont | ||
gui | ||
hints | ||
scripts | ||
sixel | ||
terminal | ||
vendor | ||
.gitignore | ||
CODE_OF_CONDUCT.md | ||
CONTRIBUTING.md | ||
Gopkg.lock | ||
Gopkg.toml | ||
LICENSE | ||
Makefile | ||
PULL_REQUEST_TEMPLATE.md | ||
README.md | ||
config.go | ||
demo.gif | ||
example.sixel | ||
hint.png | ||
logger.go | ||
main.go | ||
sixel.png |
README.md
Aminal - A Modern Terminal Emulator
Aminal is a modern terminal emulator for Mac/Linux implemented in Golang and utilising OpenGL. Feel free to build and play with it though!
The project is experimental at the moment, so you probably won't want to rely on Aminal as your main terminal for a while.
Ensure you have your latest graphics card drivers installed before use.
Contextual Hints
Sixel Support
Aims
- Unicode support
- OpenGL rendering
- Full customisation options
- True colour support
- Support for common ANSI escape sequences a la xterm
- Scrollback buffer
- Clipboard access
- Clickable URLs
- Resize logic that wraps/unwraps lines correctly
- Bullshit graphical effects
- Multi platform support
- Sixel support
Quick Start
Installation
Prebuilt Binaries
Prebuilt binaries are available for Linux and OSX on the releases page.
Download the binary and sudo cp aminal-* /usr/local/bin/aminal
.
Install with Go
go get -u https://github.com/liamg/aminal
Build Dependencies
- On macOS, you need Xcode or Command Line Tools for Xcode (
xcode-select --install
) for required headers and libraries. - On Ubuntu/Debian-like Linux distributions, you need
libgl1-mesa-dev xorg-dev
. - On CentOS/Fedora-like Linux distributions, you need
libX11-devel libXcursor-devel libXrandr-devel libXinerama-devel mesa-libGL-devel libXi-devel
.
Keyboard Shortcuts
Operation | Key(s) |
---|---|
Select text | click + drag |
Select word | double click |
Select line | triple click |
Copy | ctrl + shift + c |
Toggle debug display | ctrl + shift + d |
Paste | ctrl + shift + v |
Google selected text | ctrl + shift + g |
Report bug in aminal | ctrl + shift + r |
Toggle slomo | ctrl + shift + ; |
Configuration
Aminal looks for a config file in ~/.aminal.toml
, and will write one there the first time it runs, if it doesn't already exist.
You can ignore the config and use defaults by specifying --ignore-config
as a CLI flag.
Config Options/CLI Flags
CLI Flag | Config Section | Config Name | Type | Default | Description |
---|---|---|---|---|---|
--debug | root | debug | boolean | false | Enable debug mode, with debug logging and debug info terminal overlay. |
--slomo | root | slomo | boolean | false | Enable slomo mode, delay the handling of each incoming byte (or escape sequence) from the pty by 100ms. Useful for debugging. |
--shell [shell] | root | shell | string | User's shell | Use the specified shell program instead of the user's usual one. |