当前位置: 首页>>代码示例>>Python>>正文


Python sublime.PhantomSet方法代码示例

本文整理汇总了Python中sublime.PhantomSet方法的典型用法代码示例。如果您正苦于以下问题:Python sublime.PhantomSet方法的具体用法?Python sublime.PhantomSet怎么用?Python sublime.PhantomSet使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在sublime的用法示例。


在下文中一共展示了sublime.PhantomSet方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __init__

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def __init__(self, component: Union[span, div], view: sublime.View, region: sublime.Region, layout: int = sublime.LAYOUT_INLINE) -> None:
		super().__init__(component, view)
		self.cachedPhantom = None #type: Optional[sublime.Phantom]
		self.region = region
		self.layout = layout
		self.view = view

		self.set = sublime.PhantomSet(self.view)

		Phantom.id += 1

		# we use the region to track where we should place the new phantom so if text is inserted the phantom will be redrawn in the correct place
		self.region_id = 'phantom_{}'.format(Phantom.id)
		self.view.add_regions(self.region_id, [self.region], flags=sublime.DRAW_NO_FILL)
		self.update()
		_renderables_add.append(self) 
开发者ID:daveleroy,项目名称:sublime_debugger,代码行数:18,代码来源:render.py

示例2: show

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def show(view, marker, as_phantom=False):
    "Displays Emmet abbreviation as a preview for given view"
    content = None
    buffer_id = view.buffer_id()

    try:
        content = format_snippet(marker.preview())
    except Exception as e:
        content = '<div class="error">%s</div>' % format_snippet(str(e))

    if content:
        if as_phantom:
            if buffer_id not in phantom_sets_by_buffer:
                phantom_set = sublime.PhantomSet(view, 'emmet')
                phantom_sets_by_buffer[buffer_id] = phantom_set
            else:
                phantom_set = phantom_sets_by_buffer[buffer_id]

            r = sublime.Region(marker.region.end(), marker.region.end())
            phantoms = [sublime.Phantom(r, phantom_content(content), sublime.LAYOUT_INLINE)]
            phantom_set.update(phantoms)
        elif not view.is_popup_visible() or previews_by_buffer.get(buffer_id, None) != marker.abbreviation:
            previews_by_buffer[buffer_id] = marker.abbreviation
            view.show_popup(popup_content(content), sublime.COOPERATE_WITH_AUTO_COMPLETE, marker.region.begin(), 400, 300) 
开发者ID:emmetio,项目名称:sublime-text-plugin,代码行数:26,代码来源:preview.py

示例3: display_previews

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def display_previews(view, previews, pt=-1, current_index=0):
    global phantom_sets_by_buffer
    buffer_id = view.buffer_id()

    if (
        buffer_id in phantom_sets_by_buffer
        and pt != phantom_sets_by_buffer[buffer_id][1]
    ):
        return

    preview_html, preview_regions = generate_previews(previews, current_index)
    on_navigate = get_on_navigate(view, previews, current_index, pt)
    view.add_regions(
        "cfml_method_preview",
        merge_regions(preview_regions),
        "source",
        flags=sublime.DRAW_NO_FILL,
    )

    phantom_set = sublime.PhantomSet(view, "cfml_method_preview")
    phantom_sets_by_buffer[buffer_id] = (phantom_set, pt)
    phantom = sublime.Phantom(
        view.line(pt), preview_html, sublime.LAYOUT_BLOCK, on_navigate
    )
    phantom_set.update([phantom]) 
开发者ID:jcberquist,项目名称:sublimetext-cfml,代码行数:27,代码来源:method_preview.py

示例4: show_tag_preview

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def show_tag_preview(view: sublime.View, pt: int, text: str, dest: int):
    "Displays given tag preview at `pt` location"
    buffer_id = view.buffer_id()
    if buffer_id not in phantoms_by_buffer:
        phantom_set = sublime.PhantomSet(view, phantom_key)
        phantoms_by_buffer[buffer_id] = phantom_set
    else:
        phantom_set = phantoms_by_buffer[buffer_id]

    r = sublime.Region(pt, pt)
    nav = lambda href: go_to_pos(view, int(href))
    phantoms = [sublime.Phantom(r, phantom_content(text, dest), sublime.LAYOUT_INLINE, on_navigate=nav)]
    phantom_set.update(phantoms) 
开发者ID:emmetio,项目名称:sublime-text-plugin,代码行数:15,代码来源:go_to_tag_pair.py

示例5: mark

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def mark(self, view: sublime.View):
        "Marks tracker in given view"
        scope = emmet.get_settings('marker_scope', 'region.accent')
        mark_opt = sublime.DRAW_SOLID_UNDERLINE | sublime.DRAW_NO_FILL | sublime.DRAW_NO_OUTLINE
        view.erase_regions(ABBR_REGION_ID)
        view.add_regions(ABBR_REGION_ID, [self.region], scope, '', mark_opt)
        if self.forced:
            phantoms = [sublime.Phantom(self.region, forced_indicator('⋮>'), sublime.LAYOUT_INLINE)]
            if not self.forced_indicator:
                self.forced_indicator = sublime.PhantomSet(view, ABBR_REGION_ID)
            self.forced_indicator.update(phantoms) 
开发者ID:emmetio,项目名称:sublime-text-plugin,代码行数:13,代码来源:tracker.py

示例6: mark

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def mark(editor: sublime.View, tracker: AbbreviationTracker):
    "Marks tracker in given view"
    scope = get_settings('marker_scope', 'region.accent')
    mark_opt = sublime.DRAW_SOLID_UNDERLINE | sublime.DRAW_NO_FILL | sublime.DRAW_NO_OUTLINE
    editor.erase_regions(ABBR_REGION_ID)
    editor.add_regions(ABBR_REGION_ID, [tracker.region], scope, '', mark_opt)
    if isinstance(tracker, AbbreviationTrackerValid) and tracker.forced:
        phantoms = [
            sublime.Phantom(tracker.region, forced_indicator('⋮>'), sublime.LAYOUT_INLINE)
        ]

        key = editor.id()
        if key not in _forced_indicator:
            _forced_indicator[key] = sublime.PhantomSet(editor, ABBR_REGION_ID)
        _forced_indicator[key].update(phantoms) 
开发者ID:emmetio,项目名称:sublime-text-plugin,代码行数:17,代码来源:abbreviation.py

示例7: on_load_async

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def on_load_async(self, markdown_view):
        infos = markdown_view.settings().get(MARKDOWN_VIEW_INFOS)
        if not infos:
            return

        preview_view = markdown_view.window().active_view_in_group(1)

        self.phantom_sets[markdown_view.id()] = sublime.PhantomSet(preview_view)
        self._update_preview(markdown_view) 
开发者ID:math2001,项目名称:MarkdownLivePreview,代码行数:11,代码来源:MarkdownLivePreview.py

示例8: phantom_set

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def phantom_set(self) -> sublime.PhantomSet:
        return color_phantoms_by_view.setdefault(self.view.id(), sublime.PhantomSet(self.view, "lsp_color")) 
开发者ID:sublimelsp,项目名称:LSP,代码行数:4,代码来源:color.py

示例9: __init__

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def __init__(self, window: sublime.Window) -> None:
        self._window = window
        self._last_phantom_set = None  # type: 'Optional[sublime.PhantomSet]' 
开发者ID:sublimelsp,项目名称:LSP,代码行数:5,代码来源:diagnostics.py

示例10: apply_phantom

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def apply_phantom(self, view: sublime.View, diagnostic: Diagnostic) -> None:
        phantom_set = sublime.PhantomSet(view, "lsp_diagnostics")
        phantom = self.create_phantom(view, diagnostic)
        phantom_set.update([phantom])
        view.show_at_center(phantom.region)
        self._last_phantom_set = phantom_set
        has_phantom = view.settings().get('lsp_diagnostic_phantom')
        if not has_phantom:
            view.settings().set('lsp_diagnostic_phantom', True) 
开发者ID:sublimelsp,项目名称:LSP,代码行数:11,代码来源:diagnostics.py

示例11: __init__

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def __init__(self, view):
        super().__init__(view)
        self.phantom_set = sublime.PhantomSet(self.view, PHANTOM_KEY_ALL)
        self.pattern = None 
开发者ID:frou,项目名称:st3-gitblame,代码行数:6,代码来源:blame_all.py

示例12: __init__

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def __init__(self, view):
        super().__init__(view)
        self.phantom_set = sublime.PhantomSet(view, "git-blame") 
开发者ID:frou,项目名称:st3-gitblame,代码行数:5,代码来源:blame.py

示例13: show_preview

# 需要导入模块: import sublime [as 别名]
# 或者: from sublime import PhantomSet [as 别名]
def show_preview(self, view: sublime.View, as_phantom=None):
        "Displays expanded preview of abbreviation in current tracker in given view"
        if not emmet.get_settings('abbreviation_preview', True):
            return

        content = None

        if as_phantom is None:
            # By default, display preview for CSS abbreviation as phantom to not
            # interfere with default autocomplete popup
            as_phantom = self.config and self.config['type'] == 'stylesheet'

        if not self.abbreviation:
            # No parsed abbreviation: empty region
            pass
        if 'error' in self.abbreviation:
            # Display error snippet
            err = self.abbreviation['error']
            snippet = html.escape( re.sub(r'\s+at\s\d+$', '', err['message']), False)
            content = '<div class="error pointer">%s</div><div class="error message">%s</div>' % (err['pointer'], snippet)
        elif self.forced or as_phantom or not self.abbreviation['simple']:
            snippet = self.abbreviation['preview']
            if self.config['type'] != 'stylesheet':
                if syntax.is_html(self.config['syntax']):
                    snippet = html_highlight.highlight(snippet)
                else:
                    snippet = html.escape(snippet, False)
                content = '<div class="markup-preview">%s</div>' % format_snippet(snippet)
            else:
                content = format_snippet(snippet)

        if not content:
            self.hide_preview(view)
            return

        if as_phantom:
            if not self._phantom_preview:
                self._phantom_preview = sublime.PhantomSet(view, ABBR_PREVIEW_ID)

            r = sublime.Region(self.region.end(), self.region.end())
            phantoms = [sublime.Phantom(r, preview_phantom_html(content), sublime.LAYOUT_INLINE)]
            self._phantom_preview.update(phantoms)
        else:
            self._has_popup_preview = True
            view.show_popup(
                preview_popup_html(content),
                flags=sublime.COOPERATE_WITH_AUTO_COMPLETE,
                location=self.region.begin(),
                max_width=400,
                max_height=300) 
开发者ID:emmetio,项目名称:sublime-text-plugin,代码行数:52,代码来源:tracker.py


注:本文中的sublime.PhantomSet方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。