ฉันไม่เข้าใจอย่างถ่องแท้ว่าชุดสีของฉันมีปฏิสัมพันธ์กับการterm
ตั้งค่าเป็นกลุ่มอย่างไรและนี่เป็นการขัดขวางความสามารถของฉันในการแสดงให้ถูกต้องใน neovim
ในไฟล์. vimrc ของฉันพฤติกรรมที่ถูกต้องของชุดรูปแบบสีที่เป็นปัญหาต้องมีการตั้งค่า
set term=xterm
set t_Co=256
การข้ามการตั้งค่าเหล่านี้อย่างใดอย่างหนึ่งส่งผลให้การแสดงชุดรูปแบบสีไม่ถูกต้อง:
แก้ไข ไม่ ถูกต้อง
โครงการมีลักษณะดังนี้:
set background=dark
hi clear
if exists("syntax_on")
syntax reset
endif
let g:colors_name="impact3"
if exists("g:impact_transbg")
hi Normal ctermfg=255 ctermbg=none
hi NonText ctermfg=DarkGray ctermbg=none
hi Statement ctermfg=Blue ctermbg=none
hi Comment ctermfg=DarkGray ctermbg=none cterm=bold term=bold
hi Constant ctermfg=173 ctermbg=none
hi Identifier ctermfg=Cyan ctermbg=none
hi Type ctermfg=DarkGreen ctermbg=none
hi Folded ctermfg=0 ctermbg=235 cterm=underline term=none
hi Special ctermfg=Blue ctermbg=none
hi PreProc ctermfg=LightGray ctermbg=none cterm=bold term=bold
hi Scrollbar ctermfg=Blue ctermbg=none
hi Cursor ctermfg=white ctermbg=none
hi ErrorMsg ctermfg=Red ctermbg=none cterm=bold term=bold
hi WarningMsg ctermfg=Yellow ctermbg=none
hi VertSplit ctermfg=0 ctermbg=0
hi Directory ctermfg=Cyan ctermbg=DarkBlue
hi Visual ctermfg=White ctermbg=Gray cterm=underline term=none
hi Title ctermfg=255 ctermbg=Blue
hi String ctermfg=Blue ctermbg=none
hi StatusLine term=bold cterm=bold,underline ctermfg=White ctermbg=Black
hi StatusLineNC term=bold cterm=bold,underline ctermfg=Gray ctermbg=Black
hi LineNr term=bold cterm=bold ctermfg=2 ctermbg=None
hi Search ctermfg=Black ctermbg=2
hi TabLine ctermfg=0 ctermbg=DarkGray
hi TabLineFill ctermfg=DarkGray ctermbg=DarkGray
else
hi Normal ctermfg=White ctermbg=Black
hi NonText ctermfg=DarkGray ctermbg=Black
hi Statement ctermfg=Blue ctermbg=Black
hi Comment ctermfg=DarkGray ctermbg=Black cterm=bold term=bold
hi Constant ctermfg=DarkCyan ctermbg=Black
hi Identifier ctermfg=Cyan ctermbg=Black
hi Type ctermfg=DarkGreen ctermbg=Black
hi Folded ctermfg=DarkGreen ctermbg=Black cterm=underline term=none
hi Special ctermfg=Blue ctermbg=Black
hi PreProc ctermfg=LightGray ctermbg=Black cterm=bold term=bold
hi Scrollbar ctermfg=Blue ctermbg=Black
hi Cursor ctermfg=white ctermbg=Black
hi ErrorMsg ctermfg=Red ctermbg=Black cterm=bold term=bold
hi WarningMsg ctermfg=Yellow ctermbg=Black
hi VertSplit ctermfg=White ctermbg=Black
hi Directory ctermfg=Cyan ctermbg=DarkBlue
hi Visual ctermfg=White ctermbg=DarkGray cterm=underline term=none
hi Title ctermfg=White ctermbg=DarkBlue
hi StatusLine term=bold cterm=bold,underline ctermfg=White ctermbg=Black
hi StatusLineNC term=bold cterm=bold,underline ctermfg=Gray ctermbg=Black
hi LineNr term=bold cterm=bold ctermfg=White ctermbg=Black
endif
ใน neovim term
ไม่สามารถตั้งค่าได้ ฉันพยายามเรียกใช้ neovim ด้วยการตั้งค่า $ TERM ด้วยตนเองดังนี้:
TERM=xterm nvim
สิ่งนี้ทำให้เกิดการแสดงสีที่ถูกต้องใน vim ปกติ (เช่นเทียบเท่ากับการตั้งค่าคำใน. vimrc) แต่ใน neovim ดูเหมือนว่า:
ทำไมการรวมกันของset term=xterm
และset t_Co=256
จำเป็นในการสร้างการแสดงผลที่ถูกต้องของโทนสีนี้ในกลุ่ม
แก้ไข:
ค่าเริ่มต้นคือ $TERM=xterm256-color
, ซึ่งด้วยเหตุผลบางอย่างจะต้องมีการแทนที่ไปxterm
ในกลุ่มปกติที่จะทำให้จอแสดงผลสีได้อย่างถูกต้อง ด้วยตัวแปรสภาพแวดล้อมที่ค่าเริ่มต้น 256 neovim มีลักษณะดังนี้:
นี่เป็นเหมือนเสียงเรียกเข้าปกติด้วยxterm256-color
แต่ไม่ได้ตั้งใจ เป้าหมายของฉันคือเข้าใจว่าทำไมการแฮ็ก xterm จึงจำเป็น / ทำงานเป็นกลุ่มและทำไมมันไม่เหมือน neovim
โปรดทราบว่าสีจำนวนมากปรากฏอย่างถูกต้องโดยมีการตั้งค่าตัวแปร env ด้านบนข้อยกเว้นที่น่าสังเกตว่าเป็นหมายเลขบรรทัดและพื้นหลัง ฉันสงสัยว่าวิธีการระบุสีในโทนสีเฉพาะนี้อาจเกี่ยวข้องกัน
set term=xterm
ความเห็นจากทั้งสองสายการตั้งค่ามีลักษณะเช่นเดียวกับการแสดงความคิดเห็นออกมา