ZSH สีที่สมบูรณ์และ OS X


26

พิจารณา. zshrc ขั้นต่ำนี้:

export CLICOLOR=1;
export LSCOLORS=exfxcxdxbxegedabagacad; # It is the default value on OSX, so this line can be omitted

autoload -Uz compinit
compinit
zstyle ':completion:*' list-colors 'exfxcxdxbxegedabagacad'

บน OS X, lsใช้สีถ้าCLICOLORถูกกำหนดเป็น TRUE และสีที่ใช้อยู่ในซึ่งเป็นค่าเริ่มต้นLSCOLORS exfxcxdxbxegedabagacad

การทำlsพินัยกรรมจะพิมพ์ไดเรกทอรีเป็นสีน้ำเงิน แต่เมื่อทำเช่นcd + TABนั้น ZSH จะเสนอความสำเร็จกับไดเรกทอรีเป็นสีแดงและตัวหนา ปัญหาคืออะไรและฉันจะมีสีเดียวกันสำหรับการสำเร็จของ ZSH และlsอย่างไร

macos  shell  colors  zsh 

คำตอบ:


28

คุณจะต้องอ่านคำแนะนำอย่างระมัดระวัง: zshรู้วิธีการจัดการLS_COLORSซึ่งเป็นตัวแปร GNU / Linux ของlsการกำหนดค่าสี แต่คุณใช้ LSCOLORSOSX พวกเขาแตกต่างกันมากและปรากฏzshว่าไม่รู้วิธีจัดการกับหลัง

LSCOLORS ตัวอย่างสำหรับการส่งออกสีแดง:

bbbbbbbbbbbbbbbbbbbbbb

LS_COLORS ตัวอย่างสำหรับการส่งออกสีแดง:

di=31;41:ln=31;41:so=31;41:pi=31;41:ex=31;41:bd=31;41:cd=31;41:su=31;41:sg=31;41:tw=31;41:ow=31;41:

ใช้เช่นเครื่องมือนี้ ( บน Github ) เพื่อสร้างชุดรูปแบบสีที่ดีหรือสร้างชุดรูปแบบที่คุณใช้คัดลอกเอาต์พุตสำหรับLinuxLS_COLORSจากนั้นใช้สีต่อไปนี้เพื่อตั้งค่าสี:

# between quotation marks is the tool output for LS_COLORS
export LS_COLORS="di=31;41:ln=31;41:so=31;41:pi=31;41:ex=31;41:bd=31;41:cd=31;41:su=31;41:sg=31;41:tw=31;41:ow=31;41:"
zstyle ':completion:*:default' list-colors ${(s.:.)LS_COLORS}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.