PerlやRubyの正規表現などをtext objectとして扱うためのplugin

vim

Vim Advent Calendar 2012の9日目の記事です。 8日目は@kefir_さんによるvimと端末エミュレーションでした。今日は、私の自作plugin、textobj-enclosedsyntaxをご紹介したいと思います。 記事のタイトルでは、わかりやすさのためPerlやRubyの正規表現など…

ujihisa.vim#3で発表してきた

ujihisa.vim#3行って発表してきました。vim系勉強会、というか外部勉強会で発表するのは初めてだったのでちょっと緊張しましたが何とかなりました。2個前のマクロ発表が始まったときはどうなることかと思いましたが。。。スライドは以下にあげています。 de…

11/4追記

発表時のcolumnjumpの説明が微妙だったので補足します。イメージしやすいと思い、「縦方向のw bのようなもの」とお話しましたが、b相当はないです。上方向にw、下方向にwといった感じです。あと、w「のようなもの」とお話ししたのは、wとはちょっと違うから…

YAPC::ASIA 2012の参加者ブログのはてブ数Top20を抽出するスクリプト書いた

YAPC::ASIA2012行きたかったなー行きたかったなー行きたかったなーと言っても、行けなかったもんはしょうがないので参加者のブログでも読んで少しでも雰囲気を味わおうと思いました。 が、全部で100件以上もあり流石に全部読むのはシンドイので、はてブ数Top…

formatoptionsを設定するためのvim plugin書いた

前置き vimでのテキストの自動折り返しや、改行時のコメント開始文字自動挿入がうっとおしかったので、.vimrcでformatoptionsに設定したんですが、うまく設定されませんでした。どうやら、.vimrc読み込み後、filetypeが切り替わった際に、$VIMRUNTIME/ftplug…

Linuxでkaoriyaパッチ&migemoを有効にしてvimを最新ソースからインストールした

Linuxで、kaoriyaパッチを当ててmigemoを有効にしてvimをインストールできたので備忘録のためにメモ。 前準備 cmigemoをインストールしておく必要があります。 #cmigemoのインストールは、前記事をご参照ください。 kaoriyaパッチを当てる vim最新ソース、ka…

c/migemoをインストールしてvimから使う方法

Linuxにcmigemoをインストール してvimから使えるようにしてみました。 c/migemoインストール $ hg clone https://code.google.com/p/cmigemo/ $ cd cmigemo $ ./configure $ make gcc $ make gcc-dict $ sudo make gcc-installこれでいけるはずだったのです…

CentOSで最新ソースからvimをインストール

下準備 オプションによって必要だったり必要じゃなかったりしますが、以下が下準備。 $ yum -y install gcc make ncurses-devel $ yum -y install mercurial $ yum -y install perl-devel perl-ExtUtils-Embed $ yum -y install ruby-devel $ yum -y install…

検索文字列をレジスタでグローバル置換

vim

昨日はyokohama.vim#3だったようですが、残念ながら用事があって参加登録できなかったのでvimネタ投入。vimで単語検索をした後、その検索文字列に対して操作するということを自分はよくやります。例えば、*で単語検索した後、ciwで単語編集したり、operator-…

Read It Laterの未読リストをはてブに追加するツール書いた

先人が書いたモジュールによりものの数行で書けました。(感謝) 下準備 以下のモジュールをcpanmなどで入れておく Config::Pit WebService::Hatena::Bookmark::Lite WebService::RIL 最後のWebService::RILだけはcpanに置いてなさそうだったので以下のような…

段落単位での移動がちょっと便利になるかもしれないVim plugin書いた

本Vim Pluginを作った背景 Vimでは色々なカーソル移動の方法があると思いますが、私はソースコードを眺める際、段落単位の移動(ブレース '}'、'{'での移動)をよく使います。 、でもなく、、でもなく、5j、5kでもなブレースでの移動を使う理由は、コードブロ…

kqueueを試してみた

c lib

kqueueを試してみました。hoge.txtに何らかの書き込みがあるまで待ち続けるサンプルコードを書いて見ました。 環境はMac、/path/to/hoge.txtのパスを変更して、gccでコンパイルすれば動くと思います。エラー処理は適当。 このコードだけでは、旨みは見えない…

コマンドラインモードでexモードかどうか区別

コマンドラインでのキーマップで、exか、検索かなどの区別は以下で可能。 cnoremap <expr> ss (getcmdtype()==':' ? "s///g<Left><Left><Left>" : "ss") cnoremap <expr> %s (getcmdtype()==':' ? "%s///g<Left><Left><Left>" : "%s")</left></left></left></expr></left></left></left></expr>

vimから秀丸のgrepを呼び出す

Windowsでvimを使う場合grepコマンドが無いので、そのままでは外部grepが使えません。しかもWindowsでの外部grepは日本語周りが引っかからなかったりするらしいのであまり使いたくありません。 Windowでのgrepの話は以下が参考になります。 vimのgrepの設定…

Android SDKのインストールメモ

HomebrewでのAndroid SDKインストールメモ Android SDKのインストール及び設定 // Android SDKインストール $brew android-sdk // Android SDK Managerを開く $androidAndroid SDK Managerが表示されるので、好きなバージョンを適当にインストール Android V…

YAPC::Asia Tokyoに初参加してきました!

10/14、10/15と二日間、YAPC::Asia Tokyoに初参加してきました。 どのトークも面白かったんですが、二日間通して特に自分的に気になったトークと全体を通しての感想を書こうと思います。詳細は技評の方がまとめている以下がかなり詳しいので、ざっくり個人的…

yokohamavim#1に行ってきました

前回に引き続きyokohamavim#1に参加したのでざっくり参加レポを。基本的にATND通りの進行 http://atnd.org/events/14353 席決め&自己紹介 主催者のgu4さんによるアジェンダの説明の後、前回同様まずはvimレベルでグループ分け。のハズだったんですが、vimレ…

Align.vimでperlのハッシュを成形する

=>が一つならこれで行けそう。 " 普通にコマンドで :AlignCntl l-l :Align => " visual modeでkeymap設定するとこんな感じかな autocmd FileType perl vnoremap <Space>ah :<c-u>AlignCtrl l-l<cr>gv:Align =><cr></cr></cr></c-u></space>

perlの関数に飛ぶ

こんな感じで書くといける " perlの関数に飛ぶ autocmd filetype perl noremap <silent><buffer> ]] m':call search('^\s*sub\>', "W")<cr> autocmd filetype perl noremap <silent><buffer> [[ m':call search('^\s*sub\>', "bW")<cr></cr></buffer></silent></cr></buffer></silent>

日本語入力ON時のカーソルの色を設定する方法

こちらより抜粋 if has('multi_byte_ime') || has('xim') " 日本語入力ON時のカーソルの色を設定 highlight CursorIM guibg=Orange guifg=NONE endif オレンジが個人的にお気に入り

初めてvim pluginを書いた

前々から作りたいと思っていたvim pluginを、vimscriptの勉強がてら書いてみました。

vimrcを晒してみる

vim

vimrcを晒してみます。 ほとんど、どなたかのvimrcの流用です(爆まだ、キーマッピングの方向性が決まってないのでちょっとぐちゃぐちゃです。 使ってるプラグイン一覧をトップに載せてみました。特によく使う順に並べてるわけでもないのでそのうち整理しま…

vrapperrcを晒してみる

先日参加したGAE/J勉強会で久しぶりにeclipseを触ったときに、そいやvrapperプラグインは.vrapperrcでeclipseのショートカット色々設定できるんだよなぁと思い、後で書くと前記事の宿題にしていたので、大分時間がたってしまったけど、晒してみる次第です。 …

GAE勉強会@geek-- cafeに参加してきました。

昨日、GAE勉強会@geek-- cafeに参加してきたので感想をば。 概要 身内でやっていた半クローズドなgeek-- cafeという勉強会主催で実施した今回のGAEコードラボ。 講師のshin1ogawaさんからGAEの基本的な使い方をslim3の便利さ+eclipseの便利な使い方を交えて…

バッテリーのもちをよくする方法

iPhoneのバッテリーの減りが異様に早かったので、Webの情報を参考に以下の設定をしたら、バッテリーのもちがかなり良くなった。 使わない位置情報サービスをオフにする 使わない時はwifiオフにする キャリアを自動→SoftBankにする メールの取得方法をフェッ…

yokohamavim#0に行ってきました

twitter初めてからめっきりブログを書かなくなってしまったんですが、久しぶりに外部の勉強会yokohama.vim#0に参加させていただいたので感想をば。 勉強会 勉強会の流れごとに感想を。 ポジショニングペーパー作成 Vimをメインにマインドマップ形式でポジシ…

screen覚え書き+なんとなくvimライクに使えるscreenrc

友人にscreenがいいよと紹介されたので1日かけて触ったところのまとめです。screenは1つのターミナルで仮想的に複数の端末を開くことができるコマンドで、実行すると指定されたシェルで起動し、その後はscreenのコマンドで端末を複数開いたり、ウィンドウ…

Twitter4r Twitter::Userのメソッド一覧

Twitter4rのAPIリファレンスにはメソッドが全部載っていない?ようなので、 to_hash、methodsメソッドでどんなメソッドが使えるか調べた。 (主要なものだけのせています。) メソッド名 内容 screen_name ユーザー名 description 自己紹介 followers_count …

Seasarのscaffold

Seasarのscaffoldを動かしてみました。Railsのscaffoldと同じような感じ。ソースも見てみましたが、ふむふむという感じです。アノテーションで設定されたフィールドがDBと紐付けられているようです。 仕組みまではよく分からない。 これから勉強していきまし…

GWT環境構築

GWT

JavaでAjaxがかけると噂のGWTを触ってみる。ここから本体をダウンロード http://code.google.com/intl/ja/webtoolkit/download.htmlここに記載のUpdate SiteからEclipseプラグインをインストール http://code.google.com/intl/ja/eclipse/docs/download.html…