Skip to content

Instantly share code, notes, and snippets.

@angelworm
angelworm / tatasuki.sh
Created September 22, 2018 13:40
Twitterで検索してくる奴
#!/bin/bash -u
### search.sh
# searches specified words on Twitter.
#
# useage: ./search.sh word
# requirements: jq, curl, perl
# example: ./search.sh hoge | cut -f 1 | sort -u > blocklist.csv
QUERY=$(echo ${1:?"search.sh query"} | jq -R '@uri')
@angelworm
angelworm / 0over5000stars.gql
Last active November 19, 2019 17:08
Gradleを使いつつgradle wrapperには頼らない有名プロジェクトが存在するという噂
{
search(query: "stars:>5000 language:Java", type: REPOSITORY, first: 100) {
repositoryCount,
pageInfo {
hasNextPage,
endCursor
},
nodes {
... on Repository {
nameWithOwner,
@angelworm
angelworm / build.sh
Created October 17, 2019 05:15
Review Boardに投げられたレビューをJenkinsでビルドする。
#!/bin/bash -xu
## Required Environment Variables
#
# REVIEWBOARD_TOKEN: Access tokens for Review Board user.
# REVIEW_DIFF_URL: Posted review request URL. (ex. https://example.org/reviews/api/review-requests/99999/diffs/1/)
#
# upgrade workspace(for unexpectedly subversion binary upgrade)
svn upgrade
@angelworm
angelworm / scwrap.c
Last active May 2, 2018 01:39
Mac OS Xのシステム環境設定に設定されたプロキシ情報を読んで環境変数に設定した上でコマンドを実行してくれる奴
/*
* scwrap 環境変数にシステム設定を入れてくれるいい感じのアレ
*
* 使い方: scwrap cmd [cmdargs..]
*
* 例(希望): sudo scwrap port selfupdate
*/
#include <stdio.h>
#include <unistd.h>
@angelworm
angelworm / favs.sh
Last active September 5, 2017 00:41
mastodonでのFAVを数える奴的な
#!/bin/bash -ue
# すごーいを取ってくるやつ。
# $ACCESS_TOKENはweb clientのstreamingのパラメーターにあるものを使うと楽。
# useage:
# $ ./favs.sh $ACCESS_TOKEN
ACCESS_TOKEN=${1:?./favs.sh ACCESS_TOKEN [max_id]}
MASTODON='https://mstdn.kemono-friends.info'
@angelworm
angelworm / gist:5424853
Last active September 4, 2017 06:18
Tumblrはログイン無しでも読み込める
NSData *data = [NSURLConnection sendSynchronousRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://tumblr.com"]]
returningResponse:nil
error:nil];
[data writeToFile:@"text.html" atomically:YES];
@angelworm
angelworm / dupscan.sh
Last active February 18, 2017 02:49
カレントディレクトリの重複ファイルを消すやつ
OIFS=$IFS
IFS=$'\n'
HASH=$(mktemp)
mkdir -p dup
for i in $(find . -maxdepth 1 -type f -not -empty -print0 | xargs -0 ls -rt); do
M=$(md5 -q $i);
if [ ! -z $(grep $M $HASH) ]; then
echo "DUP" $M $i;
mv $i dup
@angelworm
angelworm / hoge.js
Created February 1, 2016 23:43
callback hellを避けるけど同期処理のようにもしない奴
// utility ----------------------------------------------------------
function isGenerator(o) {
return (typeof o === "object") && (typeof o.next === "function");
}
function isPromise(o) {
return (typeof o === "object") && (typeof o.then === "function");
}
function isTag(o) {
return (typeof o === "object") && (o.tag === "tag");
}
@angelworm
angelworm / C$.js
Created June 22, 2013 11:04
コールバック地獄を抜け出すためのライブラリ。 最初の関数をC$で囲って、返り値にchainでコールバックを書くだけ。 次以降のコールバックは引数のcallbackから呼び出す。 但し:*** callbackはコールバック関数の引数に必ずいれる事 *** 入れない場合はC$の第二引数にcallbackの代わりとなる引数名を列挙する事
// -*- coding: utf-8 -*-
/**
* @param {function} f funciton.
* @return {String[]} argument names.
*/
function argNames(f) {
var re = /^[\s\(]*function[^(]*\((.*?)\)/;
var args = f.toString().match(re)[1].split(',');
return args.map(function(e) {
@angelworm
angelworm / dmm.mk.py
Created June 21, 2013 09:12
creates many many dmm accounts
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.alert import Alert
import os
import sys
import mechanize
import random
import re
import time