開発

pipでインストールしたパッケージ

過去との重複もある。 $ pip install Cython ipython matplotlib numpy pylint PyYAMLpip-reviewでパッケージのアップデートできなくなったので、最近は次のコマンドでアップデートしてる。 pip list | cut -d ' ' -f 1 | xargs pip install -U

Atom linter-pylintにて警告をうざく

AtomのLinterプラグインlinter-pylintは、そのままではpylintが出力するメッセージのうちerrorとwarningのみAtomエディタ上で警告する。Conventionに関するメッセージはエディタ上では警告してくれない。たくさん警告されてもウザいけれど、Conventionメッセ…

Apache libcloudでAmazon EC2, OpenNebulaクラウドにVM作成

はじめに 正月の休みを利用して、以前から気になっていたApache libcloudを使ってみたときのメモ。libcloudは複数のクラウドAPIを統一的に扱えるPythonライブラリ。AWS EC2, S3やRackspace、OpenStack、OpenNebulaなどに対応してる。対応プロバイダ一覧はこ…

screen環境自動構成スクリプト

仕事で複数のサーバを管理しているんだけれど、そのサーバ群に対して1 サーバ / 1 windowでGNU screenを起動してsshでアクセスして管理していたんだ。window配置はこんな感じで。 window番号 ホスト 備考 0 mngr ここにログインして、screenを起動 1 server1…

Cocoa Emacs (Emacs 23)対応のIMEパッチをATOK2008をサポートする方法

org-rememberを年明けから使いたいと思い、org-rememberを標準搭載しているCocoa Emacsに乗り換えることにした。今回、Cocoa Emacsは安定版の23.2を使うことにして、IMEパッチも導入することにした。参考にしたのは以下のサイト。 Emacs23 (Cocoa Emacs) 入…

Ruby: 可変長引数と配列

可変長引数を取る関数に、配列を渡して、配列の個々の要素に対して処理をしたい場合は、関数呼び出し時の実引数に*(アスタリスク)をつける。 def func(*args) args.each { |arg| # do something } end items = [ 'a', 'b', 'c' ] func(*items) 参考:Re: メ…

シェルスクリプトでユーザ入力をコンソールに出力させない

パスワード入力を受け付けるプログラムのラッパースクリプト作成時に。 #! /bin/sh printf "password> " stty -echo read passwd # <- passwdに有力されたパスワードが入る stty echo ...参考:Prompting users for passwords in a shell script? :: Free Te…

CentOS x86_64システムからi386パッケージを削除

CentOS x86_64システムで対象システム(x86_64かi386)を指定せずにパッケージインストールすると、x86_64パッケージ以外にi386パッケージも同時にインストールされてしまう。たぶんこれはインストーラによるシステムインストール時にi386パッケージも同時にイ…

emacs: org-modeで行の折り返し

僕はLinux上でも、Mac上でも、テキストエディタにはEmacsを使っている。Emacsにはorg-modeって言う便利なテキスト編集モードがあって、僕はいつもorg-modeで日々のTODOを書いたり、研究上のメモをまとめている。詳しい使い方はこのページを参照すればいいん…

RubyでJPEGファイルのEXIF情報取得

先週末、友達と4人で石川県に旅行に行ってきて、後日みんなで取り合った写真を交換したんだ。で、いざ写真を時系列で整理しようにも、複数のカメラで撮られたたくさんの写真をEXIF情報を参照しながら並び替えて、名前を変更するのは困難だった。そこで、Ruby…

パッチ作成・適用メモ その2

id:stakizawa:20050531:t1に引き続き(もう4年も前!)、diffによるパッチ作成と、patchによるパッチ適用のメモ パッチ適用前後でファイルの存在が変わる場合 パッチを当てることによって、新しいファイルを追加したり、ファイルを削除する場合には --new-fi…

さくらのレンタルサーバ契約

初任給が振り込まれていたので、念願だったレンタルサーバを契約することに。用途は主にSubversionのリポジトリと、メーリングリスト、個人用Webページ。どれも大学や研究室の資産でまかなえるサービスだけど、Subversionリポジトリとメーリングリストは個人…

Javaで0.0を0で割っても例外は発生しない

intの0をintの0で割るとArithmeticException例外が投げられる。だけど、片方の0がdouble型、もう片方の0がint型の場合、int型の方がdouble型にキャストされて演算されるのでArithmeticExceptionは発生せず、結果としてNaNとなる。 class Test { public stati…

Debianでほしいファイルがどのパッケージに含まれるか検索

Debian(Ubuntu)システムに特定のコマンドやライブラリをインストールしたくても、そのファイルがどのパッケージに含まれているか、わからないときがある。そのようなときにはapt-fileというコマンドが使える。 apt-file apt-fileはDebianシステム固有のコ…

Eclipse 3.4をMacBookにインストール

先日の日記でEclipse 3.4とAJDT、SubversiveをUbuntuにインストールしたと書いたけど、今日はMacBookに同じ構成でEclipseをインストールした。しかし、Subversiveのインストールに手間取ってしまったので、そのときのメモ。 Ubuntuのときと同じように、SVN T…

Eclipse 3.4インストール

デスクトップのUbuntuマシンにEclipse3.4をインストールした。研究用プログラムの一部にAspectJを使っていて、ソースコードをSubversionで管理しているので、AspectJ、Subversion用のプラグインが対応するまで3.4の導入は控えていたんだけど、それぞれ開発版…

Linuxの最新バージョンの情報を手元のターミナルから確認

fingerコマンドでできるそうな。知らなかった。 $ finger -m linux@kernel.org [kernel.org] Trying 204.152.191.37... The latest stable version of the Linux kernel is: 2.6.25.5 The latest prepatch for the stable Linux kernel tree is: 2.6.26-rc5 …

findコマンドで複数の名前条件を指定

何となく「codeなにがし」を見ていたところ、findコマンドを利用して複数の拡張しにマッチしたファイル一覧を取得する方法が書いてあった。 codeなにがし::linuxでテキストファイルだけをコピー 質問者は*.c *.cc *.h *.hhなどの拡張子を持つファイルの一覧…

R on MacBookのアップデート

以前インストールしたRのバージョン2.7が公開されていたのでアップデートした。 最初、Rのメニューの「Rのアップデートを確認」を選択してアップデートしようとしたんだけど、なぜかCPUを100%食って応答しなくなってしまった。仕方なく最新版をダウンロード…

Cソースコードのヘッダファイルを展開

gccのオプションで「-E」と言うのがある。これはCのソースコードをプリプロセッサで処理した結果を標準出力に書き出すオプション。ソース中に記述したヘッダファイルの内容も展開してくれるので、わざわざlessやlvでヘッダファイルを開いてデータ型を調べる…

Linuxでアプリケーションが使用中のポート番号を調べる

Linuxシステムを管理している人には常識的なことだと思うけど、アプリケーションが使用中のポート番号を調べる方法についてのメモ。今日某プロジェクトの実験用マシンの設定をしていた最中、あるサービスを起動したら「address already in use.」というエラ…

VMware FusionでNetwork is downを解決する方法

MacOS X 10.5 (leopard)上にVMware Fusionをインストールし、その上でDebian Etchを使っている。DebianにはGUIはいっさいインストールせず、MacのTerminalからsshでログインしたり、sshfsでマウントして使っている。普段は何の問題も無いんだけど、たまに、s…

session.elインストール

今日はMacBookのCarbon Emacsにsession.elをインストール&設定した。Carbon Emacsのページにはsessionも最初から入っていると書かれているけど、読み込むように設定してもなぜかsession.elが見つからないと文句を言われた。仕方なく、配布サイト(Session M…

Subversion on Macでエラー

僕は論文のTexソースやもろもろのデータをSubversionで管理している。これはWindowsマシン時代から続いていて、Macに移行したときにはWindowsマシン上で作った作業コピーをそのまま持ってきていた。今回、Windowsマシンで仕上げて投稿した論文が無事採録され…

emacs on mac 設定

今日はmacにインストールしたCarbon Emacsの設定を少しいじった。 uniquifyの設定 emacsで異なるディレクトリ以下の同名のファイルを開くと、デフォルトでは、ファイル名の後ろにとかといったプレフィックスが付いたバッファ名になる。例えば、僕は論文のTex…

Mac (Leopard) 環境構築 その9 Java、eclipseなど研究用ソフト

次のソフトウェアをインストールした。 eclipse http://www.eclipse.org/ "Eclipse IDE for Java Developers"をダウンロード。インストール場所は悩んだけど、結局「~/soft/eclipse-europa」にした。 TerminalやQuickSilverから簡単にeclipseを起動できるよ…

VMware on LinuxでDHCPサービスを止める

今日、Linux作業用デスクトップ機にVMwareをインストールした。目的は研究室の先輩(OB)が作成中のシステムインストールツールのテスト。このツールではpxelinuxを用いてリモートからコンピュータにOSやソフトウェアをインストールするためにDHCPを用いてい…

MacBook環境構築 その2

昨日に引き続き、今日もMacBookの環境構築。一部のデータをMacに移しつつ、以下のソフトをインストールした。 wget finkで。てっきり最初から入っているものかと思っていたのに。 Firefox Windowsマシンからプロファイルも移行。ツールバーの配置がおかしく…

MACユーザに転身

実は今週の水曜日、12/5 にMacBookを手に入れた。手に入れたと入っても私費で購入したのではなく、研究用のコンピュータとしての購入。注文をかけたのが 11/26 だったので7営業日かかった届くまでかかったわけだ。この間ずっと待ち遠しかった。 僕が購入した…

Ubuntu 7.10インストール&設定

Ubuntu 7.10がリリースされた昨日から今日にかけて早速インストールを行なった。今UbuntuはデスクトップとラップトップのVM内の2箇所で使用しているんだけど、いまだに1年前の6.10を使用しているVMの方を先に更新することにした。 1つバージョンを飛ばしての…