今日の見かけたリポジトリ

コードリーディングを全然してないのでメモのために見つけたリポジトリを書いていこうと思う。 io-streamライブラリ。今日1.0がリリースされた。 io-streamについてのtanakhさんのツイート。Q. なんで io-stream はモナド変換子になってないの?A. いくつか…

moshをさくらVPSで使う(Ubuntu12.04)

Moshという端末をリモートで操作するSSHの代替となるソフトウェアをちょっと使ってみたかったのでインストールをしてみた。Moshは通信環境が不安定環境、例えばモバイル環境でも安定したリモート接続ができるようになるとのこと。さらにSSHよりも高速に動く…

yesodで詰まったところのメモ

yesodでちょっとエラーで詰まったことのメモ。追記2013.7.5 Yesodのバージョンは1.1ぐらいだった気がする。 エラー1 Handler/Blog.hs:17:9: No instance for (RenderMessage master0 FormMessage) arising from a use of `area' Possible fix: add an insta…

シェルでifの結果を一行で確認する方法

最近シェルでif文を一行(oneliner)でささっと確認したいことがあった。ググるけど、いろいろ情報が分散してたみたいなので分かりやすそうなのを書いておく。例として、いくつか出してみる。 #正規表現 使用しているOSが64bitかどうか [[ `uname -m` =~ x86_6…

gitのpost-receiveフックを使ってみる(全部ローカル)

Git

全部ローカルで動くようなパターンをやってみた。post-receiveの記事は、サーバーとかに対してのやり方は書いてあるけど、ローカルでやる方法は見当たらなかったので書いてみた。どんな動きをするかテストをしてみる。やって見る内容は、この3つのリポジトリ…

Mac Officeの数式エディタでの上付き文字のショートカットキー

Mac

タイトルが長いけど、Mac Office2011の数式エディタで上付き文字のショートカットはCommand+Hに割り当てられていない。さて困ったぞと思って質問サイトに投稿しようかと思ったけどもうちょっと探してみようと思って探してみると、解決策を見つけた。command+…

Emacsの起動時間を短縮する方法 #Emacs #AdventCalendar

Emacs Advent Calendar 9日目です。すみません書くのがものすごく遅れてしまいました...。なんとか年内に書けた...。前の日は、color-themeでEmacsの見た目をきれいにする - Qiita、次の日は、emacsの設定ファイルをどうするかというのはおそらく共通の悩み …

grub2,systemdへの移行のメモ

grub2に変更しないままsystemdに更新してしまうと、謎のエラーを出してしまってログインすらできなくなるので変更しないといけない くしゃみ日記の人の記事にあるのだけれど、grub2のカーネルオプションにinit=/usr/lib/systemd/systemdを付け加えないと毎回…

yaourtの301エラー

AURのエラーがなんか出てきた。 The URL http://aur.archlinux.org/rpc.php?type=search&mendeley_returned_error : 301301エラーとかでたので検索したところ /usr/lib/yaourt/util.sh の AURURL='http://aur.archlinux.org'↓ AURURL='https://aur.archlinux…

ちょっと便利なデバッグ用Cマクロ

C

検索でなかなか引っかからなかったのでメモしておく。 #define printf_d(x) (printf(#x " = %d\n", x)) 整数だけだとちょっと寂しいので浮動小数点と文字列の場合を増やしてみた。 さらにもう一つ説明用の文字列を取れるようにしてみた。 // 整数 #define pr…

shell scriptでArch Linuxかを判定をする方法

shell scriptでの判定方法を思いついたのでメモしておく。Arch Linuxにはカーネルリリース番号*1のところに"3.5.3-1-ARCH"とか書かれていて、"ARCH"と書かれている部分を利用すれば判定できそうだなと思って、いろいろ調べてみた。そしたら正規表現を使った…

haskell98ライブラリから現在のHaskellライブラリへの変遷

ネット上にあるHaskellソースを見ると昔のhaskell98あたりのライブラリ名でインポートしている例がある。それを使う場合に、新しいライブラリの方でインポートしようとした場合、対応するライブラリがどこにあるかがわからなくて相当困った覚えがある。どこ…

rootにメインの.bashrcを共有させる方法

rootの方にもメインで使ってる.bashrcを読み込んでくれると、同じコマンドが使えたりして楽なのでどうしようかと試行錯誤してたら思いついた。rootに.bashrcを共有させる方法。 # /root/.bashrc source /home/username/.bashrc 単にsourceコマンドでメインで…

C++のstringとintの相互変換

C++

よく調べてしまうのでメモしとく。 #include <string> #include <sstream> using namespace std; //conversion //------------------------------------------ inline int toInt(std::string s) {int v; std::istringstream sin(s);sin>>v;return v;} template<class T> inline std::st</class></sstream></string>…

readで([ [String] ] -> [ [Int] ])の変換

String を Intに変換するやり方を教えてもらって、分かったのでメモしとく。 {- --間違った書き方 test_1 :: [[String] -> [[Int]] test_1 = map (\x -> map (\y -> read y :: Int)) [["123", "12"], ["234", "324"]] -} test0, test4 :: [[Int]] test1, tes…

HaskellのStringからIntへの変換

AtCoderで問題を解いてる時に、HaskellでStringからIntへの変換がわからくて困った。確かこれはujihisaさんに教えてもらったようなそうでなかったような...。とにかくメモとして残しておく。 StringからIntへの変換方法 Haskellで文字列StringをIntなどの整…

NXTでのmake、uploadの手間を省く方法

NXT

結論から書くと alias mas='make all && sh rxeflash.sh' alias mcas='make clean && make all && sh rxeflash.sh' を/home/(ユーザー名)/.bashrc にコピペしておいて、cygwin再起動をする。それから$ mas でmakeとアップロードができたり、$ mcas でクリー…

NXTでData abortなる例外が...

NXT C

めんどくさいことにData abortなるセグフォ(Segmantation Fault)を起こしてしまった。原因は構造体の代入をやり忘れてたから起こったことだった。 再現しようと思ったらものすごくめんどくさかった...。でもまだちゃんと実行してない...。 balanceRunner.tai…

Jenkinsをインストールしてevernoteが同期できなかった時のメモ

JenkinsをインストールしたらなぜかEvernoteの同期ができなくなってしまった。原因はProxyを使ってたのが原因だった。Google ChromeとかIEでProxyのポートを8080にしておくとJenkinsも8080を使ってしまうためなのかポートが塞がってしまう。これを回避するた…

NXT用のデータ出力マクロのメモ

NXT C

ちょっとしたデバッグ用マクロ。ecrobot_debug1が不便なので作ってみた。 #define DATA_OUTPUT(str, a, b, c) \ display_clear(0); \ display_goto_xy(0, 0); \ display_string(#str); \ \ display_goto_xy(0, 1); \ display_string("VAR1: "); \ display_in…

ghc-mod not found が出たの場合の対応

ghc-mod not foundがよく出てくるのでいい加減書いておく。ghc-mod not found はPATH設定してないのがゲンインらしい。 対処方法 もしghc-modをインストールしていない場合は $ cabal install ghc-modでインストールしておく。LinuxとWindowsの場合の設定の…

Windows7でタスクバーが隠れなくなった場合の対処

Windows 7で「タスクバーを自動的に隠す」をチェックしてもタスクバーがなぜか隠れなくなった。どうやってこの状態を再現させるかが謎だけど、対処法はわかった気がする。 対処法1 キーボードの上の段にあるF11を押して全画面表示にしてから、もう一度F11を…

あのアイコンはどこに...?

あのアイコンを探すけどgoogleで検索してもなかなか出ないのでメモ。penguin2716/teokure-icons - GitHub現時点(2012/8/8)で、ておくれアイコン205種とかすごい。今はgithubで管理しているみたい。

複数のjpegを一つのpdfへ変換した時のメモ

ImageMagickを使って。複数のjpegを一つのpdfに変換したときに困ったことのメモを書いとく。ImageMagickを使って変換するときはconvetコマンドを使う。 $ convert *.jpg gakufu.pdf ここでファイル名が連番に出力されなくて困った。 1.jpg 2.jpg 3.jpg ... 1…

(git submoduleの)Not a git repository のエラー解消

Git

gnupackの.emacs.dディレクトリをgitで管理していて、gnupackのアップデート時には、.emacs.dをまるごと移動させて(.gitを含めて)設定ファイルをアップデートという方法を今はしてる。 これをしたら、haskell-modeとmulti-web-modeが、前のディレクトリのパ…

NXTをバージョン管理するときに無視すべきファイルたち

NXT

NXTのロボット開発で、ソースコードの管理のためにGitを使ってる。プログラムを書いてコミットするときに無視するファイルを決めておかないと無駄なファイルを管理してしまうのでなかなか面倒なことになる。Gitでは.gitignoreに無視するファイル・ディレクト…

Arch Linuxでlocateコマンドを使う方法

Linuxではlocateというfindより楽そうなファイルを高速に検索するコマンドがある。Arch Linuxでもそれを使いたかったので使ってみたけどなぜか -bash: locate: command not foundとなってしまって使えなかった。 Googleで検索してみるとmlocateというパッケ…

Emacsで選択範囲の改行を置換する方法

検索する限りでは、M-x replace-regexpや M-x query-replace-regexpなどを使ってC-q C-jで置換する方法以外で、スクリプトとして置換するやり方はほとんどなかったみたいだった。かろうじてStack Overflowに自分がやりたいことを書いてくれているものがあっ…

Coqのコメントアウトの方法

Coq

ドキュメントによると (* コメントアウトは (* と *) で囲む *) (* (* ネストもできるらしい *) *)Cみたいな一行コメントアウトの // は見当たらなかった。こういうのがあると、サッとコメントアウトするときは便利なのだけれど。めんどくさいのでsmartchrと…

error: no macro name given in #ifndef directiveってなんだという

NXT C

make allしたら盛大にエラーが出てきた。 $ make all Compiling Source/ColorDetector.c to ColorDetector.o In file included from Header/ColorDetector.h:5, from Source/ColorDetector.c:1: Header/LightSensor.h:3:8: error: no macro name given in #i…