Tmux में हाइलाइटिंग कोई सिंटैक्स नहीं


17

मैं स्थापित tmuxiTerm 2. (बिल्ड 3.0.13) में जब मैं निष्पादित vimमें tmux, वाक्य रचना इस तरह दिखता है पर प्रकाश डाला।

कोई सिंटैक्स हाइलाइटिंग नहीं

लेकिन tmux के बाहर, सिंटैक्स हाइलाइटिंग ठीक लगती है।

साधारण वाक्य रचना हाइलाइटिंग

मेरे $TERMअंदर और बाहर tmux है xterm-256color। मैंने भी जोड़ा

set -g default-terminal "screen-256color"

में .tmux.confहै और इस के लिए जोड़ा

set t_Co=256
set t_AB=m
set t_AF=m
if &term =~ '256color'
    set t_ut=
endif

में है .vimrc

मैंने tmux -2इन प्रश्नों को कमांड करने और पढ़ने की भी कोशिश की ।

tmux मोड में vim colorcheme खो दें

Solarized का उपयोग कर iTerm2 में विम के साथ गलत रंग

इस की एक समस्या है tmux, vimया मेरी विन्यास?

संपादित करें:

.vimrcगितहब गिस्ट में मेरा

https://gist.github.com/sohnryang/3c63397f332f2e30c7d7b2a83c3c9f52


जब आप अपने tmux को -2विकल्प के साथ शुरू करेंगे तो क्या होगा tmux -2:। अधिमानतः जब tmux में कोई सत्र नहीं हैं।
ग्रोडज़िक

मैंने इस्तेमाल किया tmux -2, लेकिन समस्या वही है।

क्या आप पूरा साझा कर सकते हैं .vimrc?
ग्रोडज़िक

1
@sohnryang "शायद आपको नहीं करना चाहिए" का क्या हिस्सा आपको समझ में नहीं आता है?
मुरु

1
इन चरणों का पालन करने का प्रयास करें । आपके पास बहुत सारे प्लगइन्स हैं इसलिए शायद उनमें से एक हस्तक्षेप कर रहा है।
मार्टिन टूरनोइज

जवाबों:


8

खैर, मैंने खुद ही समस्या हल कर ली।

जैसा कि @ Carpetsmoker ed ने टिप्पणी की, मुझे संदेह होने लगा कि मेरी .vimrcसमस्या है। मैंने इस प्रश्न को पढ़ा और tmux के अंदर इस कमांड के साथ विम की शुरुआत की।

vim -u NONE -U NONE -N ~/.vimrc

ऊपर दिए गए कमांड के साथ vim शुरू करने के बाद, मैंने इस कमांड को vim के अंदर चलाया।

:syn on
:colorscheme solarized8_dark

ये मेरी .vimrcफ़ाइल पर प्रकाश डाला । इसलिए, मैंने अपना डेब्यू करना शुरू कर दिया .vimrc

लंबी कहानी छोटी, set termguicolorsसमस्या थी। अगर मैं set termguicolorsटिप्पणी के साथ भाग गया .vimrc, मैं सही सिंटैक्स tmux में हाइलाइटिंग देख सकता था।


मेरी भी यही समस्या थी। termguicolorsहालांकि tmux पर काम करना बहुत अच्छा होगा
फिल्पे

4

विम मैनुअल से: :h termguicolorsपढ़ने की सलाह देता है:h xterm-true-color

Sometimes setting 'termguicolors' is not enough and one has to set the |t_8f|
and |t_8b| options explicitly.  [ ... these are]  only set [to some default] when `$TERM` is `xterm`.

मैं नीचे के समान एक शर्त का उपयोग करता हूं:

if &term =~# '256color' && ( &term =~# '^screen'  || &term =~# '^tmux' )
    let &t_8f = "\<Esc>[38;2;%lu;%lu;%lum"
    let &t_8b = "\<Esc>[48;2;%lu;%lu;%lum"
    set termguicolors
endif

3

मैंने वास्तव में इसके साथ ठीक काम किया है termguicolors। यह वही है जो मैंने किया था 1. मेरे ~ / .bash_profile में मैंने यह डाला:

export TERM=xterm-256color

और मेरे ~ / .vimrc के अंदर मेरे पास यह था

syntax enable
colorscheme Spacegray

set termguicolors

और यह पूरी तरह से काम किया! संदर्भ


: syn पर: colorcheme Spacegray: setguicolors
abbood
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.