Skip to content
This repository was archived by the owner on Oct 11, 2024. It is now read-only.

Commit ca9511e

Browse files
committed
(fix) 去除多行压缩时尾部的换行
+ 添加快捷压缩整个文档为一行
1 parent dbc33ed commit ca9511e

File tree

3 files changed

+34
-10
lines changed

3 files changed

+34
-10
lines changed

Context.sublime-menu

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,11 @@
1212
"command": "merge_css_in_document",
1313
"id": "merge_css_in_document"
1414
},
15+
{
16+
"caption": "压缩整个文档为一行",
17+
"command": "merge_css_in_document_one_line",
18+
"id": "merge_css_in_document_one_line"
19+
},
1520
{
1621
"caption": "-"
1722
},

Default (Windows).sublime-keymap

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,12 @@
1414
"ctrl+shift+alt+m"
1515
],
1616
"command": "merge_css_in_document"
17+
},{
18+
"keys": [
19+
"ctrl+shift+alt+m",
20+
"ctrl+shift+alt+l"
21+
],
22+
"command": "merge_css_in_document_one_line"
1723
},{
1824
"keys": [
1925
"ctrl+shift+e"

MergeCss.py

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,18 @@
44
import os, glob, re
55
import modeCSS.Lib
66

7+
setlists = {}
78
SETTINGS_FILE = "modeCSS.sublime-settings"
89
settings = sublime.load_settings(SETTINGS_FILE)
9-
setlists = {}
10-
setlists["notSel"] = settings.get("notSel","nonce")
11-
setlists["all_in_one"] = bool(settings.get("all_in_one",False))
12-
setlists["remove_semicolon"] = bool(settings.get("remove_semicolon",False))
13-
setlists["delete_comments"] = bool(settings.get("delete_comments",True))
14-
setlists["add_pic_time_suffix"] = bool(settings.get("add_pic_time_suffix",False))
15-
setlists["pic_time_suffix_extension"] = bool(settings.get("pic_time_suffix_extension",False))
16-
setlists["pic_version_str"] = settings.get("pic_version_str","v")
10+
11+
def get_default_set():
12+
setlists["notSel"] = settings.get("notSel","nonce")
13+
setlists["all_in_one"] = bool(settings.get("all_in_one",False))
14+
setlists["remove_semicolon"] = bool(settings.get("remove_semicolon",False))
15+
setlists["delete_comments"] = bool(settings.get("delete_comments",True))
16+
setlists["add_pic_time_suffix"] = bool(settings.get("add_pic_time_suffix",False))
17+
setlists["pic_time_suffix_extension"] = bool(settings.get("pic_time_suffix_extension",False))
18+
setlists["pic_version_str"] = settings.get("pic_version_str","v")
1719

1820
def merge_line(data, setlists):
1921
'''压缩样式'''
@@ -47,7 +49,7 @@ def merge_line(data, setlists):
4749
strinfo = re.compile(r'content:[\"|\'][; ]',re.I).sub('content:\"\";',strinfo) # 修正content引号缺失
4850
strinfo = re.compile(r';{2,}',re.I).sub(';',strinfo) # 删除多余空格
4951
strinfo = re.compile(r' {2,}',re.I).sub(' ',strinfo) # 删除多余空格
50-
strinfo = re.compile(r'} *',re.I).sub('}',strinfo) # 删除多余空格
52+
strinfo = re.compile(r' *} *',re.I).sub('}',strinfo) # 删除多余空格
5153

5254
if set_remove_semicolon: # 删除最后一个分号
5355
strinfo = re.compile(r';}',re.I).sub('}',strinfo)
@@ -72,7 +74,7 @@ def merge_line(data, setlists):
7274
reg = re.compile(r'(\[\[!\]\])',re.I)
7375
_strinfo_ = strinfo.split('[[!]]')
7476

75-
if _comments_:
77+
if len(_comments_) >1:
7678
string = ""
7779
for i in range(0, len(_comments_)):
7880
string += _strinfo_[i] +"\n"+ _comments_[i] +"\n"
@@ -118,12 +120,23 @@ class MergeCssInLineCommand(sublime_plugin.TextCommand):
118120
'''压缩当前样式定义'''
119121
def run(self, edit):
120122
view = self.view
123+
get_default_set()
121124
setlists["notSel"] = "nonce"
122125
merge_css(self, edit, setlists)
123126

124127
class MergeCssInDocumentCommand(sublime_plugin.TextCommand):
125128
'''压缩整个文档'''
126129
def run(self, edit):
127130
view = self.view
131+
get_default_set()
132+
setlists["notSel"] = "all"
133+
merge_css(self, edit, setlists)
134+
135+
class MergeCssInDocumentOneLineCommand(sublime_plugin.TextCommand):
136+
'''压缩整个文档为一行'''
137+
def run(self, edit):
138+
view = self.view
139+
get_default_set()
128140
setlists["notSel"] = "all"
141+
setlists["all_in_one"] = True
129142
merge_css(self, edit, setlists)

0 commit comments

Comments
 (0)