def focus_st(): if get_setting('disable_focus_hack', False): return sublime_command = get_sublime_exe() if sublime_command is not None: platform = sublime.platform() plat_settings = get_setting(platform, {}) wait_time = plat_settings.get('keep_focus_delay', 0.5) # osx is a special snowflake if platform == 'osx': # sublime_command should be /path/to/Sublime Text.app/Contents/... sublime_app = sublime_command.split('/Contents/')[0] def keep_focus(): external_command([ 'osascript', '-e', 'tell application "{0}" to activate'.format(sublime_app) ], use_texpath=False) else: def keep_focus(): external_command([sublime_command], use_texpath=False) if hasattr(sublime, 'set_async_timeout'): sublime.set_async_timeout(keep_focus, int(wait_time * 1000)) else: sublime.set_timeout(keep_focus, int(wait_time * 1000))
def focus_st(): if get_setting('disable_focus_hack', False): return sublime_command = get_sublime_exe() if sublime_command is not None: platform = sublime.platform() plat_settings = get_setting(platform, {}) wait_time = plat_settings.get('keep_focus_delay', 0.5) # osx is a special snowflake if platform == 'osx': # sublime_command should be /path/to/Sublime Text.app/Contents/... sublime_app = sublime_command.split('/Contents/')[0] def keep_focus(): external_command( [ 'osascript', '-e', 'tell application "{0}" to activate'.format( sublime_app ) ], use_texpath=False ) else: def keep_focus(): external_command([sublime_command], use_texpath=False) if hasattr(sublime, 'set_async_timeout'): sublime.set_async_timeout(keep_focus, int(wait_time * 1000)) else: sublime.set_timeout(keep_focus, int(wait_time * 1000))
def focus_st(): sublime_command = get_sublime_exe() if sublime_command is not None: platform = sublime.platform() # TODO: this does not work on OSX # and I don't know why... if platform == 'osx': return plat_settings = get_setting(platform, {}) wait_time = plat_settings.get('keep_focus_delay', 0.5) def keep_focus(): startupinfo = None shell = False if platform == 'windows': startupinfo = subprocess.STARTUPINFO() startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW shell = _ST3 subprocess.Popen( sublime_command, startupinfo=startupinfo, shell=shell, env=os.environ ) if hasattr(sublime, 'set_async_timeout'): sublime.set_async_timeout(keep_focus, int(wait_time * 1000)) else: sublime.set_timeout(keep_focus, int(wait_time * 1000))
def wait_for_load(): if view.is_loading(): sublime.set_async_timeout(wait_for_load, 10) view.set_scratch(True) view.set_name(RTB_FILENAME) view.set_syntax_file(RTB_SYNTAX_FILE) view.settings().set('line_numbers', False)