如何启动加载Rust美化打印器的lldb-dap服务用于nvim-dap调试Rust?
解决lldb-dap加载Rust美化打印器的方法
有两种可靠方式可以实现需求:
方法一:通过lldb全局配置文件自动加载
lldb启动时会自动读取用户主目录下的.lldbinit文件,我们可以把加载美化打印器的命令写入该文件,让lldb-dap启动时自动执行:
- 打开终端编辑
~/.lldbinit文件 - 添加以下内容:
command script import ~/Apps/rust-lldb/lldb_lookup.py source ~/Apps/rust-lldb/lldb_commands
- 保存文件后重启nvim,后续启动nvim-dap调试时,lldb-dap会自动加载这些美化打印器。
方法二:在nvim-dap配置中添加初始化命令
利用nvim-dap的initCommands配置项,在调试会话启动时主动向lldb-dap发送加载命令:
修改你的nvim-dap Rust配置如下:
dap.adapters.rust_lldb = { type = "executable", command = "lldb-dap-18", name = "rust_lldb", } dap.configurations.rust = { { name = "Launch Rust Executable", type = "rust_lldb", request = "launch", program = function() return vim.fn.input({ prompt = "Path to executable: ", default = vim.fn.getcwd() .. "/", completion = "file", }) end, cwd = "${workspaceFolder}", stopOnEntry = false, args = {}, -- 新增初始化命令,加载美化打印器 initCommands = function() return { 'command script import ~/Apps/rust-lldb/lldb_lookup.py', 'source ~/Apps/rust-lldb/lldb_commands' } end, }, }
每次启动调试会话时,nvim-dap会自动发送这些命令,完成打印器的加载。
验证方式
启动调试后,查看nvim-dap的变量窗口,若Vec、HashMap等Rust标准类型以格式化后的美观样式显示,说明配置生效。
内容的提问来源于stack exchange,提问作者Tudor
相关产品推荐
相关产品推荐

