lightline.vimのバッファ履歴表示コンポーネントをかいた リンクを取得 Facebook × Pinterest メール 他のアプリ 3月 13, 2014 この記事は Vim Advent Calendar 2013 103日目の記事になります。 今回はlightline.vimのコンポーネントを作ってみました。 基本的な部分については作者様直々に記事を執筆していらっしゃるのでそちらを参考にしてください。 作者が教える! lightline.vimの設定方法! ~ 初級編 - コンポーネントを作ってみよう 普段Vimを使っていてバッファ一覧が常に見える位置にあるのは何かと便利です。 ちらっと見てから、直ぐに:b2とかで移動できますからね。 ですが、あまり場所を取ってほしくはありません。 それに、ただのバッファ一覧ではなくてVimFilerとかUniteとかのバッファは除外してほしい。 しかも、開いた順に表示したい。 そこでlightline.vimのコンポーネントを書きました。 ぜひ活用してやってください。 また、バグがあれば気軽に教えて下さい。 リンクを取得 Facebook × Pinterest メール 他のアプリ コメント
カーソルキーさん@つかわない インサートモード編 3月 14, 2013 この記事は Vim Advent Calendar 2012 104日目の記事になります。 103日目は@ujihisaさんの unite-build でした。 Vimッ! 使わずにはいられないッ! カーソルキーでエディット? 貧弱貧弱ゥ!! はい、すいません。 というわけで 以前、書いた記事にも似たようなことをチラッと書きましたが、改めてきちんと書きなおしてみます。 Vimmerであればノーマルモードにおいて、息をするよりも簡単にhjkl移動をすることだと思います しかし、インサートモードではどうでしょう? 案外カーソルキーに手を伸ばしがちですね。 私もVimを使い始めたばかりの頃はそうでした。 そもそも、インサートモードにおいてカーソルキーを連打ってしまうくらいの移動ならば <ESC>してノーマルモードで移動すべきだと思います。 Vimは音ゲーでは無いので連打なんてするべきではないのです。 標準では以下のように与えられています。 下の行へ <C-G><C-J> <C-G>j 上の行へ <C-G><C-K> <C-G>k これでは物足りませんね(゜.゜) そこで、この上記に加えるといいであろう設定を列挙します。 <C-A> - 行頭 <C-E> - 行末 <C-F> - 右 <C-B> - 左 noremap! <C-A> <Home> noremap! <C-E> <End> noremap! <C-F> <Right> noremap! <C-B> <Left> noremap! <C-D> <Del> emacsライクに設定しています 私がこの設定にしている理由はMacを常用しているからです。 Macだと結構な割合でemacs移動バインドがテキストボックス内で使えるので案外役に立つのではないでしょうか。 あと、emacsも最低限の動作は覚えてお... 続きを読む
Android で MIME Type 判別 12月 24, 2011 ちょっとアプリを作っていてかなり悩んだのでメモとして残しておく MIME Typeというのは見たことはあるが、きちんと知らないので調べて見ました MIME 【Multipurpose Internet Mail Extension】 "マイム"と読むらしい 直訳してみれば、"多目的インターネットメール拡張機能"かな? ネットワーク上で動画、音声、画像などのファイルを扱うための規格 RFC2045~2049で規定されている。 拡張子とファイルのデータを関連付けているものらしい " タイプ名/サブタイプ名"のように区切られて表現される 例としては、 text/html text/plain image/jpg application/pdf などなど さて、例えば、AndroidでSDカードにアクセスし適当なファイルを開いた際 どんなファイルか判別したいとする この時にMIMEを読み取り画像か音声かテキストか判別し 他のアプリにIntentを投げようと思います ※12/25追記:以下の方法だと動作しない場合があるので更に下に追記しました。 Android Developerの ここ を参考に //ファイル名からMIMEタイプ取得 public String GetMIMEType(String Path){ //拡張子を取得 String ext=MimeTypeMap.getFileExtensionFromUrl(Path); //小文字に変換 ext=ext.toLowerCase(); //MIME Typeを返す return MimeTypeMap.getSingleton().getMimeTypeFromExtension(ext); } 引数のパスは"/sdcard/Music/xxx.mp3"のように渡しています。 そこからgetFileExtensionFromUrlメソッドを使って、拡張子(mp3)を取得 それをgetMimeTypeFromExtensionメソッドに入れてMIME Typeを呼び出し元に返す getFileExtensionFromUrlとgetMimeTypeF... 続きを読む
Erlang & Elixir Fest 2019 に参加してきた 6月 02, 2019 Erlang & Elixir Fest 2019 に参加してきました。 来ました pic.twitter.com/dtShHONnzH — もぷり (@Mopp_jp) June 1, 2019 その感想をメモを兼ねて時系列順にざっと思うままに書いてみます。 開始前 Erlang & Elixir Festは過去に何度か開催されていたようですが、自分は今回が初参加でした。 場所は永田町で、10時開場、10:30セッション開始というスケジュールで、10:10くらいに入場しました。 会場は縦に長く、中央にプロジェクターのスクリーンが1枚という構成でした。 後ろの方に座るとスライドがよく見えないだろうと思ったので前の方の席を探すと中央の前から2番目というかなりのいい席に座ることができてセッション中に不自由しなかったのがとてもよかったです。 セッション 超並列高速実行処理系 Hastega 〜 Lonestar ElixirConf 凱旋帰国 本日の Erlang & Elixir Fest 2019 の発表資料を公開します。 #elixirfest https://t.co/OFdnRXZlaA — Susumu Yamazaki (@zacky1972) June 1, 2019 一つ目の発表はHastegaというElixirのコードをOpenCLに変換して分散処理をするライブラリ(でいいのだろうか)についての発表でした。名前の由来はFFの仲間を強化する魔法だそうです。現状はdefhastegaというマクロで囲んだ中にあるEnum.mapなどが変換され、並列処理されるようになるそうです。また、将来はdefhastegaマクロを使わずに、できそうなところは変換するようにしたいとも話していました。 スライドに性能評価はありましたが、コード生成の仕組みに悩んでいるとのことでリリースはされていないそうです。Hastegaを使ったコード例を見た限り、使う分にはシンプルそうでよさそうでした。 Erlang/OTP 22からはHiPEが非推奨になるのでそこも悩みどころ、と話しており、それについてツイートしたところ、記事を教えていただきました。 Joseから紹介された記事です。 https... 続きを読む
コメント
コメントを投稿