kematzy
3ea2241155
Added :sass_assets_path for external SASS repositories
...
Compass is great, but sometimes we need to have common framework code in one (global) location with local overrides in the app.
This addition adds built-in support for loading SASS/SCSS files from multiple locations external to the "source" directory and even the Middleman app root.
Example usage:
# in config.rb
set :sass_assets_path, [ "#{root}/assets/sass/", "~/.sass-repo/"]
Using symlinks or copying files to the Middleman project can get messy quickly. This fix reduces some of those issues.
2012-07-17 09:21:46 -07:00
Thomas Reynolds
6f0f9b00a2
Merge pull request #536 from kematzy/fix-sass-cache-location
...
Fix sass cache location
2012-07-16 22:14:05 -07:00
kematzy
1de1d3d25e
Added :sass_cache_path custom config of SASS cache directory
...
The default output of SASS .sass_cache directory is in the Middleman app root directory, which to my mind adds clutter to the directory.
Secondly, when storing Middleman apps in a Dropbox subfolder, the .sass_cache directory gets synced unnecessarily.
This fix enables moving the .sass_cache directory to any path on the system, such as the "/tmp" directory for automatic discarding of files when restarting the system.
Suggested usage:
#in config.rb
set :sass_cache_path, File.join('/tmp', "middleman-#{File.basename(Dir.pwd)}", "sass_cache")
which could return something like:
`/tmp/middleman-example.com/sass_cache`
This keeps multiple projects separated and easily identifiable.
2012-07-16 14:34:36 +08:00
Tim Bates
2117cbac79
Make directory_indexes check the destination_path
...
If the destination_path matches the index_file but the original path
does not (as can happen with proxied resources) then directory_indexes
will add the index file a second time, e.g. resource.path = "myres.html"
and resource.destination_path = "myres/index.html" then
directory_indexes will convert this to resource.destination_path =
"myres/index/index.html". This patch fixes that by making
directory_indexes check the destination_path when determining whether to
reroute.
2012-07-12 15:02:48 +09:30
Ben Hollis
4c5b614fe2
Make :automatic_image_sizes work for absolute image paths
2012-07-09 00:22:07 -07:00
Ben Hollis
6dad42bc77
Fix gzip extension
2012-07-07 20:50:43 -07:00
Thomas Reynolds
4b03c5e2df
Add Middleman::Util.all_files_under to get a recursive listing of files beneath a path, follows symlinks. Fixes #515
2012-07-06 19:32:05 -07:00
Ben Hollis
4faa98e874
Simplify and fix relative_assets extension to work more consistently. Also, fix a bug in relative link_to inspired by fixing this bug. This fixes #507 .
2012-06-30 22:02:23 -07:00
Ben Hollis
6ac263619a
Make :http_prefix work in link_to and asset helpers as long as the linked item is a sitemap resource. Fixes #484 .
2012-06-23 17:19:24 -07:00
Ben Hollis
57f5701e72
Add a Middleman::Util.path_match function that handles matching on regexes, globs, and procs, and use it from asset_hash, minify_javascript, and minify_css. Fixes #480 .
2012-06-16 20:26:42 -07:00
Ben Hollis
8a01b28369
Improve link_to so that it can handle a Resource in place of a url. Fixes #474 .
2012-06-16 17:48:41 -07:00
Daniel Bayerlein
8fefbe350b
Remove double whitespace.
2012-06-10 00:13:04 +03:00
Daniel Bayerlein
cc1a741eb7
Move "set :fonts_dir" from "middleman-more" to "middleman-core".
2012-06-09 20:30:22 +02:00
Ben Hollis
0d0d572c3a
Rename internationalization module to avoid conflict with regular I18n module. Fixes #458 .
2012-06-05 22:00:16 -07:00
Ben Hollis
f287e0a2bc
Don't asset_hash ico and manifest. Now with tests to prevent another regression.
2012-06-01 23:54:57 -07:00
Thomas Reynolds
67e78f20c7
Move renderers into core, but don't require gems and only register templates if gems present
2012-05-28 13:19:40 -07:00
Thomas Reynolds
98fc81beef
Implement and test asset_hash ignore option
2012-05-26 15:08:59 -07:00
Thomas Reynolds
3b847696ff
Load from root bundler when running from git
2012-05-26 14:15:36 -07:00
Thomas Reynolds
8d483f882c
Move Sprockets into an extension
2012-05-26 13:43:27 -07:00
Thomas Reynolds
d79acc7a78
Make i18n a normal extension with options
2012-05-24 16:51:36 -07:00
Thomas Reynolds
64f84bacd2
asset urls, padrino helpers and i18n belong in more
2012-05-24 16:31:21 -07:00
Thomas Reynolds
1cad726c81
Move off-by-default extensions into middleman-more, make middleman-more itself an extension
2012-05-24 16:14:17 -07:00
Thomas Reynolds
4b818ea230
Fix Sass Syntax error module path. Fixes #444
2012-05-23 14:37:57 -07:00
Thomas Reynolds
f0d781cce3
Implement our own Redcarpet Template to support renderer-level options. Closes #442
2012-05-22 14:50:37 -07:00
Ben Hollis
045f25fa4e
Ignore apple-touch-icon files from asset_hash
2012-05-20 21:01:35 -07:00
Ben Hollis
340922659a
Don't include ico and manifest in asset_hash by default
2012-05-19 23:47:26 -07:00
Ben Hollis
9b93bf2498
Add an option to asset_hash to allow excluding files that would otherwise get hashes appended to their filenames.
2012-05-19 15:35:27 -07:00
Thomas Reynolds
a7adc20b47
still support and test redcarpet
2012-05-02 15:27:47 -07:00
Ben Hollis
49bbc9feaa
Switch back to maruku
2012-05-01 22:46:38 -07:00
Ben Hollis
778626c6ec
Make Middleman somewhat more threadsafe and switch back to webrick.
2012-04-30 22:38:57 -07:00
Thomas Reynolds
7694ef6e07
Merge pull request #399 from bhollis/gzip
...
Synchronize gzipped file mtimes with their source file's mtime
2012-04-28 09:43:56 -07:00
Ben Hollis
9b9c95bd36
Synchronize gzipped file mtimes with their source file's mtime
2012-04-27 22:25:45 -07:00
Ben Hollis
9d811e0cf7
Prevent Sprockets from generating different hashes based on Sprockets' version number
2012-04-27 18:15:42 -07:00
Ben Hollis
593cdb27aa
I'm bad at Ruby
2012-04-27 09:20:38 -07:00
Ben Hollis
a65e1619b9
Move extract_response_text into Middleman::Util
2012-04-26 21:55:07 -07:00
Thomas Reynolds
a4b68335d4
Coffeescript module
2012-04-26 16:39:53 -07:00
Thomas Reynolds
874ebc13c9
Cleanup renderers
2012-04-26 16:15:35 -07:00
Thomas Reynolds
2297100d9e
Minor cache_buster cleanup
2012-04-26 16:02:06 -07:00
Thomas Reynolds
4a49388d64
Minor relative_assets cleanup
2012-04-26 15:59:28 -07:00
Thomas Reynolds
8bf0124241
Minor minify_javascript cleanup
2012-04-26 15:57:37 -07:00
Thomas Reynolds
2292c32773
Minor minify_css cleanup
2012-04-26 15:56:27 -07:00
Thomas Reynolds
072880d79c
Cleanup Compass extension
2012-04-26 15:53:45 -07:00
Thomas Reynolds
d6f75afb3d
Cleanup middleman-more loading, remove autoload
2012-04-26 15:37:44 -07:00
Thomas Reynolds
cc3aebf5cc
Allow compressor to be passed to minify extensions as an activate option
2012-04-26 14:15:35 -07:00
Ben Hollis
ce9b99ce44
Disable inline minification by default, allow it to be turned on with an option
2012-04-25 23:41:09 -07:00
Ben Hollis
82cc836ed9
Only warn on JS minification errors, and allow for custom minification ignores
2012-04-23 22:26:20 -07:00
Steel Fu
a85678f040
Add lib/asset to sprocket load path
2012-04-18 13:58:20 -07:00
Ben Hollis
50b797e0be
Get asset_hash working after the sitemap refactor. Part of this required changing the behavior of the OnDisk Sitemap extension to rebuild the sitemap every time a file is touched, instead of just when files are added (even if the file being touched is ignored by the sitemap, like a partial!). This is because asset_hash needs to recalculate hashes whenever any file changes, since partials can affect the output of other files.
2012-04-17 01:05:28 -07:00
Thomas Reynolds
d2d40079cc
Rename Middleman::Base to Middleman::Application
2012-04-14 14:04:10 -07:00
Thomas Reynolds
d935aedd59
Sitemap refactor
2012-04-14 13:17:42 -07:00
Ben Hollis
7c78b20f65
Slightly improve the minify regexes
2012-04-09 19:53:01 -07:00
Ben Hollis
192047d242
Minify all JS and CSS via middleware. This means JS or CSS anywhere in the site is minified, not just in the Sprockets-controlled directories. I've also added inline CSS compression, and handling of several common "guards" that get wrapped around JS. Also, leave alone non-JS script tags (which may contain something like jQuery templates). Sprockets no longer has anything to do with minification after this.
2012-04-09 00:05:22 -07:00
Ben Hollis
fc79459e61
Fix the asset_hash extension to operate on the hash of the rendered output rather than just the source file. This prevents generating the same hash for a file when partials it uses change, or if a helper it uses produces different output. As part of this change I removed the caching from Sitemap::Page#destination_path and asset_hash since they were preventing recalculation of path/hash when partials changed, and I rewrote the Sprockets extension to expose the Sprockets environment to other extension, which included consolidating the JS and CSS Sprockets environments into one.
2012-04-04 00:00:33 -07:00
Ben Hollis
30c41df909
Merge pull request #335 from bhollis/cache
...
Introduce a cache tied to individual sitemap pages
2012-04-03 09:28:37 -07:00
Ben Hollis
4a4454fcab
Introduce a cache tied to individual sitemap pages. This helps individual extensions avoid having to implement methods to clear the cache whenever a page changes.
2012-04-01 20:37:24 -07:00
Ben Hollis
0a97aa7ec3
Fix undefined variable error in cache_buster, and make its tests more explicit.
2012-04-01 18:25:57 -07:00
Thomas Reynolds
183e9d68f3
Implied extensions. Closes #304
2012-03-29 18:34:25 +01:00
Trevor Wennblom
9d1be8f393
typo? engine undefined
2012-03-27 18:17:59 -05:00
Ben Hollis
b2f6d0db09
Get rid of some unused stuff in sitemap and complete documentation
2012-03-26 21:40:30 -07:00
Thomas Reynolds
7d2821a472
travis update
2012-03-14 20:02:49 -07:00
Ben Hollis
baa7d42d74
Forgot to rename gzip extension in one place
2012-03-13 22:42:18 -07:00
Ben Hollis
317dfb318a
Rename gzip_assets to just gzip since it does HTML too
2012-03-12 21:31:05 -07:00
Ben Hollis
3fde255610
Change gzip_assets output to print size difference in human terms
2012-03-11 11:06:48 -07:00
Thomas Reynolds
89bd4f1eaf
correct a relative_assets issue
2012-03-10 19:51:47 -08:00
Ben Hollis
0470fa3083
Remove nonsense comment
2012-03-04 23:37:16 -08:00
Thomas Reynolds
b9475bbccc
Merge asset_hash extension
2012-03-04 22:53:43 -08:00
Ben Hollis
af605a909b
Rewrite gzip_assets to work as a post-build step and to leave uncompressed versions around.
2012-03-04 16:42:14 -08:00
Ben Hollis
cf9e59db83
Merge remote-tracking branch 'origin/master' into gzip
2012-03-04 15:36:36 -08:00
Ben Hollis
073086b79c
Extension to add hash values to asset filenames. This extension causes asset file types (images, scripts, stylesheets, etc) to have a unique identifier appended to their filename that consists of a hash of their contents. This extension also includes a Rack middleware that rewrites references to these assets in HTML, JavaScript, and CSS files, eliminating the need to use special helper functions to include modified filenames in references.
2012-03-04 15:24:38 -08:00
Thomas Reynolds
332a503460
Always pretend we no nothing about the build folder. Fixes #283
2012-03-03 15:49:49 -08:00
Ben Hollis
81c83fafa6
Merge remote-tracking branch 'origin/master'
2012-02-23 21:33:05 -08:00
Vasily Fedoseyev
c9b4edcc0a
Add project vendored css and js into sprockets paths
2012-02-14 00:17:32 +04:00
Ben Hollis
e4aa3da80a
Make the list of file extensions that get gzipped configurable as an option to the gzip_assets extension
2012-02-11 00:22:10 -08:00
Ben Hollis
c9b7bf4b59
Extension that will pre-Gzip JS and CSS files. Gzipped assets can be served directly by Apache or Nginx with the proper configuration, and pre-zipping means that we can use a more agressive compression level at no CPU cost per request.
2012-02-10 21:06:44 -08:00
Ben Hollis
382107d403
Get rid of build_reroute. The last thing using it was the sprockets extension, though it didn't appear to need it since removing the build_reroute call leaves tests passing, and the test site I tried still generated JS from CoffeeScript just fine.
2012-02-08 22:13:49 -08:00
Thomas Reynolds
cdff84b84a
continue trying to fix compass issue
2012-02-08 08:49:40 -08:00
Thomas Reynolds
79eeba9d1a
switch built-in css compressor
2012-02-08 08:47:34 -08:00
Thomas Reynolds
8286879f36
sprockets-sass was overwriting image-url and breaking relative assets. Fixes #256
2012-02-05 11:43:19 -08:00
Thomas Reynolds
251a2e0eb3
add failing tests for compass relative assets
2012-01-31 21:30:45 -08:00
Thomas Reynolds
be6f6944ca
docs complete. closes #187 on a mother fucking cop.
2012-01-14 12:52:19 -08:00
Thomas Reynolds
c7249a63b1
middleman-more is fully rdoc'd
2011-12-31 14:28:17 -08:00
Thomas Reynolds
347eb2c6b8
move gem requires
2011-12-30 19:31:10 -08:00
Thomas Reynolds
ca10d108e3
fix remaining middleman-more tests
2011-12-29 19:28:49 -08:00
Thomas Reynolds
73913f0ace
Start getting middleman-more tests passing. About 50% done
2011-12-29 19:04:39 -08:00
Thomas Reynolds
c8a134a386
split into middleman-core and middleman-more
2011-12-29 15:09:51 -08:00