আমি কিভাবে সাম্প্রতিক ত্রুটি grep বা কম্পাইল উইন্ডো সাম্প্রতিক

Grep বা সংকলন উইন্ডোতে পরবর্তী-ত্রুটি এ, আমি এমন কিছু ব্যবহার করতে পারি

(setq next-error-recenter 35)

এই স্ট্যাকওভারফ্লো প্রশ্ন

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

5
আপনি সংকলন-গোটো-লোকেস এ দেখতে চান এবং যথাযথ যেখানে সাম্প্রতিক কমান্ডটি রাখতে চান - মন্তব্যের সাথে শুরু হওয়া বিভাগে: সংকলন বাফার উইন্ডো নির্বাচন করা হয়েছে। । । , আপনি উইন্ডোটির বিভিন্ন অবস্থানে সাম্প্রতিকতম হতে পারেন - সাম্প্রতিক এর জন্য ডক-স্ট্রিংটি দেখুন।
যোগ লেখক lawlist, উৎস

1 উত্তর

সংকলন/grep বাফারের বিন্দু অবস্থানের সঠিক সংরক্ষণের জন্য আমি এই ধরনের কার্যকারিতা ব্যবহার করি:

(defun eab/compile-goto-error ()
  (interactive)
  (let ((istc? truncate-lines))
    (toggle-truncate-lines t)
    (let ((buf (current-buffer))
          (line (- (count-lines (window-start) (point))
                   (if (eq (point) (point-at-bol)) 0 1)))
          (point (point)))
      (compile-goto-error)
      (run-with-timer 0.01 nil `(lambda ()
                                 (let ((cb (current-buffer)))
                                       (pop-to-buffer ,buf)
                                       (recenter ,line)
                                       (goto-char ,point)
                                       (toggle-truncate-lines ,istc?)
                                       (pop-to-buffer cb)))))))

যদি আপনি সংকলন/grep বাফারের বিন্দু এর সাধারণ কেন্দ্রীকরণ চান তবে ব্যবহার করুন:

(defun eab/next-error ()
  (interactive)
  (let ((buf (current-buffer)))
    (next-error)
    (run-with-timer 0.01 nil `(lambda ()
                             (let ((cb (current-buffer)))
                               (pop-to-buffer ,buf)
                               (recenter)
                               (pop-to-buffer cb))))))

আপনি প্রথম উদাহরণে কম্পাইল-গোটা-ত্রুটি এর পরিবর্তে পরবর্তী-ত্রুটি ব্যবহার করতে পারেন।

Upd। Emacs 25.1 অ-শূন্য সময়কাল জন্য প্রয়োজন বোধ করা হয়।

1
যোগ