Skip to content

Instantly share code, notes, and snippets.

@gussan
gussan / diff
Created November 19, 2012 06:18
Fix ruby's uri parser to adapt subdomains including underscores
--- a/uri/common.rb
+++ b/uri/rfc3986_common.rb
@@ -45,9 +45,9 @@ module URI
RESERVED = ";/?:@&=+$,\\[\\]"
# domainlabel = alphanum | alphanum *( alphanum | "-" ) alphanum
- DOMLABEL = "(?:[#{ALNUM}](?:[-#{ALNUM}]*[#{ALNUM}])?)"
+ DOMLABEL = "(?:[#{ALNUM}](?:[-_#{ALNUM}]*[#{ALNUM}])?)"
# toplabel = alpha | alpha *( alphanum | "-" ) alphanum
- TOPLABEL = "(?:[#{ALPHA}](?:[-#{ALNUM}]*[#{ALNUM}])?)"
@gussan
gussan / gem_installer_eperm_patch.rb
Created November 7, 2012 08:21
Gem::InstallerでErrno::EPERM: Operation not permittedが出るときの逃げ道
# monkey patch for permission problem when installing package including executables from git repository
# (Errno::EPERM: Operation not permitted)
# for rubygems >= 1.8
# 1. put this file under lib directory.
# 2. put below line to top of Gemfile.
#
# require File.expand_path("lib/gem_installer_eperm_patch", File.dirname(__FILE__))
#
require 'rubygems/installer'
@gussan
gussan / kyoto-tycoon.rb
Created May 16, 2012 03:02
kyototycoon 0.9.55 brew formula
require 'formula'
class KyotoTycoon < Formula
url 'http://fallabs.com/kyototycoon/pkg/kyototycoon-0.9.55.tar.gz'
homepage 'http://fallabs.com/kyototycoon/'
sha1 'bd301b3d355788ae89e09a092b1d469f8a69f411'
depends_on 'lua' unless ARGV.include? "--no-lua"
depends_on 'kyoto-cabinet'