ইম্যাকস বা ভিমে "লাইভ * সম্পাদনা ব্লক করুন


9

jEdit ব্লক সম্পাদনা সমর্থন করে, তবে Emacs এবং Vim একই বিষয়টিতে গুরুতর কিছু ব্যবহারযোগ্যতার সমস্যা রয়েছে বলে মনে হচ্ছে। যদি কেউ এখানে অজানা পূরণ করতে পারে তবে যে কোনও সম্পাদককে ব্যবহার করা আরও বেশি বহনযোগ্য:

  • আসল আয়তক্ষেত্রাকার নির্বাচন : স্ক্রিনের নির্বাচন যেখানে একটি আয়তক্ষেত্র, সেখানে রৈখিক নির্বাচন নয় যা এমা্যাকস সীমাবদ্ধ বলে মনে করার পরে কোনও অঞ্চল গণনা করতে ব্যবহৃত হয়।
    • jEdit: চেপে ধরে Ctrlনির্বাচন করুন।
    • ভিম: ক্লিক করুন Ctrl-vএবং নির্বাচন করুন।
    • ইম্যাক্স: অজানা ; 400+ লাইনের প্লাগইনের মতো দেখতে প্রয়োজনীয়।
  • লাইভ আয়তক্ষেত্রাকার সম্পাদনা : ব্লক নির্বাচনের পরে সম্পাদনা করার পরে ফলাফলটি সমস্ত লাইনে কেমন হবে তা দেখুন ।
    • জেডিট: কেবল টাইপ করা শুরু করুন, এবং আপনি যাওয়ার সাথে সাথে শেষ ফলাফলটি দেখতে পাবেন।
    • ভিম: ক্লিক করে Shift-iটাইপ করুন। আপনি Escসন্নিবেশ মোড থেকে প্রস্থান করতে চাপ না দেওয়া পর্যন্ত প্রথম ফলাফলটি কেবল প্রথম লাইনে প্রদর্শিত হবে। অবিলম্বে সমস্ত লাইনে ফলাফল দেখার কোনও উপায় আছে কিনা তা অজানা
    • ইম্যাক্স: অজানা ; মনে হচ্ছে একমাত্র উপায় C-x r tএবং চাপ দেওয়ার পরে পূরণ করতে পাঠ্যটি সেট করা Ret
  • পাঠ্যের বাইরের অবস্থানে নির্বাচন শুরু করুন এবং শেষ করুন : উদাহরণস্বরূপ, আমি প্রতিটি লাইনের এন প্রথম অক্ষর মুছে ফেলতে চাই, তবে প্রথম এবং শেষ লাইনে N অক্ষরের চেয়ে কম থাকে।
  • আটকান ব্লক ইনলাইন : অনুলিপিযুক্ত ব্লকটি আটকে দিন যেমন আপনি একাধিক লাইন আটকে রেখেছেন, ঠিক তেমনভাবে পাঠ্যটি ইতিমধ্যে নীচে টানুন।
    • jEdit: ডিফল্ট। ব্লকটিকে ব্লক হিসাবে আটকানোর জন্য আপনাকে প্রথমে অন্য একটি ব্লক নির্বাচন করতে হবে।
    • তেজ: OEscVp
    • ইম্যাক্স: অজানা

সাধারণ ইমাস ব্লক নির্বাচনের কার্যকারিতা cua-modeপ্লাগইনে পাওয়া যাবে ।


স্পষ্টতই ইমাকস 'কলাম সম্পাদনা মোড কিছু ধরণের সরাসরি আয়তক্ষেত্র সম্পাদনা করতে পারে: youtube.com/watch?v=k-6BVjlBSVo
টম

ইমাসস 400+ লাইন "প্লাগইন" সম্পর্কে কেবল একটি পর্যবেক্ষণ .. জিডিটের জন্য কিছুটা অনুরূপ অ্যাডন, যাকে মাল্টি-এডিট বলা হয় পাইথন কোডের 1000+ লাইন রয়েছে। আমার জন্য, পুগিন এত দরকারী (এটি ছাড়া আমি কীভাবে বেঁচে থাকতে পারি), আকারটি একাডেমিক ... এবং যদি ইমাকগুলি অ্যাভারটাইটিভ হিসাবে কাজ করে তবে আমি এটি ব্যবহার করতে পেরে আরও খুশি হব, তবে আমার একটি লোড ত্রুটি হয়েছে আমি যখন এটি চালিয়েছি "কমান্ড-লাইন-নরমালাইজ-ফাইল-নাম: আরগস অফ সীমার বাইরে:" ", 1" :( ... আমি ঠিক
এরকমই খুঁজছিলাম

4
যারা jEdit ব্যবহার করেন নি তাদের জন্য দয়া করে আপনার পরিভাষাটি ব্যাখ্যা করুন। আমি এখানে "লাইভ" অর্থ কী, "লাইভ আয়তক্ষেত্রাকার সম্পাদনা" কী, বা "পেস্ট ব্লক ইনলাইন" এর অর্থ কী তা আমি বুঝতে পারি না।
গিলস 'অশুভ হওয়া বন্ধ করুন'

উত্তর:


7

আমি ভিমের জন্য উত্তর দিতে পারি, তবে ইমাসকে না।

পাঠ্যের বাইরে অবস্থানগুলিতে নির্বাচন শুরু করুন এবং শেষ করুন:

:set virtualedit=blockআপনি চান আচরণ সক্ষম করবে। আপনি চাইলে প্রাথমিক কোলনটি ফেলে দিতে পারেন এবং আপনার .vimrc এ যুক্ত করতে পারেন you :help 'virtualedit'ভিমের মধ্যে থেকে আরও তথ্যের জন্য ।

ব্লক ইনলাইন পেস্ট করুন:

আপনি যদি কেবল pকমান্ড মোডে আঘাত করেন তবে প্রতিটি লাইনের ডানদিকে অক্ষরগুলি ঠেলা দিয়ে ভিম ব্লকটি সন্নিবেশ করবে। আপনি যদি অন্য একটি ব্লক নির্বাচন করে এবং হিট করেন তবে pভিম সেই ব্লকটি আটকানো ব্লকের সাথে প্রতিস্থাপন করবে।

কমান্ড-মোড কী অনুক্রমের সাহায্যে আপনি একটি ব্লক "লাইনওয়াইজ" পেস্ট করতে পারেন OEscVp। এটি বর্তমান লাইন ( O Esc) এর উপরে একটি লাইন সন্নিবেশ করায় , এটিকে লাইনওয়াইস ( V) নির্বাচন করে , তারপরে এটি আটকে দেয় ( p)। আপনি এটিকে (উদাহরণস্বরূপ) ypম্যাপিংয়ের সাথে সংক্ষিপ্ত করতে পারতেন যেমন :nmap yp O<Esc>Vp- আক্ষরিক টাইপ করুন; <Esc>এস্কেপ কী টিপানোর চেয়ে পাঁচটি কীস্ট্রোক ব্যবহার করুন ।


সম্পর্কে দুর্দান্ত টিপ virtualedit; চেষ্টা করে দেখতে হবে। ইনলাইন পেস্টিং সম্পর্কে, অনুগ্রহ করে কার্যকারিতাটির বিবরণের জন্য দয়া করে আপডেট হওয়া প্রশ্নটি দেখুন।
l0b0

আমি আমার উত্তর আপডেট করেছি একটি পদ্ধতিতে ব্লকগুলি লাইনওয়ালুভাবে পেস্ট করার জন্য।
জান্ডার

5

উদাহরণস্বরূপ, আমি প্রতিটি লাইনের এন প্রথম অক্ষর মুছে ফেলতে চাই, তবে প্রথম এবং শেষ লাইনগুলিতে এন অক্ষর কম থাকে।

ইমাসস: প্রথম লাইনে নির্বাচন শুরু করুন এবং কেবল সর্বশেষ লাইনে অক্ষরগুলির (অনুমানের স্থান) অনুপস্থিত সংখ্যায় যুক্ত করুন এবং তারপরে কিল-আয়তক্ষেত্রটি ব্যবহার করুন

বিকল্পভাবে, দেখুন artist-modeবা picture-modeযা আপনাকে লাইনের দৈর্ঘ্য নির্বিশেষে উইন্ডোতে অবাধে সরানোর অনুমতি দেয় allow

ব্লক ইনলাইন পেস্ট করুন

ইমাকস: প্রথমে কিল-আয়তক্ষেত্রটি বা এটি একটি রেজিস্টারে সংরক্ষণ করে ব্লকটি সংরক্ষণ করুন, তারপরে সন্নিবেশ বিন্দুতে যান, মোছা-আয়তক্ষেত্রটি ব্যবহার করুন এবং তারপরে সংরক্ষিত আয়তক্ষেত্রটি সন্নিবেশ করুন।

400+ লাইনের প্লাগইনের মতো দেখতে প্রয়োজনীয়

ইমাকসের ক্ষেত্রে এটি কেন সমস্যা? একটি প্লাগইন সংকলন করা যায় এবং ইমাস দর্শনের বিষয় হ'ল আপনি সমস্ত কিছু কোরতে রাখেন না, তবে সম্পাদককে প্রসারিত করতে প্লাগইন ব্যবহার করুন।


4

এখানে ' চুয়া -মোড' রয়েছে যা ইমাসেন ২২.১ এবং তারপরে আসে বা ইমাক্সের পূর্ববর্তী সংস্করণগুলির জন্য ডাউনলোড করার জন্য লিঙ্কটি অনুসরণ করুন। কার্যকরীতার পরিচয় দেয় এমন একটি ছোট ভিডিও আছে

সাধারণ আয়তক্ষেত্রের কমান্ডগুলির জন্য, ম্যানুয়ালটি পড়ার চেষ্টা করুন যা একটি সহজ ভূমিকা সরবরাহ করে।


ইমাকস cua-modeভাল লাগছে! +1 .. আপনার উল্লিখিত ভিডিওটি আমি খুঁজে পেলাম না, প্রশ্নের (নীচে?) তথ্য ভিডিওর লিঙ্কের জন্য প্রশ্নের নীচে মন্তব্যে টমের লিঙ্কটি দেখুন ...
পিটার.ও

@ ফিরড উফস, কাট / পেস্ট ত্রুটি, স্থির।
ট্রে জ্যাকসন

0

ভিমে, প্রথম এন অক্ষর মুছে ফেলার সাধারণ উপায়টি হ'ল কিছু করা :%s/.\{0,6\}//

%পুরো নথিটি করবে; আপনি এটি একটি নির্বাচন বা আপনার যত্ন নেওয়া প্রকৃত লাইনগুলির সাথে প্রতিস্থাপন করতে পারেন। sকমান্ড "বিকল্প" জন্য। এটি আপনি যা দেবেন তার সাথে এটি একটি নিয়মিত অভিব্যক্তি প্রতিস্থাপন করবে এবং আপনি যদি কোনও নির্দিষ্ট বিকল্প যুক্ত না করেন তবে এটি প্রতিটি লাইনে একবারেই মিলবে। /একটি বিভেদক - এই কোন চরিত্র হতে পারে, কিন্তু /সাধারণত ব্যবহার করা হয়, যদি না এটা অন্য ব্যবহারের কিছু সুবিধাজনক হয় (যাতে আপনি অব্যাহতি হবে না /কমান্ডের বাকি)। প্রথম ডিলিমিটারের পরে যুক্তিটি একটি নিয়মিত প্রকাশ যা আপনার নির্বাচনের সাথে মিলে যাওয়া স্ট্রিংগুলি সন্ধান করতে ব্যবহৃত হবে। দ্বিতীয় ডিলিমিটারের পরে যুক্তিটি হ'ল ম্যাচটি কী প্রতিস্থাপন করা হবে।

সুতরাং এই আদেশটি বলেছে যে কোনও চরিত্রের 0 থেকে 6 টি দৃষ্টান্ত অনুসন্ধান করুন এবং এগুলিকে কিছুই না দিয়ে প্রতিস্থাপন করুন।


আমি যা চেয়েছিলাম তা নয়।
l0b0

তবে আপনি কি মনে করেন যে এই প্রশ্নটি খুঁজে পাওয়া অন্যদের জন্য এটি কার্যকর নয়? আমি মনে করি এটি হ'ল এবং সে কারণেই আমি এটি এখানে রেখেছি।
শন জে গফ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.