(টার্মিনাল ভিত্তিক) ভিমে মেনু তৈরি এবং ব্যবহার করা সম্ভব?


18

আমি মূলত উইন্ডোজ ভিত্তিক একটি সংস্থায় ডেভেলপারদের জন্য ভার্চুয়ালাইজড লিনাক্স বাক্সগুলি (স্থানীয় উন্নয়ন সার্ভার হিসাবে) স্থাপন করছি এবং কিছু বিকাশকারী ভিএম (অন্যান্য বিষয়গুলির মধ্যে) সম্পর্কে নেতিবাচক ফাটল তৈরি করে। (তাদের কাছে মনে হয় কোনও উপায়ে লিনাক্স / ইউনিক্সের প্রতিনিধিত্ব করা, এবং প্রমাণ করা যে পরিবেশটি ব্যবহার করা নিবিড়ভাবে কঠিন। বক্ররেখা শেখার, তাই আমি কিছুটা সহানুভূতিশীল। আমার কাছে এটা ঘটেছিল যে, তাদের সাথে পরিচয় করিয়ে দেওয়ার পরিবর্তে nano(যা তারা সম্ভবত কখনই অতীত হবে না) রূপান্তরটি আরও সহজ করার জন্য ভিএম-তে ন্যানোর মতো মেনু স্থাপন করা সম্ভব হতে পারে। (এগুলি দেওয়ার জন্য আমি একটি খুব প্রাথমিক-বান্ধব। ভিমিরসি ফাইল পেয়েছি, তবে এতে ন্যানো-স্টাইলের মেনুগুলির মতো কিছু নেই))

কেবলমাত্র একমাত্র সমস্যাটি আমি খুঁজে পেতে সক্ষম হয়েছি যে দাবি করা সম্ভব হয়েছে ভিমে মেনু সেটআপ করা সম্ভব (জিভিআইএম নয়) কাজ করে না, এবং সমস্যাটি সংশোধন করার আমার প্রচেষ্টা আমাকে আরও একটি সমস্যার সমাধান করতে দিয়েছিল। আমি প্রচুর সময় নষ্ট করার আগে আমি জানতে পারি এটি আসলে সম্ভব কিনা, কারণ এটি কীভাবে করা যায় সে সম্পর্কে খুব কম তথ্য আছে বলে মনে হয়।


3
এখন এই তেজ সাহায্যের রয়েছে: :h console-menus
আলেক্সি

@ অ্যালেক্সা: ধন্যবাদ! এটি জানার জন্য খুব সহায়ক ... আমি যদি "5.2 নতুন মেনু তৈরি করা" বিভাগে স্ক্রল করে দেখি তবে মনে হয় এটি আমার যা ইচ্ছা তা করবে।
আইকনোক্লাস্ট

উত্তর:


18

হ্যা এটা সম্ভব. আপনি লোড করতে পারেন menu.vim(ডিফল্ট gvim মেনু সংজ্ঞা), বা আপনি কেবল স্ক্র্যাচ থেকে শুরু করে নিজের তৈরি করতে পারেন, তারপরে এগুলি অ্যাক্সেস করুন :emenu। যদিও এটি আপনাকে ন্যানোর মতো সর্বদা দৃশ্যমান মেনু দেয় না; এটি আপনাকে কমান্ড-লাইন ট্যাব সমাপ্তি ব্যবহার করে মেনু নেভিগেট করার ক্ষমতা দেয়।

যদি ব্যবহারকারীর কাছে একটি ভিআমআরসি না থাকে, আপনি ভিআই সামঞ্জস্যতা অক্ষম করে শুরু করতে চান:

:set nocompatible

স্মার্ট কমান্ড লাইন সমাপ্তি সক্ষম করুন <Tab>(সক্রিয় সব সম্ভব পছন্দ তালিকা, এবং ফলাফল নেভিগেট <Up>, <Down>, <Left>, <Right>, এবং <Enter>):

:set wildmenu

সমস্ত মিলে যাওয়া পছন্দগুলির মধ্যে বারবার প্রেসগুলি চক্র করুন:

:set wildmode=full

ডিফল্ট মেনুগুলি লোড করুন (এটি gvim এ স্বয়ংক্রিয়ভাবে ঘটবে, তবে টার্মিনাল ভিমে নয়):

:source $VIMRUNTIME/menu.vim

এই চারটি কমান্ডের পরে, আপনি :emenuকমান্ডটিতে ট্যাব সমাপ্তির অনুরোধ করে ম্যানুয়ালি মেনু সমাপ্তিকে ট্রিগার করতে পারেন:emenu<space><tab>

আপনি ট্যাব কী এবং অ্যারো কীগুলি এবং প্রবেশ কীটি ব্যবহার করে ফলাফল নেভিগেট করতে পারেন (এটি উভয়ই সাবমেনাস প্রসারিত করে আইটেম নির্বাচন করে)। তারপরে আপনি আরও একধাপ এগিয়ে গিয়ে ম্যাপিংকে :emenuপ্রতিটি বার টাইপ না করে মেনুটি পপআপ করে আবদ্ধ করে আরও সুবিধাজনক করে তুলতে পারেন :

<Tab>কমান্ড লাইনে ইন্টারেক্টিভভাবে টিপানোর মতো ম্যাপিং অ্যাক্টে সিটিআরএল-জেড করুন :

:set wildcharm=<C-Z>

এবং এমন একটি বাঁধাই তৈরি করুন যা স্বয়ংক্রিয়ভাবে :emenuআপনার জন্য সমাপ্তির আহ্বান জানায় :

:map <F4> :emenu <C-Z>

2
উজ্জ্বল! আমাকে জানাতে আমি কীভাবে আপনাকে বিয়ার কিনতে পারি!
আইকনোক্লাস্ট

2

আমার নিজেই সমস্যা হয়েছে যে আমি যে প্লাগইনগুলি ব্যবহার করছি তার জন্য সমস্ত কমান্ড এবং কী সংমিশ্রণগুলি মনে করতে পারি না। এছাড়াও, আমি নতুন কী ম্যাপিংস সেট না করে বা অ্যাক্সেসের জন্য কমান্ড উদ্ভাবন না করে দ্রুত কমান্ডগুলি কার্যকর করার সহজ উপায়গুলি চাইতাম।

Vim-ভেনু

আমি একটি ছোট ভিএম মেনু প্লাগইন লিখেছি যা আপনাকে প্রতিটি ফাইল টাইপের মেনু সংজ্ঞায়িত করতে দেয় যা আপনি ভিআইএম দিয়ে সম্পাদনা করতে পারেন। এইভাবে, আপনি বিভিন্ন ফাইল টাইপের জন্য মেনু বিকল্প 'সংকলন' সংজ্ঞায়িত করতে পারেন এবং আপনি কোন ফাইলটি সম্পাদনা করছেন তার উপর নির্ভর করে কোডটি সংকলনের জন্য সঠিক নির্দেশাবলী শুরু করতে পারেন (.py, .c, .c ++, ...)। অথবা মার্কডাউন ফাইলটিতে 'টেবিল' প্লাগইন কমান্ডের জন্য একটি সাবমেনু তৈরি করুন।

এটি এখানে দেখুন: https://github.com/Timoses/vim-venu

পার্শ্ব নোট হিসাবে: আমি মনে করি প্রত্যেকের নিজের পছন্দসই পাঠ্য সম্পাদক নির্বাচন করা উচিত। ভিমের কিছুটা বাধা আছে (যা শেখার পক্ষে মূল্যবান!)। যদি কেউ শিখতে রাজি না হয় তবে ভিম সেই ব্যক্তির পক্ষে খুব বেশি কাজে আসবে না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.