タグ

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

  • Big Sky :: Vim で端末機能が動くようになった。

    ひさびさ Vim のエントリを書く気がします。 今から4年ほど前、Vim にスレッドセーフなメッセージキューが欲しいというメールが vim-dev 届きます。 [PATCH] Proof of concept: thread-safe message queue https://groups.google.com/forum/#!searchin/vim_dev/tarruda%7Csort:relevance/vim_dev/65jjGqS1_VQ/fFiFrrIBwNAJ その時はまだ、vim-dev の中にも「Vim はエディタだし必要ない」といった空気があったと思います。 [PATCH] Non-blocking job control for vimscript https://groups.google.com/forum/#!searchin/vim_dev/tarruda%

    Big Sky :: Vim で端末機能が動くようになった。
    yutamoty
    yutamoty 2017/07/24
  • Big Sky :: sudo コマンド書いた。

    Windows で hosts ファイル(C:\Windows\System32\drivers\etc\hosts) を編集するには管理者権限が必要です。またコマンドラインから IP アドレスを変更するのにも管理者権限が必要です。管理者権限で hosts ファイルを編集するにはメモ帳を管理者権限で起動する必要があります。管理者権限でメモ帳を起動する為にはメニューから「メモ帳」を出し、右クリックして「管理者として実行」を選ぶ必要があります。そして実行したメモ帳のメニューから「開く」でファイルを選択します。管理者として開かないのであれば hosts ファイルを右クリックして「送る」等に登録したエディタを単に選べば済む話なのに、随分と手間ですね。 UNIX だと $ sudo vi /etc/hosts とだけタイプすれば良いのにこの手数の多さはちょっとゲンナリします。特にマウスに手を伸ばした

    Big Sky :: sudo コマンド書いた。
  • Big Sky :: golang でメモ専用コマンド「memo」作った。

    « Ruby の a = a + 1 はなぜ undefined method '+' for nil:NilClass なのか | Main | Ruby の Array#<< は Array#push よりも速いか » 僕は日々 memolist.vim という Vim plugin を使い、仕事で思いついた疑問点や会話の一部をメモ取りする様にしています。相手と会話している最中に「あ、ここ大事だ」と思ったら vim を起動して :MemoNew してメモを編集していました。もちろん Vim ですから起動は抜群に速くてとてもご機嫌良く動くのですが、どうしてもこれをシェルから扱いたいという要求に負けてささっと作ってみました。 GitHub - mattn/memo: Memo Life For You README.md memo Memo Life For You Usage NAME:

    Big Sky :: golang でメモ専用コマンド「memo」作った。
  • Big Sky :: Windows ユーザは cmd.exe で生きるべき。

    [D] Windowsはターミナルがダメだから使えないってのは過去の話? 基的にはいい感じに見えますが、いくつか問題は発覚してます。 http://blog.drikin.com/2015/01/windows-2.html 僕は Cygwin よりも msys2 が好きです 理由は最後の方に書きます。 cygwin は windows 上に完全な POSIX を提供するのが目的であって、msys2 は native な windows アプリケーションをビルドするのが目的なのでゴールが違うのよね。そして僕は全て cygwin で染められるのが好きじゃ無い。それだけの話です。 — mattn (@mattn_jp) April 10, 2016 もちろん msys2 を POSIX 環境としても使いますが、一番の目的は cmd.exe から Windows ネイティブなアプリケーションを

    Big Sky :: Windows ユーザは cmd.exe で生きるべき。
  • Big Sky :: 送り主の分からない小包

    今日、嫁から電話があり... 嫁「送り主の分からない小包が届いてる」 僕「どんなん?誰から?俺に?」 嫁「それが分からんねん。英語ばっかりや」 僕「なんて書いてる?」 嫁「フェーフェー、フェデークス...」 僕「それ、運送会社や」 嫁「英語ばっかりで分からんわ。開けていい?」 僕「いや、間違いかも知れんし」 嫁「宛名は合ってるねんで」 僕「なんやろ覚えが無い」 嫁「カードでなんか買い物したんちゃうん...」 僕「してないわー」 家で見ても、確かに送り主が分からない。おそるおそる開けて見ると どどーん。なんか真っ黒いの出てきたと思ったら、ブランケット出てきた。しかも「Google」って書いてある。 かっ... かっちょ... かっちょええやん... おーぷんそーす ぷろぐらむ おふぃす... Google is sending out blankets to open-source deve

    Big Sky :: 送り主の分からない小包
  • Big Sky :: なんでもシェルで書いちゃう男の人って...。

    « C++ の JSON ライブラリ json11 は initializer_list が綺麗。 | Main | 「便利」と「感極まってきました」だけでプログラムが書ける日語プログラミング言語「うじひさ」を作った。 » ShellScript - jq、xmllintコマンドさようなら。俺はパイプが好きだから - Qiita UNIX哲学の一つとしてよく引用されるマイク・ガンカーズの教義に 1.小さいものは美しい。 2.1つのプログラムには1つのことをうまくやらせよ。 というのがあるが、まずこれができていない http://qiita.com/richmikan@github/items/e051b5d882c3dd2a39c6 昔の UNIX で扱っていたデータはだいたい行指向でした。そして UNIX は行指向データを扱う為の OS と言っても過言ではありませんでした。 しかし J

    Big Sky :: なんでもシェルで書いちゃう男の人って...。
  • Big Sky :: ファイル名の一括置換なら massren がめちゃめちゃ便利

    大量にあるファイルのファイル名を一括で変更する場合、どうしても GUI での操作であったりマッチパターンを書くのが面倒だったりしましたが、massren を使えば誰でも簡単にファイル名の一括置換が出来る様になります。 laurent22/massren - GitHub massren - Easily rename multiple files using your text editor https://github.com/laurent22/massren お気に入りのテキストエディタを使って、好きな様にファイル名を変更出来ます。サポートしているOSは Windows, Linux, OSX です。中身は golang で書かれています。 それぞれバイナリが用意されているので自分でビルドする必要はありません。LinuxOSX の人はリンク先にある手順を、Windows の人は

    Big Sky :: ファイル名の一括置換なら massren がめちゃめちゃ便利
  • Big Sky :: Vim script は人々の生活を豊かにしなければならないッ!

    この記事はVim Advent Calendar 2013 : ATND 7日目の記事になります。 2013年もあと少しです。今年も Vim に関する色んな話題が登場しました。 そして数多くの Vim plugin が今年も登場しました。 ステータスバーをスタイリッシュにするプラグイン Markdownをプレビューするプラグイン 正規表現をプレビューするプラグイン ブラウザと通信するプラグイン 補完プラグイン 貴様!?まさか! そのまさかだ!フハハハハハハ... どれも凄い物ばかりでした。そして Vim 界においては日人の活動が特に素晴らしかったと思っています。 k_takata さんの大活躍で多くのパッチが vim-jp より提出され取り込まれました。 何名かの方には Vim 7.4 のリリース後も動作検証に協力頂きましたし、Vim advent calendar 2012 は結局1年

    Big Sky :: Vim script は人々の生活を豊かにしなければならないッ!
    yutamoty
    yutamoty 2014/02/01
  • Big Sky :: 最近の GNU CoreUtils を使っている限り rm -rf / は --no-preserve-root 付けないと / は消せない

    何に関連して記事を書こうと思った訳でもないです。たんなる一人コードリーディングです。 GNU CoreUtils に入ってる rm を読みました。 GNU Project Archives http://ftp.gnu.org/gnu/coreutils/ 読んだのは coreutils-8.17.tar.xz に入ってる src/rm.c preserve_root 変数は 203行目にある main で int main (int argc, char **argv) { bool preserve_root = true; struct rm_options x; true に初期化されていて319行目 if (x.recursive && preserve_root) { static struct dev_ino dev_ino_buf; x.root_dev_ino = get

    Big Sky :: 最近の GNU CoreUtils を使っている限り rm -rf / は --no-preserve-root 付けないと / は消せない
  • Big Sky :: 突然の死に備える Apache モジュール書いた。

    サーバを運用していらっしゃる方であれば、サービスの停止は死に値します。 大事な事なのでもう一度言います。 サーバを運用していらっしゃる方であれば、サービスの停止は死に値します。 サーバ管理者は皆、突然の死に備えるべきです。 そんな過酷な場面に立ち向かうサーバ管理者の皆さんの苦労を少しでも軽減する為に、apache モジュールを書きました。 mattn/mod_suddendeath - GitHub 突然の死! https://github.com/mattn/mod_suddendeath まずコンパイルしてインストールします。 apxs -ci mod_suddendeath.c -lhttpd -lapr-1 そして apache を再起動します。 サービスが動作しているディレクトリの .htaccess に以下を書き込みます。 SetHandler suddendeath すると

    Big Sky :: 突然の死に備える Apache モジュール書いた。
  • Big Sky :: 意外と知られていない github 技

    github で git diff from..to を表示する - #生存戦略 、それは - subtechtext/plain な diff が表示される。.. じゃなくて ... 。 http://subtech.g.hatena.ne.jp/secondlife/20121225/1356421602 github のコミットページ URL は、実は凄く良く出来ている。 例えば pull request のページ Add each Gem bundled data pointer in mrb_state by masuidrive - Pull Request #605 - mruby/mruby - GitHub Showing 17 changed files with 183 additions and 36 deletions . Show Diff Stats H

    Big Sky :: 意外と知られていない github 技
  • Big Sky :: grep で文字列を縦書きに変換

    grep の -o オプションを使うとマッチした部分だけ列挙してくれる。 例えば <div>foo</div><div>bar</div> <div>baz</div> というテキストファイル foo.txt に対して grep -o "<div[^>]*>[^<]*<\/div>" foo.txt と実行すると <div>foo</div> <div>bar</div> <div>baz</div> が得られる。これを応用して echo 餃子の王将 | grep -o . とやると 餃 子 の 王 将 が得られる。 便利!!

    Big Sky :: grep で文字列を縦書きに変換
  • Big Sky :: ぼくが知ってる twitter じゃない

    もう僕が知ってる twitter じゃなくなってきてる。 Twitter、開発者向けガイドラインとAPI変更について説明 ユーザー数制限など厳しい内容 - ITmedia ニュース 米Twitterは8月16日(現地時間)、数週間後に予定しているTwitter APIのバージョン1.1へのアップデートと開発者向けガイドライン「Developer Rules of the Road」の改定について説明した。クライアントアプリのユーザー数に上限を設けるなど、サードパーティーにとって厳しい内容になっている。 http://www.itmedia.co.jp/news/articles/1208/17/news037.html Twitter のことと P3:PeraPeraPrv について - とかいろいろ 彼らはこのユーザーの「好みのクライアントアプリを選ぶ自由と権利」を奪うという決定をしまし

    Big Sky :: ぼくが知ってる twitter じゃない
  • Big Sky :: VimでDBが操作できる vdbi-vim 作った。

    DB操作ツール Emacs DBI を作ってみた - 技術日記@kiwanami このツールの目的は、クロスプラットフォームで便利なDB操作環境を実現することです。 pgAdmin や MySQL Query Browser のようなGUIの良さをCUIで実現してみようとしてみました。すなわち、ぼくのかんがえたさいきょうのDBツールです。ちなみに、このツールにとってEmacsはただの実行環境です。Emacs使わない人でも使うと便利だと思います。 http://d.hatena.ne.jp/kiwanami/20120305/1330939440 VimもーVimもー! って事で作りました。 mattn/vdbi-vim - GitHub Database client for Vim https://github.com/mattn/vdbi-vim Emacs版はepcというRPCプロト

    Big Sky :: VimでDBが操作できる vdbi-vim 作った。
  • Big Sky :: めんどうな作業がわずか数十秒に!新人プログラマが知らないと一生後悔するVimを使ったHTML生成

    « ExecuteExcel4Macro で CALL ワークシート関数使ってShellExecute呼んでそれでVimScript操作してHTMLを数秒で生成するの作った。 | Main | サラリーマンの為のメールが2倍速く書ける(気がする)vim補完書いた » こういう作業ってプログラマなら日常茶飯事で、やり方しらない新人プログラマはいつまでたっても新人なのだけど... めんどうな作業がわずか数秒に!新人デザイナーが 知らないと一生後悔するExcelを使ったHTML生成 | Webロケッツマガジン お客さんから送られてきた、Excelデータからせっせとリストや表のHTMLをコーディングしているあなた!そろそろ手がが疲れてきていませんか? そんなあなたは、この記事で紹介するExcelテクニックをぜひ覚えてください。 面倒な作業が、わずか数秒で終わります! http://webrocke

    Big Sky :: めんどうな作業がわずか数十秒に!新人プログラマが知らないと一生後悔するVimを使ったHTML生成
    yutamoty
    yutamoty 2011/12/20
  • Big Sky :: VimからSimpleNoteを使う方法は何個かありますよという宣伝。

    « gitリポジトリの更新をgrowlしてくれるgit dudeがWindowsで使える様になった。 | Main | WalkmanをLinuxでSonicStage無しに転送する方法 » 私はどうしてEvernoteに見切りをつけ、VimSimpleNoteを使い始めるようになったか - 蟲!虫!蟲! - #!/usr/bin/bugrammer ■ [ Vim ]私はどうして Evernote に見切りをつけ、 VimSimpleNoteを使い始めるようになったか 23:49    よく ライフハック 界隈の人が「 Evernote はす... http://bugrammer.g.hatena.ne.jp/nisemono_san/20111107/1320677380 手前味噌ですが2つご紹介します。 vim-metaraw-simplenote mattn/vim-met

    Big Sky :: VimからSimpleNoteを使う方法は何個かありますよという宣伝。
  • Big Sky :: Twitterの発言から、その前後の会話を簡単に知る方法

    « jQueryのバージョンを1.3に上げたらjQuery Lightbox Plugin (balupton edition)が動かなくなる現象が直った。 | Main | Apacheでセキュアなアクセス制限を提供できるモジュール mod_access_token を試した。 » よく検索エンジンなんかでtwitterの発言が引っかかった時、@付きの会話があり話の前後を辿ってみたりする事があります。 非常にめんどくさいですね。 例えば先日あったkuさんとの会話の一部が見つかったとしましょう。 http://twitter.com/ku/status/1136652052 http://twitter.com/ku/status/1136652052 この発言から会話の前後を辿るには、時刻が記述されたリンクをポチポチとクリックして行くしかなく、とても大変な手間になります。 これを簡単に知

    Big Sky :: Twitterの発言から、その前後の会話を簡単に知る方法
  • Big Sky :: モテるvim女子力を磨くための4つの心得

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

    Big Sky :: モテるvim女子力を磨くための4つの心得
  • Big Sky :: さよならIE6たん

    君と会わなくなって随分と年月が過ぎたね。 最近になって僕は何度か君の事を思い出してる。 君と初めて会った時、僕はまだNetscape Communicatorっていう恋人と付き合ってたんだよね。 彼女はブラウザとしてだけじゃなくって、メーラなんかもこなせる、ちょっとポッチャリした娘だったんだよ。 まぁ僕の友達から言わせると「ポッチャリどころじゃねぇだろ」って言ってたけどね。 でも君と出会って僕の人生は大きく変わった。 君はとてもお茶目で、よく僕に「不正な処理を行いました」なんて可愛いメッセージを見せてくれたよね。 今でも鮮明に覚えてるよ。 何かあるとすぐクラッシュしたよね。CSSで「:first-letter」とか指定すると、簡単に落ちちゃったよね。 一緒に青い画面、よく見に行ったっけ。 互換性の無い独特な仕様も、君らしくて愛くるしいとも思えた。 buttonタグのvalue属性の値とか、

    Big Sky :: さよならIE6たん
  • Big Sky :: Goでblosxomライクなブログサーバ書いた。

    新しい言語を始めて慣れてくると、必ず作りたくなるのがblosxomですね。(ですよね?) て事でGoblosxomライクなのを作った。cgiも出来なくないけど、GoはWebに強かったりもするので、web.goを使ってサーバとして書いた。 名前は「blogo」(ブロゴー!えっ)。blosxomライクにテキストファイルを読み込んで、タイトルと文をこしらえます。 今回はHTMLのテンプレートエンジンとしてmustache(マツタケじゃないよ)を選びました。 結構ハマってしまったけど、一通り動いた。設定ファイル(JSON)でフォルダ位置やタイトル、サブタイトル、リンク一覧なんかを変更出来ます。見た目はこんな感じ。 短いのでソース全部のっける。 package main import "bytes" import "html" import "io" import "io/ioutil" imp

    Big Sky :: Goでblosxomライクなブログサーバ書いた。