2016-09-07 6 views
0

ユーザーがPython 2を使用しているgitリポジトリから取得しました。私のシステムはPython 3を実行しており、コードは変更されていません。.pyファイルをPython 3の正しいエンコーディングに変換する

TabError: inconsistent use of tabs and spaces in indentation 

解決策は、.pyファイルの文字セットエンコーディングを変更することですが、emacsで作業しているようですが、これを行う方法がわかりません。私はこれらの手順を見ている:

https://www.emacswiki.org/emacs/ChangingEncodings

が、私は、UTF-8のためにこれらを適用する方法を理解していません。私は何か提案を感謝します。

+0

[EmacsにPythonインタラクティブモードでUTF-8を使用させる]の可能な複製(http://stackoverflow.com/questions/888406/make-emacs-use-utf-8-with-python-interactive-mode) – JackCC

答えて

1

のようなものを使用して、スペースを持つすべてのファイル内のすべてのタブ文字を置き換えることであろう。 接頭辞ARGと対話的に呼び出された場合は、 バッファ全体を変換します。

I.e.バッファ内のすべてのTABを変換するにはC-uで呼び出します。

注釈が正しく指摘しているように、tabifyは逆を行い、複数のスペースをタブに変換します。スペースを使用するのはPythonだけでなく一般的なようです。

+0

同じことを逆にする(タブに複数のスペースを変換する)逆のコマンド 'tabify'を含めることができます。 – JackCC

0

これはPythonの2/3の問題ではなく、git repoのインデントが間違っているようです。

は列を保存し、複数のスペースに地域のすべてのタブを変換します。最も簡単な修正は、コマンドuntabifyが存在するsedの

関連する問題