2013-09-03 3 views
2

Рассмотрим это довольно общий случай: у вас есть огромный класс, вот так ...Как я могу перемещаться по уровню иерархии кода вверх?

class SuperMegaAwesomeClass(): 
    # ... 
    # several 
     # hundred 
     # lines 
    # of 
    # other code that's 
     # uninteresting 
     # irrelevant 
    # later 
    # ... 
    def ReallyGoodMethodThatIsPreciselyWhatYouNeedRightNow(omg, yes): 
    pass 

... и если вы используете Ctrl-Shift-R Really вы можете перейти прямо к ReallyGoodMethodThatIsPreciselyWhatYouNeedRightNow. Тем не менее, теперь вам нужно выяснить, как туда добраться, поэтому вы пытаетесь медленно и мучительно прокручивать страницу, чтобы не пропустить однострочный заголовок класса и, возможно, начать понимать, что люди, которым требуется 4 пробела на уровень отступов в Python возможно, после того, как были на что-то, возможно, возможно.

В любом случае. Sublime Text уже делает фальцовку кода для большинства языков, поэтому я полагаю, что не слишком странно предположить, что у него есть одна супермагистральная команда, позволяющая вам перейти на один уровень сгибания кода. Правильно? Потому что я не могу найти его под Ctrl-Shift-P.

Как я могу подскочить на один уровень в Sublime Text?

+0

+1 для определения функции :) – MattDMo

+1

курсор на функцию, и 'Ctrl-Shift-J' – Kabie

+0

Также рядом но не совсем: для правильных отступов файлов добавьте '" indent_guide_options ": [" draw_normal "," draw_active "]' к вашим пользовательским настройкам, затем поместите курсор в любом месте и прокрутите страницу до точки, где розовая пунктирная направляющая отступа становится сплошной серой еще раз. – badp

ответ

0

Вы можете создать простой плагин Python и KeyBinding сделать это:

  1. В меню Сервис выберите Developer -> Новый плагин ...
  2. Заменить содержимое новой вкладки с этим :

    import sublime 
    import sublime_plugin 
    
    
    class GoUpAnIndentLevelCommand(sublime_plugin.TextCommand): 
        def run(self, edit): 
         region = self.view.indented_region(self.view.sel()[0].begin()) 
         self.view.sel().clear() 
         self.view.sel().add(self.view.line(region.begin() - 1)) 
    
  3. сохранить его в папке ST наводит на мысль, как что-то вроде goupindentation.py

  4. В вашем файле привязок клавиш пользователя, добавить что-то вроде этого и сохранить его:

    { "keys": ["alt+'"], "command": "go_up_an_indent_level" }, 
    

 Смежные вопросы

  • Нет связанных вопросов^_^