タグ

ブックマーク / mattn.kaoriya.net (14)

  • Big Sky :: Vim と日本語入力の話。

    8/31、patch 8.0.1026 で LinuxVim のとある挙動が修正されました。 patch 8.0.1026: GTK on-the-spot input has problems - vim/vim@5c6dbcb - GitHub https://github.com/vim/vim/commit/5c6dbcb03fa552d7b0e61c8fcf425147eb6bf7d5 この修正は、LinuxVim の IME (Input Method Editor) の挙動を修正する物ですが、この1つのパッチの為に多くの開発者が動いたという話です。 Vim と IME と僕 このパッチ、多い時で月に100個以上もリリースされる大量のパッチの1つに過ぎないのですが、実はこのパッチには思い入れがあり記事にせずにいられませんでした。この問題が修正されるまでに至った経緯を

    Big Sky :: Vim と日本語入力の話。
    cubick
    cubick 2017/09/06
  • Big Sky :: GVim のツールバーをカッコよくしてくれるプラグイン「vim-toolbar-icons-silk」

    Vim のツールバーの画像は随分昔に作られた物で、見る限り古くそれだけで Vim を使うのを辞めてしまう人もいるんじゃないか、という程にクラッシックな画像でした。 実は Vim にはツールバーをスクリプトから変更出来る機能があり、画像さえ用意すればカッコいいツールバーにする事が出来る事はごく一部の Vimmer の中だけで知られていました。そして誰もこの腰の重い作業をやろうとする人はいませんでした。 そんな中、istepura という人が Silk というアイコン集を使って Vim のツールバー向けに画像を用意してくれました。 istepura/vim-toolbar-icons-silk - GitHub README.md vim-toolbar-icons-silk GViM toolbar icons based in Silk icon theme. Theme site: ht

    Big Sky :: GVim のツールバーをカッコよくしてくれるプラグイン「vim-toolbar-icons-silk」
    cubick
    cubick 2013/09/09
  • Big Sky :: モテる Vim 使いに読み書き出来ないファイルなどなかったんだよ!

    Vim Advent Calendar 2012 の 4 日目の記事です。 「やった!コンプガチャで Vim 出た!」 「だって前の彼氏、Vim 使いじゃなかったんだもん」「マクドナルド店員「ご一緒に Vim など如何ですか?」」 こんな言葉が聞かれる様になって随分と経ちました(要出典)。 昨今、Vim はテキストエディタの枠を超え、アプリケーションプラットフォームへと変わりつつあります。 vital.vim 等を使う事で簡単にアプリケーションを作る事も出来る様になりました。手前味噌ではありますが webapi-vim の一部も vital.vim に取り込まれています。 このブログでも結構取り上げていますが webapi-vim とは一体何か。名前の通り、Web Application Programming Intreface を扱えるライブラリです。 webapi-vim とは we

    Big Sky :: モテる Vim 使いに読み書き出来ないファイルなどなかったんだよ!
    cubick
    cubick 2012/12/04
  • Big Sky :: Vimやめました。

    最近、勢いでVimの記事を書いていて、自分の中で「俺はVimじゃないと駄目なんだ」そう言い聞かせる様にしていた自分に嫌気がさしていました。 Vimを使っていても、気付かぬうちに僕は小指をCTRLキーに当てる様になっていて僕の体はVimを欲していないんじゃないかと思う様になりました。 Vimテクニックバイブルの略歴では「一生Vimを使うと決めた」と書いたけど、自分に嘘は付けなかった。 いままで楽しかったよ。ありがとう。Vim 追記 新しいエディタ、決まりました。

    Big Sky :: Vimやめました。
    cubick
    cubick 2012/04/01
  • Big Sky :: モテるvim女子力を磨くための4つの心得

    こんにちは、ホストクラブ「今夜もvim vim」でホストをしていますmattnです。私は補完も使わないしバッファセレクタも使いませんが、ネタプログラミングについてはプロフェッショナル。今回は、モテるvim女子力を磨くための4つの心得を皆さんにお教えしたいと思います。 1. 「終了出来なーい」と言っておく あえてインサートモードのままにしておき、visualbellを鳴らす様に設定しておきましょう。 そして飲み会の場で好みの男がいたら話しかけ、わざとらしくvimを起動し「あ~ん! このテキストエディタマジでチョームカつくんですけどぉぉお~!」と言って、男に「どうしたの?」と言わせましょう。言わせたらもう大成功。「終了できない~!:wqってなにぃ~!ピーピーって音がなるだけ~!ぷんぷん(怒)」と言いましょう。 だいたいの男は自分の専門性をアピールしたがる習性があるので、横からESCキーを押しに

    Big Sky :: モテるvim女子力を磨くための4つの心得
  • Big Sky :: VimmerなPerl開発環境

    えーっと、IDE使ってません。ごめんなさい。 PerlをIDEで書いてる人、どれくらいいるんだろう。何使ってるんだろ。 私はLinuxでもWindowsでもVimを使ってます。Perlってサーバで使われる事が多いし、サーバだとsshで入る事が多いだろうし、まぁXの転送やVNCやそれっぽいのでグラフィカルに操作しても良いけど、正直PerlのドキュメントもテキストベースだしPerlで入力補完出来るグラフィカルエディタもまず無いと思ってる。 で、私がVim上で使ってるPerlの開発を「200倍便利にするスクリプト」を紹介。 perldoc.vim perldocはPerlのオンラインマニュアルなんだけど、これを一々ターミナルに戻ったりして引いてると時間のロス。screenで分割して開いてもいいんだけどscreenの画面間移動よりもVim内でのウィンドウ間移動の方が操作感が統一出来てて良い。 そこ

    Big Sky :: VimmerなPerl開発環境
  • Big Sky :: Vim script manager「Vimana」が便利すぎる。

    これまでvimスクリプトをインストールするには、vim onlineでダウンロードして、書いてあるインストール手順に従って、時にはそのまま、時にはzipを解凍して.vim(windowsならvimfiles)に自前でコピーするのが一般的でした。おそらく自動化されている方もいるかもしれませんが、特有のスクリプト専用の更新ツールくらいかと思います。 Perlを知っている方ならばCPAN、rubyを知っている方ならばgemにあたる物がvimには無かったんです。 配布物が統一されていない為、無理だろうな...とも思ってました。 が、そこに登場したのがVimana(Vim script manager)です。 Vimana(3)             User Contributed Perl Documentation            Vimana(3) NAME Vimana - Vim

    Big Sky :: Vim script manager「Vimana」が便利すぎる。
  • Big Sky :: DBD::SQLiteで正規表現SQLを使う

    SQLite便利! SQLite3におけるREGEXP演算子 - anon_193の日記 SQLite では、load_extension 関数を用いて、外部の拡張モジュールをロードすることが出来る。拡張モジュールは、いわばユーザ関数ライブラリで、SQLite3 ODBC Driver には標準で BLOB二次元マッピング拡張(sqlite3_mod_blobtoxy.dll)、外部データ取込・出力拡張(sqlite3_mod_impexp.dll)、全文検索拡張(sqlite3_mod_fts3.dll) が付属している。これらと同様にして、正規表現マッチングを行う regexp ユーザ関数を持つ拡張モジュールを制作し、ロードすれば、お目当ての REGEXP 演算子が使えるわけだ。 http://d.hatena.ne.jp/anon_193/20090114/1231935112 sq

    Big Sky :: DBD::SQLiteで正規表現SQLを使う
  • Big Sky :: Re: Emacs の人と Vim の人のキーストロークの数え方の違い。

    別にEditor's Warを起こそうって訳では無いです。 だたvimが弱々しく読める文章だったので補足させて頂きたい。 Emacs の人と Vim の人のキーストロークの数え方の違い。 - 日々、とんは語る。 Ctr キーは1ストロークには入りません! 普段 Emacs を使うとき、どう考えても「修飾キー + 文字キーの組み合わせは一発操作」という感覚でしかありません。 「Ctr + Alt + s」とか、修飾キーが複数であっても、同時押しであれば、僕の中では1ストロークです。 http://d.hatena.ne.jp/tomoya/20090715/1247590638 慣れればそうかもしれませんが、モディファイアキーを使うには両手、もしくは指が2要ります。片手で済むならばもう片方の手で鼻をほじる事だって出来るんです。なんてすばらしい。 Emacs の人と Vim の人のキーストロ

    Big Sky :: Re: Emacs の人と Vim の人のキーストロークの数え方の違い。
    cubick
    cubick 2009/09/02
  • Big Sky Tags::perl

    cubick
    cubick 2009/08/31
  • Big Sky :: ReverseHttpで誰よりも速く「はてなブックマーク」に反応するツール書いた。

    ReverseHttp面白いですね。 ReverseHttp Tunnel HTTP over HTTP, in a structured, controllable, securable way. Let programs claim part of URL space, and serve HTTP, all by using an ordinary HTTP client library. http://www.reversehttp.net/ ただ勘違いされやすいのが「何がReverseなの」という部分。通常ブラウザからリクエストが送信され、それに対する応答がサーバから返されます。ReverseHttpはサーバで何かアクションが起きた場合に、ブラウザ側がその通知を受信する...なんて事が出来るプロトコルです。仕組みはcometというlong pollに似た仕組みで、サイトのdemo

    Big Sky :: ReverseHttpで誰よりも速く「はてなブックマーク」に反応するツール書いた。
  • Big Sky :: C++で軽量Webサーバ書いた。

    書いたといっても結構前からあったのですが、いらん所を削ぎ落として軽量Webサーバとして仕立て上げました。 軽量とは言えど、CGIを使って結構色々動きます。 例えば、ソースアーカイブを解凍したらCGIがあって、apacheから見える場所にコピーして...とか面倒くさかったりしますよね。 おれは今すぐWebサーバを起動したいんだ!そして今いるディレクトリのファイルをWebサーバからサーブしたいんだー! って事ないですか?blogソフトウェアをダウンロードして今すぐ試したいけど、apacheインストールされてなかった...とか悲しすぎます。 今回紹介する"tinytinyhttpd"(tthttpd)はそんな、小さい様で大きな問題を解決出来るかもしれないソフトウェアです。 mattn's tinytinyhttpd at master - GitHub tiny tiny httpd http:

    Big Sky :: C++で軽量Webサーバ書いた。
    cubick
    cubick 2009/07/30
  • Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!

    kazuhoさんがやってくれました。 ずいぶん前からjsonをC++でパース(SAXじゃなくてDOM)するのに小さいライブラリないかなーと思ってました。個人的にはjson-cというのを使ってたのですが、幾らか気に入らない所があったりビルドが少し手間だったりしていました。STLしか使わなくてvectorとかmapで表現されるツリー構造な物が欲しいなぁって思ってたんです。 とあるIRCで昨日、kazuhoさんと「ほしいですよねー」という話から始まって、githubにあるjsonxxとかも物色しながら「いいのないねー」とか言ってたらkazuhoさんが「もすこし綺麗に書けそう」って言い出して朝から格的に書き始めてついさっき出来上がりました。速いw 名前はpicojson とても小さく、実装コードだと300数十ステップ程です。しかもヘッダファイルだけなので管理が楽です。 試しにwassrのpubl

    Big Sky :: ヘッダファイルだけでC++から使えるJSONパーサ「picojson」が凄い!
  • Big Sky :: blosxom plugin 「hatenastar_mobile」書いた

    このサーバではJSON::Syck::Load(YAML::Syck::LoadJSON)が動かなかった(おそらくXSコンパイルされてない)のでJSON::PPを使ってますが、使える人はJSON::Syck::Loadを使うという事で hatenastar_mobile # Blosxom Plugin: hatenastar mobile # Author(s): mattn # Version: Fri, 06 Jun 2008 package hatenastar_mobile; use strict; use warnings; use vars qw($stars); use LWP::UserAgent; use URI::Escape; use HTTP::Request; use JSON::PP; $stars = ''; my $permalink_flavour =

    Big Sky :: blosxom plugin 「hatenastar_mobile」書いた
    cubick
    cubick 2009/05/04
  • 1