未分類」カテゴリーアーカイブ

Emacsのpython-modeのインデント設定をGoogle様の教え通りにする

最近Pythonづいているワケですが、Google様の出しているGoogle Python Style Guide(日本語訳)とやらに、以下のような教えが。

コードブロックのインデントはスペース 4 つとします。

http://works.surgo.jp/translation/pyguide.html#id52

ふむ、まさにその通り、ということで、さっそくEmacsのpython-modeを教え通りに設定してみた。

(add-hook 'python-mode-hook
	  '(lambda()
	     (setq indent-tabs-mode nil)
	     (setq indent-level 4)
	     (setq python-indent 4)))

インデントはタブかスペースか、幅はいくつか、などの宗教論争に関わる気はないのであしからず。

Bazaarのある生活

基本的に古いタイプのプログラマなもので、バージョン管理とかメンドクセーとか言い出す奴なのです。
なので、自分しか使わねーソースはバージョン管理無視、あるいはがんばってrcs使えばじゅーぶんじゃん、で済ませるヤローなのですが、さすがにヤバくなってきました。
ということで、イマドキのバージョン管理を覚えるべくBazaarに手を出したとさ。
なんでBazaarかって? WindowsでもMacでもLinuxでもフツーに使えそうだったから。だって、文字コードとかで発狂したくないじゃんよー。

自分のためだけに使うだけなら簡単。
仮に /home/me/work というディレクトリにあるファイルを管理下に置くにはこんな感じ。

$ cd /home/me/work
$ bzr init
$ bzr add
adding work.txt

ファイルだけなら add で勝手に探し出してくれてラクチン。
ディレクトリがある場合は add [ディテクトり名] を明示しないとだけだけど、指定したディレクトリ以下を勝手に漁って一発で追加してくれるので、これまたラクチン。

どのファイルが追加されただの、どのファイルが変更されただのは status で調べられる。

$ bzr status
added:
 add.txt
modified:
 work.txt

コミットはまんま commit 。
-m オプションでコメントをコマンドラインから書ける。
オプションなしだとエディタが立ち上がってコメント書くことになる。
出来ればエディタで書いた方がシェルやらの文字コード周りの影響を受けなくていいんじゃないかな。

$ bzr commit -m 'コミットするぜ'
Committing to:  /home/me/work/
added add.txt
modified work.txt
Committed revision 2.

コミットログは log で見れる。

$ bzr log
------------------------------------------------------------
revno: 2
committer: myname <emailaddress>
branch nick: work
timestamp: Mon 2010-08-23 16:52:21 +0900
message:
 コミットするぜ
------------------------------------------------------------
revno: 1
committer: myname <emailaddress>
branch nick: work
timestamp: Mon 2010-08-23 16:41:55 +0900
message:
 最初のコミット

やべー、コミット取り消してー、という時は、あわてずさわがず uncommit すればいい。

$ bzr uncommit
  2 myname	2010-08-23
   コミットするぜ
The above revision(s) will be removed. Are you sure [y/N]? y You can restore the old tip by running: bzr pull . -r revid:emailaddress-20100823075221-dsf67dg9s6g8s7d6g

こんだけ知ってればrcsと同じように使えんじゃないかな。
SubversionとかGitみたいに使うやり方は必要になったら調べる。必要は発明の母だ。