Skip to content

A powerful yet user-friendly cross-platform terminal emulator.

License

Notifications You must be signed in to change notification settings

ismail-yilmaz/Bobcat

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bobcat-icon

Fast Make Status Linux Build Status MacOS Build Status Windows Build Status License

Bobcat - Terminal Emulator

Bobcat is a modern, feature-rich terminal emulator that works across all major operating systems. It's built using the U++ framework and TerminalCtrl widget to create a powerful yet user-friendly command-line experience.

Table of Contents

  1. Features
  2. Requirements
  3. Installation
  4. ToDo
  5. Screenshots
  6. Videos
  7. Acknowledgements
  8. License

Features

For complete VT feature details, see TerminalCtrl's features list and technical specs document.

Core Capabilities

  • Runs smoothly on Linux, Windows, MacOS, and BSD systems
  • Very high compatibility with VT (DEC/ANSI) and xterm standards
  • Displays images right in your terminal: Supports both classic Sixel and modern formats (PNG, JPG, BMP, TIFF)
  • Smart shell integration that tracks your working directory
  • Powerful text selection and manipulation tools

Modern Terminal Features

  • Clickable hyperlinks and advanced clipboard handling
  • Support for emojis and rich text annotations
  • Full mouse support across all protocols
  • Customizable keyboard shortcuts
  • Vibrant color support (16, 256, and 24-bit colors)

Smart Tools

  • Finder: Advanced search engine with regular expression support and data extraction to CSV
  • Linkifier: Turn any text into clickable links using custom patterns
  • Smart Text Selection: Define your own selection patterns
  • QuickText: Easy access to frequently used commands and text

Customization & Interface

  • Create multiple profiles for different tasks
  • Choose between minimal and full-featured interfaces
  • Stack-based design with easy terminal management
  • Simple JSON configuration with immediate settings updates

Windows-Specific Features

  • Supports both ConPty and WinPty
  • No external environment dependencies required

Experimental Features

  • Web support: Access your terminal through any modern browser
  • Headless UI: Run on minimal systems using SDL2-GL

And yes, it can run Doom! 🎮

Requirements

Bobcat has minimal requirements. You'll need:

Installation

You can install Bobcat in three ways:

1. Via UppHub (Recommended)

  • Available through UppHub, U++'s package manager
  • Requires TheIDE (U++'s development environment)
    • Windows: Included in U++ installer
    • Linux: Available via Flathub or manual build

2. Using Make (Linux)

  • Uses pre-compiled umk (U++ make) for faster builds:

    1. make download
    2. make build or make build-web or make build-headless
    3. make run

3. Manual Setup

  • Clone or download the repository and set up as a U++ assembly/nest. See the U++ documentation for details.
  • Macro infrastructure, based on Upp::Esc scripting language.
  • A "lite" plugin framework.

Below you can find a handful of screenshots of Bobcat, running on Linux & Windows.

Bobcat on Linux

bobcat-linux

Bobcat on Windows

bobcat-windows

Bobcat, running zellij, with a background image of well..., a bobcat!

bobcat-zellij

Bobcat, running yazi, in borderless mode on Linux.

bobcat-yazi

Bobcat, running yazi with image preview feature on Windows bobcat-yazi2

Bobcat, running Neovim on Windows bobcat-nvim

Multiple terminal profile support (linux, btop)

bobcat-profiles

Inline images support (linux, jexer)

bobcat-sixel

Navigator (linux)

bobcat-navigator

Finder, in regex-based search mode (linux) bobcat-finder

Harvester, harvesting 124660 URLs from the buffer, and mapping them into a csv file (linux) bobcat-finder-harvester

Settings windows (linux)

bobcat-settings

Far manager running on Bobcat (Windows 10)

bobcat-far-manager

Bobcat deployed as a simple web server with access from web browsers (Linux)

bobcat-webgui1

Bobcat deployed as a simple web server with access from web browsers (Windows)

bobcat-webgui2

Bobcat running "headless" on SDL2 (GL) backend (Linux)

bobcat-headless

Doom, running on Bobcat, via mochadoom (Linux)

bobcat-mochadoom

A very short demonstration of Bobcat, running DOOM!

A very short demonstration of finder/harvester and unicode character (emoji) input.

To be written...

Copyright (c) 2023-2025, İsmail Yılmaz

Bobcat is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Bobcat is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for details. You should have received a copy of the GNU General Public License along with Bobcat. If not, see gnu licenses