Jak skonfigurować Sublime Text 2/3, aby używał bezpośredniej kolejności Ctrl + Tab i tworzył nowe karty po ostatniej?

103

Kiedy naciskam Ctrl + Tab, Ctrl + Shift + Tab lub Ctrl + W, karta, na którą się przełączam, nie jest tą, która jest blisko tej, na której byłem (jak bym chciał), ale inną. Kiedy naciskam Ctl + N, nowa karta jest tworzona tuż obok karty, na której jestem, podczas gdy zawsze chcę, aby była tworzona na końcu listy kart. Jak go skonfigurować, aby uzyskać pożądane zachowanie?

Ivan
źródło

Odpowiedzi:

203

Aby uzyskać zachowanie Ctrl+ Tabi Ctrl+ Shift+ Tab, możesz dodać następujące linie do swojego sublime-keymap:

{ "keys": ["ctrl+tab"], "command": "next_view" },
{ "keys": ["ctrl+shift+tab"], "command": "prev_view" }

Aby otworzyć sublime-keymap:

  1. kliknij „Preferencje”
  2. kliknij „Key Bindings”
  3. Zobaczysz dwa pliki ustawień, wybierz plik o nazwie „Użytkownik”
Miguelgraz
źródło
Dzięki. A co ze zmianą miejsca, w którym pojawia się nowa karta i gdzie się znajdę po zamknięciu karty?
Ivan
2
@Miguelgraz Zobacz moją odpowiedź na rozwiązanie dla nowego pliku.
skuroda
41
Dla osób, które nie wiedzą, jak bezpośrednio edytować sublime-keymap(jak ja): Kliknij Preferencje -> Wiązania klawiszy - Użytkownik. Skopiuj powyższy kod do pliku (w nawiasach)
Mathias711
8
1 mała uwaga dodatkowa, jeśli twój plik z przypisaniami klawiszy użytkownika jest całkowicie pusty, umieść powyższy kod między nimi: [tutaj ]. Po pewnym frustrującym nas w końcu się o tym dowiedzieliśmy, więc mam nadzieję, że pomoże to komuś w przyszłości.
Mathlight
1
@Breakthrough Co masz na myśli?
Jay
1

Z domyślnymi powiązaniami klawiszy, ControlPage Upi ControlPage Downpozwoli ci poruszać się odpowiednio w prawo i w lewo między otwartymi kartami w ich kolejności wizualnej. (Rozwiązanie do powiązania klawiszy replikuje tę funkcję przy użyciu preferowanych kluczy).

Ponieważ instalator pakietów jest teraz dołączony do Sublime Text, łatwo jest również dodać rozszerzenie MoveTab, które dodaje skróty ShiftControlPage Upi ShiftControlPage Downprzenosi bieżącą kartę w tej kolejności wizualnej.

Aby uzyskać dostęp do instalatora pakietów w Sublime Text 3 (w każdym razie w systemie Windows), wpisz ShiftControlp, a następnie Package Control: Install Package.

dureta
źródło
0

Możesz użyć wtyczki, aby uzyskać nowe zachowanie pliku, które chcesz.

import sublime_plugin

class MyNewFile(sublime_plugin.WindowCommand):
    def run(self):
        window = self.window
        view = window.new_file()
        active_group = window.active_group()
        views_in_group = window.views_in_group(active_group)
        window.set_view_index(view, active_group, len(views_in_group) - 1)

Zapisz powyższe w Packages/Userformacie <somename>.py. Następnie użyj polecenia my_new_filew swoim powiązaniu z klawiszami ctrl+n, ponieważ nie zdziwiłbym się, gdyby istniał już aplugin do zrobienia tego, ale jest to dość proste, więc łatwiej jest napisać to sam, niż przeszukiwać kontrolę pakietu :) Prawdopodobnie możesz stracić wtyczkę rób również to, czego chcesz ctrl+w, ale nie opisałeś zachowania, którego chciałeś.

skuroda
źródło
Opisałem zachowanie, które chcę dla Ctrl + W - zamknij aktywną kartę i przejdź do karty tuż obok (teraz zamyka aktywną kartę i przechodzi do innej karty, używając tej samej logiki, co domyślnie Ctrl + Tab ).
Ivan
Myślę, że github.com/facelessuser/TabsExtra zrobi, co chcesz. Wygląda na to, że logika domyślna znajduje się po prawej stronie. Nie korzystałem z wtyczki, ale z opisu wygląda to poprawnie.
skuroda