public
Created

ST sort tabs (neater)

  • Download Gist
SortTabs.py
Python
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
import sublime, sublime_plugin, os
from operator import itemgetter
 
class SortTabsCommand(sublime_plugin.TextCommand):
def run(self, edit):
file_views = []
win = self.view.window()
curr_view = win.active_view()
for vw in win.views():
head, tail = os.path.split(vw.file_name())
group, _ = win.get_view_index(vw)
file_views.append((tail.lower(), vw, group))
file_views.sort(key = itemgetter(2, 0))
for index, (_, vw, group) in enumerate(file_views):
if not index or group > prev_group:
moving_index = 0
prev_group = group
else:
moving_index += 1
win.set_view_index(vw, group, moving_index)
win.focus_view(curr_view)

No added functionality, just slightly neater code.

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.