タグ

ブックマーク / higepon.hatenablog.com (16)

  • Emacs + GDB チートシート - higepon blog

    Emacs + GDB を利用したいならば、何よりも GNU Emacs Manual: Debuggers(英語) を読むことを強くおすすめします。 和訳も存在しますが内容が古く、マウスを利用した操作やグラフィカルな機能についての記述がありませんでした。 マニュアルを読んで理解したあとは実践で覚えていくわけですが、以下にまとめたチートシートを利用すれば時間が節約できるかもしれません。 もしも便利な機能に関して漏れがあれば是非教えてください。 .emacs ;;; GDB 関連 ;;; 有用なバッファを開くモード (setq gdb-many-windows t) ;;; 変数の上にマウスカーソルを置くと値を表示 (add-hook 'gdb-mode-hook '(lambda () (gud-tooltip-mode t))) ;;; I/O バッファを表示 (setq gdb-use

    Emacs + GDB チートシート - higepon blog
  • Emacs で wdired と moccur-edit を使っていない人は(ry

    Emacs で wdired と moccur-edit を使っていない人は(ry と思ったので紹介します。 wdired wdired ではファイルのリネームが超簡単になります。 mv やエクスプローラで F2 を押してリネームをしている人は wdired を使うべし。 dired で ~/tmp を表示すると以下の様になっているとします。 /home/taro/tmp: 合計 273 drwxr-xr-x 6 taro taro 928 2006-12-26 10:41 . drwxr-xr-x 66 taro taro 3632 2006-12-26 10:25 .. -rw-r--r-- 1 taro taro 2232 2006-11-24 21:36 EndsWithTest.cpp -rw-r--r-- 1 taro taro 670 2006-11-24 21:24 End

    Emacs で wdired と moccur-edit を使っていない人は(ry
  • YAPC 2日目 - higepon blog

    今日も良い天気! memcached in mixi by kazeburoさん 自分も使ったことがあるので mixi のような大規模使用例の話は楽しみ。 すみません。以下にはいくつかメモ漏れがあります。 memcached って何? さまざまな言語でクライアント API memached の「分散」 クライアントに実装された分散アルゴリズムで分散 get / get_multi get_multi は非常に高速 delete 上書き禁止の秒数指定できる→知らなかった mixi での利用事例 Pentium4 / Pentium D memory 4GB Linux 2.6.x x86_64 ちょっと古めのマシン 専用マシン 100台以上 1台につき 3GB の容量で起動 cache Hit率 94%(安定している値) メモリ使用量 88%(安定している値) memcached のレポート

    YAPC 2日目 - higepon blog
  • ロベールのC++入門講座を読んで C++ を初歩の初歩から再入門するよ - 前編 - ひげぽん OSとか作っちゃうかMona-

    前置き 自分の C++ レベルに絶望したので「ロベールのC++入門講座」を読んで再入門していく過程を日記に書いていきます。 「おまえはそんなことも知らずにコードを書いていたのか!」「それは間違い!」など叱咤激励募集中です:-) 読んでみたら、たくさんの驚きがありました。 スルーせずに読んでもらえると1つくらい役に立つことを提供できるかもしれません。 例えば5章のデフォルト引数に関数を使える例とか。 ルール 前置きはともかくはじめましょう。13:48にスタバで始めました。 読んで行くうえでいくつかルールを決めます。 知らなかったことは正直に知らなかったと書き、自分が読んで分かる説明を書く。 知識が曖昧だった所も同様に明確な説明を書く。 悩んだ内容を書く。 理解が怪しい所は必ずコードを書く。 さあ1章から読んでみよう。 1章 まずは使い方(13:50) 各 OS 毎に C++ の開発ツールを紹

  • Emacsできれいな日本語フォントを使いたい【解決編】

    多くの人のサポートがあり、ついに解決しました。アドバイスを下さった皆様ありがとうございました。 結局ひげぽんがXやフォント周りの仕組みを一切理解していなかったことが原因ではまっていたというオチでした。 ただ同じようにはまる人はいると思うのでできるだけ詳しく書いておこうと思います。 実現したかったことと経緯 coLinuxのubuntuをセットアップしてcygwinのXWin.exeでデスクトップ環境の利用をはじめた。 その際にemacsの日フォントがとても不恰好でどうにかしたいと思った。 そこで以下のようにフォントをインストールした。 apt-get install ttf-sazanami-gothic apt-get install ipafont apt-get install xfonts-shinonome で、.Xdefaultsに使用するフォントを書けばよいらしいというこ

    Emacsできれいな日本語フォントを使いたい【解決編】
  • Gauche でテスト作成支援 gca.el - ひげぽん OSとか作っちゃうかMona-

    昨日、「test* に与えるテスト名の命名が面倒だ」と書いた所、naotoさんから gca.el という koguroさん作の Emacs Lisp を教えていただきました。 これは便利。 gca.el テストケース作成支援のためのツールを作りました(拙作のEmacs用のユーティリティに含めてあります gca-20060903.tar.gz)。 単体テストをきちんと書くのは面倒ですが、通常コードを書くときは、無意識のうちにgosh上で動作確認をしつつコードを書き進めているかと思います。この動作確認の結果を基に単体テストを作成してしまおうというのがこのツールです。 デモ 実際に動作しているデモムービーを見るとわかりやすいです。(GaucheFest:koguroにあります) デモムービー(mov形式) 4.8MB デモムービー(wmv形式) 2.4MB インストール gca.el の先頭に書

    Gauche でテスト作成支援 gca.el - ひげぽん OSとか作っちゃうかMona-
  • Gauche(Scheme) でデバッグをする4つの方法 - higepon blog

    Gauche でコードを書いているときにコードが意図どおりに動かないことがあります。そのような場合にデバッグする方法を4つ紹介します。 前提 まず Gauche はリリースされている最新版を使った方が良いでしょう。Linuxのディストリビューションによってはパッケージが古い場合あります。 またScheme は関数型言語なので、デバッグの単位は関数(手続き)ごとに行うことが多いです。一つ一つの手続きが意図どおり動いているのか?を調べながら進めるのが基になります。 方法1 print デバッグ Gauche には今のところデバッガがありませんから基的には print デバッグがメインとなります。単純な print デバッグから見ていきましょう。 以下のような sum という手続きで print デバッグしてみましょう。 (define (sum n) (if (= n 1) 1 (+ n

    Gauche(Scheme) でデバッグをする4つの方法 - higepon blog
  • 勝手にmakeでMonaの開発効率を上げよう - higepon blog

    昨日のDevelopment Environment Conferenceで最速の中の人がCSSを編集したら即座にブラウザに反映するってのをデモしていて「待ち時間が少ない方が効率が良い」的な話をしていました。 僕みたいなLLでない人は、冷静に考えると開発時間の10%位はビルドに要していて、しかもその時間は「ぼーっ」としているのが現状です ちょこちょこスクリプトを書いてこれを改善できれば、かなり開発の効率があがるのではないかと思いやってみました。 分析 まずは現在の作業を洗い出してみます。 1.~/mona/contrib-fast-gui/Misc/test/test.cppを編集します。 2.キリの良いタイミングで make && make installします。 3.エラーがあれば修正後、make しエラーがなくなるまでこれをくり返します。 4.~/mona/contrib-fast-

    勝手にmakeでMonaの開発効率を上げよう - higepon blog
  • Scheme関連ブログリンク集 - ひげぽん OSとか作っちゃうかMona-

    読むと勉強になる Scheme 関連ブログを集めようと思います。日語/英語/自薦/他薦 問わずおすすめがありましたらぜひ教えてください。ここに追記していきます。 Shiro Gauche の作者 shiro さんのブログ 00000078 id:scinfaxi さんのブログ。Schemeのコンパイラを実装中のようです。 わだばLisperになる - cadrグループ Scheme ではないですが、Lisp の貴重な情報がたくさん書かれています。 programming: what's new online Reddit家。英語ですが Scheme の話題がよく上がります。 ディスカッション - comp.lang.scheme | Google グループ 同じく英語ですが面白いです。 PLT Scheme Blog id:sumiiiさんありがとうございます。 http://sche

    Scheme関連ブログリンク集 - ひげぽん OSとか作っちゃうかMona-
  • Cannot find terminfo entry for 'emacs'. - higepon blog

    M-x shell で使うシェルを zsh + screen にしているのだけど Cannot find terminfo entry for 'emacs'. というメッセージが表示されるのが気になるので調べたら、どうも dumb をコピーすれば良いらしい。(当か?) # mkdir -p /lib/terminfo/e # cp /lib/terminfo/d/dumb /lib/terminfo/e/emacs あと解決してないのは M-x shell だと zsh の RPROMPT を表示してくれないこと。 カレントディレクトリを表示しているのでなんとかならないかな。 とりあえず .zshrc に if [ "$TERM" = "emacs" ]; then PROMPT='[${USER}@${HOSTNAME} %~] %(!.#.$) ' else PROMPT='[${

    Cannot find terminfo entry for 'emacs'. - higepon blog
  • ひげぽん OSとか作っちゃうかMona- - Subversionの話

    Subversion を使うようになって数年が経ちますが、最近 svn diff/status/log/merge などのコマンドに熟達してきた。 気軽に ブランチを作る マージする コードを元のバージョンに戻す 問題となるコードを diff で調べる などができるようになって、作業効率が上がったり、こまめにコミットさえしておけば、あとからどうにでもなるので精神的にもかなり楽になった。 この「気軽に」ってのがとても重要。 以前だって、マージの概念やいつでも好きなバージョンに戻せること、diff を表示することが出来るのは知っていたし、たまに使っていたりもした。 ただ使う場合は コマンドをWebで調べる おそるおそる試してみる 失敗して check out しなおしで時間をロス などがありストレスがたまりがちで、結果的にこれら有用な機能を使うのを無意識に避けていたなと、振り返ってみると気づく

    ひげぽん OSとか作っちゃうかMona- - Subversionの話
  • Copy URL+ で引用記法 - higepon blog

    mozdev.org - copyurlplus: index。 いつも忘れて困るのでメモ。 user_pref("copyurlplus.menus.2.label", "記事を引用する"); user_pref("copyurlplus.menus.2.copy", "><blockquote cite=\"%URL%\" title=\"%TITLE%\"><p>%SEL%</p></blockquote><");

    Copy URL+ で引用記法 - higepon blog
    IMAKADO
    IMAKADO 2007/09/20
    引用記法
  • Subversionを ssh 経由で使おう2(Emacsのvc-svnを利用する) - higepon blog

    CVSをEmacsから利用する場合は、VCを利用しています。 C-q 等でcommit などができてとても便利です。 この vc が Subversionでも使えるようなる vc-svn.el という Lisp があるので設定してみました。 手順としては以下のようになります。 vc-svn.el の入手と設定 ssh-agentの設定 また以下では Emacsとして Meadow2、Subversionクライアントとして cygwin版のSubversionを利用しています。 vc-svn.el の入手と設定 http://subversion.tigris.org/から、最新のsubversionのソースを入手します。 現時点では subversion-1.1.4 が最新版でした。 subversion-1.1.4/contrib/client-side/vc-svn.el が目的のブツ

    Subversionを ssh 経由で使おう2(Emacsのvc-svnを利用する) - higepon blog
  • ひげぽん OSとか作っちゃうかMona- - Subversionを ssh 経由で使おう(ApacheもWebDAVも必要ないよ) - masatobito さんのコメント

    Subversionをローカルだけでなく格的にサーバーで使おうと思うといつも障害になるのが以下の誤解だ。(というか今日まで誤解していた) Apacheで難しい設定をしなくてはならない ⇒Apacheの使用は必須ではない。インストールにaprというApache由来のライブラリが必要なだけ。 WebDAVとかいうよく分からない仕組みを理解しなければならない ⇒同じく必須ではない svnserverとかいうサーバを常駐させる必要がある ⇒同じく必須ではない 結局すべて、誤解でだった。 個人で使うならば、もっと簡単(?)というか親しみやすい方法があり、それが「ssh経由でアクセス」である。 自分的に ssh の理解も怪しかったのであわせて手順メモを残しておきます。 subversionのインストールは yum でやっていますが環境に合わせて下さい。 1.ssh設定 以下ユーザー名は higepo

    ひげぽん OSとか作っちゃうかMona- - Subversionを ssh 経由で使おう(ApacheもWebDAVも必要ないよ) - masatobito さんのコメント
  • Perlモジュール名にカーソルを合わせて M-.するとソースを開く2 - higepon blog

    id:higepon:20060201:1138776917の続き id:naoyaから perldoc を使ったほうが何かと便利と言われたので新版。 変更・改善点は perldocを利用しているので、Hoge::Fooが Hoge.pmに定義されているような場合も対応可能 PERL5LIBを利用して複数のパスから探すことが可能。(id:miyamukoさんに感謝) PERL5LIBさえきちんと指定しておけば、CPANモジュール・自プロジェクトのモジュール区別なくソースが見られるのでかなり幸せです。 ;;(setenv "PERL5LIB" "/cygdrive/x/oop/lib") (defun perl-find-module () (interactive) (let (end begin module path-to-module) (save-excursion (setq b

    Perlモジュール名にカーソルを合わせて M-.するとソースを開く2 - higepon blog
    IMAKADO
    IMAKADO 2007/09/11
    module source 開く
  • Catalyst入門 と お作法について

    id:naoyaの技術発表(10月15日の技術勉強会 - はてな技術発表会日記 - 機能変更、お知らせなど)。 これを聞いて、Catalyst面白そうということに気づいて触ってみています。 インストールと簡単な動作 Perl の MVC フレームワーク Catalyst に入門してみた : NDO::Weblogを一通り読めば分かると思います。 私の環境だと sudo perl -MCPAN -e 'install Class::DBI::mysql' を追加で行う必要がありました。 お作法 Catalystではどう書くのが正しいか等、迷う部分が多々あります。 いろいろ調べた結果、これだと思うものを紹介していき、標準化(?)のたたき台になればよいかなと。 URLマッピング CatalystのURLマッピングはとても柔軟です。たくさん種類があってこまりますw。 直接URLを指定 /foo/b

    Catalyst入門 と お作法について
  • 1