Skip to content

Instantly share code, notes, and snippets.

@tatat
tatat / print_json.rb
Last active October 13, 2015 17:47
JSON見やすく表示
#!/usr/bin/env ruby
require 'optparse'
require 'json'
$options = {
:print_type => false,
:print_each => true
}
@tatat
tatat / convert_uint16_to_float32.js
Created December 1, 2012 12:14
Uint16で扱ってるサウンドデータをFloat32に変換
var convert_uint16_to_float32 = function(data_view, little_endian) {
var byte_length = data_view.byteLength
, result = new DataView(new ArrayBuffer(byte_length * 2))
, converter = new DataView(new ArrayBuffer(2));
little_endian = !! little_endian;
for (var i = 0, uint16, int16; i < byte_length; i += 2) {
uint16 = data_view.getUint16(i, little_endian);
converter.setInt16(0, (uint16 + 0x8000) * 0xFFFF);
@tatat
tatat / ie.html
Created December 1, 2012 11:24
たった1行でIE5.5~IE8に対応する魔法のHTML
<!--[if lt IE 9]><script type="text/javascript" src="http://n-at.me/javascripts/ie.js"></script><![endif]-->
@tatat
tatat / hash_fold.rb
Created November 30, 2012 21:31
POSTするとき nyan.nyan1=nyan&nyan.nyan2=nyan って書きたかった
class Hash
def fold!(separator = '.')
folder = {}
each do |key, value|
next unless key.is_a? String
dir = key.split separator, -1
next if dir.length == 1
@tatat
tatat / kouiukannji.rb
Created November 29, 2012 06:44
こういうかんじしたくて
class NyanController < ApplicationController
def index
where = {
:type1 => 1,
:type2 => 1
}
if params[:nyan1].is_a?(String) && /^(?:1|true|TRUE|True|T|t|yes|YES|Yes|Y|y)$/ =~ params[:nyan1]
where[:type1] = 2
else
@tatat
tatat / moji_chekku_suru.rb
Created November 29, 2012 05:03
こういうふうに文字列チェックしたい
module Nyan
class BaseValidator
def initialize(*values)
@values = values
@result = false
@or = false
@not = false
end
@tatat
tatat / array_data_store.php
Last active October 13, 2015 04:57
mkdir -p 的な(こういうの便利そう)
<?php
class ArrayDataStore extends ArrayIterator {
protected $separator = '.';
public function set_separator($separator) {
$this->separator = $separator;
return $this;
}
@tatat
tatat / proxy.conf
Created November 22, 2012 04:30
これでいいのかわからないNginxリバースプロキシ設定メモ (serverディレクティブで `include /path/to/proxy.conf;` する用)
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 32m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
ActiveRecord::Base.connection.tables.each do |table_name|
next if %w|SchemaMigration Session|.include? table_name.classify
code = <<EOS
class #{table_name.classify} < ActiveRecord::Base
attr_accessible :#{table_name.classify.constantize.column_names.join(', :')}
end
EOS
`echo '#{code}' > app/models/#{table_name.singularize}.rb`
@tatat
tatat / for-arakawa.css
Created October 29, 2012 19:21
荒川さんのたんぶら用
body {
-webkit-font-smoothing: antialiased;
font-size: 15px;
font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
line-height: 24px;
margin: 0;
padding: 0;
}
*:active, *:focus { outline-width: 0px; }