えむえでぃた

とりあえず Windows での Python は EmEditor で行こうと思う。
一応こんな設定にしてみた。

emedit

Home キーでカーソルをインデントの先頭に行かせる。
Shift+Tab でインデント分カーソルを戻す。
という動作は秀丸ではできないっぽいんで。

PyScripter なんてのも見つけたけど普通のテキストエディタのほうがエエわ。
スクリプト言語を IDE で書くなんて馬鹿げていると思うようになったよ。
更に言語ごとに別の IDE だなんて何がしたいの?みたいな。

とりあえずコイツにはスニペットプラグインもあるしガンガン登録してしまえ!
と思ったけどこのスニペットって単語登録ができるだけっぽいな。
それも Tab キーで補完じゃなく選択して Enter なんだ、ガッカリ。

まあ EmEditor はアウトプットがあるから便利だ。
と思ったけど…

output

おもくそ文字化けしとるやないの。
コンソールなら普通に表示できるのになんやこれ、ガッカリ。

それとツールに Python と IronPython を登録。
これでボタンを選ぶだけでどちらも動作確認ができるぞと。
アウトプットが化けるから pythonw.exe でなく python.exe にしておくか…

Ruby も一応ツールに登録していたんだけど全く使わないので登録解除。
IronRuby なんてもう忘れられた子になっている、そんなのあったなぁ…

他に VL ゴシックにしたり読み書きは BOM 無し UTF-8 に指定したり。
なんか意地でも Ubuntu の gEdit に合わせようとしている自分が怖い。

しかし弄くれば弄くるほど Windows と Linux の文化の違いを感じるよ。
テキストエディタに求められているものが違いすぎ。

追記

アウトプットの文字化けは私の設定ミスだった…
出力エンコードを UTF-8 にしていた、システム規定でよかったのね。
江村さんごめんなさい。

それと Shift+Tab の動作だが Tab 分カーソルが戻るだけだった。
文字列を選択していない場合は逆インデントをやってくれない。
これは困る、逆インデントに BackSpace を4回叩くなんてやってられないよ。

しかたがないのでマクロを作る。

if (document.selection.IsEmpty) {
	document.selection.DeleteLeft(4);
} else {
	document.selection.UnIndent(1)
}

を作り Shift+Tab の割り付けをコッチに変更という強引なワザで。
これで範囲選択状態の動作は維持しながら未選択の場合は前方四文字削除だ。
というか gEdit と同じ動作。

問題はインデントの先頭で実行することしか考えていないことだったりする。