Skip to content

Instantly share code, notes, and snippets.

module Foo
end
initializer "iqvoc.load_migrations" do |app|
app.class.configure do
config.paths['db/migrate'] += Iqvoc::Engine.paths['db/migrate'].existent
end
end
puts RUBY_VERSION
class Foo
def info(*args)
puts args.inspect
end
end
@youngbrioche
youngbrioche / add_encoding_headers.sh
Created December 2, 2011 12:12
Add encoding headers to Ruby files
find -name "*.rb" | \
while read filepath; do \
{ echo -n "$filepath: "; head -n1 "$filepath"; } | \
grep -v encoding | sed -e "s#.*#$filepath#"; \
done | \
while read filepath; do \
{ echo "# encoding: UTF-8"; echo; } | \
cat - "$filepath" > "$filepath.tmp"; \
mv "$filepath.tmp" "$filepath"; \
done
test "unicode decoding" do
encoded_val = "\u00C4ffle"
decoded_val = JSON.parse("{\"x\": \"#{encoded_val}\"}")['x'].gsub("\\n", "\n")
assert_equal decoded_val, "Äffle"
end
# 1.9.2 passes
# 1.8.7
# <"u00C4ffle"> expected but was
e = Typhoeus::Easy.new
e.url = "http://example.com/"
e.method = :get
e.perform
@youngbrioche
youngbrioche / configuration.rb
Created February 15, 2011 11:11
Small configuration DSL
module Foo
module Configuration
require 'ostruct'
extend ActiveSupport::Concern
included do
#
end
module ClassMethods
# dynamically determining the MySQL socket in use
<% socket = ["/tmp/mysql.sock",
"/opt/local/var/run/mysql5/mysqld.sock",
"/tmp/mysqld.sock",
"/var/run/mysqld.sock"].detect { |socket| File.exist?(socket) } %>
development:
encoding: utf8
username: root
development:
encoding: utf8
username: user
password: foobar
database: foo_development
<% if defined?(JRuby) %>
adapter: jdbcmysql
hostname: localhost
<% else %>
adapter: mysql
@youngbrioche
youngbrioche / gist:146379
Created July 13, 2009 19:27
n-level tree based hierarchical URLs with Rails and acts_as_tree
## n-level tree based hierarchical URLs with Rails and acts_as_tree
## be free to adopt this to acts_as_nested_set or whatever
# routes.rb
map.article_deeplink ':locale/*path/:slug', :controller => 'articles', :action => 'show'
# generate the url
# the array building function should be moved into an instance method
article_deeplink_path(:path => @article.ancestors.reverse.map(&:slug), :slug => @article.slug)