আমি ভিমকে মিস করি এমন একটি প্রধান বৈশিষ্ট্য হ'ল এটি সর্বদা বর্তমান ফাইলের ফাইলের নাম %
বাফারে সংরক্ষণ করে ( আরও তথ্য )। এটি সহজেই কমান্ডগুলি চালু করার অনুমতি দেয়:
;; compile current file
:! gcc %
;; source current file (useful when I'm editing .vimrc
:source %
;; get the size of current file
:! du -sh %
;; etc, etc...
আমার অনুরূপ কার্যকারিতা থাকতে হবে emacs
(সংস্করণ 24, যদি এতে কোনও পার্থক্য হয়), বর্তমান বাফারে খোলা ফাইলটির নাম সন্নিবেশ করার একটি সহজ উপায় আছে।
আমি কী করতে চাই তার উদাহরণ
আমি যখন কিছু শর্টকাটের প্রয়োজনীয়তা অনুভব করি তখন আরও ভাল ব্যাখ্যা করার জন্য আমি কিছু বেসিক ব্যবহারের ক্ষেত্রে বর্ণনা করি
M-x compile
সংকলন : আমি যখন ইমাস প্রবেশ করি তখন আমাকে একটি কমপাইল কমান্ড জিজ্ঞেস করে। আমিgcc (current-buffer)
সহজে প্রবেশ করতে চাই ।লোড-ফাইল: আমি যখন আমার .emacs ফাইল সম্পাদনা করছি, পরিবর্তনগুলি পরীক্ষা করতে আমি এখনই এটি লোড করতে চাই। আমি যেভাবে এটি করি তা হ'ল
M-x load-file
এবং তারপরে আমি সর্বদা নামটি বানান করি . e m a c s। আমি একটি শর্টকাট চাইবাহ্যিক প্রক্রিয়াগুলি চালু করুন: আমি
du -sh
উদাহরণ হিসাবে দিয়েছিলাম , কেবলমাত্র তা বোঝানোর জন্য যে আমি শেল কমান্ডগুলি কার্যকর করার সাথে সাথে শর্টকাটটিও উপস্থিত থাকতে চাই withM-!
এতক্ষণ যা পেলাম
- এই প্রশ্নটি এখানে U&L এ। প্রদত্ত উত্তরগুলি মূলত বাফারের ফাইলের নাম কোথায় পাওয়া যায় তা দেখানো হচ্ছে যাতে কেউ এটিকে হত্যা-রিংয়ে যুক্ত করতে পারে। এটি ঠিক আমি যা খুঁজছি তা নয়, আমি ফাইলের নামটি ব্যবহার করতে চাইবার আগে ম্যানুয়ালি মেরে ফেলতে চাই না। (এছাড়াও উভয় উত্তরে বর্ণিত সমাধানগুলি আমার ইম্যাকগুলিতে সহজেই কাজ করবে বলে মনে হয় না এবং এগুলি কিছুটা ব্যথা করে তোলে এমন অতিরিক্ত কীস্ট্রোকের প্রয়োজন হয়)।
সম্পাদনা : কিছুটা অপ্রাসঙ্গিক, আমি এই সমাধানগুলি কেন কাজ করে না তা জানতে পেরেছিলাম। আমি আইডিও সক্ষম করেছি, আরও খারাপ বা খারাপ জন্য।
(current-buffer)
ফাংশন ম্যানুয়াল বর্ণিত বর্তমান বাফারে ফাইলের নাম আসতে না, কিন্তু কোথাও না উদাহরণ আমি উপরে দিয়েছেন, আমি elisp কোড মূল্যায়নের করছি। একটি (মিনি) বাফারে এই ফাংশনটির মূল্যায়নের ফলাফল andোকানোর এবং এইভাবে একটি শর্টকাটে বাঁধাই করার কোনও উপায় আছে?
আমি কি এইভাবে ভাবতে ভুল করছি?
আমি ভিম ব্যবহার করার কয়েক বছর পরে বর্তমানে ইম্যাকগুলি ব্যবহার করতে শিখছি (এটি আসলে কয়েক মাস হয়ে গেছে)। আমি প্রাক-ইম-ইন-এ-ভিম-ওয়ে ট্র্যাপ ব্যবহারের পূর্বাভাস এড়াতে চাই । আপনি যদি মনে করেন যে আমি যা চাইছি তা খুব ইম্যাক্স-ওয়াই নয় এবং এটি করার আরও ভাল (ক্লিনার?) উপায় থাকা উচিত, দয়া করে আপনার উত্তরে এটি উল্লেখ করুন।
(buffer-file-name)
মিনিবাসে টাইপ করার সময় দৌড়াতে থাকেন তবে আপনি পাবেন nil
, কারণ (current-buffer)
এটি মিনিবাফার। আপনি মিনিবাফারে থাকাকালীন বাফারগুলিও স্যুইচ করতে পারেন, সুতরাং বর্তমান বাফারটি আপনি যে সময়টি বাফারকে ইমফ্যাকস দেখেন ততক্ষণে আপনি কী মনে করেন তা ট্র্যাক করা মুশকিল।
(global-set-key (kbd "C-i") buffer-file-name)
আপনি এটি Ctrl + I করতে চাইলে রাখুন। .Emacs সম্পর্কে,M-x load-file RET
আপনি যা চান তা করে; আপনার কিছু লেখার দরকার নেই।