মরিচায় লেখা একটি জ্বলজ্বলে দ্রুত, মিনিমালিস্ট ডিরেক্টরি ট্রি ভিউয়ার। একটি শক্তিশালী ইন্টারেক্টিভ মোড সহ কমান্ড লাইন প্রোগ্রাম ট্রি দ্বারা অনুপ্রাণিত।
একটি ইন্টারেক্টিভ ওভারভিউ lstr
প্রকল্পের কাঠামো … ব্যবহার lstr
।
- দ্রুত: আধুনিক হার্ডওয়্যারের গতি সর্বাধিক করে তুলতে ডিফল্টরূপে সমান্তরালে ডিরেক্টরি স্ক্যানগুলি চালায়।
- মিনিমালিস্ট: ব্লাট ছাড়াই প্রয়োজনীয় বৈশিষ্ট্য সরবরাহ করে। মূল অভিজ্ঞতাটি পরিষ্কার এবং নিরবচ্ছিন্ন।
- ইন্টারেক্টিভ: তরল, কীবোর্ড-চালিত অনুসন্ধানের জন্য একটি al চ্ছিক টিউআই মোড।
- উচ্চ-কর্মক্ষমতা: সমান্তরালভাবে ডিরেক্টরিগুলি যত তাড়াতাড়ি সম্ভব স্ক্যান করুন।
- ক্লাসিক এবং ইন্টারেক্টিভ মোড: ব্যবহার
lstr
একটি ক্লাসিক জন্যtree
-র মতো ভিউ বা লঞ্চlstr interactive
সম্পূর্ণ ইন্টারেক্টিভ টিউআইয়ের জন্য। - সমৃদ্ধ তথ্য প্রদর্শন (al চ্ছিক):
- সাথে ফাইল-নির্দিষ্ট আইকন প্রদর্শন করুন
--icons
(একটি নার্ভড ফন্ট প্রয়োজন)। - সাথে ফাইল অনুমতি দেখান
-p
। - সাথে ফাইল আকার দেখান
-s
। - গিট ইন্টিগ্রেশন: ফাইলের স্থিতিগুলি দেখান (
Modified
,New
,Untracked
ইত্যাদি) সরাসরি গাছের সাথে-G
পতাকা।
- সাথে ফাইল-নির্দিষ্ট আইকন প্রদর্শন করুন
- স্মার্ট ফিল্টারিং:
- আপনার শ্রদ্ধা
.gitignore
ফাইল সঙ্গে ফাইল-g
পতাকা। - নিয়ন্ত্রণ পুনরাবৃত্তি গভীরতা (
-L
) বা কেবল ডিরেক্টরি দেখান (-d
)।
- আপনার শ্রদ্ধা
আপনার তৈরি করতে আপনার সিস্টেমে ইনস্টল করা মরিচা সরঞ্জামচেন দরকার lstr
।
- সংগ্রহস্থলটি ক্লোন করুন:
git clone cd lstr
- কার্গো ব্যবহার করে বিল্ড করুন এবং ইনস্টল করুন:
# This compiles in release mode and copies the binary to ~/.cargo/bin cargo install --path .
lstr (OPTIONS) (PATH)
lstr interactive (OPTIONS) (PATH)
নোট যে PATH
বর্তমান ডিরেক্টরিতে ডিফল্ট (.
) নির্দিষ্ট না হলে।
বিকল্প | বর্ণনা |
---|---|
-a , --all | লুকানোগুলি সহ সমস্ত ফাইল এবং ডিরেক্টরি তালিকাভুক্ত করুন। |
--color <WHEN> | রঙিন আউটপুট কখন ব্যবহার করবেন তা নির্দিষ্ট করুন (always , auto , never )। |
-d , --dirs-only | সমস্ত ফাইল উপেক্ষা করে কেবল ডিরেক্টরিগুলি তালিকাভুক্ত করুন। |
-g , --gitignore | শ্রদ্ধা .gitignore এবং অন্যান্য স্ট্যান্ডার্ড ফাইলগুলি উপেক্ষা করুন। |
-G , --git-status | ফাইল এবং ডিরেক্টরিগুলির জন্য গিট স্থিতি দেখান। |
--icons | ফাইল-নির্দিষ্ট আইকন প্রদর্শন; একটি প্রয়োজন একটি নার্ড ফন্ট। |
-L , --level <LEVEL> | নেমে যাওয়ার সর্বাধিক গভীরতা। |
-p , --permissions | ফাইলের অনুমতিগুলি প্রদর্শন করুন (কেবলমাত্র ইউনিক্সের মতো সিস্টেম)। |
-s , --size | ফাইলগুলির আকার প্রদর্শন করুন। |
--expand-level <LEVEL> | কেবল ইন্টারেক্টিভ মোড: ইন্টারেক্টিভ গাছ প্রসারিত করার প্রাথমিক গভীরতা। |
সাথে টিউআই চালু করুন lstr interactive (OPTIONS) (PATH)
।
কী (গুলি) | ক্রিয়া |
---|---|
↑ / k | নির্বাচন সরান। |
↓ / j | নির্বাচন নীচে সরান। |
Enter | প্রসঙ্গ-সচেতন ক্রিয়া: – যদি কোনও ফাইলে থাকে: এটি ডিফল্ট সম্পাদকটিতে খুলুন ( $EDITOR )।– যদি কোনও ডিরেক্টরিতে থাকে: টগল প্রসারিত/ধসে। |
q / Esc | সাধারণত আবেদন ছেড়ে দিন। |
Ctrl +s | শেল ইন্টিগ্রেশন: নির্বাচিত পাথটি স্টাডআউটে প্রিন্ট করে এবং প্রিন্ট করে। |
1। বর্তমান ডিরেক্টরিগুলির বিষয়বস্তু তালিকাভুক্ত করুন
2। গিটিগাইনযুক্ত ফাইলগুলি উপেক্ষা করে ইন্টারেক্টিভভাবে একটি প্রকল্প অন্বেষণ করুন
lstr interactive -g --icons
3। ফাইলের আকার এবং অনুমতি সহ একটি ডিরেক্টরি প্রদর্শন করুন (ক্লাসিক ভিউ)
4 .. একটি প্রকল্পে সমস্ত ফাইলের গিট স্থিতি দেখুন
5 .. প্রদর্শিত সমস্ত ডেটা সহ একটি ইন্টারেক্টিভ সেশন শুরু করুন
lstr interactive -gG --icons -s -p
ক্লাসিক view
মোড পাইপগুলির মাধ্যমে অন্যান্য কমান্ড-লাইন সরঞ্জামগুলির সাথে ভালভাবে কাজ করার জন্য ডিজাইন করা হয়েছে (|
)।
এটি একটি বৃহত প্রকল্পে তাত্ক্ষণিকভাবে কোনও ফাইল খুঁজে পাওয়ার একটি শক্তিশালী উপায়।
fzf
গাছ থেকে নিয়ে যাবে lstr
এবং এটি ফিল্টার করার জন্য একটি ইন্টারেক্টিভ অনুসন্ধান প্রম্পট সরবরাহ করুন।
যদি কোনও ডিরেক্টরিটি একটি স্ক্রিনে ফিট করার জন্য খুব বড় হয় তবে আউটপুটটিকে একটিতে পাইপ করুন পেজার।
# Using less (the -R flag preserves color)
lstr -L 10 | less -R
# Using bat (a modern pager that understands colors)
lstr --icons | bat
আপনি ব্যবহার করতে পারেন lstr
ভিজ্যুয়াল হিসাবে cd
কমান্ড। আপনার শেলের স্টার্টআপ ফাইলে নিম্নলিখিত ফাংশনটি যুক্ত করুন (যেমন, ~/.bashrc
, ~/.zshrc
):
# A function to visually change directories with lstr
lcd()
# Run lstr and capture the selected path into a variable.
# The TUI will draw on stderr, and the final path will be on stdout.
local selected_dir
selected_dir="$(lstr interactive -g --icons)"
# If the user selected a path (and didn't just quit), `cd` into it.
# Check if the selection is a directory.
if (( -n "$selected_dir" && -d "$selected_dir" )); then
cd "$selected_dir"
fi
এটি যুক্ত করার পরে এবং একটি নতুন শেল সেশন শুরু করার পরে (বা চলমান source ~/.bashrc
), আপনি কেবল চালাতে পারেন:
এটি চালু হবে lstr
ইন্টারেক্টিভ ইউআই। আপনি যে ডিরেক্টরি চান তা নেভিগেট করুন, টিপুন Ctrl+s
এবং আপনার শেলের বর্তমান ডিরেক্টরিটি তাত্ক্ষণিকভাবে পরিবর্তিত হবে।
ডিফল্টরূপে, lstr
মাল্টি-কোর সিস্টেমগুলিতে সর্বাধিক গতি সর্বাধিক করতে একটি সমান্তরাল ডিরেক্টরি ওয়াকার ব্যবহার করে। এই সমান্তরালতা দুর্দান্ত দ্বারা পরিচালিত হয় রেয়ন থ্রেড পুল, যা অভ্যন্তরীণভাবে ব্যবহৃত হয় lstr
এর ডিরেক্টরি ট্র্যাভারসাল ইঞ্জিন।
উন্নত ব্যবহারের ক্ষেত্রে যেমন বেঞ্চমার্কিং বা সিপিইউ ব্যবহার সীমাবদ্ধ করার জন্য, আপনি সেট করে থ্রেডের সংখ্যা নিয়ন্ত্রণ করতে পারেন RAYON_NUM_THREADS
কমান্ডটি চালানোর আগে পরিবেশ পরিবর্তনশীল।
একক থ্রেডেড (সিরিয়াল) সম্পাদন জোর করতে:
RAYON_NUM_THREADS=1 lstr .
দর্শন এবং কার্যকারিতা lstr
দুর্দান্ত সি-ভিত্তিক ট্রি কমান্ড লাইন প্রোগ্রাম দ্বারা ভারীভাবে অনুপ্রাণিত হয়। এই প্রকল্পটি আধুনিক, নিরাপদ মরিচাগুলিতে সেই ক্লাসিক ইউটিলিটিটি পুনরায় তৈরি করার একটি প্রচেষ্টা।