Permalink
Browse files

Merge branch 'dev'

  • Loading branch information...
2 parents 5d55fd7 + bc6cccb commit 201e1eb3cc106863559cb9c8f5b9ed62fb686aba @deepsweet deepsweet committed Apr 12, 2013
Showing with 2,505 additions and 2,318 deletions.
  1. +1 −0 .gitignore
  2. +42 −214 .svgo.yml
  3. +7 −2 .travis.yml
  4. +13 −0 CHANGELOG.md
  5. +6 −4 README.md
  6. +6 −4 README.ru.md
  7. +6 −16 docs/how-it-works/en.md
  8. +6 −16 docs/how-it-works/ru.md
  9. +0 −32 examples/fromFile.js
  10. +0 −37 examples/fromStream.js
  11. +0 −32 examples/fromString.js
  12. +31 −0 examples/test.js
  13. +12 −98 lib/svgo.js
  14. +241 −102 lib/svgo/coa.js
  15. +115 −108 lib/svgo/config.js
  16. +229 −221 lib/svgo/js2svg.js
  17. +97 −117 lib/svgo/jsAPI.js
  18. +0 −3 lib/svgo/plugins.js
  19. +18 −17 lib/svgo/svg2js.js
  20. +45 −12 lib/svgo/tools.js
  21. +6 −11 package.json
  22. +1 −1 plugins/_transforms.js
  23. +11 −1 plugins/cleanupAttrs.js
  24. +5 −1 plugins/cleanupEnableBackground.js
  25. +10 −1 plugins/cleanupIDs.js
  26. +11 −1 plugins/cleanupNumericValues.js
  27. +5 −1 plugins/collapseGroups.js
  28. +28 −18 plugins/convertColors.js
  29. +17 −1 plugins/convertPathData.js
  30. +7 −3 plugins/convertStyleToAttrs.js
  31. +18 −1 plugins/convertTransform.js
  32. +45 −0 plugins/mergePaths.js
  33. +5 −1 plugins/moveElemsAttrsToGroup.js
  34. +5 −1 plugins/moveGroupAttrsToElems.js
  35. +5 −1 plugins/removeComments.js
  36. +5 −1 plugins/removeDoctype.js
  37. +5 −1 plugins/removeEditorsNSData.js
  38. +5 −1 plugins/removeEmptyAttrs.js
  39. +5 −1 plugins/removeEmptyContainers.js
  40. +11 −1 plugins/removeEmptyText.js
  41. +22 −1 plugins/removeHiddenElems.js
  42. +5 −1 plugins/removeMetadata.js
  43. +5 −1 plugins/removeNonInheritableGroupAttrs.js
  44. +5 −1 plugins/removeRasterImages.js
  45. +12 −1 plugins/removeUnknownsAndDefaults.js
  46. +5 −1 plugins/removeUnusedNS.js
  47. +10 −1 plugins/removeUselessStrokeAndFill.js
  48. +5 −1 plugins/removeViewBox.js
  49. +5 −1 plugins/removeXMLProcInst.js
  50. +73 −16 plugins/{cropAndCenterAlongPath.js → transformsWithOnePath.js}
  51. +69 −118 test/config/_index.js
  52. +0 −4 test/config/config.yml
  53. +5 −0 test/mocha.opts
  54. +32 −55 test/plugins/_index.js
  55. +0 −3 test/plugins/cleanupAttrs.01.should.svg
  56. +6 −0 test/plugins/{cleanupAttrs.01.orig.svg → cleanupAttrs.01.svg}
  57. +0 −3 test/plugins/cleanupAttrs.02.should.svg
  58. +6 −0 test/plugins/{cleanupAttrs.02.orig.svg → cleanupAttrs.02.svg}
  59. +0 −3 test/plugins/cleanupEnableBackground.01.should.svg
  60. +6 −0 test/plugins/{cleanupEnableBackground.01.orig.svg → cleanupEnableBackground.01.svg}
  61. +0 −3 test/plugins/cleanupEnableBackground.02.orig.svg
  62. +0 −3 test/plugins/cleanupEnableBackground.02.should.svg
  63. +9 −0 test/plugins/cleanupEnableBackground.02.svg
  64. +0 −5 test/plugins/cleanupEnableBackground.03.should.svg
  65. +8 −0 test/plugins/{cleanupEnableBackground.03.orig.svg → cleanupEnableBackground.03.svg}
  66. +0 −18 test/plugins/cleanupIDs.01.should.svg
  67. +21 −0 test/plugins/{cleanupIDs.01.orig.svg → cleanupIDs.01.svg}
  68. +0 −6 test/plugins/cleanupIDs.02.orig.svg
  69. +0 −6 test/plugins/cleanupIDs.02.should.svg
  70. +15 −0 test/plugins/cleanupIDs.02.svg
  71. +0 −6 test/plugins/cleanupIDs.03.orig.svg
  72. +0 −6 test/plugins/cleanupIDs.03.should.svg
  73. +15 −0 test/plugins/cleanupIDs.03.svg
  74. +0 −218 test/plugins/cleanupIDs.04.should.svg
  75. +221 −0 test/plugins/{cleanupIDs.04.orig.svg → cleanupIDs.04.svg}
  76. +0 −3 test/plugins/cleanupNumericValues.01.should.svg
  77. +6 −0 test/plugins/{cleanupNumericValues.01.orig.svg → cleanupNumericValues.01.svg}
  78. +0 −3 test/plugins/collapseGroups.01.should.svg
  79. +6 −0 test/plugins/{collapseGroups.01.orig.svg → collapseGroups.01.svg}
  80. +0 −3 test/plugins/collapseGroups.02.should.svg
  81. +6 −0 test/plugins/{collapseGroups.02.orig.svg → collapseGroups.02.svg}
  82. +0 −7 test/plugins/collapseGroups.03.orig.svg
  83. +0 −3 test/plugins/collapseGroups.03.should.svg
  84. +6 −1 test/plugins/{collapseGroups.05.orig.svg → collapseGroups.03.svg}
  85. +0 −6 test/plugins/collapseGroups.04.should.svg
  86. +9 −0 test/plugins/{collapseGroups.04.orig.svg → collapseGroups.04.svg}
  87. +0 −6 test/plugins/collapseGroups.05.should.svg
  88. +17 −0 test/plugins/collapseGroups.05.svg
  89. +0 −6 test/plugins/collapseGroups.06.should.svg
  90. +9 −0 test/plugins/{collapseGroups.06.orig.svg → collapseGroups.06.svg}
  91. +0 −6 test/plugins/collapseGroups.07.should.svg
  92. +9 −0 test/plugins/{collapseGroups.07.orig.svg → collapseGroups.07.svg}
  93. +0 −3 test/plugins/convertColors.01.orig.svg
  94. +0 −3 test/plugins/convertColors.01.should.svg
  95. +9 −0 test/plugins/convertColors.01.svg
  96. +0 −3 test/plugins/convertColors.02.orig.svg
  97. +0 −3 test/plugins/convertColors.02.should.svg
  98. +9 −0 test/plugins/convertColors.02.svg
  99. +0 −17 test/plugins/convertPathData.01.should.svg
  100. +20 −0 test/plugins/{convertPathData.01.orig.svg → convertPathData.01.svg}
  101. +0 −8 test/plugins/convertPathData.02.should.svg
  102. +11 −0 test/plugins/{convertPathData.02.orig.svg → convertPathData.02.svg}
  103. +0 −17 test/plugins/convertPathData.03.should.svg
  104. +20 −0 test/plugins/{convertPathData.03.orig.svg → convertPathData.03.svg}
  105. +0 −8 test/plugins/convertPathData.04.should.svg
  106. +11 −0 test/plugins/{convertPathData.04.orig.svg → convertPathData.04.svg}
  107. +0 −3 test/plugins/convertPathData.05.should.svg
  108. +6 −0 test/plugins/{convertPathData.05.orig.svg → convertPathData.05.svg}
  109. +0 −15 test/plugins/convertPathData.06.should.svg
  110. +18 −1 test/plugins/{convertPathData.06.orig.svg → convertPathData.06.svg}
  111. +0 −9 test/plugins/convertPathData.07.should.svg
  112. +12 −0 test/plugins/{convertPathData.07.orig.svg → convertPathData.07.svg}
  113. +0 −13 test/plugins/convertPathData.08.should.svg
  114. +16 −0 test/plugins/{convertPathData.08.orig.svg → convertPathData.08.svg}
  115. +0 −7 test/plugins/convertPathData.09.should.svg
  116. +10 −0 test/plugins/{convertPathData.09.orig.svg → convertPathData.09.svg}
  117. +0 −3 test/plugins/convertPathData.10.should.svg
  118. +6 −0 test/plugins/{convertPathData.10.orig.svg → convertPathData.10.svg}
  119. +0 −5 test/plugins/convertPathData.11.should.svg
  120. +8 −0 test/plugins/{convertPathData.11.orig.svg → convertPathData.11.svg}
  121. +0 −3 test/plugins/convertStyleToAttrs.01.should.svg
  122. +6 −0 test/plugins/{convertStyleToAttrs.01.orig.svg → convertStyleToAttrs.01.svg}
  123. +0 −3 test/plugins/convertStyleToAttrs.02.should.svg
  124. +6 −0 test/plugins/{convertStyleToAttrs.02.orig.svg → convertStyleToAttrs.02.svg}
  125. +0 −8 test/plugins/convertTransform.01.should.svg
  126. +11 −0 test/plugins/{convertTransform.01.orig.svg → convertTransform.01.svg}
  127. +0 −7 test/plugins/convertTransform.02.should.svg
  128. +10 −0 test/plugins/{convertTransform.02.orig.svg → convertTransform.02.svg}
  129. +0 −8 test/plugins/convertTransform.03.should.svg
  130. +11 −0 test/plugins/{convertTransform.03.orig.svg → convertTransform.03.svg}
  131. +0 −9 test/plugins/convertTransform.04.should.svg
  132. +12 −0 test/plugins/{convertTransform.04.orig.svg → convertTransform.04.svg}
  133. +17 −0 test/plugins/mergePaths.01.svg
  134. +0 −8 test/plugins/moveElemsAttrsToGroup.01.should.svg
  135. +11 −0 test/plugins/{moveElemsAttrsToGroup.01.orig.svg → moveElemsAttrsToGroup.01.svg}
  136. +0 −8 test/plugins/moveElemsAttrsToGroup.02.should.svg
  137. +11 −0 test/plugins/{moveElemsAttrsToGroup.02.orig.svg → moveElemsAttrsToGroup.02.svg}
  138. +0 −9 test/plugins/moveElemsAttrsToGroup.03.orig.svg
  139. +0 −9 test/plugins/moveElemsAttrsToGroup.03.should.svg
  140. +21 −0 test/plugins/moveElemsAttrsToGroup.03.svg
  141. +0 −8 test/plugins/moveElemsAttrsToGroup.04.should.svg
  142. +11 −0 test/plugins/{moveElemsAttrsToGroup.04.orig.svg → moveElemsAttrsToGroup.04.svg}
  143. +0 −8 test/plugins/moveElemsAttrsToGroup.05.should.svg
  144. +11 −0 test/plugins/{moveElemsAttrsToGroup.05.orig.svg → moveElemsAttrsToGroup.05.svg}
  145. +0 −6 test/plugins/moveElemsAttrsToGroup.06.orig.svg
  146. +0 −6 test/plugins/moveElemsAttrsToGroup.06.should.svg
  147. +15 −0 test/plugins/moveElemsAttrsToGroup.06.svg
  148. +0 −6 test/plugins/moveGroupAttrsToElems.01.orig.svg
  149. +0 −6 test/plugins/moveGroupAttrsToElems.01.should.svg
  150. +15 −0 test/plugins/moveGroupAttrsToElems.01.svg
  151. +0 −6 test/plugins/moveGroupAttrsToElems.02.orig.svg
  152. +9 −0 test/plugins/{moveGroupAttrsToElems.02.should.svg → moveGroupAttrsToElems.02.svg}
  153. +0 −3 test/plugins/removeComments.01.should.svg
  154. +6 −0 test/plugins/{removeComments.01.orig.svg → removeComments.01.svg}
  155. +0 −4 test/plugins/removeComments.02.orig.svg
  156. +0 −4 test/plugins/removeComments.02.should.svg
  157. +11 −0 test/plugins/removeComments.02.svg
  158. +0 −3 test/plugins/removeDoctype.01.should.svg
  159. +6 −0 test/plugins/{removeDoctype.01.orig.svg → removeDoctype.01.svg}
  160. +0 −7 test/plugins/removeDoctype.02.orig.svg
  161. +0 −7 test/plugins/removeDoctype.02.should.svg
  162. +17 −0 test/plugins/removeDoctype.02.svg
  163. +0 −3 test/plugins/removeEditorsNSData.01.should.svg
  164. +6 −0 test/plugins/{removeEditorsNSData.01.orig.svg → removeEditorsNSData.01.svg}
  165. +0 −3 test/plugins/removeEmptyAttrs.01.should.svg
  166. +6 −0 test/plugins/{removeEmptyAttrs.01.orig.svg → removeEmptyAttrs.01.svg}
  167. +0 −3 test/plugins/removeEmptyContainers.01.should.svg
  168. +6 −0 test/plugins/{removeEmptyContainers.01.orig.svg → removeEmptyContainers.01.svg}
  169. +0 −5 test/plugins/removeEmptyContainers.02.should.svg
  170. +8 −0 test/plugins/{removeEmptyContainers.02.orig.svg → removeEmptyContainers.02.svg}
  171. +0 −3 test/plugins/removeEmptyText.01.should.svg
  172. +6 −0 test/plugins/{removeEmptyText.01.orig.svg → removeEmptyText.01.svg}
  173. +0 −3 test/plugins/removeEmptyText.02.should.svg
  174. +6 −0 test/plugins/{removeEmptyText.02.orig.svg → removeEmptyText.02.svg}
  175. +0 −3 test/plugins/removeEmptyText.03.should.svg
  176. +6 −0 test/plugins/{removeEmptyText.03.orig.svg → removeEmptyText.03.svg}
  177. +0 −3 test/plugins/removeHiddenElems.01.should.svg
  178. +6 −0 test/plugins/{removeHiddenElems.01.orig.svg → removeHiddenElems.01.svg}
  179. +0 −3 test/plugins/removeHiddenElems.02.should.svg
  180. +6 −0 test/plugins/{removeHiddenElems.02.orig.svg → removeHiddenElems.02.svg}
  181. +0 −3 test/plugins/removeHiddenElems.03.should.svg
  182. +6 −0 test/plugins/{removeHiddenElems.03.orig.svg → removeHiddenElems.03.svg}
  183. +0 −3 test/plugins/removeHiddenElems.04.should.svg
  184. +6 −0 test/plugins/{removeHiddenElems.04.orig.svg → removeHiddenElems.04.svg}
  185. +0 −3 test/plugins/removeHiddenElems.05.should.svg
  186. +6 −0 test/plugins/{removeHiddenElems.05.orig.svg → removeHiddenElems.05.svg}
  187. +0 −3 test/plugins/removeHiddenElems.06.should.svg
  188. +6 −0 test/plugins/{removeHiddenElems.06.orig.svg → removeHiddenElems.06.svg}
  189. +0 −3 test/plugins/removeHiddenElems.07.should.svg
  190. +6 −0 test/plugins/{removeHiddenElems.07.orig.svg → removeHiddenElems.07.svg}
  191. +0 −3 test/plugins/removeHiddenElems.08.should.svg
  192. +6 −0 test/plugins/{removeHiddenElems.08.orig.svg → removeHiddenElems.08.svg}
  193. +0 −3 test/plugins/removeHiddenElems.09.should.svg
  194. +6 −0 test/plugins/{removeHiddenElems.09.orig.svg → removeHiddenElems.09.svg}
  195. +0 −3 test/plugins/removeHiddenElems.10.should.svg
  196. +6 −0 test/plugins/{removeHiddenElems.10.orig.svg → removeHiddenElems.10.svg}
  197. +0 −3 test/plugins/removeMetadata.01.should.svg
  198. +6 −0 test/plugins/{removeMetadata.01.orig.svg → removeMetadata.01.svg}
  199. +0 −5 test/plugins/removeNonInheritableGroupAttrs.01.should.svg
  200. +8 −0 test/plugins/{removeNonInheritableGroupAttrs.01.orig.svg → removeNonInheritableGroupAttrs.01.svg}
  201. +0 −5 test/plugins/removeRasterImages.01.should.svg
  202. +8 −0 test/plugins/{removeRasterImages.01.orig.svg → removeRasterImages.01.svg}
  203. +0 −5 test/plugins/removeRasterImages.02.should.svg
  204. +8 −0 test/plugins/{removeRasterImages.02.orig.svg → removeRasterImages.02.svg}
  205. +0 −3 test/plugins/removeUnknownsAndDefaults.01.should.svg
  206. +6 −0 test/plugins/{removeUnknownsAndDefaults.01.orig.svg → removeUnknownsAndDefaults.01.svg}
  207. +0 −8 test/plugins/removeUnknownsAndDefaults.02.should.svg
  208. +11 −0 test/plugins/{removeUnknownsAndDefaults.02.orig.svg → removeUnknownsAndDefaults.02.svg}
  209. +0 −5 test/plugins/removeUnusedNS.01.should.svg
  210. +8 −0 test/plugins/{removeUnusedNS.01.orig.svg → removeUnusedNS.01.svg}
  211. +0 −5 test/plugins/removeUnusedNS.02.orig.svg
  212. +0 −5 test/plugins/removeUnusedNS.02.should.svg
  213. +13 −0 test/plugins/removeUnusedNS.02.svg
  214. +0 −7 test/plugins/removeUnusedNS.03.should.svg
  215. +10 −0 test/plugins/{removeUnusedNS.03.orig.svg → removeUnusedNS.03.svg}
  216. +0 −7 test/plugins/removeUnusedNS.04.orig.svg
  217. +0 −7 test/plugins/removeUnusedNS.04.should.svg
  218. +17 −0 test/plugins/removeUnusedNS.04.svg
  219. +0 −7 test/plugins/removeUnusedNS.05.should.svg
  220. +10 −0 test/plugins/{removeUnusedNS.05.orig.svg → removeUnusedNS.05.svg}
  221. +0 −7 test/plugins/removeUnusedNS.06.orig.svg
  222. +0 −7 test/plugins/removeUnusedNS.06.should.svg
  223. +17 −0 test/plugins/removeUnusedNS.06.svg
  224. +0 −6 test/plugins/removeUselessStrokeAndFill.01.should.svg
  225. +9 −0 test/plugins/{removeUselessStrokeAndFill.01.orig.svg → removeUselessStrokeAndFill.01.svg}
  226. +0 −5 test/plugins/removeUselessStrokeAndFill.02.should.svg
  227. +8 −0 test/plugins/{removeUselessStrokeAndFill.02.orig.svg → removeUselessStrokeAndFill.02.svg}
  228. +0 −3 test/plugins/removeViewBox.01.should.svg
  229. +6 −0 test/plugins/{removeViewBox.01.orig.svg → removeViewBox.01.svg}
  230. +0 −3 test/plugins/removeViewBox.02.orig.svg
  231. +0 −3 test/plugins/removeViewBox.02.should.svg
  232. +9 −0 test/plugins/removeViewBox.02.svg
  233. +0 −3 test/plugins/removeXMLProcInst.01.should.svg
  234. +6 −0 test/plugins/{removeXMLProcInst.01.orig.svg → removeXMLProcInst.01.svg}
  235. +0 −4 test/plugins/removeXMLProcInst.02.orig.svg
  236. +0 −4 test/plugins/removeXMLProcInst.02.should.svg
  237. +11 −0 test/plugins/removeXMLProcInst.02.svg
  238. +144 −275 test/svg2js/_index.js
View
@@ -4,3 +4,4 @@ html-report/
bin/svgo-profiling
*.sublime-*
*.log
+.DS_Store
View
256 .svgo.yml
@@ -1,216 +1,44 @@
-plugins:
-
- - name: removeDoctype
- active: true
- type: perItem
-
- - name: removeXMLProcInst
- active: true
- type: perItem
-
- - name: removeComments
- active: true
- type: perItem
-
- - name: removeMetadata
- active: true
- type: perItem
-
- - name: removeEditorsNSData
- active: true
- type: perItem
-
- - name: cleanupAttrs
- active: true
- type: perItem
- params:
- newlines: true
- trim: true
- spaces: true
-
- - name: convertStyleToAttrs
- active: true
- type: perItem
-
- - name: removeRasterImages
- active: false
- type: perItem
-
- - name: cleanupNumericValues
- active: true
- type: perItem
- params:
- floatPrecision: 3
- leadingZero: true
- defaultPx: true
-
- - name: convertColors
- active: true
- type: perItem
- params:
- names2hex: true
- rgb2hex: true
- shorthex: true
-
- - name: removeUnknownsAndDefaults
- active: true
- type: perItem
- params:
- SVGid: true
- unknownContent: true
- unknownAttrs: true
- defaultAttrs: true
-
- - name: removeNonInheritableGroupAttrs
- active: true
- type: perItem
-
- - name: removeUselessStrokeAndFill
- active: true
- type: perItem
- params:
- stroke: true
- fill: true
-
- - name: removeViewBox
- active: true
- type: perItem
-
- - name: cleanupEnableBackground
- active: true
- type: perItem
+# replace default config
+# full: true
- - name: removeHiddenElems
- active: true
- type: perItem
- params:
- displayNone: true
- opacity0: true
- circleR0: true
- ellipseRX0: true
- ellipseRY0: true
- rectWidth0: true
- rectHeight0: true
- patternWidth0: true
- patternHeight0: true
- imageWidth0: true
- imageHeight0: true
- pathEmptyD: true
- polylineEmptyPoints: true
- polygonEmptyPoints: true
-
- - name: removeEmptyText
- active: true
- type: perItem
- params:
- text: true
- tspan: true
- tref: true
-
- - name: moveElemsAttrsToGroup
- active: true
- type: perItemReverse
-
- - name: collapseGroups
- active: true
- type: perItemReverse
-
- - name: moveGroupAttrsToElems
- active: true
- type: perItemReverse
-
- - name: convertPathData
- active: true
- type: perItem
- params:
- applyTransforms: true
- straightCurves: true
- lineShorthands: true
- curveSmoothShorthands: true
- floatPrecision: 3
- removeUseless: true
- collapseRepeated: true
- leadingZero: true
- negativeExtraSpace: true
-
- - name: convertTransform
- active: true
- type: perItem
- params:
- convertToShorts: true
- floatPrecision: 3
- matrixToTransform: true
- shortTranslate: true
- shortScale: true
- shortRotate: true
- removeUseless: true
- collapseIntoOne: true
- leadingZero: true
- negativeExtraSpace: false
-
- - name: removeEmptyAttrs
- active: true
- type: perItem
-
- - name: removeEmptyContainers
- active: true
- type: perItemReverse
-
- - name: cleanupIDs
- active: true
- type: full
- params:
- remove: true
- minify: true
-
- - name: removeUnusedNS
- active: true
- type: full
-
- - name: cropAndCenterAlongPath
- active: false
- type: full
- params:
- hcrop: true
- vcenter: true
- floatPrecision: 3
- leadingZero: true
- negativeExtraSpace: true
-
-svg2js:
-
- strict: true
- trim: true
- normalize: true
- lowercase: true
- xmlns: true
- position: false
-
-js2svg:
+plugins:
- doctypeStart: "<!DOCTYPE"
- doctypeEnd: ">"
- procInstStart: "<?"
- procInstEnd: "?>"
- tagOpenStart: "<"
- tagOpenEnd: ">"
- tagCloseStart: "</"
- tagCloseEnd: ">"
- tagShortStart: "<"
- tagShortEnd: "/>"
- attrStart: "=\""
- attrEnd: "\""
- commentStart: "<!--"
- commentEnd: "-->"
- cdataStart: "<![CDATA["
- cdataEnd: "]]>"
- textStart: ""
- textEnd: ""
- indent: " "
- entities:
- "&": "&amp;"
- "'": "&apos;"
- "\"": "&quot;"
- ">": "&gt;"
- "<": "&lt;"
- pretty: false
+ # - name
+ #
+ # or:
+ # - name: false
+ # - name: true
+ #
+ # or:
+ # - name:
+ # param1: 1
+ # param2: 2
+
+ - removeDoctype
+ - removeXMLProcInst
+ - removeComments
+ - removeMetadata
+ - removeEditorsNSData
+ - cleanupAttrs
+ - convertStyleToAttrs
+ - removeRasterImages
+ - cleanupNumericValues
+ - convertColors
+ - removeUnknownsAndDefaults
+ - removeNonInheritableGroupAttrs
+ - removeUselessStrokeAndFill
+ - removeViewBox
+ - cleanupEnableBackground
+ - removeHiddenElems
+ - removeEmptyText
+ - moveElemsAttrsToGroup
+ - collapseGroups
+ - moveGroupAttrsToElems
+ - convertPathData
+ - convertTransform
+ - removeEmptyAttrs
+ - removeEmptyContainers
+ - mergePaths
+ - cleanupIDs
+ - removeUnusedNS
+ - transformsWithOnePath
View
@@ -3,12 +3,17 @@ language: node_js
node_js:
- 0.6
- 0.8
- - 0.9
+ - 0.10
+ - 0.11
+
+branches:
+ only:
+ - master
branches:
only:
- master
matrix:
allow_failures:
- - node_js: 0.9
+ - node_js: 0.11
View
@@ -1,3 +1,16 @@
+### [ [>](https://github.com/svg/svgo/tree/v0.3.0) ] 0.3.0 / 12.04.2013
+* global refactoring: getting rid of the many dependencies
+* new plugin [plugins/mergePaths](https://github.com/svg/svgo/blob/master/plugins/mergePaths.js)
+* new plugin [plugins/transformsWithOnePath](https://github.com/svg/svgo/blob/master/plugins/transformsWithOnePath.js) (renamed and featured `cropAndCenterAlongPath`)
+* config: replace default config with `full: true`
+* coa: JSON string as value of `--config`
+* coa: different types of Data URI strings (close [#105](https://github.com/svg/svgo/issues/105))
+* plugins/_transforms: allow spaces at the beginning of transform
+* Travis CI: Nodejs 0.10 & 0.11
+* `node.extend` → `whet.extend`
+* update `.gitignore`
+* update docs
+
### [ [>](https://github.com/svg/svgo/tree/v0.2.4) ] 0.2.4 / 05.04.2013
* new plugin [plugins/cropAndCenterAlongPath](https://github.com/svg/svgo/blob/master/plugins/cropAndCenterAlongPath.js) for the [Fontello](https://github.com/fontello) project
View
@@ -3,7 +3,7 @@
<img src="http://soulshine.in/svgo.svg" width="200" height="200" alt="logo"/>
-## SVGO v0.2.4 [![Build Status](https://secure.travis-ci.org/svg/svgo.png)](http://travis-ci.org/svg/svgo)
+## SVGO v0.3.0 [![Build Status](https://secure.travis-ci.org/svg/svgo.png)](http://travis-ci.org/svg/svgo)
**SVG O**ptimizer is a Nodejs-based tool for optimizing SVG vector graphics files.
![](https://mc.yandex.ru/watch/18431326)
@@ -43,6 +43,8 @@ Today we have:
* [ [>](https://github.com/svg/svgo/blob/master/plugins/moveGroupAttrsToElems.js) ] move some group attributes to the content elements
* [ [>](https://github.com/svg/svgo/blob/master/plugins/collapseGroups.js) ] collapse useless groups
* [ [>](https://github.com/svg/svgo/blob/master/plugins/removeRasterImages.js) ] remove raster images (disabled by default)
+* [ [>](https://github.com/svg/svgo/blob/master/plugins/mergePath.js) ] merge multiple Paths into one
+* [ [>](https://github.com/svg/svgo/blob/master/plugins/transformsWithOnePath.js) ] apply transforms, crop by real width, center vertical alignment and resize SVG with one Path inside
Want to know how it works and how to write your own plugin? [Of course you want to](https://github.com/svg/svgo/blob/master/docs/how-it-works/en.md).
@@ -64,10 +66,10 @@ Options:
-s STRING, --string=STRING : Input SVG data string
-f FOLDER, --folder=FOLDER : Input folder, optimize and rewrite all *.svg files
-o OUTPUT, --output=OUTPUT : Output file (by default the same as the input), "-" for STDOUT
- -c CONFIG, --config=CONFIG : Local config file
+ --config=CONFIG : Config file to extend or replace default
--disable=DISABLE : Disable plugin by name
--enable=ENABLE : Enable plugin by name
- --datauri : Output as Data URI base64 string
+ --datauri=DATAURI : Output as Data URI string (base64, URI encoded or unencoded)
--pretty : Make SVG pretty printed
Arguments:
@@ -116,7 +118,7 @@ Arguments:
## TODO
-* [v0.2.x](https://github.com/svg/svgo/issues?milestone=7&state=open)
+* [v0.3.x](https://github.com/svg/svgo/issues?milestone=7&state=open)
## License and copyrights
View
@@ -3,7 +3,7 @@
<img src="http://soulshine.in/svgo.svg" width="200" height="200" alt="logo"/>
-## SVGO v0.2.4 [![Build Status](https://secure.travis-ci.org/svg/svgo.png)](http://travis-ci.org/svg/svgo)
+## SVGO v0.3.0 [![Build Status](https://secure.travis-ci.org/svg/svgo.png)](http://travis-ci.org/svg/svgo)
**SVG** **O**ptimizer – это инструмент для оптимизации векторной графики в формате SVG, написанный на Node.js.
![](https://mc.yandex.ru/watch/18431326)
@@ -43,6 +43,8 @@ SVGO имеет расширяемую архитектуру, в которой
* [ [>](https://github.com/svg/svgo/blob/master/plugins/moveGroupAttrsToElems.js) ] перемещение некоторых атрибутов группы на элементы внутри
* [ [>](https://github.com/svg/svgo/blob/master/plugins/collapseGroups.js) ] схлопывание бесполезных групп `<g>`
* [ [>](https://github.com/svg/svgo/blob/master/plugins/removeRasterImages.js) ] удаление растровых изображений (выключено по умолчанию)
+* [ [>](https://github.com/svg/svgo/blob/master/plugins/mergePath.js) ] склеивание нескольких Path в одну кривую
+* [ [>](https://github.com/svg/svgo/blob/master/plugins/transformsWithOnePath.js) ] применение трансформаций, обрезка по реальной ширине, вертикальное выравнивание по центру и изменение размеров SVG с одним Path внутри
Хотите узнать, как это работает и как написать свой плагин? [Конечно же, да!](https://github.com/svg/svgo/blob/master/docs/how-it-works/ru.md).
@@ -64,10 +66,10 @@ Options:
-s STRING, --string=STRING : Input SVG data string
-f FOLDER, --folder=FOLDER : Input folder, optimize and rewrite all *.svg files
-o OUTPUT, --output=OUTPUT : Output file (by default the same as the input), "-" for STDOUT
- -c CONFIG, --config=CONFIG : Local config file
+ --config=CONFIG : Config file to extend or replace default
--disable=DISABLE : Disable plugin by name
--enable=ENABLE : Enable plugin by name
- --datauri : Output as Data URI base64 string
+ --datauri=DATAURI : Output as Data URI string (base64, URI encoded or unencoded)
--pretty : Make SVG pretty printed
Arguments:
@@ -116,7 +118,7 @@ Arguments:
## TODO
-* [v0.2.x](https://github.com/svg/svgo/issues?milestone=7&state=open)
+* [v0.3.x](https://github.com/svg/svgo/issues?milestone=7&state=open)
## Лицензия и копирайты
Oops, something went wrong.

0 comments on commit 201e1eb

Please sign in to comment.