Skip to content

Instantly share code, notes, and snippets.

View yoshitsugu's full-sized avatar
🐐
bleat

Kota Yoshitsugu yoshitsugu

🐐
bleat
View GitHub Profile
@yoshitsugu
yoshitsugu / crystal_sieve_of_eratosthenes.cr
Last active August 29, 2015 14:26
Crystalでエラトステネスの篩
require "math/math"
def sieve(max : Int32, tmps : Array(Int32), results: Array(Int32)) : Array(Int32)
tmp = tmps.first
return (results + tmps) if tmp > Math.sqrt(max).floor
sieve(max, tmps.select{|c| c % tmp != 0}, results << tmp)
end
def primaries (max : Int32) : Array(Int32)
sieve(max, (2..max).to_a, [] of Int32)
// See http://sleepboy-zzz.blogspot.jp/2014/12/emacsgoogleskk_29.html
package main
import (
"golang.org/x/text/encoding/japanese"
"golang.org/x/text/transform"
"encoding/json"
"github.com/akiym/go-skkserv"
"net/http"
"net/url"

Rails Wizard

  • 長い入力のときに、段階的に入力できるようにする(いわゆるウィザード形式)

wicked

  • 今のところこれ一択っぽい
  • https://github.com/schneems/wicked
  • stepsの名前をまず書く。
  • 各stepで、実際には (postのときは update ->) show が呼び出される
  • update, showのメソッドの中でcase step でそれぞれの手順を書いていく
  • 基本的にステップのURLの展開と、ステップ間の制御くらいしかしてくれない
    • 最後まで入力が完了したものを正式なデータとする場合は

Background Jobs

まだRailsアプリケーションでbackground処理をやったことがないので調べてみました。

Resque

実行までの流れ

  • ワーカープロセスを起動しておく。
  • メインのアプリケーションでqueueにjobを突っ込む
  • ワーカーがqueueを見に来る。jobが作成されていたら実行する。
@yoshitsugu
yoshitsugu / api_builders.org
Last active August 29, 2015 13:57
Api Builders from The Ruby ToolBox
@yoshitsugu
yoshitsugu / wiki_apps.org
Last active July 28, 2016 05:05
Ruby Toolbox -- Wiki Apps

Wiki Appsまとめ

Gollum

  • https://github.com/gollum/gollum
  • gitリポジトリからwikiを構成する
  • MarkDown, GitHub Flavored Markdown, Orgなどいろいろな記法が使える
    • 特にEmacs使う人はOrgが使えるのがありがたい

セットアップ

$ gem install gollum
$ bundle install
@yoshitsugu
yoshitsugu / codereview.org
Created January 7, 2014 01:42
grit git native

grit/lib/grit/git.rb

source

def native(cmd, options = {}, *args, &block)
  args     = args.first if args.size == 1 && args[0].is_a?(Array)
  args.map!    { |a| a.to_s }
  args.reject! { |a| a.empty? }

  # special option arguments
  env = options.delete(:env) || {}
@yoshitsugu
yoshitsugu / copy_file_name_on_clipboard.el
Created December 27, 2013 08:23
現在開いているバッファのファイル名をクリップボードに挿入
(defun put-file-name-on-clipboard ()
"Put the current file name on the clipboard"
(interactive)
(let ((filename (if (equal major-mode 'dired-mode)
default-directory
(buffer-file-name))))
(when filename
(with-temp-buffer
(insert filename)
(clipboard-kill-region (point-min) (point-max)))
gem list --no-versions > /tmp/gemlist
rbenv global 2.1.0
gem install `cat /tmp/gemlist`
@yoshitsugu
yoshitsugu / file0.txt
Created December 25, 2013 08:19
crontab のコマンドは1000文字超えてはいけない ref: http://qiita.com/yoshitsugu/items/ce3d072018f63721a148
* * * * * echo "eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeef" > /tmp/e.txt