টিএমউক্সের সাথে সঠিকভাবে কাজ করার জন্য কীভাবে ভিম পাবেন?


19

আমি কীভাবে এক সাথে পেতে vimএবং tmuxখেলতে পারি তা চেষ্টা করার চেষ্টা করছি trying

আমার সমস্যাটি হ'ল: আমি যখন ব্যবহার xterm-256colorকরি তখন আমি vimসুন্দরভাবে কাজ করতে পারি তবে পটভূমিটি সঠিকভাবে রেন্ডার হয় না।

আমি এটি ব্যবহার করে এটি ঠিক করেছি screen-256color। এটি দেখতে দুর্দান্ত লাগছে তবে Ctrl + arrow keys(তারা সন্নিবেশ মোডে যায় এবং 4 টি লাইন মুছে ফেলে)। আমি ট্যাবগুলিতে স্যুইচ করার পরিবর্তে এই ম্যাপিংগুলি ব্যবহার করতে চাই vim

আমি এটি কীভাবে কাজ করব?

উত্তর:


8

এর catমধ্যে দৌড়াও tmuxএবং তারা উত্পন্ন করে থাকা এস্কেপ কোডগুলি সন্ধান করতে প্রশ্নের মধ্যে থাকা কীগুলি টিপুন। আমার জন্য এটি দেয় ^[[Dএবং ^[[C। তারপরে সরাসরি সেই পালানো কোডগুলি সরাসরি ম্যাপ করুন।

nnoremap ^[[D gT
nnoremap ^[[C gt

যেখানে ^[একটি পালানোর চরিত্র, আপনি <CTRL-v><ESC>ভিমে চেপে সন্নিবেশ করতে পারেন ।


এটি আমার ভিমের আচরণ পরিবর্তন করে নি।
আউটসার্টিন

আপনি যখন টিএমউক্সের মধ্যে বিড়াল শুরু করবেন এবং কীগুলি টিপুন তখন কী মুদ্রিত হবে?
মিকা ফিশার

^ [[[1; 5 সি এবং ^ [[1; 5 ডি। ভাল ধারণা, সেগুলি কীভাবে পাব তা আমি জানতাম না। সবেমাত্র চেষ্টা করে দেখেছি। এটি কাজ করে! ধন্যবাদ.
আউটস্মার্টিন

গ্রেট। সঠিক পালানোর কোডগুলি পাওয়ার পদ্ধতিটি অন্তর্ভুক্ত করার জন্য আমি আমার অ্যানসিভার সম্পাদনা করেছি।
মিকা ফিশার

22

কনফিগারেশনের বেশ কয়েকটি স্তর রয়েছে যা সেরা কার্যকারিতার জন্য সঠিকভাবে সেট আপ করা দরকার।

  1. ক্রমগুলি সনাক্ত করতে tmux কনফিগার করুন । Tmux আরম্ভ করার আগে , একটি TERM মান সেট করুন যা আপনার টার্মিনাল এমুলেটরটির জন্য উপযুক্ত (যেমন xterm-256color)। Terminfo ডাটাবেসের এন্ট্রি শব্দটি এনভায়রনমেন্ট ভেরিয়েবল দ্বারা চিহ্নিত বলে tmux নির্দেশক তীরচিহ্নগুলি পরিবর্তিত জন্য সিকোয়েন্স চিনতে কিভাবে (ব্যবহারকারী-সংজ্ঞায়িত ক্ষমতা { kUP, kDN, kRIT, kLFT} {, 3.. 7})।
  2. অনুক্রমগুলি তৈরি করতে tmux কনফিগার করুন । xterm-keysসেশন বিকল্পটি সেট করুন onযাতে tmux তার নিজস্ব এক্সটার্ম-স্টাইলের ক্রম তৈরি করে যখন এটি তার TERM সনাক্তকারী একটি ক্রম পায়। আপনার ~/.tmux.conf:

    set-option -g xterm-keys on
    
  3. এর ক্রমগুলির সিংহভাগ ব্যবহার / আশা করতে tmux এর অভ্যন্তরে চলমান প্রোগ্রামগুলি কনফিগার করুন । আপনি tmux (যেমন ) এর screenঅভ্যন্তরে একটি ভিত্তিক TERM ব্যবহার করছেন তা নিশ্চিত করুন । এটি tmux এর ভিতরে চলমান প্রোগ্রামগুলি জানায় কীভাবে tmux এর টার্মিনাল (পুনরায়) অনুকরণ নিয়ন্ত্রণ করতে হবে এবং tmux থেকে তাদের কী প্রতিক্রিয়া আশা করা উচিত ।screen-256color
  4. দুর্ভাগ্যক্রমে, screen-ভিত্তিক টার্মিনো ডাটাবেস এন্ট্রিগুলি প্রায়শই পরিবর্তিত তীর কীগুলির জন্য কোনও ক্রম সংজ্ঞায়িত করে না (যেমন তাদের নাও থাকতে পারে kUP), সুতরাং tmux- র মধ্যে চলমান প্রোগ্রামগুলি এই ধরণের ক্রমগুলি আশা করতে নাও পারে। আপনি এই কীগুলি সনাক্ত করতে চান এমন কোনও প্রোগ্রাম ম্যানুয়ালি কনফিগার করতে হবে। ইন তেজ , আপনি আপনার এই লাগাতে পারেন ~/.vimrc:

    if &term =~ '^screen'
        " tmux will send xterm-style keys when xterm-keys is on
        execute "set <xUp>=\e[1;*A"
        execute "set <xDown>=\e[1;*B"
        execute "set <xRight>=\e[1;*C"
        execute "set <xLeft>=\e[1;*D"
    endif
    

    আপনি যদি দেখতে পান যে- বিভাজনটি ব্যবহার করার ফলে আপনার স্বাভাবিক তীর কীগুলি কাজ করা বন্ধ করে দেয় তবে আপনি ভিন্ন রূপগুলি ব্যবহার করতে পারেন x(অর্থাত্ <Up>পরিবর্তে <xUp>, এবং xঅন্যদিকে ) arrow

    এর মতো কীগুলি সংজ্ঞায়িত করার সুবিধাটি হ'ল আপনাকে প্রতিটি সংশোধক সংমিশ্রণকে আলাদা আলাদাভাবে ম্যাপ করতে হবে না (শিফট, কন্ট্রোল, কনটোল + শিফট, মেটা, মেটা + শিফট, मेटा + নিয়ন্ত্রণ, मेटा + নিয়ন্ত্রণ + শিফট); *সব সংশ্লিষ্ট সিকোয়েন্স (দেখুন হ্যান্ডেল করতে বিশেষ ব্যাখ্যা পায় :help xterm-modifier-keys)।

  5. তারপরে আপনি কীগুলি তাদের হার্ড-কোডেড সিকোয়েন্সগুলির পরিবর্তে ম্যাপ করতে পারেন:

    nnoremap <C-Right> gt
    nnoremap <C-Left> gT
    

1
আরে, এটি পুরোপুরি কাজ করেছে!
পাবলো ওলমোস ডি আগুইলেরা সি।

2

এখানে বর্ণিত হিসাবে, টার্মিনাল অপশনটি সাফ করে ব্যাকগ্রাউন্ড কালার ইরেজ (বিসিই) অক্ষম করুন t_ut( :set t_ut=ভিমে চালান এবং তারপরে টার্মিনালের ডিসপ্লে রিফ্রেশ করতে Control+ চাপুন L) যাতে টিমাক্স এবং জিএনইউ স্ক্রিনের অভ্যন্তরে যখন ভিম ব্যবহার করা হয় তখন রঙিন স্কিমগুলি সঠিকভাবে কাজ করে।

এইভাবে, আপনি যথাযথ কী সনাক্তকরণ TERMহিসাবে আপনার মান রাখতে পারেন xterm-256colorএবং যথাযথ ভিএম রঙের স্কিমও সরবরাহ করতে পারেন! :-)


1

আপনার। set t_Co=256/ .Vimrc এ সেট করা কি আদৌ সহায়তা করে? এটি কেবল একটি রঙিন সেটিং তবে এটি কিছু সমস্যা পরিষ্কার করতে সহায়তা করতে পারে।

আপনি ctrl+Arrowআপনার। / .Vimrc তে কীগুলি পুনরায় ম্যাপ করতে পারেন ...

সম্পাদনা: আপনি ctrl+Arrowকোন জিএনইউ স্ক্রিন সেশনে চেষ্টা করেছিলেন? আমি মনে করি এটি আপনার সমস্যা হতে পারে।


এটা দেখায় এবং xterm-256color সঙ্গে পর্দায় কাজ করে জরিমানা
outsmartin

সেট t_Co = 256 aswell সম্পন্ন করা হয়
outsmartin

এটির কোনও সাহায্য করেছে?
সারদাথ্রিয়ন - মনিকা

দুর্ভাগ্যক্রমে না. রিমপাইন সিটিআরএল + তীর দিয়ে ঠিক কী বোঝাতে চাইছেন? আমি ইতিমধ্যে সেগুলিকে ভিএম-এ ট্যাবগুলি স্যুইচ করতে পুনরায় তৈরি করতে ব্যবহার করি।
আউটসার্টিন

এটি এর মতো ম্যাপ করা হয়েছে: মানচিত্র <সি-রাইট> জিটি
আউটসার্টিন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.