All Projects → netxs-group → vtm

netxs-group / vtm

Licence: MIT License
Terminal multiplexer with window manager and session sharing

Programming Languages

C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to vtm

flinch
A collection of terminal-based widgets for richer Golang CLI apps.
Stars: ✭ 32 (-96.54%)
Mutual labels:  tui
tui-netcore
Text User Interface for .net Core.
Stars: ✭ 20 (-97.84%)
Mutual labels:  tui
tmbasic
TMBASIC programming language
Stars: ✭ 33 (-96.43%)
Mutual labels:  tui
golintui
A simple terminal UI for Go linters
Stars: ✭ 73 (-92.1%)
Mutual labels:  tui
stui
A Slurm dashboard for the terminal.
Stars: ✭ 36 (-96.1%)
Mutual labels:  tui
mux-stream
(De)multiplex asynchronous streams
Stars: ✭ 34 (-96.32%)
Mutual labels:  multiplexer
TerminalUserInterfaces.jl
Terminal User Interfaces in Julia.
Stars: ✭ 66 (-92.86%)
Mutual labels:  tui
checkbox.sh
Interactive checkboxes (menu) with pagination and vim keybinds for bash
Stars: ✭ 26 (-97.19%)
Mutual labels:  tui
croatoan
Common Lisp bindings for the ncurses terminal library.
Stars: ✭ 111 (-87.99%)
Mutual labels:  tui
circumflex
🌿 It's Hacker News in your terminal
Stars: ✭ 43 (-95.35%)
Mutual labels:  tui
paruz
A fzf terminal UI for paru or pacman
Stars: ✭ 29 (-96.86%)
Mutual labels:  tui
gocket
💼 CLI / TUI for Pocket
Stars: ✭ 39 (-95.78%)
Mutual labels:  tui
uncursed
A blessed fixed greased +3 terminal library
Stars: ✭ 23 (-97.51%)
Mutual labels:  tui
jira-cli
🔥 [WIP] Feature-rich interactive Jira command line.
Stars: ✭ 809 (-12.45%)
Mutual labels:  tui
YouPlot
A command line tool that draw plots on the terminal.
Stars: ✭ 412 (-55.41%)
Mutual labels:  tui
dots
🌀 my linux configuration
Stars: ✭ 66 (-92.86%)
Mutual labels:  tui
RecoverPy
🙈 Interactively find and recover deleted or 👉 overwritten 👈 files from your terminal
Stars: ✭ 189 (-79.55%)
Mutual labels:  tui
pexpo
💻 Terminal sending ping tool written in Go.
Stars: ✭ 89 (-90.37%)
Mutual labels:  tui
revi
A modal text editor inspired by Vim, Neovim and others like it.
Stars: ✭ 27 (-97.08%)
Mutual labels:  tui
TUI
Terminal user interface library. Works on *NIX and Windows systems
Stars: ✭ 32 (-96.54%)
Mutual labels:  tui

Monotty Desktopio

Text-based desktop environment inside your terminal*

image

* Terminal Requirements

Tested Terminals

Demo

Demo on YouTube

Live SSH

Video

Supported Platforms

  • POSIX-oriented
    • Linux
    • macOS
    • FreeBSD
    • NetBSD
    • OpenBSD
    • ...
  • Windows
    • Windows 10 or later
    • Windows Server 2019 or later

Building from Source

POSIX-oriented

Build-time dependencies

  • git
  • cmake
  • gcc or clang with support for C++20
git clone https://github.com/netxs-group/vtm.git && cd ./vtm
cmake ./src -DCMAKE_BUILD_TYPE=Release
cmake --build .
cmake --install .

Windows

Build-time dependencies

  • git
  • cmake
  • Visual Studio 2019

Use Developer Command Prompt for VS 2019 as a build environment

git clone https://github.com/netxs-group/vtm.git && cd ./vtm
cmake ./src -DCMAKE_BUILD_TYPE=Release "-GVisual Studio 16 2019"
cmake --build . --config Release
cd ./Release
powershell ../src/install/install.ps1

Binaries







Command Line Options vtm(.exe)

Option Description
No arguments Run client (auto start server)
-d Run server in background
-s Run server in interactive mode

User Interface

Sidebar App window Desktop
App group Running app User list ≡ Menu Menu bar Interior Resize grips Navigation strings Free space
Ctrl + PgUp/Dn Switch between running apps and assign exclusive keyboard focus
LeftClick Run app Go to app Maximize/restore Assign exclusive keyboard focus Go to app Clear keyboard focus
Ctrl + LeftClick Assign/clear group keyboard focus
double LeftClick Maximize/restore app window
RightClick Set default app Center app window Toggle menu height Center app window
Left+Right or MiddleClick Close app
LeftDrag Adjust sidebar width Move app window Panoramic workspace scrolling
RightDrag Panoramic content scrolling Run default app
MiddleDrag Run default app
Left+RightDrag Panoramic workspace scrolling
Ctrl+RightDrag or Ctrl+MiddleDrag Copy selected area to clipboard, OSC 52
Wheel Vertical scrolling
Shift+Wheel or Ctrl+Wheel Horizontal scrolling

Built-in Applications

  • ▀▄ Term Terminal emulator
  • ▀▄ Logs Debug output console
  • ▀▄ View Workspace navigation helper
  • ▀▄ Tile Tiling window manager
show details...

  • ▀▄ Term

    • UTF-8 Everywhere

    • Unicode clustering

    • TrueColor/256-color support

    • Auto-wrap mode DECAWM (with horizontal scrolling)

    • Focus tracking DECSET 1004

    • Bracketed paste mode DECSET 2004

    • SGR attributes: overline, double underline, strikethrough, and others

    • Save/restore terminal window title XTWINOPS 22/23

    • Mouse tracking DECSET 1000/1002/1003/1006 SGR mode

    • Mouse tracking DECSET 10060 Extended SGR mode, mouse reporting outside of the terminal viewport (outside + negative arguments) #62

    • Configurable using VT-sequences

      Name Sequence Description
      CCC_SBS CSI 24 : n : m p Set scrollback buffer size, int32_t
      n Initial buffer size in lines; 0 — grow step is used for initial size; default (if omitted) is 20.000
      m Grow step for unlimited buffer; default (if omitted) is 0 — for fixed size buffer
      CCC_RST CSI 1 p Reset all parameters to default
      CCC_TBS CSI 5 : n p Set tabulation length
      n Length in chars, max = 256, default is 8
      CCC_JET CSI 11 : n p Set text alignment, default is Left
      n = 0 default
      n = 1 Left
      n = 2 Right
      n = 3 Center
      CCC_WRP CSI 12 : n p Set text autowrap mode, default is On
      n = 0 default
      n = 1 On
      n = 2 Off (enable horizontal scrolling)
      CCC_RTL CSI 13 : n p Set text right-to-left mode, default is Off
      n = 0 default
      n = 1 On
      n = 2 Off
  • ▀▄ Logs

    • Debug output console. Use double RightClick to clear scrollback.
  • ▀▄ View

    • Serves for quick navigation through the desktop space using cyclic selection (left click on group title) in the View group on the taskbar.
  • ▀▄ Tile

    • Supports Drag and Drop for panes (like tabs in a browser).
    • Use any modifier (Ctrl or Alt) while pane dragging to disable drag&drop mode.
    • List of panes (outside the right side of the window)
      • LeftClick -- Set exclusive focus (highlighted by color)
      • Ctrl+LeftClick -- Set group focus (highlighted by color)
      • double LeftClick -- Maxixmize/restore
      • Left+Right or MiddleClick -- Terminate application
    • Tiling window manager preconfigurable using environment variable VTM_PROFILE....
      # Configuration example:
      
      VTM_PROFILE_1='"Menu label 1", "Window Title 1", h1:2( v1:1("bash -c htop", "bash -c mc"), "bash")'
      VTM_PROFILE_2='"Menu label 2", "Window Title 2", h( v("bash -c htop", "bash -c mc"), "bash")'
      

Related Repositories

Desktopio Framework Documentation


HitCount Twitter handle

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].