2016-05-08 4 views
2

Есть ли способ сделать Sublime Text 3 помнить ранее введенный поисковый запрос в «go to anything»?Запомнить поисковый запрос в Sublime Text 3

Я часто использую «перейти ко всему», чтобы перейти к номерам строк. Если Sublime Text может запомнить последний введенный запрос, мне не нужно будет помнить номер строки и снова ввести его.

Я уже знаком с функцией bookmarks, и это не альтернативное решение.

ответ

0

Вы можете использовать плагин, который сохраняет содержимое панели gotoAnything при ее изменении, а затем помещает содержимое на панель при ее открытии.

Базовый пример плагина:

import sublime, sublime_plugin 

class GotoAnythingSaver(sublime_plugin.EventListener): # Use EventListener 
    # In my case gotoAnything view id is 2. 

    def on_modified(self, view): # This is called when a view is modified (text changed) 
     if (view.id() == 2): # Save content 
      self.content = self.get_view_content(view) 

    def on_activated_async(self, view): # This is called when a view is activated 
     if view.id() == 2 and hasattr(self, 'content'): # Restore content if empty 
      if not self.get_view_content(view): 
       view.run_command('insert', {"characters":self.content}) 

    def get_view_content(self, view): 
     return view.substr(sublime.Region(0, view.size())) 

Чтобы сохранить меню Используйте Plugin Tools> Новый плагин, а затем сохранить его в данной папке (имя папки должно быть пользователя), используйте FileName GotoAnythingSaver. py.


Пример результата используется снова перейти к той же линии:

Sublime goto anything saver, a plugin that restores goto-anythin content


Edit: протестирован на Sublime Text 3 билда 3103 на Linux Mint и Windows, 10. О.П. говорит, что этот плагин оставляет все, что не работает, это не со мной, но будьте осторожны.

Я был бы признателен, если кто-то может проверить его или помочь мне, потому что я не уверен, что если идентификатор представления, связанного с Гото-Anything панели всегда 2.

+0

На второй ноте, добавив, этот плагин не сделал ничего но оставить все, что плохо функционирует. Я даже удалил плагин, и теперь «Перейти ко всему» не работает вообще. – Arete

+0

Ничего себе. Какую версию вы используете? Пожалуйста, используйте меню «Просмотр»> «Показать консоль», а затем попытайтесь открыть goto-anything и сообщить мне об ошибках, отображаемых консолью. – sergioFC

+0

Должно быть, я сделал что-то не так, потому что сегодня испытал это, и он отлично работает! Извините за задержку и большое спасибо за это решение! – Arete