atom-community / atom-community/ide-python
Automatic code formatting duplicates lines and blocks of code
- 主要言語
- JavaScript
- スター
- 238
- フォーク
- 40
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
There seems to be a bug in automatic code formatting. The bug is triggered by opening the same code file into multiple tabs in separate panes. Having two tabs (of the same file) will cause the bug to occur once, three tabs will cause it to repeat twice, and so on.
I have been using the `ide-python` package only for a couple days, so I don't know about the specifics. This bug is present in both versions `1.9.4` and `1.9.5` at least. I turned off all checkboxes in the module's settings and restarted Atom, but this bug will still persist. I am using the "format on save" option.
Also, the file status is "modified" again after I **save** the file and automatic formatting is applied, so the file has to be manually saved twice. I don't think it should be like this.
### Example 1
**Original code**
```python
def foo():
pass
def bar():
pass
```
**Result after automating formatting**
```python
def foo():
pass
def bar():
pass
pass
```
Here the keyword `pass` is duplicated inside function `bar`.
### Example 2
**Original code**
```python
def foo():
pass
def bar():
pass
```
**Result after automating formatting**
```python
def foo():
pass
def bar():
pass
def bar():
pass
```
Here the whole function block for `bar` is duplicated. Formatting is also messed up.
コントリビューションガイド
調査の方向性
まず、ide-python 1.9.4 または 1.9.5 を使用し、保存時のフォーマットを有効にして、同じ Python ファイルを複数のペインで開いた状態で、Atom で問題を再現します。自動フォーマットと保存の経路を追跡し、追加した各タブが内容を重複させる理由を特定します。保存時のフォーマットによって行やブロックが重複しなくなり、1 回の保存後にファイルが変更済みのままにならなければ完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript, python
- 領域
- tooling
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100