Skip to content

Instantly share code, notes, and snippets.

Les Fletcher hmcfletch

Block or report user

Report or block hmcfletch

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@hmcfletch
hmcfletch / .irbrc
Created May 10, 2011
Allows you to toggle logging to dump to the console and back to the log file
View .irbrc
def toggle_console_logging
if ActiveRecord::Base.logger == Rails.logger
l = Logger.new(STDOUT)
l.level = Rails.logger.level
set_logger l and return "console"
else
set_logger Rails.logger and return "log file"
end
View git_prompt.sh
DEFAULT="\[\033[1;00m\]"
BLACK="\[\033[1;30m\]"
YELLOW="\[\033[1;33m\]"
GREEN="\[\033[1;32m\]"
WHITE="\[\033[1;37m\]"
BLUE="\[\033[1;36m\]"
# Returns "*" if the current git branch is dirty.
function parse_git_dirty {
[[ $(git diff --shortstat 2> /dev/null | tail -n1) != "" ]] && echo "*"
}
@hmcfletch
hmcfletch / useful_queries.sql
Created May 10, 2011
A list of helpful SQL queries
View useful_queries.sql
-- Show the coverage of a partial index
SELECT COUNT(DISTNICT(SUBSTR(<column>,1,<partial index length>))) / COUNT(DISTINCT(<column>)) * 100 FROM <table>;
@hmcfletch
hmcfletch / translate.sh
Created May 11, 2011
Command line translate with Google APIs
View translate.sh
# $ translate hola
# hello
# $ translate hello es
# hola
# $ translate hello fr
# bonjour
#
# USAGE:
#
# translate <phrase to translate> <destination language> [<source language>]
@hmcfletch
hmcfletch / state_abbr_to_name.rb
Created Jun 2, 2011
Ruby hashes for converting states to abbreviations and back
View state_abbr_to_name.rb
STATE_ABBR_TO_NAME = {
'AL' => 'Alabama',
'AK' => 'Alaska',
'AS' => 'America Samoa',
'AZ' => 'Arizona',
'AR' => 'Arkansas',
'CA' => 'California',
'CO' => 'Colorado',
'CT' => 'Connecticut',
'DE' => 'Delaware',
@hmcfletch
hmcfletch / gist:1018085
Created Jun 10, 2011
TextMate javascript syntax highlighting for content_for :inline_js
View gist:1018085
// To edit:
// Bundles -> Bundle Editor -> Edit Languages
// Open Ruby on Rails
// Edit HTML (Rails)
// add to the patterns
// works for <% content_for :inline_js do -%>
// can prefix :inline_js like :fb_inline_js
// the end tag must look like
// <!-- end :fb_inline_js--> works as well
@hmcfletch
hmcfletch / months_between.rb
Created Jul 28, 2011
Determine the number of months between two time stamps
View months_between.rb
# A direct calculation of the number of months between two dates
class Time
class << self
def months_between(start_date, end_date)
return -months_between(end_date, start_date) if end_date < start_date
s = start_date
@hmcfletch
hmcfletch / install_rails_master.sh
Created Nov 28, 2011
Get the latest Rails up and running locally
View install_rails_master.sh
# this was for Rails 3.2.0 before the RC dropped
rvm gemset create rails-master
rvm gemset use rails-master
cd ~/src
git clone git://github.com/rails/arel.git
cd arel
gem build arel.gemspec
gem install arel-*.gem
@hmcfletch
hmcfletch / application.rb
Created Dec 29, 2011
Rails project wide and personal configuration files
View application.rb
require File.expand_path('../boot', __FILE__)
require 'rails/all'
module MyApp
class Application < Rails::Application
# you app configuration code
end
end
@hmcfletch
hmcfletch / application.rb
Created Jan 1, 2012
Automatic Observer Registration
View application.rb
module AppName
class Application < Rails::Application
config.encoding = "utf-8"
config.filter_parameters += [:password]
config.assets.enabled = true
config.assets.version = '1.0'
# registers any file in the app/observers directory as an observer
observers = [] # Register all observers in the observers folder.
pattern = File.join(Rails.application.config.root, 'app', 'observers', '**', '*.rb')
You can’t perform that action at this time.