Commit graph

178 commits

Author SHA1 Message Date
Ben Hollis 15ca8db58d Revert 8606fb4eba and 40a60efd28 since the original problem had already been solved by handling FastImage::UnknownImageType in 0d806277f9. See #660. 2013-01-03 22:55:10 -08:00
Krystian 4ecadd8734 Corrected image_tag helper so that supported_extensions doesn't appear in the tag attributes
The modifications to add FastImage support made it that supported_extensions="[.png .jpg .jpeg .bmp .gif]" appeared in the img tag attributes upon building the project.
2013-01-03 22:05:35 -08:00
Krystian 40a60efd28 Corrected image_tag helper so that supported_extensions doesn't appear in the tag attributes
The modifications to add FastImage support made it that supported_extensions="[.png .jpg .jpeg .bmp .gif]" appeared in the img tag attributes upon building the project.
2013-01-03 22:46:45 -05:00
Thomas Reynolds aefe61b18f Catch bad URI errors 2013-01-01 17:40:54 -08:00
Ben Hollis ed5893ffcd Add a :query option to link_to to allow specifying query string 2012-12-31 10:34:13 -08:00
Ben Hollis a6c74b5231 Fix mail_to 2012-12-31 10:34:10 -08:00
Ben Hollis 3214cac153 Make link_to ignore (and preserve) query string and anchor in URLs/paths. 2012-12-31 10:33:10 -08:00
Ben Hollis 9954bce2e3 Add a :query option to link_to to allow specifying query string 2012-12-30 16:27:33 -08:00
Ben Hollis 028c3ec480 Fix mail_to 2012-12-30 15:55:54 -08:00
Ben Hollis 377aa41a23 Make link_to ignore (and preserve) query string and anchor in URLs/paths. 2012-12-30 15:55:54 -08:00
Thomas Reynolds 1f3650ccea make rack::lint happy 2012-12-25 22:30:25 -08:00
Thomas Reynolds 55291edc65 Merge pull request #374 from middleman/metapages
Idea: Metadata pages
2012-12-25 16:12:27 -08:00
Ben Hollis ae743ac4db Conform to the rack specs, with help from Rack::Lint 2012-12-25 16:11:13 -08:00
Thomas Reynolds 45ddc0c344 Make Sitemap metadata queryable with arel-style API 2012-12-25 16:05:54 -08:00
Thomas Reynolds c2d816fb02 Merge pull request #591 from bdielman/smacss
Reorganized SMACSS template for greater flexibility
2012-12-25 15:54:15 -08:00
Thomas Reynolds bd47af5744 alternative asset_host initializer 2012-12-19 09:42:55 -08:00
Daniel Jabbour 4b7411b08a Fixing image_tag helper so it only attempts to auto image sizes file extensions supported by FastImage. This can be overriden by passing param :supported_extensions into the image_tag helper. 2012-12-15 14:51:45 -08:00
Daniel Jabbour 8606fb4eba Fixing image_tag helper so it only attempts to auto image sizes file extensions supported by FastImage. This can be overriden by passing param :supported_extensions into the image_tag helper. 2012-11-05 18:09:30 -08:00
Ben Hollis 0d806277f9 Don’t print a warning when FastImage doesn’t know about a file type 2012-10-20 21:18:42 -07:00
Rolf Timmermans da11eae106 Fix asset hash generation in combination with sprockets. 2012-10-16 16:57:00 -07:00
Rolf Timmermans 6201e671ef Fix asset hash generation in combination with sprockets. 2012-10-16 19:42:38 +02:00
Ben Hollis a50ca56fbc Switch over to new config methods 2012-10-13 21:37:02 -07:00
Ben Hollis 52819cd239 Make sure to require rack/test from asset_hash 2012-09-30 19:25:15 -07:00
Thomas Reynolds 3a4c063535 Reload i18n files when they change, closes #616 2012-09-30 13:17:01 -07:00
Thomas Reynolds c53c46729a actually make ruby encoding setting work, fix gzip to read/write binary 2012-09-29 14:12:26 -07:00
Thomas Reynolds 061323a09f prep release 2012-09-23 18:43:42 -07:00
Thomas Reynolds 2aec04db69 Merge pull request #558 from bhollis/asset-hash-rack
Asset_hash doesn't play nice with Sprockets
2012-09-23 18:41:11 -07:00
Ben Hollis 6c241603ac Delay recalculating sitemap until absolutely necessary, avoiding redundant recalculations. 2012-09-16 19:36:47 -07:00
Ben Hollis d181ec5f4f Remove use of full_path and odd options from auto_tag 2012-09-16 01:57:37 -07:00
Brad Dielman + Joe Fiorini 04f29139cb Add README files for each directory 2012-09-11 11:01:55 -04:00
Joe Fiorini f1038eb566 Make sure we keep the empty directories 2012-09-11 11:01:54 -04:00
Brad Dielman + Joe Fiorini 8f49e41422 Refactor structure into folders 2012-09-11 11:01:54 -04:00
Ben Hollis 09ba0049d4 Fix asset_hashing assets affected by Rack middleware or mounted apps (like sprockets). Fixes #558 2012-09-11 00:08:58 -07:00
Thomas Reynolds 1998668a87 Disable buggy color-compression in built-in Rainpress CSS minification. Fixes #576 2012-08-28 16:08:34 -07:00
Thomas Reynolds 54c055ea5e Hack a way to pass Middleman context into Slim filters 2012-08-16 13:48:34 -07:00
Thomas Reynolds 8e7041994f Wire-up and document smacss template 2012-08-14 13:52:07 -07:00
Thomas Reynolds b3fd8629d3 Merge pull request #562 from nsteiner/smacss
adding smacss submodule
2012-08-14 13:43:57 -07:00
Thomas Reynolds 446aa6a4ba Clean up whitespace, play with cane for testing style quality and code complexity 2012-08-13 15:41:07 -07:00
Nate Steiner 7fb6766d4d adding smacss as files instead of a submodule 2012-08-10 14:19:20 -04:00
Nate Steiner 893b7baafd removing smacss submodule 2012-08-10 14:17:10 -04:00
Nate Steiner e29dfa4ab7 adding smacss submodule 2012-08-10 11:29:19 -04:00
Thomas Reynolds f1eae1e0c8 Correct path in sass-assets-path test 2012-07-25 12:05:43 -07:00
Thomas Reynolds de6d7980ac Use centralized Logger and add instrument methods 2012-07-18 09:30:39 -07:00
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