Giter Club home page Giter Club logo

sublime-tabfilter's Introduction

Tab Filter

Tests

Tab Filter is a Sublime Text plugin for quickly switching between open tabs. Invoking Tab Filter brings up a "GoTo Anything"-like quick input showing your opened tabs for the current window, allowing you to quick filter on file names to rapidly switch amongst existing tabs.

Compatibility

This plugin is compatible with Sublime Text 4.

For Sublime Text 2 and 3 support, please see release 1.4 - still also avalable via Package Control, though no longer actively updated with new features.

Installation

Package Control

Tab Filter is also available through Package Control. To install, bring up the Command Palette (brought up using ctrl+shift+p on Linux / Windows or cmd+shift+p on OS X) and run the Package Control: Install Package command - now search for and select Tab Filter.

Manual

From within Sublime Text, go to the Preferences > Browse Pacakges menu; this should open up your file browser at the correct location for where your copy of Sublime text stores all packages.

From within this folder you can install...

Using git

You can install within the Packages folder opened by running the following from a terminal / console:

$ git clone git://github.com/robinmalburn/sublime-tabfilter.git 'Tab Filter'

Without git

To install without git, download the source code as a zip file and extract the contents to into a subfolder of the Packages folder called Tab Filter

Usage

Key Bindings

Tab Filter comes with two built in commands:

Note: All keybindings can be overriden via the keybindings options in Preferences > Package Settings > Tab Filter > Key Bindings - User

Standard

This command searches and filters across all open windows and groups, and has a default keymap on Linux, OSX and Windows of: alt+shift+p

Active Group

This command searches and filters just within the active group when using a split layout in Sublime Text. The default keymap for this command on Linux, OSX and Windows is: alt+shift+a

Command Palette

Tab Filter can also be activated via the Command Palette (brought up using ctrl+shift+p on Linux / Windows or cmd+shift+p on OS X) and typing Tab Filter

Settings

Additional configuration settings for Tab Filter can be altered via Preferences > Package Settings > Tab Filter > Settings - User

Captions

Tab Filter can be configured to show or hide additional captions relating to the state of each open tab. The captions include: Current File, Unsaved File, Unsaved Changes and Read Only. Captions are shown by default, but this behaviour can be changed by setting the show_captions setting to false.

Path/Filename Filtering

By default, Tab Filter only shows the basename of open tabs (where they're really files and not just buffers, of course). This configuration can be changed to instead show and therefore allow filtering by the full, non-common path of the file instead by changing the include_path option to true.

Preview Currently Selected Entry

By default, Tab Filter only focuses the tab if it gets selected. To always focus/preview the currently highlighted entry, set preview_tab to true. Note that this currently only works with a single group layout (no split window).

Group Caption

By default, Tab Filter only shows information about the filename being worked on, and optionally some meta information available via Path and Captions mentioned above. With this feature, for users who make heavy use of multi-pane layouts, you can now include an indicator of what group a tab belongs to, meaning you can easily see which pane a tab belongs in and differentiate between similarly named files open across different panes. Set show_group_caption to true to enable the feature. Note: Even if enabled, the feature will only display if there is more than one group, otherwise it's a fairly pointless caption to distract from the relevant information, since every group would be Group: 1 anyhow.

License

Released under MIT license.

sublime-tabfilter's People

Contributors

robinmalburn avatar themilkman avatar calmyournerves avatar gucce avatar

Stargazers

 avatar  avatar Sundar avatar Ben Frain avatar Chris McFarland avatar Taki.Joe avatar Errol Lloyd avatar Aidan Armstrong avatar Bálint Fülöp avatar Adnan Yunus avatar Adis Osmonov avatar  avatar Yury Shulaev avatar Andrew Stevens avatar  avatar meridianz avatar Brad Roepstorff avatar Dominik Konik avatar Aliaksei Kislou avatar  avatar  avatar Allen avatar Sean Zhu avatar Rae Liu avatar Theron Boerner avatar Pawel Barcik avatar Pierre Haufe avatar OpenCoderX avatar

Watchers

James Cloos avatar Michael Tunnell avatar  avatar  avatar

sublime-tabfilter's Issues

Duplicate Plugin

First, thanks for your effort on this plugin.

However there is already a plugin that does exactly the same thing (even with some improvements). You can check it here: https://github.com/phildopus/sublime-goto-open-file/

IMHO, instead of improving your plugin, you can contribute to that plugin. ST3 support and plugin submenu are current TODOs.

Request: Filter via More than just Filename

I wanted this kind of filter feature because I often have a lot of the same types of files that are the same filename but are in different folders. For example, I have todo.txt files separated into folders for organization.

Structure:

  • /todos/category-a/subcategory-a/todo.txt
  • /todos/category-b/subcategory-e/todo.txt
  • /todos/category-c/subcategory-d/todo.txt

The tab names become something like:
todo.txt - category-b/subcategory-e

I'd like to be able to filter via the folder differences in the name rather than the filenames.

Is this possible?

Is there a way to list the tabs in MRU order?

At first, thank you for the plugin!
Is there a way to list the tabs in MRU (most recently used) order? In such case, the behavior would be pretty close to the Ctrl+Tab list in VS Code, Cuda Text (when "ui_tab_switcher_dialog" is set to true), Notepad++ and many others!

plugin fails in SL3 on OSX

Traceback (most recent call last):
File "/Applications/Sublime Text.app/Contents/MacOS/sublime_plugin.py", line 526, in run_
return self.run()
File "/Users/alexezh/Library/Application Support/Sublime Text 3/Packages/Tab Filter/tabfilter.py", line 52, in run
window.show_quick_panel(tabs, self._on_done)
File "/Applications/Sublime Text.app/Contents/MacOS/sublime.py", line 299, in show_quick_panel
if len(items) > 0 and isinstance(items[0], list):
TypeError: object of type 'map' has no len()

Pane numbers

Thanks for the great plugin!
It would be great to have pane number available as a caption (for the first tab in each pane) or a delimiter in the list. I use many panes, and detecting where each pane starts/ends in the list is a bit difficult.

Automatically select the previously opened file

Hi there,

This plugin is really useful, thanks for it!

Right now, I really rely on the default behavior from the file picker of automatically selecting the previously opened file so that I can quickly switch between it and the file I'm currently editing.

I.e:

  1. I open file a
  2. I switch to file b using the tabfilter plugin
  3. I open tabfilter again while the file a has focus
  4. I should be able to press <enter> to go back to file a. If I repeat the process, I'll end up in file b a nd vice-versa.

Is it something that can be setup in tabfilter?

Thanks!

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.