67 lines
2.6 KiB
Markdown
67 lines
2.6 KiB
Markdown
# TMUX - configuration
|
|
|
|
## Overview
|
|
|
|
This project contains a tmux-configuration, that allows loading different
|
|
plugins and layouts, that can be used to use tmux in conjunction with the helix
|
|
editor as an integrated development environment. It can be used to edit source
|
|
code, write texts with LaTeX and many other things. It requires the tmux plugin
|
|
manager to be installed, in order to provide all neccessary or desired
|
|
extensions.
|
|
|
|
## Prerequisites
|
|
|
|
Several packages must be available, in order to run the IDE in different
|
|
modes/layouts:
|
|
|
|
- [tmux](https://github.com/tmux/tmux/wiki): The terminal multiplexer itself
|
|
- [git](https://git-scm.com): The git version control system
|
|
- [tpm](https://github.com/tmux-plugins/tpm?tab=readme-ov-file): The tmux plugin
|
|
manager
|
|
- [lazygit](https://github.com/jesseduffield/lazygit): A simple text based UI
|
|
for using git
|
|
- [helix](https://helix-editor.com): A postmodern text editor. Replaces
|
|
vim/neovim.
|
|
- [xclip](https://github.com/astrand/xclip): A command line interface for the
|
|
system clipboard in X11/wayland
|
|
|
|
For some plugins, extra tools are required. These are optional, and only needed,
|
|
when the plugins are installed:
|
|
|
|
- [yq](https://github.com/mikefarah/yq): A commandline yaml parser. Required by
|
|
[tmux nerd font window name plugin](https://github.com/joshmedeski/tmux-nerd-font-window-name).
|
|
|
|
## Installation
|
|
|
|
Before any plugins can be loaded, it is neccesary to install the plugin-manager
|
|
itself. This has to be done manually, and can easily be done by using git:
|
|
|
|
```bash
|
|
git submodule add https://github.com/tmux-plugins/tpm ~/.config/tmux/plugins/tpm
|
|
```
|
|
|
|
Then, the `tmux.conf` file can be used. Make sure, when editing the file, that
|
|
the structure of the file is kept. It is mandatory, that the tpm command must
|
|
remain at the end of the file at all times for TPM to work properly!
|
|
|
|
After adding a plugin, press **Ctrl+\<prefix> I** to install the plugins.
|
|
|
|
## Basic usage
|
|
|
|
Independent from the layout you use, the basic usage is standard tmux operation.
|
|
You can use the tmux commands to split and control windows, and manage your
|
|
terminal window layoout. There are, however, some extra functions.
|
|
|
|
## Manage git
|
|
|
|
In order to manage your git repositories, without having to switch to a blank
|
|
terminal, press `Ctrl+<prefix> g`. This will open `lazygit` in a popup, that
|
|
overlays your current layoout. To close the window, all that is needed, is to
|
|
quit `lazygit` by pressing `q`.
|
|
|
|
## Open an ai chat window
|
|
|
|
To open a chat window to confer with your ai-bot in chatmode, you can easily
|
|
open a chatwindow to the left of your main window. To do so, press
|
|
`Ctrl+<prefix> a`. To close the window, press `Ctrl+d`.
|