Pythonの開発をコンソールだけでやってみた。
開発環境
- Windows XP Pro SP3 32bit
- cmd.exe(ConEmu/Nyagos)
背景
私はWindows XP上にて、秀丸+ファイラ+コンソールでPythonを書いていた。秀丸でコードを書き、ファイラでファイルの作成や参照をし、コンソールで実行するという具合である。
しかし、それが面倒になってきた。そこで、コンソール+msys+vimにしてみた。これならコンソール上で完結する。
以下のようなファイルやディレクトリを作成したい。
- root
- main.py
- hello
- init.py
- human.py
使ったコマンドは以下。
コマンド | 説明 |
---|---|
mkdir hello |
hello ディレクトリを作成する。 |
cd hello |
hello ディレクトリへ移動する。 |
cd .. |
親ディレクトリへ移動する。 |
touch __init__.py |
__init__.py という名前の空ファイルを作成する。 |
ls |
ファイルやディレクトリを表示する。 |
ren Human.py human.py |
Human.py からhuman.py に名前を変更する。 |
vim main.py |
main.py ファイルをvimで開く。なければ新規作成する。 |
ソースコード
main.py
from hello.human import Human h = Human("Taro") h.say("Yes I can !!") h2 = Human("Jiro") h2.say("No thanks...") serifs = ["Oops!", "Tips!"] map(h.say, serifs) map(h2.say, serifs)
human.py
class Human: def __init__(self, name): self.name = name def say(self, message): print("{0}:{1}".format(self.name, message))
vim
テキストエディタ。難しいので最低限の操作だけを調べる。使いこなせば効率UPまちがいなし。
起動
コンソールでvim ファイル名
とすると起動する。ファイルが存在しない場合、新規作成する。
モード
モードが把握できないとvimを使えない。
モード | 画面の下 | キー | 主な用途 |
---|---|---|---|
normal | (何も表示されない) | ESC |
カーソル移動、コピー/ペースト/削除 |
insert | -- INSERT -- |
i |
テキスト入力 |
append | -- INSERT -- |
a |
テキスト入力(末尾) |
visual | -- VISUAL -- |
v |
部分コピー |
command | : |
: |
ファイル保存、終了 |
normalが基本。ESCキーを押下するとnormalになる。normalから、i
, a
, v
, :
を押下すると各モードになる。
vimを起動したら、i
でinsertモードにしてから入力する。ESC
キーでnormalに戻して、:wq
でファイル保存&終了する。
終了
コマンドモードで終了できる。
コマンド | 意味 |
---|---|
:w | 書き込む(保存する) |
:q | 終了(編集しているとエラーになり終了できない) |
:wq | 書き込んで終了 |
:q! | 書き込まず終了(編集を破棄する) |
w
はwrite
、q
はquit
の略。長いコマンドでも可能。書き込んで終了するときはコマンドを2回打つのが面倒なので、:wq
,:q!
で一発終了。
カーソル移動
insertモードならカーソルキーで移動できる。ホームポジションから手を移動させたくないなら、normalモードでh
,j
,k
,l
キーを使って移動させることも可能。←
,↓
,↑
,→
に対応。
部分コピー
- visualモードにする
- カーソルキーで範囲を指定する
y
キー押下してコピーするESC
キーでnormalモードにするp
キー押下してペーストする
UndoとRedo
コマンド | 意味 |
---|---|
u |
アンドゥ |
Ctrl +r |
リドゥ |
normalモードで上記のキーを押下する。
課題
あたりまえだが、TABを入力すると、TABが入力された。Pythonのときはスペース4つにしたい。
所感
知らないことだらけ。ググりまくって一向にすすまない。面倒になってやめてしまいそう。慣れるまで耐えられるかが勝負。
忘却→検索→忘却→検索→...この反復に嫌気がさして、しぶしぶ記憶されてゆく。記憶とは苦行の歴史である。