marty 0.5.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (345) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +84 -0
  4. data/Rakefile +29 -0
  5. data/app/assets/javascripts/marty/application.js +15 -0
  6. data/app/assets/stylesheets/marty/application.css +13 -0
  7. data/app/components/marty/api_auth_view.rb +32 -0
  8. data/app/components/marty/auth_app.rb +55 -0
  9. data/app/components/marty/auth_app.rb~ +51 -0
  10. data/app/components/marty/auth_app/javascripts/auth_app.js +91 -0
  11. data/app/components/marty/auth_app/javascripts/auth_app.js~ +91 -0
  12. data/app/components/marty/cm_form_panel.rb~ +5 -0
  13. data/app/components/marty/cm_grid_panel.rb~ +35 -0
  14. data/app/components/marty/data_import_view.rb~ +142 -0
  15. data/app/components/marty/extras/layout.rb +46 -0
  16. data/app/components/marty/extras/layout.rb~ +46 -0
  17. data/app/components/marty/extras/misc.rb +18 -0
  18. data/app/components/marty/form.rb +6 -0
  19. data/app/components/marty/grid.rb +45 -0
  20. data/app/components/marty/grid_append_only.rb +12 -0
  21. data/app/components/marty/import_type_view.rb +53 -0
  22. data/app/components/marty/live_search_grid_panel.rb +46 -0
  23. data/app/components/marty/live_search_grid_panel.rb~ +49 -0
  24. data/app/components/marty/main_auth_app.rb +269 -0
  25. data/app/components/marty/main_auth_app.rb~ +238 -0
  26. data/app/components/marty/mcfly_grid_panel.rb +62 -0
  27. data/app/components/marty/mcfly_grid_panel.rb~ +80 -0
  28. data/app/components/marty/new_posting_form.rb +46 -0
  29. data/app/components/marty/new_posting_form.rb~ +46 -0
  30. data/app/components/marty/new_posting_window.rb +21 -0
  31. data/app/components/marty/new_posting_window.rb~ +21 -0
  32. data/app/components/marty/panel.rb +12 -0
  33. data/app/components/marty/pivot_grid.rb +52 -0
  34. data/app/components/marty/pivot_grid/endpoints.rb +45 -0
  35. data/app/components/marty/pivot_grid/javascripts/extensions.js +150 -0
  36. data/app/components/marty/pivot_grid/javascripts/pivot_grid.js +86 -0
  37. data/app/components/marty/pivot_grid/services.rb +44 -0
  38. data/app/components/marty/posting_grid.rb +139 -0
  39. data/app/components/marty/posting_grid.rb~ +140 -0
  40. data/app/components/marty/posting_window.rb +27 -0
  41. data/app/components/marty/promise_view.rb +177 -0
  42. data/app/components/marty/promise_view.rb~ +157 -0
  43. data/app/components/marty/promise_view/stylesheets/promise_view.css +26 -0
  44. data/app/components/marty/promise_view/stylesheets/promise_view.css~ +15 -0
  45. data/app/components/marty/report_form.rb +225 -0
  46. data/app/components/marty/report_form.rb~ +217 -0
  47. data/app/components/marty/report_select.rb +145 -0
  48. data/app/components/marty/report_select.rb~ +133 -0
  49. data/app/components/marty/reporting.rb +39 -0
  50. data/app/components/marty/reporting.rb~ +39 -0
  51. data/app/components/marty/script_detail.rb~ +430 -0
  52. data/app/components/marty/script_form.rb +233 -0
  53. data/app/components/marty/script_form.rb~ +233 -0
  54. data/app/components/marty/script_form/javascripts/Ext.ux.form.field.CodeMirror.js +698 -0
  55. data/app/components/marty/script_form/javascripts/Ext.ux.form.field.CodeMirror.js~ +909 -0
  56. data/app/components/marty/script_form/javascripts/codemirror.js +3130 -0
  57. data/app/components/marty/script_form/javascripts/mode/clike/clike.js +284 -0
  58. data/app/components/marty/script_form/javascripts/mode/clike/index.html +102 -0
  59. data/app/components/marty/script_form/javascripts/mode/clike/scala.html +766 -0
  60. data/app/components/marty/script_form/javascripts/mode/clojure/clojure.js +206 -0
  61. data/app/components/marty/script_form/javascripts/mode/clojure/index.html +67 -0
  62. data/app/components/marty/script_form/javascripts/mode/coffeescript/LICENSE +22 -0
  63. data/app/components/marty/script_form/javascripts/mode/coffeescript/coffeescript.js +346 -0
  64. data/app/components/marty/script_form/javascripts/mode/coffeescript/index.html +728 -0
  65. data/app/components/marty/script_form/javascripts/mode/commonlisp/commonlisp.js +101 -0
  66. data/app/components/marty/script_form/javascripts/mode/commonlisp/index.html +165 -0
  67. data/app/components/marty/script_form/javascripts/mode/css/css.js +448 -0
  68. data/app/components/marty/script_form/javascripts/mode/css/index.html +58 -0
  69. data/app/components/marty/script_form/javascripts/mode/css/test.js +501 -0
  70. data/app/components/marty/script_form/javascripts/mode/delorean/delorean.js +189 -0
  71. data/app/components/marty/script_form/javascripts/mode/diff/diff.js +32 -0
  72. data/app/components/marty/script_form/javascripts/mode/diff/index.html +105 -0
  73. data/app/components/marty/script_form/javascripts/mode/ecl/ecl.js +203 -0
  74. data/app/components/marty/script_form/javascripts/mode/ecl/index.html +42 -0
  75. data/app/components/marty/script_form/javascripts/mode/erlang/erlang.js +463 -0
  76. data/app/components/marty/script_form/javascripts/mode/erlang/index.html +63 -0
  77. data/app/components/marty/script_form/javascripts/mode/gfm/gfm.js +150 -0
  78. data/app/components/marty/script_form/javascripts/mode/gfm/index.html +48 -0
  79. data/app/components/marty/script_form/javascripts/mode/go/go.js +170 -0
  80. data/app/components/marty/script_form/javascripts/mode/go/index.html +73 -0
  81. data/app/components/marty/script_form/javascripts/mode/groovy/groovy.js +210 -0
  82. data/app/components/marty/script_form/javascripts/mode/groovy/index.html +72 -0
  83. data/app/components/marty/script_form/javascripts/mode/haskell/haskell.js +242 -0
  84. data/app/components/marty/script_form/javascripts/mode/haskell/index.html +61 -0
  85. data/app/components/marty/script_form/javascripts/mode/haxe/haxe.js +429 -0
  86. data/app/components/marty/script_form/javascripts/mode/haxe/index.html +91 -0
  87. data/app/components/marty/script_form/javascripts/mode/htmlembedded/htmlembedded.js +72 -0
  88. data/app/components/marty/script_form/javascripts/mode/htmlembedded/index.html +50 -0
  89. data/app/components/marty/script_form/javascripts/mode/htmlmixed/htmlmixed.js +84 -0
  90. data/app/components/marty/script_form/javascripts/mode/htmlmixed/index.html +52 -0
  91. data/app/components/marty/script_form/javascripts/mode/javascript/index.html +78 -0
  92. data/app/components/marty/script_form/javascripts/mode/javascript/javascript.js +361 -0
  93. data/app/components/marty/script_form/javascripts/mode/jinja2/index.html +38 -0
  94. data/app/components/marty/script_form/javascripts/mode/jinja2/jinja2.js +42 -0
  95. data/app/components/marty/script_form/javascripts/mode/less/index.html +740 -0
  96. data/app/components/marty/script_form/javascripts/mode/less/less.js +266 -0
  97. data/app/components/marty/script_form/javascripts/mode/lua/index.html +73 -0
  98. data/app/components/marty/script_form/javascripts/mode/lua/lua.js +140 -0
  99. data/app/components/marty/script_form/javascripts/mode/markdown/index.html +343 -0
  100. data/app/components/marty/script_form/javascripts/mode/markdown/markdown.js +382 -0
  101. data/app/components/marty/script_form/javascripts/mode/markdown/test.js +1084 -0
  102. data/app/components/marty/script_form/javascripts/mode/mysql/index.html +42 -0
  103. data/app/components/marty/script_form/javascripts/mode/mysql/mysql.js +186 -0
  104. data/app/components/marty/script_form/javascripts/mode/ntriples/index.html +33 -0
  105. data/app/components/marty/script_form/javascripts/mode/ntriples/ntriples.js +172 -0
  106. data/app/components/marty/script_form/javascripts/mode/ocaml/index.html +130 -0
  107. data/app/components/marty/script_form/javascripts/mode/ocaml/ocaml.js +114 -0
  108. data/app/components/marty/script_form/javascripts/mode/pascal/LICENSE +7 -0
  109. data/app/components/marty/script_form/javascripts/mode/pascal/index.html +49 -0
  110. data/app/components/marty/script_form/javascripts/mode/pascal/pascal.js +94 -0
  111. data/app/components/marty/script_form/javascripts/mode/perl/LICENSE +19 -0
  112. data/app/components/marty/script_form/javascripts/mode/perl/index.html +63 -0
  113. data/app/components/marty/script_form/javascripts/mode/perl/perl.js +816 -0
  114. data/app/components/marty/script_form/javascripts/mode/php/index.html +49 -0
  115. data/app/components/marty/script_form/javascripts/mode/php/php.js +148 -0
  116. data/app/components/marty/script_form/javascripts/mode/pig/index.html +43 -0
  117. data/app/components/marty/script_form/javascripts/mode/pig/pig.js +172 -0
  118. data/app/components/marty/script_form/javascripts/mode/plsql/index.html +63 -0
  119. data/app/components/marty/script_form/javascripts/mode/plsql/plsql.js +217 -0
  120. data/app/components/marty/script_form/javascripts/mode/properties/index.html +41 -0
  121. data/app/components/marty/script_form/javascripts/mode/properties/properties.js +63 -0
  122. data/app/components/marty/script_form/javascripts/mode/python/LICENSE.txt +21 -0
  123. data/app/components/marty/script_form/javascripts/mode/python/index.html +123 -0
  124. data/app/components/marty/script_form/javascripts/mode/python/python.js +338 -0
  125. data/app/components/marty/script_form/javascripts/mode/r/LICENSE +24 -0
  126. data/app/components/marty/script_form/javascripts/mode/r/index.html +74 -0
  127. data/app/components/marty/script_form/javascripts/mode/r/r.js +141 -0
  128. data/app/components/marty/script_form/javascripts/mode/rpm/changes/changes.js +19 -0
  129. data/app/components/marty/script_form/javascripts/mode/rpm/changes/index.html +54 -0
  130. data/app/components/marty/script_form/javascripts/mode/rpm/spec/index.html +100 -0
  131. data/app/components/marty/script_form/javascripts/mode/rpm/spec/spec.css +5 -0
  132. data/app/components/marty/script_form/javascripts/mode/rpm/spec/spec.js +66 -0
  133. data/app/components/marty/script_form/javascripts/mode/rst/index.html +526 -0
  134. data/app/components/marty/script_form/javascripts/mode/rst/rst.js +326 -0
  135. data/app/components/marty/script_form/javascripts/mode/ruby/LICENSE +24 -0
  136. data/app/components/marty/script_form/javascripts/mode/ruby/index.html +172 -0
  137. data/app/components/marty/script_form/javascripts/mode/ruby/ruby.js +195 -0
  138. data/app/components/marty/script_form/javascripts/mode/rust/index.html +49 -0
  139. data/app/components/marty/script_form/javascripts/mode/rust/rust.js +432 -0
  140. data/app/components/marty/script_form/javascripts/mode/scheme/index.html +65 -0
  141. data/app/components/marty/script_form/javascripts/mode/scheme/scheme.js +230 -0
  142. data/app/components/marty/script_form/javascripts/mode/shell/index.html +50 -0
  143. data/app/components/marty/script_form/javascripts/mode/shell/shell.js +118 -0
  144. data/app/components/marty/script_form/javascripts/mode/sieve/LICENSE +23 -0
  145. data/app/components/marty/script_form/javascripts/mode/sieve/index.html +81 -0
  146. data/app/components/marty/script_form/javascripts/mode/sieve/sieve.js +156 -0
  147. data/app/components/marty/script_form/javascripts/mode/smalltalk/index.html +56 -0
  148. data/app/components/marty/script_form/javascripts/mode/smalltalk/smalltalk.js +139 -0
  149. data/app/components/marty/script_form/javascripts/mode/smarty/index.html +83 -0
  150. data/app/components/marty/script_form/javascripts/mode/smarty/smarty.js +148 -0
  151. data/app/components/marty/script_form/javascripts/mode/sparql/index.html +41 -0
  152. data/app/components/marty/script_form/javascripts/mode/sparql/sparql.js +143 -0
  153. data/app/components/marty/script_form/javascripts/mode/stex/index.html +98 -0
  154. data/app/components/marty/script_form/javascripts/mode/stex/stex.js +182 -0
  155. data/app/components/marty/script_form/javascripts/mode/stex/test.js +343 -0
  156. data/app/components/marty/script_form/javascripts/mode/tiddlywiki/index.html +141 -0
  157. data/app/components/marty/script_form/javascripts/mode/tiddlywiki/tiddlywiki.css +14 -0
  158. data/app/components/marty/script_form/javascripts/mode/tiddlywiki/tiddlywiki.js +384 -0
  159. data/app/components/marty/script_form/javascripts/mode/tiki/index.html +83 -0
  160. data/app/components/marty/script_form/javascripts/mode/tiki/tiki.css +26 -0
  161. data/app/components/marty/script_form/javascripts/mode/tiki/tiki.js +309 -0
  162. data/app/components/marty/script_form/javascripts/mode/vb/LICENSE.txt +21 -0
  163. data/app/components/marty/script_form/javascripts/mode/vb/index.html +89 -0
  164. data/app/components/marty/script_form/javascripts/mode/vb/vb.js +260 -0
  165. data/app/components/marty/script_form/javascripts/mode/vbscript/index.html +43 -0
  166. data/app/components/marty/script_form/javascripts/mode/vbscript/vbscript.js +26 -0
  167. data/app/components/marty/script_form/javascripts/mode/velocity/index.html +104 -0
  168. data/app/components/marty/script_form/javascripts/mode/velocity/velocity.js +146 -0
  169. data/app/components/marty/script_form/javascripts/mode/verilog/index.html +211 -0
  170. data/app/components/marty/script_form/javascripts/mode/verilog/verilog.js +194 -0
  171. data/app/components/marty/script_form/javascripts/mode/xml/index.html +45 -0
  172. data/app/components/marty/script_form/javascripts/mode/xml/xml.js +318 -0
  173. data/app/components/marty/script_form/javascripts/mode/xquery/LICENSE +20 -0
  174. data/app/components/marty/script_form/javascripts/mode/xquery/index.html +223 -0
  175. data/app/components/marty/script_form/javascripts/mode/xquery/test/index.html +27 -0
  176. data/app/components/marty/script_form/javascripts/mode/xquery/test/testBase.js +42 -0
  177. data/app/components/marty/script_form/javascripts/mode/xquery/test/testEmptySequenceKeyword.js +16 -0
  178. data/app/components/marty/script_form/javascripts/mode/xquery/test/testMultiAttr.js +16 -0
  179. data/app/components/marty/script_form/javascripts/mode/xquery/test/testNamespaces.js +91 -0
  180. data/app/components/marty/script_form/javascripts/mode/xquery/test/testProcessingInstructions.js +16 -0
  181. data/app/components/marty/script_form/javascripts/mode/xquery/test/testQuotes.js +19 -0
  182. data/app/components/marty/script_form/javascripts/mode/xquery/xquery.js +451 -0
  183. data/app/components/marty/script_form/javascripts/mode/yaml/index.html +68 -0
  184. data/app/components/marty/script_form/javascripts/mode/yaml/yaml.js +95 -0
  185. data/app/components/marty/script_form/javascripts/util/closetag.js +164 -0
  186. data/app/components/marty/script_form/javascripts/util/dialog.css +27 -0
  187. data/app/components/marty/script_form/javascripts/util/dialog.js +70 -0
  188. data/app/components/marty/script_form/javascripts/util/foldcode.js +196 -0
  189. data/app/components/marty/script_form/javascripts/util/formatting.js +193 -0
  190. data/app/components/marty/script_form/javascripts/util/javascript-hint.js +134 -0
  191. data/app/components/marty/script_form/javascripts/util/loadmode.js +51 -0
  192. data/app/components/marty/script_form/javascripts/util/match-highlighter.js +44 -0
  193. data/app/components/marty/script_form/javascripts/util/multiplex.js +77 -0
  194. data/app/components/marty/script_form/javascripts/util/overlay.js +54 -0
  195. data/app/components/marty/script_form/javascripts/util/pig-hint.js +123 -0
  196. data/app/components/marty/script_form/javascripts/util/runmode-standalone.js +90 -0
  197. data/app/components/marty/script_form/javascripts/util/runmode.js +53 -0
  198. data/app/components/marty/script_form/javascripts/util/search.js +118 -0
  199. data/app/components/marty/script_form/javascripts/util/searchcursor.js +119 -0
  200. data/app/components/marty/script_form/javascripts/util/simple-hint.css +16 -0
  201. data/app/components/marty/script_form/javascripts/util/simple-hint.js +97 -0
  202. data/app/components/marty/script_form/javascripts/util/xml-hint.js +137 -0
  203. data/app/components/marty/script_form/stylesheets/codemirror.css +172 -0
  204. data/app/components/marty/script_form/stylesheets/delorean.css +10 -0
  205. data/app/components/marty/script_form/stylesheets/theme/ambiance.css +81 -0
  206. data/app/components/marty/script_form/stylesheets/theme/blackboard.css +25 -0
  207. data/app/components/marty/script_form/stylesheets/theme/cobalt.css +18 -0
  208. data/app/components/marty/script_form/stylesheets/theme/eclipse.css +25 -0
  209. data/app/components/marty/script_form/stylesheets/theme/elegant.css +10 -0
  210. data/app/components/marty/script_form/stylesheets/theme/erlang-dark.css +21 -0
  211. data/app/components/marty/script_form/stylesheets/theme/lesser-dark.css +44 -0
  212. data/app/components/marty/script_form/stylesheets/theme/monokai.css +28 -0
  213. data/app/components/marty/script_form/stylesheets/theme/neat.css +9 -0
  214. data/app/components/marty/script_form/stylesheets/theme/night.css +21 -0
  215. data/app/components/marty/script_form/stylesheets/theme/rubyblue.css +21 -0
  216. data/app/components/marty/script_form/stylesheets/theme/vibrant-ink.css +27 -0
  217. data/app/components/marty/script_form/stylesheets/theme/xq-dark.css +46 -0
  218. data/app/components/marty/script_grid.rb +104 -0
  219. data/app/components/marty/script_grid.rb~ +99 -0
  220. data/app/components/marty/script_tester.rb +114 -0
  221. data/app/components/marty/script_tester.rb~ +213 -0
  222. data/app/components/marty/scripting.rb +132 -0
  223. data/app/components/marty/scripting.rb~ +124 -0
  224. data/app/components/marty/select_report.rb~ +143 -0
  225. data/app/components/marty/simple_app.rb +97 -0
  226. data/app/components/marty/simple_app.rb~ +101 -0
  227. data/app/components/marty/simple_app/javascripts/simple_app.js +50 -0
  228. data/app/components/marty/simple_app/javascripts/statusbar_ext.js +8 -0
  229. data/app/components/marty/tag_grid.rb +83 -0
  230. data/app/components/marty/tag_grid.rb~ +89 -0
  231. data/app/components/marty/tree_panel.rb~ +256 -0
  232. data/app/components/marty/tree_panel/javascripts/tree_panel.js~ +317 -0
  233. data/app/components/marty/user_pivot.rb +128 -0
  234. data/app/components/marty/user_view.rb +181 -0
  235. data/app/components/marty/user_view.rb~ +188 -0
  236. data/app/controllers/marty/application_controller.rb +124 -0
  237. data/app/controllers/marty/application_controller.rb~ +133 -0
  238. data/app/controllers/marty/components_controller.rb +41 -0
  239. data/app/controllers/marty/components_controller.rb~ +37 -0
  240. data/app/controllers/marty/job_controller.rb +28 -0
  241. data/app/controllers/marty/job_controller.rb~ +28 -0
  242. data/app/controllers/marty/rpc_controller.rb +64 -0
  243. data/app/controllers/marty/rpc_controller.rb~ +61 -0
  244. data/app/helpers/marty/application_helper.rb +4 -0
  245. data/app/helpers/marty/script_set.rb +57 -0
  246. data/app/helpers/marty/script_set.rb~ +59 -0
  247. data/app/models/marty/api_auth.rb +44 -0
  248. data/app/models/marty/api_auth.rb~ +48 -0
  249. data/app/models/marty/base.rb +4 -0
  250. data/app/models/marty/data_change.rb +179 -0
  251. data/app/models/marty/data_change.rb~ +141 -0
  252. data/app/models/marty/enum.rb +22 -0
  253. data/app/models/marty/enum.rb~ +16 -0
  254. data/app/models/marty/import_type.rb +44 -0
  255. data/app/models/marty/import_type.rb~ +48 -0
  256. data/app/models/marty/poop.rb~ +169 -0
  257. data/app/models/marty/posting.rb +101 -0
  258. data/app/models/marty/posting.rb~ +86 -0
  259. data/app/models/marty/posting_type.rb +12 -0
  260. data/app/models/marty/posting_type.rb~ +21 -0
  261. data/app/models/marty/promise.rb +252 -0
  262. data/app/models/marty/promise.rb~ +196 -0
  263. data/app/models/marty/role.rb +6 -0
  264. data/app/models/marty/role.rb~ +10 -0
  265. data/app/models/marty/script.rb +144 -0
  266. data/app/models/marty/script.rb~ +62 -0
  267. data/app/models/marty/tag.rb +96 -0
  268. data/app/models/marty/tag.rb~ +91 -0
  269. data/app/models/marty/token.rb +30 -0
  270. data/app/models/marty/user.rb +146 -0
  271. data/app/models/marty/user.rb~ +148 -0
  272. data/app/models/marty/user_role.rb +7 -0
  273. data/app/models/marty/user_role.rb~ +13 -0
  274. data/app/views/layouts/marty/application.html.erb +12 -0
  275. data/app/views/layouts/marty/application.html.erb~ +11 -0
  276. data/config/locales/en.yml +134 -0
  277. data/config/routes.rb +6 -0
  278. data/config/routes.rb~ +10 -0
  279. data/db/migrate/001_create_marty_scripts.rb +14 -0
  280. data/db/migrate/003_create_marty_users.rb +12 -0
  281. data/db/migrate/004_create_marty_roles.rb +7 -0
  282. data/db/migrate/005_create_marty_user_roles.rb +14 -0
  283. data/db/migrate/006_create_marty_tokens.rb +14 -0
  284. data/db/migrate/008_create_marty_posting_types.rb +7 -0
  285. data/db/migrate/019_create_marty_postings.rb +18 -0
  286. data/db/migrate/019_create_marty_postings.rb~ +19 -0
  287. data/db/migrate/068_create_marty_import_types.rb +12 -0
  288. data/db/migrate/069_create_marty_import_synonyms.rb +15 -0
  289. data/db/migrate/070_create_versions.rb +18 -0
  290. data/db/migrate/071_add_object_changes_column_to_versions.rb +9 -0
  291. data/db/migrate/072_add_validation_function_to_import_types.rb +6 -0
  292. data/db/migrate/073_add_preprocess_function_to_import_types.rb +5 -0
  293. data/db/migrate/090_create_delayed_jobs.rb +22 -0
  294. data/db/migrate/091_create_marty_promises.rb +36 -0
  295. data/db/migrate/095_create_marty_tags.rb +14 -0
  296. data/db/migrate/095_create_marty_tags.rb~ +19 -0
  297. data/db/migrate/096_add_user_roles_to_import_types.rb +11 -0
  298. data/db/migrate/097_drop_versions.rb +9 -0
  299. data/db/migrate/098_create_marty_api_auths.rb +20 -0
  300. data/db/seeds.rb +48 -0
  301. data/lib/marty.rb +18 -0
  302. data/lib/marty.rb~ +13 -0
  303. data/lib/marty/content_handler.rb +97 -0
  304. data/lib/marty/content_handler.rb~ +93 -0
  305. data/lib/marty/data_conversion.rb +298 -0
  306. data/lib/marty/data_exporter.rb +150 -0
  307. data/lib/marty/data_exporter.rb~ +137 -0
  308. data/lib/marty/data_importer.rb +122 -0
  309. data/lib/marty/data_importer.rb~ +114 -0
  310. data/lib/marty/data_row_processor.rb~ +206 -0
  311. data/lib/marty/drop_folder_hook.rb~ +17 -0
  312. data/lib/marty/engine.rb +10 -0
  313. data/lib/marty/folder_hook.rb~ +9 -0
  314. data/lib/marty/lazy_column_loader.rb +57 -0
  315. data/lib/marty/lazy_column_loader.rb~ +47 -0
  316. data/lib/marty/mcfly_query.rb +189 -0
  317. data/lib/marty/mcfly_query.rb~ +188 -0
  318. data/lib/marty/migrations.rb +108 -0
  319. data/lib/marty/migrations.rb~ +65 -0
  320. data/lib/marty/monkey.rb +163 -0
  321. data/lib/marty/monkey.rb~ +160 -0
  322. data/lib/marty/permissions.rb +64 -0
  323. data/lib/marty/permissions.rb~ +69 -0
  324. data/lib/marty/promise.rb~ +41 -0
  325. data/lib/marty/promise_job.rb +123 -0
  326. data/lib/marty/promise_job.rb~ +121 -0
  327. data/lib/marty/promise_proxy.rb +94 -0
  328. data/lib/marty/promise_proxy.rb~ +69 -0
  329. data/lib/marty/railtie.rb +5 -0
  330. data/lib/marty/relation.rb +39 -0
  331. data/lib/marty/util.rb +110 -0
  332. data/lib/marty/util.rb~ +80 -0
  333. data/lib/marty/version.rb +3 -0
  334. data/lib/marty/version.rb~ +3 -0
  335. data/lib/marty/xl.rb +527 -0
  336. data/lib/marty/xl.rb~ +526 -0
  337. data/lib/pyxll/README.txt +19 -0
  338. data/lib/pyxll/README.txt~ +16 -0
  339. data/lib/pyxll/gemini.py +155 -0
  340. data/lib/pyxll/gemini.py~ +110 -0
  341. data/lib/pyxll/pyxll.cfg +12 -0
  342. data/lib/pyxll/pyxll.cfg~ +12 -0
  343. data/lib/pyxll/sample.xlsx +0 -0
  344. data/lib/tasks/marty_tasks.rake +37 -0
  345. metadata +517 -0
@@ -0,0 +1,38 @@
1
+ <!doctype html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <title>CodeMirror: Jinja2 mode</title>
6
+ <link rel="stylesheet" href="../../lib/codemirror.css">
7
+ <script src="../../lib/codemirror.js"></script>
8
+ <script src="jinja2.js"></script>
9
+ <style type="text/css">.CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}</style>
10
+ <link rel="stylesheet" href="../../doc/docs.css">
11
+ </head>
12
+ <body>
13
+ <h1>CodeMirror: Jinja2 mode</h1>
14
+ <form><textarea id="code" name="code">
15
+ &lt;html style="color: green"&gt;
16
+ &lt;!-- this is a comment --&gt;
17
+ &lt;head&gt;
18
+ &lt;title&gt;Jinja2 Example&lt;/title&gt;
19
+ &lt;/head&gt;
20
+ &lt;body&gt;
21
+ &lt;ul&gt;
22
+ {# this is a comment #}
23
+ {%- for item in li -%}
24
+ &lt;li&gt;
25
+ {{ item.label }}
26
+ &lt;/li&gt;
27
+ {% endfor -%}
28
+ &lt;/ul&gt;
29
+ &lt;/body&gt;
30
+ &lt;/html&gt;
31
+ </textarea></form>
32
+ <script>
33
+ var editor =
34
+ CodeMirror.fromTextArea(document.getElementById("code"), {mode:
35
+ {name: "jinja2", htmlMode: true}});
36
+ </script>
37
+ </body>
38
+ </html>
@@ -0,0 +1,42 @@
1
+ CodeMirror.defineMode("jinja2", function(config, parserConf) {
2
+ var keywords = ["block", "endblock", "for", "endfor", "in", "true", "false",
3
+ "loop", "none", "self", "super", "if", "as", "not", "and",
4
+ "else", "import", "with", "without", "context"];
5
+ keywords = new RegExp("^((" + keywords.join(")|(") + "))\\b");
6
+
7
+ function tokenBase (stream, state) {
8
+ var ch = stream.next();
9
+ if (ch == "{") {
10
+ if (ch = stream.eat(/\{|%|#/)) {
11
+ stream.eat("-");
12
+ state.tokenize = inTag(ch);
13
+ return "tag";
14
+ }
15
+ }
16
+ }
17
+ function inTag (close) {
18
+ if (close == "{") {
19
+ close = "}";
20
+ }
21
+ return function (stream, state) {
22
+ var ch = stream.next();
23
+ if ((ch == close || (ch == "-" && stream.eat(close)))
24
+ && stream.eat("}")) {
25
+ state.tokenize = tokenBase;
26
+ return "tag";
27
+ }
28
+ if (stream.match(keywords)) {
29
+ return "keyword";
30
+ }
31
+ return close == "#" ? "comment" : "string";
32
+ };
33
+ }
34
+ return {
35
+ startState: function () {
36
+ return {tokenize: tokenBase};
37
+ },
38
+ token: function (stream, state) {
39
+ return state.tokenize(stream, state);
40
+ }
41
+ };
42
+ });
@@ -0,0 +1,740 @@
1
+ <!doctype html>
2
+ <html>
3
+ <head>
4
+ <meta charset="utf-8">
5
+ <title>CodeMirror: LESS mode</title>
6
+ <link rel="stylesheet" href="../../lib/codemirror.css">
7
+ <script src="../../lib/codemirror.js"></script>
8
+ <script src="less.js"></script>
9
+ <style>.CodeMirror {background: #f8f8f8; border: 1px solid #ddd; font-size:12px} .CodeMirror-scroll {height: 400px}</style>
10
+ <link rel="stylesheet" href="../../doc/docs.css">
11
+ <link rel="stylesheet" href="../../theme/lesser-dark.css">
12
+ </head>
13
+ <body>
14
+ <h1>CodeMirror: LESS mode</h1>
15
+ <form><textarea id="code" name="code">@media screen and (device-aspect-ratio: 16/9) { … }
16
+ @media screen and (device-aspect-ratio: 32/18) { … }
17
+ @media screen and (device-aspect-ratio: 1280/720) { … }
18
+ @media screen and (device-aspect-ratio: 2560/1440) { … }
19
+
20
+ html:lang(fr-be)
21
+ html:lang(de)
22
+ :lang(fr-be) > q
23
+ :lang(de) > q
24
+
25
+ tr:nth-child(2n+1) /* represents every odd row of an HTML table */
26
+ tr:nth-child(odd) /* same */
27
+ tr:nth-child(2n+0) /* represents every even row of an HTML table */
28
+ tr:nth-child(even) /* same */
29
+
30
+ /* Alternate paragraph colours in CSS */
31
+ p:nth-child(4n+1) { color: navy; }
32
+ p:nth-child(4n+2) { color: green; }
33
+ p:nth-child(4n+3) { color: maroon; }
34
+ p:nth-child(4n+4) { color: purple; }
35
+
36
+ :nth-child(10n-1) /* represents the 9th, 19th, 29th, etc, element */
37
+ :nth-child(10n+9) /* Same */
38
+ :nth-child(10n+-1) /* Syntactically invalid, and would be ignored */
39
+
40
+ :nth-child( 3n + 1 )
41
+ :nth-child( +3n - 2 )
42
+ :nth-child( -n+ 6)
43
+ :nth-child( +6 )
44
+
45
+ html|tr:nth-child(-n+6) /* represents the 6 first rows of XHTML tables */
46
+
47
+ img:nth-of-type(2n+1) { float: right; }
48
+ img:nth-of-type(2n) { float: left; }
49
+
50
+ body > h2:nth-of-type(n+2):nth-last-of-type(n+2)
51
+ body > h2:not(:first-of-type):not(:last-of-type)
52
+
53
+ html|*:not(:link):not(:visited)
54
+ *|*:not(:hover)
55
+ p::first-line { text-transform: uppercase }
56
+
57
+ p { color: red; font-size: 12pt }
58
+ p::first-letter { color: green; font-size: 200% }
59
+ p::first-line { color: blue }
60
+
61
+ p { line-height: 1.1 }
62
+ p::first-letter { font-size: 3em; font-weight: normal }
63
+ span { font-weight: bold }
64
+
65
+ * /* a=0 b=0 c=0 -> specificity = 0 */
66
+ LI /* a=0 b=0 c=1 -> specificity = 1 */
67
+ UL LI /* a=0 b=0 c=2 -> specificity = 2 */
68
+ UL OL+LI /* a=0 b=0 c=3 -> specificity = 3 */
69
+ H1 + *[REL=up] /* a=0 b=1 c=1 -> specificity = 11 */
70
+ UL OL LI.red /* a=0 b=1 c=3 -> specificity = 13 */
71
+ LI.red.level /* a=0 b=2 c=1 -> specificity = 21 */
72
+ #x34y /* a=1 b=0 c=0 -> specificity = 100 */
73
+ #s12:not(FOO) /* a=1 b=0 c=1 -> specificity = 101 */
74
+
75
+ @namespace foo url(http://www.example.com);
76
+ foo|h1 { color: blue } /* first rule */
77
+ foo|* { color: yellow } /* second rule */
78
+ |h1 { color: red } /* ...*/
79
+ *|h1 { color: green }
80
+ h1 { color: green }
81
+
82
+ span[hello="Ocean"][goodbye="Land"]
83
+
84
+ a[rel~="copyright"] { ... }
85
+ a[href="http://www.w3.org/"] { ... }
86
+
87
+ DIALOGUE[character=romeo]
88
+ DIALOGUE[character=juliet]
89
+
90
+ [att^=val]
91
+ [att$=val]
92
+ [att*=val]
93
+
94
+ @namespace foo "http://www.example.com";
95
+ [foo|att=val] { color: blue }
96
+ [*|att] { color: yellow }
97
+ [|att] { color: green }
98
+ [att] { color: green }
99
+
100
+
101
+ *:target { color : red }
102
+ *:target::before { content : url(target.png) }
103
+
104
+ E[foo]{
105
+ padding:65px;
106
+ }
107
+ E[foo] ~ F{
108
+ padding:65px;
109
+ }
110
+ E#myid{
111
+ padding:65px;
112
+ }
113
+ input[type="search"]::-webkit-search-decoration,
114
+ input[type="search"]::-webkit-search-cancel-button {
115
+ -webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
116
+ }
117
+ button::-moz-focus-inner,
118
+ input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
119
+ padding: 0;
120
+ border: 0;
121
+ }
122
+ .btn {
123
+ // reset here as of 2.0.3 due to Recess property order
124
+ border-color: #ccc;
125
+ border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) rgba(0,0,0,.25);
126
+ }
127
+ fieldset span button, fieldset span input[type="file"] {
128
+ font-size:12px;
129
+ font-family:Arial, Helvetica, sans-serif;
130
+ }
131
+ .el tr:nth-child(even):last-child td:first-child{
132
+ -moz-border-radius-bottomleft:3px;
133
+ -webkit-border-bottom-left-radius:3px;
134
+ border-bottom-left-radius:3px;
135
+ }
136
+
137
+ /* Some LESS code */
138
+
139
+ button {
140
+ width: 32px;
141
+ height: 32px;
142
+ border: 0;
143
+ margin: 4px;
144
+ cursor: pointer;
145
+ }
146
+ button.icon-plus { background: url(http://dahlström.net/tmp/sharp-icons/svg-icon-target.svg#plus) no-repeat; }
147
+ button.icon-chart { background: url(http://dahlström.net/tmp/sharp-icons/svg-icon-target.svg#chart) no-repeat; }
148
+
149
+ button:hover { background-color: #999; }
150
+ button:active { background-color: #666; }
151
+
152
+ @test_a: #eeeQQQ;//this is not a valid hex value and thus parsed as an element id
153
+ @test_b: #eeeFFF //this is a valid hex value but the declaration doesn't end with a semicolon and thus parsed as an element id
154
+
155
+ #eee aaa .box
156
+ {
157
+ #test bbb {
158
+ width: 500px;
159
+ height: 250px;
160
+ background-image: url(dir/output/sheep.png), url( betweengrassandsky.png );
161
+ background-position: center bottom, left top;
162
+ background-repeat: no-repeat;
163
+ }
164
+ }
165
+
166
+ @base: #f938ab;
167
+
168
+ .box-shadow(@style, @c) when (iscolor(@c)) {
169
+ box-shadow: @style @c;
170
+ -webkit-box-shadow: @style @c;
171
+ -moz-box-shadow: @style @c;
172
+ }
173
+ .box-shadow(@style, @alpha: 50%) when (isnumber(@alpha)) {
174
+ .box-shadow(@style, rgba(0, 0, 0, @alpha));
175
+ }
176
+
177
+ @color: #4D926F;
178
+
179
+ #header {
180
+ color: @color;
181
+ color: #000000;
182
+ }
183
+ h2 {
184
+ color: @color;
185
+ }
186
+
187
+ .rounded-corners (@radius: 5px) {
188
+ border-radius: @radius;
189
+ -webkit-border-radius: @radius;
190
+ -moz-border-radius: @radius;
191
+ }
192
+
193
+ #header {
194
+ .rounded-corners;
195
+ }
196
+ #footer {
197
+ .rounded-corners(10px);
198
+ }
199
+
200
+ .box-shadow (@x: 0, @y: 0, @blur: 1px, @alpha) {
201
+ @val: @x @y @blur rgba(0, 0, 0, @alpha);
202
+
203
+ box-shadow: @val;
204
+ -webkit-box-shadow: @val;
205
+ -moz-box-shadow: @val;
206
+ }
207
+ .box { @base: #f938ab;
208
+ color: saturate(@base, 5%);
209
+ border-color: lighten(@base, 30%);
210
+ div { .box-shadow(0, 0, 5px, 0.4) }
211
+ }
212
+
213
+ @import url("something.css");
214
+
215
+ @light-blue: hsl(190, 50%, 65%);
216
+ @light-yellow: desaturate(#fefec8, 10%);
217
+ @dark-yellow: desaturate(darken(@light-yellow, 10%), 40%);
218
+ @darkest: hsl(20, 0%, 15%);
219
+ @dark: hsl(190, 20%, 30%);
220
+ @medium: hsl(10, 60%, 30%);
221
+ @light: hsl(90, 40%, 20%);
222
+ @lightest: hsl(90, 20%, 90%);
223
+ @highlight: hsl(80, 50%, 90%);
224
+ @blue: hsl(210, 60%, 20%);
225
+ @alpha-blue: hsla(210, 60%, 40%, 0.5);
226
+
227
+ .box-shadow (@x, @y, @blur, @alpha) {
228
+ @value: @x @y @blur rgba(0, 0, 0, @alpha);
229
+ box-shadow: @value;
230
+ -moz-box-shadow: @value;
231
+ -webkit-box-shadow: @value;
232
+ }
233
+ .border-radius (@radius) {
234
+ border-radius: @radius;
235
+ -moz-border-radius: @radius;
236
+ -webkit-border-radius: @radius;
237
+ }
238
+
239
+ .border-radius (@radius, bottom) {
240
+ border-top-right-radius: 0;
241
+ border-top-left-radius: 0;
242
+ -moz-border-top-right-radius: 0;
243
+ -moz-border-top-left-radius: 0;
244
+ -webkit-border-top-left-radius: 0;
245
+ -webkit-border-top-right-radius: 0;
246
+ }
247
+ .border-radius (@radius, right) {
248
+ border-bottom-left-radius: 0;
249
+ border-top-left-radius: 0;
250
+ -moz-border-bottom-left-radius: 0;
251
+ -moz-border-top-left-radius: 0;
252
+ -webkit-border-bottom-left-radius: 0;
253
+ -webkit-border-top-left-radius: 0;
254
+ }
255
+ .box-shadow-inset (@x, @y, @blur, @color) {
256
+ box-shadow: @x @y @blur @color inset;
257
+ -moz-box-shadow: @x @y @blur @color inset;
258
+ -webkit-box-shadow: @x @y @blur @color inset;
259
+ }
260
+ .code () {
261
+ font-family: 'Bitstream Vera Sans Mono',
262
+ 'DejaVu Sans Mono',
263
+ 'Monaco',
264
+ Courier,
265
+ monospace !important;
266
+ }
267
+ .wrap () {
268
+ text-wrap: wrap;
269
+ white-space: pre-wrap; /* css-3 */
270
+ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
271
+ white-space: -pre-wrap; /* Opera 4-6 */
272
+ white-space: -o-pre-wrap; /* Opera 7 */
273
+ word-wrap: break-word; /* Internet Explorer 5.5+ */
274
+ }
275
+
276
+ html { margin: 0 }
277
+ body {
278
+ background-color: @darkest;
279
+ margin: 0 auto;
280
+ font-family: Arial, sans-serif;
281
+ font-size: 100%;
282
+ overflow-x: hidden;
283
+ }
284
+ nav, header, footer, section, article {
285
+ display: block;
286
+ }
287
+ a {
288
+ color: #b83000;
289
+ }
290
+ h1 a {
291
+ color: black;
292
+ text-decoration: none;
293
+ }
294
+ a:hover {
295
+ text-decoration: underline;
296
+ }
297
+ h1, h2, h3, h4 {
298
+ margin: 0;
299
+ font-weight: normal;
300
+ }
301
+ ul, li {
302
+ list-style-type: none;
303
+ }
304
+ code { .code; }
305
+ code {
306
+ .string, .regexp { color: @dark }
307
+ .keyword { font-weight: bold }
308
+ .comment { color: rgba(0, 0, 0, 0.5) }
309
+ .number { color: @blue }
310
+ .class, .special { color: rgba(0, 50, 100, 0.8) }
311
+ }
312
+ pre {
313
+ padding: 0 30px;
314
+ .wrap;
315
+ }
316
+ blockquote {
317
+ font-style: italic;
318
+ }
319
+ body > footer {
320
+ text-align: left;
321
+ margin-left: 10px;
322
+ font-style: italic;
323
+ font-size: 18px;
324
+ color: #888;
325
+ }
326
+
327
+ #logo {
328
+ margin-top: 30px;
329
+ margin-bottom: 30px;
330
+ display: block;
331
+ width: 199px;
332
+ height: 81px;
333
+ background: url(/images/logo.png) no-repeat;
334
+ }
335
+ nav {
336
+ margin-left: 15px;
337
+ }
338
+ nav a, #dropdown li {
339
+ display: inline-block;
340
+ color: white;
341
+ line-height: 42px;
342
+ margin: 0;
343
+ padding: 0px 15px;
344
+ text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.5);
345
+ text-decoration: none;
346
+ border: 2px solid transparent;
347
+ border-width: 0 2px;
348
+ &:hover {
349
+ .dark-red;
350
+ text-decoration: none;
351
+ }
352
+ }
353
+ .dark-red {
354
+ @red: @medium;
355
+ border: 2px solid darken(@red, 25%);
356
+ border-left-color: darken(@red, 15%);
357
+ border-right-color: darken(@red, 15%);
358
+ border-bottom: 0;
359
+ border-top: 0;
360
+ background-color: darken(@red, 10%);
361
+ }
362
+
363
+ .content {
364
+ margin: 0 auto;
365
+ width: 980px;
366
+ }
367
+
368
+ #menu {
369
+ position: absolute;
370
+ width: 100%;
371
+ z-index: 3;
372
+ clear: both;
373
+ display: block;
374
+ background-color: @blue;
375
+ height: 42px;
376
+ border-top: 2px solid lighten(@alpha-blue, 20%);
377
+ border-bottom: 2px solid darken(@alpha-blue, 25%);
378
+ .box-shadow(0, 1px, 8px, 0.6);
379
+ -moz-box-shadow: 0 0 0 #000; // Because firefox sucks.
380
+
381
+ &.docked {
382
+ background-color: hsla(210, 60%, 40%, 0.4);
383
+ }
384
+ &:hover {
385
+ background-color: @blue;
386
+ }
387
+
388
+ #dropdown {
389
+ margin: 0 0 0 117px;
390
+ padding: 0;
391
+ padding-top: 5px;
392
+ display: none;
393
+ width: 190px;
394
+ border-top: 2px solid @medium;
395
+ color: @highlight;
396
+ border: 2px solid darken(@medium, 25%);
397
+ border-left-color: darken(@medium, 15%);
398
+ border-right-color: darken(@medium, 15%);
399
+ border-top-width: 0;
400
+ background-color: darken(@medium, 10%);
401
+ ul {
402
+ padding: 0px;
403
+ }
404
+ li {
405
+ font-size: 14px;
406
+ display: block;
407
+ text-align: left;
408
+ padding: 0;
409
+ border: 0;
410
+ a {
411
+ display: block;
412
+ padding: 0px 15px;
413
+ text-decoration: none;
414
+ color: white;
415
+ &:hover {
416
+ background-color: darken(@medium, 15%);
417
+ text-decoration: none;
418
+ }
419
+ }
420
+ }
421
+ .border-radius(5px, bottom);
422
+ .box-shadow(0, 6px, 8px, 0.5);
423
+ }
424
+ }
425
+
426
+ #main {
427
+ margin: 0 auto;
428
+ width: 100%;
429
+ background-color: @light-blue;
430
+ border-top: 8px solid darken(@light-blue, 5%);
431
+
432
+ #intro {
433
+ background-color: lighten(@light-blue, 25%);
434
+ float: left;
435
+ margin-top: -8px;
436
+ margin-right: 5px;
437
+
438
+ height: 380px;
439
+ position: relative;
440
+ z-index: 2;
441
+ font-family: 'Droid Serif', 'Georgia';
442
+ width: 395px;
443
+ padding: 45px 20px 23px 30px;
444
+ border: 2px dashed darken(@light-blue, 10%);
445
+ .box-shadow(1px, 0px, 6px, 0.5);
446
+ border-bottom: 0;
447
+ border-top: 0;
448
+ #download { color: transparent; border: 0; float: left; display: inline-block; margin: 15px 0 15px -5px; }
449
+ #download img { display: inline-block}
450
+ #download-info {
451
+ code {
452
+ font-size: 13px;
453
+ }
454
+ color: @blue + #333; display: inline; float: left; margin: 36px 0 0 15px }
455
+ }
456
+ h2 {
457
+ span {
458
+ color: @medium;
459
+ }
460
+ color: @blue;
461
+ margin: 20px 0;
462
+ font-size: 24px;
463
+ line-height: 1.2em;
464
+ }
465
+ h3 {
466
+ color: @blue;
467
+ line-height: 1.4em;
468
+ margin: 30px 0 15px 0;
469
+ font-size: 1em;
470
+ text-shadow: 0px 0px 0px @lightest;
471
+ span { color: @medium }
472
+ }
473
+ #example {
474
+ p {
475
+ font-size: 18px;
476
+ color: @blue;
477
+ font-weight: bold;
478
+ text-shadow: 0px 1px 1px @lightest;
479
+ }
480
+ pre {
481
+ margin: 0;
482
+ text-shadow: 0 -1px 1px @darkest;
483
+ margin-top: 20px;
484
+ background-color: desaturate(@darkest, 8%);
485
+ border: 0;
486
+ width: 450px;
487
+ color: lighten(@lightest, 2%);
488
+ background-repeat: repeat;
489
+ padding: 15px;
490
+ border: 1px dashed @lightest;
491
+ line-height: 15px;
492
+ .box-shadow(0, 0px, 15px, 0.5);
493
+ .code;
494
+ .border-radius(2px);
495
+ code .attribute { color: hsl(40, 50%, 70%) }
496
+ code .variable { color: hsl(120, 10%, 50%) }
497
+ code .element { color: hsl(170, 20%, 50%) }
498
+
499
+ code .string, .regexp { color: hsl(75, 50%, 65%) }
500
+ code .class { color: hsl(40, 40%, 60%); font-weight: normal }
501
+ code .id { color: hsl(50, 40%, 60%); font-weight: normal }
502
+ code .comment { color: rgba(255, 255, 255, 0.2) }
503
+ code .number, .color { color: hsl(10, 40%, 50%) }
504
+ code .class, code .mixin, .special { color: hsl(190, 20%, 50%) }
505
+ #time { color: #aaa }
506
+ }
507
+ float: right;
508
+ font-size: 12px;
509
+ margin: 0;
510
+ margin-top: 15px;
511
+ padding: 0;
512
+ width: 500px;
513
+ }
514
+ }
515
+
516
+
517
+ .page {
518
+ .content {
519
+ width: 870px;
520
+ padding: 45px;
521
+ }
522
+ margin: 0 auto;
523
+ font-family: 'Georgia', serif;
524
+ font-size: 18px;
525
+ line-height: 26px;
526
+ padding: 0 60px;
527
+ code {
528
+ font-size: 16px;
529
+ }
530
+ pre {
531
+ border-width: 1px;
532
+ border-style: dashed;
533
+ padding: 15px;
534
+ margin: 15px 0;
535
+ }
536
+ h1 {
537
+ text-align: left;
538
+ font-size: 40px;
539
+ margin-top: 15px;
540
+ margin-bottom: 35px;
541
+ }
542
+ p + h1 { margin-top: 60px }
543
+ h2, h3 {
544
+ margin: 30px 0 15px 0;
545
+ }
546
+ p + h2, pre + h2, code + h2 {
547
+ border-top: 6px solid rgba(255, 255, 255, 0.1);
548
+ padding-top: 30px;
549
+ }
550
+ h3 {
551
+ margin: 15px 0;
552
+ }
553
+ }
554
+
555
+
556
+ #docs {
557
+ @bg: lighten(@light-blue, 5%);
558
+ border-top: 2px solid lighten(@bg, 5%);
559
+ color: @blue;
560
+ background-color: @light-blue;
561
+ .box-shadow(0, -2px, 5px, 0.2);
562
+
563
+ h1 {
564
+ font-family: 'Droid Serif', 'Georgia', serif;
565
+ padding-top: 30px;
566
+ padding-left: 45px;
567
+ font-size: 44px;
568
+ text-align: left;
569
+ margin: 30px 0 !important;
570
+ text-shadow: 0px 1px 1px @lightest;
571
+ font-weight: bold;
572
+ }
573
+ .content {
574
+ clear: both;
575
+ border-color: transparent;
576
+ background-color: lighten(@light-blue, 25%);
577
+ .box-shadow(0, 5px, 5px, 0.4);
578
+ }
579
+ pre {
580
+ @background: lighten(@bg, 30%);
581
+ color: lighten(@blue, 10%);
582
+ background-color: @background;
583
+ border-color: lighten(@light-blue, 25%);
584
+ border-width: 2px;
585
+ code .attribute { color: hsl(40, 50%, 30%) }
586
+ code .variable { color: hsl(120, 10%, 30%) }
587
+ code .element { color: hsl(170, 20%, 30%) }
588
+
589
+ code .string, .regexp { color: hsl(75, 50%, 35%) }
590
+ code .class { color: hsl(40, 40%, 30%); font-weight: normal }
591
+ code .id { color: hsl(50, 40%, 30%); font-weight: normal }
592
+ code .comment { color: rgba(0, 0, 0, 0.4) }
593
+ code .number, .color { color: hsl(10, 40%, 30%) }
594
+ code .class, code .mixin, .special { color: hsl(190, 20%, 30%) }
595
+ }
596
+ pre code { font-size: 15px }
597
+ p + h2, pre + h2, code + h2 { border-top-color: rgba(0, 0, 0, 0.1) }
598
+ }
599
+
600
+ td {
601
+ padding-right: 30px;
602
+ }
603
+ #synopsis {
604
+ .box-shadow(0, 5px, 5px, 0.2);
605
+ }
606
+ #synopsis, #about {
607
+ h2 {
608
+ font-size: 30px;
609
+ padding: 10px 0;
610
+ }
611
+ h1 + h2 {
612
+ margin-top: 15px;
613
+ }
614
+ h3 { font-size: 22px }
615
+
616
+ .code-example {
617
+ border-spacing: 0;
618
+ border-width: 1px;
619
+ border-style: dashed;
620
+ padding: 0;
621
+ pre { border: 0; margin: 0 }
622
+ td {
623
+ border: 0;
624
+ margin: 0;
625
+ background-color: desaturate(darken(@darkest, 5%), 20%);
626
+ vertical-align: top;
627
+ padding: 0;
628
+ }
629
+ tr { padding: 0 }
630
+ }
631
+ .css-output {
632
+ td {
633
+ border-left: 0;
634
+ }
635
+ }
636
+ .less-example {
637
+ //border-right: 1px dotted rgba(255, 255, 255, 0.5) !important;
638
+ }
639
+ .css-output, .less-example {
640
+ width: 390px;
641
+ }
642
+ pre {
643
+ padding: 20px;
644
+ line-height: 20px;
645
+ font-size: 14px;
646
+ }
647
+ }
648
+ #about, #synopsis, #guide {
649
+ a {
650
+ text-decoration: none;
651
+ color: @light-yellow;
652
+ border-bottom: 1px dashed rgba(255, 255, 255, 0.2);
653
+ &:hover {
654
+ text-decoration: none;
655
+ border-bottom: 1px dashed @light-yellow;
656
+ }
657
+ }
658
+ @bg: desaturate(darken(@darkest, 5%), 20%);
659
+ text-shadow: 0 -1px 1px lighten(@bg, 5%);
660
+ color: @highlight;
661
+ background-color: @bg;
662
+ .content {
663
+ background-color: desaturate(@darkest, 20%);
664
+ clear: both;
665
+ .box-shadow(0, 5px, 5px, 0.4);
666
+ }
667
+ h1, h2, h3 {
668
+ color: @dark-yellow;
669
+ }
670
+ pre {
671
+ code .attribute { color: hsl(40, 50%, 70%) }
672
+ code .variable { color: hsl(120, 10%, 50%) }
673
+ code .element { color: hsl(170, 20%, 50%) }
674
+
675
+ code .string, .regexp { color: hsl(75, 50%, 65%) }
676
+ code .class { color: hsl(40, 40%, 60%); font-weight: normal }
677
+ code .id { color: hsl(50, 40%, 60%); font-weight: normal }
678
+ code .comment { color: rgba(255, 255, 255, 0.2) }
679
+ code .number, .color { color: hsl(10, 40%, 50%) }
680
+ code .class, code .mixin, .special { color: hsl(190, 20%, 50%) }
681
+ background-color: @bg;
682
+ border-color: darken(@light-yellow, 5%);
683
+ }
684
+ code {
685
+ color: darken(@dark-yellow, 5%);
686
+ .string, .regexp { color: desaturate(@light-blue, 15%) }
687
+ .keyword { color: hsl(40, 40%, 60%); font-weight: normal }
688
+ .comment { color: rgba(255, 255, 255, 0.2) }
689
+ .number { color: lighten(@blue, 10%) }
690
+ .class, .special { color: hsl(190, 20%, 50%) }
691
+ }
692
+ }
693
+ #guide {
694
+ background-color: @darkest;
695
+ .content {
696
+ background-color: transparent;
697
+ }
698
+
699
+ }
700
+
701
+ #about {
702
+ background-color: @darkest !important;
703
+ .content {
704
+ background-color: desaturate(lighten(@darkest, 3%), 5%);
705
+ }
706
+ }
707
+ #synopsis {
708
+ background-color: desaturate(lighten(@darkest, 3%), 5%) !important;
709
+ .content {
710
+ background-color: desaturate(lighten(@darkest, 3%), 5%);
711
+ }
712
+ pre {}
713
+ }
714
+ #synopsis, #guide {
715
+ .content {
716
+ .box-shadow(0, 0px, 0px, 0.0);
717
+ }
718
+ }
719
+ #about footer {
720
+ margin-top: 30px;
721
+ padding-top: 30px;
722
+ border-top: 6px solid rgba(0, 0, 0, 0.1);
723
+ text-align: center;
724
+ font-size: 16px;
725
+ color: rgba(255, 255, 255, 0.35);
726
+ #copy { font-size: 12px }
727
+ text-shadow: -1px -1px 1px rgba(0, 0, 0, 0.02);
728
+ }
729
+ </textarea></form>
730
+ <script>
731
+ var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
732
+ theme: "lesser-dark",
733
+ lineNumbers : true,
734
+ matchBrackets : true
735
+ });
736
+ </script>
737
+
738
+ <p><strong>MIME types defined:</strong> <code>text/x-less</code>, <code>text/css</code> (if not previously defined).</p>
739
+ </body>
740
+ </html>