compass 0.13.alpha.12 → 1.0.0.alpha.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (538) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +61 -89
  3. data/VERSION +1 -0
  4. data/features/command_line.feature +1 -1
  5. data/features/step_definitions/command_line_steps.rb +0 -2
  6. data/lib/compass.rb +21 -2
  7. data/lib/compass/commands.rb +2 -0
  8. data/lib/compass/commands/print_version.rb +1 -12
  9. data/lib/compass/compiler.rb +1 -0
  10. data/lib/compass/configuration/adapters.rb +3 -0
  11. data/lib/compass/configuration/comments.rb +4 -1
  12. data/lib/compass/configuration/helpers.rb +1 -58
  13. data/lib/compass/configuration/serialization.rb +3 -0
  14. data/lib/compass/errors.rb +1 -3
  15. data/lib/compass/frameworks.rb +26 -4
  16. data/lib/compass/sass_extensions.rb +0 -1
  17. data/lib/compass/sass_extensions/functions.rb +2 -26
  18. data/lib/compass/sass_extensions/functions/sprites.rb +23 -23
  19. data/lib/compass/sass_extensions/sprites/image.rb +24 -29
  20. data/lib/compass/sprite_importer/content.erb +1 -1
  21. data/lib/compass/util.rb +1 -1
  22. data/lib/compass/version.rb +18 -35
  23. data/test/fixtures/stylesheets/compass/css/fonts.css +2 -2
  24. data/test/fixtures/stylesheets/envtest/tmp/env.css +2 -2
  25. data/test/fixtures/stylesheets/valid/css/another_simple.css +4 -0
  26. data/test/fixtures/stylesheets/valid/css/simple.css +4 -0
  27. data/test/integrations/sprites_test.rb +86 -79
  28. data/test/test_helper.rb +7 -5
  29. data/test/units/caniuse_test.rb +4 -4
  30. data/test/units/command_line_test.rb +5 -4
  31. data/test/units/configuration_test.rb +35 -2
  32. data/test/units/sass_extensions_test.rb +2 -2
  33. data/test/units/sass_extenstions/gradients_test.rb +3 -3
  34. data/test/units/sprites/sprite_map_test.rb +5 -2
  35. metadata +21 -506
  36. data/README.markdown +0 -30
  37. data/VERSION.yml +0 -6
  38. data/data/caniuse.json +0 -1
  39. data/data/caniuse_extras/css-placeholder.json +0 -171
  40. data/examples/README.markdown +0 -4
  41. data/examples/blueprint_default/config.rb +0 -7
  42. data/examples/blueprint_default/images/grid.png +0 -0
  43. data/examples/blueprint_default/index.html.haml +0 -85
  44. data/examples/blueprint_default/parts/elements.html.haml +0 -282
  45. data/examples/blueprint_default/parts/forms.html.haml +0 -200
  46. data/examples/blueprint_default/parts/grid.html.haml +0 -274
  47. data/examples/blueprint_default/parts/test-small.jpg +0 -0
  48. data/examples/blueprint_default/parts/test.jpg +0 -0
  49. data/examples/blueprint_default/parts/valid.png +0 -0
  50. data/examples/blueprint_default/src/ie.scss +0 -3
  51. data/examples/blueprint_default/src/images/grid.png +0 -0
  52. data/examples/blueprint_default/src/print.scss +0 -3
  53. data/examples/blueprint_default/src/screen.scss +0 -9
  54. data/examples/blueprint_plugins/config.rb +0 -8
  55. data/examples/blueprint_plugins/images/buttons/cross.png +0 -0
  56. data/examples/blueprint_plugins/images/buttons/key.png +0 -0
  57. data/examples/blueprint_plugins/images/buttons/tick.png +0 -0
  58. data/examples/blueprint_plugins/images/grid.png +0 -0
  59. data/examples/blueprint_plugins/images/link_icons/doc.png +0 -0
  60. data/examples/blueprint_plugins/images/link_icons/email.png +0 -0
  61. data/examples/blueprint_plugins/images/link_icons/external.png +0 -0
  62. data/examples/blueprint_plugins/images/link_icons/feed.png +0 -0
  63. data/examples/blueprint_plugins/images/link_icons/im.png +0 -0
  64. data/examples/blueprint_plugins/images/link_icons/pdf.png +0 -0
  65. data/examples/blueprint_plugins/images/link_icons/visited.png +0 -0
  66. data/examples/blueprint_plugins/images/link_icons/xls.png +0 -0
  67. data/examples/blueprint_plugins/images/test-small.jpg +0 -0
  68. data/examples/blueprint_plugins/images/test.jpg +0 -0
  69. data/examples/blueprint_plugins/images/valid.png +0 -0
  70. data/examples/blueprint_plugins/index.html.haml +0 -96
  71. data/examples/blueprint_plugins/plugins/buttons.html.haml +0 -67
  72. data/examples/blueprint_plugins/plugins/fancy_type.html.haml +0 -100
  73. data/examples/blueprint_plugins/plugins/link_icons.html.haml +0 -61
  74. data/examples/blueprint_plugins/plugins/rtl.html.haml +0 -100
  75. data/examples/blueprint_plugins/src/buttons.scss +0 -47
  76. data/examples/blueprint_plugins/src/ie.scss +0 -3
  77. data/examples/blueprint_plugins/src/images/grid.png +0 -0
  78. data/examples/blueprint_plugins/src/link_icons.scss +0 -13
  79. data/examples/blueprint_plugins/src/print.scss +0 -3
  80. data/examples/blueprint_plugins/src/rtl_screen.scss +0 -15
  81. data/examples/blueprint_plugins/src/screen.scss +0 -12
  82. data/examples/blueprint_scoped/images/grid.png +0 -0
  83. data/examples/blueprint_scoped/src/ie.scss +0 -4
  84. data/examples/blueprint_scoped/src/print.scss +0 -4
  85. data/examples/blueprint_scoped/src/screen.scss +0 -5
  86. data/examples/blueprint_scoped_form/images/grid.png +0 -0
  87. data/examples/blueprint_scoped_form/src/ie.scss +0 -3
  88. data/examples/blueprint_scoped_form/src/print.scss +0 -3
  89. data/examples/blueprint_scoped_form/src/screen.scss +0 -15
  90. data/examples/blueprint_semantic/config.rb +0 -7
  91. data/examples/blueprint_semantic/images/grid.png +0 -0
  92. data/examples/blueprint_semantic/index.html.haml +0 -86
  93. data/examples/blueprint_semantic/parts/fancy_type.html.haml +0 -100
  94. data/examples/blueprint_semantic/parts/liquid.html.haml +0 -100
  95. data/examples/blueprint_semantic/parts/test-small.jpg +0 -0
  96. data/examples/blueprint_semantic/parts/test.jpg +0 -0
  97. data/examples/blueprint_semantic/parts/valid.png +0 -0
  98. data/examples/blueprint_semantic/src/ie.scss +0 -3
  99. data/examples/blueprint_semantic/src/images/grid.png +0 -0
  100. data/examples/blueprint_semantic/src/liquid.scss +0 -69
  101. data/examples/blueprint_semantic/src/print.scss +0 -3
  102. data/examples/blueprint_semantic/src/screen.scss +0 -69
  103. data/examples/compass/bootstrap.rb +0 -4
  104. data/examples/compass/clean.rb +0 -2
  105. data/examples/compass/compass.html.haml +0 -39
  106. data/examples/compass/config.rb +0 -8
  107. data/examples/compass/headers.txt +0 -7
  108. data/examples/compass/images/blue_arrow.gif +0 -0
  109. data/examples/compass/images/border2.png +0 -0
  110. data/examples/compass/images/emblem/favorite.png +0 -0
  111. data/examples/compass/images/emblem/important.png +0 -0
  112. data/examples/compass/images/emblem/photos.png +0 -0
  113. data/examples/compass/images/emblem/readonly.png +0 -0
  114. data/examples/compass/images/emblem/symbolic-link.png +0 -0
  115. data/examples/compass/images/emblem/system.png +0 -0
  116. data/examples/compass/images/emblem/unreadable.png +0 -0
  117. data/examples/compass/images/flag/ad.png +0 -0
  118. data/examples/compass/images/flag/ae.png +0 -0
  119. data/examples/compass/images/flag/af.png +0 -0
  120. data/examples/compass/images/flag/ag.png +0 -0
  121. data/examples/compass/images/flag/ai.png +0 -0
  122. data/examples/compass/images/flag/al.png +0 -0
  123. data/examples/compass/images/flag/am.png +0 -0
  124. data/examples/compass/images/flag/an.png +0 -0
  125. data/examples/compass/images/flag/ao.png +0 -0
  126. data/examples/compass/images/flag/ar.png +0 -0
  127. data/examples/compass/images/flag/as.png +0 -0
  128. data/examples/compass/images/flag/at.png +0 -0
  129. data/examples/compass/images/flag/au.png +0 -0
  130. data/examples/compass/images/flag/aw.png +0 -0
  131. data/examples/compass/images/flag/ax.png +0 -0
  132. data/examples/compass/images/flag/az.png +0 -0
  133. data/examples/compass/images/flag/ba.png +0 -0
  134. data/examples/compass/images/flag/bb.png +0 -0
  135. data/examples/compass/images/flag/bd.png +0 -0
  136. data/examples/compass/images/flag/be.png +0 -0
  137. data/examples/compass/images/flag/bf.png +0 -0
  138. data/examples/compass/images/flag/bg.png +0 -0
  139. data/examples/compass/images/flag/bh.png +0 -0
  140. data/examples/compass/images/flag/bi.png +0 -0
  141. data/examples/compass/images/flag/bj.png +0 -0
  142. data/examples/compass/images/flag/bm.png +0 -0
  143. data/examples/compass/images/flag/bn.png +0 -0
  144. data/examples/compass/images/flag/bo.png +0 -0
  145. data/examples/compass/images/flag/br.png +0 -0
  146. data/examples/compass/images/flag/bs.png +0 -0
  147. data/examples/compass/images/flag/bt.png +0 -0
  148. data/examples/compass/images/flag/bv.png +0 -0
  149. data/examples/compass/images/flag/bw.png +0 -0
  150. data/examples/compass/images/flag/by.png +0 -0
  151. data/examples/compass/images/flag/bz.png +0 -0
  152. data/examples/compass/images/flag/ca.png +0 -0
  153. data/examples/compass/images/flag/catalonia.png +0 -0
  154. data/examples/compass/images/flag/cc.png +0 -0
  155. data/examples/compass/images/flag/cd.png +0 -0
  156. data/examples/compass/images/flag/cf.png +0 -0
  157. data/examples/compass/images/flag/cg.png +0 -0
  158. data/examples/compass/images/flag/ch.png +0 -0
  159. data/examples/compass/images/flag/ci.png +0 -0
  160. data/examples/compass/images/flag/ck.png +0 -0
  161. data/examples/compass/images/flag/cl.png +0 -0
  162. data/examples/compass/images/flag/cm.png +0 -0
  163. data/examples/compass/images/flag/cn.png +0 -0
  164. data/examples/compass/images/flag/co.png +0 -0
  165. data/examples/compass/images/flag/cr.png +0 -0
  166. data/examples/compass/images/flag/cs.png +0 -0
  167. data/examples/compass/images/flag/cu.png +0 -0
  168. data/examples/compass/images/flag/cv.png +0 -0
  169. data/examples/compass/images/flag/cx.png +0 -0
  170. data/examples/compass/images/flag/cy.png +0 -0
  171. data/examples/compass/images/flag/cz.png +0 -0
  172. data/examples/compass/images/flag/de.png +0 -0
  173. data/examples/compass/images/flag/dj.png +0 -0
  174. data/examples/compass/images/flag/dk.png +0 -0
  175. data/examples/compass/images/flag/dm.png +0 -0
  176. data/examples/compass/images/flag/do.png +0 -0
  177. data/examples/compass/images/flag/dz.png +0 -0
  178. data/examples/compass/images/flag/ec.png +0 -0
  179. data/examples/compass/images/flag/ee.png +0 -0
  180. data/examples/compass/images/flag/eg.png +0 -0
  181. data/examples/compass/images/flag/eh.png +0 -0
  182. data/examples/compass/images/flag/england.png +0 -0
  183. data/examples/compass/images/flag/er.png +0 -0
  184. data/examples/compass/images/flag/es.png +0 -0
  185. data/examples/compass/images/flag/et.png +0 -0
  186. data/examples/compass/images/flag/europeanunion.png +0 -0
  187. data/examples/compass/images/flag/fam.png +0 -0
  188. data/examples/compass/images/flag/fi.png +0 -0
  189. data/examples/compass/images/flag/fj.png +0 -0
  190. data/examples/compass/images/flag/fk.png +0 -0
  191. data/examples/compass/images/flag/fm.png +0 -0
  192. data/examples/compass/images/flag/fo.png +0 -0
  193. data/examples/compass/images/flag/fr.png +0 -0
  194. data/examples/compass/images/flag/ga.png +0 -0
  195. data/examples/compass/images/flag/gb.png +0 -0
  196. data/examples/compass/images/flag/gd.png +0 -0
  197. data/examples/compass/images/flag/ge.png +0 -0
  198. data/examples/compass/images/flag/gf.png +0 -0
  199. data/examples/compass/images/flag/gh.png +0 -0
  200. data/examples/compass/images/flag/gi.png +0 -0
  201. data/examples/compass/images/flag/gl.png +0 -0
  202. data/examples/compass/images/flag/gm.png +0 -0
  203. data/examples/compass/images/flag/gn.png +0 -0
  204. data/examples/compass/images/flag/gp.png +0 -0
  205. data/examples/compass/images/flag/gq.png +0 -0
  206. data/examples/compass/images/flag/gr.png +0 -0
  207. data/examples/compass/images/flag/gs.png +0 -0
  208. data/examples/compass/images/flag/gt.png +0 -0
  209. data/examples/compass/images/flag/gu.png +0 -0
  210. data/examples/compass/images/flag/gw.png +0 -0
  211. data/examples/compass/images/flag/gy.png +0 -0
  212. data/examples/compass/images/flag/hk.png +0 -0
  213. data/examples/compass/images/flag/hm.png +0 -0
  214. data/examples/compass/images/flag/hn.png +0 -0
  215. data/examples/compass/images/flag/hr.png +0 -0
  216. data/examples/compass/images/flag/ht.png +0 -0
  217. data/examples/compass/images/flag/hu.png +0 -0
  218. data/examples/compass/images/flag/id-2.png +0 -0
  219. data/examples/compass/images/flag/ie.png +0 -0
  220. data/examples/compass/images/flag/il.png +0 -0
  221. data/examples/compass/images/flag/in.png +0 -0
  222. data/examples/compass/images/flag/io.png +0 -0
  223. data/examples/compass/images/flag/iq.png +0 -0
  224. data/examples/compass/images/flag/ir.png +0 -0
  225. data/examples/compass/images/flag/is.png +0 -0
  226. data/examples/compass/images/flag/it.png +0 -0
  227. data/examples/compass/images/flag/jm.png +0 -0
  228. data/examples/compass/images/flag/jo.png +0 -0
  229. data/examples/compass/images/flag/jp.png +0 -0
  230. data/examples/compass/images/flag/ke.png +0 -0
  231. data/examples/compass/images/flag/kg.png +0 -0
  232. data/examples/compass/images/flag/kh.png +0 -0
  233. data/examples/compass/images/flag/ki.png +0 -0
  234. data/examples/compass/images/flag/km.png +0 -0
  235. data/examples/compass/images/flag/kn.png +0 -0
  236. data/examples/compass/images/flag/kp.png +0 -0
  237. data/examples/compass/images/flag/kr.png +0 -0
  238. data/examples/compass/images/flag/kw.png +0 -0
  239. data/examples/compass/images/flag/ky.png +0 -0
  240. data/examples/compass/images/flag/kz.png +0 -0
  241. data/examples/compass/images/flag/la.png +0 -0
  242. data/examples/compass/images/flag/lb.png +0 -0
  243. data/examples/compass/images/flag/lc.png +0 -0
  244. data/examples/compass/images/flag/li.png +0 -0
  245. data/examples/compass/images/flag/lk.png +0 -0
  246. data/examples/compass/images/flag/lr.png +0 -0
  247. data/examples/compass/images/flag/ls.png +0 -0
  248. data/examples/compass/images/flag/lt.png +0 -0
  249. data/examples/compass/images/flag/lu.png +0 -0
  250. data/examples/compass/images/flag/lv.png +0 -0
  251. data/examples/compass/images/flag/ly.png +0 -0
  252. data/examples/compass/images/flag/ma.png +0 -0
  253. data/examples/compass/images/flag/mc.png +0 -0
  254. data/examples/compass/images/flag/md.png +0 -0
  255. data/examples/compass/images/flag/me.png +0 -0
  256. data/examples/compass/images/flag/mg.png +0 -0
  257. data/examples/compass/images/flag/mh.png +0 -0
  258. data/examples/compass/images/flag/mk.png +0 -0
  259. data/examples/compass/images/flag/ml.png +0 -0
  260. data/examples/compass/images/flag/mm.png +0 -0
  261. data/examples/compass/images/flag/mn.png +0 -0
  262. data/examples/compass/images/flag/mo.png +0 -0
  263. data/examples/compass/images/flag/mp.png +0 -0
  264. data/examples/compass/images/flag/mq.png +0 -0
  265. data/examples/compass/images/flag/mr.png +0 -0
  266. data/examples/compass/images/flag/ms.png +0 -0
  267. data/examples/compass/images/flag/mt.png +0 -0
  268. data/examples/compass/images/flag/mu.png +0 -0
  269. data/examples/compass/images/flag/mv.png +0 -0
  270. data/examples/compass/images/flag/mw.png +0 -0
  271. data/examples/compass/images/flag/mx.png +0 -0
  272. data/examples/compass/images/flag/my.png +0 -0
  273. data/examples/compass/images/flag/mz.png +0 -0
  274. data/examples/compass/images/flag/na.png +0 -0
  275. data/examples/compass/images/flag/nc.png +0 -0
  276. data/examples/compass/images/flag/ne.png +0 -0
  277. data/examples/compass/images/flag/nf.png +0 -0
  278. data/examples/compass/images/flag/ng.png +0 -0
  279. data/examples/compass/images/flag/ni.png +0 -0
  280. data/examples/compass/images/flag/nl.png +0 -0
  281. data/examples/compass/images/flag/no.png +0 -0
  282. data/examples/compass/images/flag/np.png +0 -0
  283. data/examples/compass/images/flag/nr.png +0 -0
  284. data/examples/compass/images/flag/nu.png +0 -0
  285. data/examples/compass/images/flag/nz.png +0 -0
  286. data/examples/compass/images/flag/om.png +0 -0
  287. data/examples/compass/images/flag/pa.png +0 -0
  288. data/examples/compass/images/flag/pe.png +0 -0
  289. data/examples/compass/images/flag/pf.png +0 -0
  290. data/examples/compass/images/flag/pg.png +0 -0
  291. data/examples/compass/images/flag/ph.png +0 -0
  292. data/examples/compass/images/flag/pk.png +0 -0
  293. data/examples/compass/images/flag/pl.png +0 -0
  294. data/examples/compass/images/flag/pm.png +0 -0
  295. data/examples/compass/images/flag/pn.png +0 -0
  296. data/examples/compass/images/flag/pr.png +0 -0
  297. data/examples/compass/images/flag/ps.png +0 -0
  298. data/examples/compass/images/flag/pt.png +0 -0
  299. data/examples/compass/images/flag/pw.png +0 -0
  300. data/examples/compass/images/flag/py.png +0 -0
  301. data/examples/compass/images/flag/qa.png +0 -0
  302. data/examples/compass/images/flag/re.png +0 -0
  303. data/examples/compass/images/flag/ro.png +0 -0
  304. data/examples/compass/images/flag/rs.png +0 -0
  305. data/examples/compass/images/flag/ru.png +0 -0
  306. data/examples/compass/images/flag/rw.png +0 -0
  307. data/examples/compass/images/flag/sa.png +0 -0
  308. data/examples/compass/images/flag/sb.png +0 -0
  309. data/examples/compass/images/flag/sc.png +0 -0
  310. data/examples/compass/images/flag/scotland.png +0 -0
  311. data/examples/compass/images/flag/sd.png +0 -0
  312. data/examples/compass/images/flag/se.png +0 -0
  313. data/examples/compass/images/flag/sg.png +0 -0
  314. data/examples/compass/images/flag/sh.png +0 -0
  315. data/examples/compass/images/flag/si.png +0 -0
  316. data/examples/compass/images/flag/sj.png +0 -0
  317. data/examples/compass/images/flag/sk.png +0 -0
  318. data/examples/compass/images/flag/sl.png +0 -0
  319. data/examples/compass/images/flag/sm.png +0 -0
  320. data/examples/compass/images/flag/sn.png +0 -0
  321. data/examples/compass/images/flag/so.png +0 -0
  322. data/examples/compass/images/flag/sr.png +0 -0
  323. data/examples/compass/images/flag/st.png +0 -0
  324. data/examples/compass/images/flag/sv.png +0 -0
  325. data/examples/compass/images/flag/sy.png +0 -0
  326. data/examples/compass/images/flag/sz.png +0 -0
  327. data/examples/compass/images/flag/tc.png +0 -0
  328. data/examples/compass/images/flag/td.png +0 -0
  329. data/examples/compass/images/flag/tf.png +0 -0
  330. data/examples/compass/images/flag/tg.png +0 -0
  331. data/examples/compass/images/flag/th.png +0 -0
  332. data/examples/compass/images/flag/tj.png +0 -0
  333. data/examples/compass/images/flag/tk.png +0 -0
  334. data/examples/compass/images/flag/tl.png +0 -0
  335. data/examples/compass/images/flag/tm.png +0 -0
  336. data/examples/compass/images/flag/tn.png +0 -0
  337. data/examples/compass/images/flag/to.png +0 -0
  338. data/examples/compass/images/flag/tr.png +0 -0
  339. data/examples/compass/images/flag/tt.png +0 -0
  340. data/examples/compass/images/flag/tv.png +0 -0
  341. data/examples/compass/images/flag/tw.png +0 -0
  342. data/examples/compass/images/flag/tz.png +0 -0
  343. data/examples/compass/images/flag/ua.png +0 -0
  344. data/examples/compass/images/flag/ug.png +0 -0
  345. data/examples/compass/images/flag/um.png +0 -0
  346. data/examples/compass/images/flag/us.png +0 -0
  347. data/examples/compass/images/flag/uy.png +0 -0
  348. data/examples/compass/images/flag/uz.png +0 -0
  349. data/examples/compass/images/flag/va.png +0 -0
  350. data/examples/compass/images/flag/vc.png +0 -0
  351. data/examples/compass/images/flag/ve.png +0 -0
  352. data/examples/compass/images/flag/vg.png +0 -0
  353. data/examples/compass/images/flag/vi.png +0 -0
  354. data/examples/compass/images/flag/vn.png +0 -0
  355. data/examples/compass/images/flag/vu.png +0 -0
  356. data/examples/compass/images/flag/wales.png +0 -0
  357. data/examples/compass/images/flag/wf.png +0 -0
  358. data/examples/compass/images/flag/ws.png +0 -0
  359. data/examples/compass/images/flag/ye.png +0 -0
  360. data/examples/compass/images/flag/yt.png +0 -0
  361. data/examples/compass/images/flag/za.png +0 -0
  362. data/examples/compass/images/flag/zm.png +0 -0
  363. data/examples/compass/images/flag/zw.png +0 -0
  364. data/examples/compass/images/icon-chrome.png +0 -0
  365. data/examples/compass/images/icon-firefox.png +0 -0
  366. data/examples/compass/images/icon-ie.png +0 -0
  367. data/examples/compass/images/icon-opera.png +0 -0
  368. data/examples/compass/images/icon-safari.png +0 -0
  369. data/examples/compass/pie.html.haml +0 -73
  370. data/examples/compass/sprites.html.haml +0 -37
  371. data/examples/compass/src/bp_layout.scss +0 -18
  372. data/examples/compass/src/compass.scss +0 -46
  373. data/examples/compass/src/images/blue_arrow.gif +0 -0
  374. data/examples/compass/src/sprites.scss +0 -25
  375. data/examples/compass/src/sticky_footer.scss +0 -11
  376. data/examples/compass/src/utilities.scss +0 -108
  377. data/examples/compass/sticky_footer.html.haml +0 -14
  378. data/examples/compass/utilities.html.haml +0 -189
  379. data/examples/css3/bootstrap.rb +0 -3
  380. data/examples/css3/clean.rb +0 -2
  381. data/examples/css3/config.rb +0 -6
  382. data/examples/css3/extensions/fancy-fonts/templates/project/fancy-fonts.sass +0 -10
  383. data/examples/css3/extensions/fancy-fonts/templates/project/manifest.rb +0 -6
  384. data/examples/css3/gradients.html.haml +0 -68
  385. data/examples/css3/images/button_bg.png +0 -0
  386. data/examples/css3/images/example.png +0 -0
  387. data/examples/css3/index.html.haml +0 -57
  388. data/examples/css3/src/_base.scss +0 -13
  389. data/examples/css3/src/fancy-fonts.scss +0 -13
  390. data/examples/css3/src/gradients.scss +0 -86
  391. data/examples/css3/src/main.scss +0 -108
  392. data/examples/downloader.rb +0 -58
  393. data/examples/ninesixty/bootstrap.rb +0 -4
  394. data/examples/ninesixty/clean.rb +0 -2
  395. data/examples/ninesixty/config.rb +0 -10
  396. data/examples/ninesixty/src/grid.scss +0 -15
  397. data/examples/ninesixty/src/text.scss +0 -8
  398. data/examples/susy/bootstrap.rb +0 -3
  399. data/examples/susy/clean.rb +0 -2
  400. data/examples/susy/config.rb +0 -10
  401. data/examples/susy/src/_base.scss +0 -61
  402. data/examples/susy/src/_defaults.scss +0 -140
  403. data/examples/susy/src/screen.scss +0 -100
  404. data/examples/yui/bootstrap.rb +0 -3
  405. data/examples/yui/clean.rb +0 -2
  406. data/examples/yui/config.rb +0 -1
  407. data/examples/yui/divisions.html.haml +0 -179
  408. data/examples/yui/index.html.haml +0 -19
  409. data/examples/yui/src/screen.scss +0 -13
  410. data/examples/yui/sub_divisions.html.haml +0 -169
  411. data/examples/yui/templates.html.haml +0 -54
  412. data/examples/yui/test.jpg +0 -0
  413. data/examples/yui/typography.html.haml +0 -132
  414. data/frameworks/compass/stylesheets/_compass.scss +0 -3
  415. data/frameworks/compass/stylesheets/_lemonade.scss +0 -38
  416. data/frameworks/compass/stylesheets/compass/_css3.scss +0 -21
  417. data/frameworks/compass/stylesheets/compass/_layout.scss +0 -3
  418. data/frameworks/compass/stylesheets/compass/_reset-legacy.scss +0 -3
  419. data/frameworks/compass/stylesheets/compass/_reset.scss +0 -3
  420. data/frameworks/compass/stylesheets/compass/_support.scss +0 -432
  421. data/frameworks/compass/stylesheets/compass/_typography.scss +0 -4
  422. data/frameworks/compass/stylesheets/compass/_utilities.scss +0 -9
  423. data/frameworks/compass/stylesheets/compass/css3/_animation.scss +0 -122
  424. data/frameworks/compass/stylesheets/compass/css3/_appearance.scss +0 -17
  425. data/frameworks/compass/stylesheets/compass/css3/_background-clip.scss +0 -35
  426. data/frameworks/compass/stylesheets/compass/css3/_background-origin.scss +0 -37
  427. data/frameworks/compass/stylesheets/compass/css3/_background-size.scss +0 -19
  428. data/frameworks/compass/stylesheets/compass/css3/_border-radius.scss +0 -107
  429. data/frameworks/compass/stylesheets/compass/css3/_box-shadow.scss +0 -88
  430. data/frameworks/compass/stylesheets/compass/css3/_box-sizing.scss +0 -15
  431. data/frameworks/compass/stylesheets/compass/css3/_box.scss +0 -85
  432. data/frameworks/compass/stylesheets/compass/css3/_columns.scss +0 -210
  433. data/frameworks/compass/stylesheets/compass/css3/_deprecated-support.scss +0 -272
  434. data/frameworks/compass/stylesheets/compass/css3/_filter.scss +0 -50
  435. data/frameworks/compass/stylesheets/compass/css3/_flexbox.scss +0 -156
  436. data/frameworks/compass/stylesheets/compass/css3/_font-face.scss +0 -48
  437. data/frameworks/compass/stylesheets/compass/css3/_hyphenation.scss +0 -71
  438. data/frameworks/compass/stylesheets/compass/css3/_images.scss +0 -139
  439. data/frameworks/compass/stylesheets/compass/css3/_inline-block.scss +0 -31
  440. data/frameworks/compass/stylesheets/compass/css3/_opacity.scss +0 -23
  441. data/frameworks/compass/stylesheets/compass/css3/_pie.scss +0 -1
  442. data/frameworks/compass/stylesheets/compass/css3/_regions.scss +0 -27
  443. data/frameworks/compass/stylesheets/compass/css3/_selection.scss +0 -59
  444. data/frameworks/compass/stylesheets/compass/css3/_shared.scss +0 -5
  445. data/frameworks/compass/stylesheets/compass/css3/_text-shadow.scss +0 -82
  446. data/frameworks/compass/stylesheets/compass/css3/_transform.scss +0 -590
  447. data/frameworks/compass/stylesheets/compass/css3/_transition.scss +0 -171
  448. data/frameworks/compass/stylesheets/compass/css3/_user-interface.scss +0 -71
  449. data/frameworks/compass/stylesheets/compass/layout/_grid-background.scss +0 -178
  450. data/frameworks/compass/stylesheets/compass/layout/_sticky-footer.scss +0 -23
  451. data/frameworks/compass/stylesheets/compass/layout/_stretching.scss +0 -24
  452. data/frameworks/compass/stylesheets/compass/reset/_utilities-legacy.scss +0 -135
  453. data/frameworks/compass/stylesheets/compass/reset/_utilities.scss +0 -142
  454. data/frameworks/compass/stylesheets/compass/typography/_links.scss +0 -3
  455. data/frameworks/compass/stylesheets/compass/typography/_lists.scss +0 -4
  456. data/frameworks/compass/stylesheets/compass/typography/_text.scss +0 -4
  457. data/frameworks/compass/stylesheets/compass/typography/_units.scss +0 -152
  458. data/frameworks/compass/stylesheets/compass/typography/_vertical_rhythm.scss +0 -300
  459. data/frameworks/compass/stylesheets/compass/typography/links/_hover-link.scss +0 -5
  460. data/frameworks/compass/stylesheets/compass/typography/links/_link-colors.scss +0 -28
  461. data/frameworks/compass/stylesheets/compass/typography/links/_unstyled-link.scss +0 -7
  462. data/frameworks/compass/stylesheets/compass/typography/lists/_bullets.scss +0 -34
  463. data/frameworks/compass/stylesheets/compass/typography/lists/_horizontal-list.scss +0 -63
  464. data/frameworks/compass/stylesheets/compass/typography/lists/_inline-block-list.scss +0 -50
  465. data/frameworks/compass/stylesheets/compass/typography/lists/_inline-list.scss +0 -47
  466. data/frameworks/compass/stylesheets/compass/typography/text/_ellipsis.scss +0 -25
  467. data/frameworks/compass/stylesheets/compass/typography/text/_force-wrap.scss +0 -12
  468. data/frameworks/compass/stylesheets/compass/typography/text/_nowrap.scss +0 -2
  469. data/frameworks/compass/stylesheets/compass/typography/text/_replacement.scss +0 -68
  470. data/frameworks/compass/stylesheets/compass/utilities/_color.scss +0 -1
  471. data/frameworks/compass/stylesheets/compass/utilities/_general.scss +0 -6
  472. data/frameworks/compass/stylesheets/compass/utilities/_links.scss +0 -5
  473. data/frameworks/compass/stylesheets/compass/utilities/_lists.scss +0 -6
  474. data/frameworks/compass/stylesheets/compass/utilities/_print.scss +0 -17
  475. data/frameworks/compass/stylesheets/compass/utilities/_sprites.scss +0 -2
  476. data/frameworks/compass/stylesheets/compass/utilities/_tables.scss +0 -3
  477. data/frameworks/compass/stylesheets/compass/utilities/_text.scss +0 -5
  478. data/frameworks/compass/stylesheets/compass/utilities/color/_brightness.scss +0 -12
  479. data/frameworks/compass/stylesheets/compass/utilities/color/_contrast.scss +0 -52
  480. data/frameworks/compass/stylesheets/compass/utilities/general/_clearfix.scss +0 -44
  481. data/frameworks/compass/stylesheets/compass/utilities/general/_float.scss +0 -38
  482. data/frameworks/compass/stylesheets/compass/utilities/general/_hacks.scss +0 -65
  483. data/frameworks/compass/stylesheets/compass/utilities/general/_min.scss +0 -16
  484. data/frameworks/compass/stylesheets/compass/utilities/general/_reset.scss +0 -2
  485. data/frameworks/compass/stylesheets/compass/utilities/general/_tabs.scss +0 -1
  486. data/frameworks/compass/stylesheets/compass/utilities/general/_tag-cloud.scss +0 -18
  487. data/frameworks/compass/stylesheets/compass/utilities/links/_hover-link.scss +0 -3
  488. data/frameworks/compass/stylesheets/compass/utilities/links/_link-colors.scss +0 -3
  489. data/frameworks/compass/stylesheets/compass/utilities/links/_unstyled-link.scss +0 -3
  490. data/frameworks/compass/stylesheets/compass/utilities/lists/_bullets.scss +0 -3
  491. data/frameworks/compass/stylesheets/compass/utilities/lists/_horizontal-list.scss +0 -3
  492. data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-block-list.scss +0 -3
  493. data/frameworks/compass/stylesheets/compass/utilities/lists/_inline-list.scss +0 -3
  494. data/frameworks/compass/stylesheets/compass/utilities/sprites/_base.scss +0 -92
  495. data/frameworks/compass/stylesheets/compass/utilities/sprites/_sprite-img.scss +0 -81
  496. data/frameworks/compass/stylesheets/compass/utilities/tables/_alternating-rows-and-columns.scss +0 -22
  497. data/frameworks/compass/stylesheets/compass/utilities/tables/_borders.scss +0 -38
  498. data/frameworks/compass/stylesheets/compass/utilities/tables/_scaffolding.scss +0 -9
  499. data/frameworks/compass/stylesheets/compass/utilities/text/_ellipsis.scss +0 -3
  500. data/frameworks/compass/stylesheets/compass/utilities/text/_nowrap.scss +0 -3
  501. data/frameworks/compass/stylesheets/compass/utilities/text/_replacement.scss +0 -3
  502. data/frameworks/compass/templates/ellipsis/ellipsis.sass +0 -9
  503. data/frameworks/compass/templates/ellipsis/manifest.rb +0 -27
  504. data/frameworks/compass/templates/ellipsis/xml/ellipsis.xml +0 -14
  505. data/frameworks/compass/templates/extension/manifest.rb +0 -26
  506. data/frameworks/compass/templates/extension/stylesheets/main.sass +0 -1
  507. data/frameworks/compass/templates/extension/templates/project/manifest.rb +0 -2
  508. data/frameworks/compass/templates/extension/templates/project/screen.sass +0 -2
  509. data/frameworks/compass/templates/project/USAGE.markdown +0 -32
  510. data/frameworks/compass/templates/project/ie.sass +0 -6
  511. data/frameworks/compass/templates/project/manifest.rb +0 -4
  512. data/frameworks/compass/templates/project/print.sass +0 -6
  513. data/frameworks/compass/templates/project/screen.sass +0 -7
  514. data/lib/compass/browser_support.rb +0 -62
  515. data/lib/compass/caniuse.rb +0 -283
  516. data/lib/compass/configuration.rb +0 -91
  517. data/lib/compass/configuration/data.rb +0 -193
  518. data/lib/compass/configuration/defaults.rb +0 -187
  519. data/lib/compass/configuration/inheritance.rb +0 -304
  520. data/lib/compass/configuration/paths.rb +0 -19
  521. data/lib/compass/exec/switch_ui.rb +0 -179
  522. data/lib/compass/sass_extensions/functions/colors.rb +0 -67
  523. data/lib/compass/sass_extensions/functions/constants.rb +0 -74
  524. data/lib/compass/sass_extensions/functions/cross_browser_support.rb +0 -269
  525. data/lib/compass/sass_extensions/functions/display.rb +0 -32
  526. data/lib/compass/sass_extensions/functions/enumerate.rb +0 -7
  527. data/lib/compass/sass_extensions/functions/env.rb +0 -59
  528. data/lib/compass/sass_extensions/functions/font_files.rb +0 -41
  529. data/lib/compass/sass_extensions/functions/gradient_support.rb +0 -611
  530. data/lib/compass/sass_extensions/functions/image_size.rb +0 -114
  531. data/lib/compass/sass_extensions/functions/inline_image.rb +0 -64
  532. data/lib/compass/sass_extensions/functions/lists.rb +0 -101
  533. data/lib/compass/sass_extensions/functions/math.rb +0 -93
  534. data/lib/compass/sass_extensions/functions/selectors.rb +0 -64
  535. data/lib/compass/sass_extensions/functions/urls.rb +0 -297
  536. data/lib/compass/sass_extensions/monkey_patches.rb +0 -3
  537. data/lib/compass/sass_extensions/monkey_patches/browser_support.rb +0 -124
  538. data/lib/compass/sass_extensions/monkey_patches/traversal.rb +0 -23
@@ -1,304 +0,0 @@
1
- module Compass
2
- module Configuration
3
- # The inheritance module makes it easy for configuration data to inherit from
4
- # other instances of configuration data. This makes it easier for external code to layer
5
- # bits of configuration from various sources.
6
- module Inheritance
7
-
8
- def self.included(base)
9
- # inherited_data stores configuration data that this configuration object will
10
- # inherit if not provided explicitly.
11
- base.send :attr_accessor, :inherited_data, :set_attributes, :top_level
12
-
13
- base.send(:include, InstanceMethods)
14
- base.extend(ClassMethods)
15
- end
16
-
17
- module ClassMethods
18
- def inherited_writer(*attributes)
19
- attributes.each do |attribute|
20
- line = __LINE__ + 1
21
- class_eval %Q{
22
- def #{attribute}=(value) # def css_dir=(value)
23
- @set_attributes ||= {} # @set_attributes ||= {}
24
- @set_attributes[#{attribute.inspect}] = true # @set_attributes[:css_dir] = true
25
- @#{attribute} = value # @css_dir = value
26
- end # end
27
-
28
- def unset_#{attribute}! # def unset_css_dir!
29
- unset!(#{attribute.inspect}) # unset!(:css_dir)
30
- end # end
31
-
32
- def #{attribute}_set? # def css_dir_set?
33
- set?(#{attribute.inspect}) # set?(:css_dir)
34
- end # end
35
- }, __FILE__, line
36
- end
37
- end
38
-
39
- # Defines the default reader to be an inherited_reader that will look at the inherited_data for its
40
- # value when not set. The inherited reader calls to a raw reader that acts like a normal attribute
41
- # reader but prefixes the attribute name with "raw_".
42
- def inherited_reader(*attributes)
43
- attributes.each do |attribute|
44
- line = __LINE__ + 1
45
- class_eval %Q{
46
- def raw_#{attribute} # def raw_css_dir
47
- @#{attribute} # @css_dir
48
- end # end
49
- def #{attribute}_without_default # def css_dir_without_default
50
- read_without_default(#{attribute.inspect}) # read_without_default(:css_dir)
51
- end # end
52
- def #{attribute} # def css_dir
53
- read(#{attribute.inspect}) # read(:css_dir)
54
- end # end
55
- }, __FILE__, line
56
- end
57
- end
58
-
59
- def inherited_accessor(*attributes)
60
- inherited_reader(*attributes)
61
- inherited_writer(*attributes)
62
- end
63
-
64
- class ArrayProxy
65
- def initialize(data, attr)
66
- @data, @attr = data, attr
67
- end
68
- def to_ary
69
- @data.send(:"read_inherited_#{@attr}_array")
70
- end
71
- def to_a
72
- to_ary
73
- end
74
- def <<(v)
75
- @data.send(:"add_to_#{@attr}", v)
76
- end
77
- def >>(v)
78
- @data.send(:"remove_from_#{@attr}", v)
79
- end
80
- def serialize_to_config(prop)
81
- if v = @data.raw(prop)
82
- "#{prop} = #{v.inspect}"
83
- else
84
- s = ""
85
- if added = @data.instance_variable_get("@added_to_#{@attr}")
86
- added.each do |a|
87
- s << "#{prop} << #{a.inspect}\n"
88
- end
89
- end
90
- if removed = @data.instance_variable_get("@removed_from_#{@attr}")
91
- removed.each do |r|
92
- s << "#{prop} >> #{r.inspect}\n"
93
- end
94
- end
95
- if s[-1..-1] == "\n"
96
- s[0..-2]
97
- else
98
- s
99
- end
100
- end
101
- end
102
- def method_missing(m, *args, &block)
103
- a = to_ary
104
- if a.respond_to?(m)
105
- a.send(m,*args, &block)
106
- else
107
- super
108
- end
109
- end
110
- end
111
-
112
- def inherited_array(*attributes)
113
- inherited_reader(*attributes)
114
- inherited_writer(*attributes)
115
- attributes.each do |attr|
116
- line = __LINE__ + 1
117
- class_eval %Q{
118
- def #{attr} # def sprite_load_paths
119
- ArrayProxy.new(self, #{attr.inspect}) # ArrayProxy.new(self, :sprite_load_paths)
120
- end # end
121
- def #{attr}=(value) # def sprite_load_paths=(value)
122
- @set_attributes ||= {} # @set_attributes ||= {}
123
- @set_attributes[#{attr.inspect}] = true # @set_attributes[:sprite_load_paths] = true
124
- @#{attr} = Array(value) # @sprite_load_paths = Array(value)
125
- @added_to_#{attr} = [] # @added_to_sprite_load_paths = []
126
- @removed_from_#{attr} = [] # @removed_from_sprite_load_paths = []
127
- end # end
128
- def read_inherited_#{attr}_array # def read_inherited_sprite_load_paths_array
129
- if #{attr}_set? # if sprite_load_paths_set?
130
- @#{attr} # Array(@#{attr})
131
- else # else
132
- value = if inherited_data # value = Array(read(:sprite_load_paths))
133
- Array(inherited_data.#{attr})
134
- else
135
- Array(read(#{attr.inspect}))
136
- end
137
- value -= Array(@removed_from_#{attr}) # value -= Array(@removed_from_sprite_load_paths)
138
- Array(@added_to_#{attr}) + value # Array(@added_to_sprite_load_paths) + value
139
- end # end
140
- end # end
141
- def add_to_#{attr}(v) # def add_to_sprite_load_paths(v)
142
- if #{attr}_set? # if sprite_load_paths_set?
143
- raw_#{attr} << v # raw_sprite_load_paths << v
144
- else # else
145
- (@added_to_#{attr} ||= []) << v # (@added_to_sprite_load_paths ||= []) << v
146
- end # end
147
- end # end
148
- def remove_from_#{attr}(v) # def remove_from_sprite_load_paths(v)
149
- if #{attr}_set? # if sprite_load_paths_set?
150
- raw_#{attr}.reject!{|e| e == v} # raw_sprite_load_path.reject!{|e| e == v}s
151
- else # else
152
- (@removed_from_#{attr} ||= []) << v # (@removed_from_sprite_load_paths ||= []) << v
153
- end # end
154
- end # end
155
- }, __FILE__, line
156
- end
157
- end
158
-
159
- def chained_method(method)
160
- line = __LINE__ + 1
161
- class_eval %Q{
162
- alias_method :_chained_#{method}, method
163
- def #{method}(*args, &block)
164
- _chained_#{method}(*args, &block)
165
- if inherited_data
166
- inherited_data.#{method}(*args, &block)
167
- end
168
- end
169
- }, __FILE__, line
170
- end
171
-
172
-
173
- end
174
-
175
- module InstanceMethods
176
-
177
- def on_top!
178
- self.set_top_level(self)
179
- end
180
-
181
- def set_top_level(new_top)
182
- self.top_level = new_top
183
- if self.inherited_data.respond_to?(:set_top_level)
184
- self.inherited_data.set_top_level(new_top)
185
- end
186
- end
187
-
188
-
189
- def inherit_from!(data)
190
- if self.inherited_data
191
- self.inherited_data.inherit_from!(data)
192
- else
193
- self.inherited_data = data
194
- end
195
- self
196
- end
197
-
198
- def reset_inheritance!
199
- self.inherited_data = nil
200
- end
201
-
202
- def with_defaults(data)
203
- inherit_from!(data)
204
- yield
205
- reset_inheritance!
206
- end
207
-
208
- def unset!(attribute)
209
- @set_attributes ||= {}
210
- send("#{attribute}=", nil)
211
- @set_attributes.delete(attribute)
212
- nil
213
- end
214
-
215
- def set?(attribute)
216
- @set_attributes ||= {}
217
- @set_attributes[attribute]
218
- end
219
-
220
- def any_attributes_set?
221
- @set_attributes && @set_attributes.size > 0
222
- end
223
-
224
- def default_for(attribute)
225
- method = "default_#{attribute}".to_sym
226
- if respond_to?(method)
227
- send(method)
228
- end
229
- end
230
-
231
- # Read an explicitly set value that is either inherited or set on this instance
232
- def read_without_default(attribute)
233
- if set?(attribute)
234
- send("raw_#{attribute}")
235
- elsif inherited_data.nil?
236
- nil
237
- elsif inherited_data.respond_to?("#{attribute}_without_default")
238
- inherited_data.send("#{attribute}_without_default")
239
- elsif inherited_data.respond_to?(attribute)
240
- inherited_data.send(attribute)
241
- end
242
- end
243
-
244
- # Reads the raw value that was set on this object.
245
- # you generally should call raw_<attribute>() instead.
246
- def raw(attribute)
247
- instance_variable_get("@#{attribute}")
248
- end
249
-
250
- # Read a value that is either inherited or set on this instance, if we get to the bottom-most configuration instance,
251
- # we ask for the default starting at the top level.
252
- def read(attribute)
253
- if !(v = send("#{attribute}_without_default")).nil?
254
- v
255
- else
256
- top_level.default_for(attribute)
257
- end
258
- end
259
-
260
- def method_missing(meth, *args, &block)
261
- if inherited_data
262
- inherited_data.send(meth, *args, &block)
263
- else
264
- raise NoMethodError, meth.to_s
265
- end
266
- end
267
-
268
- def respond_to?(meth)
269
- if super
270
- true
271
- elsif inherited_data
272
- inherited_data.respond_to?(meth)
273
- else
274
- false
275
- end
276
- end
277
-
278
- def chain
279
- instances = [self]
280
- instances << instances.last.inherited_data while instances.last.inherited_data
281
- instances
282
- end
283
-
284
- def debug
285
- normalized_attrs = {}
286
- ATTRIBUTES.each do |prop|
287
- values = []
288
- chain.each do |instance|
289
- values << {
290
- :raw => (instance.send("raw_#{prop}") rescue nil),
291
- :value => (instance.send("#{prop}_without_default") rescue nil),
292
- :default => (instance.send("default_#{prop}") rescue nil),
293
- :resolved => instance.send(prop)
294
- }
295
- end
296
- normalized_attrs[prop] = values
297
- end
298
- normalized_attrs
299
- end
300
-
301
- end
302
- end
303
- end
304
- end
@@ -1,19 +0,0 @@
1
- module Compass::Configuration::Paths
2
-
3
- TRAILING_SEPARATOR = %r{.(/|#{Regexp.escape(File::SEPARATOR)})$}
4
-
5
- def strip_trailing_separator(*attributes)
6
- attributes.each do |attr|
7
- alias_method "#{attr}_with_trailing_separator".to_sym, attr
8
- class_eval %Q{
9
- def #{attr} # def css_dir
10
- path = #{attr}_with_trailing_separator # path = css_dir_with_trailing_separator
11
- if path.to_s =~ TRAILING_SEPARATOR # if path =~ TRAILING_SEPARATOR
12
- path = path[0..-($1.length+1)] # path = path[0..-($1.length+1)]
13
- end # end
14
- path # path
15
- end # end
16
- }
17
- end
18
- end
19
- end
@@ -1,179 +0,0 @@
1
- require 'compass/exec/global_options_parser'
2
- require 'compass/exec/project_options_parser'
3
-
4
- module Compass::Exec
5
- class SwitchUI
6
- include GlobalOptionsParser
7
- include ProjectOptionsParser
8
- attr_accessor :args, :options, :opts
9
-
10
- def initialize(args)
11
- self.args = args
12
- self.options = {}
13
- parse!
14
- end
15
-
16
- def run!
17
- begin
18
- perform!
19
- rescue Exception => e
20
- raise e if e.is_a? SystemExit
21
- if e.is_a?(::Compass::Error) || e.is_a?(OptionParser::ParseError)
22
- $stderr.puts e.message
23
- else
24
- ::Compass::Exec::Helpers.report_error(e, @options)
25
- end
26
- return 1
27
- end
28
- return 0
29
- end
30
-
31
- protected
32
-
33
- def perform!
34
- if options[:command]
35
- do_command(options[:command])
36
- else
37
- puts self.opts
38
- end
39
- end
40
-
41
- def parse!
42
- self.opts = OptionParser.new(&method(:set_opts))
43
- self.opts.parse!(self.args)
44
- if self.args.size > 0
45
- self.options[:project_name] = trim_trailing_separator(self.args.shift)
46
- end
47
- self.options[:command] ||= self.options[:project_name] ? :create_project : :update_project
48
- self.options[:framework] ||= :compass
49
- end
50
-
51
- def trim_trailing_separator(path)
52
- path[-1..-1] == File::SEPARATOR ? path[0..-2] : path
53
- end
54
-
55
- def set_opts(opts)
56
- opts.banner = <<END
57
- Usage: compass [options] [project]
58
-
59
- Description:
60
- The compass command line tool will help you create and manage the stylesheets for your project.
61
-
62
- To get started on a stand-alone project based on blueprint:
63
-
64
- compass -f blueprint my_compass_project
65
-
66
- When you change any sass files, you must recompile your project using --update or --watch.
67
- END
68
- opts.separator ''
69
- opts.separator 'Mode Options(only specify one):'
70
-
71
- opts.on('-i', '--install', :NONE, "Create a new compass project.",
72
- " The default mode when a project is provided.") do
73
- self.options[:command] = :create_project
74
- end
75
-
76
- opts.on('-u', '--update', :NONE, 'Update the current project.',
77
- ' This is the default when no project is provided.') do
78
- self.options[:command] = :update_project
79
- end
80
-
81
- opts.on('-w', '--watch', :NONE, 'Monitor the current project for changes and update') do
82
- self.options[:command] = :watch_project
83
- self.options[:quiet] = true
84
- end
85
-
86
- opts.on('-p', '--pattern PATTERN', 'Stamp out a pattern into the current project.',
87
- ' Must be used with -f.') do |pattern|
88
- self.options[:command] = :stamp_pattern
89
- self.options[:pattern] = pattern
90
- end
91
-
92
- opts.on('-h', '--help') do
93
- self.options[:command] = :help
94
- self.options[:help_command] = :help
95
- end
96
-
97
- opts.on('--write-configuration', "Write the current configuration to the configuration file.") do
98
- self.options[:command] = :write_configuration
99
- end
100
-
101
- opts.on('--list-frameworks', "List compass frameworks available to use.") do
102
- self.options[:command] = :list_frameworks
103
- end
104
-
105
- opts.on('--validate', :NONE, 'Validate your project\'s compiled css. Requires Java.') do
106
- self.options[:command] = :validate_project
107
- end
108
-
109
- opts.on('--grid-img [DIMENSIONS]', 'Generate a background image to test grid alignment.',
110
- ' Dimension is given as <column_width>+<gutter_width>x<height>.',
111
- ' Defaults to 30+10x20. Height is optional.') do |dimensions|
112
- self.options[:grid_dimensions] = dimensions || "30+10"
113
- self.options[:command] = :generate_grid_background
114
- end
115
-
116
- opts.separator ''
117
- opts.separator 'Install/Pattern Options:'
118
-
119
- opts.on('-f FRAMEWORK', '--framework FRAMEWORK', 'Use the specified framework. Only one may be specified.') do |framework|
120
- self.options[:framework] = framework
121
- end
122
-
123
- opts.on('-n', '--pattern-name NAME', 'The name to use when stamping a pattern.',
124
- ' Must be used in combination with -p.') do |name|
125
- self.options[:pattern_name] = name
126
- end
127
-
128
- opts.on("-x", "--syntax SYNTAX", [:sass, :scss], "Specify the syntax to use when generating stylesheets.", "One of sass or scss. Defaults to scss.") do |syntax|
129
- self.options[:preferred_syntax] = syntax
130
- end
131
-
132
- opts.on('--rails', "Sets the app type to a rails project (same as --app rails).") do
133
- self.options[:project_type] = :rails
134
- end
135
-
136
- opts.on('--app APP_TYPE', 'Specify the kind of application to integrate with.') do |project_type|
137
- self.options[:project_type] = project_type.to_sym
138
- end
139
-
140
- opts.separator ''
141
- opts.separator 'Configuration Options:'
142
-
143
- set_project_options(opts)
144
-
145
- opts.separator ''
146
- opts.separator 'General Options:'
147
-
148
- set_global_options(opts)
149
-
150
- opts.on('--imports', :NONE, 'Emit an imports suitable for passing to the sass command-line.',
151
- ' Example: sass `compass --imports`',
152
- ' Note: Compass\'s Sass extensions will not be available.') do
153
- print ::Compass::Frameworks::ALL.map{|f| "-I #{f.stylesheets_directory}"}.join(' ')
154
- exit
155
- end
156
-
157
- opts.on('--install-dir', :NONE, 'Emit the location where compass is installed.') do
158
- puts ::Compass.base_directory
159
- exit
160
- end
161
-
162
- opts.on_tail("-v", "--version", "Print version") do
163
- self.options[:command] = :print_version
164
- end
165
-
166
- opts.on('--boring', :NONE, 'Turn off colorized output.') do
167
- self.options[:color_output] = false
168
- end
169
-
170
- end
171
-
172
- def do_command(command)
173
- command_class_name = command.to_s.split(/_/).map{|p| p.capitalize}.join('')
174
- command_class = eval("::Compass::Commands::#{command_class_name}")
175
- command_class.new(Dir.getwd, options).execute
176
- end
177
-
178
- end
179
- end