资源简介

在sublime2的安装目录下新建Data文件夹,在Data文件夹下新建Packages文件夹,在Packages下放入tag。重启即可。

资源截图

代码片段和文件信息

import re sublime

class Tag():

def __init__(self):

Tag.regexp_is_valid = re.compile(“^[a-z0-9\:\-_]+$“ re.I);
Tag.regexp_self_closing_optional  = re.compile(“^l|\!|area|base|br|col|frame|hr|img|input|link|meta|param|command|embed|source|/?li|/?p)[^a-z]“ re.I);
Tag.regexp_self_closing  = re.compile(“^l|\!|area|base|br|col|frame|hr|img|input|link|meta|param|command|embed|source)[^a-z]“ re.I);
Tag.regexp_self_closing_xml    = re.compile(“^l|\!)[^a-z]“ re.I);
Tag.regexp_is_closing  = re.compile(“^<]+/>“ re.I);
Tag.xml_files = [item.lower() for item in [‘xhtml‘ ‘xml‘ ‘rdf‘ ‘xul‘ ‘svg‘ ‘xsd‘ ‘xslt‘‘tmTheme‘ ‘tmPreferences‘ ‘tmLanguage‘ ‘sublime-snippet‘ ‘opf‘ ‘ncx‘]]

def is_valid(self content):
return Tag.regexp_is_valid.match(content)

def is_self_closing(self content return_optional_tags = True is_xml= False):
if return_optional_tags:
if is_xml == False:
return Tag.regexp_self_closing.match(content) or Tag.regexp_is_closing.match(content)
else:
return Tag.regexp_is_closing.match(content) or Tag.regexp_self_closing_xml.match(content)
else:
if is_xml == False:
return Tag.regexp_self_closing_optional.match(content) or Tag.regexp_is_closing.match(content)
else:
return Tag.regexp_is_closing.match(content) or Tag.regexp_self_closing_xml.match(content)

def name(self content return_optional_tags = True is_xml = False):
if content[:1] == ‘/‘:
tag_name = content.split(‘/‘)[1].split(‘>‘)[0];
else:
tag_name = content.split(‘ ‘)[0].split(‘>‘)[0];
if self.is_valid(tag_name) and not self.is_self_closing(content return_optional_tags is_xml):
return tag_name
else:
return ‘‘

def is_closing(self content):
if content[:1] == ‘/‘ or Tag.regexp_is_closing.match(content):
return True
else:
return False

def view_is_xml(self view):
if view.settings().get(‘is_xml‘):
return True
else:
name = view.file_name()
if not name:
is_xml = ‘l‘ in view.substr(sublime.Region(0 50))
else:
name = (‘name.‘+name).split(‘.‘)
name.reverse()
name = name.pop(0).lower()
is_xml = name in Tag.xml_files or ‘l‘ in view.substr(sublime.Region(0 50))
view.settings().set(‘is_xml‘ is_xml)
return is_xml

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件         56  2012-09-18 18:19  Tag\.gitignore

     文件        255  2012-09-18 18:19  Tag\Close Tag On Slash\Default (Linux).sublime-keymap

     文件        255  2012-09-18 18:19  Tag\Close Tag On Slash\Default (OSX).sublime-keymap

     文件        255  2012-09-18 18:19  Tag\Close Tag On Slash\Default (Windows).sublime-keymap

     文件         83  2012-09-18 18:19  Tag\Insert As Tag\Commands.sublime-commands

     文件         69  2012-09-18 18:19  Tag\Insert As Tag\Default (Linux).sublime-keymap

     文件         69  2012-09-18 18:19  Tag\Insert As Tag\Default (OSX).sublime-keymap

     文件         69  2012-09-18 18:19  Tag\Insert As Tag\Default (Windows).sublime-keymap

     文件        924  2012-09-18 18:19  Tag\license.txt

     文件       2870  2012-09-18 18:19  Tag\Main.sublime-menu

     文件        141  2012-09-18 18:19  Tag\package-metadata.json

     文件       2879  2012-09-18 18:19  Tag\readme.md

     文件         75  2012-09-18 18:19  Tag\Tag Close Tag\Commands.sublime-commands

     文件         54  2012-09-18 18:19  Tag\Tag Close Tag\Default (Linux).sublime-keymap

     文件         61  2012-09-18 18:19  Tag\Tag Close Tag\Default (OSX).sublime-keymap

     文件         54  2012-09-18 18:19  Tag\Tag Close Tag\Default (Windows).sublime-keymap

     文件        190  2012-09-18 18:19  Tag\Tag Indent\Commands.sublime-commands

     文件        246  2012-09-18 18:19  Tag\Tag Indent\Context.sublime-menu

     文件         57  2012-09-18 18:19  Tag\Tag Indent\Default (Linux).sublime-keymap

     文件         57  2012-09-18 18:19  Tag\Tag Indent\Default (OSX).sublime-keymap

     文件         56  2012-09-18 18:19  Tag\Tag Indent\Default (Windows).sublime-keymap

     文件         87  2012-09-18 18:19  Tag\Tag Lint\Commands.sublime-commands

     文件        779  2012-09-18 18:19  Tag\Tag Package.sublime-settings

     文件        434  2012-09-18 18:19  Tag\Tag Remove\Commands.sublime-commands

     文件        542  2012-09-18 18:19  Tag\Tag Remove Attributes\Commands.sublime-commands

     文件       2301  2012-09-18 18:19  Tag\Tag.py

     文件       2834  2012-09-18 18:19  Tag\Tag.pyc

     文件       2238  2012-09-18 18:19  Tag\tag_close_tag.py

     文件       2245  2012-09-18 18:19  Tag\tag_close_tag.pyc

     文件       2686  2012-09-18 18:19  Tag\tag_close_tag_on_slash.py

............此处省略22个文件信息

评论

共有 条评论