You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中运行R代码出现异常打印问题求助

VSCode中R代码输出出现ANSI转义字符异常的解决思路

加载tidyverse库时,输出中出现了显式的ANSI转义字符(如←[1m、←[32m),而非预期的格式化样式,示例输出如下:

> library("tidyverse")
-- ←[1mAttaching packages←[22m -------------------------------------------------- tidyverse 1.3.2 --
←[32mv←[39m ←[34mggplot2←[39m 3.4.0      ←[32mv←[39m ←[34mpurrr  ←[39m 1.0.0
←[32mv←[39m ←[34mtibble ←[39m 3.1.8      ←[32mv←[39m ←[34mdplyr  ←[39m 1.0.10
←[32mv←[39m ←[34mtidyr  ←[39m 1.2.1      ←[32mv←[39m ←[34mstringr←[39m 1.5.0
←[32mv←[39m ←[34mreadr  ←[39m 2.1.3      ←[32mv←[39m ←[34mforcats←[39m 0.5.2
-- ←[1mConflicts←[22m ----------------------------------------------------- tidyverse_conflicts() --
←[31mx←[39m ←[34mdplyr←[39m::←[32mfilter()←[39m masks ←[34mstats←[39m::filter()
←[31mx←[39m ←[34mdplyr←[39m::←[32mlag()←[39m    masks ←[34mstats←[39m::lag()

当前VSCode用户设置JSON:

{
    "r.rterm.windows": "C:\\Program Files\\R\\R-4.2.2\\bin\\R.exe",
    "editor.suggestSelection": "first",
    "vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
    "python.jediEnabled": false,
    "window.zoomLevel": 0,
    "python.languageServer": "Microsoft",
    "editor.fontFamily": "Fira Code Retina",
    "editor.fontLigatures": true,
    "editor.minimap.enabled": false,
    "r.bracketedPaste": true,  
    "r.lsp.path": "C:\\Program Files\\R\\R-4.2.2\\bin\\R.exe",
    "r.lsp.debug": true,
    "r.lsp.diagnostics": true    
}

sessionInfo()信息:

> sessionInfo()
R version 4.2.2 (2022-10-31 ucrt)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows Server 2012 R2 x64 (build 9600)

Matrix products: default

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252
  LC_MONETARY=English_United States.1252 LC_NUMERIC=C
LC_TIME=English_United States.1252

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base

other attached packages:
[1] forcats_0.5.2   stringr_1.5.0   dplyr_1.0.10    purrr_1.0.0     readr_2.1.3
    tidyr_1.2.1     tibble_3.1.8    ggplot2_3.4.0   tidyverse_1.3.2

loaded via a namespace (and not attached):
 [1] pillar_1.8.1        compiler_4.2.2      cellranger_1.1.0    dbplyr_2.2.1
     tools_4.2.2         timechange_0.1.1    lubridate_1.9.0     jsonlite_1.8.4
     googledrive_2.0.0
[10] lifecycle_1.0.3     gargle_1.2.1        gtable_0.3.1        pkgconfig_2.0.3
     rlang_1.0.6         reprex_2.0.2        DBI_1.1.3           cli_3.5.0
     haven_2.5.1
[19] xml2_1.3.3          withr_2.5.0         httr_1.4.4          generics_0.1.3
     vctrs_0.5.1         fs_1.5.2            hms_1.1.2           googlesheets4_1.0.1 grid_4.2.2
[28] tidyselect_1.2.0    glue_1.6.2          R6_2.5.1            fansi_1.0.3
     readxl_1.4.1        tzdb_0.3.0          modelr_0.1.10       magrittr_2.0.3
     backports_1.4.1
[37] scales_1.2.1        ellipsis_0.3.2      rvest_1.0.3         assertthat_0.2.1    colorspace_2.0-3    utf8_1.2.2          stringi_1.7.8       munsell_0.5.0
     broom_1.0.2
[46] crayon_1.5.2

解决思路

  • 禁用R的ANSI颜色输出:在R控制台运行options(cli.num_colors = 1),临时关闭cli包的颜色格式化;若要永久生效,在用户目录下的.Rprofile文件中添加该行代码。
  • 修改VSCode的R启动参数:更新用户设置中的r.rterm.windows为"C:\\Program Files\\R\\R-4.2.2\\bin\\R.exe --no-color",启动R时直接禁用颜色输出。
  • 更换终端环境:Windows Server 2012 R2的默认控制台对ANSI转义字符支持有限,可将VSCode的默认终端切换为Windows Terminal,提升兼容性。
  • 更新相关依赖包:运行update.packages(c("cli", "crayon")),更新负责输出格式化的cli和crayon包,新版本可能修复旧系统的兼容问题。
  • 调整LSP设置:尝试关闭r.lsp.debug选项,减少调试输出带来的转义字符解析问题;或检查LSP的输出配置,确保转义字符被正确处理。

内容的提问来源于stack exchange,提问作者TheRealJimShady

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 17:40:17