Spent some more time this weekend with my arf, R.nvim and Kitty setup. I have a more solid grasp of some of the issues and have refined the config files. Will update my blog post once I verify it works on both machines. Had it working at home, didn't at work, but now think I have a cross-machine fix in place. Will test at home after work.

Original post for reference: https://adamhsparks.netlify.app/2026/03/10/further-enhancing-r-nvim-with-arf-and-terminalgraphics/

#RStats #NVim #arf

Further Enhancing R.nvim with Arf and {terminalgraphics}

TLDR Set up a wrapper for Arf and pass the shell’s PATH along to the kitten (split). Kitty launches the kitten (for the split) using a minimum configuration that doesn’t see your $HOME/.cargo/bin (where arf lives) and won’t pick up the rig installation that arf looks for. Here are the lines in my config files that make this happen. .local/bin/arf-wrapper, ensure this is executable. .config/kitt/kitty.conf environment, R.nvim, also see: https://github.com/R-nvim/R.nvim/blob/2d0cd152800ced779caaba4684a42efae81203b5/doc/R.nvim.txt#L1168. .

Adam H. Sparks

updated blog post is now up, https://adamhsparks.netlify.app/2026/03/10/further-enhancing-r-nvim-with-arf-and-terminalgraphics/

If you try this and get confused, please let me know so I can improve it. But this seems solid across my macs.

I now have arf console and {terminalgraphics} inside my Kitty window via R.nvim, no {httpgd} no XQuartz, etc. just a single window with plots when I need them in the terminal.

Further Enhancing R.nvim with Arf and {terminalgraphics}

TLDR Set up a wrapper for Arf and pass the shell’s PATH along to the kitten (split). Kitty launches the kitten (for the split) using a minimum configuration that doesn’t see your $HOME/.cargo/bin (where arf lives) and won’t pick up the rig installation that arf looks for. Here are the lines in my config files that make this happen. .local/bin/arf-wrapper, ensure this is executable. .config/kitt/kitty.conf environment, R.nvim, also see: https://github.com/R-nvim/R.nvim/blob/2d0cd152800ced779caaba4684a42efae81203b5/doc/R.nvim.txt#L1168. .

Adam H. Sparks
@adamhsparks thanks for sharing your setup. Always good to see another R.nvim user in the wild. I use visidata for dfs but still rely on x11/xquartz for plots. I don’t necessarily love having plots in the same window as my code but that’s just me.
@mschmidty cheers for that! I don’t like switching windows just to see the plot when I need to, so I set this up to scratch that itch. I did use visdata but switched csvlens recently. However, I’ve been doing more package development and less data sci lately so I’m not viewing plots or data frames very much lately.