タグ

2011年3月21日のブックマーク (78件)

  • Page not found - ファイヤープロジェクト

    The page you are trying to reach does not exist, or has been moved. Please use the menus or the search box to find what you are looking for.

    gologo13
    gologo13 2011/03/21
    gdb でスタックフレームまで見れるのか。すごい
  • not found

  • Practical Scheme

    これはあくまで実装の一例であって、詳細は言語処理系のデザインに任されています。 また、以降の例ではスタックは下方(アドレスの低い方)に伸びるものとします。 まず、C等の手続き型言語におけるスタックフレームの使い方を復習しておきましょう。 次のように、関数Aが関数Bと関数Cを呼び出しているものとします。 int A(int a, ...) { int b, c; B(b); C(c); } int B(int b) { int b1; /* other calculation */ } int C(int c) { int c1; /* other calculation */ } 関数Aが呼ばれた直後のスタックには、保存された呼び出し元のレジスタ、戻りアドレス、 そしてAの引数 (a等) とローカル変数 (b, c) 等が積まれます。スタックポインタ(SP)はスタックの再下端を指し、またフ

    Practical Scheme
  • firefoxをEmacsにしてくれるKeySnailがすごすぎる - sheephead

    firefoxをEmacsにしてくれるKeySnailがすごすぎる 2009.09.27 twitter 日記 anything.el, Emacs, firefox, google, javascript, KeySnail Emacsでコード書いたり、日記書いたりしているときに、ネットで調べものしようとマウスに手を持っていくのが陶しくなったりします。 というわけで、Emacsにw3mなぞ入れてみたのですが所詮はテキストブラウザ、昨今のリッチなサイトは表示がグダグダに乱れてしまって、結局firefox使ったりしてました。はーvimperatorいいなーでもvimだしな、とか思ってたらすごいアドオンがありました。 KeySnail KeySnailとは、firefoxをEmacsライクにしてくれるアドオン。詳しい使い方は作者のmoozさんが詳しく説明してくれています。 Emacs ユーザ

    firefoxをEmacsにしてくれるKeySnailがすごすぎる - sheephead
  • GTK+ でプログラミング:基本形 - えがわたにっき

    とりあえず、GTK+ で何かを作るときに基形となるものをば。これを拡張していけば大抵のものは作れるかと。w ちなみに、GTK+ の関数仕様については、DevHelp というマニュアルを使って調べるのが便利。メニュー Application → Programming の中に入っていると思う。入ってなかったらアプリケーション追加でインストールしておく。 まずプログラム全体はこんな感じ。 1 #include <gtk/gtk.h> 2 3 static void destroy(GtkWidget *window, gpointer data) 4 { 5 /* メインループを終了 */ 6 gtk_main_quit(); 7 } 8 9 int main(int argc, char *argv[]) 10 { 11 GtkWidget *window, *label; 12 13 /

    GTK+ でプログラミング:基本形 - えがわたにっき
    gologo13
    gologo13 2011/03/21
  • 連載: IBM Watson Workspace #鬼わか アプリケーション開発: 第 7 回: IBM Watson Workspace で AI を利用したアプリ連携の実現 #鬼わか 解説(前編)

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    連載: IBM Watson Workspace #鬼わか アプリケーション開発: 第 7 回: IBM Watson Workspace で AI を利用したアプリ連携の実現 #鬼わか 解説(前編)
  • OSS開発ツール/GUIツールキット - Wikibooks

    デスクトップ環境とGUIツールキットの組み合わせは、デスクトップアプリケーションの開発者にとって重要であり、それぞれのツールキットは特有のデザインや機能を提供します。開発者は、プロジェクトの要件やデザインガイドラインに応じて適切な環境とツールキットを選択します。 OSSなデスクトップ環境とそれに対応するGUIツールキットは以下の通りです: GNOMEデスクトップ環境 GUIツールキット:GTK (GIMP Toolkit) GNOMEデスクトップ環境は、GNOME Foundationによって開発されています。GNOMEはLinuxデスクトップ環境の一つであり、GTKツールキットを使用して構築されています。 KDE Plasmaデスクトップ環境 GUIツールキット:Qt KDE Plasmaデスクトップ環境は、KDE Communityによって開発されています。KDEアプリケーションやプラ

    gologo13
    gologo13 2011/03/21
  • 統合開発環境anjutaでGTKプログラミング!!

    anjuta(アニュータと読む)はマイクロソフトのVisual Studioのような統合開発環境(IDE)です。GTK初心者の私がanjutaを使ってlinuxGUIアプリケーションのプログラミングを勉強していく過程を綴っています。私のOSはUbuntu7.04(feisty)です。

  • Apps/Anjuta - GNOME Wiki!

    About Anjuta Features a number of advanced programming facilities including project management, application wizard, interactive debugger, source editor, version control, GUI designer, profiler and many more tools. Focuses on providing simple and usable user interface, yet powerful for efficient development. It supports the following programming languages: C, C++, Java, Javascript, Python, Vala New

  • 各種文書 - 日本GNOMEユーザー会

    各種文書: 跡地 古い文書は削除しました。各種文書の翻訳については GNOME Library をごらんください。 トップページへ

  • GTK+ 3 Reference Manual: GTK+ 3 Reference Manual

    This document is for the GTK+ 3 library, version 3.24.23 . The latest versions can be found online at https://developer.gnome.org/gtk3/. If you are looking for the older GTK+ 2 series of libraries, see https://developer.gnome.org/gtk2/. I. GTK+ Overview Getting Started with GTK+ Basics Packing Building user interfaces Building applications A trivial application Populating the window Opening files

  • Developers - GNOME Developer Center

    Core Libraries Core GLib Reference Manual GLib provides the core application building blocks for libraries and applications written in C. It provides the core object system used in GNOME, the main loop implementation, and a large set of utility functions for strings and common data structures. Previous Versions GIO Reference Manual GIO provides a modern and easy-to-use VFS API. It provides a file

  • gedit Reference Manual

    gedit GeditApp GeditDocument GeditEncodingsOptionMenu GeditFileChooserDialog GeditMessageBus — internal message communication bus GeditMessageType — message type description GeditMessage — message bus message object GeditNotebook GeditPanel GeditPlugin GeditPrintJobPreview GeditPrintJob GeditProgressMessageArea GeditStatusbar GeditTab GeditView GeditWindow gedit-convert gedit-debug gedit-encodings

    gologo13
    gologo13 2011/03/21
    geditにもreferenceがあるのかw
  • viの使い手がvimエディタについて知っておくべき事 トップ10 — 名無しのvim使い

    2. 設定を有効にしないと、vimエディタの便利な機能は利用できない デフォルトではvimエディタはvi互換モードで動作します。 つまり、多くのvimエディタの便利な機能は無効になっています。 もっとも簡単にそれらの機能を有効にする方法は $HOME/.vimrc設定ファイル を用意することです。 これがそのサンプル です。( このファイルの説明はこちらです。 ) 一番最初に気がつくであろうvimエディタの機能は、 vimエディタでは複数回のアンドゥが可能であることでしょう。 .vimrc設定ファイル を作成する時にきっと気づきます。 3. マルチウィンドウ :split カレントウィンドウを2つに分けます。 Control-w k でカーソルを上のウィンドウに、 Control-w j でカーソルを下のウィンドウに移動できます。 :split file.txt ウィンドウを2つに分割し、

  • C/C++のお勉強のためquickrun.vim入れたら学習速度が倍になった(かもしれない) - 今日もスミマセン。

    quickrun.vimvimで編集中のコードをその場でインタプリタで実行したり、コンパイル&実行してくれる超便利なvimプラグイン。 githubから開発版をクローンした $ git clone git://github.com/thinca/vim-quickrun.gitでディレクトリを移動して rake link_installでインストール(実際はln -sでシンボリックリンクを張っているだけなので、git pull するだけでプラグインを最新化できる!) これだけでインストール完了。 使ってみる。まずvimを起動して、以下のようにrubyスクリプトを書いて\rと叩く。すると、ファイル名(拡張子)を見て quickrun.vim がそれに適したインタプリタあるいはコンパイラを選択し、必要ならコンパイルし実行してその結果を別ウィンドウに出力してくれる。 :e でバッファに直接書

    C/C++のお勉強のためquickrun.vim入れたら学習速度が倍になった(かもしれない) - 今日もスミマセン。
  • http://www.machu.jp/posts/20090308/p01/

    http://www.machu.jp/posts/20090308/p01/
  • http://www.machu.jp/posts/20090307/p01/

    http://www.machu.jp/posts/20090307/p01/
  • Gtags.vim の活用を試みる - 肉とビールとパンケーキ by @sotarok

    引き続きvimの設定をいじり中。 GNU Global については,以前machuさんのブログを見て知っていて,gtags.vimも入ってたんだけど,いつもコマンドとか忘れて使えてなかったので,せっかくなので再入門してみることにした。今度は忘れないようにちゃんとキーバインド登録しておこう。 詳しいことは以下参照ってことで。 ソースコードを快適に読むための GNU GLOBAL 入門 (中編) - まちゅダイアリー(2009-03-08) ソースコードを快適に読むための GNU GLOBAL 入門 (前編) - まちゅダイアリー(2009-03-07) で,自分も先のブログを参考にしつつ,加えてちょっと設定した。 " gtags " 検索結果Windowを閉じる nnoremap <C-q> <C-w><C-w><C-w>q " Grep 準備 nnoremap <C-g> :Gtags -

    Gtags.vim の活用を試みる - 肉とビールとパンケーキ by @sotarok
  • Vimの全オプション

  • gtk2-tut - Ruby-GNOME2 Project Website

    このページの情報は古くてあまり役に立たないかもしれません。これから Ruby-GNOME2 をはじめる方は、GitHub のページに行って、gtk3のサンプルを見ることをおすすめします。 このチュートリアルを読むにあたって 序文 さあ始めよう Ruby/GTK2のHello World シグナルとコールバックの仕組み イベント Hello World の詳細 さらに進もう シグナルハンドラをさらに Hello World の改良 ウィジェットのパッキング パッキングボックスの概念 ボックスの詳細 パッキングのデモンストレーションプログラム テーブルを使ってのパッキング テーブルパッキングの例 ウィジェット概観 ウィンドウを持たないウィジェット ウィジェット階層 ボタンウィジェット 普通のボタン トグルボタン チェックボタン ラジオボタン アジャストメント アジャストメントの作成 アジャスト

  • GTK+ 2.0 チュートリアル

    これはC言語でのGTK(the GIMP Toolkit) の使い方に関するチュートリアルです。 訳者注意書き: これは非公式にGtk tutorialの訳を始め、 現在、訳の間違いな どの指摘を頂きたいと思い、公開しながら訳を進めています。 訳していて自分で は意味が取りにくかった場合は、GTKの以前のバージョンのチュートリアルの 和訳であるhttp://www.kitanet.ne.jp/~asler/linux/gtk/ja/gtk_tut_ja.htmlを参考にさせていただいています。こちらの訳に携わった方々にここでお礼を申し上げます。 目次 1. チュートリアル の入手法について 2. はじめに 3. はじめてみよう 3.1. GTKでHello World 3.2. Hello Worldのコンパイル 3.3. シグナル とコールバック 3.4. イベント 3.5. Hello

  • ACジャパン CM ちょっとだけバイバイ(3R推進団体連絡会)

    2010年度 支援キャンペーン

    gologo13
    gologo13 2011/03/21
  • ウェブブラウジングを快適にするChromeショートカット15選 | ライフハッカー・ジャパン

    Google Chromeのショートカットまとめです。ショートカットはたくさんありますが、中でも、ウェブブラウジングを快適にするものをピックアップしました。 それでは以下にショートカットをまとめます。 Alt+F または Alt+E ツールメニューの開閉。 Ctrl+Shift+B ブックマークバーの表示・非表示。 Ctrl+D 現在開いてるページをブックマークに追加。 Ctrl+Shift+D 開いているタブすべてをブックマークに追加。 Ctrl+J ダウンロード履歴を表示。 Shift+Esc Chromeタスクマネージャの起動。 Ctrl+Shift+J Chromeデベロッパツールの起動。 Ctrl+L URLバーにカーソル移動。 Ctrl+Backspace テキストボックス内の文字列を一定間隔まとめて削除。 Ctrl+G ページ内検索。Ctrl+Gを押し続けることでヒットしたワ

    ウェブブラウジングを快適にするChromeショートカット15選 | ライフハッカー・ジャパン
  • スタックフレーム - 関数に渡される引数を知る - Web/DB プログラミング徹底解説

    この資料は x86 アーキテクチャに関する資料です。 障害の原因究明をする際に、ある関数へ渡されるデータがわかると都合が良い場合が少なくありません。 つまり、Func1(int x) というような関数に x = 10 というときにエラーが発生する、という情報がわかれば開発者がデバッグするために非常に有効な情報といえるでしょう。 トラブルシューティングを行うときに、引数の受け渡しがどのように行われるのかを知ることは非常に重要です。 x86 インテルアーキテクチャではプロシージャを呼び出す前にスタックに引数を積み上げます。 スタックは主にここで説明するような関数呼び出しを行うために利用される、連続したメモリ領域のことです。 スタックは、アドレスが小さいほうへとデータが積み上げられます。スタックへデータを積み上げることを PUSH といい、 逆にスタックの上部からデータを取り出すことを POP

    スタックフレーム - 関数に渡される引数を知る - Web/DB プログラミング徹底解説
  • コールスタック - Wikipedia

    この記事には複数の問題があります。改善やノートページでの議論にご協力ください。 出典がまったく示されていないか不十分です。内容に関する文献や情報源が必要です。(2023年4月) 出典は脚注などを用いて記述と関連付けてください。(2023年4月) 出典検索?: "コールスタック" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL コールスタックまたは呼び出しスタック(英: call stack)とは、プログラムで実行中のサブルーチン(関数)に関する情報を格納するスタックである。実行中のサブルーチンとは、呼び出されたもののまだ処理が完了していないサブルーチンのことを指す。実行スタック (execution stack)、制御スタック (control stack)、関数スタック (function stac

    コールスタック - Wikipedia
    gologo13
    gologo13 2011/03/21
    糞勉強になるな
  • 弱い参照 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "弱い参照" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2011年10月) 弱い参照(英: weak reference、ウィークリファレンス)あるいは弱参照とは、参照先のオブジェクトをガベージコレクタから守ることのできない参照のことである。弱い参照からのみによって参照されるオブジェクトは到達不可能とみなされ、従っていつでも解放することができる。弱い参照は、通常の参照(強い参照、強参照)による諸問題を解決するために用いられる。PythonJavaをはじめとするガベージコレクタを実装したオブジェクト指向プログラミング言語の多くは、弱い参

    gologo13
    gologo13 2011/03/21
  • “Stop the World”を防ぐコンカレントGCとは? (1/2) - @IT

    “Stop the World”を防ぐコンカレントGCとは?:現場から学ぶWebアプリ開発のトラブルハック(2)(1/2 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) Full GC問題の時代が再び到来! それまで順調に動いていたはずのWebアプリケーションが、ある時突然、応答を返さなくなる。そして、運用者があたふたしている間に、何事もなかったかのように再び動き出す。 Javaで構築したシステムにかかわる者ならば誰しもが体験するであろう事象、そうFull GC(ガベージ・コレクション)だ。Full GCが行われている間、すべてのアプリケーションスレッドは停止する。この事象は“Stop the

    “Stop the World”を防ぐコンカレントGCとは? (1/2) - @IT
    gologo13
    gologo13 2011/03/21
  • Platinum Support

    Deploying, running and managing your Ruby on Rails app is taking away precious resources? Engine Yard takes the operational overhead out of the equation, so you can keep innovating. Fully-managed Ruby DevOpsEasy to use, Git Push deploymentAuto scaling, boost performancePrivate, fully-configured Kubernetes clusterLinear pricing that scales, no surprisesDecades of Ruby and AWS experience

    Platinum Support
  • るびま

    『るびま』は、Ruby に関する技術記事はもちろんのこと、Rubyist へのインタビューやエッセイ、その他をお届けするウェブ雑誌です。 Rubyist Magazine について 『Rubyist Magazine』、略して『るびま』は、日 Ruby の会の有志による Rubyist の Rubyist による、Rubyist とそうでない人のためのウェブ雑誌です。 最新号 Rubyist Magazine 0058 号 バックナンバー Rubyist Magazine 0058 号 RubyKaigi 2018 直前特集号 Rubyist Magazine 0057 号 RubyKaigi 2017 直前特集号 Rubyist Magazine 0056 号 Rubyist Magazine 0055 号 Rubyist Magazine 0054 号 東京 Ruby 会議 11 直

  • ブルームフィルタ - Wikipedia

    この項目では、確率的データ構造について説明しています。画像にぼかし効果を付加する画像フィルタについては「川瀬のブルームフィルター」をご覧ください。 ブルームフィルタ(英語: Bloom filter)は、1970年に Burton H. Bloom が考案した空間効率の良い確率的データ構造であり、あるデータが集合の要素である(集合に含まれている)かどうかの判定に使われる。ただし判定は正確ではなくて、含まれていないのに含まれていると誤って判定すること偽陽性(false positive)の可能性がある。しかし含まれているものを含まれていないと誤判定すること偽陰性(false negative)はない。なお集合に要素を追加することはできるが、集合から要素を削除することはできない(ただし、拡張をした counting filter であれば削除もできる)。集合に要素を追加していくにつれて偽陽性の

    ブルームフィルタ - Wikipedia
  • 乱択アルゴリズム紹介(Bloom Filter) - Preferred Networks Research & Development

    吉田です。相変わらず乱択アルゴリズム紹介ということで、今日はBloom Filterの話をしたいと思います。今までと違うのはBloom Filterはある問題を解くアルゴリズムではなくデータ構造であるということです。データ構造に乱数を導入するとどういうことが出来るようになるか見てみましょう。

    乱択アルゴリズム紹介(Bloom Filter) - Preferred Networks Research & Development
    gologo13
    gologo13 2011/03/21
    よくわからん。
  • 日本語かな漢字変換における識別モデルの適用とその考察について - Preferred Networks Research & Development

    豊橋で豊橋カレーうどんをべてきました。徳永です。 金曜日から大変な地震が発生しています。被災地の皆様のご無事と、救助に向かわれた方のご無事をお祈りいたします。 さて、今回は、3/7〜3/11の間、豊橋技科大で行われた2011年の言語処理学会年次大会の参加報告をしたいと思います。私はC4セッション(日本語入力における言語処理(1))で、「C4-6 日語かな漢字変換における識別モデルの適用とその考察」というタイトルで発表してきました。 予稿集のPDFの方は、こちらにアップロードしておきました。→日語かな漢字変換における識別モデルの適用とその考察 発表内容に関しては、予稿のPDFと発表資料の方を見ていただければと思いますが、ここではもう少しぶっちゃけて、発表の狙いなどを書いてみたいと思います。 この発表の貢献を簡単に述べると、識別モデルを使うと変換精度が上がることが実験的に確かめられたよ、

    日本語かな漢字変換における識別モデルの適用とその考察について - Preferred Networks Research & Development
  • 入力メソッドの研究開発は日本が世界をリードできるテーマ - 武蔵野日記

    3日目になるとだいぶ現地にも慣れてくる。@tettsyun くんたちと同じバスだったようだが、彼らは3日目しか来ていないようで、日帰りだときついんじゃないかな〜と思う半面、5日間もいると日常業務が完全に滞ってしまうので(メールも満足に読めない)、今年は外に出かける回数を意識的に減らさないと仕事にならない、と思ったりもする。 3日目の目玉はなんといってもテーマセッション「日本語入力における言語処理」。裏で「不自然言語処理 枠に収まらない言語表現の処理」もあり、そちらも大盛況だったようだが、IMEに関するテーマで60人以上人が集まるということが驚き。もっとも人が多かったのは@taku910 さんの発表だったが、これだけ日本語入力が盛り上がりつつあるのは Google 日本語入力(+Mozc)の影響が極めて大きいと思うので、ありがたいことである。 ちなみに自分の原稿は こちら (スライドは写真を

    入力メソッドの研究開発は日本が世界をリードできるテーマ - 武蔵野日記
  • ガベージコレクション - Wikipedia

    ガベージコレクション[注釈 1](英: garbage collection、GC)とは、コンピュータプログラムが動的に確保したメモリ領域のうち、不要になった領域を自動的に解放する機能である。1959年ごろ、LISPにおける問題を解決するためジョン・マッカーシーによって発明された[1][2]。 メモリの断片化を解消する機能はコンパクション(英: memory compaction)と呼ばれ、実現方法によってはガベージコレクションと共にコンパクションも行う仕組みになっている。そのためコンパクションを含めてガベージコレクションと呼ぶ場合もあるが、厳密には区別される。 また、ガベージコレクションを行う主体はガベージコレクタ(英: garbage collector)と呼ばれる。ガベージコレクタはタスクやスレッドとして実装される場合が多い。 「ガベージコレクション」を直訳すれば「ゴミ集め」「ごみ拾

    gologo13
    gologo13 2011/03/21
    多くの実装では、入れ違いにより誤って到達可能なメモリが不可能と判断されないように、ガベージコレクトが開始されると他の処理を止め、本処理が中断される(Stop-the-world ガベージコレクタ)
  • Cheney's Algorithm

    Cheney's Algorithm is a method of performing a copying garbage collection using semi-spaces, that is, it works by splitting heap memory into two parts and only using one at a time. Essentially, at any given moment there is an active part of memory from which new objects are allocated. When conditions get such that a garbage collection is needed, the live objects of the active part of memory are

  • malloc - Wikipedia

    malloc(マロック, エムアロック)、calloc、reallocは、動的メモリ確保を行うC言語の標準ライブラリの関数である[1][2][3]。確保したメモリの解放にはfree関数を使用する。 mallocが使用する実際のメモリ確保機構には様々な実装がある。それらの性能は、実行時間と要求されるメモリの両面で様々である。 C言語は通常メモリを「静的メモリ確保」か「自動メモリ確保」で管理する。静的変数は主記憶上にプログラムが存在する期間中ずっと確保されている。自動変数(局所変数)は通常コールスタック上に確保され、対応するサブルーチンが実行中の間だけ存在する。しかし、いずれの方法も限界があり、確保できるメモリ量(変数のサイズ)はコンパイル時に決められてしまう。必要なサイズが実行時でないと判明しない場合、例えばディスク上のファイルから任意のサイズのデータを読み込むような場合、固定サイズのデータ

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • コマンド:od: UNIX/Linuxの部屋

    ●od コマンドの基的な使い方 od は "Octal Dump" の略なので、デフォルトは 8進数ダンプとなる。ただし 2バイト単位での 8進数表記であるため、かなりわかりづらい。 % od file.txt 0000000 020474 026455 044444 035144 064440 062156 074145 064056 0000020 066564 026154 020166 027061 032063 031040 030060 027471 0000040 032060 030457 020070

    コマンド:od: UNIX/Linuxの部屋
    gologo13
    gologo13 2011/03/21
    何バイト単位でダンプするかを指定できる
  • C++ のプログラムのデバッグを楽にする方法

    Google が公開しているソフトウェアの解説シリーズ(→その1 , その2)の続きです。今回は google-glog を使ってスタックトレースを表示する方法についてご紹介します。 C++ でプログラムを書いているとよく遭遇するのがセグメンテーション違反というエラーです。不正なアドレスへのアクセスなどによりセグメンテーション違反が起きると、通常、 UNIX 系の OS では SIGSEGV というシグナルによってプログラムが終了するとともに、 core というファイルが作られます。 core ファイルにはデバッガから参照できるいろいろな情報が残っていますが、多くの場合に役に立つのは、スタックトレースという情報です。スタックトレースを見れば、プログラムがどこでクラッシュしたのか、どのような関数を経由してそこにたどり着いたのかがわかります。プログラムがクラッシュした箇所を特定できれば、単純な

    C++ のプログラムのデバッグを楽にする方法
    gologo13
    gologo13 2011/03/21
    google-glog スタックトレース。すごく便利そう。この記事自体も勉強になる。
  • zshのzptyを使って端末が必要な処理を自動化する - 技術メモ帳

    zsh のモジュールに zpty というのがあるのを最近発見した。 どうもコレを利用すれば指定したコマンドを 仮想端末上で実行することが出来るらしい。 具体的にどういったことが出来るようになるのかというと、 端末が必要なプログラムを自動化することが出来る。 たとえば、パスワード入力処理などだ。 パスワード文字列を標準入力から読み込ませようとしても、 大抵のプログラムでは入力できない。 なぜかというと、多くのプログラムにおいてパスワード入力処理は 端末から読み込むように作られているからだ。 zpty を利用すればそういったたぐいのものをすべて自動化できる。 いわゆる、expect というコマンドで実現していたことが zsh だけで出来るのだ。 今回は、簡単に試すことが出来るサンプルとして、 su コマンドのパスワード入力を zpty を使って自動化してみる。 まず、zsh に標準添付されてい

    gologo13
    gologo13 2011/03/21
    よくわからん。
  • topコマンドの出力をカラフルにする - 技術メモ帳

    ずっと知らなかった。。 こういったずっと前から知ってるコマンドが カラフルになると感動する。DDI。 やり方は、起動中にzコマンドを入力するだけ。 他にもどこをハイライトするか、など詳細に設定できる。 $ top # 起動中にzと入力 設定し終わったら、W と大文字で入力する事で $HOME/.toprc に現在の設定が保存される。 Linux とかにはいってる procps パッケージの top コマンドだけです。 参考: http://www.linux.or.jp/JM/html/procps/man1/top.1.html

    gologo13
    gologo13 2011/03/21
    コレはすごい。
  • 入力履歴からの予測による自動補完機能 - 技術メモ帳

    zshには、過去の入力履歴から予測し、 リアルタイムに自動補完してくれるという機能というのがあるようだ。 predict-on というのが該当する。 例えば以下の画像は、 この機能を有効にした状態で 'h' とだけ入力した状態だ。 Enter キーを押すだけでただちに実行できる。 なんだか、結構便利だったので 以下のような設定で使用する事にした。 % autoload predict-on % zle -N predict-on % zle -N predict-off % bindkey '^X^Z' predict-on % bindkey '^Z' predict-off % zstyle ':predict' verbose true zsh の man で載っているキーバインドに設定してみた。 Ctrl+X Ctrl+Z で predictモードが ON になり、 Ctrl+Z

    入力履歴からの予測による自動補完機能 - 技術メモ帳
    gologo13
    gologo13 2011/03/21
  • sshで指定したコマンドしか実行できない公開鍵を作る - 技術メモ帳

    自動バックアップ処理をさせたいが シェル権限を与えたくないときとかに使える技。 やり方は簡単で $HOME/.ssh/authorized_keys の "コマンドを制限したい公開鍵" の行の先頭に 実行させたいコマンドを記述すればよい。 そのときのフォーマットはだいたい以下のようになる。 command="実行させたいコマンド",sshのオプションをカンマ区切りで書く command=hoge というのを付け足すことによって その公開鍵でアクセスがあったときに 指定したコマンドを実行させることができる。 たとえば、uptime を実行させたいときは、 以下のようにすればよい。 command="uptime",no-pty,no-port-forwarding,no-X11-forwarding,no-agent-forwarding ssh-rsa AAAABbBFERTWER....

    gologo13
    gologo13 2011/03/21
    すごい。こんなこともできるのか。公開鍵にできるコマンドを指定。
  • sshで多段ログイン - 技術メモ帳

    たとえば以下のように A というサーバーをログインしなければ到達できない B というサーバーがあったとき local --> hostA --> hostB 二回に分けて入力するのが面倒くさい。 local$ ssh user@hostA # Aにログイン成功 hostA$ ssh user@hostB # やっとBに到達。面倒!! hostB$ そんなときに、以下の構文を思い出すことだろう。 ssh user@host リモートで実行したいコマンド リモートで実行したいコマンドで "ssh user@hostB" ってやったらいいんじゃないかと 思いつきでやってしまうと、以下のようにエラーになる。 $ ssh user@hostA "ssh user@hostB" Pseudo-terminal will not be allocated because stdin is not a t

    gologo13
    gologo13 2011/03/21
    getty して端末を割り当てるのはリソースがもったいない」こういうこともかなり勉強になって有り難い。
  • vim - plugins - 技術メモ帳

    vim の MRU という、"最近のいじったファイルリスト" を 簡単に参照できるプラグインがあるのだが、 これをボクはかなり便利に使っている。 で、vih と以下のようにエイリアスする事で すぐに使えるようにしてる。 $ alias vih='vi +MRU' あと、最近ハマっているのが、 :Vexplore として、左側にファイルエクスプローラーを 表示させておいて(vim7 から標準だったはず) ファイルに、hjkl で移動した後で p(プレビュー), o(編集) と行ったような感じでファイルを参照する事が出来る。 そしてそれが便利。 追記: Vexplore なのに、 VExplore と表記してたのを 修正した。drry さんにわざわざ教えていただいた。 ありがとうございます。

  • 環境変数を直接編集 - 技術メモ帳

    zsh % vared PATH どうでもいいけど、zshに bye ってあったのね。 % bye

    gologo13
    gologo13 2011/03/21
    vared。いちいちexportしてたよ。こっちのがいいかもな。
  • tail -fしているファイルをmvしてもそのまま読み込み続ける事が出来るのはなぜか - 技術メモ帳

    せっかく教えていただいたので tail -f しているファイルをmvしても そのまま読み込み続ける事が出来るのはなぜなのかを調べてみた。 『詳解UNIXプログラミング(Advanced Programming in UNIX Environment)』 の CHAPTER.4 の 4.14 ファイルシステム に この件に関連する情報が記載されている。 コレを参考にボクの解釈した結果をまとめてみた。 間違っている箇所がありましたら 気軽にご指摘していただけますようよろしくお願い致します。 まず、事の発端から。 ボクのこの一文。 http://d.hatena.ne.jp/lurker/20070228/1172595016 そうそう、tail で思い出したが、GNUのtailはデフォルトで (たぶん/詳しくは知らない)inode番号を見ているため tail -f した状態で そのログファイル

    gologo13
    gologo13 2011/03/21
    ファイルをmvしてもi-node番号は変化しない。
  • 意外と知られていないファイル探索方法(grep --include) - 技術メモ帳

    書こう書こう書こうと思っていたら先に書かれてしまった。 404 Not Found この行き場の無い感情をどうにかボクの中から排除しなければならない。 そう考えたときに独り言のようにこのブログロに記述すれば良いじゃないかという 結論にたどり着いたのはもはや必然とも言える。 find | xargs による探索だが、それが簡単なものであれば 実は grep コマンドだけでうまくいく。 GNU grep、BSD 系の grep コマンドでは include、exclude オプションで再帰検索時に検索対象とするファイルを絞り込む事が出来るのだ。 --include=pattern --exclude=pattern たとえば、カレントディレクトリ以下の *.rb から test という文字列を 含むファイルを探索したい場合は次のようにすれば良い。 fgrep -r --include='*.r

    gologo13
    gologo13 2011/03/21
    grep --include
  • zshのzargsコマンドの使い方 - 技術メモ帳

    zsh には、zargsコマンド(組み込み関数) というのが用意されている。 これは、拡張グロブ用の xargs コマンドと言っても良いだろう。 マニュアルを見ると、xargs コマンドとオプションは、完全に互換しているらしい。 autoload zargs とする事で利用可能だ。 使い方だが、xargs というと、標準入力から読み込んだ要素、行に対して 特定のコマンドを実行するというものだが zargs の場合は、引数に指定した 拡張グロブ に対してこれらの処理を行う。 % zargs OPTIONS -- 拡張グロブ -- 実行したいコマンド たとえば、xargs で一番利用されると思われる ファイル数が ARG_MAX を越えてしまっているディレクトリ内のファイルを まとめて削除したい場合などは、次のようなコマンドを入力すれば良い。 % zargs -- ./* -- rm これだけ

  • 漢のzshに乗り換えた時にアッーってなるコト - 技術メモ帳

    男のbashユーザーが、バラ色の紳士こと漢のzshに乗り換えたときに アッーってなるコト事を先ほどいくつか思いついたので共有する。 !!とかの履歴実行はrコマンドで zshには、r というシェル組み込みコマンドがあって 履歴からの実行が簡単に行える。 たとえば、一番最後に実行したviコマンドを実行したいときなどだ。 bashなんかだと !vi で出来るのだが、 rコマンドだったら % r vi でよい。 直前に実行したコマンドを再び実行したいとき、 bashなんかだと !! というやり方になるが、 rコマンドでは、 % r とするだけでよい。 また、文字列を置き換えてからの履歴実行はどうだろう。 たとえば次のようなbashの例だ。 $ vi .zshrc $ !vi:s/zsh/bash/ これは、最後に実行したviコマンドの引数文字列を ":s/zsh/bash/" によりzshという文

    gologo13
    gologo13 2011/03/21
    やばい。知らないことばっかり。
  • エンディアン - Wikipedia

    コンピュータで扱う数値(やデータ)は、1バイトで表現されるもの以外に、2バイト、4バイト、8バイトなど複数バイト(多バイト)で表現されるものがある。一方、記憶装置は汎用化され、最小の1バイト単位でも扱えるように、1バイト毎に番地(アドレス)が連続して割り振られている。すると、多バイトの数値やデータの各バイトをどのような順序で記憶装置に格納するかについての規則(バイトオーダ、バイト順)は、いくつか種類(選択肢)があることになる。 ビッグエンディアン(右)とリトルエンディアン(左) 数値の1番小さい桁1バイト分を、1番大きいアドレスの記憶装置に配置し順に並べる規則をビッグエンディアンという。それと対称的に、数値の1番小さい桁1バイト分を、1番小さいアドレスの記憶装置に配置し順に並べる規則をリトルエンディアンという[1][2]。 ビッグエンディアンを採用しているコンピュータやCPUとしては、IB

    エンディアン - Wikipedia
    gologo13
    gologo13 2011/03/21
    odコマンドひとつで実行環境のエンディアン確認が可能
  • より良いPHPerになるための20Tips

    去年の話ですが、海外でこんな記事が上がっていました。 20 Tips you need to learn to become a better PHP Programmer 記事の内容は、かなりレベルが低いです。 しかし、初心者のうちに知っておけば、より早く成長出来るでしょう。 初心者PHPerのために、この記事の翻訳を載せます。 20 Tips you need to learn to become a better PHP Programmer PHPは、同じオブジェクトの扱い方でも複数の書き方を持っている、とても気まぐれなプログラミング言語だ。 詳しくは、私の書いた”The Art of Programming“を読むと良い。 これから書くTipsは、過去のプロジェクトから私が学んだコードの可読性、メンテナンス性を上げ、あなたを素晴らしい、より進んだPHPプログラマーにするもの

    gologo13
    gologo13 2011/03/21
  • 『オブジェクト指向講座 スタック領域とヒープ領域』

    令和からの働き方について -TownSoft- 元「傲慢SE日記」で、しばらく放置していました。 2020年からはこれからの働き方などについて書いて行こうかと思います。 カテゴリーは手続き型言語になれている人がどうやったらオブジェクト指向を理解できるのかを考えて書いている記事です。 多少の言語知識があることを前提に進めます。 C#やJava等の言語では肝となる部分です。 この概念が分からないとガベージコレクションの概念が分かりません。 そして、この概念を持っているとオブジェクト指向の理解が早まります。 さて、スタック領域は皆さん知っているはずです。 特にC言語を使っている方はお手の物のはずです。 なぜなら、 普段使っている領域 ですから。 まぁ、順を追って一つずつ解決していきましょう。 まず。ポインタの概念からゆっくりと解決していきましょう。 int i = 0; この書式はint型のi

    『オブジェクト指向講座 スタック領域とヒープ領域』
    gologo13
    gologo13 2011/03/21
    コレは分かりやすい。
  • http://d.hatena.ne.jp/hyu_mu/20110320/1300638860

  • C言語系/memos/pkg-config - Glamenv-Septzen.net

    id: 486 所有者: msakamoto-sf 作成日: 2009-11-18 11:39:34 カテゴリ: C言語 [ Prev ] [ Next ] [ C言語系 ] pkg-configの自分用メモ pkg-config 家 http://pkg-config.freedesktop.org/wiki/ 概要 ライブラリなどのパッケージ毎に、インストール先やコンパイル/リンクオプションを定義したメタデータファイルを用意しておき、 $ gcc -c `pkg-config --cflags gtk+-2.0` -o foo.o foo.c $ gcc `pkg-config --lflags gtk+-2.0` -o gtktest foo.o のように組み込む事で、コンパイルオプションやリンクオプションを展開してくれる開発ツールである。 対応するメタデータファイルは、"パッケー

    gologo13
    gologo13 2011/03/21
    普通に詳しいはコレ pkgconfig
  • Vim-users.jp - Hack #123: VimでSKK日本語入力環境を実現する

  • LTでvimプラグインについてはなしてきた

    昨日、前の会社でLTがあって参加してきました。 せっかくなんで自分の発表をさらしときます。 内容はvimの便利なプラグインについてです。 前から使ってたのと vim勉強会 の資料を見て使いだしたのも含めての紹介です。 EnhacedCommentify.vim これはコメントアウト、コメントインを簡単にできる。 ¥x で可能。ビジュアルモードでもインサートモードでも使用可能。 かなりの数の言語のコメントアウトをサポートしているので便利。 特に HTML とかめんどくさくて重宝します。 で、サポートしていない言語についても簡単に追加することができます。 tanabee さんの コメントアウトと、その解除をトグルさせる が actionscriptのコメントアウトの追加方法を書かれているので参考になります。 mxml の 記事を 参考に設定しているのですが、 auocomplpop.vim +

    LTでvimプラグインについてはなしてきた
  • GitHub - motemen/hatena-vim: Vim scripts for posting/updating hatena diary/group

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - motemen/hatena-vim: Vim scripts for posting/updating hatena diary/group
  • GitHub - kana/vim-scratch: Vim plugin: Emacs like scratch buffer

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - kana/vim-scratch: Vim plugin: Emacs like scratch buffer
  • ManPageView - withdrawn : vim online

    withdrawn -- the search engine bots got ahold of the "unsatisfactory" address and within a week -810 was dumped onto manpageview's karma.  The address problem was fixed, but the karma wasn't, and so with the rating being so negative, few bother to look at manpageview here anymore.  You can still go to my website, http://www.drchip.org/astronaut/vim/index.html#MANPAGEVIEW, and get a copy.

  • matchit.zip - extended % matching for HTML, LaTeX, and many other languages : vim online

    The matchit.vim script allows you to configure % to match more than just single characters.  You can match words and even regular expressions. Also, matching treats strings and comments (as recognized by the syntax highlighting mechanism) intelligently. The default ftplugins include settings for several languages: Ada, ASP with VBS, Csh, DTD, Essbase, Fortran, HTML, JSP (same as HTML), LaTeX, Lua,

  • GitHub - Shougo/neocomplcache.vim: Ultimate auto-completion system for Vim.

    "Note: This option must set it in .vimrc(_vimrc). NOT IN .gvimrc(_gvimrc)! " Disable AutoComplPop. let g:acp_enableAtStartup = 0 " Use neocomplcache. let g:neocomplcache_enable_at_startup = 1 " Use smartcase. let g:neocomplcache_enable_smart_case = 1 " Set minimum syntax keyword length. let g:neocomplcache_min_syntax_length = 3 let g:neocomplcache_lock_buffer_name_pattern = '\*ku\*' " Enable heavy

    GitHub - Shougo/neocomplcache.vim: Ultimate auto-completion system for Vim.
  • grep.vim - Grep search tools integration with Vim : vim online

    The grep plugin integrates grep like utilities (grep, fgrep, egrep, agrep, findstr, silver searcher, ack, ripgrep, git grep, sift, platinum searcher and universal code grep) with Vim and allows you to search for a pattern in one or more files and jump to them. To use this plugin, you will need the grep like utilities in your system.  If a particular utility is not present, then you cannot use the

  • minibufexpl.vim : タブエディタ風にバッファ管理ウィンドウを表示 — 名無しのvim使い

    現在開いているバッファのリストを、 画面上部の小さなウィンドウで表示するスクリプトです。 このスクリプトを使用すると、タブエディタのようにvimエディタを 使用することが出来るようになります。 (Windows, Mac) 概要 minibufexpl.vim : Elegant buffer explorer - takes very little screen space http://www.vim.org/script.php?script_id=159 プログラミングしていると(それ以外でも)、 どうしても複数のファイルを同時に操作することが多くなります。 そんな時、複数のファイルを素早く切り替えながら、 コーディングできるととても便利です。 このスクリプトはタブエディタのような環境を提供してくれる、 大変有用なスクリプトです。

  • mru.vim - Plugin to manage Most Recently Used (MRU) files : vim online

    Overview The Most Recently Used (MRU) plugin provides an easy access to a list of recently opened/edited files in Vim. This plugin automatically stores the file names as you open/edit them in Vim. This plugin will work on all the platforms where Vim is supported. This plugin will work in both console and GUI Vim. This version of the MRU plugin needs Vim 7.0 and above. If you are using an earlier v

  • mru.vim : 開いたファイルの履歴を管理して、最近開いたファイルに簡単にアクセスできるようにするプラグイン — 名無しのvim使い

    このスクリプトを使用すると、 vimエディタで最近開いたファイルを記録し、 好きな時にその一覧を表示する事ができます。 一覧から選択したファイルを開く事が可能で、 これにより編集途中のファイルなどに容易にアクセスする事ができます。 ファイルを開いた履歴は、スクリプトが自動的に記録していきます。 (Windows, Mac)

  • Vim-users.jp - Hack #183: Vim日本語ドキュメントを更新しよう

  • 日本語に翻訳されたvimエディタのヘルプをインストールして使用する。 — 名無しのvim使い

    翻訳されたヘルプドキュメントを入手する。 まず、日語のヘルプドキュメントをダウンロードしてください。 日語のヘルプドキュメントは、現在、次のURLで配布しています。 Vim語ドキュメント(香り屋) http://www.kaoriya.net/vimdoc_j/ このページの、「Vim語ドキュメントダウンロード(スナップショット)」のリンクから 圧縮ファイルの形式のドキュメントをダウンロードしてください。 ダウンロードした圧縮ファイルを解凍する。 ダウンロードした圧縮ファイルを解凍します。 何らかの圧縮ファイル解凍ツールで解凍すると、次のように展開されるはずです。 runtime/ | +-- doc/ | +-- ada.jax | +-- autocmd.jax | +-- change.jax | +-- cmdline.jax | +-- debug.jax | +--

  • L9 - Vim-script library : vim online

    Repository: https://bitbucket.org/ns9tks/vim-l9/ Issues: http://bitbucket.org/ns9tks/vim-l9/issues/ Download latest(development) version https://bitbucket.org/ns9tks/vim-l9/get/tip.zip ============================================================================== INTRODUCTION                                                 *l9-introduction* l9 is a Vim-script library, which provides some utility f

  • scratch - Emacs like scratch buffer : vim online

    *scratch* is a Vim plugin to provide Emacs-like scratch buffer.  You can write anything in it, and you can also evaluate a part of the buffer as Vim script. It is a temporary buffer and it is not related to a real file, so the content of the buffer will be discarded when you quit Vim.  This buffer is useful when you test a bit of script or other use. Requirements: - Vim 7.0 or later Latest version

  • C/Migemo — KaoriYa

    ローマ字入力から日語を(インクリメンタルに)検索するための正規表現を生成するMigemoを配布しています。 概要 ローマ字入力から日語を(インクリメンタルに)検索するための正規表現を生成するRuby/Migemoというライブラリがあります。それをVimに組み込むためにC言語でC/Migemoとしてライブラリに書き起こし公開しています。ソースコードに辞書ファイルは含まれていませんが、インターネットに接続された環境ではライブラリのビルド時に自動的にダウンロードされます。 ダウンロード Windowsバイナリ(DLL) 下のリンクから適切なバージョンを選択してダウンロードしてください。 C/Migemo for Windows 32bit C/Migemo for Windows 64bit ソースコード 完全なソースコードは https://github.com/koron/cmigemo

  • Vimエディタプラグイン — 名無しのvim使い

    デフォルトでインストールされている — 作者: 小見 拓 — 最終変更 2012年01月08日 15時22分 サイトで紹介しているvimスクリプトのうち、 vimエディタにデフォルトで添付しているスクリプトの記事の一覧です。 バッファ管理系 — 作者: 小見 拓 — 最終変更 2012年01月08日 15時22分 サイトで紹介しているvimスクリプトのうち、 バッファの管理機能やコントロール機能を提供するスクリプトのドキュメントの一覧です。 ファイル管理系 — 作者: 小見 拓 — 最終変更 2012年01月08日 15時22分 サイトで紹介しているvimスクリプトのうち、 ファイルの管理機能やコントロール機能を提供するスクリプトのドキュメントの一覧です。 検索機能拡張系 — 作者: 小見 拓 — 最終変更 2012年01月08日 15時22分 サイトで紹介しているvimスクリプト

  • easy (un)commenting out of source code (Win, Mac) [ 名無しのVIM使い ]

    概要 vim online Tip #271: easy (un)commenting out of source code http://www.vim.org/tip_view.php?tip_id=271 Visual Modeで指定した範囲のソースにコメントを付けたり、外したりするスクリプトです。 インストール方法 vim onlineのTip #271 を参考にして、 スクリプトを製作しました。 中身は以下のようになっています。 " commentout.vim " lhs comments vmap ,# :s/^/#/<CR>:nohlsearch<CR> vmap ,/ :s/^/\/\//<CR>:nohlsearch<CR> vmap ,> :s/^/> /<CR>:nohlsearch<CR> vmap ," :s/^/\"/<CR>:nohlsearch<CR> v

  • vim の text-object をより便利に使えるプラグイン - surround.vim - 2nd life (移転しました)

    http://www.vim.org/scripts/script.php?script_id=1697 vim7 から追加された text-object は大変便利で、今や手放せなくなっています。その text-object をより便利に使えるプラグイン、surround.vim が便利すぎるので紹介します。 いままで、text-object では (以下では、コードの『*』の位置に現在カーソルがあると考えてください。) foo 'b*ar' bazの位置にカーソルがあるとき、i' でシングルクオーテーションの中身を選択できたり、a' でシングルクオート含む部分を選択できました。しかし『'』そのものを削除したり、置換したりはできなく、ちょっと不便でした。しかし、surround.vim では ds cs ys vs それぞれにコマンドを割り当てて、様々なことができるようになってます。たと

    vim の text-object をより便利に使えるプラグイン - surround.vim - 2nd life (移転しました)
  • vim でのオススメ plugin

    最近 .vimrcを貼り付けるのが流行ってるみたいなので自分も.vimrcを貼り付け、るわけでなくオススメの plugin を紹介してみようかと。 Align.vim http://www.vim.org/scripts/script.php?script_id=294 痒いところに手が届く整形ぷらぎん。 options = { width => 100, height => 50, background => nil, } なソースを範囲選択して :'<,'>Align => すると options = { width => 100, height => 50, background => nil, } のように整形してくれます。 Allargs.vim すべてのバッファでコマンドを実行。例えば開いてるバッファのすべての文字列を置換したければ、 :Allargs %s/perl/ruby

    vim でのオススメ plugin
  • ウノウラボ Unoh Labs: すぐに使いこなせるオススメvim plugin

    こんにちは。vimをビムと発音する派のryosukeです。 ウノウでエディタといえば、以前はvimemacs、それもvim優勢(ユーザー数的に)だったのですが、最近は色んなエディタやIDEを使ってる人が増えています。 私は以前はemacsを使っていたのですが、今ではemacsでヤンクの仕方を忘れてしまうぐらいにvimユーザーになってしまいました。とはいえ、vimを使いこなしてるとは到底言えず、 最速のキーリピートに頼る毎日です。 そんな私ですが、いくつか愛用しているプラグインがあるので、今回紹介させていただこうと思います。どのプラグインも基的に ~/.vim/plugin にコピーするだけで使えます。 yanktmp ファイルを経由することで異なるプロセスのvim間でレジスタ(クリップボード)を共有する(かのようにコピペする)ことができます。screenでいくつも vim を開いたりす

  • eregex.vim(UNIX / 文書作成)

    eregex.vim は、Perl/Ruby で使われている拡張正規表現を Vim の正規表現に変換するスクリプトです。基的に、「選択」「繰り返し」「丸カッコ」の扱いが拡張正規表現流です。その他は Vim の正規表現に従います。 拡張正規表現を使って、/, :s, :g, :v に相当するコマンドが使えるようになります。それぞれ、:M, :S, :G, :V です。 eregex255.tar.gz の解凍は、$ tar -xvzf eregex255.tar.gzするか、tar.gz に対応するソフトの +Lhaca や eo を使って下さい。 ドキュメントは EUC-JP です。 »eregex.vim ダウンロードページ

  • yanktmp.vim - enables vim to yank and paste through the multi processes : vim online

    This plugin enables vim to yank and paste through the multi processes. If :call YanktmpYank(), yank string write to tmpfile. And :call YanktmpPaste_p() or YanktmpPaste_P(), paste string from tmpfile. Default tmp file is '/tmp/vimyanktmp' If you want to change tmp file. let g:yanktmp_file = '/tmp/example_tmp_file' ==================== file yanktmp.vimrc ==================== map <silent> sy :call Ya