R 模拟写入stdin()

R 模拟写入stdin(),r,io,prompt,R,Io,Prompt,一些R GUI(如RStudio)显示的终端输入与正常输出不同(如RStudio中的蓝色)。我希望通过利用与readline相同的机制来模拟这种行为。换句话说,我希望能够欺骗R,使其认为某个表达式来自终端。比如: cat("hello", file=stdin()) 这当然不起作用,因为stdin仅是rreadline可以做到这一点,但不幸的是,它还需要用户键入一些我希望避免的内容(理想情况下,我希望使用非交互式的readline行为) 查看源代码,我想要的行为似乎是由\src\gnuwin3

一些R GUI(如RStudio)显示的终端输入与正常输出不同(如RStudio中的蓝色)。我希望通过利用与
readline
相同的机制来模拟这种行为。换句话说,我希望能够欺骗R,使其认为某个表达式来自终端。比如:

cat("hello", file=stdin())
这当然不起作用,因为stdin仅是r
readline
可以做到这一点,但不幸的是,它还需要用户键入一些我希望避免的内容(理想情况下,我希望使用非交互式的
readline
行为)

查看源代码,我想要的行为似乎是由
\src\gnuwin32\system.C
(在我的windows机器上)中的
R\u ReadConsole
R\u WriteConsole
C函数实现的,这些函数本身由
src\main\scan.C
中的
ConsoleGetChar
调用,但是我不认为我可以直接从R调用它。我也看不到一种方法可以强迫
readline
认为它是在非交互模式下运行的

我不想直接用转义字符序列给文本上色。我希望GUI以与终端输入相同的方式处理彩色化(即,可能通过读取
stdin
并输出彩色化的内容),以便实现独立于OS/GUI

我想不用写C代码就可以做到这一点。这可能吗