Skip to content

Instantly share code, notes, and snippets.

@dekokun
dekokun / hakyll.diff
Created July 29, 2012 05:17
HakyllにRSS機能を追加した際のdiff
diff --git a/data/gh-pages.hs b/data/gh-pages.hs
index ed05733..6bf60cb 100644
--- a/data/gh-pages.hs
+++ b/data/gh-pages.hs
@@ -44,6 +44,13 @@ main = hakyllWith config $ do
-- Read templates
match "templates/*" $ compile templateCompiler
+ -- Render RSS feed
+ match "rss.xml" $ route idRoute
@dekokun
dekokun / anime.sh
Created July 30, 2012 11:45
アニメgifをImageMagickで扱う場合のコマ毎の表示タイミング取得
# 以下で表示タイミングの配列を取得可能
# 元ファイル:$orig
delay_times=`identify -verbose $orig | grep Delay | awk '{print $2}' | cut -d'x' -f1`
@dekokun
dekokun / anime.sh
Created July 30, 2012 11:47
コマ毎に表示タイミングが異なるアニメの作成
# このように、-delayで一コマ一コマdelayを指定していけば可能
convert -loop 0 -delay 30 hoge.gif -delay 40 fuga.gif
@dekokun
dekokun / Maybe.hs
Created August 5, 2012 04:53
シェルスクリプトでMaybeモナド
db :: [(String, [(String, String)])]
db = [("alice", [("title", "Ms."), ("job", "sales")]),
("bob", [("title", "Mr."), ("job", "engineer")])]
monad :: Maybe String
monad = return db >>= lookup "bob" >>= lookup "job"
main :: IO()
main = print monad
-- Just "engineer"
@dekokun
dekokun / log_output.sh
Created August 6, 2012 10:02
ログ関数はこんな感じがいいのかなぁ。
function log_output(){
local LEVEL=$1
shift
local MESSAGE=$@
echo `date '+%Y/%m/%d/%H:%M:%S'` `hostname` `basename $0` $$ \($LEVEL\) $MESSAGE
}
@dekokun
dekokun / Bool.sh
Created August 20, 2012 10:42
シェルスクリプトでTrue,Falseを使おう
is_first=true
if $is_first; then
# do something
is_first=false
fi
@dekokun
dekokun / sprite.sh
Created August 20, 2012 10:44
ImageMagickでCSS SPRITE補助
usage(){
echo $0 directory all_icon_image
}
function is_anime(){
local image=$1
image_count=`identify $image | wc -l`
if [ $image_count -gt 1 ]; then
return 0
else
@dekokun
dekokun / is_anime.sh
Created August 20, 2012 11:05
gifアニメかどうかを判定
function is_anime(){
local image=$1
image_count=`identify $image | wc -l`
if [ $image_count -gt 1 ]; then
return 0
else
return 1
fi
}
@dekokun
dekokun / jenkins_plugin_install.sh
Last active December 2, 2019 03:10
Jenkinsで私が使ってるプラグインをコマンドからインストール
#!/bin/bash
# PLUGINS=で始まってる行をコメントアウトしたり追加したりして、
# 好きなプラグインをインストールできるよ。
# まぁ、普通は、JenkinsのWeb UIから「プラグインの管理」でインストールすればいいと思う。
# 同じ環境を何個も作りたい場合はこのスクリプトをどうぞ。
PLUGINS=()
# Jenkin Build Pipeline Plugin
@dekokun
dekokun / vagrantssh.sh
Last active December 19, 2015 10:49
VagrantでMultiVMの時にsshのconfigの結果をキャッシュしたりするやつ AWSとvagrantを組み合わせていてvagrant sshが遅いが、vagrant ssh-config hoge --host hoge >> ~/.ssh/config をしてconfigの設定がどんどん増えていくのも嫌という人はどうぞ
#!/bin/bash
while getopts rh:d OPT
do
case $OPT in
"r" ) FLG_R="TRUE" ;;
"h" ) FLG_H="TRUE" ; host="$OPTARG" ;;
"d" ) FLG_D="TRUE" ;;
esac
done