nvim-dap-repl-highlights
เพิ่มการไฮไลต์ไวยากรณ์ให้กับบัฟเฟอร์ REPL ของ nvim-dap โดยใช้ treesitter | ก่อน | หลัง | | --------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | |
|
|ข้อกำหนดเบื้องต้น
- Neovim 0.9 หรือใหม่กว่า
- nvim-treesitter
การตั้งค่า
ติดตั้งปลั๊กอินและข้อกำหนดโดยใช้วิธีที่คุณชื่นชอบ เมื่อทำการติดตั้งแล้ว โปรดตรวจสอบว่าคุณได้ตั้งค่า treesitter highlighting แล้ว จากนั้นเพิ่มโค้ดต่อไปนี้ใน config lua ของคุณrequire('nvim-dap-repl-highlights').setup()
หลังจากตั้งค่า plugin เบื้องต้นแล้ว จำเป็นต้องติดตั้งตัวแปล dap_repl โดยสามารถทำได้ด้วยตนเองโดยรันคำสั่ง :TSInstall dap_replหรือทำแบบอัตโนมัติผ่านการกำหนดค่า Treesitter:
โดยใช้ ensure_installed (nvim-treesitter สาขา master)
⚠️ หมายเหตุ: คุณต้องเรียกใช้ nvim-dap-repl-highlights.setup() ก่อน Treesitter ไม่เช่นนั้นจะไม่พบตัวแปล dap_repl
require('nvim-dap-repl-highlights').setup()
require('nvim-treesitter.configs').setup {
highlight = {
enable = true,
},
ensure_installed = { 'dap_repl', ... },
...
}
การใช้ nvim-treesitter.install (สาขาหลักของ nvim-treesitter)
require('nvim-dap-repl-highlights').setup()
require('nvim-treesitter').install { 'dap_repl' }
⚠️ หากสิ่งนี้หยุดทำงานหรือ API มีการเปลี่ยนแปลง โปรดตรวจสอบเอกสาร Treesitter อย่างเป็นทางการสำหรับวิธีการติดตั้งล่าสุด:
👉 https://github.com/nvim-treesitter/nvim-treesitter
การใช้งาน
โดยค่าเริ่มต้น ปลั๊กอินจะตรวจสอบภาษาเพื่อใช้ใน REPL โดยดูจาก filetype ที่ใช้ในการเปิด dap แน่นอนว่าในการใช้ไฮไลต์ไวยากรณ์สำหรับบางภาษา คุณจะต้องมี treesitter parser สำหรับภาษานั้น พร้อมกับdap_repl parser
ซึ่งอาจไม่เหมาะกับทุกกรณีการใช้งานคุณสามารถใช้คำสั่ง :lua require('nvim-dap-repl-highlights').setup_highlights('python') ซึ่งจะตั้งค่าไฮไลต์ของภาษา python ในรีพลปัจจุบัน
หรือจะเรียกใช้ฟังก์ชันโดยไม่ระบุภาษา ซึ่งจะมีการถามผู้ใช้สำหรับภาษา
นอกจากนี้คุณยังสามารถระบุใน dap configuration ว่าจะใช้ภาษารีพลใด เช่น หากคุณต้องการให้รีพล python ของคุณมีไฮไลต์ภาษา javascript:
local dap = require('dap')
dap.configurations.python = {
{
name = "Python with javascript repl because I like to watch the world burn 🔥🔥🔥",
type = "python",
request = "launch",
program = "${file}",
repl_lang = "javascript"
},
}
ตัวเลือก repl_lang จะมีความสำคัญเหนือกว่า filetype--- Tranlated By Open Ai Tx | Last indexed: 2025-10-07 ---