হত্যার আয়তক্ষেত্রটি কিল রিংয়ে কীভাবে অনুলিপি করবেন


11

আমি প্রায়শই কোনও বাফার থেকে পাঠ্যের একটি আয়তক্ষেত্র বের করি তবে তারপরে আমি পাঠ্যটি ইঙ্ক করতে চাই যেন এটি কোনও আয়তক্ষেত্র নয়। কিলের রিংটিতে বর্তমান নিহত আয়তক্ষেত্রটি যুক্ত করার কোনও উপায় আছে কি?

গনুহ গিয়ে Emacs ম্যানুয়াল এই বলে জানিয়েছে:

একটি আয়তক্ষেত্রকে "হত্যা" সাধারণ অর্থে হত্যা করছে না; আয়তক্ষেত্রটি কিল রিংয়ে সংরক্ষিত হয় না, তবে একটি বিশেষ জায়গায় এটি কেবলমাত্র খুন হওয়া আয়তক্ষেত্রটি রেকর্ড করে। এটি কারণ একটি আয়তক্ষেত্রটি ইয়ঙ্কিং লিনিয়ার পাঠ্য থেকে ইয়াঙ্কিং এতই আলাদা যে বিভিন্ন ইয়াঙ্ক কমান্ড ব্যবহার করতে হয়। ইয়াঙ্ক-পপিং আয়তক্ষেত্রগুলির জন্য নির্ধারিত নয়।

তবে আমি মূলত আমার যে আচরণটি চাই তা পেতে পারি

  • M-> বাফার শেষে যান
  • C-x r y ইয়াঙ্ক আয়তক্ষেত্র
  • C-x C-x এক্সচেঞ্জ পয়েন্ট এবং চিহ্ন (নতুন-ইয়াঙ্কড লাইন নির্বাচন করে)
  • C-w নির্বাচন কিল রিং থেকে হত্যা

নিহত আয়তক্ষেত্রটিকে কিল-রিং এন্ট্রিতে রূপ দেওয়ার আরও ভাল উপায় কি নেই?


যুক্ত লিঙ্কযুক্ত সমাধানটি যা আপনি চেয়েছিলেন তা নয়, তবে এটি আপনার পছন্দ মতো আয়তক্ষেত্রগুলি ইয়ঙ্ক করে
jue

উত্তর:


6

যদি আমি আপনার প্রশ্নটি বুঝতে পারি তবে আপনি এটির মতো কিছু খুঁজছেন:

(defun youngfrog/copy-rectangle-to-kill-ring (start end)
  "Saves a rectangle to the normal kill ring. Not suitable for yank-rectangle."
  (interactive "r")
  (let ((lines (extract-rectangle start end)))
    (with-temp-buffer
      (while lines ;; insert-rectangle, but without the unneeded stuff
        ;; (most importantly no push-mark)
        (insert-for-yank (car lines))
        (insert "\n")
        (setq lines (cdr lines)))
      (kill-ring-save (point-min) (point-max)))))

সৌজন্যে এরগোএম্যাকস


3

কিল-রিংয়ে আয়তক্ষেত্রটি রাখার বিষয়ে বিশেষ কী তা নিশ্চিত নন তবে আপনি যদি ইমাসস -৪৪.৪ এ আপগ্রেড করেন তবে আপনি এটি করতে পারেন: C-x SPC .... M-wএকটি আয়তক্ষেত্র নির্বাচন করে এটি কিল-রিংয়ে স্থাপন করতে পারেন। এর পরে সেই C-yআয়তক্ষেত্রটি ইয়েঙ্ক হবে (ঠিক তেমনটিই ছিল C-x r y)।


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

আহ, প্রকৃতপক্ষে, সেই ক্ষেত্রে 24.4 এর নতুন আচরণ সেই অংশটির উন্নতি করে যার বিষয়ে আপনি যত্ন নেন না।
স্টিফান

1

আমি প্রথমে এই সমস্যার অন্তর্নিহিত সমাধানের অভাবে বিরক্ত হয়েছি, তখন বুঝতে পারি একটি বিল্ট-ইন সমাধান রয়েছে: কিল-আয়তক্ষেত্র।

বলুন আপনার মতো পাঠ্য আছে

AAA BBBBBBBBB
AAA BBB
AAA BBBBBBB

তবে এই সি এবং ডি লাইনের মধ্যে যেমন লেখার 'বি' অংশটি অন্য কোথাও চান:

CCCCC
CCC
DDDD
DD

আপনি যদি B আয়তক্ষেত্রটি ( C-x r M-w) অনুলিপি করেন এবং তারপরে প্রথমে 'ডি' এ পয়েন্ট করেন তবে আয়তক্ষেত্রটি পিছনে ( C-x r y) ছাঁটাই করে দিন , আপনি শেষ করবেন

CCCCC
CCC
BBBBBBBBBDDDD
BBB      DD
BBBBBBB  

যেখানে আপনি সত্যিই চেয়েছিলেন

CCCCC
CCC
BBBBBBBBB
BBB
BBBBBBB
DDDD
DD

'বি'র আয়তক্ষেত্রটি অনুলিপি করা এবং এটিকে নতুন স্থানে ইঙ্ক করে দেওয়া স্বাভাবিক বলে মনে হতে পারে তবে এর থেকে আরও ভাল সমাধান হ'ল' এ 'এবং' বি 'রেখাগুলি অনুলিপি করা এবং তাদের' সি 'এবং' এর মধ্যে পুরোপুরি ইঙ্ক করে দেওয়া to ডি 'লাইন।

তারপরে, 'এ'যুক্ত আয়তক্ষেত্রটি চিহ্নিত করুন এবং কাঙ্ক্ষিত ফলাফলের সাথে শেষ করতে ব্যবহার করুন kill-rectangle( C-x r k)।

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