サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
どうなる?Twitter
pyopyopyo.hatenablog.com
Changelog を英語で書く際に参考になるようなテンプレートをまとめてみました.git や svn のコミットログにも使えます. このエントリは今後も逐次更新を続けます(最終更新2018/11/01) リリースノートの英文についてはRelease note のための英文テンプレート集 - pyopyopyo - Linuxとかプログラミングの覚え書き -に分離しました git等のcommit メッセージにも使えます 以下,例文. バグ修正した場合 修正した場合 → fix を使うのが定番です Fixed a performance regression. (パフォーマンスが低下するバグを修正しました) Fix possible memory leak Fixed an issue where some devices would display the wrong image. (いく
各所で話題になっていますが、Linuxを劇的に高速化する方法が発見されました*1 *2 *3。特にブラウザなど複数のアプリケーションを同時に起動した状態では、体感速度がびっくりするほど向上します。 高速化する方法も簡単です。カーネルの再構築という難しい作業は不要で、設定ファイルを数行書き換えるだけです。是非試しましょう! ステップ-1: ~/.bashrc の編集 ~/.bashrc の末尾に以下の4行を追加します。 if [ "$PS1" ] ; then mkdir -m 0700 /sys/fs/cgroup/cpu/user/$$ echo $$ > /sys/fs/cgroup/cpu/user/$$/tasks fi ステップ-2: /etc/rc.local の編集 /etc/rc.local の末尾に以下の2行を追加します(2010/11/24更新。不要なmkdirコマンド
停電とか,寿命でHDDが壊れてしまった場合,せめて残っているデータだけでも取出したい・・・そういう泣きそうな状況に陥った人向けの作業メモ. 概要としては,例えばCDROMをCDRへコピーする際には, 一度 CDROMからデータを吸い出してISOイメージをつくって ISOイメージをCDRへ書き込む という作業をする.同じように 壊れたHDDからデータを吸い出して 新しいHDDへ書き込む という作業手順で,破損したHDDから残っているデータが救出できる.以下,具体的な作業手順についてまとめる. 状況を把握する たとえば dmesg で以下のようなエラーが出ている場合は end_request: I/O error, dev 03:42 (hdb), sector 31719462 hdb: read_intr: status=0x59 { DriveReady SeekComplete Dat
ノートPCを数年使っていると、下の写真のように液晶ディスプレイの発色が悪くなり、赤みがかった表示になってきます。この症状は、ディスプレイのバックライトを交換するだけで、直ります。 バックライト交換前 バックライト交換後(写真映りが悪いですが、人間の目でみれば新品同様です) このバックライトの交換作業は、業者に頼むと、2万円程度かかります。結構高いです。この際、新しいノートPCを買おうかな、という気分になってしまいます。 ところがこのバックライト、部品自体は600円で市販されています。通販で購入しても送料込みで1000円でおつりが来ます。そこで、自分でバックライトの購入&交換作業を行い、液晶ディスプレイを復活させてみました。以下、手順を紹介します。 まずノートPCの分解 ノートPCを分解して、交換が必要な部品を調べます。 ノートPCには右の画像のような液晶モジュールが入っています。バックライ
emacs でリアルタイムに構文チェックする方法です.flymakeを使います.仕組みとしては コーディング中に C-x C-s を押すと,バックグラウンドで make が走る make がエラーを出した場合は,該当するコードをハイライト表示する だけです.恐ろしく便利です. 参考 開発元 http://flymake.sourceforge.net/ すでに他の方のブログでも取り上げられています. flymake でリアルタイム文法チェック - とりあえず暇だったし何となくはじめたブログ Flymake を使って編集中にシンタックスエラーを検出する — ありえるえりあ インストール emacs22以降であればflymakeはデフォルトでインストール済です. 設定 flymakeは,構文チェックの処理を外部プログラムに丸投げしています.たとえば構文チェッカとして make を使う場合は,以
VMware server よりも VMware player の方が圧倒的に高速です。そこで、VMware player を VMware server 風に使えるようにしてみました。もう VMware server は不要です!! 概要としては ホスト機で、仮想Xサーバ(Xvfb)を起動 仮想Xサーバ上で vmplayer を起動 外部からは VNC を使って仮想Xサーバ上の vmplayer にアクセス という流れです。 この方法には以下のメリットがあります。 高速化。VMware server は実質開発停止中で、VMware player の方がチューニングされていて軽快に動作します。 操作性向上。 ssh経由で VNC を使うことで、細い回線でも、ストレスなく遠隔操作できます。通信に必要なポートも ssh の22番ポートひとつだけです。 設定 便宜上 ホストOS : VMpla
昨日 Changelogのための英文テンプレート集 - ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き - というエントリを書きましたが,その際 apple や microsoft が出すような Release note と,いわゆるオープンソースなプロジェクトが出す release note や changelog とでは英文の書き方が異なることに気が付きました.蛇足気味ですが,興味深かったので別エントリとしてまとめます. ポイント 不具合を,不具合と言わない bug,problem,fix といった単語は,他の言葉で言い換えます 旧製品も完璧だったが,新製品はもっと良い製品だよという言い回しが基本です.会社的に不具合を認めると面倒ですからね. 免責事項を強調 良く使う単語 issue (problem, bug の言い換え) update, improve, address
unix使いには、便利なscreenですが、トラブルもあります。 トラブル毎に原因と解決方法を整理してみました。 以下、screen の コマンドキーは、 デフォルトの "C-a" であるとします。設定で別のキーにしている場合は適宜読み替えてください。 時々フリーズする 症状: screen 経由で emacs を使っていると端末がかたまる場合がある。C-x C-s や C-s を押すと固まる。 症状: 時々フリーズする。キーを受け付けなくなる。C-q や C-a C-q を押すと復帰する。 原因: "C-a f"を押すなどして、フロー制御が有効なモードに切り替わったため。 解決方法: "C-a f"を押し、フロー制御をOffにすれば良い 参考URL: http://kyoto.cool.ne.jp/kinoka/pc/screen.html http://uragoya.com/2007
仕組みが判ってしまえば Makefile は簡潔に書けます.$(CC) とか $@ とか $< なんて変数は使ったら負けです. 基本(その1) ソースコード hoge.c から 実行形式のバイナリ hoge を生成するMakefileは,以下のように書きましょう all: hogeこれだけです.これで $ make all とすると hoge が生成されます 重要な点は,間違っても all: hoge hoge: hoge.c $(CC) hoge.c -o hogeのようなMakefileを書かないことです.このようなMakefileでは #!/bin/sh CC=gcc $CC hoge.c -o hoge というようなシェルスクリプトと同程度の使い勝手しかありません. 基本(その2) ここで例えば-O3 を付けてコンパイルしたい場合や,-lm を付けてリンクしたい場合は以下のようにし
前述*1のように Makefile は非常に簡潔に記述できます.ただし,簡潔なMakefileを記述するためには make の仕組みを理解する必要があります. 結論から言うと, make は 簡潔な生成ルールのみを記述したMakefileから, 実際に必要となる詳細な生成ルールを自動的に生成します. 自動的に生成されたルールを確認するには $ make -p と "-p" オプションを付けて make を実行します. 以下, hoge.c から hoge を生成する場合 hoge.c と fuga.c から hoge を生成する場合 の二つの具体例を挙げて,説明します. 前準備 Makefile と hoge.c を用意します. Makefile all: hoge hoge.c int main() { return 0; } make -p の実行 $ make -p > log 大量
IEやfirefox等のブラウザを経由して個人情報が流出する原因の一つに"クッキー"があります。そして、クッキーはブラウザだけでなく、flash player もこっそり保存しています。 気になる人は、まず以下のURLにアクセスしてみましょう。 http://www.macromedia.com/support/documentation/jp/flashplayer/help/settings_manager06.html 「設定マネージャ」というものが立ち上がり、「訪問済みサイト」として大量のサイト一覧が出る筈です。これらのサイトはflashプレイヤーのクッキーを使って、あなたの個人情報、主にアクセス頻度などをコッソリ追跡し、監視している可能性が高いです。 気にくわない!ということであれば「Webサイトを削除」ボタンを押しましょう。これで不要な情報は削除されます。 なお、今後全てのサイ
bash で Ctrl-C をフックする方法、つまりSIGINTを自前のシグナルハンドラで捕捉する方法についてメモ。 概要 シグナルハンドラを設定するには、trap というbashのビルトイン・コマンドを使います #!/bin/bash hander() { echo "recv!!" } trap hander SIGINT while /bin/true; do : ; done Ctrl-Cを押すと SIGINT という名前のシグナルがプロセスに通知されるので、trapコマンドで SIGINT を受け取ったら hander という関数を呼ぶように設定しています このシェルスクリプトは実行すると末尾で無限ループになるだけです。ただCtrl-C を押しても、シェルスクリプトは終了せず、代わりに hander()関数が呼ばれて"recv!" という文字列が画面に表示されます Ctrl-Cで
小規模なデータベースを扱う場合は sqlite がおすすめです. SQLが使えるデータベース,つまりRDBMSとしては,PostgreSQLやMySQL,sqliteが有名です.sqliteは,他のデータベースと異なり,サーバをいちいち立ち上げる必要がなくsetupが簡単というメリットがあります. 以下,ruby から sqlite を使う方法として, SQLite3/Ruby の使い方をまとめます. 注意事項 sqliteには複数のバージョンがあり,微妙に仕様が異なります.以下このエントリでは バージョン3系,つまり sqlite3 を使うものとします. SQLite3/Ruby のインストール debian であれば libsqlite3-ruby を入れるだけです. SQLite3/Ruby の使い方 良く使うメソッドを列挙していきます. Database への接続 sqlite で
pdfにIPAフォントを埋め込む場合は,以下の内容のファイル ipa.map を用意して rml H ipam.ttf rmlv V ipam.ttf gbm H ipag.ttf gbmv V ipag.ttf以下のように dvipdfmx を起動する $ dvipdfmx -f ipa.map hogehoge.dvi ipam.ttf などのファイルが見つからないというエラーが出る場合は,とりあえずカレントディレクトリに *.ttf をコピーすればOK. 同様に,pdfにMSゴシック,MS明朝を埋め込む場合は,以下の設定ファイルを用意する rml H :0:msmincho.ttc rmlv V :0:msmincho.ttc gbm H :0:msgothic.ttc gbmv V :0:msgothic.ttc小塚フォントを埋め込む場合 rml H KozMinProVI-Reg
sqlite3をc/c++で使う方法についてメモ。 以前ruby で sqlite を使う方法 - ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き -でも書いたように、DBを使うアプリケーションは、通常はrubyなどのスクリプト言語で記述したほうが楽です。 でもc/c++からもデータベースを使えると非常に便利です。 公式なリファレンスマニュアル http://www.sqlite.org/capi3ref.html 全APIの一覧があります インストール debian であれば libsqlite3-dev を入れるだけです. $ sudo apt-get update $ sudo apt-get install libsqlite3-dev sqlite3 のAPI よく使うAPIを列挙していきます Database への接続 データーベースとして、 hogehoge.db
9月末にVMware Server 2.0がリリースされました*1。 VMware Server 2.0は、ゲストOSの設定/起動などを行うインターフェイスとして Webベースの管理画面(GUI) http://ホストOSのIPアドレス:8222 にブラウザで接続すると管理画面が登場します。 コマンドラインベースの管理用ツール(CUI) vmware-vimsh、 vmware-vim-cmd と2種類のUIを提供しています。 ここで後者の vmware-vim-cmd を使えば、ゲストOSの電源ON/OFFと言った単純な操作は、コマンド一つで行えます。かなり便利なので、以下方法をまとめます。 vmware-vimsh vmware-vimsh は、対話型のシェルとして実装してあります。 まず root になって、vmware-vimsh を起動すると # /usr/bin/vmware-
コマンドプロンプト(cmd.exe)や,セーフモードで作業する際に良く使うwindowsの外部コマンドの一覧です.Linuxのコマンドと対応させる形でまとめてみました. linuxのコマンド vistaのコマンド ファイルの一覧 ls dir ファイルの所有者の一覧 ls -l dir /Q ファイルの削除 rm FILE del FILE 強制削除 rm -f FILE del /Q FILE ファイルのコピー cp FILE FILE copy FILE FILE 強制コピー cp -f FILE FILE copy /-Y FILE FILE ファイルの移動 mv FILE FILE move FILE FILE 強制移動 mv -f FILE FILE move /-Y FILE FILE ファイルの所有者の変更 chown USER FILE icacls /setowner U
Linuxを起動する方法はたくさんあります.本エントリでは MBR (Master Boot Record)にインストールした grub2 を使う方法 ESP(Efi System Partition)にインストールした grub2 を使う方法 の2つを共存させたディスクを作成する方法についてまとめます 前者は,従来のBIOS経由での起動方法で,古いマザーボードだと必須となる方法です.後者は,EFI経由の起動方法で,最近のマーザーボードで使える"新しくて便利な"方法となります. 具体的な手順について 以下,実例として 新品のSSDを用意 既存のシステムを新品のSSDにコピー OSは debian (ubuntu や cent OS などでも同じ手順で作業できるはずです) の場合について手順を詳細に説明します SSDは64GB で /dev/sdb に繋いであるものとします なお既存のディス
emacsで C/C++ でコーディングしている開発者向けの emacs の設定です. [F5]でビルド,[F4]でエラー行へジャンプといったことが出来,かなり便利です. 具体的には以下のような事が出来ます. [F7]でコンパイル(バッファを全部保存して,make all します) [F4]でコンパイルエラー行へジャンプ [F1]でカーソル下の単語について マニュアルを開く SHIFT+[F7] でリビルド(make clean all) SHIFT+[F4] で一つ前のエラー行へジャンプ 設定は .emacs に以下の内容を追記するだけです. (setq auto-mode-alist (append '(("\\.C$" . c++-mode) ("\\.cc$" . c++-mode) ("\\.cpp$". c++-mode) ("\\.hh$" . c++-mode) ("\\.
2008年の3月にリリースされたgdb-6.8の目玉機能の一つに「C++サポートの強化」があります*1。この機能を使うと、STLやboostのようなテンプレートを使ったコードのデバッグがかなり楽になります。C++使いの方は、是非gdbを6.8にupgradeしましょう。 具体的に、以下のようなコードを使って、「C++サポートの強化」について説明します。 #include <iostream> using namespace std; template <typename T> class A { public: void func() { cout << sizeof(T) << endl; } }; int main() { A<int> integer; A<double> real; integer.func(); real.func(); return 0; } このコードに対して
ActionScriptのデバッグ方法として、 debuggerを使う方法 printデバッグする方法 の二つについて調べてみました。 debugger を使う方法 Flex 3.0 SDK には fdb というdebuggerが付属しています。 インストール作業 fdb を使うには flashplayer のインストールが必要です.flashplayer は Flex 3.0 SDK に同梱されていて、以下の手順でインストールできます $ tar xvfz flex/runtimes/player/lnx/flashplayer.tar.gz $ sudo cp flashplayer /usr/bin fdb の使い方 fdbを使って *swfをデバッグするためには、*swfにデバッグ情報を埋め込む必要があります。 デバッグ情報を埋め込むには、 mxmlc に -debug=true
c/c++ で mysql のデータベースへアクセスする方法をまとめます。 rubyやphpと比べるとc/c++でのコーディングはかなり面倒ですが、うまく記述できればパフォーマンスがかなり向上できるようです。 参考URL http://dev.mysql.com/doc/refman/5.5/en/c.html c/c++でsqliteを使う方法 - ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き - DBへの接続 #include <mysql.h> MYSQL mysql; mysql = mysql_init(NULL); if (NULL==mysql) { // 初期化失敗 } const char *hostname = NULL; const char *username = "user"; const char *password = "pass"; const
サイズなどを気にせず単純に結合するだけなら convert で十分. $ convert -append 上画像 下画像 出力画像 $ convert +append 左画像 右画像 出力画像サイズの異なる画像を結合する場合は montage を使うと良さげ. $ montage -tile 2x1 -geometry 640x480 左画像 右画像 出力画像
Linux上で、actionscript3を使って Adobe Flash のコンテンツを開発する方法をまとめてみました。この方法を使えば、無料のツールのみで flash のゲームなどが作成できます。 開発用ソフトウェアの準備 Adobe FLEX 3.0 SDK のインストール http://www.adobe.com/go/flex3_sdk から "The Adobe Flex 3 Software Development Kit (SDK)" をdownloadします 具体的には、ページ下部にあるライセンスを読んで、ライセンスに同意できる場合は I have read the Adobe Flex 3.0 SDK License, and by downloading the software listed below I agree to the terms of the agr
過去に書いたTeX関連のエントリの一覧を作ってみました. texで日本語のしおり付きpdfをつくる方法 dvipdfmxで日本語フォントを埋め込んだpdfをつくる方法 TeX で各行に行番号をつける方法 Excel で書いた表を TeX に貼る debian でgsのフォントを指定する debian の TeX環境 tabularx 環境で,セル内で中央揃えとか debian で dvipdfmx gnuplotの出力をカラーのepsで保存する. TeX から生成した pdf に,しおりをつける. TeXで,第一段落の先頭を字下げする. TeXで,行間を調整する. TeXで,丸で囲まれた数字を書く. TeX から pdf を作成. TeXで特定のページだけ pdf にする. TeXで,はみ出ない表を作る. TeXで,目次はローマ数字でページ番号を振り,本文の第1章からアラビア数字を振る方法
LinuxとWindowsのdual boot環境で、Linux側からwindows側のパスワードを解読する方法についてメモ ツールのインストール 作業は全て Linux 側で行います。 windowsのパスワードの解析を行うツールとしては、 ophcrack を用意します。 まず、 http://ophcrack.sourceforge.net/からソースコード ophcrack-3.0.1.tar.bz2 を入手。続けて、作業を簡略化するために、GUI無しで、コンパイルします。インストールはしません $ cd /tmp $ tar xvfj ophcrack-3.0.1.tar.bz2 $ cd ophcrack-3.0.1 $ ./configure --disable-gui $ make 起動方法は ophcrack-3.0.1/src 以下に移動して ./ophcrack を起
C言語で、rubyの拡張モジュールを作成する方法について調べてみました。 とりあえず例として Sample という拡張モジュールを作成し Sample::sample() というメソッドをCで実装 してみました。 このSampleモジュールを使うと、以下のrubyのコードは require "sample" puts Sample::sample("test") コンソールに "test" と表示するようになります 拡張モジュールのソースコード Cで次のようなコードを書きます。 #include <ruby.h> static VALUE rb_sample_sample(VALUE obj, VALUE arg) { Check_Type(arg, T_STRING); return rb_str_new2(RSTRING_PTR(arg)); } void Init_sample()
GCCの次期バージョン GCC 4.3 がそろそろリリースされそうです.そこで実際に開発版のGCC 4.3を試し,変更点・残っているバグなどを調べてみました. 変更点・改良点は http://gcc.gnu.org/gcc-4.3/changes.html にまとめられています.以下,GCC 4.3のsnapshot版(gcc-4.3-20071130)を試用し,実際に影響を受けた変更点・バグをまとめます. C/C++での変更点 "extern inline"は書き換える必要があります extern inline のままでもコンパイルは出来ますが,リンク時に「シンボル名が重複した」というエラーが出ます. 対処方法としては二つ方法があります.一つ目は以下のように extern inline #ifdef __GNU_STDC_INLINE__ __attribute__((__gnu_inl
bashでちょっと高度なシェルスクリプトを書くときに役立ちそうな小技をまとめてみました. && と || を積極的に使う bashでは コマンド1 && コマンド2 と記述すると,コマンド1が成功した場合のみ,コマンド2が実行されるようになります. (コマンド1が失敗すると,コマンド2は無視されます.) "||"は"&&"の逆で コマンド1 || コマンド2 と記述すると,コマンド1が失敗した場合のみ,コマンド2が実行されるようになります. (コマンド1が成功すると,コマンド2は無視されます.) これがなんの役に立つのか?まだピンとこない人は,次の errorとabortの例をみてください. エラー処理は error関数と abort関数を使う エラー処理は error関数と abort関数を作ると作業が捗ります. エラーメッセージを出す関数: error function error {
次のページ
このページを最初にブックマークしてみませんか?
『pyopyopyo - Linuxとかプログラミングの覚え書き -』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く