Skip to content

Instantly share code, notes, and snippets.

View rummelonp's full-sized avatar
🐈‍⬛
ニャーン

Kazuya Takeshima rummelonp

🐈‍⬛
ニャーン
View GitHub Profile
# -*- coding: utf-8 -*-
require 'benchmark'
require 'hashie/mash'
require 'active_support/ordered_options'
TIMES = 100000
Benchmark.bm(30) do |x|
x.report('Hash') do
@rummelonp
rummelonp / Gemfile
Last active December 17, 2015 16:19
マルコフ連鎖でツイートするやつ
# -*- coding: utf-8 -*-
source 'https://rubygems.org'
gem 'twitter'
gem 'natto'
!function($) {
var fold = function(object, separator) {
object = $.extend({}, object);
separator = separator || $.fold.defaults.separator;
$.each(object, function(key, value) {
if (typeof key === 'string') {
var keys = key.split(separator),
last = keys.pop(),
current = object;
@rummelonp
rummelonp / nyan.rb
Created May 22, 2013 09:17
ActiveRecord::Base 継承したクラスの index 一覧とかカラム名から含まれる index 一覧取るやつ
class ActiveRecord::Base
def self.indexes
connection.indexes(table_name)
end
def self.indexes_by_column(column_name)
indexes.select { |i| i.columns.include?(column_name.to_s) }
end
end
@rummelonp
rummelonp / vine.rb
Last active December 16, 2015 18:49
Vine の非公式 API を Ruby から使うやつ (参考: https://github.com/starlock/vino/wiki/API-Reference)
# -*- coding: utf-8 -*-
require 'faraday'
require 'faraday_middleware'
module Vine
def self.login(username = ENV['VINE_USERNAME'], password = ENV['VINE_PASSWORD'])
data = Vine::Client.new.login(username, password)
Vine::Client.new(data['key'])
end
@rummelonp
rummelonp / magical_definer.rb
Created April 25, 2013 06:35
include したら引数の名前のインスタンス変数自動的にセットしてくれるやつ
# -*- coding: utf-8 -*-
module MagicalDefiner
def self.included(base)
base.extend(ClassMethods)
end
def set_instance_variables_from_parameter(*args)
args = args.dup
method(:initialize).parameters.each do |type, key|
@rummelonp
rummelonp / mecab_benchmark.rb
Last active December 16, 2015 10:39
MeCab + Ruby でベンチ取ってみた
# -*- coding: utf-8 -*-
require 'benchmark'
require 'MeCab'
require 'natto'
require 'ffi'
# Natto#parse のボトルネック解消したバージョン
class DaizuNatto < Natto::MeCab
def parse(str)
@rummelonp
rummelonp / _mysqlenv
Last active December 16, 2015 08:08
mysqlenv の zsh 補完関数
#compdef mysqlenv
# ------------------------------------------------------------------------------
# Description
# -----------
#
# Completion script for mysqlenv (https://github.com/xaicron/mysqlenv).
#
# ------------------------------------------------------------------------------
# Authors
# -------
@rummelonp
rummelonp / tx-trie.rb
Created April 16, 2013 09:42
Tx の Homebrew 用 Formura
require 'formula'
class TxTrie < Formula
homepage 'https://code.google.com/p/tx-trie/'
url 'https://tx-trie.googlecode.com/files/tx-0.18.tar.gz'
version '0.18'
sha1 'de94178a48cd6ba05b32f667b91f3e2edfd4a562'
def install
system "./configure", "--prefix=#{prefix}"
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLOCOBOL.
AUTHOR. KAZUYA TAKESHIMA.
PROCEDURE DIVISION.
DISPLAY "Hello, COBOL!"
STOP RUN.