sublime_terminal_buffer.py 文件源码

python
阅读 19 收藏 0 点赞 0 评论 0

项目:TerminalView 作者: Wramberg 项目源码 文件源码
def __init__(self, sublime_view, title, syntax_file=None):
        self._view = sublime_view
        self._view.set_name(title)
        self._view.set_scratch(True)
        self._view.set_read_only(True)
        self._view.settings().set("gutter", False)
        self._view.settings().set("highlight_line", False)
        self._view.settings().set("auto_complete_commit_on_tab", False)
        self._view.settings().set("draw_centered", False)
        self._view.settings().set("word_wrap", False)
        self._view.settings().set("auto_complete", False)
        self._view.settings().set("draw_white_space", "none")
        self._view.settings().set("draw_indent_guides", False)
        self._view.settings().set("caret_style", "blink")
        self._view.settings().set("scroll_past_end", False)
        self._view.settings().add_on_change('color_scheme', lambda: set_color_scheme(self._view))

        if syntax_file is not None:
            self._view.set_syntax_file("Packages/User/" + syntax_file)

        # Mark in the views private settings that this is a terminal view so we
        # can use this as context in the keymap
        self._view.settings().set("terminal_view", True)

        settings = sublime.load_settings('TerminalView.sublime-settings')
        self._show_colors = settings.get("terminal_view_show_colors", False)
        self._right_margin = settings.get("terminal_view_right_margin", 3)
        self._bottom_margin = settings.get("terminal_view_bottom_margin", 0)

        # Use pyte as underlying terminal emulator
        hist = settings.get("terminal_view_scroll_history", 1000)
        ratio = settings.get("terminal_view_scroll_ratio", 0.5)
        self._term_emulator = pyte_terminal_emulator.PyteTerminalEmulator(80, 24, hist, ratio)

        self._keypress_callback = None
        self._view_content_cache = sublime_view_cache.SublimeViewContentCache()
        self._view_region_cache = sublime_view_cache.SublimeViewRegionCache()

        # Register the new instance of the sublime buffer class so other
        # commands can look it up when they are called in the same sublime view
        SublimeBufferManager.register(sublime_view.id(), self)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号