Commit graph

1618 commits

Author SHA1 Message Date
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 5368875d05 Moved :sass_cache_path from global to Sass renderer 2012-07-17 09:35:40 +08:00
Thomas Reynolds 7d77de3692 Merge pull request #539 from theotheo/master
Update susy gem installation command.
2012-07-16 14:23:47 -07:00
theotheo 0b1b8ca7d1 Update susy gem installation command. 2012-07-17 00:52:06 +04:00
kematzy c00f9d5782 Tests for :sass_cache_path custom config
First time working with Cucumber, so perhaps not the best way to do things.

* Tests for default setting which stores the .sass_cache directory in Middleman app root.

* Tests for custom setting which stores the .sass_cache directory in /tmp directory.

Please Note!  Unable to test the output of the default .sass_cache location since the directory is stored outside of the app root during testing, but inside app root in "production"
2012-07-16 14:39:26 +08: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
Thomas Reynolds 9dad67bf9b Update master 2012-07-15 12:14:29 -07:00
Thomas Reynolds a8f45b1e17 Merge pull request #532 from rumpuslabs/markdown-not-nil
Markdown engine should not be nil
2012-07-15 12:13:46 -07:00
Thomas Reynolds d88f2fade0 Merge pull request #521 from bhollis/markdown
Use middleman's image_tag and link_to helpers from within Redcarpet markdown
2012-07-15 12:09:39 -07:00
Tim Bates aa35b8f0f0 Markdown engine should not be nil 2012-07-15 23:02:04 +09:30
Thomas Reynolds e59241c036 Merge pull request #531 from m-o-e/chdir_fix
Use plain Dir.chdir instead of enclosing middleman in a Dir.chdir-block.
2012-07-14 11:28:34 -07:00
moe cf897e1e9e Use plain Dir.chdir instead of enclosing middleman in a Dir.chdir-block.
This allows extensions, templates and monkey-patches to chdir
when needed, without triggering this ruby warning:

  warning: conflicting chdir during another chdir block
2012-07-14 14:46:46 +02:00
Thomas Reynolds 9371eb2057 Merge pull request #530 from rumpuslabs/trailing_slash
Add trailing_slash option for prettier urls
2012-07-13 09:06:14 -07:00
Tim Bates 0fa1bfe675 Tests and a small bug fix to make them pass 2012-07-13 16:00:53 +09:30
Tim Bates 3cbda0ee36 Added strip_index_file option for configuring urls 2012-07-13 10:57:05 +09:30
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
Tim Bates 692aa10c8b Add trailing_slash option for prettier urls
"set :trailing_slash, false" will cause resource urls that match the
index_file to have the trailing slash stripped off the directory URL,
e.g. instead of "/dir/index.html" becoming "/dir/" it will be "/dir"
2012-07-12 12:03:33 +09:30
Thomas Reynolds 5c9a5c9849 Merge pull request #528 from rumpuslabs/sitemap_patches
Sitemap patches
2012-07-11 10:43:20 -07:00
Tim Bates d30f883e48 Regenerate @_lookup_cache after each manipulation
Trying to call Resource#metadata from within
MyExtension#manipulate_resource_list generates an exception in
Proxies::ResourceInstanceMethods#get_source_file because @_lookup_cache
is empty. Moving the recalculation inside the loop means regenerating
the cache after each manipulation but allows extensions to examine the
page metadata when manipulating proxied resources.
2012-07-11 15:16:18 +09:30
Tim Bates ffecc3e4cc Optimisation, Hash#delete returns the deleted item 2012-07-11 15:14:08 +09:30
Thomas Reynolds f062bb7c3d Merge pull request #518 from bhollis/proxy
Don't allow people to proxy a path to itself, or to another proxy.
2012-07-09 12:42:40 -07:00
Thomas Reynolds 174000c1a2 3.0 [ci skip] 2012-07-09 10:00:49 -07:00
Thomas Reynolds 67ceb47952 Merge pull request #519 from bhollis/fixes
Pre-3.0 Fixes
2012-07-09 08:15:48 -07:00
Thomas Reynolds d52e555dcd Merge pull request #520 from bhollis/image_sizes
Make :automatic_image_sizes work for absolute image paths
2012-07-09 08:14:29 -07:00
Ben Hollis 7be0590acf Use middleman's image_tag and link_to helpers from within Redcarpet markdown 2012-07-09 00:26:33 -07:00
Ben Hollis 4c5b614fe2 Make :automatic_image_sizes work for absolute image paths 2012-07-09 00:22:07 -07:00
Ben Hollis f908b378c5 Fiter out annoying "Could not determine content-length of response body." messages from verbose logging 2012-07-09 00:18:03 -07:00
Ben Hollis 324eac428e Ignore emacs temporary files 2012-07-08 19:02:34 -07:00
Ben Hollis d05f968feb Fix all_files_under - not all non-files are directories 2012-07-08 19:02:34 -07:00
Ben Hollis 12c551228f Don't allow people to proxy a path to itself, or to another proxy. 2012-07-08 15:30:02 -07:00
Ben Hollis 6dad42bc77 Fix gzip extension 2012-07-07 20:50:43 -07:00
Thomas Reynolds 9f7f3370aa Catch JRuby/Coffee exception correctly 2012-07-07 17:29:31 -07:00
Thomas Reynolds 5cff7cd9c1 Update execjs dep, hopefully fixing therubyrhino on JRuby 2012-07-07 16:30:50 -07:00
Thomas Reynolds 2282657000 Use therubyrhino for jruby execjs tests 2012-07-07 14:31:39 -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
Thomas Reynolds b67d4e7c82 bump submodule [ci skip] 2012-07-04 16:52:53 -07:00
Thomas Reynolds d4259315e7 version bump [ci skip] 2012-07-04 16:47:01 -07:00
Thomas Reynolds 54f796120f Merge branch 'master' of github.com:middleman/middleman 2012-07-04 16:45:32 -07:00
Thomas Reynolds 63224639d9 Add tests for more implied extensions 2012-07-04 16:45:27 -07:00
Thomas Reynolds d23a773491 Merge pull request #370 from bhollis/master
Syntax errors lock up Middleman
2012-07-04 16:24:42 -07:00
Thomas Reynolds df31f65522 Make automatic helpers smarter. Fixes #510 2012-07-04 11:29:00 -07:00
Thomas Reynolds be2589de0d Merge pull request #284 from bhollis/layout
Bad error message for extensionless files
2012-07-03 13:30:38 -07:00
Ben Hollis 89afc86a5b Friendlier error message when a non-default layout is not in the layouts directory. 2012-07-03 00:01:11 -07:00
Ben Hollis 1229a9991a Prevent NoMethodError/NameError from hanging the server.
The fix is to work around this bug: http://bugs.ruby-lang.org/issues/4521 where Ruby will call to_s/inspect while printing exception messages, which can take a long time (minutes at full CPU) if the object is huge or has cyclic references, like Middleman::Application does. Defining #to_s short-circuits that. This fixes #370.
2012-07-02 23:39:30 -07:00
Thomas Reynolds a5a2e1568b point to public repo 2012-07-02 21:46:17 -07:00
Thomas Reynolds 6791dc431c Let travis know we're using submodules 2012-07-02 21:43:17 -07:00
Thomas Reynolds d0cf90675a Update changelog 2012-07-02 21:42:55 -07:00
Thomas Reynolds cdca063fb8 Add middleman-sprockets as a gitmodule [no ci] 2012-07-02 21:32:08 -07:00
Thomas Reynolds 1c9a97990e Update some gem requirements, lock Padrino 2012-07-02 16:35:53 -07:00