2014-10-21 40 views
4

在Rstudio控制台,我跑以下命令无法退出调试器/浏览器模式

> debug(ls) 
> ls() 

然后,我不能退出/离开调试模式。我试过以下:

1,“Q”+“enter key” 2,“c”+“enter key” 3.红色的“停止”按钮。

但它不离开调试模式。


Browse[2]> Q 
debugging in: ls(.Internal(getNamespaceRegistry()), all.names = TRUE) 
debug: { 
    if (!missing(name)) { 

Error: unable to quit when browser is active 
Browse[2]> c 
exiting from: ls(.Internal(getNamespaceRegistry()), all.names = TRUE) 
debugging in: ls(.Internal(getNamespaceRegistry()), all.names = TRUE) 
debug: { 
    if (!missing(name)) { 

.....


的Rstudio版本:版本0.98.1060 - ©2009-2013 RStudio公司

的R版本:R i386.3.1.1

有没有人在Rstudio中遇到过这个问题? 谢谢。 Ang

+0

我在R控制台中没有这个问题。即我可以使用“Q”退出调试模式 – angli 2014-10-22 02:03:06

回答

9

问题是,只要您离开调试模式,就会触发ls的调用,从而使您回到调试模式。为了解决这个问题,你离开之前,调试器关闭调试ls

Browse[2]> undebug(ls) 
Browse[2]> Q 

考虑使用debugonce而不是debug以避免陷入这些种类的循环中。

+0

t也适用于我。谢谢 – Tchaps 2015-08-16 11:13:45