読者です 読者をやめる 読者になる 読者になる

pockestrap

Web Programmer's memo

xrandr ですぐにミラーリングしたい!

先日、ハッカソンに参加しました。 そこで私のPCでプレゼンをしたのですが、PC画面とプロジェクターを同期するのに数十秒かかってしまいました。 最近LTなどプロジェクターを使う機会も増えているのでコマンド一発でミラーリングしたいなーと思い、ツールを…

GitHub に登録しているSSH公開鍵を、自分のサーバにも登録する

こんにちは。 GitHub に登録しているSSH公開鍵を取得、~/.ssh/authorized_keysに登録するツール、gh-ssh-pubkey を作ったので紹介します。 github.com インストール Go 言語で書かれているため、go getでインストールすることができます。 go get github.com…

Vue.js について LT をした。

先日、ポート株式会社様で開催されている、もくもく会に行ってきました。 第10回【フリースタイル】もくもく会【学生歓迎!】 - connpass 当日、LT発表者が3名しかいなかったため、飛び込みLTと言う形で突然LTしてきました。 実際飛び込みが多くて、結局8人…

require しないで Ruby を書く -- import.rb というアプローチ

import.rbという Gem をリリースしました。 pocke/import.rb · GitHub import.rb | RubyGems.org | your community gem host この Gem について解説したいと思います。 import.rb の目的 Kernel.requireを置き換えること。 Kernel.require とは 外部ファイル…

DentooLT で Vim についてはなした

Vim

Level up Vim with text-object and operator pocke/slide-level_up_vim · GitHub 私「Vim知ってる人ー?」 → 会場のほぼ全員が手をあげる 私「Vim使ってる人ー?」 → 会場の半数ぐらいは手をあげる 私「Vimのプロフェッショナルの人ー?」 → 誰もいない 結論は…

mikutter から ActiveRecord の validates を使う

mikutter とは、Ruby で書かれた Linux 向け Twitter クライアントです。 というのは表向きの顔で、実際は Plugin で高度に拡張可能な Twitter アプリケーションフレームワークです。 ともなれば、mikutter で Web アプリケーションを作りたくなるのは必然で…

My NeoComplete settings

普段 NeoComplete にとてもお世話になっているので、自分の設定を晒そうと思います。 参考にしてくれる人がいれば嬉しいです。 Plugins Shougo/neocomplete.vim · GitHub 言わずと知れた補完ブラグイン。 今回の主題 NeoBundle 'Shougo/neocomplete' if neob…

たまたま家にあったWiFiルータが PPTP 対応だったので、自宅 VPN を構築した。

動機 最近PCを組みました。 そこそこ性能のいいやつです。 (PC を組んだ時の記事はこちら パソコンくんだ - pockestrap) 当然の如くノートPCよりもデスクトップのスペックが高いので、出先で作業するのがつらくなってきました。 ノートPCは RAM が 8GB しか…

makepkg する人は、今すぐxzがマルチコアを使うよう設定すると幸せになれるかもしれない

Arch Linux でパッケージをビルドする際、makepkgしたら-> Compressing package...で永遠に待たされた経験のある人は多いと思います。 android-ndk とか最悪ですね。何であんなに遅いんだろう… これはxzコマンドがシングルスレッドで動いているのが原因なの…

Vim で Ruby を書くならこれを使え!

私は開発環境を整えるのが大好きなのですが、今まであまり発信をすることがなかったのでこの記事を書きました。 少しでも Vim で Ruby を書くのが快適になれば幸いです。 なお、煽り気味のタイトルですが、それだけ私の独断と偏見で便利だと思っているもので…

パソコンくんだ

メモリ8GB環境に嫌気がさしたのでPCを組みました。自作PCは初めてです。 いろいろ書いておかないと多分忘れるので書いておきます。 パーツ CPUとマザボはツクモで、ほかはドスパラで買いました。 画像がババーンって出てわかりやすいのでAmazonのリンク載せ…

一定間隔でコマンドを再起動するコマンド Mayfly を Golang で作った

つくりました。 pocke/mayflygithub.com Mayfly は「かげろう」って意味です。虫のほうです。 Installation go get github.com/pocke/mayfly バイナリは用意していないのでgo getしてください。 Usage このようにすると、gulpを起動した上で10分おきにgulpを…

リモートユーティリティーツール、Lemonade v0.2.0 をリリースした

pocke/lemonadegithub.com バージョンアップしました。 公開した時の記事はこちらです。 リモートのPCのブラウザやクリップボードを操作するツール Lemonade を作った - pockestrappocke.hatenablog.com 使い方 簡単な使い方に関しては、上記記事をご覧くだ…

Vim で GitHub の Issue 番号を補完できるプラグインを作った

GitHub には、コミットメッセージに「Closed #3」などと書くと3番の Issue を閉じられる機能があります(Closing issues via commit messages - User Documentation)。 この機能は便利なのですが、コミットする時に Issue 番号を覚えられていることは少ないと…

最近作ったわりとどーでもいいもの3つ

気がついたらどーでもよいものを3つほど作っていたので、まとめてブログに書くことにしました。 hex pocke/hexgithub.com hex です。名前の通り、8進数です。 go getでインストールできます。 go get github.com/pocke/hex 以下のようにコマンドラインツール…

4k 40インチのディスプレイ BDM4065UC/11 を買った。

買いました。 PHILIPS(ディスプレイ) 40型4K対応ワイド液晶ディスプレイ 5年間フル保証 BDM4065UC/11出版社/メーカー: Philips(フィリップス)発売日: 2014/12/27メディア: Personal Computersこの商品を含むブログ (4件) を見る 環境 OS: Arch Linux PC: Thi…

リモートのPCのブラウザやクリップボードを操作するツール Lemonade を作った

pocke/lemonadegithub.com 作りました。 Lemonadeといいます。 Go言語で書かれています。 インストール go getでインストールすることが出来ます。 go get github.com/pocke/lemonade また、リリースページから圧縮ファイルをダウンロードし、PATHの通ったと…

有理数を計算する電卓を作った

レポジトリ pocke/dentaku · GitHub 経緯 バイトに行ったら同僚が課題で分数として計算する電卓を作ったと言っていて、面白そうだから作ってみた。 言語を作ってみたくてちょうどyaccを触ったりしていた。 やってること yacc でパースしてごにょごにょした。…

HHKB用のカラーキートップを買った

かっこいい。 HHKB 用のカラーキートップ買いました。 かっこよくてテンション上がります。こういうの大事。 ついでにキーを外して埃を掃除しました。 Pro 2 と Type S の2台持っているのですが、Pro 2 だけお掃除したらめんどくさくなったので Type S はま…

Markdown ビューワをリリースした

Markdown を編集しつつ、リアルタイムでプレビュー出来るツール、gfm-viewer をリリースしました。 Repository pocke/gfm-viewer · GitHub Installation バイナリが用意されているので、それをダウンロードしてパスが通っているところにおいてください。 wge…

benchcmp-vcs つくった

pocke/benchcmp-vcs · GitHub Go 言語には、benchcmp というベンチマークテストの結果を比較するツールが存在します。 しかし、このツール単独では使用者が比較したいバージョン同士でテストコマンドを叩き、その結果をファイルとして保存する必要があります…

vim から環境変数を削除する

結論 silent !unset '$HOGEHOGE' で$HOGEHOGE環境変数を削除できた。 やりたかったこと vim-scripts/javacomplete · GitHub をいれたけど、Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on ってWarning(?)がでるせいでエラー扱いされてうまく補…

Arch Linux で M705 のちっちゃいボタンを中クリックにした

同僚が使っているのを見ていいなーって思って M705 を買いました。 ホイールがびゅーんってなるマウスが欲しかったんです。 Logicool ロジクール ワイヤレスマラソンマウス M705t出版社/メーカー: ロジクール発売日: 2013/08/02メディア: Personal Computers…

コマンドラインからTwitterのアクセストークンを取得するツール書いた

Source pocke/twtoken · GitHub Usage $ go get github.com/pocke/twtoken $ twtoken -ck CONSUMMER_KEY -cs CONSUMMER_SECRET go get でコマンドをインストールして、twtoken で起動できます。 Twitter の Consummer Key と Consumer Secret を引数に渡して…

株式会社はてなに入社しました

株式会社はてなに入社しました 株式会社はてなに入社しました - hitode909の日記

tmuxで直前にいたWindowを行き来する

私の使っている Window Manager の awesome では、<Mod4> + Esc で直前にいたワークスペースに移動することが出来ます。 これと同じようなことを tmux でもやったのでメモ。 File: ~/.tmux.conf bind Escape last-window これで、 awesome と同じように Prefix + E</mod4>…

grepで検索結果をハイライトしつつ全行表示

$ ps f | grep 'zsh' treeが切れてよくわからない! $ ps f | grep -E 'zsh|$' treeが切れなくてわかりやすい! 最初これを車輪の再発明しようとしちゃったって話でした。

Rubyでdo-while

TwitterのTLでdo-whileが賑わっていたので。 調べてみたらbegin-endとwhile修飾子で出来るらしい。キモい(かなり) 制御構造 while 修飾子 (中略) 左辺の式が begin 節である場合にはそれを最初に一回評価してから繰り返します。 cond = false begin puts 'fo…

paiza で pizza もぐもぐしてきた

12月14日【IT系就活生向けプログラミング試験対策勉強会】開催決定! - paiza開発日誌 これいってきました。ピザおいしかった。 で、事前課題で 天才火消しエンジニア霧島「もしPMおじさんが丸投げを覚えたら」|paizaオンラインハッカソンLite を解くとのこ…

zshでたいぽした時にヒストリに記録しない

zsh

たいぽしたコマンドがヒストリに残っていてもいい事無いですね。登録しないようにしましょう。 コード command_not_found_handler() { tail -1 $HISTFILE | grep -F "$*" > /dev/null 2>&1 && sed -i '$d' $HISTFILE return 127 } これを.zshrcの適当なとこ…

watchdogs.vim で golint を使う

watchdogs.vim は、Vimのシンタックスチェックプラグインです。また、golint はGo言語の Lint ツールです。 watchdogs.vim はGo言語に対応していますが、golintには対応していなかったので設定を書きました。 let g:quickrun_config['watchdogs_checker/goli…

RubyのArray#include?, Array#bsearch, Set#include? をベンチマークしてみた

2014-11-28 追記. Rubyのバージョンを記すのを忘れていました。 $ ruby -v ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-linux] 追記ここまで コード Array#include?, Array#bsearch, Set#include? benchm ... 計測方法 偶数の集合に対して、同じ範…

vimでクリップボード連携を有効にした話

前提 +clipboardなターミナル上のVim GNU / Linux +clipboardがついていない場合(vim --versionで確認できます)は、vimをコンパイルしましょう。コンパイル楽しい!! やったこと ターミナル上のCUIのVimでyankした時、それがクリップボードに入るようにした。…

ghqで管理しているレポジトリを全てアップデートする

motemen/ghq · GitHub ghq便利です。 ghqで管理しているレポジトリを全部update(git pull)したかったのですが、標準でなさそうな気がしたのでちょろっと書いてみました。 $ ghq list | sed -E 's/^[^\/]+\/(.+)/\1/' | xargs -n 1 -P 10 ghq get -u xargsの-…

speak-jsが面白そうだから使ってみた

speak-js mattytemple/speak-js · GitHub 作ったもの pocke/speak.js-sample · GitHub speak-js とは クライアントサイドJavaScriptだけで喋る。 speak('foo')でfooって喋る。 楽しい感じがしますね。 作ったもの Speak.js Sample テキストエリアに入力した…

jQuery.ajaxのラッパー書いた

pocke/ajax_set.js · GitHub 何故作った 会社で先輩が作ってて便利そうだなーって思っていました。 けれどもRailsプロジェクトに向かなさそうだしプルリク投げようかなーと思ってフォークしたら全部自分で書きたくなってしまった。以上。 使い方 READMEのコ…

neocomplete用のjQueryの辞書を作った

辞書の使い方とかはneocomplete用にRubyの辞書を作った(るりま編) - pockestrapを見れば良いと思います。 Script require 'open-uri' require 'json' url_base = 'https://api.github.com' owner = 'jquery' repo = 'api.jquery.com' ep_base = "#{url_base}…

neocomplete用にRubyの辞書を作った(るりま編)

vim用にrubyの辞書が欲しかったので用意した | blog: takahiro okumura などを読んでRubyの辞書を作りたくなりました。 しかし、先ほどのコードはrbenv前提であり私はrbenvを使っていないため、るりまから辞書を作成しました。 「辞書」とは 単語を改行区切…

Arch Linux に Gnash をいれた

環境 ThinkPad x240 Arch Linux FireFox Gnash 0.8.11dev-2 Gnashとは GNUが実装するFlashの実装らしいです。ぐぐって。 ビルドしよう! AURからのみ提供されているので、自分でビルドする必要があります。 というわけで意気揚々とyaourt -S gnashしたらコケ…

TweetVim で mikutter の様にふぁぼ通知を鳴らす

hookがあるのでそれを使ってやれば実現できます。 TweetVimのドキュメントを見てみると、このように記述があります。 HOOKS *tweetvim-hooks* You can use hooks by tweetvim#hook#add(name, func_name). notify_fav favorite event in userstraem write_scr…

paiza Online Hackathon 解いてみた

天才火消しエンジニア霧島「もしPMおじさんが丸投げを覚えたら」|paizaオンラインハッカソンLite 以下ネタバレ注意 Rubyで解いてみました。早い人で0.02秒とか出てるの、どうやってるんだろう… pockeさんの採点結果[100点] 完璧ぃぃ!|paizaオンラインハッ…

(続) Arch Linux on ThinkPad x240 で輝度調整

Arch Linux on ThinkPad x240 で輝度調整 - pockestrap で不具合が出てきたので書き直します。 上記事を実践して快適な輝度調整をしていたのですが、いつからか以前と同じように輝度調整がうまく効かなくなっていました。 ぐぐったら、解決方法を見つけたの…

Arch Linuxで最新のVimをパッケージ化した

最新のVimを使いたかったのですがPacmanでは最新でないVimしかなかったため、自分で最新のものをパッケージにしました。 PKGBUILD を落とす まずは、PKGBUILDが必要です。yaourtかabsで落としてきましょう。 $ yaourt -G vim $ cd vim # もしくは $ sudo abs…

zshの名前付きディレクトリがとても便利

zsh

言いたいことの8割は、zshの本の276ページぐらいを読めば大体書いてあります。 名前付きディレクトリの使い方 名前付きディレクトリを使うには、setopt autonamedirsした上で、変数に/から始まる文字列を代入します。 $ setopt autonamedirs $ vim_dir=/usr/…

:nohlsearch に少しハマった

結論だけ言うと、「:nohlsearch はautocmdとユーザー定義関数内で使用できない」 私はvim-watchdogsというシンタックスチェックプラグインを愛用しています。 また、vim-hierというプラグインを使って、エラー箇所をハイライトしています。 そして、nnoremap <Esc><Esc></esc></esc>…

pecoからプロセスをkillするアレ書いた

pecoめっちゃいい。 peco/peco · GitHub ターミナル上で unite.vim っぽいことをする peco が大変便利 - 反省はしても後悔はしない function peco-kill-process() { local ps_cmd='ps aux' local get_pid_cmd='sed -E s/^\S+\s+([0-9]+).+$/\1/' local ps_li…

markdownでもタグにclassや属性を付けたい!!

kramdownならできるよ、それ。 class [hoge](http://example.com){: .fuga} # => <a class="fuga" href="http://example.com">hoge</a> id [hoge](http://example.com){: #fuga} # => <a id="fuga" href="http://example.com">hoge</a> attributes [hoge](http://example.com){: target="_blank"} # =>

Github pages + jekyll を使って、Markdownで静的Webページを書いた

作ったページ レポジトリ Github pagesでホスティングされた静的Webページを、Jekyllを使ってMarkdownで書いてみました。 ページを作成して、Githubにレポジトリを作成して、独自ドメインを割り当てるまでのまとめ。 ローカルにWebページを作成する まずは、…

Vimで標準入力から読み込まれているかを判別する

数日悩んだのでメモ。 vim は、標準入力をバッファとして読み込むことが出来ます。 $ echo 'hoge' | vim - のように-をつけて起動すると、標準入力がバッファとして読み込まれます。 上の例では、バッファにhogeが入った状態でVimが起動します。 この標準入…

mv hoge hoge.bak したあと元に戻したい。

やりたい $ mv hoge hoge.bak # 何らかの作業 $ mv hoge.bak hoge とか、一時的にバックアップして元に戻すことって割とあると思います。 そんな時に、一々打ち直すのはめんどくさい。なので、てきとーにシェルの関数を書きました。 やった function swap_la…