ぼろぼろ平原

困った

gensim.corpora.Dictionaryの単語IDを辞書順にする

gensimのcorpora.Dictionaryは単語IDがランダムに振られてしまい困るのでSortableDictionaryというものを作った。 from gensim import corpora class SortableDictionary(corpora.Dictionary): def __init__(self, *arg, **kwargs): super().__init__(*arg, …

Pythonで大きいファイルを読み込む時にプログレスバーを表示

プログレスバーの表示には tqdm を使う。 tqdmのインストール $ pip install tqdm プログレスバーを表示するプログラム from tqdm import tqdm import os # ファイル名 filename = "sugoku_dekai_file.txt" # ファイルサイズを取得 filesize = os.path.getsi…

mecabコマンドの結果をparseしやすい形式にする

MeCabの出力はデフォルトで以下のようになるが、 これが意外と扱いづらい。 $ echo 新しいスクエニのゲームを買った。 | mecab 新しい 形容詞,自立,*,*,形容詞・イ段,基本形,新しい,アタラシイ,アタラシイ スクエニ 名詞,一般,*,*,*,*,* の 助詞,連体化,*,*,…

Touch Bar付きのMacBook ProでMinecraftをプレイするときに常にファンクションキーを表示する方法

MacBook Pro (Late 2016) Touch Bar搭載モデルでMinecraftをプレイするときに、ファンクションキーを表示しておく方法です。 手順 Minecraftを起動する Dockにある作業台アイコンをcommandキーを押しながらクリックする Finderでjavaが選択されるので、右ク…

Linuxbrewでsqliteを入れたのにgem install sqlite3が失敗した時の対処法

Linuxbrewでsqliteを入れたあと、 $ gem install sqlite3を実行すると「sqlite3.hが見つからない」というエラーメッセージが出て失敗する。 $ gem install sqlite3 Building native extensions. This could take a while... ERROR: Error installing sqlite3…

Rubyで大きいファイルを読み込む時に進捗を表示

ruby-progressbar というgemを使うとプログレスバーを表示できる。 ruby-progressbarのインストール $ gem install ruby-progressbar 進捗を表示しつつファイルを読むプログラム require "ruby-progressbar" # ファイル名 filename = "sugoku_dekai_file.txt…

ぼっちWikiに最適なGollum

GollumはデータベースにGitを使い、Markdownで書けるWiki。 Gollumの特徴は以下の通り。 シンタックスハイライトや数式に対応している 様々な記法で書ける GitHub Flavored Markdown Textile reStructuredText MediaWiki などなど gemコマンドで簡単にインス…

他人の全ツイートをJSONで一括保存するコマンドを作った

Twitterには、自分の全ツイートアーカイブをダウンロードできる機能があるが、他人のツイートはダウンロードできない。 support.twitter.com そこで、他人のツイートをダウンロードするalltweetsというコマンドを作った(もちろん自分のツイートもダウンロー…

RubyGemsとGitHubに公開したgemの名前を変更する

前提 gemをGitHubとRubyGemsに公開したけど、あとから名前を変えたくなった oldnameという名前のgemをnewnameという名前にしたい oldname gem側の作業 以下のコードをoldname gemのどこかに書いて、deprecatedになることを伝える。 warn "[DEPRECATION] This…

Twitterのふぁぼを寿司にするChrome拡張作った

Twitterのふぁぼがハートアイコンの「いいね」に変わった。 Twitterにハートが登場しました | Twitter Blogs そういう事情なのでふぁぼをにするChrome拡張を作ったらやたら「いいね」された。 ふぁぼをにするChrome拡張作った。 Twitter- - Chrome ウェブス…

iPhoneのカレンダーをGoogle Calendarに移行する方法

iPhoneやiPadのカレンダーをGoogleカレンダーに移行する方法。同期ではなく移行。 iPhoneからAndroidにカレンダーを引っ越したいときや、Googleカレンダーと連携するアプリをiPhoneで使いたいならこの方法で移行するのがおすすめ。 手順 iCloudカレンダー に…

るびまRubyist Hotlinks - インタビュイーの好きなメソッド・嫌いなメソッド一覧

Rubyist Magazine(るびま)には、著名なRubyistにインタビューを行うRubyist Hotlinksという企画がある。 Rubyist Hotlinksでは毎回「好きなメソッド、嫌いなメソッドはなんですか?」という質問がされるのでまとめた。 No. インタビューイ 好きなメソッド …

RSpecで「while line = gets」をテストする方法

RSpecでwhile line = getsのような標準入力のループをテストしたいとき。 Kernel.#getsはARGFをレシーバとしたメソッドの省略形なので、ARGF.getsをモックにすれば良い。 テストしたいコード: # 標準入力を行ごとに区切って配列にするメソッド def foo ary …

rbenvのインストールにはrbenv-installerを使おう(追記:使わない方がいい)

追記:2018-05-15 rbenv-installerは以前とは別物になりました。 もはやrbenv-installerを使うメリットはありません。 追記終わり。あとは古い内容。 rbenv-installerを使うとrbenvとプラグインを同時に導入できる。 ruby-buildなどを入れたりする必要がなく…

はてなブログ始めました

Hello, world.