অক্ষর হিসাবে ট্যাব প্রদর্শন করা হচ্ছে


119

আমি যখন পাইথনে ফাইলগুলিতে কাজ করি তখন আমি মাঝে মাঝে ফাঁকা জায়গাগুলির জন্য ট্যাবগুলিতে ভুল করে। কোনও উপায় কি আমি ভিমের সাথে কোনও ট্যাবটির পরিবর্তে কোনও ট্যাবটির জন্য একটি চরিত্র প্রদর্শন করতে পারি?


পার্শ্ব নোট হিসাবে, আপনি retabফাইলটি প্রতিবার সংরক্ষণের সাথে সমস্ত ট্যাবকে স্পেসে রূপান্তর করতে কনফিগার করতে পারেন ।
0xc0de 10

আপনি যদি ভিম-ফ্যাক ইনস্টল করেন তবে আপনি সেখানে একটি অফলাইন উত্তর পেতে পারেন: :h vim-faqএবং অনুসন্ধান করুন /invisible। মুখস্থ করা ট্যাগ হার্ড :h faq-19.8
হটস্কে

উত্তর:


119

হ্যাঁ, তালিকার ব্যবহার করুন:

set list
set listchars=tab:>-

আপনি যদি .vimrc এ এই দুটি লাইন রাখেন, তবে ট্যাবগুলি >শুরু অবস্থান হিসাবে এবং -বাকী ট্যাবের মাধ্যমে প্রদর্শিত হবে ।

(সিডিনোট: তালিকাচক্রগুলিও ট্র্যাকিং স্পেসগুলি trail:x( যে স্থানটি আপনি একটি চলার জায়গার xজন্য ব্যবহার করতে চান তার সাথে প্রতিস্থাপন করুন ) প্রদর্শন করতে পারে, যা দরকারীও হতে পারে))


6
দ্রষ্টব্য: আমি ব্যবহার করতে চাই set listchars=tab:!·,trail:·, আইএমএইচও এর ·চেয়ে অনেক বেশি পরিষ্কার -... বিটিডব্লিউ কাজ করার জন্য আপনার খুব সাম্প্রতিকতম ভিএম সংস্করণ প্রয়োজন (ঠিক কোনটি মনে হয় না, আমি 7.৩.x মনে করি) ...
মার্টিন টর্নিওজ

8
আমি ইউনিকোড চরিত্রটি এর চেয়ে সামান্য ছোট বলে ব্যবহার করতে চাই >। বর্তমানে আমি ইওলটি চিহ্নিত করে সাদা স্থান অনুসরণ করছি (যদিও আমি উপরেরটি চেষ্টা করে দেখতে পারি)। আমার সেটিংস set listchars=eol:¬,tab:▸\
মার্টিন ইয়র্ক

58

মূল উত্তরটি হ'ল :set list, যা ট্যাবগুলি হিসাবে প্রদর্শিত হয় ^I

তবে আমি এর বাইরে যাওয়ার পরামর্শ দিই recommend এটি কেবল :set listসমস্যাযুক্ত যে এটি স্ক্রিনে ভিজ্যুয়াল প্রান্তিককরণ সংরক্ষণ করতে ব্যর্থ। উদাহরণ স্বরূপ:

%.o: %.cpp
^Ig++ -c $<

ভাল দেখাচ্ছে না, বিশেষত যখন আপনি আশা gএর g++প্রথম অধীনে প্রদর্শিত pএর cpp(অভিমানী tabstop=8)।

অতএব, আমি আপনাকে পরামর্শ দিচ্ছি যে আপনার মধ্যে .vimrcএমন কিছু রাখুন :set listchars=tab:␉· (পরিষ্কার করার জন্য, এটি ইউনিকোড চরিত্রের ইউ + 2409 সিমবোল ফর হরজনাল টালিশনেশন এর পরে ইউ + 00 বি 7 মিডল ডট )

যেমনটি ব্যাখ্যা করা হয়েছে :help listchars, দ্বি-চরিত্রের সেটিংয়ের tab:xyকারণে ভিজ্যুয়াল সারিবদ্ধতা সংরক্ষণ করা যায়:

tab:xy        Two characters to be used to show a tab.  The first
              char is used once.  The second char is repeated to
              fill the space that the tab normally occupies.
              "tab:>-" will show a tab that takes four spaces as
              ">---".  When omitted, a tab is show as ^I.

উপরের উদাহরণটি স্ক্রিনে প্রদর্শিত হবে:

%.o: %.cpp
␉·······g++ -c $<

ব্যক্তিগতভাবে, আমি আমার সাথে সর্বাত্মক listchars:

:set listchars=eol:⏎,tab:␉·,trail:␠,nbsp:⎵

এই অক্ষরগুলি যথেষ্ট স্বতন্ত্র যে এগুলি দস্তাবেজ পাঠ্যে খুব কমই আক্ষরিক অর্থে উপস্থিত হয়।

আপনার মধ্যে এই বিশেষ অক্ষরগুলি vimrcটাইপ করতে , Ctrl-vu23CEসন্নিবেশ মোডে থাকাকালীন টাইপ করুন , যেমনটি বর্ণনা করা হয়েছে :help utf-8-typing


2
আরও দেখুনset lcs=tab:├─
sch

এই শুধু আমাকে দিয়েছে? EOL এ
WendyG

14

ট্যাবগুলি হাইলাইট করা

অস্থায়ী Tabহাইলাইট করা

মাঝে মাঝে ব্যবহারের জন্য, নিম্নলিখিত সন্ধান /কমান্ডটি ব্যবহার করে একটি ডকুমেন্টের সমস্ত ট্যাব হাইলাইট করতে পারে :

/\t

হাইলাইটিংটি সরাতে, কেবলমাত্র টাইপ করুন :nohযা :nohlsearchকোনও উচ্চ আলোকের জন্য সংক্ষিপ্ত ।

স্থায়ী Tabহাইলাইট

" Highlight tabs as errors.
" https://vi.stackexchange.com/a/9353/3168
match Error /\t/

ট্যাব হিটিং করা vim

আরও হাইলাইট করা

এই আরও দরকারী হাইলাইটিং কমান্ডগুলির জন্য - সাদা রঙের স্থান অনুসরণ করে এবং এই স্থায়ী করার জন্য - ভিম উইকি দেখুন


4
আপনি :match Error /\t/অনুসন্ধান রেজিস্টার এবং hlsearch ( :matchএটি সাফ করার জন্য টাইপ করুন) থেকে স্বতন্ত্রভাবে ট্যাবগুলি হাইলাইট করতে (বা সেই বিষয়ে কোনও অন্য প্যাটার্ন) ব্যবহার করতে পারেন ।
মার্টিন টর্নোইজ

1
@ কারপেটসমোকার এই অবাঞ্ছিত স্থানগুলি হাইলাইট করার বিষয়ে ভিম উইকিতে এই দরকারী হাইলাইটিং কমান্ডগুলি (ট্রেলিং হোয়াইটস্পেসের সাথে মিলিত) সহ আরও অনেক কিছু পেতে পারে ।
সার্জ স্ট্রোব্যান্ড ২

9

আমি ব্যক্তিগতভাবে প্লাগইন ইনডেন্টলাইন ব্যবহার পছন্দ করি যা ইনডেন্টেশন স্তরে উল্লম্ব রেখা প্রদর্শন করে।

এটি বিশেষত অজগর, যেখানে প্রসারণ গুরুত্বপূর্ণ the

(উপরের লিঙ্ক থেকে তোলা ছবি)

অন্যান্য জিনিসের মধ্যে এটি একটি টগল কমান্ড সরবরাহ করে, যা একটি মূল সংমিশ্রণে ম্যাপ করা যায়, যাতে আপনার যখন এটির প্রয়োজন হয় না তখন আপনি এটি বন্ধ করতে পারেন।


2
আমি বিশ্বাস করি এই প্লাগইনটি ফাঁকা জায়গাগুলির জন্য ইন্ডেন্টিং করার জন্য নির্মিত?
জ্যাক বাইম্যান

5

আপনি নিয়মিত টার্মিনাল এবং gvim এ ট্যাবগুলি আলাদাভাবে দেখাতে চাইতে পারেন।

set list!
if has('gui_running')
    set listchars=tab:▶\ ,trail:·,extends:\#,nbsp:.
else
    set listchars=tab:>.,trail:.,extends:\#,nbsp:.
endif

(সম্পূর্ণরূপে যোগ করা, যদি অন্যরা এটির কাজে লাগে)।


4

সবচেয়ে সহজ পদ্ধতিটি হ'ল :set list, যা ট্যাবগুলি ^Iএবং লাইনের শেষ হিসাবে প্রদর্শিত হবে $

আমি কল করে এমন ম্যাপিং ব্যবহার করতে চাই

:set invlist 

নিয়মিত প্রদর্শন এবং তালিকা প্রদর্শনের মধ্যে টগল করতে।

উদাহরণ স্বরূপ:

:nmap <leader>l :set invlist<cr>

এটি আমাকে ট্যাব বনাম স্থানের সমস্যা আছে কিনা তা তাড়াতাড়ি পরীক্ষা করার অনুমতি দেয় এবং তারপরে নিয়মিত প্রদর্শনে ফিরে যেতে।

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