彷徨えるフジワラ

年がら年中さまよってます

python

virtualenvwrapper.el での環境変数設定を修正

Emacs でのソースコード編集時に Language Server Protocol 経由での補完候補列挙やエラー/警告表示を行うために、 以下のツール群をインストールしてみました。 pyls: Language Server Protocol で Jedi と連携するためのフロントエンド Jedi: Python での…

nwdiag にルーティング表示機能を追加

テキストベースでネットワーク構成図を作成する手段が無いものかと色々探したところ、 nwdiag が良さそうな感じだったのですが、 残念なことにパケットのルーティング周りに関して図示する機能がありませんでした。 blockdiag.com 他に良さそうなものがなか…

システムワイドなロケール設定 〜 Windows

Windows でのシステムワイドなロケール設定の取り扱いに関して、調べた結果を備忘録代わりにまとめておきます。なお、表題で「システムワイド」と謳いつつ、本エントリで扱うロケール設定は、Mac OS X (その1) と同様に、「ユーザ毎」の設定だったりしますが…

Python Developers Festa 2013.11

Python Developers Festa 2013.11 に参加してきました。主催の id:Voluntas 氏を初めとする、運営スタッフの皆様、お疲れ様でした。今回は、拙著「lsを読まずにプログラマを名乗るな!」が発売された際に: window.twttr = (function(d, s, id) { var js, fjs…

非 ASCII 文字出力により、Windows 上での Mercurial 実行が中断される問題

時間の無い方向けに、先に要点をまとめておきます(笑)。Windows 環境で以下の条件が成立する場合、 Mercurial が非 ASCII 文字列を表示しようとすると、『表示失敗』扱いでコマンド実行が中断されます。 Windows 標準のコマンドプロンプト(cmd.exe)を使用…

エキスパートPythonプログラミング読書会

Mercurial について触れている『コードの管理』の章を扱うとのことなので、出版時に書籍を頂いた縁もあることから、『エキスパートPythonプログラミング読書会』に参加することに。Mercurial でのファイル名文字コードの話では、(僕が推測する) Matt が考え…

Python 関数の引数形式を調べる

Mercurial の 2.3 版における内部 API の改変により、collapse が動かなくなっているとの報告が。結局 revlog クラスの "def descendants(self, *revs)" メソッドが "def descendants(self, revs)" へとシグネチャ変更されたことが原因だったらしいことが判…

Mercurial の Subversion 連携における問題の調査 〜 その2

※ 修正が取り込まれた 2.2. 版以降であれば、言語設定に起因する変換失敗は発生しません。それ以前の版を利用する場合は、"LC_ALL=en_US.utf-8; export LC_ALL" 等により、言語設定を無効にしてください。なお、convert エクステンションでは、内部処理が全…

終了コードにまつわる話

事の発端は以下の tweet: window.twttr = (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0], t = window.twttr || {}; if (d.getElementById(id)) return t; js = d.createElement(s); js.id = id; js.src = "https://platform.twitter.co…

Python のファイル I/O API と文字コード

Mercurial で case insensitive filesystem 周りの修正をする際に仕込んだ知識のまとめエントリその3。でも case insensitive とは関係の無い話を。今回の作業で知ったのだけれど、Python のファイル I/O 系 API では、引数が Unicode かバイト列かに応じて…

Python での「文字のコード値取得」/「コード値からの文字取得」

毎度必要に迫られて調べるものの、次に必要になった頃には忘れてしまう、Python での「文字のコード値取得」/「コード値からの文字取得」に関してメモしておく。っていうか、時間経過と共にこの程度の事も忘却してしまう自分の記憶力の無さに、若干絶望気味…

旧 Indiana の update 〜 134 移行顛末

会社のデスクトップと自宅サーバの両方で Solaris 111 ⇒ 134 移行を実施して、色々気づいた点に関するメモ。 Python が 2.4.x から 2.6.x になった pure Python なユーティリティ系にとっては、多分それ程影響は無いんだと思われるが、2.4.x 系と 2.6.x 系で…

Python におけるクラス定義の遅延

例によって英語力がアレなので、購読しつつもそれほどちゃんと読んでいるわけではないMercurial 開発者向け ML なのだけど、ある日つらとらと眺めていると、他の人のメールなのに、何故か自分の名前を見かけた気が.....そんな筈ないよねぇ?と思いつつ、念の…

Python Hack-a-thon 2010.07 & 東京 OpenSolaris 勉強会 2010.07

Oracle の SUN 買収の余波を受けて、OpenSolaris 勉強会も 2010.07からは開催場所が用賀から Oracle 青山ビルへと変更されることに。7月は丁度 Python Hack-a-thon と同日開催だったので、両勉強会をハシゴで。

空白詰めと符号化方式

CP932 (Shift-JIS ね) に関するバグを滑り込みで直すことができて、やれやれ危ういところだった、とホッとしながら、Mercurial 1.6 版を仕事で使っている環境に入れて help 出力を確認してみたら....: -A --addremove コミット前に、新規/不在ファイルを登…

MBCS 文字列の折り返し - 最終回

修正方法等でリテイクがあったけど、無事本家のリポジトリに取り込まれたので一安心。TextWrap の派生クラスから更で実装するような状況だったら、途中でうんざりしてたかも(笑)。大変助かりました > 伊藤さんさて、7月頭のリリースに向けて、もう一つのパ…

エキスパートPythonプログラミング

稲田直哉氏/渋川よしき氏/清水川貴之氏/森本哲也氏による "エキスパートPythonプログラミング" を頂きました。エキスパートPythonプログラミング作者: Tarek Ziade,稲田直哉,渋川よしき,清水川貴之,森本哲也出版社/メーカー: KADOKAWA/アスキー・メディアワ…

MBCS 文字列の折り返し - その 3

Mercurial のヘルプ表示に関しては、まずは「文字化けを無くす」ことが優先なのだけど、Python 標準の textwrap を使う限りでは(少なくとも日本語は)綺麗な行折り返しは実現できそうにないから、いずれは独自の行折り返し実装が必要になる感じ。標準 textwra…

MBCS 文字列の折り返し - その 2

文字の表示桁取得処理に関して気になることが。dayflower 氏の実装では、unicodedata.east_asian_width() の戻り値が F/W/A のいずれかなら 2 桁とみなしているけど、Mercurial の colwidth()@encoding.pyでは F/W の場合だけ 2 桁とみなしている。ふーむ、…

MBCS 文字列の折り返し - その 1

Mercurial の 1.4 版から、端末表示幅にあわせてヘルプテキストが折り返されるようになったのだけど、案の定というか、言語設定を日本語にしてある(LANGUAGE=ja 等)場合、折り返された行末で表示が乱れるケースがちらほらと。ぱっと見、複数バイトで構成され…

エキスパートPythonプログラミング

"エキスパートPythonプログラミング"の翻訳をされている方から、「書籍中でDefinitive 本日本語版へのリンクを紹介させて欲しい」とのメールが。原著の構成管理に関する章で Mercurial を使用している模様。「紹介して頂ければこちらとしてもありがたいので…

Python の構成管理ツールを Mercurial に移行

mercurial-ja でも話題を振ったけど、一応こちらでも。Python 自身の開発に使用する構成管理ツールを、Mercurial に移行することが決定(英語)した模様。決定の過程に関する詳細は、http://www.python.org/dev/peps/pep-0374/(英語) などからみることが可能。