কোনও ফাইলের নাম না দেওয়া হলে আমি কীভাবে ভিমকে ডিফল্ট ফাইল নাম ব্যবহার করব?


17

আমি খুব কমই, যদি কখনও থাকি তবে কেবল vimফাইল নাম ছাড়াই খোলাম। প্রায়শই যথেষ্ট, আমি কিছু দ্রুত পরীক্ষা করতে চাই, সাধারণত একটি দ্রুত নিক্ষিপ্ত স্ক্রিপ্ট এবং আমি সাধারণত তাদের নাম রাখি test.sh(বা এর কিছু বৈকল্পিক, যেমন test.py)। আমি যদি কোনও ফাইল নাম ছাড়াই দৌড়ে যাই তবে আমি কি কোনও ফাইলের নাম vimধরে রাখতে পারি ? আমি সাধারণত (যেমন alias লেখা ব্যবহার করতে চাই জন্য এবং জন্য , অথবা পুরো যেতে ), কিন্তু আমি ভাবছি সেখানে ভিতর থেকে কোন রাস্তা আছে কিনা । এটি আরও ভাল হবে যদি আমি এটি নির্দিষ্ট ডিরেক্টরিগুলিতে , বা যেমনতে সীমাবদ্ধ রাখতে পারি ।test.shvimvimsvim test.shvimpvim test.py:w test.shvim/tmp~/dev

উত্তর:


10

এটি আপনার .vimrc এর শেষে রাখার চেষ্টা করুন (যথাযথ হিসাবে সংশোধন করুন)

if @% == "" && getcwd() == "/tmp"
    :silent edit test.sh
endif

বর্তমান ফাইলের নামটি খালি আছে কিনা তা পরীক্ষা করে ( @%বর্তমান ফাইলের নাম উল্লেখ করে), এবং ভিমের বর্তমান ডিরেক্টরি কিনা তা পরীক্ষা করে /tmp। আপনি যেমন অন্যান্য ডিরেক্টরি যোগ করতে পারে

(getcwd() == "/tmp" || getcwd() == "~/dev")

এরপরে এটি নিরবে পরীক্ষার সম্পাদনা করে। যদি ফাইলটি ইতিমধ্যে বিদ্যমান থাকে তবে এটি এটি লোড করবে। অন্যথায়, আপনি সেই নামটি দিয়ে একটি নতুন বাফার শুরু করবেন এবং আপনি এটি লিখলে ফাইলটি তৈরি হবে।

প্রারম্ভকালে নিম্নলিখিত বার্তাগুলি দমন করতে আমি চুপ করেছিলাম:

"test.sh" [New File]
Press ENTER or type command to continue

5

জন এর উত্তর একটি পরিবর্তন দরকারী হতে পারে:

if @% == "" && getcwd() == "/tmp"
    :silent edit `=glob("test\.*", 1, 1)[0]`
endif

এটি প্রথম ফাইলটি শুরু হয় যা দিয়ে শুরু হয় test.

কেবলমাত্র প্রথম ফাইলের পরিবর্তে, আপনি যদি অন্য মিলে যাওয়া ফাইলগুলিও খুলতে চান তবে করুন:

if @% == "" && getcwd() == "/tmp"
    for i in glob("test\.*", 1, 1)
        :silent edit `=i`
    endfor
endif
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.