Code Monkey home page Code Monkey logo

room's Introduction

πŸ–€ room

A Zellij plugin for quickly searching and switching between tabs.

usage

Usage

  • Tab to cycle through tab list
  • Up and Down to cycle through tab list
  • Enter to switch to the selected tab
  • Start typing to filter the tab list
  • Esc or Ctrl + c to exit
  • Quick jump to a tab by pressing it's displayed number

To enable quick jumps, you need to set the config option for it to quick_jump true. The downside is that you won't be able to properly filter down tabs that have a number in their name.

Why?

I rename my tabs so once I have a lot of them I have to start counting and then press Ctrl + t then <tab num>. So I wanted something that let’s me type to filter the tab list and then press enter to jump to the selected tab.

Installation

Download room.wasm from the latest release

  • mkdir -p ~/.config/zellij/plugins/
  • mv room.wasm ~/.config/zellij/plugins/

You don't need to keep room.wasm at this specified location. It's just where I like to keep my zellij plugins.

Quick Install

mkdir -p ~/.config/zellij/plugins && \
  curl -L "https://github.com/rvcas/room/releases/latest/download/room.wasm" -o ~/.config/zellij/plugins/room.wasm

Keybinding

Add the following to your zellij config somewhere inside the keybinds section:

shared_except "locked" {
    bind "Ctrl y" {
        LaunchOrFocusPlugin "file:~/.config/zellij/plugins/room.wasm" {
            floating true
            ignore_case true
            quick_jump true
        }
    }
}

You likely already have a shared_except "locked" section in your configs. Feel free to add bind there.

The ignore_case defaults to false if absent. If set to true, filtering the tab names ignores the case of the filter string and the tab name.

Contributing

If you find any issues or want to suggest ideas please open an issue.

Development

Make sure you have rust installed then run:

zellij action new-tab --layout ./dev.kdl

room's People

Contributors

lucas-bogos avatar rvcas avatar sineptic avatar stchris avatar thompsy avatar vdbulcke avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

room's Issues

The β€œroom” plugin is not working. Can you please help me with this issue?

I have compiled the β€œroom” plugin as instructed in the manual and placed it in the plugins directory. However, despite following the configuration steps outlined in the manual, the plugin does not seem to be functioning correctly. I am using a Mac with an M1 chip and macOS version 13.5.1. Could you please assist me in troubleshooting this problem?
room_issue
config_file

Opening Floating Room Exposes Hidden Floating Pane

zellij version 0.39.2
room version 1.0

Whenever i have a hidden floating pane using (Ctrl + P) + W then using Room Ctrl + Y the hidden floating pane showed up behind the room floating pane, i need to hide it manually again every time i use room

I tried to change the keybind for room but it has the same effect as before, which mean there is no keybind collision.

Overflow/Hides items when the window is too small to show them all.

Hello room developers,

I use room when I develop in my preferred IDE IntelliJ. I have so around 19 tabs open in Zellij. When I use Zoom to switch between them, I only partial list of the tabs.

Here is a screenshot to describe it better:

CleanShot 2024-09-12 at 11 19 03@2x

On the top right, it shows SCROLL and the numbers increase/decrease when I press tab or the cursors.

Here are screenshots when I increase the window size:

  • CleanShot 2024-09-12 at 11 26 50@2x

  • CleanShot 2024-09-12 at 11 27 20@2x

Filtering works fine, when I start typing in letters...

CleanShot 2024-09-12 at 11 32 09@2x

Great plugin πŸ‘

Fuzzy search keybinding conflicts

Hi,

I've installed version 1.0.1 of room on zellij 0.40.1 with the following config:

copy_on_select true
simplified_ui true
theme "catppuccin-mocha"
default_shell "fish"
keybinds {
         locked {
                bind "Alt g" { SwitchToMode "Normal"; }
         }

         tab {
            bind "f" {
                 // Interatively find and switch to tabs
                LaunchOrFocusPlugin "file:~/.config/zellij/plugins/room.wasm" {
                    floating true;
                    ignore_case true;
                }
            }
         }

         shared_except "locked" {
                bind "Alt g" { SwitchToMode "locked"; }
         }
}

I want to call room with Ctrl+t f. It operates on tabs so it seems to make sense that it shows up under the tabs menu. This almost works but when I start typing a tab name, the keybindings for tab mode are still active. For example, if I type Ctrl+t f and then start typing "b" to search for tabs with the letter "b", the binding for "Break pane to new tab" is hit and my search is interrupted.

Any suggestions would be greatly appreciated.

Suggestion: add panes

As the title stated already: would it be possible to add a list of panes under each tab as well?
That would be fabulous for navigating fast through the whole zellij system running!

theme issue

I use cattpuccin theme and your plugin show this
Screenshot from 2024-08-06 16-17-11
with ugly selection color. What theme color you show and how I can change it?

Selection on number

Hi, I am not sure if this is possible or not, but can I just press my hotkey and tab number and move to that tab instead of selecting and then pressing Enter.
Behavior now
"Ctrl y" 1 "Enter" ---> Move to tab 1
Wanted behavior
"Ctrl y" 1 ---> Move to tab 1

I am not sure if it is already possible.

Can't build on nightly channel

I also try bump dependencies, but it's don't work.

error[E0635]: unknown feature stdsimd
--> /home/sineptic/.cargo/registry/src/index.crates.io-6f17d22bba15001f/ahash-0.7.6/src/lib.rs:33:42
|
33 | #![cfg_attr(feature = "stdsimd", feature(stdsimd))]
| ^^^^^^^

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.