Skip to content

Instantly share code, notes, and snippets.

<?php
class Nyan {
static public function static_method_nyan() {
echo 'static nyan', "\n";
}
static public function __callStatic($name, $args) {
$method_name = 'static_method_' . $name;
@tatat
tatat / static_html_init.sh
Last active December 12, 2015 08:48
こんな感じで行こうと思う
#!/bin/bash
jquery_version="1.9.1"
jquery_name="jquery-${jquery_version}.min.js"
jquery_url="http://code.jquery.com/$jquery_name"
mkdir -p haml coffee sass vendor public/{javascripts,stylesheets,images,lib}
touch vendor/.gitkeep
curl -L "$jquery_url" > "public/lib/$jquery_name"
@tatat
tatat / to.js
Created February 17, 2013 11:27
なんか良い
Number.prototype.to = function(n) {
for (var result = [], i = parseInt(this); i <= n; i ++) {
result.push(i);
}
return result;
};
console.log(10..to(20));
// [ 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 ]
@tatat
tatat / deploy.rb
Last active December 13, 2015 23:08
Capistrano で対話的な?
set :default_run_options, :pty => true
set(:username) { Capistrano::CLI.ui.ask('Username: ') }
set(:password) { Capistrano::CLI.password_prompt('Password: ') }
namespace :deploy do
task :nyan, :roles => [:app] do
run 'something interactive' do |channel, stream, output|
Capistrano::Configuration.default_io_proc.call(channel, stream, output)
@tatat
tatat / 01_parser.rb
Last active December 15, 2015 02:19
たんぶらテンプレートのパース
require 'parslet'
module Tumblr
module Parser
class Base < Parslet::Parser
def space
match('\s').repeat(1)
end
def space?
@tatat
tatat / launch-bitnami.sh
Last active December 15, 2015 23:10
試してない
if [ -z "$INSTALLDIR" ]; then
exit 1
fi
cat > /Library/LaunchDaemons/com.bitnami-drupal.apache.service.plist <<EOS
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
@tatat
tatat / user.rb
Last active December 16, 2015 21:09
Rails4(くらい)で has_secure_password のバリデーションをスキップしたり
class User < ActiveRecord::Base
has_secure_password validations: false
validates :password,
presence: {if: :password_required?, on: :create},
confirmation: {if: :password_required?}
validates :password_confirmation,
presence: {if: :password_present?}
@tatat
tatat / authenticatable.rb
Last active December 17, 2015 09:39
どうでしょう(Rails4コントローラ用Concern)
module Authenticatable
extend ActiveSupport::Concern
included do
helper_method :current_user, :signed_in?, :me?, :own?
end
module Exceptions
class Exception < SecurityError; end # SecurityError でいいのか謎
class SignInRequired < Exception; end
@tatat
tatat / entity.js
Created May 29, 2013 16:47
全部16進数の数値文字参照にするやつ
var entity = function(string) {
return ('' + string).replace(/(?:[\uD800-\uDBFF][\uDC00-\uDFFF]|[\S\s])/g, function(m0) {
var c = m0.length === 2 ?
(((m0.charCodeAt(0) & 0x3ff) << 10) | (m0.charCodeAt(1) & 0x3ff)) + 0x10000 :
m0.charCodeAt(0);
return '&#x' + c.toString(16) + ';';
});
};
@tatat
tatat / kohana.conf
Created June 6, 2013 20:14
Nginx + Kohana + PHP-FPM (ちゃんと試してない)
upstream php54 {
server 127.0.0.1:9000;
}
server {
listen 80;
access_log /var/log/nginx/access.log main;
error_log /var/log/nginx/error.log warn;