spacevim/bundle/LeaderF-snippet/plugin/leaderf_snippet.py
JIe 2bb7059579
Some checks failed
Detach Plugins / check (FlyGrep.vim) (push) Has been cancelled
Detach Plugins / check (GitHub.vim) (push) Has been cancelled
Detach Plugins / check (JavaUnit.vim) (push) Has been cancelled
Detach Plugins / check (SourceCounter.vim) (push) Has been cancelled
Detach Plugins / check (cpicker.nvim) (push) Has been cancelled
Detach Plugins / check (dein-ui.vim) (push) Has been cancelled
Detach Plugins / check (git.vim) (push) Has been cancelled
Detach Plugins / check (iedit.vim) (push) Has been cancelled
Detach Plugins / check (scrollbar.vim) (push) Has been cancelled
Detach Plugins / check (vim-chat) (push) Has been cancelled
Detach Plugins / check (vim-cheat) (push) Has been cancelled
Detach Plugins / check (vim-todo) (push) Has been cancelled
Detach Plugins / check (xmake.vim) (push) Has been cancelled
test / Linux (nvim, nightly) (push) Has been cancelled
test / Linux (nvim, v0.3.8) (push) Has been cancelled
test / Linux (nvim, v0.4.0) (push) Has been cancelled
test / Linux (nvim, v0.4.2) (push) Has been cancelled
test / Linux (nvim, v0.4.3) (push) Has been cancelled
test / Linux (nvim, v0.4.4) (push) Has been cancelled
test / Linux (nvim, v0.5.0) (push) Has been cancelled
test / Linux (nvim, v0.5.1) (push) Has been cancelled
test / Linux (nvim, v0.6.0) (push) Has been cancelled
test / Linux (nvim, v0.6.1) (push) Has been cancelled
test / Linux (nvim, v0.7.0) (push) Has been cancelled
test / Linux (nvim, v0.7.2) (push) Has been cancelled
test / Linux (nvim, v0.8.0) (push) Has been cancelled
test / Linux (nvim, v0.8.1) (push) Has been cancelled
test / Linux (nvim, v0.8.2) (push) Has been cancelled
test / Linux (nvim, v0.8.3) (push) Has been cancelled
test / Linux (nvim, v0.9.0) (push) Has been cancelled
test / Linux (nvim, v0.9.1) (push) Has been cancelled
test / Linux (true, vim, v7.4.052) (push) Has been cancelled
test / Linux (true, vim, v7.4.1689) (push) Has been cancelled
test / Linux (true, vim, v7.4.629) (push) Has been cancelled
test / Linux (true, vim, v8.0.0027) (push) Has been cancelled
test / Linux (true, vim, v8.0.0183) (push) Has been cancelled
test / Linux (vim, nightly) (push) Has been cancelled
test / Linux (vim, v8.0.0184) (push) Has been cancelled
test / Linux (vim, v8.0.1453) (push) Has been cancelled
test / Linux (vim, v8.1.2269) (push) Has been cancelled
test / Linux (vim, v8.2.2434) (push) Has been cancelled
test / Linux (vim, v8.2.3995) (push) Has been cancelled
test / Windows (nvim, nightly) (push) Has been cancelled
test / Windows (nvim, v0.3.8) (push) Has been cancelled
test / Windows (nvim, v0.4.2) (push) Has been cancelled
test / Windows (nvim, v0.4.3) (push) Has been cancelled
test / Windows (nvim, v0.4.4) (push) Has been cancelled
test / Windows (nvim, v0.5.0) (push) Has been cancelled
test / Windows (nvim, v0.5.1) (push) Has been cancelled
test / Windows (nvim, v0.6.0) (push) Has been cancelled
test / Windows (nvim, v0.6.1) (push) Has been cancelled
test / Windows (nvim, v0.7.0) (push) Has been cancelled
test / Windows (nvim, v0.7.2) (push) Has been cancelled
test / Windows (nvim, v0.8.0) (push) Has been cancelled
test / Windows (nvim, v0.8.1) (push) Has been cancelled
test / Windows (nvim, v0.8.2) (push) Has been cancelled
test / Windows (nvim, v0.8.3) (push) Has been cancelled
test / Windows (nvim, v0.9.0) (push) Has been cancelled
test / Windows (nvim, v0.9.1) (push) Has been cancelled
test / Windows (vim, nightly) (push) Has been cancelled
test / Windows (vim, v7.4.1185) (push) Has been cancelled
test / Windows (vim, v7.4.1689) (push) Has been cancelled
test / Windows (vim, v8.0.0027) (push) Has been cancelled
test / Windows (vim, v8.0.1453) (push) Has been cancelled
test / Windows (vim, v8.1.2269) (push) Has been cancelled
test / Windows (vim, v8.2.2434) (push) Has been cancelled
test / Windows (vim, v8.2.3995) (push) Has been cancelled
docker / docker (push) Has been cancelled
mirror / check (coding) (push) Has been cancelled
mirror / check (gitee) (push) Has been cancelled
mirror / check (gitlab) (push) Has been cancelled
init
2024-08-21 14:17:26 +08:00

87 lines
2.2 KiB
Python

#! /usr/bin/env python3
# -*- coding: utf-8 -*-
#======================================================================
#
# leaderf_snippet.py -
#
# Created by skywind on 2021/02/01
# Last Modified: 2021/02/01 17:48:09
#
#======================================================================
from __future__ import unicode_literals, print_function
import sys
import time
import re
import vim
def init():
# print('init2')
return 0
def usnip_query():
source = []
vim.eval('UltiSnips#SnippetsInCurrentScope()')
items = vim.eval('items(g:current_ulti_dict_info)')
from UltiSnips import UltiSnips_Manager
import UltiSnips
manager = UltiSnips.UltiSnips_Manager
snippets = UltiSnips.UltiSnips_Manager._snips('', True)
snippets_values = {}
for snippet in snippets:
key = snippet.trigger
desc = snippet._description
snippets_values[key] = snippet._value
size = 4
for item in items:
key = item[0]
info = item[1]
desc = info.get('description', '')
value = snippets_values.get(key, '<unknow>')
desc = desc.strip()
size = max(size, len(key))
if not desc:
desc = usnip_simplify(value)
# desc = ''
source.append([key, desc, '', usnip_clear(value)])
source.sort()
for item in source:
item[2] = item[0] + (' ' * (size - len(item[0])))
return source
def usnip_clear(text):
t = re.sub('`[^`]*`', '', text)
if t.strip() == '':
t = text
return t
def usnip_simplify(text):
t = re.sub('`[^`]*`', '', text)
if t.strip() == '':
t = text
text = '\n'.join(t.split("\n")[:5])
text = re.sub('\${[^{}]*}', '...', text)
text = re.sub('\${[^{}]*}', '...', text)
text = text.replace("\n", ' ; ')
text = re.sub('\s+', ' ', text)
return text[:100]
def usnip_digest(text):
return 0
def test():
source = usnip_query()
for item in source:
key = item[0]
if key == 'def' or 0:
value = item[3]
print(key, value)
print('---')
print(usnip_clear(value))
print('---')
print(usnip_simplify(value))
return 0