Skip to content

Instantly share code, notes, and snippets.

View jqr's full-sized avatar

Elijah Miller jqr

View GitHub Profile
ActiveSupport::CoreExtensions::Time::Conversions::DATE_FORMATS.update(
# 4/5/9
:mdy => proc { |t| t.strftime('%m/%d/%y').gsub /(\b)0/, '\1' }
)
value =
10.times do |i|
if i == 5
break "found five!"
end
end
value # => "found five!"
class FilterableEnumerable
def initialize(original)
@original = original
end
def ==(value)
@original.select { |v| v == value }
end
def method_missing(sym, *args, &block)
def reindent(data, base)
lines = data.split("\n")
smallest_indentation = lines.collect { |l| l =~ /\w/ }.min
lines.each do |line|
line.gsub!(/^\s{#{smallest_indentation}}/, ' ' * base)
end
lines.join("\n")
end
class FilterableEnumerable
def initialize(original)
@original = original
end
def >(value)
@original.select { |v| v > value }
end
def >=(value)
88888!
def make_class(klass)
::Object.class_eval "
class #{klass} < #{self}
end
"
end
#!/usr/bin/env /some/rails/project/script/runner
# Shows every class that contains capitalized method names and the "offending" methods.
methods = {}
ObjectSpace.each_object(Class) do |klass|
capitalized_methods = klass.methods.select { |m| m =~ /[A-Z]/ }
unless capitalized_methods.empty?
methods[klass] = capitalized_methods
end
@jqr
jqr / nginx.conf
Created March 26, 2009 19:52
Nginx cache busting rewriter
# Nginx cache busting rewriter, best used on assets that have long-lived expires.
#
# Rewrites like so:
# blah.com/release_ab2ea212312.../file.css => blah.com/file.css
#
location ~ ^/release_(.*?)/ {
rewrite ^/release_(.*?)/(.*)$ /$2 last;
}
#!/usr/bin/ruby
files = {}
Dir.glob('**/*').each do |file|
basename = File.basename(file).downcase
if File.file?(file)
files[basename] ||= []
files[basename] << file
end
end