如何在 Ruby 2.7+ IRB 多行编辑模式下添加新行?

How can I add a new line in Ruby 2.7+ IRB multiline edit mode?

Ruby 2.7 引入了对 IRB 的更新,允许多行编辑。如何将新行添加到多行方法中以在前面两个语句之间注入代码?

例如

2.7.1 :019 > while session = server.accept
2.7.1 :020 >   session.puts "Hello World! The time is #{Time.now}"
2.7.1 :021 >   session.close
2.7.1 :022 > end

如何在第 21 行 session.close 之前添加一个新行,以便我可以执行类似 session.puts "closing connection" 的操作?

在 OS X 按住选项并在您要在其后换行的行上按 return。

例如

2.7.1 :019 > while session = server.accept
2.7.1 :020 >   session.puts "Hello World! The time is #{Time.now}" # cursor here
2.7.1 :021 >   session.close
2.7.1 :022 > end

选项+return

2.7.1 :019 > while session = server.accept
2.7.1 :020 >   session.puts "Hello World! The time is #{Time.now}"
2.7.1 :021 >   
2.7.1 :022 >   session.close
2.7.1 :023 > end