エンジニアの箱

サーバ構築とか、Ciscoルータの設定とか、コーディングに関してのなにがしを書きます。

AtomをPythonエディタとして使いたいけどうまく設定できない話

なぜなんだ…なぜなんだジョニー…

auto indent=前の行のインデントを引き継いでインデントしてくれる
って解釈なのに、なんかいらんインデントをしてくれてしまう。
例えば下みたいな感じ。(↓は行末だと思ってください。)

想定される動作

if hoge:↓

この状態でエンターを押すと

if hoge:↓
↓

となってほしい。だが実際の動作は違う。

実際の動作

if hoge:↓

この状態でエンターを押すと

if hoge:↓
    ↓

となる。

なぜ後者ではだめなのか

通常のテキストエディタでのauto indentの場合、前の行のインデントを引き継ぐというものなので、当然のことながら前者の動きになる。前者の場合はインデントを自分で作る必要があるので、こういう動きになる。

通常のテキストエディタでの遷移

if hoge:↓

Enter押す

if hoge:↓
↓

Tab押す

if hoge:↓
    ↓

ところが、後者の場合これをやってしまうとこうなるのである。

atomでの遷移

if hoge:↓

Enter押す

if hoge:↓
    ↓

Tab押す

if hoge:↓
        ↓

…。

あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛あ゛!!!!どう゛じでぞう゛い゛う゛ごどずる゛ん゛だよ゛ぉ゛ぉ゛ぉ゛ぉ゛ぉ゛ぉ゛ぉ゛ぉ゛ぉ゛ぉ゛お゛お゛お゛お゛お゛お゛お゛!!!!(CV:藤原竜也

総括

普通のテキストエディタとかvim使えってことですかね。辛い。