2012-01-01から1年間の記事一覧

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…

バッファのある一行の文字列を取得する

アクセス解析を見てた時に、buffer-substringで行の取得の仕方を検索してた人がいた。そういえば行の取得の仕方を書いてなかったので書いてみようと思う。 やり方 test-string1 ;; <-ここの行にカーソルがあったとする test-string2 ;;(point-at-bol) 現在の…

複数のユーザー別にhowmディレクトリをDropboxディレクトリに設定するやり方

いきさつ 研究室用のEmacsと家用のEmacsの設定の違いを吸収するにはどうしたらいいか考えてたらauto-completeのプルダウンメニューにユーザー関係の変数が用意されてたのを発見した。用意されている変数があるのでよし使おうと思ったら作ってみたら出来た。 …

NXTで見かけるU32とかS8とかいう型は何か?

NXT

NXTを触ってるとU32とかS8とかF32とかいう方が出てくる。一体なんなのかなと思ったらtypedefした型だった。宣言の場所は、 nxtOSEK/ecrobot/c/ecrobot_types.h nxtOSEK/lejos_nxj/src/nxtvm/platform/nxt/mytypes.h に宣言してあった。抜き出した部分は以下…

mallocの警告の対処方法メモ

C

Cでプログラムを作っていた時に、mallocを使っていてこんな警告が出てた。 警告: 組み込み関数 ‘malloc’ の互換性がない暗黙的な宣言です これは #include "stdlib.h" がないから警告が出るみたい。なので、ソースコードに、上の#include "stdlib.h"を付け加…

Data.Graph写経でつまったとこのメモ

ここのページを写経してたらライブラリが見つからなくて実行できなかった。使用したライブラリは以下のとおりである。 import Prelude () import Prelude.Plus import Data.Array import Data.Maybe (listToMaybe, mapMaybe) import Data.Tuple.Select (sel2…

parsecが見つからなかったののメモ

勉強のためCSVパーサーを写経してたらこんなエラーが出てきた。 csv_parser.hs:33:8: Could not find module `Text.ParserCombinators.Parsec' Perhaps you meant Text.ParserCombinators.ReadPrec (from base) Text.ParserCombinators.ReadP (from base) Us…