আমি এটি সংক্ষিপ্ত এবং প্রচুর হ্যাকিং বা বাহ্যিক স্ক্রিপ্ট ছাড়াই পছন্দ করি। যখন প্রয়োজন হবে আপনি প্রাক্তন (whithin vim) থেকে এই অনেলাইনারটি চালাতে পারেন (বা লগ-ফাইলগুলি খোলার জন্য প্রতিটি কমান্ডটি ভিআইএমআরসিতে রাখুন))
:set autoread | au CursorHold * checktime | call feedkeys("lh")
এবং অতিরিক্তভাবে আপনি :set syntax=logtalk
লগ রঙ করতে পারেন
(যদি আপনি ফাইলটির শেষে প্রায় (প্রায়) ঝাঁপিয়ে পড়তে চান তবে কেবল ফিডকি দিয়ে "lh" এর পরিবর্তে "G" ব্যবহার করুন)
ব্যাখ্যা:
autoread
: বাইরে থেকে পরিবর্তিত হয়ে ফাইলটি পড়ে (তবে এটি নিজে থেকে কাজ করে না, কোনও অভ্যন্তরীণ টাইমার বা এর মতো কিছু নেই It এটি কেবল তখনই পড়বে যখন ভিএম কোনও ক্রিয়া করবে যেমন প্রাক্তন কমান্ডের মতো) :!
CursorHold * checktime
: যখন কার্সার দ্বারা নির্দিষ্ট সময়ের জন্য ব্যবহারকারী দ্বারা সরানো না হয় updatetime
(যা ডিফল্টরূপে 4000 মিলিয়ন সেকেন্ড হয়) checktime
কার্যকর করা হয়, যা ফাইলের বাইরে থেকে পরিবর্তনগুলি পরীক্ষা করে
call feedkeys("lh")
: কার্সারটি একবার, ডান এবং পিছনে বামে সরানো হয়। এবং তারপরে কিছুই ঘটে না (... যার অর্থ, এটি CursorHold
ট্রিগার হয়েছে, যার অর্থ আমাদের একটি লুপ রয়েছে )
ব্যবহার করার সময় স্ক্রোলিং বন্ধ করার জন্য call feedkeys("G")
, এক্সিকিউট করুন :set noautoread
- এখন ভিম বলবে, ফাইলটি পরিবর্তন হয়েছিল উত্তরগুলি জিজ্ঞাসা করুন যে কেউ পরিবর্তনগুলি পড়তে চায় কিনা)
আমি ভিএম-তে (লেজ-এফের পরিবর্তে) লগফিলগুলি দেখার মত ধারণাটি পছন্দ করি, উদাহরণস্বরূপ যখন আপনি স্ক্রিন / tmux ছাড়াই ssh সেশনে কাজ করছেন। অতিরিক্ত হিসাবে আপনি প্রয়োজন হলে সরাসরি লগফিল থেকে অনুলিপি করতে পারেন, বা আউটপুট সরাসরি বাঁচাতে পারেন ... যা আপনি ভিএম দিয়ে করতে পারেন :)
* এই উত্তরটি থেকে ( ফানহাইকিউআংয়ের উত্তর এবং ফ্লুকাসের একটি মন্তব্যে উল্লেখ করা )