Tmux में काम करने के लिए 256 रंग प्राप्त करना


177

मैं 256 रंग काम कर रहा हूँ बस में ठीक है konsole,। मैंने सोचा कि मैं tmuxएक कोशिश करूँगा क्योंकि, स्क्रीन के विपरीत, यह समर्थन viमोड के लिए लगता है। हालाँकि मुझे लगता है कि मेरे प्रॉम्प्ट के रंग दिखाई देते हैं और यह सबसे अधिक संभावना है क्योंकि मेरे पास 256 कलर मोड प्रॉम्प्ट है। tmuxसभी 256 रंगों को पहचानने के लिए मुझे क्या करने की आवश्यकता है ?


2
tmux -2मुझे टर्मिनेटर में ऐसा करना पड़ा और मुझे कुछ आश्चर्य हुआ। -2झंडा tmux बताता 256 रंगों के उपयोग के लिए मजबूर करने के ... कि क्या आपके टर्मिनल यह पसंद करती है या नहीं ... डन डन dunnn: पी
डायलन

जवाबों:


253

Tmux पूछे जाने वाले प्रश्न स्पष्ट रूप से अपने खोल init फाइल में स्क्रीन या स्क्रीन 256color के अलावा और कुछ करने के लिए अवधि की स्थापना, तो यह मत करो के खिलाफ सलाह देते हैं!

यहाँ मेरा उपयोग है:

~$ which tmux
tmux: aliased to TERM=xterm-256color tmux

और मेरे .tmux.conf में:

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

Aliasing tmuxकरने के लिए " tmux -2" भी चाल करना चाहिए।


4
मुझे इसे .tmux.conf में सेट करने का तरीका सबसे अच्छा लगता है ... इसे सेट करने के लिए शेल का उपयोग करना सही नहीं लगता है
xenoterracide

6
अजीब। आपको tmux -2OSX की आवश्यकता नहीं है लेकिन आपको Gnome टर्मिनल की आवश्यकता है। जानकारी के लिए धन्यवाद, मेरे उपनाम में जोड़ा गया!
FX

1
कुबंटु 13.10 में .tmux.conf सेटिंग में अकेले मुझे मेरे 256 रंग वापस नहीं मिले (जो कि दृश्य दृश्य विधा में हाइलाइटिंग निकालते हैं) लेकिन उर्फ ​​ने काम किया। निश्चित रूप से एक .tmux.conf फ़ाइल केवल समाधान पसंद करेंगे।
जैकब डाल्टन

1
उबंटू मशीन (OS X टर्मिनल से) में ssh'd, .tmux.conf डिफ़ॉल्ट-टर्मिनल मुझे चाहिए था।
द्वंद्वयुद्ध मार्करों

2
मेरे लिए ऐसा लगता है जैसे मुझे TERM=screen-256color tmuxएक .tmux.confफ़ाइल बनाने के बिना सभी की आवश्यकता है । क्या मैं कुछ भूल रहा हूँ?
जोएलोस्टब्लोम

39

अपने bashrc या zshrc में स्पष्ट रूप से 256 रंग सेट करने का प्रयास करें:

export TERM=xterm-256color

या

export TERM=screen-256color

अगर आपको tmux की समस्याएँ हैं, तो स्क्रीन टर्म सेटिंग का उपयोग करते समय पृष्ठभूमि के रंगों को सही ढंग से साफ़ नहीं करना, आप कोशिश कर सकते हैं:

export TERM=screen-256color-bce

1
पहला मेरा डिफ़ॉल्ट TERM सेटिंग है ... मैंने अभी अन्य 2 की कोशिश की है और एक बार जब मैं tmux में प्रवेश करता हूं तो मेरा प्रॉम्प्ट अभी भी रंग नहीं दिखाता है। (मैं यह ध्यान देना चाहूंगा कि tmux नीचे रंग दिखाता है) ... ऐसा लगता है कि जब मैं tmux में प्रवेश करता हूं तो यह TERM से TERM = स्क्रीन पर रहता है ... शायद यह एक विन्यास में इसे ओवरराइड करने का एक तरीका है?
xenoterracide

nvm ... मुझे लगता है कि इसे मेरे शेल की आरसी में डालने से काम चल जाता है ... यह कितना कष्टप्रद है कि यह टीएमआरवी चर को अनदेखा करता है जब मैं tmux निष्पादित करता हूं ... मुझे लगता है कि मुझे अपनी आरसी में एक सशर्त डालनी होगी।
xenoterracide

1
-बस tmux के साथ संगत नहीं है। Tmux पृष्ठभूमि रंग मिटाने का समर्थन नहीं करता है:
डस्टिन किर्कलैंड

1
मुझे रॉक्सटरम से यह समस्या थी। उम्मीद है कि इसमें रॉक्सटरम जोड़ने से लोगों को वही समाधान खोजने में मदद मिलेगी जो मेरे पास था। मैं अंत में व्यर्थ हो जाता हूं और रेखाओं का चयन करने से वे गायब हो जाते हैं। खोज करने के लिए बहुत मुश्किल है। डिफ़ॉल्ट रूप से रॉक्सटरम केवल $ TERM = xterm के साथ सेट होता है, जो अच्छा नहीं है।
बीपडॉग

5
-1, आपको अपनी शेल आरंभीकरण फ़ाइल में बिना शर्त के सेट नहीं करना चाहिए। इसे सेट करने के लिए xterm-256colorइसे tmux के अंदर भी ओवरराइड कर सकते हैं, और इसे screen-256colortmux के बाहर सेट करने से बग प्रदर्शित हो सकते हैं।
nyuszika7h

19

Tmux FAQ के अनुसार , इसे अपने में जोड़ें ~/.tmux.conf:

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

फिर इस उपनाम को tmux में जोड़ें:

alias tmux='tmux -2'

TERMआपकी प्रोफ़ाइल में या शुरू करते समय चर को ओवरराइड करने की आवश्यकता नहीं है tmux

अधिक जानकारी: http://vim.wikia.com/wiki/256_colors_setup_for_console_Vim


2
Tmux को कॉन्फ़िगर करना मेरे लिए काफी था; मुझे उर्फ ​​को सेट करने की आवश्यकता नहीं थी (हालांकि यह शायद चोट नहीं पहुंचाएगा)।
अनीपतेल

अकेले tmux को कॉन्फ़िगर करना मेरे लिए काम करता है। उर्फ पर्याप्त नहीं था।
हैरी मोरेनो

12

Tmux-256color termfo प्रविष्टि ( FAQ यह उल्लेख करता है) के साथ ncurses जहाजों का नवीनतम संस्करण । एक उदाहरण के रूप में, tmux-256color over screen-256color का उपयोग करने का एक लाभ यह है कि इटैलिक्स को ठीक से प्रस्तुत किया जाता है (स्क्रीन इटैलिक्स का समर्थन नहीं करता है)।

तो अगर आपके पास नवीनतम ncurses पैकेज है, तो निम्नलिखित भी काम करेगा:

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

मैं ध्यान tmux 2.6
दूंगा

3

यदि आप बायोनिक (18.04) से बड़े उबंटू को चला रहे हैं तो वास्तव में यहाँ महत्वपूर्ण नोट है। यदि आप दौड़ रहे हैं tmux 2.1या बड़ी उम्र के हैं, और आप शायद हैं, तो मूल रूप से कोई सलाह नहीं है जो आप ऑनलाइन पढ़ते हैं tmux काम करेगा..कुछ भी।

tmux -Vइसके लिए एक आसान परीक्षा है। यदि आप देखते हैं 2.1या पुराने हैं, तो आप स्रोत से tmux का निर्माण कर सकते हैं, या आप एक अनौपचारिक भंडार जोड़ सकते हैं। मैंने अपना tmux अपडेट किया है:

sudo add-apt-repository ppa:/hnakamur/tmux
sudo apt update
sudo apt upgrade

व्यक्तिगत रूप से, अपग्रेड करने के बाद 2.6, 1) मेरी चाबियाँ बेहतर काम कर रही हैं, 2) ऑनलाइन सलाह वास्तव में काम करती है, 3) मेरे रंग पागल नहीं हैं। बड़ा सुधार।

(यहां रिपॉजिटरी पेज का लिंक दिया गया है, btw): https://launchpad.net/~hnakamur


2

मैं समझा नहीं सकता कि यह क्यों काम करता है लेकिन इसने मेरे लिए समस्या को हल कर दिया।

~ / .Tmux.conf

set-option -g default-command bash

1
मैंने इसे अंतिम उपाय के रूप में आज़माया और आश्चर्यजनक रूप से इसने काम किया!
v0d1ch

1

यह मेरा समाधान है .... मैं अपनी .bashrc फ़ाइल को संपादित करता हूं और इसे जोड़ता हूं

if [ "$TERM" != "xterm-256color" ]; then
      export TERM=xterm-256color
    fi

उम्मीद है यह आपके काम आए


10
क्यों परेशान है if? आप बस चर सेट कर सकते हैं।
joeytwiddle
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.