আমি কীভাবে ভিমেতে কোড ফোল্ডিং সক্ষম এবং করতে পারি ?
আমার কি কিছু বদলাতে হবে ~/.vimrc
?
আমি z+ aএবং z+ cএবং z+ টাইপ করি oএবং কিছুই ঘটে না।
এখানে ভাঁজ সম্পর্কে একটি নিবন্ধ: ভিমে কোড ফোল্ডিং ।
আমি কীভাবে ভিমেতে কোড ফোল্ডিং সক্ষম এবং করতে পারি ?
আমার কি কিছু বদলাতে হবে ~/.vimrc
?
আমি z+ aএবং z+ cএবং z+ টাইপ করি oএবং কিছুই ঘটে না।
এখানে ভাঁজ সম্পর্কে একটি নিবন্ধ: ভিমে কোড ফোল্ডিং ।
উত্তর:
কোন আপনি আপনি যে পৃষ্ঠাটি আপনার লিঙ্ক থেকে কমান্ড করা হবে না ~/.vimrc
, আপনি শুধু তাদের দেয়ার পর টাইপ করতে পারেন :
মধ্যে vim
কম্যান্ড প্রম্প্ট জন্য।
তবে আপনি যদি লাইনগুলি রাখেন:
set foldmethod=indent
set foldnestmax=10
set nofoldenable
set foldlevel=2
আপনি যে লিঙ্কটি দিয়েছেন তাতে ইঙ্গিত করা হয়েছে, আপনার ~/.vimrc
প্রতিবার যখন আপনি কোনও ফাইলে ফোল্ডিং ব্যবহার করতে চান তখন এগুলি টাইপ করতে হবে না। set nofoldenable
নিশ্চিত করে তোলে যে, যখন খোলার, ফাইল, "স্বাভাবিক" হয় অর্থাত গুটান না।
:
। টাইপ করার set
সময় প্রম্পট পাওয়ার পরে আপনি কমান্ডগুলি টাইপ করেন :
। zc
আপনি টাইপ যখন আপনি অবাধে কার্সার স্থানান্তর করতে পারেন, শুধু মনে হচ্ছে আপনি ব্যবহার করেন zt
টেক্সট কার্সার বর্তমান স্ক্রীনে শীর্ষে রয়েছে জন্য।
ভিমের ডিফল্ট ভাঁজ পদ্ধতিটির manual
অর্থ হ'ল ভাঁজগুলি ম্যানুয়ালি তৈরি করা হয়েছে; অন্যথায়, সেখানে বন্ধ বা ব্যবহার খুলতে হবে তার কোন ধা za, zoঅথবা zcহিসাবে আপনি বর্ণনা করেছেন। কিন্তু, আপনি একটি দ্বারা ভাঁজ তৈরি করতে পারেন zf{motion}
মধ্যে সাধারন মোড অথবা zfমধ্যে ভিসুয়াল মোড; উদাহরণস্বরূপ zfjবর্তমান রেখার জন্য একটি ভাঁজ এবং পরের নরমাল মোডে তৈরি করা হয়।
indent
@ অ্যানথনের গৃহীত উত্তরটি কীভাবে ভাঁজ পদ্ধতিতে সেট করতে হবে তা বর্ণনা করে indent
; অর্থাত ভাঁজ ইন্ডেন্টের স্তর দ্বারা সংজ্ঞায়িত করা হয়।
syntax
আরও সুবিধাজনক উপায়ে, বর্তমান বাফার এর ভাষা বাক্য গঠনের উপর ভিত্তি করে স্বয়ংক্রিয়ভাবে ভাঁজ তৈরি করা যেতে পারে। আপনি একটি প্রোগ্রামিং ভাষা ব্যবহার করে থাকেন, এটা কল দিন এল , আর তোমাদের মধ্যের ভাঁজ সংজ্ঞা আছে এল (যেমন আপনি যা এর ভাঁজ তথ্য তেজ প্লাগইন ইনস্টল করা আছে এল যেমন; সংজ্ঞায়িত করা হয় c.vim সি / সি জন্য ++ বা পাইথন -পাইথনের জন্য মোড ), আপনাকে কেবল এখানে ভাঁজ পদ্ধতি সেট করতে হবে syntax
:
set foldmethod=syntax
এটাই. ভাঁজগুলির সাথে কাজ করার জন্য সবচেয়ে দরকারী কমান্ডগুলি হ'ল:
foldlevel
এক এক দ্বারা বৃদ্ধি ।foldlevel
এক এক করে কমে যায় ।foldlevel
- সমস্ত ভাঁজ খোলা থাকবে।আপনাকে এটি পদ্ধতিগতভাবে ব্যবহার করতে হবে না: আমি সাধারণত মোশন বা বিভাগ দ্বারা ম্যানুয়ালি ভাঁজগুলি নির্বাচন করি। উদাহরণস্বরূপ, অনুচ্ছেদে zfip
ভাঁজ করা এবং পরবর্তী 20 লাইনগুলি ভাঁজ করা zf20j
। za
টগল এবং zd
অপসারণ করতে ব্যবহার করুন ।
এর জন্য আরও কিছু কাজ প্রয়োজন তবে আপনার ভাঁজটি হাতের কাজটি প্রতিফলিত করার অনুমতি দেয়।
আপনি folding
@ অ্যান্টনের উত্তরের মতো বর্তমান সেশনে সক্ষম করতে পারবেন । তবে আপনি যদি এটিকে স্থায়ী করতে চান তবে আপনার অবশ্যই কমপক্ষে এই লাইনটি .vimrc
ভাঁজ কাজে লাগাতে হবে:
set foldmethod=indent
indent
ভাঁজ এক ধরণের, আপনি আরও দেখতে পারেন :help foldmethod
'foldmethod' 'fdm' string (default: "manual")
local to window
{not in Vi}
{not available when compiled without the +folding
feature}
The kind of folding used for the current window. Possible values:
fold-manual manual Folds are created manually.
fold-indent indent Lines with equal indent form a fold.
fold-expr expr 'foldexpr' gives the fold level of a line.
fold-marker marker Markers are used to specify folds.
fold-syntax syntax Syntax highlighting items specify folds.
fold-diff diff Fold text that is not changed.
এখন, আপনি যখনই কোনও ফাইল খোলেন vim
, আপনি যে পদ্ধতিটি সেট করেছিলেন তার দ্বারা কোডটি ভাঁজ হয়ে যায়। তারপর আপনি ব্যবহার করতে পারেন za
, zc
, zo
।