Skip to content

Instantly share code, notes, and snippets.

View namusyaka's full-sized avatar

namusyaka namusyaka

View GitHub Profile
@namusyaka
namusyaka / gist:8265452
Last active December 15, 2017 16:23
BetterErrors with Padrino 0.12
module Foobar
class App < Padrino::Application
enable :sessions
configure :development do
use BetterErrors::Middleware
BetterErrors.application_root = PADRINO_ROOT
set :protect_from_csrf, except: %r{/__better_errors/\d+/\w+\z}
end
....

Upgrade from 0.11.x to 0.12.

Moneta

Need to delete old cache files. (rm -rf ./tmp/*)

and, change the syntax.

# before
@namusyaka
namusyaka / gist:6209519
Created August 12, 2013 09:36
using mecab
require 'MeCab'
require 'kconv'
class MecabParser
def initialize(param = nil)
@mecab = param ? MeCab::Tagger.new(param) : MeCab::Tagger.new
end
def parse(str)
@mecab.parse(str).split(/\n/).inject([]) do |data, line|
module Sandbox
class App < Padrino::Application
register Padrino::Helpers
register Padrino::Cache
enable :caching
get :test, "/test/:test_id", :cache => true do |test_id|
cache_key test_id
test_id
end
@namusyaka
namusyaka / readme-jp.md
Last active December 19, 2015 18:49
botchの説明

Botch

Botchは簡単にウェブクローラーを記述するためのDSLのようなものです。

Sinatraを参考にしています。

インストール手順

Gemfileにgem 'botch'と書いてbundle installするか、あるいはCUI上でgem install botchと叩くことでインストールできます。

@namusyaka
namusyaka / gist:5919244
Last active December 19, 2015 07:29
microdata対応breadcrumb for padrino
module Padrino
module Contrib
module RichBreadcrumb
attr_accessor :home, :items
DEFAULT_HOME_URL = "/"
DEFAULT_HOME_NAME = "Home"
ITEM_TYPE = "http://data-vocabulary.org/Breadcrumb"
@namusyaka
namusyaka / gist:5919134
Created July 3, 2013 15:11
padrino rake routes:html
def list_app_routes_to_html(app, args)
app_routes = app.named_routes
app_routes.reject! { |r| r.identifier.to_s !~ /#{args.query}/ } if args.query.present?
app_routes.map! { |r| [r.verb, r.name, r.path] }
return if app_routes.empty?
app_routes.map! do |route|
"<tr>" + route.map{|elm| "<td>#{elm}</td>" }.join + "</tr>"
end
"<table>#{app_routes * "\n"}</table>"
end
@namusyaka
namusyaka / gist:4064882
Created November 13, 2012 09:35
enumerable.js
(function (global) {
if(typeof HTMLCollection === 'undefined')
HTMLCollection = function () {};
var Enumerable = function (data) {
return (this instanceof Enumerable) ? this.init(data) : new Enumerable(data);
};
Enumerable.prototype = {
@namusyaka
namusyaka / a.js
Created October 3, 2012 10:35
TypeScript
var Hoge;
(function (Hoge) {
var Fuga = (function () {
function Fuga(x) {
this.x = x;
}
Fuga.prototype.increment = function () {
return ++this.x;
};
Fuga.prototype.decrement = function () {
@namusyaka
namusyaka / gist:3769184
Created September 23, 2012 07:12
はてなからOctopressへ
require 'rexml/document'
require 'erb'
class HatenaToOctopress
@@octo_format = <<-MKDN
---
layout: post
title: <%= @item[:title] %>
date: <%= @item[:date] %>