Skip to content

Instantly share code, notes, and snippets.

View Maki-Daisuke's full-sized avatar

Daisuke (yet another) Maki Maki-Daisuke

View GitHub Profile
use AnyEvent::Handle;
my $c = AE::cv;
my $out = AnyEvent::Handle->new(fh => \*STDOUT);
my $in; $in = AnyEvent::Handle->new(
fh => \*STDIN,
on_read => sub{
my $hdl = shift;
@Maki-Daisuke
Maki-Daisuke / Cygwin.bat
Created February 27, 2011 17:22
Cygwin-zshを使う場合の設定ファイル例
@echo off
REM VisualStudioの環境変数を設定する
call "c:\Program Files\Microsoft Visual Studio 9.0\VC\vcvarsall.bat" x86
REM CygwinコンソールでWindows式のファイルパスを使ったときに警告を出さない
set CYGWIN=nodosfilewarning
C:
chdir C:\cygwin\bin
@Maki-Daisuke
Maki-Daisuke / _perlbrew
Created March 7, 2011 12:24 — forked from lapis25/_perlbrew
App-perlbrew-0.17に対応した
#compdef perlbrew
typeset -A opt_args
local context state line
_arguments -C \
'(- 1 *)'{-h,--help}'[prints help]' \
'(-f --force)'{-f,--force}'[Force installation of a perl]' \
'(-q --quiet)'{-q,--quiet}'[Log output to a log file rather than STDOUT. This is the default.]' \
'(-v --verbose)'{-v,--verbose}'[Log output to STDOUT rather than a logfile]' \
@Maki-Daisuke
Maki-Daisuke / gist:1108386
Created July 26, 2011 23:54
mp / json / storable on perl v5.14.1 built for darwin-2level
-- serialize
JSON::XS: 2.3
Data::MessagePack: 0.34
Storable: 2.30
Benchmark: running json, mp, storable for at least 1 CPU seconds...
json: 1 wallclock secs ( 1.08 usr + 0.00 sys = 1.08 CPU) @ 12444.44/s (n=13440)
mp: 2 wallclock secs ( 1.07 usr + 0.00 sys = 1.07 CPU) @ 11821.50/s (n=12649)
storable: 1 wallclock secs ( 1.06 usr + 0.00 sys = 1.06 CPU) @ 14490.57/s (n=15360)
Rate mp json storable
mp 11821/s -- -5% -18%
@Maki-Daisuke
Maki-Daisuke / pre-commit
Created November 6, 2013 13:03
コメントのとおりですが、コミット用にステージされていないファイルの変更や、Gitの管理下におかれていないファイルがあると、コミットを拒否する pre-commit スクリプトです。 ちょっと厳しすぎる気もしますが……
#!/bin/sh
#
# A simple script to reject commit when there is an unstaged changes
# or an untracked file.
#
# To enable this script, copy this into .git/hooks in your working dir.
if `git status |grep -q 'Changes not staged for commit:'`
then
echo '[!!ERROR!!] Threre is a modified but unstaged file!'
@Maki-Daisuke
Maki-Daisuke / giploy
Last active December 27, 2015 14:19
カレントディレクトリ以下の Git の管理下にあるファイルのみを、指定したディレクトリにコピーするコマンドを実装してみました。 環境変数 GIPLOY_DEST でもコピー先を指定できるので、post-comit hook に登録することもできます。
#!/usr/bin/env perl
use strict;
use warnings;
our $VERSION = '0.01';
use constant DEBUG => (!!$ENV{DEBUG});
use Getopt::Std;
@Maki-Daisuke
Maki-Daisuke / install.sh
Last active August 29, 2015 14:05
最近仕事の関係で、「\\ホスト名\ファイルパス」って書かれたメールが頻繁にやってくるようになったので、こんなone-linerをコマンド化した。 超はかどる。 ちなみに、OS X用。
#!/bin/sh -x
mkdir -p /usr/local/bin
cd /usr/local/bin
curl -L 'https://gist.githubusercontent.com/Maki-Daisuke/377eae4aaeb1110de183/raw/93a0072929084f6959565dc2516ecde34ad79f00/smbopen' > smbopen
chmod +x smbopen
@Maki-Daisuke
Maki-Daisuke / random-string
Last active August 29, 2015 14:05
捨てパスワードとかランダムな文字列を生成するのに使ってるの
#!/usr/bin/env perl
use strict;
use Getopt::Std;
$Getopt::Std::STANDARD_HELP_VERSION = 1;
sub HELP_MESSAGE {
my $fh = shift;
print $fh <<HELP;
package main
import "fmt"
import "flag"
import "math/rand"
func main() {
var opt_no_alpha bool
var opt_no_digit bool
var opt_no_unsco bool
@Maki-Daisuke
Maki-Daisuke / dockerenv
Created January 7, 2015 01:34
MacでBoot2dockerを使うときのラッパーコマンド
#!/bin/sh
unset DYLD_LIBRARY_PATH ; unset LD_LIBRARY_PATH
mkdir -p ~/.boot2docker
if [ ! -f ~/.boot2docker/boot2docker.iso ]; then cp /usr/local/share/boot2docker/boot2docker.iso ~/.boot2docker/ ; fi
/usr/local/bin/boot2docker init
if /usr/local/bin/boot2docker up; then
export DOCKER_HOST=tcp://$(/usr/local/bin/boot2docker ip 2>/dev/null):2376
export DOCKER_CERT_PATH=/Users/maki/.boot2docker/certs/boot2docker-vm
export DOCKER_TLS_VERIFY=1