<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-23040416</id><updated>2011-11-15T12:30:03.457+09:00</updated><category term='ruby'/><category term='ctags'/><category term='cocos2d'/><category term='android'/><category term='xcode'/><category term='iPhone'/><category term='git'/><category term='cygwin'/><category term='rails'/><category term='cegcc'/><category term='iTerm'/><category term='programming'/><category term='zsh'/><category term='windows'/><category term='beagleboard'/><category term='vim'/><category term='FreeBSD'/><category term='ming'/><category term='Leopard'/><category term='OS X'/><category term='MacPorts'/><title type='text'>splhack</title><subtitle type='html'>sakamotoがなんとなく技術的と思う話を書き連ねるところ。技術ってなんだろう。</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://blogger.splhack.org/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default?start-index=101&amp;max-results=100'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>306</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-23040416.post-720578692151485616</id><published>2011-07-01T12:26:00.001+09:00</published><updated>2011-07-01T12:27:07.567+09:00</updated><title type='text'>Tumblrに移転しました</title><content type='html'>&lt;a href="http://tumblr.splhack.org/"&gt;http://tumblr.splhack.org/&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-720578692151485616?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/720578692151485616/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=720578692151485616' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/720578692151485616'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/720578692151485616'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/07/tumblr.html' title='Tumblrに移転しました'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2598170508395266619</id><published>2011-05-03T00:06:00.011+09:00</published><updated>2011-05-10T23:13:13.000+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>いまどきの2Dゲームエンジン</title><content type='html'>スクリプト言語でiPhoneやAndroid用ゲームを作れる2Dゲームエンジンをまとめてみる試み。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;table border=1 cellspacing=0 cellpadding=2&gt;&lt;tbody&gt;&lt;tr&gt;&lt;th&gt;name  &lt;/th&gt;&lt;th&gt;Corona  &lt;/th&gt;&lt;th&gt;moai  &lt;/th&gt;&lt;th&gt;Imapct  &lt;/th&gt;&lt;th&gt;Kobold2D&lt;br /&gt;&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;link&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="http://www.anscamobile.com/"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="http://getmoai.com/"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="http://impactjs.com/"&gt;link&lt;/a&gt;/&lt;a href="http://www.phoboslab.org/log/2011/04/ios-and-javascript-for-real-this-time"&gt;iOSImpact&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="http://www.kobold2d.org/"&gt;link&lt;/a&gt;&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;desc&lt;br /&gt;&lt;/td&gt;&lt;td&gt;Corona is the world’s most advanced mobile development platform.&lt;br /&gt;&lt;/td&gt;&lt;td&gt;The mobile platform for pro game developers.&lt;br /&gt;&lt;/td&gt;&lt;td&gt;Impact is a JavaScript Game Engine that allows you to develop HTML5 Games in no time.&lt;br /&gt;&lt;/td&gt;&lt;td&gt;Kobold2D™ is the expert's choice for Cocos2D game development.&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;license  &lt;/td&gt;&lt;td&gt;proprietary &lt;/td&gt;&lt;td&gt;OpenSource&lt;br /&gt;(CPAL) &lt;/td&gt;&lt;td&gt;proprietary &lt;/td&gt;&lt;td&gt;OpenSource&lt;br /&gt;(MIT License)&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;language  &lt;/td&gt;&lt;td&gt;Lua  &lt;/td&gt;&lt;td&gt;Lua   &lt;/td&gt;&lt;td&gt;Javascript &lt;/td&gt;&lt;td&gt;Lua&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;native  &lt;/td&gt;&lt;td&gt;?(C++)  &lt;/td&gt;&lt;td&gt;C++   &lt;/td&gt;&lt;td&gt;?(Objective-C) &lt;/td&gt;&lt;td&gt;Objective-C&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;iOS   &lt;/td&gt;&lt;td&gt;available &lt;/td&gt;&lt;td&gt;available &lt;/td&gt;&lt;td&gt;available &lt;/td&gt;&lt;td&gt;available&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;Android  &lt;/td&gt;&lt;td&gt;available &lt;/td&gt;&lt;td&gt;available  &lt;/td&gt;&lt;td&gt;not yet  &lt;/td&gt;&lt;td&gt;-&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;price  &lt;/td&gt;&lt;td&gt;$199/year &lt;/td&gt;&lt;td&gt;Free  &lt;/td&gt;&lt;td&gt;$99   &lt;/td&gt;&lt;td&gt;Free&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;release  &lt;/td&gt;&lt;td&gt;released &lt;/td&gt;&lt;td&gt;private beta &lt;/td&gt;&lt;td&gt;beta  &lt;/td&gt;&lt;td&gt;2011 summer&lt;br /&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2598170508395266619?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2598170508395266619/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2598170508395266619' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2598170508395266619'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2598170508395266619'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/05/2d.html' title='いまどきの2Dゲームエンジン'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2469679450618216102</id><published>2011-03-30T15:56:00.001+09:00</published><updated>2011-04-01T14:42:28.596+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20110330</title><content type='html'>MacVim-KaoriYa 20110330版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;s&gt;今回はSparkleによる自動更新を設定していません。&lt;/s&gt;(2011/04/01 Sparkle情報を更新しました)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20110330.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20110330.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Xcode 4でビルドしています。&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Mac OS X 10.5 Leopardを使用されている方、Intel、PowerPC 問わず、動作確認にご協力いただけますと幸いです。&lt;br /&gt;&lt;br /&gt;Vim 7.3.146、MacVim Snapshot 57、香り屋パッチ 20110323ベースです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(2011/04/01 追記)&lt;br /&gt;実験的レンダラを使用していない場合、半透明設定(set transparency)が効かなくなります。半透明設定を使用している場合は、「環境設定」「詳細」の「実験的レンダラを使用する」「インラインインプットメソッドを使用する」の両方をチェックしてみてくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2469679450618216102?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2469679450618216102/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2469679450618216102' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2469679450618216102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2469679450618216102'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/03/macvim-kaoriya-20110330.html' title='MacVim-KaoriYa 20110330'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7237424472390162945</id><published>2011-03-25T22:03:00.002+09:00</published><updated>2011-03-25T22:34:44.012+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OS X'/><title type='text'>Xcode4でPowerPC</title><content type='html'>&lt;pre&gt;&lt;br /&gt;$ sudo ln -s /Developer/Platforms/iPhoneOS.platform/Developer/usr/libexec/gcc/darwin/ppc /Developer/usr/libexec/gcc/darwin&lt;br /&gt;$ sudo ln -s /Developer/Platforms/iPhoneOS.platform/Developer/usr/libexec/gcc/darwin/ppc /usr/libexec/gcc/darwin&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Xcode 4.0.1でも治ってませんでした。バグレポート忘れてたんですが。&lt;br /&gt;&lt;br /&gt;これやっとくと、MacPortsでLeopard用のuniversal buildも可能になります。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$ sudo port install ncurses +universal macosx_deployment_target=10.5 configure.cc=/usr/bin/gcc-4.2 configure.cxx=/usr/bin/g++-4.2&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7237424472390162945?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7237424472390162945/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7237424472390162945' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7237424472390162945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7237424472390162945'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/03/xcode4powerpc.html' title='Xcode4でPowerPC'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-8315663255653646991</id><published>2011-03-25T21:33:00.003+09:00</published><updated>2011-03-25T21:40:47.155+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その8</title><content type='html'>&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;div style="border:0px solid;margin:0px;padding:6px 0px;width:320px;text-align:center;float:left"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;&lt;img src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432976.jpg%3f_ex%3d300x300&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432976.jpg%3f_ex%3d80x80" alt="iOS4プログラミングブック" border="0" style="margin:0px;padding:0px"&gt;&lt;/a&gt;&lt;p style="font-size:12px;line-height:1.4em;text-align:center;margin:0px;padding:2px 6px"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;iOS4プログラミングブック&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;本屋にも並んでます『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。&lt;br /&gt;&lt;br /&gt;補遺その8、というか、間違いのお知らせです。ごめんなさい。&lt;br /&gt;&lt;br /&gt;iOS 4プログラミングブック 第5章&lt;br /&gt;190ページ 図5-2-5「ヒープからヒープへのコピー」の先頭行に間違いがあります。&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;(誤) block_t block3_on_heap = Block_copy(block_on_stack);&lt;br /&gt;(正) block_t block3_on_heap = Block_copy(block_on_heap);&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;@eyesrobe様に発見していただきました。ありがとうございます。&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_top&amp;bc1=FFFFFF&amp;IS2=1&amp;npa=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=amazonasso0d9-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4844329766" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-8315663255653646991?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/8315663255653646991/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=8315663255653646991' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8315663255653646991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8315663255653646991'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/03/ios-4-5-8.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その8'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3842376144221770754</id><published>2011-03-03T16:24:00.003+09:00</published><updated>2011-03-03T16:52:33.006+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その7</title><content type='html'>&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;div style="border:0px solid;margin:0px;padding:6px 0px;width:320px;text-align:center;float:left"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;&lt;img src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432976.jpg%3f_ex%3d300x300&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432976.jpg%3f_ex%3d80x80" alt="iOS4プログラミングブック" border="0" style="margin:0px;padding:0px"&gt;&lt;/a&gt;&lt;p style="font-size:12px;line-height:1.4em;text-align:center;margin:0px;padding:2px 6px"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;iOS4プログラミングブック&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;そろそろ浸透して話題にも上がらなくなってきた(?)『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。&lt;br /&gt;&lt;br /&gt;補遺その7では、BlocksのObjective-C支援機能に切り込んでみます。&lt;br /&gt;&lt;br /&gt;191ページに書いてあるとおり、Objective-Cのオブジェクトは、Block_copy時に自動的にretainされます。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c"&gt;&lt;br /&gt;NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];&lt;br /&gt;&lt;br /&gt;NSString *string = [NSString stringWithFormat:@"score = %d", score];&lt;br /&gt;&lt;br /&gt;void (^block)() = Block_copy(^{&lt;br /&gt;&lt;br /&gt;    NSLog(@"%@", string);&lt;br /&gt;&lt;br /&gt;});&lt;br /&gt;&lt;br /&gt;[pool drain];&lt;br /&gt;&lt;br /&gt;/* stringはblockからretainされてるから、まだ生きてる */&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;これどういう仕組みなんでしょう?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Objective-Cのオブジェクトは、みなNSObjectの子供。&lt;br /&gt;&lt;br /&gt;NSObjectは、C言語としては、&lt;code&gt;__attribute__((NSObject))&lt;/code&gt;アトリビュートの付いた変数。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;てことで、Block_copy時に__attribute__((NSObject))のついた変数をretainして、Block_release時にreleaseするコードを、コンパイラは簡単に生成できるわけですね。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;a href="http://clang.llvm.org/docs/Block-ABI-Apple.txt"&gt;http://clang.llvm.org/docs/Block-ABI-Apple.txt&lt;/a&gt;&lt;br /&gt;2.2.1 Importing __attribute__((NSObject)) variables.&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;しかし、この自動retainする機能。便利なのはいいのですが、実は気づかないうちに、循環参照してdeallocされない状況に陥ることもある諸刃の剣。&lt;br /&gt;&lt;br /&gt;Blockが、Blockをretainしているクラスのselfを自動retainしちゃう、という落とし穴。&lt;br /&gt;&lt;br /&gt;詳しくは『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』の193ページに!&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_top&amp;bc1=FFFFFF&amp;IS2=1&amp;npa=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=amazonasso0d9-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4844329766" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3842376144221770754?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3842376144221770754/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3842376144221770754' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3842376144221770754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3842376144221770754'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/03/ios-4-5-7.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その7'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2694362903707972612</id><published>2011-02-08T22:20:00.008+09:00</published><updated>2011-02-09T06:47:46.759+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>OpenGL ES 開発リソースまとめ</title><content type='html'>GPU作ってるとこのOpenGL ES 1.1/2.0開発リソースが、実は大変充実しています。まとめてみました。&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;■POWERVR Insider &lt;a href="http://www.imgtec.com/powervr/insider/powervr-insider.asp"&gt;http://www.imgtec.com/powervr/insider/powervr-insider.asp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;□主な使用機種: iPhone 3G(MBX),DROID(SGX530),iPhone 4/iPad(SGX535),Nexus S/Galaxy S(SGX540),NGP(SGX543),...&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;・POWERVR Insider SDK。COLLADAから変換したPOD形式を使って3Dモデルの描画、アニメーション可能。ソースコードのライセンスは非常にゆるい(&lt;a href="http://www.imgtec.com/forum/forum_posts.asp?TID=138"&gt;forumのSDK Code Licenseスレッド参照&lt;/a&gt;)。&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;・PowerVR圧縮テクスチャPVR用コンバータ PVRTexToolなどのツールも充実。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■ADRENO GRAPHICS &lt;a href="http://developer.qualcomm.com/dev/gpu"&gt;http://developer.qualcomm.com/dev/gpu&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;□主な使用機種: Xperia,Nexus One,Desire,IS03,Regza,Windows Phone 7...&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;・Adreno™ Profilerが凄い。rootとったNexus OneなどをUSBケーブルで繋ぐだけで、リアルタイムにGPUの負荷やテクスチャ、描画結果を取得可能。&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;・Adreno向けに最適化されたOpenGL ES 2.0 shader source codeあり。でもOpenGL ES 2.0であればどこででも。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■TEGRA DEVELOPER ZONE &lt;a href="http://tegradeveloper.nvidia.com/tegra/"&gt;http://tegradeveloper.nvidia.com/tegra/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;□主な使用機種: dynabook AZ,各種タブレット,...&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;・Android NDK用のサンプルコードはApache License 2.0。JNI経由で音を鳴らす方法なども含んでいるので、NDKで開発する場合は必見。&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;・EclipseでNDKをデバッグするためのNVIDIA Debug Manager for debugging Android NDK applications in Eclipse とかあったりする。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■Mali Developer Center &lt;a href="http://www.malideveloper.com/index.php"&gt;http://www.malideveloper.com/index.php&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;□主な使用機種: コンシューマ製品があるかどうか不明&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;・Mali GPU Shader Development Studio。IDE的に結果をみながらshader開発が可能。&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;また各サイトでWindowsやLinux用のOpenGL ES 1.1/2.0 emulator libraryが配布されてますので、iPhoneやAndroid向けに作ったOpenGL ES 1.1/2.0用のソースコードを、WindowsやLinux用にビルドして実行することが可能です。&lt;br /&gt;&lt;br /&gt;各GPUごとの開発リソースは大変特色が出ているのですが、OpenGL ES 1.1/2.0経由で使うことになりますので、profilerなど専用なもの以外は、どれででも使えてしまいます。便利に使っちゃいましょう。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2694362903707972612?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2694362903707972612/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2694362903707972612' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2694362903707972612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2694362903707972612'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/02/opengl-es.html' title='OpenGL ES 開発リソースまとめ'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4351470296676116845</id><published>2011-02-03T10:39:00.006+09:00</published><updated>2011-02-03T12:02:59.812+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cocos2d'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その6</title><content type='html'>&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;div style="border:0px solid;margin:0px;padding:6px 0px;width:320px;text-align:center;float:left"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;&lt;img src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432976.jpg%3f_ex%3d300x300&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432976.jpg%3f_ex%3d80x80" alt="iOS4プログラミングブック" border="0" style="margin:0px;padding:0px"&gt;&lt;/a&gt;&lt;p style="font-size:12px;line-height:1.4em;text-align:center;margin:0px;padding:2px 6px"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;iOS4プログラミングブック&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;楽天BOOKSで一時売り切れになるも、再度入荷中の『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。&lt;a href="http://amzn.to/gyDsy7"&gt;Amazon&lt;/a&gt;では相変わらず在庫切れ...&lt;br /&gt;&lt;br /&gt;補遺その6では、ちょっと趣向を変えてサンプルコードを説明してみます。&lt;br /&gt;&lt;br /&gt;第5章マルチスレッドのサンプルコードは、実はTumblr Image Viewerになっていたり、&lt;a href="http://www.cocos2d-iphone.org/"&gt;cocos2d for iPhone&lt;/a&gt;を使っていたりする、実戦さながらのサンプルコードとなっております。&lt;br /&gt;&lt;br /&gt;今回はcocos2dでの非同期テクスチャ読み込みについて掘り下げてみます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;cocos2dの非同期テクスチャ読み込みAPIは、読み込み終了時にtargetのselectorを呼ぶコードになっています。これBlocksだと楽になるような気がしませんか? Blockを受け取って呼び出すClassを作ってみます。&lt;br /&gt;&lt;br /&gt;■TextureCallback.h&lt;br /&gt;&lt;pre name="code" class="c"&gt;&lt;br /&gt;/*&lt;br /&gt; * 「5-1 Blocksの概要」(178ページ)&lt;br /&gt; * TextureCallbackクラスにより、&lt;br /&gt; * cocos2dのイメージ非同期読み込み終了コールバックを、&lt;br /&gt; * Blocksに結びつけることにより、より簡単にコールバックを記述できます。&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;#import "cocos2d.h"&lt;br /&gt;&lt;br /&gt;/*&lt;br /&gt; * 「5-2-2 値としてのBlock」(184ページ) &lt;br /&gt; * typedefを使用したBlocksの宣言。&lt;br /&gt; */&lt;br /&gt;typedef void (^textureCallbackBlock_t)(CCTexture2D *texture);&lt;br /&gt;&lt;br /&gt;@interface TextureCallback : NSObject&lt;br /&gt;{&lt;br /&gt;    textureCallbackBlock_t block_;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;/*&lt;br /&gt; * イメージ非同期読み込み終了コールバックで実行されるBlockを指定。&lt;br /&gt; */&lt;br /&gt;+ (id)callbackWithBlock:(textureCallbackBlock_t)block;&lt;br /&gt;- (id)initWithBlock:(textureCallbackBlock_t)block;&lt;br /&gt;- (void)callback:(CCTexture2D *)texture;&lt;br /&gt;&lt;br /&gt;@end&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;■TextureCallback.m&lt;br /&gt;&lt;pre name="code" class="c"&gt;&lt;br /&gt;#import "TextureCallback.h"&lt;br /&gt;&lt;br /&gt;@implementation TextureCallback&lt;br /&gt;&lt;br /&gt;+ (id)callbackWithBlock:(textureCallbackBlock_t)block&lt;br /&gt;{&lt;br /&gt;    return [[[self alloc] initWithBlock:block] autorelease];&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;- (id)initWithBlock:(textureCallbackBlock_t)block&lt;br /&gt;{&lt;br /&gt;    if ((self=[super init])) {&lt;br /&gt;&lt;br /&gt;        /*&lt;br /&gt;         * 「5-2-4 Block_copy」(188ページ)&lt;br /&gt;         * 渡されたBlockをretainするためにObjective-Cのcopyを使用。&lt;br /&gt;         */&lt;br /&gt;        block_ = [block copy];&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    return self;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;- (void)dealloc&lt;br /&gt;{&lt;br /&gt;&lt;br /&gt;    /*&lt;br /&gt;     * 「5-2-4 Block_copy」(188ページ)&lt;br /&gt;     * retainしたBlockをreleaseするためにObjective-Cのreleaseを使用。&lt;br /&gt;     */&lt;br /&gt;    [block_ release];&lt;br /&gt;    [super dealloc];&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;- (void)callback:(CCTexture2D *)texture&lt;br /&gt;{&lt;br /&gt;    /*&lt;br /&gt;     * 「5-2-2 値としてのBlock」(184ページ)&lt;br /&gt;     * cocos2dのイメージ非同期読み込み終了時Blockを実行。&lt;br /&gt;     */&lt;br /&gt;    block_(texture);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;@end&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;て感じで。使うときは&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c"&gt;&lt;br /&gt;#import "TextureCallback.h"&lt;br /&gt;&lt;br /&gt;    /*&lt;br /&gt;     * 非同期イメージ読み込み終了時に&lt;br /&gt;     * 実行されるBlockを指定。&lt;br /&gt;     */&lt;br /&gt;    TextureCallback *textureCallback =&lt;br /&gt;        [TextureCallback callbackWithBlock:&lt;br /&gt;            ^(CCTexture2D *texture) {&lt;br /&gt;&lt;br /&gt;        [self addTexture:texture index:index];&lt;br /&gt;&lt;br /&gt;    }];&lt;br /&gt;&lt;br /&gt;    /*&lt;br /&gt;     * cocos2dの非同期イメージ読み込み&lt;br /&gt;     * (要メインスレッド(Main Queue))&lt;br /&gt;     */&lt;br /&gt;    [[CCTextureCache sharedTextureCache]&lt;br /&gt;        addImageAsync:path target:textureCallback&lt;br /&gt;            selector:@selector(callback:)];&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;さらに、&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c"&gt;&lt;br /&gt;+ (id)addImageAsyncWithBlock:(NSString *)path block:(textureCallbackBlock_t)block&lt;br /&gt;{&lt;br /&gt;    id textureCallback = [[[self alloc] initWithBlock:block] autorelease];&lt;br /&gt;&lt;br /&gt;    [[CCTextureCache sharedTextureCache]&lt;br /&gt;        addImageAsync:path target:textureCallback&lt;br /&gt;            selector:@selector(callback:)];&lt;br /&gt;&lt;br /&gt; return textureCallback;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;こんな感じのクラスメソッドにすれば、&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c"&gt;&lt;br /&gt;#import "TextureCallback.h"&lt;br /&gt;&lt;br /&gt;    /*&lt;br /&gt;     * 非同期イメージ読み込み終了時に&lt;br /&gt;     * 実行されるBlockを指定。&lt;br /&gt;     */&lt;br /&gt;    [TextureCallback addImageAsyncWithBlock:path block:^(CCTexture2D *texture) {&lt;br /&gt;&lt;br /&gt;        [self addTexture:texture index:index];&lt;br /&gt;&lt;br /&gt;    }];&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;あらすっきり。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CCTextureCacheは渡ってきたtextureCallbackをコールバック終了までretainするので、コールバック終了までちゃんと生存。textureCallbackで持つことになるblockもtextureCallback生存中はretain(copy)されるので、メモリ管理も簡単、安心。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;iOS 4プログラミングブックのサンプルコードは、&lt;a href="http://www.impressjapan.jp/books/2976"&gt;http://www.impressjapan.jp/books/2976&lt;/a&gt;のダウンロードよりどうぞー&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_top&amp;bc1=FFFFFF&amp;IS2=1&amp;npa=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=amazonasso0d9-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4844329766" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4351470296676116845?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4351470296676116845/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4351470296676116845' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4351470296676116845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4351470296676116845'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/02/ios-4-5-6.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その6'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-8740489119949774180</id><published>2011-02-02T11:19:00.004+09:00</published><updated>2011-03-30T15:58:49.623+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20110202</title><content type='html'>MacVim-KaoriYa 20110202版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20110202.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20110202.dmg&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-8740489119949774180?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/8740489119949774180/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=8740489119949774180' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8740489119949774180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8740489119949774180'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/02/macvim-kaoriya-20110202.html' title='MacVim-KaoriYa 20110202'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2700441203864880415</id><published>2011-01-31T14:26:00.009+09:00</published><updated>2011-03-25T21:42:01.464+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 まとめ</title><content type='html'>&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;div style="border:0px solid;margin:0px;padding:6px 0px;width:320px;text-align:center;float:left"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;&lt;img src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432976.jpg%3f_ex%3d300x300&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8443%2f84432976.jpg%3f_ex%3d80x80" alt="iOS4プログラミングブック" border="0" style="margin:0px;padding:0px"&gt;&lt;/a&gt;&lt;p style="font-size:12px;line-height:1.4em;text-align:center;margin:0px;padding:2px 6px"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;iOS4プログラミングブック&lt;/a&gt;&lt;br&gt;&lt;/p&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;2011年1月27日発売の『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。このうち&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dd&gt;■第5章 マルチスレッド - Blocks、Grand Central Dispatch の詳解。57ページ。&lt;br /&gt;&lt;dd&gt;■第10章 ユニバーサル対応 - ユニバーサルアプリケーションについて。15ページ。&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;を書かせていただきました。&lt;br /&gt;&lt;br /&gt;この「第5章 マルチスレッド」にて、ちょっとAdvanced過ぎるかも、と思った内容を補遺として連載しています。&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;「&lt;b&gt;__block修飾子&lt;/b&gt;」について&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-1.html"&gt;『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その1&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-2.html"&gt;『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その2&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-3.html"&gt;『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その3&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-4.html"&gt;『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その4&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-5.html"&gt;『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その5&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;「&lt;b&gt;サンプルコード&lt;/b&gt;」について&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://blogger.splhack.org/2011/02/ios-4-5-6.html"&gt;『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その6&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;「&lt;b&gt;Blocks&lt;/b&gt;」について&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://blogger.splhack.org/2011/03/ios-4-5-7.html"&gt;『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その7&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;&lt;b&gt;本の間違いについて&lt;/b&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://blogger.splhack.org/2011/03/ios-4-5-8.html"&gt;『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その8&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_top&amp;bc1=FFFFFF&amp;IS2=1&amp;npa=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=amazonasso0d9-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4844329766" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2700441203864880415?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2700441203864880415/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2700441203864880415' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2700441203864880415'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2700441203864880415'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/ios-4-5.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 まとめ'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2263871956035310547</id><published>2011-01-31T14:22:00.006+09:00</published><updated>2011-02-03T10:24:36.468+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その5</title><content type='html'>そろそろ皆様のお手元にもあるのではないかと思ったりしております。『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。&lt;br /&gt;&lt;br /&gt;「&lt;b&gt;__block変数の書き換えは、スレッドセーフではない&lt;/b&gt;」&lt;br /&gt;&lt;br /&gt;さて、マルチスレッド下で安全に__block変数を書き換える方法とは。&lt;br /&gt;&lt;br /&gt;そもそもマルチスレッドにするためにGCDのGlobal Queueを使ってるわけですから、やはりここはDispatch Semaphoreを使っておきましょう。詳しくは&lt;a href="http://a.r10.to/hB0tqf"&gt;ワシの226ページ&lt;/a&gt;に書いてあーる。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;#import &amp;lt;dispatch/dispatch.h&amp;gt;&lt;br /&gt;#import &amp;lt;stdio.h&amp;gt;&lt;br /&gt;&lt;br /&gt;int main()&lt;br /&gt;{&lt;br /&gt;    __block int total = 0;&lt;br /&gt;&lt;br /&gt;    dispatch_semaphore_t sema = dispatch_semaphore_create(1);&lt;br /&gt;    dispatch_queue_t queue =&lt;br /&gt;        dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);&lt;br /&gt;    dispatch_apply(10000, queue, ^(size_t index) {&lt;br /&gt;&lt;br /&gt;        dispatch_semaphore_wait(sema, DISPATCH_TIME_FOREVER);&lt;br /&gt;&lt;br /&gt;        ++total;&lt;br /&gt;&lt;br /&gt;        dispatch_semaphore_signal(sema);&lt;br /&gt;&lt;br /&gt;    });&lt;br /&gt;    dispatch_release(sema);&lt;br /&gt;&lt;br /&gt;    printf("total=%d\n", total);&lt;br /&gt;&lt;br /&gt;    return 0;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;ふつうにセマフォです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;あと、今回の場合、Atomic operationsが使えます。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://developer.apple.com/library/ios/documentation/System/Conceptual/ManPages_iPhoneOS/man3/atomic.3.html"&gt;http://developer.apple.com/library/ios/documentation/System/Conceptual/ManPages_iPhoneOS/man3/atomic.3.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;#import &amp;lt;libkern/OSAtomic.h&amp;gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;    dispatch_apply(10000, queue, ^(size_t index) {&lt;br /&gt;&lt;br /&gt;        OSAtomicIncrement32(&amp;total);&lt;br /&gt;&lt;br /&gt;    });&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Barrierあり/なしの使い分けは、&lt;a href="http://stackoverflow.com/questions/2436513/macosx-osatomic-vs-osatomicbarrier"&gt;http://stackoverflow.com/questions/2436513/macosx-osatomic-vs-osatomicbarrier&lt;/a&gt;にありました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;もしくはGCC組み込みAtomic関数(&lt;a href="http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Atomic-Builtins.html"&gt;http://gcc.gnu.org/onlinedocs/gcc-4.1.2/gcc/Atomic-Builtins.html&lt;/a&gt;)を使うのも手です。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;    dispatch_apply(10000, queue, ^(size_t index) {&lt;br /&gt;&lt;br /&gt;        __sync_fetch_and_add(&amp;total, 1);&lt;br /&gt;&lt;br /&gt;    });&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;clangでも使えます。Mac OS X、iOS以外の環境でも使える点がメリットでしょうか。また上記のとおり、OSAtomicに対して若干汎用的すぎるところがデメリットと言えるかと(++がないとか)。移植性を取るかどうか、てことですね。GCC拡張使って移植性どうこう言うのもあれだとは思いますが。&lt;br /&gt;&lt;br /&gt;てことで、__block修飾子に関しては、以上で終りです。補遺はまだ続くかもしれません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2263871956035310547?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2263871956035310547/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2263871956035310547' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2263871956035310547'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2263871956035310547'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/ios-4-5-5.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その5'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6695509735219027124</id><published>2011-01-28T09:36:00.005+09:00</published><updated>2011-02-03T10:24:58.463+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その4</title><content type='html'>そろそろ皆様のお手元にもあるのではないかと思ったりする『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。&lt;br /&gt;&lt;br /&gt;「しかし、第5章『マルチスレッド』の補遺の割に、ちっともマルチスレッドじゃない」&lt;br /&gt;&lt;br /&gt;とお嘆きの読者様。朗報です。やっとマルチスレッドの話です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;font color=red&gt;&lt;b&gt;__block変数への書き込みってスレッドセーフ??&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;GCDのdispatch_applyで、Global QueueにBlock突っ込むと、それはもう簡単に複数スレッドから同時に__block変数を書き換えることができます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;... あ、もしかして、GCDことGrand Central Dispatch、よくご存知でなかったりしますでしょうか? そういう話でしたら、それはもう詳しく説明している本がありますので、この場を借りてご紹介できればな、と思います。&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;&lt;br /&gt;『&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f"&gt;iOS 4プログラミングブック&lt;/a&gt;』&lt;br /&gt;&lt;dd&gt;■5-3 Grand Central Dispatchの概要&lt;br /&gt;&lt;dd&gt;■5-4 Grand Central Dispatchの解説&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;はい、宣伝させていただいてありがとうございます。dispatch_applyでガンガン__blockを書き換えるソースを書いてみます。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;#import &amp;lt;dispatch/dispatch.h&amp;gt;&lt;br /&gt;#import &amp;lt;stdio.h&amp;gt;&lt;br /&gt;&lt;br /&gt;int main()&lt;br /&gt;{&lt;br /&gt;    __block int total = 0;&lt;br /&gt;&lt;br /&gt;    dispatch_queue_t queue =&lt;br /&gt;    dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0);&lt;br /&gt;    dispatch_apply(10000, queue, ^(size_t index) {&lt;br /&gt;&lt;br /&gt;        ++total;&lt;br /&gt;&lt;br /&gt;    });&lt;br /&gt;&lt;br /&gt;    printf("total=%d\n", total);&lt;br /&gt;&lt;br /&gt;    return 0;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;実行すれば&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;total=10000&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;と出るはずです。実行してみましょう!&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;total=6749&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;あれ。あ、ちなみにCore 2 DuoなMacBook Proで実行してますよ。もう一度。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;total=10000&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;期待通り。念のためもう一回。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;total=8664&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;うーん。ということで、すでにお気づきのことと思いますが、&lt;br /&gt;&lt;br /&gt;&lt;font color=red&gt;&lt;b&gt;__block変数はスレッドセーフではありません&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-1.html"&gt;その1&lt;/a&gt;から読んでくださっている読者の方には当然の結果かとおもいます。clang -rewrite-objcで見たとおり、&lt;code&gt;++(total.__forwarding-&gt;total);&lt;/code&gt;になってるだけですから、スレッドセーフなわけがないのです。&lt;br /&gt;&lt;br /&gt;マルチスレッド下で、__block変数を安全に更新する方法とははたして!? つづきます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6695509735219027124?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6695509735219027124/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6695509735219027124' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6695509735219027124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6695509735219027124'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/ios-4-5-4.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その4'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1504946368096956011</id><published>2011-01-27T10:43:00.003+09:00</published><updated>2011-02-03T10:25:36.217+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その3</title><content type='html'>いよいよ本日、2011年1月27日発売!の『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-1.html"&gt;その1&lt;/a&gt;、&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-2.html"&gt;その2&lt;/a&gt;と「__block修飾子」について深追いしてきましたが、まだ潜ってみます。ぶくぶくぶく。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;潜る前に、まずは地図を見ておきましょう。&lt;br /&gt;&lt;br /&gt;179ページにあるとおり、Blocksのことが知りたかったらLLVMのドキュメントを参照します。&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;■&lt;a href="http://clang.llvm.org/docs/BlockLanguageSpec.txt"&gt;http://clang.llvm.org/docs/BlockLanguageSpec.txt&lt;/a&gt;&lt;br /&gt;&lt;dt&gt;■&lt;a href="http://clang.llvm.org/docs/Block-ABI-Apple.txt"&gt;http://clang.llvm.org/docs/Block-ABI-Apple.txt&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;... しかしまぁ、言うは易く行うは難し。英語読むくらいならソースコード読むほうが楽ですね。地図なしで。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;てことで、ソースを読んでみます。ぶくぶくぶく。&lt;br /&gt;&lt;br /&gt;Block_copyとかBlock_releaseとかは、C言語のランタイムライブラリの一部としてLLVMのソースツリーに入ってます。&lt;br /&gt;&lt;br /&gt;&lt;a href="https://llvm.org/svn/llvm-project/compiler-rt/trunk/BlocksRuntime/Block_private.h"&gt;https://llvm.org/svn/llvm-project/compiler-rt/trunk/BlocksRuntime/Block_private.h&lt;/a&gt;&lt;br /&gt;&lt;a href="https://llvm.org/svn/llvm-project/compiler-rt/trunk/BlocksRuntime/runtime.c"&gt;https://llvm.org/svn/llvm-project/compiler-rt/trunk/BlocksRuntime/runtime.c&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;このへん。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-2.html"&gt;その2&lt;/a&gt;で出てきた&lt;code&gt;flags: 0x1000002&lt;/code&gt;のbit定義がありますね。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;enum {&lt;br /&gt;    BLOCK_REFCOUNT_MASK =     (0xffff),&lt;br /&gt;    BLOCK_NEEDS_FREE =        (1 &amp;lt;&amp;lt; 24),&lt;br /&gt;    BLOCK_HAS_COPY_DISPOSE =  (1 &amp;lt;&amp;lt; 25),&lt;br /&gt;    BLOCK_HAS_CTOR =          (1 &amp;lt;&amp;lt; 26), /* Helpers have C++ code. */&lt;br /&gt;    BLOCK_IS_GC =             (1 &amp;lt;&amp;lt; 27),&lt;br /&gt;    BLOCK_IS_GLOBAL =         (1 &amp;lt;&amp;lt; 28),&lt;br /&gt;    BLOCK_HAS_DESCRIPTOR =    (1 &amp;lt;&amp;lt; 29)&lt;br /&gt;};&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;BLOCK_REFCOUNT_MASK = 0xffff... 65536回Block_copyするとやばそうですね!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;それはさておきBlock_copyすると、__block変数は_Block_byref_assign_copy()でcopyされます。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;/*&lt;br /&gt; * Runtime entry points for maintaining the sharing knowledge of byref data blocks.&lt;br /&gt; *&lt;br /&gt; * A closure has been copied and its fixup routine is asking us to fix up the reference to the shared byref data&lt;br /&gt; * Closures that aren't copied must still work, so everyone always accesses variables after dereferencing the forwarding ptr.&lt;br /&gt; * We ask if the byref pointer that we know about has already been copied to the heap, and if so, increment it.&lt;br /&gt; * Otherwise we need to copy it and update the stack forwarding pointer&lt;br /&gt; * XXX We need to account for weak/nonretained read-write barriers.&lt;br /&gt; */&lt;br /&gt;&lt;br /&gt;static void _Block_byref_assign_copy(void *dest, const void *arg, const int flags) {&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;forwarding&lt;/code&gt;ポインタに代入しているところを見ると&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;    copy-&amp;gt;forwarding = copy; // patch heap copy to point to itself (skip write-barrier)&lt;br /&gt;    src-&amp;gt;forwarding = copy;  // patch stack to point to heap copy&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;heap上構造体のforwardingも、stack上構造体のforwardingも、heap上の構造体を示すように書き換えられてます。安心して__block変数を操作できますね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-2.html"&gt;その2&lt;/a&gt;で使った秘密の_Block_byref_dump()もありますよ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ちなみに、Mac OS X 10.5/iOS 3.1.3以前でもBlocksを使えるようにする&lt;a href="http://code.google.com/p/plblocks/"&gt;plblocks&lt;/a&gt;てのがあります。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/plblocks/source/browse/Runtime/trunk/Source/Runtime/Block.m"&gt;http://code.google.com/p/plblocks/source/browse/Runtime/trunk/Source/Runtime/Block.m&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;たとえばiOS SDK 4.2に入っているtoolchain(gcc, llvm-gcc, clang)は、Block構文をコンパイルすることが可能です。ということで実は、Deployment Targetを3.1.3にしても(Deployment Targetについては、&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f"&gt;iOS 4プログラミングブック 第10章ユニバーサル対応&lt;/a&gt;で詳しく説明してますよ!)、stack上でだけならBlocksを使うことができます。ただしBlocks用ランタイムがないため、Block_copy/Block_releaseなどはできません。そこで、plblocks runtimeのヘッダをインクルードして、plblocks runtimeのソースとともにコンパイルすると、plblocksのBlock_copy/Block_release実装を使えるようになるわけです。&lt;br /&gt;&lt;br /&gt;ついでにlibdispatchを使えば、iOS3.1.3とかでもGrand Central Dispatchまで使えるわけですが、それはまた別の講釈で...&lt;br /&gt;&lt;br /&gt;__block修飾子については語りつくした感がありますが、まだつづくよ&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1504946368096956011?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1504946368096956011/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1504946368096956011' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1504946368096956011'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1504946368096956011'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/ios-4-5-3.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その3'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-8008569420047630454</id><published>2011-01-26T13:12:00.006+09:00</published><updated>2011-02-03T10:26:28.340+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その2</title><content type='html'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その2 &lt;br /&gt;&lt;br /&gt;2011年1月27日発売でも、すでに書店に並びつつある『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。&lt;br /&gt;&lt;br /&gt;今回も引き続き第5章マルチスレッドの補遺として、「__block修飾子」を深追いしてみます。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2011/01/ios-4-5-1.html"&gt;その1&lt;/a&gt;で書いたとおり、__block変数の実態は「total.__forwarding-&gt;total」て感じです。Block生成直後はstackに居るので、この&lt;code&gt;__forwarding&lt;/code&gt;ポインタは自分が含まれる構造体を示し、Block_copyでstackからheapに移動されると(189ページ参照)、&lt;code&gt;__forwarding&lt;/code&gt;ポインタが移動後のアドレスを示すわけですね。「total.__forwarding-&gt;total」は、stackにあるか、heapにあるか、気にせずにアクセスできるわけです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;確かめてみましょう!&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;#import &amp;lt;Foundation/Foundation.h&amp;gt;&lt;br /&gt;#import &amp;lt;stdio.h&amp;gt;&lt;br /&gt;&lt;br /&gt;extern const char *_Block_byref_dump(void *);&lt;br /&gt;&lt;br /&gt;void dump(int line, int *p)&lt;br /&gt;{&lt;br /&gt;    p -= 4;&lt;br /&gt;    printf("\ndump line:%d\n", line);&lt;br /&gt;    puts(_Block_byref_dump(p));&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;int *test()&lt;br /&gt;{&lt;br /&gt;    __block int total = 11;&lt;br /&gt;&lt;br /&gt;    dump(__LINE__, &amp;total);&lt;br /&gt;&lt;br /&gt;    void (^block_on_stack)() = ^{&lt;br /&gt;&lt;br /&gt;        ++total;&lt;br /&gt;&lt;br /&gt;        dump(__LINE__, &amp;total);&lt;br /&gt;    };&lt;br /&gt;&lt;br /&gt;    block_on_stack();&lt;br /&gt;&lt;br /&gt;    printf("\n___ Block_copy ___\n");&lt;br /&gt;    void (^block_on_heap)() = Block_copy(block_on_stack);&lt;br /&gt;&lt;br /&gt;    dump(__LINE__, &amp;total);&lt;br /&gt;&lt;br /&gt;    block_on_stack();&lt;br /&gt;&lt;br /&gt;    block_on_heap();&lt;br /&gt;&lt;br /&gt;    printf("\n___ Block_release ___\n");&lt;br /&gt;    Block_release(block_on_heap);&lt;br /&gt;&lt;br /&gt;    dump(__LINE__, &amp;total);&lt;br /&gt;&lt;br /&gt;    block_on_stack();&lt;br /&gt;&lt;br /&gt;    return &amp;total;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;int main()&lt;br /&gt;{&lt;br /&gt;    dump(__LINE__, test());&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;__block変数をダンプするための秘密の関数 _Block_byref_dump を使って、それぞれの状況で__block変数の状態を表示してみます。このソースコードに埋めてみましょう。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;int *test()&lt;br /&gt;{&lt;br /&gt;    __block int total = 11;&lt;br /&gt;&lt;br /&gt;    dump(__LINE__, &amp;total);&lt;br /&gt;    &lt;b&gt;&lt;br /&gt;        dump line:17&lt;br /&gt;        byref data block 0xbffffa70 contents:&lt;br /&gt;          forwarding: 0xbffffa70    &lt;font color=red&gt;← stackに生成されてる&lt;/font&gt;&lt;br /&gt;          flags: 0x0&lt;br /&gt;          size: 20&lt;br /&gt;    &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;    void (^block_on_stack)() = ^{&lt;br /&gt;&lt;br /&gt;        ++total;&lt;br /&gt;&lt;br /&gt;        dump(__LINE__, &amp;total);&lt;br /&gt;    };&lt;br /&gt;&lt;br /&gt;    block_on_stack();&lt;br /&gt;    &lt;b&gt;&lt;br /&gt;        dump line:23&lt;br /&gt;        byref data block 0xbffffa70 contents:&lt;br /&gt;          forwarding: 0xbffffa70  &lt;font color=red&gt;← stack上のBlockからstack上の__block変数を使用&lt;/font&gt;&lt;br /&gt;          flags: 0x0&lt;br /&gt;          size: 20&lt;br /&gt;    &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;    printf("\n___ Block_copy ___\n");&lt;br /&gt;    void (^block_on_heap)() = Block_copy(block_on_stack);&lt;br /&gt;&lt;br /&gt;    dump(__LINE__, &amp;total);&lt;br /&gt;    &lt;b&gt;&lt;br /&gt;        dump line:31&lt;br /&gt;        byref data block 0x100150 contents:&lt;br /&gt;          forwarding: 0x100150    &lt;font color=red&gt;← heapにコピーされた!&lt;/font&gt;&lt;br /&gt;          flags: 0x1000002        &lt;font color=red&gt;← 要Block_releaseフラグと、参照カウンタ(2)&lt;/font&gt;&lt;br /&gt;          size: 20&lt;br /&gt;    &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;    block_on_stack();&lt;br /&gt;    &lt;b&gt;&lt;br /&gt;        dump line:23&lt;br /&gt;        byref data block 0x100150 contents:&lt;br /&gt;          forwarding: 0x100150    &lt;font color=red&gt;← stack上のBlockからheap上の__block変数を参照している&lt;/font&gt;&lt;br /&gt;          flags: 0x1000002&lt;br /&gt;          size: 20&lt;br /&gt;    &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;    block_on_heap();&lt;br /&gt;    &lt;b&gt;&lt;br /&gt;        dump line:23&lt;br /&gt;        byref data block 0x100150 contents:&lt;br /&gt;          forwarding: 0x100150    &lt;font color=red&gt;← heap上のBlockからheap上の__block変数を使用している&lt;/font&gt;&lt;br /&gt;          flags: 0x1000002&lt;br /&gt;          size: 20&lt;br /&gt;    &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    printf("\n___ Block_release ___\n");&lt;br /&gt;    Block_release(block_on_heap);&lt;br /&gt;&lt;br /&gt;    dump(__LINE__, &amp;total);&lt;br /&gt;    &lt;b&gt;&lt;br /&gt;        dump line:40&lt;br /&gt;        byref data block 0x100150 contents:&lt;br /&gt;          forwarding: 0x100150&lt;br /&gt;          flags: 0x1000001    &lt;font color=red&gt;← Block_releaseしたので参照カウンタが減少(2→1)&lt;/font&gt;&lt;br /&gt;          size: 20&lt;br /&gt;    &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;    block_on_stack();&lt;br /&gt;    &lt;b&gt;&lt;br /&gt;        dump line:23&lt;br /&gt;        byref data block 0x100150 contents:&lt;br /&gt;          forwarding: 0x100150    &lt;font color=red&gt;← stack上のBlockからheap上の__block変数を使用。まだ参照カウンタが1なのでheap上に残存&lt;/font&gt;&lt;br /&gt;          flags: 0x1000001&lt;br /&gt;          size: 20&lt;br /&gt;    &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;    return &amp;total;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;int main()&lt;br /&gt;{&lt;br /&gt;    dump(__LINE__, test());&lt;br /&gt;    &lt;b&gt;&lt;br /&gt;        dump line:49&lt;br /&gt;        byref data block 0x100150 contents:&lt;br /&gt;          forwarding: 0x100150&lt;br /&gt;          flags: 0x1000000    &lt;font color=red&gt;← 参照カウンタが0なのでheap上に残ってないはず!&lt;/font&gt;&lt;br /&gt;          size: 20&lt;br /&gt;    &lt;/b&gt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;(Mac OS X 10.6、clang -m32で確認)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;てことで、Block_copy使うと、本当にstackからheapに移動してることがわかりました。&lt;br /&gt;&lt;br /&gt;ついでに、Block_releaseしても、heapからstackに戻すわけじゃなさそうなこともわかりました。&lt;br /&gt;&lt;br /&gt;あ、dump関数が、「total.__forwarding-&gt;total」からのアクセスなので、Block_copy以降全部heapに存在しているように見えますが、stack上のtotal.__forwardingがちゃんとheap上のものをさしているので、stack上のtotal構造体を触っても平気です。&lt;br /&gt;&lt;br /&gt;もはや誰得の情報なのか混迷を極めて来ましたが、つづきます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-8008569420047630454?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/8008569420047630454/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=8008569420047630454' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8008569420047630454'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8008569420047630454'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/ios-4-5-2.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その2'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-8750008353016433256</id><published>2011-01-25T11:33:00.004+09:00</published><updated>2011-02-03T10:27:24.695+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その1</title><content type='html'>そろそろ書店に並びつつある、かもしれない、『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』。&lt;br /&gt;&lt;br /&gt;「第5章 マルチスレッド」にて、ちょっとAdvanced過ぎるかも、と思った内容を補遺として連載してっちゃいますよ。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RGGAxF8f5a8/TT42nfPec9I/AAAAAAAABDw/Dnq_RJ2IUFI/s1600/20110114tw.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 231px;" src="http://4.bp.blogspot.com/_RGGAxF8f5a8/TT42nfPec9I/AAAAAAAABDw/Dnq_RJ2IUFI/s400/20110114tw.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5565946241505719250" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;というわけで今回は、本当に187ページで説明している「__block修飾子」について、もうちょっと掘り下げてみます。&lt;br /&gt;&lt;br /&gt;たとえば、「__block修飾子」を付けたint型のauto変数を用意してみましょう。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;int main()&lt;br /&gt;{&lt;br /&gt;    __block int total = 11;&lt;br /&gt;&lt;br /&gt;    ++total;&lt;br /&gt;&lt;br /&gt;    return total;&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;「__block」付いてる以外は、ごく普通のコードです。&lt;br /&gt;&lt;br /&gt;しかし、コレ実際何がどうなるんでしょうか。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;実は、clangを使うと一瞬でわかります。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$ clang -rewrite-objc test.m&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;これでObjective-Cのソースコードを、おなじみのC++のソースコードに変換することが可能なのです。&lt;br /&gt;&lt;br /&gt;あ、C++になじみがない方もご安心を。--rewrite-objcで生成されるC++ソースコードは、ほぼC言語です(ほぼC言語なのにC++として生成されるのか、それは謎です)。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;生成されたC++ソースコードを見てみると。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;(抜粋)&lt;br /&gt;#define __block&lt;br /&gt;&lt;br /&gt;struct __Block_byref_total_0 {&lt;br /&gt;    void *__isa;&lt;br /&gt;    __Block_byref_total_0 *__forwarding;&lt;br /&gt;    int __flags;&lt;br /&gt;    int __size;&lt;br /&gt;    int total;&lt;br /&gt;};&lt;br /&gt;&lt;br /&gt;int main()&lt;br /&gt;{&lt;br /&gt;    __block struct __Block_byref_total_0 total = {&lt;br /&gt;        (void*)0,&lt;br /&gt;        (struct __Block_byref_total_0 *)&amp;total,&lt;br /&gt;        0,&lt;br /&gt;        sizeof(struct __Block_byref_total_0),&lt;br /&gt;        11&lt;br /&gt;    };&lt;br /&gt;&lt;br /&gt;    ++(total.__forwarding-&gt;total);&lt;br /&gt;&lt;br /&gt;    return (total.__forwarding-&gt;total);&lt;br /&gt;}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;int型だったtotalが、なにやら複雑な構造体になっていることがわかります。そして元々のint totalは、構造体のメンバーとして収納されています。&lt;br /&gt;&lt;br /&gt;なぜこのような構造体が必要なのか。それは&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f"&gt;iOS 4プログラミングブック&lt;/a&gt; 189ページで説明しているように、Block_copyによって__block変数がstackからheapに移動されてもへいちゃら! と言えるようになっているわけです。&lt;br /&gt;&lt;br /&gt;以上、何気なく付けた__block修飾子が実はこんな構造体になってました、というお話でした。&lt;br /&gt;&lt;br /&gt;その2に続きます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-8750008353016433256?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/8750008353016433256/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=8750008353016433256' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8750008353016433256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8750008353016433256'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/ios-4-5-1.html' title='『iOS 4プログラミングブック』 第5章マルチスレッド 補遺 その1'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_RGGAxF8f5a8/TT42nfPec9I/AAAAAAAABDw/Dnq_RJ2IUFI/s72-c/20110114tw.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4398643518542714861</id><published>2011-01-24T06:48:00.007+09:00</published><updated>2011-02-03T10:27:52.018+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>iOS 4プログラミングブック サンプルコード</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://amzn.to/gyDsy7"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 320px;" src="http://3.bp.blogspot.com/_RGGAxF8f5a8/TTy_uRdzHrI/AAAAAAAABDo/gkFkBWTwDTA/s320/187d01b8f0f64afa9b3d3af68a723ebd_7.jpeg" border="0" alt=""id="BLOGGER_PHOTO_ID_5565534041206365874" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;今週には本屋に並ぶ『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』ですが、本の内容をよりよく理解できるように、サンプルコードも準備させていただいています。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.impressjapan.jp/books/2976"&gt;http://www.impressjapan.jp/books/2976&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;発売日の2011年1月27日には、上記URLよりサンプルコードにアクセスできると思います。&lt;br /&gt;(2011/1/24追記: すでにサンプルコードにアクセスできます!)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;私が担当した2つの章&lt;br /&gt;&lt;br /&gt;■第5章 マルチスレッド&lt;br /&gt;■第10章 ユニバーサル対応&lt;br /&gt;&lt;br /&gt;でも、それぞれ1つづつサンプルコードを用意してます。&lt;br /&gt;&lt;br /&gt;第5章 マルチスレッド用のサンプルコードでは、Blocks、Grand Central Dispatchをそりゃもうふんだんに使用しました。まさに実戦サンプルアプリケーションではないかと思います。しかも趣味丸出しの、まさかのcocos2d使用!です。&lt;br /&gt;&lt;br /&gt;ソースコードは、こんな感じです。&lt;br /&gt;&lt;br /&gt;&lt;pre name="code" class="c" &gt;&lt;br /&gt;/*&lt;br /&gt; * 「5-4-2 Dispatch Queue」(213ページ)&lt;br /&gt; * 各記事のフォトイメージを取得するための非同期HTTP通信は、&lt;br /&gt; * メインスレッド(Main Queue)で実行される必要がある。&lt;br /&gt; */&lt;br /&gt;dispatch_async(mainQueue, ^{&lt;br /&gt;&lt;br /&gt;    /*&lt;br /&gt;     * 非同期HTTP通信(要メインスレッド(Main Queue))&lt;br /&gt;     */&lt;br /&gt;    [AsyncURLConnection request:imgUrl&lt;br /&gt;            completeBlock:^(NSData *data) {&lt;br /&gt;&lt;br /&gt;        /*&lt;br /&gt;         * 「5-4-2 Dispatch Queue」(213ページ)&lt;br /&gt;         * 各フォトイメージに対する処理は&lt;br /&gt;         * メインスレッド(Main Queue)で実行される必要はないので&lt;br /&gt;         * Global Queueで実行。&lt;br /&gt;         */&lt;br /&gt;        dispatch_async(globalQueue, ^{&lt;br /&gt;&lt;br /&gt;            /*&lt;br /&gt;             * ファイル書き出しを、メインスレッドで行うと&lt;br /&gt;             * UI更新やイベント処理が遅延するため、&lt;br /&gt;             * メインスレッド以外で実行させる必要がある。&lt;br /&gt;             */&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;『&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f"&gt;iOS 4プログラミングブック&lt;/a&gt;』は、今週、2011年1月27日発売です。是非お手にとってみてくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4398643518542714861?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4398643518542714861/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4398643518542714861' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4398643518542714861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4398643518542714861'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/ios-4.html' title='iOS 4プログラミングブック サンプルコード'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_RGGAxF8f5a8/TTy_uRdzHrI/AAAAAAAABDo/gkFkBWTwDTA/s72-c/187d01b8f0f64afa9b3d3af68a723ebd_7.jpeg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1430404935330535846</id><published>2011-01-14T06:31:00.007+09:00</published><updated>2011-01-14T08:38:18.927+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Objective-Cのautorelease</title><content type='html'>Objective-Cのautoreleaseで、実際に何が起こるのか。オープンソースのCocoa実装&lt;a href="http://www.gnustep.org/"&gt;GNUstep&lt;/a&gt;のソースコードで追いかけてみました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://togetter.com/li/88945"&gt;http://togetter.com/li/88945 「autoreleaseのひみつ」&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Cocoa全クラスの親クラス NSObjectにautoreleaseメソッドがあり、このautoreleaseメソッドは、NSAutoreleasePoolクラスのクラスメソッドaddObject:メソッドを呼ぶだけです。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;[hoge autorelease];&lt;br /&gt;    /* [NSAutoreleasePool addObject:hoge]; と同じ */&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;NSAutoreleasePool addObject:は、そのスレッドのカレントプールにオブジェクトを追加します。メインスレッドの場合、通常NSRunLoopのループ先頭で確保されたプールになります。&lt;br /&gt;&lt;br /&gt;NSRunLoopのループ終わりで、確保されていたプールが解放され、そのプールに入っているオブジェクト全てにreleaseが送られます。&lt;br /&gt;&lt;br /&gt;図解すると次の通り。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RGGAxF8f5a8/TS9wRsE-wFI/AAAAAAAABDI/TD_EeMBsX4c/s1600/autorelease0.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 214px;" src="http://2.bp.blogspot.com/_RGGAxF8f5a8/TS9wRsE-wFI/AAAAAAAABDI/TD_EeMBsX4c/s400/autorelease0.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5561787514017988690" /&gt;&lt;/a&gt;&lt;br /&gt;(※ pool = [[NSAutoreleasePool alloc] init]; ですね)&lt;br /&gt;&lt;br /&gt;NSAutoreleasePoolをalloc,initすると、そのプールがカレントプールになります。以下のようなスタックになってます。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RGGAxF8f5a8/TS9wSOu_Y_I/AAAAAAAABDQ/LLlCthxUWbM/s1600/autorelease1.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 235px;" src="http://1.bp.blogspot.com/_RGGAxF8f5a8/TS9wSOu_Y_I/AAAAAAAABDQ/LLlCthxUWbM/s400/autorelease1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5561787523320996850" /&gt;&lt;/a&gt;&lt;br /&gt;(※ こちらもpool* = [[NSAutoreleasePool alloc] init]; ですね)&lt;br /&gt;&lt;br /&gt;クラスメソッドを呼びまくったり([NSString stringほげ]とか)、autoreleaseを呼びまくるようなシチュエーション、たとえば、たくさん画像を読み込む場合。ファイルを読み込んだNSDataオブジェクト。それから作ったUIImageオブジェクト。サイズを変更したりしてまたUIImageオブジェクト。なんて時にautoreleaseしただけでreleaseされてないオブジェクトが大量に残ったりします。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;    for() {&lt;br /&gt;        NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];&lt;br /&gt;&lt;br /&gt;        /* 画像読み込み処理 */;&lt;br /&gt;&lt;br /&gt;        [pool drain];&lt;br /&gt;    }&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;とすれば、こまめにreleaseすることができます。Mac OS Xでガベージコレクションいかしたプログラミングする時に役立つように、drainを使っておきましょう。GCされます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;メモリ管理全般の話は、&lt;a href="http://ideveloper.tv/freevideo/details?index=17012088"&gt;Memory Management in Objective-C&lt;/a&gt;がわかりやすいかと思います。iDeveloper TVのフリーセッションビデオです。Objective-Cのallocの前に、そもそもC言語のmallocで何が起きるのか、から入っています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;あ、そういえば、&lt;a href="http://blogger.splhack.org/2010/12/ios-4-510.html"&gt;iPhone開発本「iOS 4プログラミングブック」&lt;/a&gt;(2011年1月27日発売) 344ページ中70ページくらい書いたりしています。BlocksとGrand Central Dispatchについて、本当に詳しく書きましたので、よろしければ是非。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1430404935330535846?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1430404935330535846/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1430404935330535846' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1430404935330535846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1430404935330535846'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/objective-cautorelease.html' title='Objective-Cのautorelease'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_RGGAxF8f5a8/TS9wRsE-wFI/AAAAAAAABDI/TD_EeMBsX4c/s72-c/autorelease0.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2686305030350796661</id><published>2011-01-13T21:30:00.003+09:00</published><updated>2011-01-13T22:03:18.376+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>iPhoneアプリ開発講座</title><content type='html'>マディソン・エリア工芸学校(Madison Area Technical College)のiPhone開発講座がとてもとてもとても充実しています。&lt;br /&gt;&lt;br /&gt;1項目3時間(実際の授業では1時間×3コマみたいです)に及ぶビデオがなんと14本(Springの14は3分割されてますから実際は16本)、さらに2期分で、計28本 合計84時間!&lt;br /&gt;&lt;br /&gt;WWDC 2010のビデオと同じくらいオススメの内容です。&lt;br /&gt;&lt;br /&gt;※&lt;font color=red&gt;iTunesのリンクが正常に動作しないようで、以下のリンクをクリックしてもiTunes Uに飛べるとは限りません。iTunesでAdvanced iPhone Developmentを検索しましょう。&lt;/font&gt;※&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;■Advanced iPhone Development - Spring 2010 &lt;a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=407243032"&gt;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=407243032&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;□&lt;a href="http://www.sunsetlakesoftware.com/sites/default/files/Spring2010CourseNotes/index.html"&gt;Course Notes&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■Advanced iPhone Development - Fall 2010 &lt;a href="http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=407243028"&gt;http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=407243028&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;たとえば&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;Fall 2010 12. Multithreading, multitasking, and GCD&lt;br /&gt;&lt;dd&gt;35分くらいマルチタスキング、1時間5分くらいみっちりスレッド。1時間10分以上Grand Central Dispatch。スレッド部分で、performSelectorInBackgroundの説明とともに、Race Conditionなどスレッドプログラミングにおける基本をみっちりやって、NSOperationQueueの使い方。そしてGrand Central Dispatchでどれだけ楽になるか。という流れ。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;Spring 2010 12. OpenGL ES, Fall 2010 13. OpenGL ES 2.0&lt;br /&gt;&lt;dd&gt;OpenGL ES 1.1、OpenGL ES 2.0を網羅。画面を確認しながらvertex shader、fragment shaderを説明。なかなか見かけない講座です。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;Sprint 2010 14 Guest Speaker, Fall 2010 14. Selling iOS applications&lt;br /&gt;&lt;dd&gt;アプリの売り方、プロモーションについて、売上の推移、AdMob,iAd。これまたなかなか見られない内容です。WWDCではこういうのは見れない(笑)&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;あ、英語に抵抗ある人は『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』をどうぞ! &lt;a href="http://a.r10.to/hB8RJT"&gt;Blocks、Grand Central Dispatchを知りたいならコレ&lt;/a&gt;。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2686305030350796661?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2686305030350796661/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2686305030350796661' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2686305030350796661'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2686305030350796661'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/iphone.html' title='iPhoneアプリ開発講座'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6071889227111728999</id><published>2011-01-11T16:39:00.003+09:00</published><updated>2011-01-11T17:39:38.136+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20110111</title><content type='html'>MacVim-KaoriYa 20110111版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101222.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20110111.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;Vim 7.3.99、MacVim Snapshot 56、香り屋パッチ 20110109ベースです。&lt;br /&gt;&lt;br /&gt;GUI実行時(MacVim.appを実行時)のIM制御のデフォルトを変更しました(&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Readme#日本語入力(IM)自動オン/オフ"&gt;Readme 日本語入力(IM)自動オン/オフ&lt;/a&gt;)。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;set imdisableactivate&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;ESCでIM入力が自動でオフになりますが、再度入力モードに入っても自動でIMをオンにしなくなりました。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;set noimdisableactivate&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;とすると、ESCでIM入力が自動でオフになり、再度入力モードに入ると自動でIMをオンにします。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;set imdisable&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;で、IM自動制御自体を禁止します。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6071889227111728999?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6071889227111728999/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6071889227111728999' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6071889227111728999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6071889227111728999'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2011/01/macvim-kaoriya-20110111.html' title='MacVim-KaoriYa 20110111'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4493111659391433284</id><published>2010-12-27T20:46:00.011+09:00</published><updated>2011-01-11T09:01:15.165+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>本を書きました (iOS 4プログラミングブック 第5章/第10章)</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://amzn.to/gyDsy7"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 242px;" src="http://1.bp.blogspot.com/_RGGAxF8f5a8/TRkjGWckbEI/AAAAAAAABDA/cxhopjJKXmo/s320/215286612.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5555510207349812290" /&gt;&lt;/a&gt;&lt;br /&gt;(&lt;a href="http://twitpic.com/3k6c7o"&gt;http://twitpic.com/3k6c7o より&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;『&lt;a href="http://amzn.to/gyDsy7"&gt;iOS 4プログラミングブック&lt;/a&gt;』です。2011年1月27日発売です。&lt;br /&gt;&lt;br /&gt;■第5章 マルチスレッド&lt;br /&gt;■第10章 ユニバーサル対応&lt;br /&gt;&lt;br /&gt;以上の内容を70ページくらい書かせていただきました。&lt;br /&gt;&lt;br /&gt;第5章ではiOS 4で追加されたBlocks、Grand Central Dispatch (GCD)を詳細に説明させていただきました(正確にはBlocksはiOS3.2からですけども)。よくありがちな、こういう機能がありますよ、という軽い紹介ではなく、これ以上ないくらい深追いして書いてしまいました。深追いストにも満足の仕上がりだと思います。Blocksは類書がすでにありますが、Grand Central Dispatchに関しては、少なくとも現時点では、他に類を見ない内容ではないかと思っております。&lt;br /&gt;&lt;br /&gt;(追記 2011/1/6)&lt;br /&gt;Blocksの説明に26ページ、Grand Central Dispatch(GCD)の説明に31ページ使っています。&lt;br /&gt;&lt;br /&gt;また第10章では、iOS 4だけでなくiOS 3や、複数のデバイスの同時対応方法を書かせていただきました。これまた、こうすればいいんです、みたいなありがちな話で終わるのではなく、なんでこうするのか、どうなるのか、まで深追いしております。これまた深追いストにも満足の仕上がりです。&lt;br /&gt;&lt;br /&gt;なお第5章 Blocks、Grand Central Dispatchですが、実はiOS 4限定の話ではなくて、Mac OS Xプログラミングでも通用する話です。Mac App Storeを狙っている方にも第5章を読んでいただければな、と思います。&lt;br /&gt;&lt;br /&gt;さらに言えば、FreeBSD(&lt;a href="http://wiki.freebsd.org/GCD"&gt;http://wiki.freebsd.org/GCD&lt;/a&gt;)、Linux(&lt;a href="http://lists.macosforge.org/pipermail/libdispatch-dev/2010-July/000397.html"&gt;http://lists.macosforge.org/pipermail/libdispatch-dev/2010-July/000397.html&lt;/a&gt;)でもBlocks、Grand Central Dispatchが使えるわけですから、FreeBSDやLinuxをご使用の方も是非読んでいただければ幸いです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_top&amp;bc1=FFFFFF&amp;IS2=1&amp;npa=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=amazonasso0d9-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=4844329766" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(追記)&lt;br /&gt;&lt;blockquote&gt;編集担当のはっちゃん（@hacchan）です。&lt;br /&gt;写真の白見本ですが、会社のレーザープリンターで出力したカバーなので、ちょっと貧素に写っていますが、実物はマッドPP加工されて、もっとかっちょ良くなる予定です。&lt;br /&gt;仕上がりを楽しみにお待ち下さいませ～（^-^）&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;とのことですので、持ってるだけでうれしい本にもなりそうです! お待ちくださいませ!&lt;br /&gt;&lt;br /&gt;&lt;table border="0" cellpadding="0" cellspacing="0"&gt;&lt;tr&gt;&lt;td valign="top"&gt;&lt;div style="border:1px none;margin:0px;padding:6px 0px;width:160px;text-align:center;float:left"&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6934971%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f14327076%2f" target="_blank"&gt;&lt;img src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2fnoimage_01.gif%3f_ex%3d128x128%26s%3d2%26r%3d1&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2fnoimage_01.gif%3f_ex%3d80x80%26s%3d2%26r%3d1" alt="iOS4プログラミングブック" border="0" style="margin:0px;padding:0px"&gt;&lt;p style="font-size:12px;line-height:1.4em;text-align:left;margin:0px;padding:2px 6px"&gt;iOS4プログラミングブック&lt;/p&gt;&lt;/a&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4493111659391433284?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4493111659391433284/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4493111659391433284' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4493111659391433284'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4493111659391433284'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/12/ios-4-510.html' title='本を書きました (iOS 4プログラミングブック 第5章/第10章)'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_RGGAxF8f5a8/TRkjGWckbEI/AAAAAAAABDA/cxhopjJKXmo/s72-c/215286612.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7878881825201498927</id><published>2010-12-24T11:26:00.007+09:00</published><updated>2010-12-27T08:33:02.156+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>libfreenectをiOS用にビルドしてみる</title><content type='html'>まずiOS SDK 4.2用にIOKitのヘッダを準備。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$ sudo ln -s /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/IOKit.framework/Headers /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk/System/Library/Frameworks/IOKit.framework&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;libusbとlibfreenectのソース取得とパッチ&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$ ftp -o - "http://git.libusb.org/?p=libusb.git;a=snapshot;h=7da756e09fd97efad2b35b5cee0e2b2550aac2cb;sf=tgz;js=1"|tar xzvf -&lt;br /&gt;$ git clone git://github.com/OpenKinect/libfreenect.git&lt;br /&gt;$ cd libusb-7da756e&lt;br /&gt;$ patch -p1 &lt; ../libfreenect/platform/osx/libusb-osx-kinect.diff&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;libusb configureとビルド&lt;br /&gt;&lt;br /&gt;&lt;a href="https://gist.github.com/raw/753825/e3fe7e0b7a22a3a4a4def3378dd9e63c1ca1a986/configure-iphoneos.sh"&gt;configure-iphone.sh&lt;/a&gt; をファイルに保存&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$ sh autogen.sh&lt;br /&gt;$ sh configure-iphone.sh&lt;br /&gt;$ make&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;libfreenectのビルド&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;$ cd ../libfreenect/src&lt;br /&gt;$ ln -s ../../libusb-7da756e/libusb ../include/libusb-1.0&lt;br /&gt;$ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/arm-apple-darwin10-gcc-4.2.1 -march=armv6 -miphoneos-version-min=3.1.3 -isysroot /Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.2.sdk -I../include -c *.c&lt;br /&gt;$ /Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/ar rcu libfreenect.a *.o&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;libusb-7da756e/libusb/.libs/libusb-1.0.a&lt;/code&gt;と、&lt;code&gt;libfreenect/src/libfreenect.a&lt;/code&gt;の出来上がり。&lt;br /&gt;&lt;br /&gt;まだ実行ファイルとしてlinkしてませんので何か足りないかもしれません。&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://rcm-jp.amazon.co.jp/e/cm?lt1=_top&amp;bc1=000000&amp;IS2=1&amp;bg1=FFFFFF&amp;fc1=000000&amp;lc1=0000FF&amp;t=amazonasso0d9-22&amp;o=9&amp;p=8&amp;l=as1&amp;m=amazon&amp;f=ifr&amp;md=1X69VDGQCMF7Z30FM082&amp;asins=B003T9VDJQ" style="width:120px;height:240px;" scrolling="no" marginwidth="0" marginheight="0" frameborder="0"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;br /&gt;言うまでもないことですが、App Storeの審査には通りません。&lt;br /&gt;&lt;br /&gt;2010.12.27 追記&lt;br /&gt;iPad 4.2.1だと、Kinectは消費電力が大きすぎる、というエラーで接続できませんでした。iPad 3.2に戻すこともできず。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7878881825201498927?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7878881825201498927/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7878881825201498927' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7878881825201498927'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7878881825201498927'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/12/libfreenectios.html' title='libfreenectをiOS用にビルドしてみる'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1524387445608124354</id><published>2010-12-22T13:18:00.002+09:00</published><updated>2010-12-22T13:20:42.096+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20101222</title><content type='html'>MacVim-KaoriYa 20101222版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101222.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101222.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;Vim 7.3.87、MacVim Snapshot 56、香り屋パッチ 20101218ベースです。&lt;br /&gt;&lt;br /&gt;q:後、echo 1などを実行しても、実行結果が消えてしまっていたのですが、MacVim Snapshot 56より修正されています。お試し下さいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1524387445608124354?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1524387445608124354/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1524387445608124354' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1524387445608124354'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1524387445608124354'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/12/macvim-kaoriya-20101222.html' title='MacVim-KaoriYa 20101222'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7213013240099216958</id><published>2010-12-22T05:58:00.004+09:00</published><updated>2010-12-22T08:55:41.217+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>Entitlements.plist</title><content type='html'>iOS SDK 4.2を使う場合は、たとえAdHoc用のビルドでも、通常Entitlements.plistは不要。&lt;br /&gt;&lt;br /&gt;XcodeがEntitlements.plistを自動生成してくれるからです。&lt;br /&gt;&lt;br /&gt;&lt;code&gt;build/プロジェクト名.build/構成名-iphoneos/ターゲット名.build/ターゲット名.xcent&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;に、&lt;a href="http://developer.apple.com/library/ios/#qa/qa2010/qa1710.html"&gt;Technical Q&amp;A QA1710&lt;/a&gt; Figure 4と同じEntitlements.plistが生成されます。&lt;br /&gt;&lt;br /&gt;へたに自分で作るとエラーを喰らいます。ビルド設定「コード署名権限(CODE_SIGN_ENTITLEMENTS)」を削除しましょう。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;で、「通常不要」ということは、必要とする場合があるわけですが、&lt;br /&gt;&lt;br /&gt;&lt;a href="http://developer.apple.com/library/ios/#qa/qa2010/qa1710.html"&gt;Technical Q&amp;A QA1710&lt;/a&gt;&lt;blockquote&gt;IMPORTANT: An Entitlements file is generally only needed when building for Ad Hoc Distribution or enabling Keychain data sharing. If neither of these is true, delete the entry in Code Signing Entitlements. This will resolve the error.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;前述通りAdHoc用ビルドだとしても自動生成されますから、自分でEntitlements.plistを用意しなければならないという場合は、Keychain data sharingのときだけ、ということになります。その場合は、必ずXcodeの「ファイル追加」で生成しましょう。追加&gt;新規ファイル&gt;Code Signing&gt;Entitlementsです。&lt;br /&gt;&lt;br /&gt;(調査の経緯は&lt;a href="http://twilog.org/splhack/date-101221/asc"&gt;私のtweets 15時〜&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7213013240099216958?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7213013240099216958/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7213013240099216958' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7213013240099216958'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7213013240099216958'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/12/entitlementsplist.html' title='Entitlements.plist'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1682421466944033705</id><published>2010-12-20T09:30:00.004+09:00</published><updated>2010-12-20T10:31:01.867+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='cocos2d'/><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>cocos2d for iPhone 本3冊</title><content type='html'>iPhone、iPad用の2Dゲームを作るなら&lt;a href="http://www.cocos2d-iphone.org/"&gt;cocos2d for iPhone&lt;/a&gt;で決まり、と言っても過言ではないですが、そのcocos2d、最近連続して本が出版されてますよ。&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;■&lt;a href="http://apress.com/book/view/9781430233039"&gt;Learn iPhone and iPad Cocos2D Game Development&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;APRESSからPDF版をクーポン使って買うのがお得。&lt;br /&gt;&lt;dd&gt;特色: Game Center組み込み方法&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■&lt;a href="http://cocos2dbook.com/book/"&gt;Learning Cocos2D&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;出版予定は2011年5月。Safari Book onlineでrough cut PDF版を買えます。随時アップデートされて、最終的に製品版に。買うなら今。&lt;br /&gt;&lt;dd&gt;特色: Advanced Topics (まだ書かれてませんが...)&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■&lt;a href="https://www.packtpub.com/cocos2d-games-for-iphone-0-99-beginners-guide/book"&gt; Cocos2d for iPhone 0.99 Beginner's Guide&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;packtpubからPDF版を買えば15% off&lt;br /&gt;&lt;dd&gt;特色: OpenFeint組み込み方法&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;以上全部英語ですけども。日本語の本だと、丸々cocos2dの本はまだないですが、以下の本でちょっとだけ扱ってますね。&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6526468%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13705089%2f" target="_blank"&gt;&lt;img src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8626%2f86267085.jpg%3f_ex%3d64x64%26s%3d2%26r%3d1&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f8626%2f86267085.jpg%3f_ex%3d40x40%26s%3d2%26r%3d1"&gt;iPhoneのオモチャ箱 iPhone SDKプログラミング&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;&lt;a href="http://hb.afl.rakuten.co.jp/hgc/0ce821a8.f59e4619.0ce821a9.a6958d40/?pc=http%3a%2f%2fbooks.rakuten.co.jp%2frb%2f6425446%2f%3fscid%3daf_ich_link_tbl&amp;m=http%3a%2f%2fm.rakuten.co.jp%2fbook%2fi%2f13612928%2f" target="_blank"&gt;&lt;img src="http://hbb.afl.rakuten.co.jp/hgb/?pc=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7980%2f79802579.jpg%3f_ex%3d64x64%26s%3d2%26r%3d1&amp;m=http%3a%2f%2fthumbnail.image.rakuten.co.jp%2f%400_mall%2fbook%2fcabinet%2f7980%2f79802579.jpg%3f_ex%3d40x40%26s%3d2%26r%3d1"&gt;iPhone SDK開発のレシピ　113個のレシピで学ぶiPhoneアプリ開発の極意&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;ちなみに私がプログラムを担当した&lt;a href="http://www.muumuu.com/apps.html"&gt;ヌカカの結婚、テロメアの帽子、カルシノの贈り物&lt;/a&gt;もcocos2dを使ってますよ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1682421466944033705?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1682421466944033705/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1682421466944033705' title='3 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1682421466944033705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1682421466944033705'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/12/cocos2d-for-iphone-3.html' title='cocos2d for iPhone 本3冊'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4722677758157403614</id><published>2010-12-14T15:00:00.002+09:00</published><updated>2010-12-14T15:07:42.384+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20101214</title><content type='html'>MacVim-KaoriYa 20101214版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101214.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101214.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;Vim 7.3.81、香り屋パッチ 20101209ベースです。&lt;br /&gt;&lt;br /&gt;Ruby 1.8/1.9同時対応になりました。MacPortsでRuby1.9をいれた場合、以下の設定でRuby 1.9を使用できます。&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;let $RUBY_DLL="/opt/local/lib/libruby.1.9.dylib"&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Python 3.1にも対応しています。&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;let $PYTHON3_DLL="/opt/local/Library/Frameworks/Python.framework/Versions/3.1/Python"&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="https://github.com/tpope/vim-pathogen"&gt;pathogen&lt;/a&gt;も入れておきましたので、.vimrcに以下の行を追加するだけで使用できます。&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;call pathogen#runtime_append_all_bundles()&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4722677758157403614?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4722677758157403614/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4722677758157403614' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4722677758157403614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4722677758157403614'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/12/blog-post.html' title='MacVim-KaoriYa 20101214'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5616410227153609229</id><published>2010-11-22T09:57:00.004+09:00</published><updated>2010-11-22T12:10:49.965+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20101122</title><content type='html'>MacVim-KaoriYa 20101122版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101122.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101122.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;Vim 7.3.63、香り屋パッチ 20101118ベースです。今回は、さらにMacVim-KaoriYaだけの改善がいくつかあります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■変更点&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;■netrw scp 要パスワード時にダイアログ表示追加&lt;br /&gt;&lt;dd&gt;:e scp://リモートホスト名/パス によりscpを使ってリモートホストのファイルを開くことができますが、今までのバージョンではパスワードの入力が必要だった場合開くことができませんでした。本バージョンより、パスワード入力のためのダイアログが表示されるようになります。scpの機能(SSH_ASKPASS)とシェルスクリプト(&lt;a href="https://github.com/splhack/macvim/blob/master/src/MacVim/macvim-askpass"&gt;macvim-askpass&lt;/a&gt;)により実現されています。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■実験的レンダラの文字コード変換失敗時例外対策&lt;br /&gt;&lt;dd&gt;実験的レンダラ使用時に、:makeなどの外部プログラム実行時にUTF-8以外の文字列を表示しようとした場合、MacVimが突然終了してしまう不具合がありましたが、本バージョンでは、そのような文字列部分を無視するように対策しました。:makeなどの外部プログラム実行の際は、表示結果をiconvなどでUTF-8に変換することをオススメします。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■IM on/off切り替え時のCursorIM即時反映&lt;br /&gt;&lt;dd&gt;IM on/off切替時のイベントを監視するように変更しました。.gvimrcに&lt;pre&gt;&lt;br /&gt;highlight CursorIM guibg=Purple guifg=NONE&lt;br /&gt;&lt;/pre&gt;のように設定することで、IM on/off状態によりカーソルの色を変更することができます。なお本変更はすでにMacVimに取り込まれています。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■&lt;a href="https://github.com/Shougo/vimproc"&gt;vimproc&lt;/a&gt; shared libraryのみ同梱&lt;br /&gt;&lt;dd&gt;&lt;a href="https://github.com/Shougo/vimshell"&gt;VimShell plugin&lt;/a&gt;に必要となるvimproc pluginのうち、ビルドが必要なproc.soだけ同梱しました。同梱されているのはproc.soのみとなりますので、他のplugin同様vimproc plugin自体(vimスクリプト部分)のインストールが必要となります。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■実験版プロポーショナルフォント表示対応&lt;br /&gt;&lt;dd&gt;実験的にプロポーショナルフォントを使用できるようにしてみました。あくまで実験ですので、カーソル位置がおかしいなどの不具合が含まれています。&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;「実験的レンダラを使用する」のチェックを外す(実験的レンダラでは使用できません)&lt;br /&gt;&lt;li&gt;プロポーショナルフォントを指定する&lt;br /&gt;&lt;li&gt;プロポーショナルフォントを使用する設定をON&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;例: &lt;pre&gt;&lt;br /&gt;set guifontwide=&lt;br /&gt;set guifont=AppleGothic\ Regular:h14&lt;br /&gt;set macproportionalfont&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;■Ruby 1.8/1.9両対応&lt;br /&gt;&lt;dd&gt;両対応予定でした... 7.3.058の変更によりRuby 1.9のdynamic loadingができなくなりました。対応検討中です。&lt;br /&gt;&lt;br /&gt;&lt;/dl&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5616410227153609229?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5616410227153609229/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5616410227153609229' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5616410227153609229'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5616410227153609229'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/11/macvim-kaoriya-20101122.html' title='MacVim-KaoriYa 20101122'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4182212860655763473</id><published>2010-11-02T22:46:00.004+09:00</published><updated>2010-11-02T22:51:13.615+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20101102</title><content type='html'>MacVim-KaoriYa 20101102版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;font color="red"&gt;本バージョンではデフォルトでRuby拡張が使用できません&lt;/font&gt;。.vimrcに以下の行を追加する必要があります。&lt;br /&gt;&lt;code&gt;&lt;br /&gt;let $RUBY_DLL="/usr/lib/libruby.dylib"&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101102.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101102.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;Vim 7.3.47ベースで、MacVim snapshot 55相当です(&lt;a href="http://github.com/b4winckler/macvim/wiki/ChangeLog"&gt;MacVimのChangeLog&lt;/a&gt;)。&lt;br /&gt;&lt;br /&gt;Vimのバグ修正(skk.vimでのCTRL-Gでアプリケーション終了など)が含まれています。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4182212860655763473?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4182212860655763473/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4182212860655763473' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4182212860655763473'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4182212860655763473'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/11/macvim-kaoriya-20101102.html' title='MacVim-KaoriYa 20101102'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6152375410038420107</id><published>2010-10-08T08:51:00.005+09:00</published><updated>2010-10-08T09:54:43.154+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>「カルシノの贈り物」</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RGGAxF8f5a8/TK5eqeCUGDI/AAAAAAAABCY/GIJpuT2QYmk/s1600/calcino.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 320px;" src="http://2.bp.blogspot.com/_RGGAxF8f5a8/TK5eqeCUGDI/AAAAAAAABCY/GIJpuT2QYmk/s320/calcino.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5525457876540463154" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;私がプログラムを担当しているiPhone/iPad用科学絵本アプリ「カルシノの贈り物」が発売されました!&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://itunes.apple.com/jp/app/id394866454?mt=8"&gt;カルシノの贈り物 無料版&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://itunes.apple.com/jp/app/id394846698?mt=8"&gt;カルシノの贈り物&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;「カルシノの贈り物」は&lt;a href="http://www.muumuu.com/"&gt;ムームー&lt;/a&gt; 森川幸人さん作の科学絵本です。小難しい話をわかりやすくてかわいい絵本にまとめあげています。&lt;a href="http://www.1101.com/morikawa/calcino/"&gt;ほぼ日で立ち読みもできますよ!&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;前作「ヌカカの結婚」「テロメアの帽子」も面白いです!&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://itunes.apple.com/jp/app/id364593647?mt=8"&gt;ヌカカの結婚 無料版&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://itunes.apple.com/jp/app/id364585889?mt=8"&gt;ヌカカの結婚&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://itunes.apple.com/jp/app/id374496245?mt=8"&gt;テロメアの帽子 無料版&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;■&lt;a href="http://itunes.apple.com/jp/app/id374468704?mt=8"&gt;テロメアの帽子&lt;/a&gt;&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;プログラム的には前作から一新。わりと根幹部分をC++からObjective-Cに移行。でもIMP cache使いまくりで速度維持(ってまったくもって速度気にする部分じゃないんですけども)。かなり気持ちいい仕上がりになっております。ソースコード的に。あ、もちろん、触って気持ちいいアプリにもなってますよ! いつ読んでいるかわからないロード時間とか(3Gではちょっともたつくところもありますが...)。画面が一瞬黒くなるとか画面が止まったまま操作できないとか一切ありません!&lt;br /&gt;&lt;br /&gt;ぜひダウンロードの上お楽しみくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6152375410038420107?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6152375410038420107/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6152375410038420107' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6152375410038420107'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6152375410038420107'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/10/blog-post.html' title='「カルシノの贈り物」'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_RGGAxF8f5a8/TK5eqeCUGDI/AAAAAAAABCY/GIJpuT2QYmk/s72-c/calcino.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6615749698204232967</id><published>2010-10-07T21:35:00.004+09:00</published><updated>2010-10-07T21:38:45.459+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20101005</title><content type='html'>MacVim-KaoriYa 20101005版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;font color=red&gt;本バイナリはMac OS X 10.4 tiger 非対応となります。&lt;/font&gt; ビルドすることで10.4でも動作します(&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Building"&gt;http://code.google.com/p/macvim-kaoriya/wiki/Building&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101005.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20101005.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;Vim 7.3.19ベースで、MacVim snapshot 55相当です(&lt;a href="http://github.com/b4winckler/macvim/wiki/ChangeLog"&gt;MacVimのChangeLog&lt;/a&gt;)。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6615749698204232967?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6615749698204232967/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6615749698204232967' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6615749698204232967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6615749698204232967'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/10/macvim-kaoriya-20101005.html' title='MacVim-KaoriYa 20101005'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2395836300415527809</id><published>2010-08-17T11:07:00.004+09:00</published><updated>2010-08-17T21:27:53.860+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100817</title><content type='html'>MacVim-KaoriYa 20100817版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;font color=red&gt;本バイナリはMac OS X 10.4 tiger 非対応となります。&lt;/font&gt; ビルドすることで10.4でも動作します(&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Building"&gt;http://code.google.com/p/macvim-kaoriya/wiki/Building&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;20100816版がMac OS X 10.5 Leopardで起動しない不具合を修正しました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100817.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100817.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;Leopardの方ですでにアップデート済みの方は申し訳ありませんが、手動でdmgをダウンロードしMacVim.appを上書きコピーしてくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2395836300415527809?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2395836300415527809/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2395836300415527809' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2395836300415527809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2395836300415527809'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/08/macvim-kaoriya-20100817.html' title='MacVim-KaoriYa 20100817'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1388630520419626495</id><published>2010-08-16T13:11:00.003+09:00</published><updated>2010-08-17T09:43:00.620+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100816</title><content type='html'>&lt;font color=red&gt;&lt;b&gt;Mac OS X 10.5 Leopardで動作しないことが判明しました。Leopardを使用されている方は20100817版をお待ちくださいませ。&lt;/b&gt;&lt;/font&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYa 20100816版をリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100813.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100816.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.3ベース&lt;br /&gt;&lt;li&gt;MacVim snapshot 53ベース&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;となっております。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2009/08/macvim-kaoriya-20090802.html"&gt;20090802版&lt;/a&gt;からのアップデートでは、&lt;font color=red&gt;Mac OS X 10.4 tiger 非対応&lt;/font&gt;となっていることにご注意くださいませ(Sparkleの設定により10.4では自動アップデートしないようになっております)。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1388630520419626495?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1388630520419626495/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1388630520419626495' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1388630520419626495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1388630520419626495'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/08/macvim-kaoriya-20100816.html' title='MacVim-KaoriYa 20100816'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5186752972991364029</id><published>2010-08-13T09:03:00.003+09:00</published><updated>2010-08-13T09:04:32.142+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100813</title><content type='html'>MacVim-KaoriYa 20100813版をテスト用にリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100813.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100813.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.3e BETAベース&lt;br /&gt;&lt;li&gt;MacVim snapshot 52.7ベース&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;となっております。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5186752972991364029?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5186752972991364029/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5186752972991364029' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5186752972991364029'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5186752972991364029'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/08/macvim-kaoriya-20100813.html' title='MacVim-KaoriYa 20100813'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5610068529184942814</id><published>2010-07-27T12:09:00.004+09:00</published><updated>2010-08-05T10:25:28.495+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100805</title><content type='html'>MacVim-KaoriYa 20100805版をテスト用にリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100805.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100805.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;今回はSparkleによる自動アップデートが可能なはずですので、MacVim-KaoriYaのMacVimメニューの「アップデートを確認」よりアップデートをお試しくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.3d BETAベース&lt;br /&gt;&lt;li&gt;MacVim snapshot 52.6ベース&lt;br /&gt;&lt;li&gt;日本語ドキュメント更新に追従(&lt;a href="http://www.kaoriya.net/vimdoc_j/"&gt;http://www.kaoriya.net/vimdoc_j/&lt;/a&gt;)&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;となっております。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5610068529184942814?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5610068529184942814/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5610068529184942814' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5610068529184942814'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5610068529184942814'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/07/macvim-kaoriya-20100727.html' title='MacVim-KaoriYa 20100805'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1080427759074481849</id><published>2010-06-14T13:53:00.003+09:00</published><updated>2010-06-14T14:07:55.908+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100614</title><content type='html'>MacVim-KaoriYa 20100614版をテスト用にリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100614.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100614.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.3a BETAベース&lt;br /&gt;&lt;li&gt;MacVim snapshot 52.2ベース&lt;br /&gt;&lt;li&gt;香り屋さんの&lt;a href="http://www.kaoriya.net/#VIM72"&gt;Vim 7.2-20100510 for Windows&lt;/a&gt;ベース&lt;br /&gt;&lt;li&gt;Sparkle再導入(&lt;a href="http://macvim-kaoriya.googlecode.com/svn/wiki/unstable73.xml"&gt;unstable版xml&lt;/a&gt;) 運がよければ次のバージョンから自動的に更新されます。&lt;br /&gt;&lt;li&gt;&lt;a href="http://github.com/splhack/macvim/tree/macvim73-kaoriya"&gt;macvim73-kaoriya branch&lt;/a&gt;&lt;br /&gt;&lt;li&gt;バージョンアップに追従できなさそうなのでvimproc同梱停止。&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;となっております。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/b4winckler/macvim"&gt;MacVimのgit repository移動&lt;/a&gt;にともない、&lt;a href="http://github.com/splhack/macvim"&gt;MacVim-KaoriYaもgithub&lt;/a&gt;に移行しました。この際、今までの履歴を捨てて移行してしまいましたので、動作や日本語リソースがおかしいことも考えられます。気付いたことがありましたら教えてくださいませ。また開発環境更新によりLeopard(10.5)での動作確認を行えておりません。こちらも動作した/しないなど教えていただけますと幸いです。&lt;br /&gt;&lt;br /&gt;ぜひテストにご協力くださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1080427759074481849?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1080427759074481849/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1080427759074481849' title='5 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1080427759074481849'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1080427759074481849'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/06/macvim-kaoriya-20100614.html' title='MacVim-KaoriYa 20100614'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2343378710309167566</id><published>2010-04-02T09:33:00.004+09:00</published><updated>2010-04-07T04:35:40.679+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iPhone'/><title type='text'>iPhoneアプリ作りました</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RGGAxF8f5a8/S7U-LeHxEDI/AAAAAAAABA0/zOn10bMp7DY/s1600/nukaka.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 184px; height: 186px;" src="http://2.bp.blogspot.com/_RGGAxF8f5a8/S7U-LeHxEDI/AAAAAAAABA0/zOn10bMp7DY/s320/nukaka.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5455334890414346290" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;私がプログラムを担当したiPhone用初アプリが発売開始されました!&lt;br /&gt;&lt;br /&gt;■&lt;a href="http://www.muumuu.com/apps/"&gt;http://www.muumuu.com/apps/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;■ヌカカの結婚 英語版 無料版&lt;br /&gt;&lt;a href="http://itunes.apple.com/jp/app/nukakas-marriage-free/id364591545?mt=8"&gt;http://itunes.apple.com/jp/app/nukakas-marriage-free/id364591545?mt=8&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;■ヌカカの結婚 英語版&lt;br /&gt;&lt;a href="http://itunes.apple.com/app/nukakas-marriage/id364576997?mt=8"&gt;http://itunes.apple.com/app/nukakas-marriage/id364576997?mt=8&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;■ヌカカの結婚 日本語版 無料版&lt;br /&gt;&lt;a href="http://itunes.apple.com/jp/app/id364593647?mt=8"&gt;http://itunes.apple.com/jp/app/id364593647?mt=8&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;■ヌカカの結婚 日本語版&lt;br /&gt;&lt;a href="http://itunes.apple.com/jp/app/id364585889?mt=8"&gt;http://itunes.apple.com/jp/app/id364585889?mt=8&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;iPhone用絵本アプリです。全編アニメーションおよびナレーション付きです。&lt;br /&gt;&lt;br /&gt;cocos2d for iPhone v0.99.0を使用しています。&lt;br /&gt;&lt;br /&gt;起動時間、起動時タイトルへの奇麗なつなぎ、データロードを意識させない、などなどこだわって作っております。&lt;br /&gt;(起動時間はもうちょっとがんばれそうですが...)&lt;br /&gt;&lt;br /&gt;iPhone, iPod touch, iPad をお持ちの方はまずは無料版をお試しくださいませ!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2343378710309167566?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2343378710309167566/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2343378710309167566' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2343378710309167566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2343378710309167566'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/04/iphone.html' title='iPhoneアプリ作りました'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_RGGAxF8f5a8/S7U-LeHxEDI/AAAAAAAABA0/zOn10bMp7DY/s72-c/nukaka.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7923621302463967491</id><published>2010-03-30T10:16:00.002+09:00</published><updated>2010-03-30T10:19:06.853+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100330</title><content type='html'>20100330版をテストリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100330.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100330.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.2.411&lt;br /&gt;&lt;li&gt;香り屋さんの&lt;a href="http://www.kaoriya.net/#VIM72"&gt;Vim 7.2-20100325 for Windows&lt;/a&gt;ベース&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;となっております。&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7923621302463967491?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7923621302463967491/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7923621302463967491' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7923621302463967491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7923621302463967491'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/03/macvim-kaoriya-20100330.html' title='MacVim-KaoriYa 20100330'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6158773584537572806</id><published>2010-03-15T08:58:00.002+09:00</published><updated>2010-03-15T09:03:53.707+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100315</title><content type='html'>MacVim-KaoriYa 20100311版はperl,rubyで問題があるため、20100315版をテストリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100315.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100315.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;香り屋さんの&lt;a href="http://www.kaoriya.net/#VIM72"&gt;Vim 7.2-20100313 for Windows&lt;/a&gt;ベース&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;となっております。&lt;br /&gt;&lt;br /&gt;if_rubyにwin32用の関数が混入、およびif_perlに5.10.0用に5.10.1以降の関数が混入(これはオリジナルから)してました。&lt;br /&gt;(if_ruby,if_perl,if_python自体をdll,shared library,dylib化してもらいたいものです...)&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6158773584537572806?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6158773584537572806/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6158773584537572806' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6158773584537572806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6158773584537572806'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/03/macvim-kaoriya-20100315.html' title='MacVim-KaoriYa 20100315'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2732249010747985000</id><published>2010-03-11T15:44:00.002+09:00</published><updated>2010-03-11T15:48:19.122+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100311</title><content type='html'>MacVim-KaoriYa 20100311版をテストリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100311.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100311.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;MacVim snapshot-52ベース&lt;br /&gt;&lt;li&gt;Vim 7.2.376&lt;br /&gt;&lt;li&gt;香り屋さんの&lt;a href="http://www.kaoriya.net/#VIM72"&gt;Vim 7.2-20100306 for Windows&lt;/a&gt;ベース&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;となっております。&lt;br /&gt;&lt;br /&gt;またSnow Leopardの実験的レンダラかつIMインライン入力時に、IM変換中の文節のアンダーラインを太くしました。&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2732249010747985000?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2732249010747985000/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2732249010747985000' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2732249010747985000'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2732249010747985000'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/03/macvim-kaoriya-20100311.html' title='MacVim-KaoriYa 20100311'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7735432729626220718</id><published>2010-02-25T16:13:00.003+09:00</published><updated>2010-02-27T19:50:13.183+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>AndroidソースコードをNexus One向けにビルドする</title><content type='html'>Nexus Oneのboot loaderのunlockとか、recovery imageとかはこちらをどうぞ。&lt;br /&gt;&lt;br /&gt;■&lt;a href="http://forum.xda-developers.com/showthread.php?t=611829"&gt;http://forum.xda-developers.com/showthread.php?t=611829&lt;/a&gt;&lt;br /&gt;■&lt;a href="http://forum.xda-developers.com/showthread.php?t=623496"&gt;http://forum.xda-developers.com/showthread.php?t=623496&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;■Androidのソースコードを準備&lt;br /&gt;&lt;/dt&gt;&lt;dd&gt;eclair branchを使用します。&lt;br /&gt;&lt;/dd&gt;&lt;dd&gt;&lt;a href="http://source.android.com/download"&gt;http://source.android.com/download&lt;/a&gt;&lt;br /&gt;&lt;/dd&gt;&lt;dd&gt;&lt;pre&gt;$ repo init -u git://android.git.kernel.org/platform/manifest.git -b eclair&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/dd&gt;&lt;dt&gt;■cyanogenさんのNexus One用vendor repositoryを取得&lt;br /&gt;&lt;/dt&gt;&lt;dd&gt;&lt;pre&gt;$ cd $MYDROID&lt;br /&gt;$ git clone git://github.com/cyanogen/android_vendor_cyanogen.git vendor/cyanogen&lt;br /&gt;$ git clone git://github.com/cyanogen/android_vendor_google_passion.git vendor/google/passion&lt;br /&gt;$ git clone git://github.com/koush/android_vendor_motorola_sholes-open.git vendor/motorola/sholes-open&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/dd&gt;&lt;dt&gt;■Nexus Oneからproprietaryなファイルを抽出&lt;br /&gt;&lt;/dt&gt;&lt;dd&gt;&lt;pre&gt;$ (cd vendor/google/passion; ./extract-files.sh)&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;発売開始直後のversionだとファイルが足らず失敗します。最新版に上げて実行します。&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/dd&gt;&lt;dt&gt;■環境変数設定(毎回必要)&lt;br /&gt;&lt;/dt&gt;&lt;dd&gt;&lt;pre&gt;$ source build/envsetup.sh&lt;br /&gt;$ lunch cyanogen_passion-eng&lt;/pre&gt;&lt;br /&gt;&lt;pre&gt;PLATFORM_VERSION_CODENAME=REL&lt;br /&gt;PLATFORM_VERSION=2.1&lt;br /&gt;TARGET_PRODUCT=cyanogen_passion&lt;br /&gt;TARGET_BUILD_VARIANT=eng&lt;br /&gt;など表示されれば成功&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/dd&gt;&lt;dt&gt;■make&lt;br /&gt;&lt;/dt&gt;&lt;dd&gt;&lt;pre&gt;$ make&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/dd&gt;&lt;dt&gt;■fastboot&lt;br /&gt;&lt;/dt&gt;&lt;dd&gt;&lt;pre&gt;$ fastboot flash boot boot.img&lt;br /&gt;$ fastboot flash userdata userdata.img&lt;br /&gt;$ fastboot flash system system.img&lt;/pre&gt;&lt;br /&gt;&lt;/dd&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;以上。Mapsとか入れる場合は extract-google-files.sh して CYANOGEN_WITH_GOOGLE=1 で。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7735432729626220718?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7735432729626220718/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7735432729626220718' title='7 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7735432729626220718'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7735432729626220718'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/02/androidnexus-one.html' title='AndroidソースコードをNexus One向けにビルドする'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-9165916576509912472</id><published>2010-02-10T11:00:00.003+09:00</published><updated>2010-02-10T11:04:46.046+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100210</title><content type='html'>MacVim-KaoriYa 20100210版をテストリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100210.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100210.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;実験的レンダラ(Core Text)使用時のvsplit描画不具合と、ウインドウズーム時に一瞬白くなるのが治っているようです。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.2.350&lt;br /&gt;&lt;li&gt;Vim日本語ドキュメント 20100207のスナップショット&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-9165916576509912472?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/9165916576509912472/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=9165916576509912472' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9165916576509912472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9165916576509912472'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/02/macvim-kaoriya-20100210.html' title='MacVim-KaoriYa 20100210'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6406017066727052600</id><published>2010-01-25T10:24:00.002+09:00</published><updated>2010-01-25T10:30:30.736+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20100125</title><content type='html'>MacVimがひさびさにVimをmergeしたので、MacVim-KaoriYaも追従して、20100125版としてテストリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100125.dmg"&gt;http://macvim-kaoriya.googlecode.com/files/macvim-kaoriya-20100125.dmg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.2.344&lt;br /&gt;&lt;li&gt;&lt;a href="http://github.com/Shougo/vimproc"&gt;vimproc&lt;/a&gt; v2.03(20100114)版&lt;br /&gt;&lt;li&gt;&lt;a href="http://cvs.kaoriya.net/vimdoc_ja/timeline"&gt; Vim日本語ドキュメント&lt;/a&gt; 20100114のスナップショット&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6406017066727052600?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6406017066727052600/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6406017066727052600' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6406017066727052600'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6406017066727052600'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2010/01/macvim-kaoriya-20100125.html' title='MacVim-KaoriYa 20100125'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4185084203985932064</id><published>2009-12-25T14:19:00.002+09:00</published><updated>2009-12-25T14:25:18.858+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20091225 のvimproc</title><content type='html'>MacVim-KaoriYa 20091225版に含まれる vimproc 20091217版の vimproc.vim にはバグがあるようですので、&lt;a href="http://github.com/Shougo/vimshell"&gt;vimshell&lt;/a&gt;などvimprocを使用しているpluginを使用している方は、&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/Shougo/vimproc/downloads"&gt;vimproc downloads&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;からv2.02をダウンロードし、MacVim.app/Contents/Resources/vim/runtime/autoload/vimproc.vim を入れ替えてご使用くださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4185084203985932064?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4185084203985932064/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4185084203985932064' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4185084203985932064'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4185084203985932064'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/12/macvim-kaoriya-20091225-vimproc.html' title='MacVim-KaoriYa 20091225 のvimproc'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-171088430863694977</id><published>2009-12-25T05:56:00.004+09:00</published><updated>2009-12-25T06:03:02.675+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20091225</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20091225版をテストリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.2.320&lt;br /&gt;&lt;li&gt;&lt;a href="http://github.com/Shougo/vimproc"&gt;vimproc&lt;/a&gt; 20091217版&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;お試しくださいませ。 メリークリスマス&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-171088430863694977?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/171088430863694977/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=171088430863694977' title='4 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/171088430863694977'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/171088430863694977'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/12/macvim-kaoriya-20091225.html' title='MacVim-KaoriYa 20091225'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-49118028760354358</id><published>2009-11-24T15:13:00.005+09:00</published><updated>2009-11-24T17:31:47.697+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20091124</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20091124版をテストリリースしました。Vim 7.2.303、MacVim snapshot 51ベースになっています。&lt;br /&gt;&lt;br /&gt;今回からATSUIレンダラに代わりCore Textレンダラが入りました。&lt;br /&gt;&lt;br /&gt;「MacVim」メニュー「環境設定」「詳細」「実験的レンダラを使用する」を選択状態にすると使用できます。すでに選択状態になっていた場合は、一旦解除して再度選択状態にする必要があります。標準レンダラに比べてフォント表示などに問題があると思いますが。&lt;br /&gt;&lt;br /&gt;(2009/11/24 17:30 追記)「インラインインプットメソッドを使用する」も選択しないと入力中の文字が表示されません。つまり現状ことえりしかまともに使えないことになりそうです。&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/splhack"&gt;http://twitter.com/splhack&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-49118028760354358?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/49118028760354358/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=49118028760354358' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/49118028760354358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/49118028760354358'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/11/macvim-kaoriya-20091124.html' title='MacVim-KaoriYa 20091124'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5912742889112444295</id><published>2009-11-13T11:45:00.002+09:00</published><updated>2009-11-13T11:52:37.370+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20091113</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20091113版をテストリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Vim 7.2.284ベース&lt;br /&gt;&lt;li&gt;きよはらさんによるformat.vimの修正を取り込み(&lt;a href="http://classaz.blogspot.com/2009/11/macvim-kaoriyaformatvim.html"&gt;http://classaz.blogspot.com/2009/11/macvim-kaoriyaformatvim.html&lt;/a&gt;)&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5912742889112444295?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5912742889112444295/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5912742889112444295' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5912742889112444295'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5912742889112444295'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/11/macvim-kaoriya-20091113.html' title='MacVim-KaoriYa 20091113'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7117727709983670179</id><published>2009-10-27T09:13:00.002+09:00</published><updated>2009-10-27T09:19:19.406+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20091027</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20091027版をテストリリースしました。&lt;br /&gt;&lt;br /&gt;半角カタカナの濁点半濁点があると直前の文字を含めて1文字扱いになってしまい表示が崩れる不具合を対策しました。&lt;br /&gt;&lt;br /&gt;半角カタカナにお悩みの方はぜひお試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7117727709983670179?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7117727709983670179/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7117727709983670179' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7117727709983670179'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7117727709983670179'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/10/macvim-kaoriya-20091027.html' title='MacVim-KaoriYa 20091027'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3613925534222794830</id><published>2009-10-24T09:33:00.002+09:00</published><updated>2009-10-24T09:40:26.883+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim と MacVim-KaoriYa の違い</title><content type='html'>&gt; 今気付いたが本家MacVim日本語対応してるね&lt;br /&gt;&lt;br /&gt;してます。ほぼ問題なく使用できるはずです。IM制御コードなど主要な部分のpatchはすでに取り込まれています。&lt;br /&gt;&lt;br /&gt;ただ些細な問題とか説明が難しいというか面倒というか、インラインIMでのカーソル位置とか、インラインIMのGUIでの設定とかはpatch送ってません。&lt;br /&gt;&lt;br /&gt;あとは、&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;に書いてある通りです。&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;香り屋版&lt;br /&gt;&lt;dd&gt;日本語を扱う上で便利な設定やスクリプトが追加されています。ローマ字のまま日本語をインクリメンタル検索できるmigemo機能が統合されています。詳しくはこちら(http://d.hatena.ne.jp/thinca/20090619/1245338963)をご覧ください。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;MacVim-KaoriYa&lt;br /&gt;&lt;dd&gt;MacVimに対して、香り屋パッチの統合、ローカライズ、MacVim固有の設定、日本語文字コード自動判別、必要なshared library、Perl/Python/Rubyのdynamic loading、Objective-C対応ctags、などを追加しています。インストールしてすぐ使えるのが目標です。&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;結構違いますですよ → &lt;a href="http://repo.or.cz/w/MacVim/KaoriYa.git"&gt;http://repo.or.cz/w/MacVim/KaoriYa.git&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3613925534222794830?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3613925534222794830/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3613925534222794830' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3613925534222794830'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3613925534222794830'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/10/macvim-macvim-kaoriya.html' title='MacVim と MacVim-KaoriYa の違い'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-565508223971348337</id><published>2009-10-20T11:12:00.002+09:00</published><updated>2009-10-20T11:29:32.019+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20091020</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20091020版をアップしました。MacVimの構造上ATOKとAquaSKKでの問題を(現時点では)回避するのが難しいので、デフォルトではインラインIM入力をdisableにしました。&lt;br /&gt;&lt;br /&gt;環境設定の詳細パネルでインラインIM入力をenableにすることができます。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RGGAxF8f5a8/St0dCgMhzAI/AAAAAAAAA7c/DY2EUYFQGxs/s1600-h/preference.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 218px;" src="http://3.bp.blogspot.com/_RGGAxF8f5a8/St0dCgMhzAI/AAAAAAAAA7c/DY2EUYFQGxs/s320/preference.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5394499857499147266" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ことえりでは今のところ問題ありません。ATOKでも入力方法によっては問題ないようです。&lt;br /&gt;&lt;br /&gt;IMまわりの不具合のため20090802版を使っていらっしゃる方は是非お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-565508223971348337?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/565508223971348337/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=565508223971348337' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/565508223971348337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/565508223971348337'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/10/macvim-kaoriya-20091020.html' title='MacVim-KaoriYa 20091020'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_RGGAxF8f5a8/St0dCgMhzAI/AAAAAAAAA7c/DY2EUYFQGxs/s72-c/preference.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4394650041635975449</id><published>2009-10-16T10:43:00.003+09:00</published><updated>2009-10-16T10:49:27.809+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20091016</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYa 20091016版をアップしました。まだSparkleが効かないのでテストリリースとしておきます。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;MacVim snapshot 50 に追従。&lt;br /&gt;&lt;li&gt;vim 7.2.267 ベースになっています。&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4394650041635975449?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4394650041635975449/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4394650041635975449' title='10 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4394650041635975449'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4394650041635975449'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/10/macvim-kaoriya-20091016.html' title='MacVim-KaoriYa 20091016'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>10</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3324246623650165361</id><published>2009-10-02T13:12:00.002+09:00</published><updated>2009-10-02T13:18:18.136+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa と autocomplpop 2.8.1</title><content type='html'>MacVim-KaoriYaでautocomplpop使うとえらいことになるのでパッチを作ってみました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://gist.github.com/199457"&gt;http://gist.github.com/199457&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;でも、ことえりから1byte文字入力したら破綻する気がしますが...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://vinarian.blogspot.com/"&gt;neocomplcache&lt;/a&gt;をおすすめしておきます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3324246623650165361?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3324246623650165361/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3324246623650165361' title='1 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3324246623650165361'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3324246623650165361'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/10/macvim-kaoriya-autocomplpop-281.html' title='MacVim-KaoriYa と autocomplpop 2.8.1'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5119468406236994592</id><published>2009-10-02T11:15:00.002+09:00</published><updated>2009-10-02T11:56:07.388+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20091002</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20091002版をテストリリースしました。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;MacVimが64bit化&lt;br /&gt;&lt;li&gt;半透明機能復活&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Leopard intel/ppc, Snow Leopard で動作するはずです。お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5119468406236994592?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5119468406236994592/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5119468406236994592' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5119468406236994592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5119468406236994592'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/10/macvim-kaoriya-20091002.html' title='MacVim-KaoriYa 20091002'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2492121720949302862</id><published>2009-09-28T22:24:00.002+09:00</published><updated>2009-09-28T22:28:05.213+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090928</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;今回もテストリリースです。&lt;br /&gt;&lt;br /&gt;Snow Leopard、Leopard intel環境などの MacVim i386 + Vim x86_64 の組み合わせで起きていたスクロールバーが表示されない不具合が修正されました。&lt;br /&gt;&lt;br /&gt;お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2492121720949302862?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2492121720949302862/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2492121720949302862' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2492121720949302862'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2492121720949302862'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya-20090928.html' title='MacVim KaoriYa 20090928'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6918146260355983114</id><published>2009-09-23T14:40:00.002+09:00</published><updated>2009-09-23T14:42:18.526+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090923</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;今回もまだまだまだテストリリースです。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;+pythonでimport socketのようなdylibを読むようなscriptを実行させると_PyExc_IOErrorシンボルが解決できずエラーになる件を今度こそ修正しました。たぶん。&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;A href="http://blogger.splhack.org/2009/09/macvim-kaoriya-20090922.html"&gt;20090922版の変更点&lt;/a&gt;も合わせてご覧くださいませ。&lt;br /&gt;&lt;br /&gt;是非是非お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6918146260355983114?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6918146260355983114/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6918146260355983114' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6918146260355983114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6918146260355983114'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya-20090923.html' title='MacVim KaoriYa 20090923'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-192678809050521937</id><published>2009-09-22T20:23:00.003+09:00</published><updated>2009-09-22T20:32:13.318+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090922</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;今回もまだまだテストリリースです(MacVimがちゃんとSnow Leopard対応するまでテストリリースです。半透明にならない、スクロールバーが出ない、など不具合ありますので)。20090922版です。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;香り屋パッチを20090919版に更新しました (正確には、20090321版と20090919版のパッチを比較してMacVim-KaoriYaにもれがないことを確認しました)。&lt;br /&gt;&lt;li&gt;+pythonでimport socketのようなdylibを読むようなscriptを実行させると_PyExc_IOErrorシンボルが解決できずエラーになる件を修正しました。&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;是非お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-192678809050521937?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/192678809050521937/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=192678809050521937' title='4 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/192678809050521937'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/192678809050521937'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya-20090922.html' title='MacVim KaoriYa 20090922'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3367308273534288262</id><published>2009-09-11T19:08:00.003+09:00</published><updated>2009-09-11T20:14:38.601+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090911</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;今回もまだテストリリースです。20090911版です。&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;残念ながら&lt;font color=red&gt;&lt;b&gt;Mac OS X 10.4 Tiger非対応&lt;/b&gt;&lt;/font&gt;になりました。&lt;br /&gt;&lt;dd&gt;Snow Leopardでの使い勝手を優先させていただきました。すみません。が、あくまでバイナリリリースが非対応になっただけですので、&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Building"&gt;ソースコードからのビルド&lt;/a&gt;も実行も問題なくできると思います。問題があれば教えてくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;perl 5.10、python 2.6(2.5ともバイナリ互換)に変更&lt;br /&gt;&lt;dd&gt;&lt;a href="http://blogger.splhack.org/2009/09/macvim-kaoriya-20090902-2.html"&gt;http://blogger.splhack.org/2009/09/macvim-kaoriya-20090902-2.html&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;Snow Leopardでは自動的にOS標準のものを使うので、設定は必要ありません。&lt;br /&gt;&lt;dd&gt;Leopard intelの場合、64bitでアプリケーションが動く環境では、i386ではなくx86_64のdylib(i386+x86_64のuniversalでももちろん可)を必要とします。rubyとpythonはLeopard標準のものでそのまま動作します。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;IM変換時のカーソル位置を対策&lt;br /&gt;&lt;dd&gt;2重アンダーライン表示はできていません。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;ATOK 部分確定時の確定文字列消失を対策&lt;br /&gt;&lt;dd&gt;部分確定後アンダーライン位置がずれる場合があるようですが。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;&lt;a href="http://github.com/Shougo/vimproc/tree/master"&gt;vimproc v1.22&lt;/a&gt;に更新&lt;br /&gt;&lt;dd&gt;&lt;a href="http://github.com/Shougo/vimshell/tree/master"&gt;vimshell&lt;/a&gt;でつかいます。&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;是非動作確認をお願いいたします。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3367308273534288262?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3367308273534288262/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3367308273534288262' title='4 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3367308273534288262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3367308273534288262'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya-20090911.html' title='MacVim KaoriYa 20090911'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4622853171323512486</id><published>2009-09-06T22:30:00.005+09:00</published><updated>2009-09-07T12:29:52.921+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa</title><content type='html'>Snow Leopardでperl5.8.9を使ってbuildするように変更することで、perl5.8.8とのbinary compatibilityを確保(したつもり)。&lt;br /&gt;&lt;br /&gt;(20090907 追記) 5.8.8 と 5.8.9 はbinary compatibleじゃないことが発覚。MacPortsのdefaultは5.8.9で、Snow Leopardも5.8.9を標準搭載しているので、5.8.9にしておきます。と思ったんですが、5.8.9だとif_perl.xsがbuildできないので5.10になりました...&lt;br /&gt;&lt;br /&gt;ただしSnow Leopardでの使い勝手を優先したことで、次の配布バイナリから、残念ながら 10.4 Tiger intel で動作しなくなりそうです(x86_64で起動しようとして、objcのlibがx86_64がなくて起動しないと思われます)。ppcでは動きそうですが。20090802版を使用していただくか、自力でbuildしていただく必要があると思います。すみません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.serendip.ws/archives/2951"&gt;http://www.serendip.ws/archives/2951&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;動作確認ありがとうございます。変換中のカーソル位置は&lt;a href="http://repo.or.cz/w/MacVim/KaoriYa.git?a=commitdiff;h=80e38222b3677857d8d392c7e5048b71e12d5ddc"&gt;対応してみました&lt;/a&gt;。候補選択中のアンダーラインも戻したかったのですが、FEAT_XIM内をどう変更するといいか検討中です。&lt;br /&gt;&lt;br /&gt;部分確定はどういう動作をするかNSLog入れて見ていただける人がいれば...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4622853171323512486?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4622853171323512486/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4622853171323512486' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4622853171323512486'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4622853171323512486'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya_06.html' title='MacVim KaoriYa'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5247231031101666413</id><published>2009-09-04T11:30:00.000+09:00</published><updated>2009-09-04T11:36:20.192+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='OS X'/><title type='text'>Leopardとx86_64 binary</title><content type='html'>Snow Leopardで普通に作ったx86_64 binaryは、Leopardでは動作しない。&lt;br /&gt;&lt;br /&gt;printfしかしないようなbinaryの場合、&lt;br /&gt;&lt;br /&gt;Leopard用は&lt;pre&gt;&lt;br /&gt; /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 103.0.0)&lt;br /&gt; /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 123.0.0)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Snow Leopard用は&lt;pre&gt;&lt;br /&gt; /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 123.0.0)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;と依存しているdylibが違いますし、あとdyldあたりのinterfaceが変わっているような雰囲気です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Snow LeopardでLeopardでも動くbinaryを作るには、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ MACOSX_DEPLOYMENT_TARGET=10.5 gcc a.c&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;とか、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ MACOSX_DEPLOYMENT_TARGET=10.4 gcc -arch x86_64 -arch i386 -arch ppc a.c&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;とか。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;そもそもUNIXな範囲でx86_64なbinaryがSnow Leopard上で常に有利なの? という話もありますが、それはさておき、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;Snow Leopard: 10.6 x86_64&lt;br /&gt;Tiger/Leopard: 10.4 i386/ppc&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;なuniversal binaryを作ってみたい。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Xcodeだと、MACOSX_DEPLOYMENT_TARGET_x86_64てな感じの設定があるので、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ MACOSX_DEPLOYMENT_TARGET=10.5 MACOSX_DEPLOYMENT_TARGET_x86_64=10.6 gcc -o a.out -arch i386 -arch x86_64 a.c&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;もいけるのかと思いきや、gccには通用しません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ということで、lipoを使います。とりあえずi386 10.5とx86_64 10.6のuniversal binaryを作ってみます。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ MACOSX_DEPLOYMENT_TARGET=10.5 gcc -o a.out.i386.10.5 -arch i386 a.c&lt;br /&gt;&lt;br /&gt;$ MACOSX_DEPLOYMENT_TARGET=10.6 gcc -o a.out.x86_64.10.6 -arch x86_64 a.c&lt;br /&gt;&lt;br /&gt;$ lipo -create a.out.i386.10.5 a.out.x86_64.10.6 -output a.out&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;できました。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ otool -arch all -L a.out&lt;br /&gt;a.out (architecture i386):&lt;br /&gt; /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 103.0.0)&lt;br /&gt; /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 123.0.0)&lt;br /&gt;a.out (architecture x86_64):&lt;br /&gt; /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 123.0.0)&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;それっぽくlinkされています。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;てことで喜び勇んでLeopardで動かしてみると、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;dyld: unknown required load command 0x80000022&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;ということで、Leopardではx86_64を動かせちゃうので10.6なx86_64を動かしてしまう訳ですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ついでにだめもとで試してみると&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ lipo -create a.out.x86_64.10.5 a.out.x86_64.10.6 -output a.out.2&lt;br /&gt;lipo: a.out.x86_64.10.5 and a.out.x86_64.10.6 have the same architectures (x86_64) and can't be in the same fat output file&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;やはりだめですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;よって、i386はLeopardで、x86_64はSnow Leopardで、てなことはできなさそうです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5247231031101666413?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5247231031101666413/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5247231031101666413' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5247231031101666413'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5247231031101666413'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/leopardx8664-binary.html' title='Leopardとx86_64 binary'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3667556492008902551</id><published>2009-09-03T20:31:00.002+09:00</published><updated>2009-09-03T20:36:28.401+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090903</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20090903版をリリースしました。是非動作確認をお願いいたします。&lt;br /&gt;&lt;br /&gt;Mac OS X 10.5 Leopard intel で動作しない不具合を修正しました。&lt;br /&gt;&lt;br /&gt;結局i386/ppc universal binaryになっています。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2009/09/macvim-kaoriya-20090902.html"&gt;http://blogger.splhack.org/2009/09/macvim-kaoriya-20090902.html&lt;/a&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2009/09/macvim-kaoriya-20090902-2.html"&gt;http://blogger.splhack.org/2009/09/macvim-kaoriya-20090902-2.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3667556492008902551?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3667556492008902551/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3667556492008902551' title='4 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3667556492008902551'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3667556492008902551'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya-20090903.html' title='MacVim KaoriYa 20090903'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2516485605720806463</id><published>2009-09-03T09:06:00.003+09:00</published><updated>2009-09-03T09:27:30.766+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20090902 その2</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20090902版ですが、重要な変更点を書き忘れました。perl/pythonのbinary compatibleなバージョンを変更しています。&lt;br /&gt;Mac OS X 10.6 Snow Leopardを標準としていますので、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;perl 5.8 → perl 5.10&lt;br /&gt;python 2.5 → python 2.6&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;となりました。rubyは1.8.6 → 1.8.7になっただけで1.8系はbinary compatibleです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;10.6 Snow Leopard で使う場合は、OS標準のものを自動的に使用しますが、&lt;br /&gt;10.4 Tiger, 10.5 Leopard で使う場合、またMacPortsのperl,python,rubyを使用する場合は、.vimrcで、&lt;br /&gt;&lt;br /&gt;let $PERL_DLL = "/opt/local/lib/perl5/5.10.0/darwin-2level/CORE/libperl.dylib"&lt;br /&gt;let $PYTHON_DLL = "/opt/local/lib/libpython2.6.dylib"&lt;br /&gt;let $RUBY_DLL = "/opt/local/lib/libruby.1.8.7.dylib"&lt;br /&gt;&lt;br /&gt;のように使用するshared libraryを指定してくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;それ以外のバージョンを使用する場合は自力でbuildする必要があります。Vim自体にもpatchが必要となる場合があります。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2516485605720806463?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2516485605720806463/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2516485605720806463' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2516485605720806463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2516485605720806463'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya-20090902-2.html' title='MacVim-KaoriYa 20090902 その2'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3038207279111803858</id><published>2009-09-02T22:49:00.004+09:00</published><updated>2009-09-03T10:33:05.303+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090902</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20090902版をアップしました。今回もSparkleフィードはあえて更新していません。&lt;br /&gt;&lt;br /&gt;10.4 Tiger/10.5 Leopard: i386/ppc 32bit Vim, 32bit MacVim&lt;br /&gt;10.6 Snow Leopard: x86_64 64bit Vim, 32bit MacVim&lt;br /&gt;&lt;br /&gt;というuniversalアプリになっています。&lt;br /&gt;&lt;br /&gt;是非動作確認をお願いいたします。&lt;br /&gt;&lt;br /&gt;いまのところSnow Leopard上では&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;スクロールバーが表示されない&lt;br /&gt;&lt;li&gt;ATSUIレンダラが正常動作しない&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;といった不具合があります。あとはATOKで部分確定すると確定部分が消える問題もあるようです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;(9/3 10:30 追記)&lt;br /&gt;&lt;br /&gt;10.5 Leopard intel で動作しませんでした。&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;PSMTabBarControlが10.6向けになっている(?)&lt;br /&gt;&lt;li&gt;Leopard intelでもx86_64を動作させようとしているが、x86_64は10.6向けのため動かない(?)&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;のようです。&lt;br /&gt;&lt;br /&gt;10.4 Tiger ppc/i386, 10.5 Leopard ppc での動作確認をお待ちしております。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3038207279111803858?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3038207279111803858/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3038207279111803858' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3038207279111803858'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3038207279111803858'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya-20090902.html' title='MacVim KaoriYa 20090902'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1211984648492575379</id><published>2009-09-01T09:29:00.004+09:00</published><updated>2009-09-01T15:34:34.955+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa と 半角カナ</title><content type='html'>&lt;a href="http://keireki.jp/ak/81620929012052521::18365121723600177760"&gt;http://keireki.jp/ak/81620929012052521::18365121723600177760&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;Mac使いにはMacVim香り屋版がおすすめです。 &lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;ご紹介ありがとうございます!&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;香り屋版ですらMacだと半角ｶﾅが正常に扱えない。。。orz&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;ぜひ具体例を教えてくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;文字コードの認識がおかしい場合は、&lt;br /&gt;「ファイル」「エンコード指定...」「開く...」か「再読込...」でコードを指定するか、&lt;br /&gt;&lt;pre&gt;:e ++enc=sjis&lt;/pre&gt; などでコードを指定してくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;なおASCII + CP932 半角カナ だけだと EUC-JP に認識されてしまう件は、&lt;a href="http://bit.ly/62JEo"&gt;Gauche由来のguessコードを改造してみました&lt;/a&gt;。次のリリースから適用されます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1211984648492575379?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1211984648492575379/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1211984648492575379' title='8 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1211984648492575379'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1211984648492575379'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/09/macvim-kaoriya.html' title='MacVim-KaoriYa と 半角カナ'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2560956337434931221</id><published>2009-08-29T21:49:00.002+09:00</published><updated>2009-08-29T22:01:10.498+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Snow Leopard と MacVim-KaoriYa</title><content type='html'>Mac OS X 10.6 Snow Leopard と MacVim-KaoriYa ですが、いまのところ気づいた不具合は以下の2点です。&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;ATSUIレンダラを使用するとスクロール時に描画不具合が発生(&lt;a href="http://code.google.com/p/macvim/issues/detail?id=196"&gt;http://code.google.com/p/macvim/issues/detail?id=196&lt;/a&gt;)&lt;br /&gt;&lt;dd&gt;現時点での対策: デフォルトではATSUIレンダラを使用しませんので問題ありません。MacVimメニュー「環境設定」「詳細」「ATSUIレンダラを使用する」チェックボックスをオフにしましょう。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;「Edit in MacVim ...」メニューが表示されない。&lt;br /&gt;&lt;dd&gt;現時点での対策: SIMBLと同じ理由で、64bitモードで起動しているアプリケーションでは外部エディタ連携が使用できません。使用したいアプリケーションを32bitモードで起動する必要があります。&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;なお、Snow Leopardに限らず、Leopardもですが、MacVim/MacVim-KaoriYa の次のリリースからTISを使ってIM制御するようになってますので、OS Xの環境設定「言語とテキスト」「入力ソースのオプション」「書類ごとに異なるものを使用」にするとMacVim/MacVim-KaoriYaのウインドウごとにIM制御が可能になります。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2560956337434931221?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2560956337434931221/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2560956337434931221' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2560956337434931221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2560956337434931221'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/08/snow-leopard-macvim-kaoriya.html' title='Snow Leopard と MacVim-KaoriYa'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5103335023032285397</id><published>2009-08-25T10:11:00.005+09:00</published><updated>2009-08-25T10:39:12.964+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa へのリンク</title><content type='html'>■WEB+DB PRESS Vol.52 Vimの流儀 &lt;a href="http://www.amazon.co.jp/dp/4774139300"&gt;http://www.amazon.co.jp/dp/4774139300&lt;/a&gt; &lt;br /&gt;&lt;br /&gt;必読です!&lt;br /&gt;&lt;br /&gt;発売とともにMacVim-KaoriYaのダウンロード数が増えました。ありがたいことです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■【レポート】Snow Leopardを快適にする - どれがいい? 自分にベストなMacのテキストエディタ(1) &lt;a href="http://journal.mycom.co.jp/articles/2009/08/25/texteditor/index.html"&gt;http://journal.mycom.co.jp/articles/2009/08/25/texteditor/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;伝統指向 エディタとしてリンクされています。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://smultron.sourceforge.net/"&gt;Smultron&lt;/a&gt;が載ってないと思ったら、開発終了してたんですね...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■&lt;a href="http://fifnel.com/2009/08/24/2912/"&gt;http://fifnel.com/2009/08/24/2912/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYa 20090823版が特に問題なく動いているようで何よりです。もうちょっと様子を見てSparkle feedを更新します。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Mac OS X 10.6 snow leopard では ATSUI レンダーがちゃんと動かないらしいのでインストール後調べるつもりです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5103335023032285397?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5103335023032285397/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5103335023032285397' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5103335023032285397'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5103335023032285397'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/08/macvim-kaoriya.html' title='MacVim-KaoriYa へのリンク'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5441497821347383609</id><published>2009-08-23T22:01:00.002+09:00</published><updated>2009-08-23T22:09:43.235+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090823</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYa を更新しました。MacVim snapshot 49ベースです。&lt;br /&gt;&lt;br /&gt;今回キー入力まわりがかなり変わり、キーバインドが効かなくなっているなどの不具合が想定されるため、&lt;br /&gt;あえて&lt;a href="http://macvim-kaoriya.googlecode.com/svn/wiki/latest.xml"&gt;Sparkleのfeed&lt;/a&gt;は更新していません。&lt;br /&gt;&lt;br /&gt;しかしIMインライン入力とIM制御が改善されているので使い勝手は向上しています。&lt;br /&gt;&lt;br /&gt;試していただいて、問題があってもなくても連絡(blogのコメントでも、mailでも、twitterでも)をいただけるとうれしいです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5441497821347383609?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5441497821347383609/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5441497821347383609' title='5 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5441497821347383609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5441497821347383609'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/08/macvim-kaoriya-20090823.html' title='MacVim KaoriYa 20090823'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6813512100106248395</id><published>2009-08-04T10:03:00.002+09:00</published><updated>2009-08-04T10:12:48.726+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim 保存ダイアログ</title><content type='html'>「コマンド(⌘) + w」で編集中のウインドウを閉じるとき、&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RGGAxF8f5a8/SneJJde2EUI/AAAAAAAAA38/_RyUFCSlZJE/s1600-h/dialog.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 90px;" src="http://1.bp.blogspot.com/_RGGAxF8f5a8/SneJJde2EUI/AAAAAAAAA38/_RyUFCSlZJE/s320/dialog.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5365908276661064002" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;てなダイアログが出ますが、単に破棄したいときに、いちいち「保存しない」ボタンをクリックしないといけません。&lt;br /&gt;&lt;br /&gt;面倒ですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;「コマンド(⌘) + d」で「保存しない」を選択できます。&lt;br /&gt;&lt;br /&gt;便利ですね。&lt;br /&gt;&lt;br /&gt;ちょっと前の &lt;a href="http://revision3.com/tekzilla/"&gt;tekzilla&lt;/a&gt; で知りました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;あと「ESC」で「キャンセル」を選択できます。「return」で「保存」ですね。&lt;br /&gt;&lt;br /&gt;あ、MacVimだけの話じゃなく、OS Xアプリケーション全般で有効です。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6813512100106248395?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6813512100106248395/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6813512100106248395' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6813512100106248395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6813512100106248395'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/08/macvim.html' title='MacVim 保存ダイアログ'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_RGGAxF8f5a8/SneJJde2EUI/AAAAAAAAA38/_RyUFCSlZJE/s72-c/dialog.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4724189463064313144</id><published>2009-08-03T20:33:00.003+09:00</published><updated>2009-08-03T20:48:33.502+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>vim-cocoa 0.3</title><content type='html'>&lt;a href="http://groups.google.com/group/vim_mac/browse_thread/thread/7b46cd5ff6624603"&gt;http://groups.google.com/group/vim_mac/browse_thread/thread/7b46cd5ff6624603&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;いつのまにか、&lt;a href="http://repo.or.cz/w/vim-cocoa.git"&gt;repo.or.cz&lt;/a&gt;から&lt;a href="http://github.com/jjgod/vim-cocoa/tree/master "&gt;github&lt;/a&gt;に移ってたんですね。&lt;br /&gt;&lt;br /&gt;rendering speedが一番速いはずですが、体感だとMacVim ATSUI renderingと比べて同等もしくは若干vim-cocoaの方が速いかも?しれない?くらいのような感じ。何か見落としがあるかもしれませんが。MacVim ATSUI rendering offに比べれば1.25倍くらい速そうです。&lt;br /&gt;&lt;br /&gt;いずれにせよMacVimにmergeして欲しい!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4724189463064313144?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4724189463064313144/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4724189463064313144' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4724189463064313144'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4724189463064313144'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/08/vim-cocoa-03.html' title='vim-cocoa 0.3'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3623538586603532429</id><published>2009-08-02T22:55:00.003+09:00</published><updated>2009-08-02T22:59:31.668+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090802</title><content type='html'>MacVim-KaoriYaを更新しました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;20090802版&lt;br /&gt;&lt;br /&gt;■vim7.2.245、MacVim snapshot 47 ベースです。&lt;br /&gt;&lt;br /&gt;■Cyberduckの外部エディタとして使用できるようになりました。&lt;br /&gt;&lt;br /&gt;■自動IM onを禁止できるようになりました(&lt;a href="http://blogger.splhack.org/2009/08/macvim-kaoriya-im-on.html"&gt;http://blogger.splhack.org/2009/08/macvim-kaoriya-im-on.html&lt;/a&gt;)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3623538586603532429?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3623538586603532429/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3623538586603532429' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3623538586603532429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3623538586603532429'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/08/macvim-kaoriya-20090802.html' title='MacVim KaoriYa 20090802'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3211568732658584602</id><published>2009-08-01T22:23:00.002+09:00</published><updated>2009-08-01T22:32:05.415+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 自動IM on禁止</title><content type='html'>&lt;pre&gt;inoremap &amp;lt;ESC&amp;gt; &amp;lt;ESC&amp;gt;:set iminsert=0&amp;lt;CR&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;でいけると思ったのですが、うまくいかない場合がありそうですので、確実にできるようにoptionを追加してしまいました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/splhack/statuses/3069704793"&gt;http://twitter.com/splhack/statuses/3069704793&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;MacVim-KaoriYa imdisableactivate を追加 &lt;a href="http://bit.ly/7eGza"&gt;http://bit.ly/7eGza&lt;/a&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;:set imdisableactivate&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;もしくは&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;:set imda&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;でIMをonにしなくなります。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;リリースはMacVimの更新待ちです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3211568732658584602?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3211568732658584602/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3211568732658584602' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3211568732658584602'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3211568732658584602'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/08/macvim-kaoriya-im-on.html' title='MacVim-KaoriYa 自動IM on禁止'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-601895632316510355</id><published>2009-07-21T14:00:00.004+09:00</published><updated>2009-07-21T14:26:22.501+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim etc</title><content type='html'>■&lt;a href="http://twitter.com/hamaco/status/1144051421"&gt;http://twitter.com/hamaco/status/1144051421&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;TerminalとかMacVimでC-jで日本語入力がしたい。&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;:inoremap &amp;lt;C-j&amp;gt; &amp;lt;C-^&amp;gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;でいけるんじゃないかと思います。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■&lt;a href="http://twitter.com/nekoya/status/2647362030"&gt;http://twitter.com/nekoya/status/2647362030&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;MacVim-kaoriyaで単純なペーストがエラーで止まった。&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;ぜひとも .vimrc, .gvimrc, .vim を提供してくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■&lt;a href="http://twitter.com/nekoya/status/2683243397"&gt;http://twitter.com/nekoya/status/2683243397&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;もしかして、MacVimのIM制御ってターミナルからだと効かない？&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;MacVim-KaoriYa&lt;/a&gt;だと、効きます。というと語弊がありますが、香り屋パッチの機能のひとつであるUIM対応により、コンソール版はUIMを制御することが可能です。&lt;br /&gt;&lt;br /&gt;MacUIM &lt;a href="http://code.google.com/p/macuim/"&gt;http://code.google.com/p/macuim/&lt;/a&gt; をインストールして&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;LANG=ja_JP.UTF-8 /Library/Frameworks/UIM.framework/Versions/Current/bin/uim-fep -u anthy-utf8 -e /Applications/MacVim.app/Contents/MacOS/Vim&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;など。uim Anthy vi協調モード でぐぐるとより良い設定もできると思います。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;これを応用して、uim-mactsm &lt;a href="http://slashdot.jp/~ek/journal/346651"&gt;http://slashdot.jp/~ek/journal/346651&lt;/a&gt; が使えれば、コンソールからことえりを制御することも可能なはずですが、いまのところLeopardでは成功していません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-601895632316510355?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/601895632316510355/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=601895632316510355' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/601895632316510355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/601895632316510355'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/macvim-etc.html' title='MacVim etc'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-9184982116518666395</id><published>2009-07-17T12:51:00.002+09:00</published><updated>2009-07-17T12:57:32.984+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android OpenWnn</title><content type='html'>&lt;a href="http://android.git.kernel.org/?p=platform/packages/inputmethods/OpenWnn.git;a=summary"&gt;http://android.git.kernel.org/?p=platform/packages/inputmethods/OpenWnn.git;a=summary&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;OpenWnnが復活してますね。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ git clone git://android.git.kernel.org/platform/packages/inputmethods/OpenWnn.git&lt;br /&gt;$ cd OpenWnn&lt;br /&gt;$ git log -p&lt;br /&gt;fatal: bad default revision 'HEAD'&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;HEADがない&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ git branch -a&lt;br /&gt;  remotes/origin/cupcake&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;masterがないからみたいですね。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;$ git checkout -b cupcake remotes/origin/cupcake&lt;br /&gt;warning: You appear to be on a branch yet to be born.&lt;br /&gt;warning: Forcing checkout of remotes/origin/cupcake.&lt;br /&gt;Checking out files: 100% (285/285), done.&lt;br /&gt;Branch cupcake set up to track remote branch cupcake from origin.&lt;br /&gt;Switched to a new branch 'cupcake'&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;Android.mk&lt;br /&gt;AndroidManifest.xml&lt;br /&gt;MODULE_LICENSE_APACHE2&lt;br /&gt;NOTICE&lt;br /&gt;README.txt&lt;br /&gt;libs&lt;br /&gt;res&lt;br /&gt;src&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;さて、iWnnとOpenWnnの違いや如何に。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-9184982116518666395?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/9184982116518666395/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=9184982116518666395' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9184982116518666395'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9184982116518666395'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/android-openwnn.html' title='Android OpenWnn'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-90612606316924165</id><published>2009-07-17T09:28:00.003+09:00</published><updated>2009-07-17T09:50:07.008+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa 20090711 の不具合</title><content type='html'>MacVim-KaoriYa 20090711版ですが、&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;2つ不具合が判明しています。修正され次第リリースする予定です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■ vim_mac ML: MacVim.app Snapshot 47&lt;br /&gt;&lt;a href="http://groups.google.com/group/vim_mac/browse_thread/thread/e08d96e654222a65"&gt;http://groups.google.com/group/vim_mac/browse_thread/thread/e08d96e654222a65&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;新規ウインドウでテキストを入力後、⌘(コマンド)-w で出てくるダイアログで「保存」を選択。ファイルネームを入力して「保存」するとSIGSEGVでMacVim-KaoriYaが終了してしまいます。&lt;br /&gt;:wqやZZなどvi的な保存終了方法であれば問題ありません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■ vim_dev ML: Crash with vimgrep&lt;br /&gt;&lt;a href="http://groups.google.com/group/vim_dev/browse_thread/thread/8799d86ddd2ee08d"&gt;http://groups.google.com/group/vim_dev/browse_thread/thread/8799d86ddd2ee08d&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;vimgrep でSIGBUSでMacVim-KaoriYaが終了してしまいます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-90612606316924165?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/90612606316924165/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=90612606316924165' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/90612606316924165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/90612606316924165'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/macvim-kaoriya-20090711_17.html' title='MacVim-KaoriYa 20090711 の不具合'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6207259634940257991</id><published>2009-07-16T23:18:00.002+09:00</published><updated>2009-07-16T23:22:33.362+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim-KaoriYa チュートリアル</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://macvim-kaoriya.googlecode.com/svn/wiki/tutorial_0/img0.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 316px;" src="http://macvim-kaoriya.googlecode.com/svn/wiki/tutorial_0/img0.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYa チュートリアルです。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Tutorial_0"&gt;http://code.google.com/p/macvim-kaoriya/wiki/Tutorial_0&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;このあと rogue を起動して h j k l に慣れよう編が始まるわけですが、OS X には標準で rogue が入ってません。残念ですね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6207259634940257991?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6207259634940257991/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6207259634940257991' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6207259634940257991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6207259634940257991'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/macvim-kaoriya.html' title='MacVim-KaoriYa チュートリアル'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7429638734664636677</id><published>2009-07-16T13:33:00.002+09:00</published><updated>2009-07-16T13:39:56.331+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android gdbclient</title><content type='html'>&lt;a href="http://gist.github.com/147523"&gt;http://gist.github.com/147523&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;pidは毎回変わるけど引数3番目なので使いやすくしてみました。&lt;br /&gt;cupcakeだと/system/binにgdbserverいますよね。source build/envsetup.shしといて、&lt;br /&gt;&lt;code&gt;gdbclient 888&lt;/code&gt;&lt;br /&gt;とかで該当pidに接続できます。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2009/01/android-dev-phone-1-12.html"&gt;http://blogger.splhack.org/2009/01/android-dev-phone-1-12.html&lt;/a&gt; のほぼ自動化。&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint" id="bash"&gt;diff --git a/envsetup.sh b/envsetup.sh&lt;br /&gt;index f8f20ab..c54c1d5 100644&lt;br /&gt;--- a/envsetup.sh&lt;br /&gt;+++ b/envsetup.sh&lt;br /&gt;@@ -704,26 +704,26 @@ function gdbclient()&lt;br /&gt;    local OUT_EXE_SYMBOLS=$(get_abs_build_var TARGET_OUT_EXECUTABLES_UNSTRIPPED)&lt;br /&gt;    local PREBUILTS=$(get_abs_build_var ANDROID_PREBUILTS)&lt;br /&gt;    if [ "$OUT_ROOT" -a "$PREBUILTS" ]; then&lt;br /&gt;-       local EXE="$1"&lt;br /&gt;+       local EXE="$2"&lt;br /&gt;        if [ "$EXE" ] ; then&lt;br /&gt;-           EXE=$1&lt;br /&gt;+           EXE=$2&lt;br /&gt;        else&lt;br /&gt;            EXE="app_process"&lt;br /&gt;        fi&lt;br /&gt; &lt;br /&gt;-       local PORT="$2"&lt;br /&gt;+       local PORT="$3"&lt;br /&gt;        if [ "$PORT" ] ; then&lt;br /&gt;-           PORT=$2&lt;br /&gt;+           PORT=$3&lt;br /&gt;        else&lt;br /&gt;            PORT=":5039"&lt;br /&gt;        fi&lt;br /&gt; &lt;br /&gt;        local PID&lt;br /&gt;-       local PROG="$3"&lt;br /&gt;+       local PROG="$1"&lt;br /&gt;        if [ "$PROG" ] ; then&lt;br /&gt;-           PID=`pid $3`&lt;br /&gt;+           PID=$1&lt;br /&gt;            adb forward "tcp$PORT" "tcp$PORT"&lt;br /&gt;-           adb shell gdbserver $PORT --attach $PID &amp;&lt;br /&gt;+           adb shell su -c gdbserver $PORT --attach $PID &amp;&lt;br /&gt;            sleep 2&lt;br /&gt;        else&lt;br /&gt;                echo ""&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7429638734664636677?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7429638734664636677/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7429638734664636677' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7429638734664636677'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7429638734664636677'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/android-gdbclient.html' title='Android gdbclient'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7685844745240083803</id><published>2009-07-16T06:28:00.005+09:00</published><updated>2009-07-16T11:55:10.105+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim フォント設定</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RGGAxF8f5a8/Sl5KSLBt44I/AAAAAAAAA30/M38UmU23Glc/s1600-h/17521459.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 222px;" src="http://2.bp.blogspot.com/_RGGAxF8f5a8/Sl5KSLBt44I/AAAAAAAAA30/M38UmU23Glc/s320/17521459.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5358802282675561346" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/splhack/status/2651318201"&gt;http://twitter.com/splhack/status/2651318201&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;a href="http://twitpic.com/afjn7"&gt;http://twitpic.com/afjn7&lt;/a&gt; - set guifont=Andale\ Mono:h14 set guifontwide=ヒラギノ角ゴ\ StdN\ W8:h14&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/splhack/status/2651369722"&gt;http://twitter.com/splhack/status/2651369722&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;guifontとguifontwideで別のフォントにするとメリハリがでていいかも。編集のフォントパネルから変更するとguifontしか変わらないので変になりますが、:set guifont? で値の確認に使えます。&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;メニューから「編集」「フォント」「フォントパネルを表示」を選択するとフォントが選択できます。ヒラギノなどを選択すると文字間が広がって変な感じになりますが、とりあえず気にしません。&lt;br /&gt;&lt;br /&gt;使いたいフォントを選択したら、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;:set guifont?&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;と打ちます。表示されたものを .gvimrc に書きましょう。スペースが含まれている場合はスペースの前にバックスラッシュを入れる必要があります(例: &lt;code&gt;set guifontwide=ヒラギノ角ゴ\ StdN\ W8:h14&lt;/code&gt;)。&lt;br /&gt;&lt;br /&gt;もしくは&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;:mkvimrc vimrc_font&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;と打てば、vimrc_fontファイルに現在の設定が書き出されます。guifont部分を抜き出しましょう。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;set guifont=Osaka:h14&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;など等幅でないフォントを指定すると文字間が大変なことになりますが、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;set guifont=Andale\ Mono:h14&lt;br /&gt;set guifontwide=ヒラギノ角ゴ\ StdN\ W8:h14&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;などguifontに等幅のフォントを指定しておけばそれっぽく見えると思います。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;フォントサイズを変えるのもフォントパネルからできますし、または⌘ (コマンドキー)を押しながら「=」か「-」を押せばさくさく変更できます。set guifont?やmkvimrcなどで .gvimrc に書いておきましょう。&lt;br /&gt;&lt;br /&gt;(7/16 追記)&lt;br /&gt;&lt;br /&gt;メニュー「MacVim」「環境設定」「詳細」「ATSUIレンダラを使用する」をチェックしていると、たとえばヒラギノ角ゴ StdN W8のウエイトが効いてないような状態になります。チェックせずにご使用くださいませ。&lt;br /&gt;&lt;br /&gt;またOsaka-Mono(標準設定)だと ⌘ =, - が効かないようです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7685844745240083803?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7685844745240083803/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7685844745240083803' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7685844745240083803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7685844745240083803'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/macvim.html' title='MacVim フォント設定'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_RGGAxF8f5a8/Sl5KSLBt44I/AAAAAAAAA30/M38UmU23Glc/s72-c/17521459.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4851450462316943806</id><published>2009-07-14T22:47:00.004+09:00</published><updated>2009-07-14T22:59:28.735+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>android gdbserver gdbclient clewn</title><content type='html'>build/envsetup.sh を書き換えて、&lt;code&gt;source build/envsetup.sh&lt;/code&gt;。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://gist.github.com/146948"&gt;http://gist.github.com/146948&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;adb shell setprop debug.db.uid 32767&lt;/code&gt; して、&lt;br /&gt;&lt;br /&gt;止まったら、adb logcatのpid見て(たとえば888)、android source directory(repo syncしてるとこ)で、&lt;br /&gt;&lt;br /&gt;&lt;code&gt;gdbclient app_process :5039 888&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;するとclewn越しのarm-eabi-gdbと、clewnにつながったMacVimが起動します。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RGGAxF8f5a8/SlyONo-jxpI/AAAAAAAAA3s/DvWEV_KVKX8/s1600-h/android_clewn.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 153px;" src="http://4.bp.blogspot.com/_RGGAxF8f5a8/SlyONo-jxpI/AAAAAAAAA3s/DvWEV_KVKX8/s320/android_clewn.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5358314021653300882" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;こんな感じ。起動時に時間がかかるのがなんとかなれば!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4851450462316943806?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4851450462316943806/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4851450462316943806' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4851450462316943806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4851450462316943806'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/android-gdbserver-gdbclient-clewn.html' title='android gdbserver gdbclient clewn'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_RGGAxF8f5a8/SlyONo-jxpI/AAAAAAAAA3s/DvWEV_KVKX8/s72-c/android_clewn.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1592439845655661044</id><published>2009-07-13T22:48:00.003+09:00</published><updated>2009-07-13T22:58:08.829+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>clewnの使い方</title><content type='html'>gdbでa.outをデバッグする場合、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;__NETBEANS_HOST=localhost __NETBEANS_SOCKET=3219 /Applications/MacVim.app/Contents/MacOS/clewn -vc /Applications/MacVim.app/Contents/MacOS/Vim -va '-g -nb -c "run clewn.vim"' -ga a.out&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;とすればいけます。aliasなりscriptなりを用意しとくと便利です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;androidでは、build/envsetup.sh の arm-eabi-gdb 呼び出しているところを書き換えたりするといいのではないかと。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1592439845655661044?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1592439845655661044/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1592439845655661044' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1592439845655661044'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1592439845655661044'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/clewn.html' title='clewnの使い方'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4986408755324614965</id><published>2009-07-11T23:04:00.004+09:00</published><updated>2009-07-11T23:22:25.499+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090711</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RGGAxF8f5a8/Slifq1AtZZI/AAAAAAAAA3E/5nfTNXhO39Y/s1600-h/vimshell.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 311px; height: 320px;" src="http://3.bp.blogspot.com/_RGGAxF8f5a8/Slifq1AtZZI/AAAAAAAAA3E/5nfTNXhO39Y/s320/vimshell.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5357207314890581394" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;更新しました。&lt;br /&gt;&lt;br /&gt;&lt;a href="feed://macvim-kaoriya.googlecode.com/svn/wiki/latest.xml"&gt;feed://macvim-kaoriya.googlecode.com/svn/wiki/latest.xml&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;MacVim snapshot 46ベース、vimproc同梱、clewn同梱 です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;+netbeans_intgなのにnetbeansの外部エディタとしては(私の知る限り)使えないものの、eclim で eclipse から +netbeans_intg 経由でMacVimを使えるようです。が、-nb:localhost:port がちゃんとわたってないのか、ちょっと工夫が必要です。あと現状外部ウィンドウになります。clewnも含めていろいろと改善の余地ありです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;vimprocは、vimshell用です。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/Shougo/vimshell/"&gt;http://github.com/Shougo/vimshell/&lt;/a&gt;&lt;br /&gt;&lt;a href="http://github.com/Shougo/vimshell/blob/master/presen/vimshell.txt"&gt;http://github.com/Shougo/vimshell/blob/master/presen/vimshell.txt&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;vimshell同梱のautoload/proc.vimはインストール不要です(proc.vimがあるディレクトリにproc.soがあることを期待してますので、vimshellのproc.vimをいれるとエラーが発生します)。&lt;br /&gt;&lt;br /&gt;お楽しみくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4986408755324614965?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4986408755324614965/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4986408755324614965' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4986408755324614965'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4986408755324614965'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/macvim-kaoriya-20090711.html' title='MacVim KaoriYa 20090711'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_RGGAxF8f5a8/Slifq1AtZZI/AAAAAAAAA3E/5nfTNXhO39Y/s72-c/vimshell.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-9159180299742396755</id><published>2009-07-03T23:00:00.000+09:00</published><updated>2009-07-03T23:00:09.280+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim, MacVim-KaoriYa の不具合</title><content type='html'>&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;&lt;a href="http://cooldaemon.tumblr.com/post/127823725/macvim-kaoriya-tiger-10-4"&gt;http://cooldaemon.tumblr.com/post/127823725/macvim-kaoriya-tiger-10-4&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;何故か、MacVim だと動く rails.vim が動かなくなった。&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;MacVimとMacVim-KaoriYaとで、vim scriptの実行で違いがあるとすれば、日本語化関係か、香り屋パッチ由来のvim scriptでしょうか。&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Readme#%E9%A6%99%E3%82%8A%E5%B1%8B%E7%89%88%E3%81%AE%E6%83%85%E5%A0%B1"&gt;http://code.google.com/p/macvim-kaoriya/wiki/Readme#香り屋版の情報&lt;/a&gt; で問題を切り分けられるかもしれません。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;&lt;a href="http://twitter.com/hagino_3000/statuses/2165316831"&gt;http://twitter.com/hagino_3000/statuses/2165316831&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;現状ではmacvimで NERD_tree.vim, fuzzyfinder.vim がまったく使いものにならない、うーん&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;MacVim stable 1.2か snapshot 45でしょうか。MacVim-KaoriYaでは、ちょっと試した限りでは使えているのですが(&lt;a href="http://blogger.splhack.org/2009/05/macvim-kaoriya-snipmatevim-fuzzyfinder.html"&gt;http://blogger.splhack.org/2009/05/macvim-kaoriya-snipmatevim-fuzzyfinder.html&lt;/a&gt;)、使いものにならないというのはどういう状態なのか知りたいです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;&lt;a href="http://twitter.com/kei_s/status/2207985546"&gt;http://twitter.com/kei_s/status/2207985546&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;MacVim が落ちるのをどうにかしたい。&lt;/blockquote&gt;&lt;br /&gt;&lt;dt&gt;&lt;a href="http://twitter.com/toshipon/status/2405311523"&gt;http://twitter.com/toshipon/status/2405311523&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;MacVimがクラッシュしまくってMacBookのファンが大回転してる。なんですかこれ&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;dd&gt;こちらもMacVim stable 1.2(vim 7.2.0)かsnapshot 45(vim 7.2.148)でしょうか。patchにより修正された不具合かもしれませんし、それ以外の未知の不具合かもしれません。再現方法がわかりましたら是非教えてくださいませ。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;&lt;a href="http://twitter.com/lainl/status/2295979428"&gt;http://twitter.com/lainl/status/2295979428&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;MacVim設定ファイルが全くないので初めから書かなきゃいけない&lt;/blockquote&gt;&lt;br /&gt;&lt;dd&gt;メニューの「編集」から、いろいろと好みの設定に変更したら、&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;:mkvimrc ~/.vimrc&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;と入力すれば設定ファイルを作成できます。&lt;br /&gt;&lt;br /&gt;インストール後、MacVimを起動して、&lt;code&gt;:mkvimrc ~/vimrc0&lt;/code&gt;、いろいろメニューから設定を変えて、&lt;code&gt;:mkvimrc ~/vimrc1&lt;/code&gt;。でもって、&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;:edit ~/vimrc0&lt;br /&gt;:diffsplit ~/vimrc1&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;とすれば、変えたとこだけわかりますから、それだけ ~/.vimrc に保存するとかですね。&lt;br /&gt;&lt;br /&gt;もしくはXcode付属のFileMergeもオススメです。&lt;br /&gt;&lt;/dl&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-9159180299742396755?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/9159180299742396755/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=9159180299742396755' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9159180299742396755'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9159180299742396755'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/macvim-macvim-kaoriya.html' title='MacVim, MacVim-KaoriYa の不具合'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3894403680915796711</id><published>2009-07-03T09:45:00.000+09:00</published><updated>2009-07-03T09:53:02.160+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android shared library</title><content type='html'>Androidのlinkerは/system/libか/libしか探してくれません。LD_LIBRARY_PATHを見てほしい。けどセキュリティ的な話か。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://android.git.kernel.org/?p=platform/bionic.git;a=blob;f=linker/linker.c;hb=HEAD"&gt;http://android.git.kernel.org/?p=platform/bionic.git;a=blob;f=linker/linker.c;hb=HEAD&lt;/a&gt; open_library関数参照。&lt;br /&gt;&lt;br /&gt;でも絶対パスが使えちゃいます。&lt;br /&gt;&lt;br /&gt;build/tools/soslim&lt;br /&gt;external/elfcopy&lt;br /&gt;external/elfutils&lt;br /&gt;&lt;br /&gt;あたりも要チェック。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;あ、dlopenなら、読めるところならばどこにあってもどうとでもなります。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3894403680915796711?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3894403680915796711/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3894403680915796711' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3894403680915796711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3894403680915796711'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/android-shared-library.html' title='Android shared library'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-8478994941099763436</id><published>2009-07-01T11:14:00.003+09:00</published><updated>2009-07-01T11:32:34.649+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>Mac OS X 用 Vim のいろいろ</title><content type='html'>まとめてみました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Difference"&gt;http://code.google.com/p/macvim-kaoriya/wiki/Difference&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYa ですが、&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;香り屋パッチの機能は必要ない、日本語化もされてなくていい、GUIは不要 コンソールで使う、といった方でも、日本語文字コード自動判別、必要なshared library、Perl/Python/Rubyのdynamic loading、Objective-C対応ctags同梱、などの利点がありますのでオススメです。&lt;br /&gt;もちろんソースコードからもビルドできますから安心。&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Building"&gt;http://code.google.com/p/macvim-kaoriya/wiki/Building&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;以下のVimを使うなら、MacVim-KaoriYaをオススメします。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://lapangan.net/darwinports/index.php?PrivatePortfile%2FVim"&gt;http://lapangan.net/darwinports/index.php?PrivatePortfile%2FVim&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lapangan.net/darwinports/index.php?PrivatePortfile%2FVim72"&gt;http://lapangan.net/darwinports/index.php?PrivatePortfile%2FVim72&lt;/a&gt;&lt;br /&gt;&lt;a href="http://lapangan.net/darwinports/index.php?PrivatePortfile%2FMacVim"&gt;http://lapangan.net/darwinports/index.php?PrivatePortfile%2FMacVim&lt;/a&gt;&lt;br /&gt;&lt;a href="http://sourceforge.jp/projects/splhack/releases?package_id=6373"&gt;http://sourceforge.jp/projects/splhack/releases?package_id=6373&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;font size=small&gt;もうほとんどメンテナンスしてないですしね...&lt;/font&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-8478994941099763436?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/8478994941099763436/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=8478994941099763436' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8478994941099763436'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/8478994941099763436'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/07/mac-os-x-vim.html' title='Mac OS X 用 Vim のいろいろ'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-9188590243564776848</id><published>2009-06-26T06:23:00.002+09:00</published><updated>2009-06-26T06:51:57.888+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim +netbeans_intg</title><content type='html'>MacVim に +netbeans_intg を実装しました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://bit.ly/qMb8o"&gt;http://bit.ly/qMb8o&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;注意してpatch作ったんですが(とくにwhitespace)、突っ込まれました。注意不足。てへ。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://clewn.sourceforge.net/"&gt;http://clewn.sourceforge.net/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;clewnが使えるようになります。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RGGAxF8f5a8/SkPrWwzXIfI/AAAAAAAAA1A/ZgaTeP6lj10/s1600-h/clewn.jpg"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 244px;" src="http://4.bp.blogspot.com/_RGGAxF8f5a8/SkPrWwzXIfI/AAAAAAAAA1A/ZgaTeP6lj10/s400/clewn.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5351379558536258034" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;vimgdbでもほぼ同じですが、clewn自体をremoteで動かしたり、crossで使ったり、他のnetbeans protocol使うものも使えたりします。&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYaにはclewnを同梱するつもりです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-9188590243564776848?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/9188590243564776848/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=9188590243564776848' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9188590243564776848'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9188590243564776848'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/06/macvim-netbeansintg.html' title='MacVim +netbeans_intg'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_RGGAxF8f5a8/SkPrWwzXIfI/AAAAAAAAA1A/ZgaTeP6lj10/s72-c/clewn.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4574398591383186342</id><published>2009-06-20T22:00:00.005+09:00</published><updated>2009-06-20T22:35:43.364+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090620</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;更新しました。&lt;br /&gt;&lt;br /&gt;久々に更新されたMacVimに追従しました。Vim 7.2.209です。あとTigerでもちゃんと起動するはずです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4574398591383186342?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4574398591383186342/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4574398591383186342' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4574398591383186342'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4574398591383186342'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/06/macvim-kaoriya-20090620.html' title='MacVim KaoriYa 20090620'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1860857141080279271</id><published>2009-06-03T22:17:00.005+09:00</published><updated>2009-06-15T16:36:12.533+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>vim-ruby-debugger + MacVim</title><content type='html'>vim-ruby-debugger&lt;br /&gt;&lt;a href="http://github.com/astashov/vim-ruby-debugger/tree/master"&gt;http://github.com/astashov/vim-ruby-debugger/tree/master&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;いまのところ Mac OS X 上で +clientserver できるのは MacVim だけ (MacVim-KaoriYa も。X11使ったやつもいけるかも?)。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;こんな感じでRailsアプリやrubyスクリプトをデバッグできます。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RGGAxF8f5a8/SiZ84Vdp1TI/AAAAAAAAA0I/Td2dO8q-b9g/s1600-h/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3+1.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 256px; height: 320px;" src="http://3.bp.blogspot.com/_RGGAxF8f5a8/SiZ84Vdp1TI/AAAAAAAAA0I/Td2dO8q-b9g/s320/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3+1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5343095315197711666" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;gemでruby-debug-ideを入れときます。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;sudo gem install ruby-debug-ide&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;vim-ruby-debuggerを持ってきます。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;git clone git://github.com/astashov/vim-ruby-debugger.git&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;del&gt;debuggerのportなどを取得するためのlsofの引数あたりを、ちょっと変える必要があります(feedback予定)。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://gist.github.com/122977"&gt;http://gist.github.com/122977&lt;/a&gt;&lt;/del&gt; (2009/6/15 追記: 取り込まれました)&lt;br /&gt;&lt;br /&gt;~/.vimに入れます。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;~/.vim/bin/ruby_debugger.rb&lt;br /&gt;~/.vim/doc/ruby_debugger.txt&lt;br /&gt;~/.vim/plugin/ruby_debugger.vim&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;実行します。&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;:Rdebugger a.rb&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;とかスクリプトを指定することもできます。指定しないとRails前提です。&lt;br /&gt;&lt;br /&gt;&lt;code&gt;\b&lt;/code&gt; で breakpoint 設定とかですね。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1860857141080279271?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1860857141080279271/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1860857141080279271' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1860857141080279271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1860857141080279271'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/06/vim-ruby-debugger-macvim.html' title='vim-ruby-debugger + MacVim'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_RGGAxF8f5a8/SiZ84Vdp1TI/AAAAAAAAA0I/Td2dO8q-b9g/s72-c/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3+1.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4763551734738668428</id><published>2009-06-02T20:40:00.003+09:00</published><updated>2009-06-02T20:52:09.967+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa on Tiger (Mac OS X 10.4) 解決編</title><content type='html'>&lt;a href="http://creazy.net/2009/05/macbook_setup5_development.html"&gt;http://creazy.net/2009/05/macbook_setup5_development.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ということで、Tiger (Mac OS X 10.4) でMacVim KaoriYaを使用される場合は、&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2009/06/macvim-kaoriya-on-tiger-mac-os-x-104.html"&gt;http://blogger.splhack.org/2009/06/macvim-kaoriya-on-tiger-mac-os-x-104.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/libintl.zip"&gt;http://macvim-kaoriya.googlecode.com/files/libintl.zip&lt;/a&gt;&lt;br /&gt;を展開して、/Applications/MacVim.app/Contents/Frameworks/libintl.dylib を入れ替えてご利用くださいませ。&lt;br /&gt;&lt;br /&gt;次のリリースからちゃんとTiger, Leopard, universalになります。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4763551734738668428?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4763551734738668428/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4763551734738668428' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4763551734738668428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4763551734738668428'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/06/macvim-kaoriya-on-tiger-mac-os-x-104_02.html' title='MacVim KaoriYa on Tiger (Mac OS X 10.4) 解決編'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4196992562732588756</id><published>2009-06-02T08:38:00.003+09:00</published><updated>2009-06-02T08:48:17.441+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa on Tiger (Mac OS X 10.4)</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;ですが、Tiger, Leopard, Universal をうたっておきながら実はTigerで起動しないという体たらく。&lt;br /&gt;&lt;br /&gt;このままLeopard専用ってことで、CoreText導入とか新IMフレームワークとか使っちゃえばいいとか思いましたが、とりあえず置いておいて。&lt;br /&gt;&lt;br /&gt;MacVim部分はTigerでもいけるんですが、Vimで使ってるlibintl.dylibがTigerで動きませんでした。&lt;br /&gt;&lt;br /&gt;LeopardのlibSystem.B.dylibに含まれるpthreadの新APIをlinkしちゃうとTigerのlibSystem.B.dylibでlinkできないわけです。&lt;br /&gt;&lt;br /&gt;もしTigerお持ちの方がいらっしゃいましたら、&lt;br /&gt;&lt;br /&gt;&lt;a href="http://macvim-kaoriya.googlecode.com/files/libintl.zip"&gt;http://macvim-kaoriya.googlecode.com/files/libintl.zip&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;を展開して、/Applications/MacVim.app/Contents/Frameworks/libintl.dylib を入れ替えて起動するか試していただけると大変うれしいです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Vimのpatchたくさん更新されてますが、MacVim自体が更新されてないのでこちらも更新してません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4196992562732588756?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4196992562732588756/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4196992562732588756' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4196992562732588756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4196992562732588756'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/06/macvim-kaoriya-on-tiger-mac-os-x-104.html' title='MacVim KaoriYa on Tiger (Mac OS X 10.4)'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1725075017135604463</id><published>2009-05-29T05:58:00.002+09:00</published><updated>2009-05-29T06:31:24.671+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android Native Development Kit (NDK)</title><content type='html'>&lt;a href="http://android.git.kernel.org/?p=platform/development.git;a=blob_plain;f=pdk/ndk/Android_NDK_README.html;hb=HEAD"&gt;http://android.git.kernel.org/?p=platform/development.git;a=blob_plain;f=pdk/ndk/Android_NDK_README.html;hb=HEAD&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Android NDKですが、JNI shared libraryをbuildできるようにするために、Android SDKの様に、必要なツールとかMakefileとかを抜き出してまとめたものなわけですね。repoで全部sourceひっぱらなくてもNDKだけあればbuildできるようになったと。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;JNI shared libraryを新しく入れるにはrootになれないといけない&lt;br /&gt;&lt;br /&gt;というのは間違いで、platform別にshared libraryをapkに入れられる仕組みが元々あって&lt;br /&gt;&lt;br /&gt;&lt;a href="http://android.git.kernel.org/?p=platform/development.git;a=blob;f=pdk/ndk/samples/samplejni/Makefile;h=18e97df4e00729ac448af2cca8d1fbdbf434fd89;hb=HEAD"&gt;http://android.git.kernel.org/?p=platform/development.git;a=blob;f=pdk/ndk/samples/samplejni/Makefile;h=18e97df4e00729ac448af2cca8d1fbdbf434fd89;hb=HEAD&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;というようにshared libraryをapkに突っ込めます。普通にapkインストールするだけで自前のshared libraryをJNIで使えます。&lt;br /&gt;&lt;br /&gt;NDKよりsourceひっぱってきてAndroid.mk使う方がMakefile書かなくて良い分楽だと思いますけども(&lt;a href="http://blogger.splhack.org/2009/05/android-jni-shared-library.html"&gt;http://blogger.splhack.org/2009/05/android-jni-shared-library.html&lt;/a&gt;)。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/android-ruby/source/browse/trunk/irbapp/Android.mk"&gt;http://code.google.com/p/android-ruby/source/browse/trunk/irbapp/Android.mk&lt;/a&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/android-ruby/source/browse/trunk/lib/Android.mk"&gt;http://code.google.com/p/android-ruby/source/browse/trunk/lib/Android.mk&lt;/a&gt;&lt;br /&gt;とか。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;scummvm-android &lt;a href="http://sites.google.com/site/scummvmandroid/"&gt;http://sites.google.com/site/scummvmandroid/&lt;/a&gt; も興味深いことをやってます。&lt;br /&gt;&lt;a href="http://sourceforge.net/tracker/index.php?func=detail&amp;aid=2603856&amp;group_id=37116&amp;atid=418822"&gt;http://sourceforge.net/tracker/index.php?func=detail&amp;aid=2603856&amp;group_id=37116&amp;atid=418822&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1725075017135604463?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1725075017135604463/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1725075017135604463' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1725075017135604463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1725075017135604463'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/android-native-development-kit-ndk.html' title='Android Native Development Kit (NDK)'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-4349170396004555463</id><published>2009-05-21T06:00:00.002+09:00</published><updated>2009-05-21T06:25:15.098+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>sudo MacVim</title><content type='html'>Mac Vim 再び&lt;br /&gt;&lt;a href="http://pc11.2ch.net/test/read.cgi/mac/1133534694/276"&gt;http://pc11.2ch.net/test/read.cgi/mac/1133534694/276&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;MacVimからだとsudo使って開いても読込専用で編集できない &lt;br /&gt;ファイルがあるんですが（apacheの設定ファイルとか）最初からあるvimだと編集できます。&lt;br /&gt;どうすればMacVimで編集できるでしょうか？&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;sudo open -a MacVim&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;だとsudoで得た権限が引き継がれないようですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;sudo /Applications/MacVim.app/Content/MacOS/Vim -g /opt/local/apache2/conf/httpd.conf&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;であれば編集できそうです。&lt;br /&gt;&lt;br /&gt;MacVimが起動していなかった場合、以降の新ウインドウはすべてroot。&lt;br /&gt;&lt;br /&gt;MacVimが起動していた場合、そのウインドウだけroot。&lt;br /&gt;&lt;br /&gt;みたいです。MacVimを起動した状態でVim -gするのが安全ですね。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;ps auxww|grep -i vim&lt;/code&gt;で確認できます。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-4349170396004555463?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/4349170396004555463/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=4349170396004555463' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4349170396004555463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/4349170396004555463'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/sudo-macvim.html' title='sudo MacVim'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-7473812824750122154</id><published>2009-05-18T20:56:00.003+09:00</published><updated>2009-05-18T21:15:43.914+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa snipMate.vim, Fuzzyfinder, 最大化</title><content type='html'>&lt;a href="http://twitter.com/mickey24/status/1781868117"&gt;http://twitter.com/mickey24/status/1781868117&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;MacVimでsnipMate.vimが動作しない，FuzzyfinderのMRUがきかない，起動時に最大化できない，などなど．原因がよく分からない．&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;dl&gt;&lt;br /&gt;&lt;dt&gt;snipMate.vim&lt;br /&gt;&lt;dd&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_RGGAxF8f5a8/ShFO_JYDWgI/AAAAAAAAAzg/JJu200nSeTY/s1600-h/snipmate.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 81px;" src="http://3.bp.blogspot.com/_RGGAxF8f5a8/ShFO_JYDWgI/AAAAAAAAAzg/JJu200nSeTY/s320/snipmate.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5337133880166275586" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;&lt;a href="http://www.vim.org/scripts/script.php?script_id=2540"&gt;http://www.vim.org/scripts/script.php?script_id=2540 snipMate.zip 0.81&lt;/a&gt; を$HOME/.vimに展開して、a.cファイルを開いて、「forタブ」を入力したところ。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;:FuzzyFinderMruCmd&lt;br /&gt;&lt;dd&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RGGAxF8f5a8/ShFO_PyZLUI/AAAAAAAAAzY/65n0foHyPdI/s1600-h/fuzzyfindermru.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 320px; height: 65px;" src="http://1.bp.blogspot.com/_RGGAxF8f5a8/ShFO_PyZLUI/AAAAAAAAAzY/65n0foHyPdI/s320/fuzzyfindermru.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5337133881887370562" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;dd&gt;&lt;a href="http://www.vim.org/scripts/script.php?script_id=1984"&gt;http://www.vim.org/scripts/script.php?script_id=1984 vim-fuzzyfinder.zip 2.21.0&lt;/a&gt; を$HOME/.vimに展開して、:FuzzyFinderMruCmdしたところ。&lt;br /&gt;&lt;br /&gt;&lt;dt&gt;起動時に最大化&lt;br /&gt;&lt;dd&gt;$HOME/.gvimrcに&lt;br /&gt;&lt;pre class=prettyprint&gt;autocmd BufEnter * macaction performZoom:&lt;/pre&gt;&lt;br /&gt;でどうでしょうか。&lt;br /&gt;&lt;/dl&gt;&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYa 20090511 では以上のように使えているのですが、他に情報ありましたら教えてくださいませ。その他の不具合情報なども歓迎しております。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-7473812824750122154?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/7473812824750122154/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=7473812824750122154' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7473812824750122154'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/7473812824750122154'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/macvim-kaoriya-snipmatevim-fuzzyfinder.html' title='MacVim KaoriYa snipMate.vim, Fuzzyfinder, 最大化'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_RGGAxF8f5a8/ShFO_JYDWgI/AAAAAAAAAzg/JJu200nSeTY/s72-c/snipmate.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-6013313929292612751</id><published>2009-05-12T05:57:00.003+09:00</published><updated>2009-05-12T06:05:15.035+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android JNI shared library</title><content type='html'>&lt;A href="http://android.git.kernel.org/?p=platform/packages/inputmethods/LatinIME.git;a=blob;f=Android.mk;hb=HEAD"&gt;http://android.git.kernel.org/?p=platform/packages/inputmethods/LatinIME.git;a=blob;f=Android.mk;hb=HEAD&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint"&gt;LOCAL_JNI_SHARED_LIBRARIES := libjni_latinime&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;とすると、shared libraryがapkに入った上、/data/data/foo/lib に配置されるようです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/android-ruby/"&gt;http://code.google.com/p/android-ruby/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;で使ってみましたが、普通のcupcake G1に入れられるのかどうかまではわかりません。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-6013313929292612751?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/6013313929292612751/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=6013313929292612751' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6013313929292612751'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/6013313929292612751'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/android-jni-shared-library.html' title='Android JNI shared library'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-9058660816717919027</id><published>2009-05-11T21:27:00.003+09:00</published><updated>2009-05-11T21:39:22.978+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><category scheme='http://www.blogger.com/atom/ns#' term='ctags'/><title type='text'>MacVim KaoriYa 20090511</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;更新しました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://blogger.splhack.org/2009/05/macvim-kaoriya-help.html"&gt;:helpで固まる不具合対策&lt;/a&gt;と、ctags-objc-ja &lt;a href="http://wiki.github.com/splhack/ctags-objc-ja"&gt;http://wiki.github.com/splhack/ctags-objc-ja&lt;/a&gt; 同梱です。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_RGGAxF8f5a8/SggbGzO8i4I/AAAAAAAAAyo/m-rKQniDNxQ/s1600-h/tlist_objc0.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 359px;" src="http://2.bp.blogspot.com/_RGGAxF8f5a8/SggbGzO8i4I/AAAAAAAAAyo/m-rKQniDNxQ/s400/tlist_objc0.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5334543562266413954" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;taglist.vim &lt;a href="http://www.vim.org/scripts/script.php?script_id=273"&gt;http://www.vim.org/scripts/script.php?script_id=273&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;と&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint" id="vimrc"&gt;let tlist_objc_settings='objc;P:protocols;i:interfaces;I:implementations;M:instance methods;C:implementation methods;Z:protocol methods'&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;で、Objective-Cも楽々。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-9058660816717919027?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/9058660816717919027/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=9058660816717919027' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9058660816717919027'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/9058660816717919027'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/macvim-kaoriya-20090511.html' title='MacVim KaoriYa 20090511'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_RGGAxF8f5a8/SggbGzO8i4I/AAAAAAAAAyo/m-rKQniDNxQ/s72-c/tlist_objc0.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2519066952007572109</id><published>2009-05-11T12:40:00.003+09:00</published><updated>2009-05-11T13:20:45.678+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa helpで固まる件</title><content type='html'>$HOME/.vim/doc/tags-ja などに&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;!_TAG_FILE_ENCODING utf-8&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;が含まれている場合、&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;:help !&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;とかやると帰ってこなくなります。CTRL-Cで中断できますが。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/issues/detail?id=9"&gt;http://code.google.com/p/macvim-kaoriya/issues/detail?id=9&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;の添付パッチで回避できますが、これはMacVim-KaoriYaのせいなのか、originalからなのか...&lt;br /&gt;&lt;br /&gt;/Applications/MacVim.app/Contents/Resources/vim/runtime/doc/tags-ja&lt;br /&gt;&lt;br /&gt;にも含まれてるんですけどね。や、むしろ含まれているからこそ、か?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MacVimの更新を待ってたんですが、ctags-objc-jaとこれでバイナリ更新するつもりです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2519066952007572109?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2519066952007572109/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2519066952007572109' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2519066952007572109'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2519066952007572109'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/macvim-kaoriya-help.html' title='MacVim KaoriYa helpで固まる件'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3191867442319947173</id><published>2009-05-08T21:24:00.002+09:00</published><updated>2009-05-08T21:47:37.334+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ctags'/><title type='text'>ctags objc 日本語対応版</title><content type='html'>&lt;a href="http://github.com/splhack/ctags-objc-ja/"&gt;http://github.com/splhack/ctags-objc-ja/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Objective-C 対応 Exuberant Ctags の日本語対応版です。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Exuberant Ctags &lt;a href="http://ctags.sourceforge.net/"&gt;http://ctags.sourceforge.net/&lt;/a&gt;&lt;br /&gt;&lt;li&gt;ctags-objc &lt;a href="http://gitweb.aeruder.net/?p=ctags-objc.git;a=summary"&gt;http://gitweb.aeruder.net/?p=ctags-objc.git;a=summary&lt;/a&gt;&lt;br /&gt;&lt;li&gt;ctags日本語対応版 &lt;a href="http://hp.vector.co.jp/authors/VA025040/ctags/"&gt;http://hp.vector.co.jp/authors/VA025040/ctags/&lt;/a&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;を元に&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;configure オプション—enable-japanese-support 追加 (デフォルトで日本語対応機能OFF)&lt;br /&gt;&lt;li&gt;gauche_guess (&lt;a href="http://yukihiro.nakadaira.googlepages.com/#chardet"&gt;http://yukihiro.nakadaira.googlepages.com/#chardet&lt;/a&gt;) による文字コード自動判別機能追加 (デフォルトで自動判別—jcode=auto)&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;を追加しました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://wiki.github.com/splhack/ctags-objc-ja"&gt;http://wiki.github.com/splhack/ctags-objc-ja&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;日本語対応版だとCP932で&lt;br /&gt;&lt;br /&gt;&lt;pre class="prettyprint" id="c"&gt;&lt;br /&gt;// ソ&lt;br /&gt;void func() {}&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;なんてのも平気になるわけですね。しかもgauche_guess効果でファイルの文字コード気にせずにctags実行できるかと。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;.vimrcに&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/jad/home/blob/e4edeae019b702209d738d38df9c5c0e515177d0/.vimrc"&gt;http://github.com/jad/home/blob/e4edeae019b702209d738d38df9c5c0e515177d0/.vimrc&lt;/a&gt;&lt;br /&gt;&lt;pre class="prettyprint" id="vim"&gt;&lt;br /&gt;let tlist_objc_settings='objc;P:protocols;i:interfaces;I:implementations;M:instance methods;C:implementation methods;Z:protocol methods'&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;って書けば、taglist.vimでObjective-Cを楽しめます。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;MacVim KaoriYa&lt;/a&gt;は次のリリースでctagsバイナリを更新します。本家MacVimの更新はいつだろう。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3191867442319947173?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3191867442319947173/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3191867442319947173' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3191867442319947173'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3191867442319947173'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/ctags-objc.html' title='ctags objc 日本語対応版'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5265447464689591995</id><published>2009-05-07T22:27:00.002+09:00</published><updated>2009-05-07T22:35:54.225+09:00</updated><title type='text'>ctags</title><content type='html'>そういえば taglist.vim で Objective-C が表示されないのでぐぐってみたら&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/jad/home/blob/e4edeae019b702209d738d38df9c5c0e515177d0/.vimrc"&gt;http://github.com/jad/home/blob/e4edeae019b702209d738d38df9c5c0e515177d0/.vimrc&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;objc対応ctagsがありました。&lt;br /&gt;&lt;br /&gt;&lt;a href="http://gitweb.aeruder.net/?p=ctags-objc.git;a=summary"&gt;http://gitweb.aeruder.net/?p=ctags-objc.git;a=summary&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;てことで、&lt;br /&gt;&lt;br /&gt;&lt;a href="http://hp.vector.co.jp/authors/VA025040/ctags/"&gt;http://hp.vector.co.jp/authors/VA025040/ctags/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;から日本語対応部分をもってきて&lt;br /&gt;&lt;br /&gt;&lt;a href="http://github.com/splhack/ctags-objc-ja/tree/master"&gt;http://github.com/splhack/ctags-objc-ja/tree/master&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;を作ってみました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;まだcompileしてないんですけども。&lt;br /&gt;&lt;br /&gt;MacVim-KaoriYa同梱のctagsはこれに入れ替える予定です。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5265447464689591995?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5265447464689591995/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5265447464689591995' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5265447464689591995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5265447464689591995'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/ctags.html' title='ctags'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1653416929047753041</id><published>2009-05-04T21:19:00.005+09:00</published><updated>2009-05-04T23:13:58.497+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android cupcake emulator</title><content type='html'>■&lt;pre&gt;$TOP/out/host/linux-x86/bin/emulator -sysdir $TOP/out/target/product/generic -data $TOP/out/target/product/generic/userdata.img -kernel $TOP/prebuilt/android-arm/kernel/kernel-qemu&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;ってやればavd関係なくemulatorを起動できると。avd使いたければmake sdkすると。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■Ubuntuでのqemu build error対策&lt;br /&gt;&lt;a href="http://groups.google.com/group/android-porting/browse_thread/thread/8432b5f2accb718a/dd7e91571cb243c7"&gt;http://groups.google.com/group/android-porting/browse_thread/thread/8432b5f2accb718a/dd7e91571cb243c7&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;■official ADP1 cupcake image&lt;br /&gt;&lt;a href="http://www.htc.com/www/support/android/adp.html"&gt;http://www.htc.com/www/support/android/adp.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;account登録とかがskipできるようになったんですね。emulatorでこのsystem.img使えばmarketも使えるかも(google accout入力しなかったので未確認)。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1653416929047753041?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1653416929047753041/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1653416929047753041' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1653416929047753041'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1653416929047753041'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/android-cupcake-emulator.html' title='Android cupcake emulator'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3889786395744766428</id><published>2009-05-01T23:52:00.004+09:00</published><updated>2009-05-02T00:02:40.133+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>Android MigemizeSoftKeyboard</title><content type='html'>&lt;a href="http://code.google.com/p/android-migemo-ime/"&gt;http://code.google.com/p/android-migemo-ime/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;続きまして、migemoを使ったAndroid用IMEです。SKK辞書Mで、ちゃんと変換できるようになって帰ってきましたw&lt;br /&gt;&lt;br /&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/T93Py8bco_o&amp;hl=ja&amp;fs=1"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/T93Py8bco_o&amp;hl=ja&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;a href="http://www.youtube.com/watch?v=T93Py8bco_o"&gt;http://www.youtube.com/watch?v=T93Py8bco_o&lt;/a&gt;&lt;br /&gt;(前とったムービー)&lt;br /&gt;&lt;br /&gt;adb install MigemizeSoftKeyboard.apk でインストールできます。&lt;br /&gt;&lt;br /&gt;詳しくは &lt;a href="http://www.adamrocker.com/blog/253/simeji-for-android-sdk-15.html"&gt;http://www.adamrocker.com/blog/253/simeji-for-android-sdk-15.html&lt;/a&gt; を参照していただくと良いと思います。&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_RGGAxF8f5a8/SfsNANF7-SI/AAAAAAAAAw4/AtNgvntN50A/s1600-h/migemo0.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 213px; height: 320px;" src="http://1.bp.blogspot.com/_RGGAxF8f5a8/SfsNANF7-SI/AAAAAAAAAw4/AtNgvntN50A/s320/migemo0.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5330868881088837922" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_RGGAxF8f5a8/SfsNAPAGfJI/AAAAAAAAAxA/lUVKUjfj5es/s1600-h/migemo1.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 214px; height: 320px;" src="http://4.bp.blogspot.com/_RGGAxF8f5a8/SfsNAPAGfJI/AAAAAAAAAxA/lUVKUjfj5es/s320/migemo1.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5330868881601232018" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SKK辞書Sでもいいんじゃないかと思ってます。&lt;br /&gt;&lt;br /&gt;使用頻度による候補表示順とかあるといいですね。iPhoneみたいな「かな」パレットとか。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3889786395744766428?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3889786395744766428/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3889786395744766428' title='2 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3889786395744766428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3889786395744766428'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/android-migemizesoftkeyboard.html' title='Android MigemizeSoftKeyboard'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_RGGAxF8f5a8/SfsNANF7-SI/AAAAAAAAAw4/AtNgvntN50A/s72-c/migemo0.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-1685550215379557686</id><published>2009-05-01T23:31:00.004+09:00</published><updated>2009-05-02T07:42:09.630+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ruby'/><category scheme='http://www.blogger.com/atom/ns#' term='android'/><title type='text'>android-ruby for cupcake</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://android-ruby.googlecode.com/svn/wiki/androidruby.png"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 192px; height: 366px;" src="http://android-ruby.googlecode.com/svn/wiki/androidruby.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/android-ruby/"&gt;http://code.google.com/p/android-ruby/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Android用ruby-1.9.1をcupcakeに対応させて、&lt;br /&gt;&lt;br /&gt;かつapkにshared libraryをつっこんでみました(&lt;a href="http://code.google.com/p/android-ruby/source/browse/trunk/irbapp/Android.mk"&gt;Android.mk&lt;/a&gt;)。&lt;br /&gt;&lt;br /&gt;ADP1やemulatorは当然ながら、普通のG1でもインストールできるのかもしれませんしできないのかもしれません。&lt;br /&gt;&lt;br /&gt;(jailbreakしてないG1なんて持ってませんし)&lt;br /&gt;&lt;br /&gt;/sdcardに付属のruby.tarを展開すると、ほぼフル機能になります。&lt;br /&gt;&lt;br /&gt;(20090502 追記 インストールスクリプト追加しました。rootになれるならruby native commandもインストールできます。スクリプト参照)&lt;br /&gt;&lt;br /&gt;jrubyじゃないですよ。crubyです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-1685550215379557686?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/1685550215379557686/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=1685550215379557686' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1685550215379557686'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/1685550215379557686'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/05/android-ruby-for-cupcake.html' title='android-ruby for cupcake'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-2613580541115279299</id><published>2009-04-27T20:49:00.002+09:00</published><updated>2009-04-27T20:59:39.222+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090427</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;更新しました。日刊MacVim-KaoriYaですね。&lt;br /&gt;&lt;br /&gt;vim 7.2.160ベースになりました。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-2613580541115279299?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/2613580541115279299/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=2613580541115279299' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2613580541115279299'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/2613580541115279299'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/04/macvim-kaoriya-20090427.html' title='MacVim KaoriYa 20090427'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-3389775645946981428</id><published>2009-04-26T21:10:00.004+09:00</published><updated>2009-04-26T21:14:42.173+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090426</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;更新しました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.serendip.ws/archives/1854"&gt;http://www.serendip.ws/archives/1854&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;nmap ,s :call GoshRunAll()&amp;lt;cr&amp;gt;&lt;br /&gt;がきちんと設定できなくなっていた。&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/fifnel/statuses/1611503407"&gt;http://twitter.com/fifnel/statuses/1611503407&lt;/a&gt;&lt;br /&gt;&lt;blockquote&gt;なにやらプラグインのキーマップがいろいろ効かない。何だろう。&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MLで指摘されてた件を修正したら、この件も直ったようです。お試しくださいませ。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-3389775645946981428?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/3389775645946981428/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=3389775645946981428' title='0 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3389775645946981428'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/3389775645946981428'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/04/macvim-kaoriya-20090426.html' title='MacVim KaoriYa 20090426'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-5532937354136230824</id><published>2009-04-25T15:30:00.004+09:00</published><updated>2009-04-25T20:14:27.695+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090425</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;更新しました。&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;IM 状態取得を実装。IM 自動ON/OFF が動作します。&lt;br /&gt;&lt;li&gt;ctags 5.7J1 を同梱&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;要望の大きかった(twitterで2人も!!) IMコントロールを、ちゃんと動くように実装しました。&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;insertモード開始&lt;br /&gt;&lt;li&gt;手動でIMオン&lt;br /&gt;&lt;li&gt;日本語を入力開始(iminsert: 0→2)&lt;br /&gt;&lt;li&gt;ESC&lt;br /&gt;&lt;li&gt;自動でIMオフ&lt;br /&gt;&lt;li&gt;insertモード開始&lt;br /&gt;&lt;li&gt;自動でIMオン(iminsert=2なので)&lt;br /&gt;&lt;/ol&gt;&lt;br /&gt;&lt;br /&gt;これでCarbon/Cocoa Vim.appに劣ってるところはなくなったんではないかと思います。&lt;br /&gt;&lt;br /&gt;後ほどMLにpatch送っときますので採用されればMacVimでも使えるようになるはずです。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;なおCursorIMが効きますが、⌘+スペース がMacVimに届かないので、手動でIM切り替えてもCursorIMが即座に反映されません。イベントが来ればどうにかなりますが、pollingするのもねぇ...&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;autocomplpop.vim が変更せずに使えるようになったようです (私は &lt;a href="http://github.com/Shougo/neocomplcache/tree/master"&gt;neocomplcache.vim&lt;/a&gt; を使ってます)。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;む、⌘の文字幅がASCII分しかない。JIS X 0213もだけど(◉とか)。&lt;br /&gt;(⌘も◉も&lt;a href="http://www.unicode.org/Public/UNIDATA/EastAsianWidth.txt"&gt;Nですね&lt;/a&gt;。むしろOsakaが?)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-5532937354136230824?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/5532937354136230824/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=5532937354136230824' title='3 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5532937354136230824'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/5532937354136230824'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/04/macvim-kaoriya-20090425.html' title='MacVim KaoriYa 20090425'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-23040416.post-841099969523112252</id><published>2009-04-23T22:27:00.001+09:00</published><updated>2009-04-23T22:39:07.585+09:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='vim'/><title type='text'>MacVim KaoriYa 20090423</title><content type='html'>&lt;a href="http://code.google.com/p/macvim-kaoriya/"&gt;http://code.google.com/p/macvim-kaoriya/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;更新しました。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://code.google.com/p/macvim-kaoriya/wiki/Readme#%E6%96%87%E5%AD%97%E3%82%B3%E3%83%BC%E3%83%89%E5%88%A4%E5%88%A5"&gt;http://code.google.com/p/macvim-kaoriya/wiki/Readme#文字コード判別&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;fencs(fileencodings)を設定してると自動判別が動きませんのでご注意を。&lt;br /&gt;&lt;br /&gt;.vimrc の fencs または fileencodings を設定している行を削除するのが良いです。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/23040416-841099969523112252?l=blogger.splhack.org' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://blogger.splhack.org/feeds/841099969523112252/comments/default' title='コメントの投稿'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=23040416&amp;postID=841099969523112252' title='3 件のコメント'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/841099969523112252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/23040416/posts/default/841099969523112252'/><link rel='alternate' type='text/html' href='http://blogger.splhack.org/2009/04/macvim-kaoriya-20090423.html' title='MacVim KaoriYa 20090423'/><author><name>sakamoto</name><uri>http://www.blogger.com/profile/09541707424326009982</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='http://photos1.blogger.com/blogger/2101/2354/1600/40181_654435468.jpg'/></author><thr:total>3</thr:total></entry></feed>
