[ruby-core:93669] [Ruby master Bug#15994] irb miscalculates nest level when typing do keyword

From: tietew@...
Date: 2019-07-11 06:55:59 UTC
List: ruby-core #93669
Issue #15994 has been reported by Tietew (Toru Iwase).

----------------------------------------
Bug #15994: irb miscalculates nest level when typing do keyword
https://bugs.ruby-lang.org/issues/15994

* Author: Tietew (Toru Iwase)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: ruby 2.7.0dev (2019-07-10T18:37:22Z master d57ce99b7d) [x86_64-linux]
* Backport: 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
While typing `while`, `until` and `for`, IRB miscalculates indent level after typing `do`.

Without `do`, everything OK.
```
irb(main):001:1* while false
irb(main):002:0> end
=> nil
```

Just after typing `do` (before ENTER), nest level increased. (■ is cursor)
```
irb(main):001:2* while false do
irb(main):002:1* end
irb(main):003:1* ■
```
```
irb(main):001:2* until true do
irb(main):002:1* end
irb(main):003:1* ■
```
```
irb(main):001:2* for i in [] do
irb(main):002:1* end
irb(main):003:1* ■
```

It doesn't happen with `then`.
```
irb(main):001:1* if true then
irb(main):002:0> end
=> nil
```

Affected: 2.7.0dev
Unaffected: 2.6.3p62




-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>

In This Thread

Prev Next