ইমাসে সমস্ত সংকলন ত্রুটি হাইলাইট করা


1

ইমাক্সে সমস্ত সংকলন ত্রুটিগুলি বিশেষত হ্যাসেল-মোডে হাইলাইট করার জন্য কি কোনও ভাল উপায় আছে?

ফাংশন next-error( C-x `) কেবলমাত্র একটি ত্রুটি হাইলাইট করে, তবে এটি match-dataত্রুটিটিতে সেট করে না , অন্তত এর haskell-modeসাথে haskell-interactive-mode-next-error। এমনকি কম সহায়কভাবে, এটি (error "No more errors")শেষ ত্রুটিতে কল করে, তাই আমি মনে করি এটি কেবল ইন্টারেক্টিভভাবে বলা হবে।

প্রতিটি সংকলনের ত্রুটিতে হাইলাইট ওভারলেগুলি তৈরি করার জন্য আমি নিম্নলিখিতটি করেছি, তবে এটি সত্যিই আটকানো এবং অবিশ্বস্ত। next-error-functionসংকলন মোড ( haskell-interaction-modeআমার ক্ষেত্রে) দ্বারা সংজ্ঞায়িত বলে মনে করা হয় ; রিটার্নে ম্যাচ-ডেটা কিছু স্ট্রিংয়ের দিকে নির্দেশ করে। আমি compilation-highlight-overlayপরবর্তীটি ত্রুটি তৈরি করে ওভারলেটি পেতে ভেরিয়েবলটি ব্যবহার করি ।

(let (buf (just-started t) errors overlays)
     ;; Ask next-error to create all the highlighting overlays, save
     ;; their locations, then delete them, use the locations to
     ;; create our own overlays.
     (ignore-errors
       (when (setq buf (next-error-find-buffer))
         (save-match-data
           (save-excursion
             (dotimes (max-iter 10)
               (with-current-buffer buf
                 (funcall next-error-function 1 just-started)
                 (setq just-started nil)
                 (let* ((o compilation-highlight-overlay)
                        (start (overlay-start o)) (end (overlay-end o)))
                   ;; (message "Found (%s,%s)" start end)
                   (push (cons start end) errors)
                   (push o overlays))))))))
     (mapc 'delete-overlay overlays)
     (dolist (err errors)
       (let ((o (make-overlay (car err) (cdr err))))
         (overlay-put o 'category 'error-highlight))))

এটি করার কোনও প্রকার প্রৌ ?় উপায় আছে?

উত্তর:


1

next-error-functionসমস্ত ত্রুটিগুলি খুঁজে পেতে শোষণ করা খুব কঠিন , কারণ এটি অত্যন্ত আবশ্যক ফ্যাশনে প্রয়োগ করা হয়।

আমি একটি ছোট প্রকল্প শুরু করেছি complation-highlight-elযা আমাদের একই সাথে একাধিক ত্রুটি দেখতে সক্ষম করে।

https://github.com/m2ym/compilation-highlight-el

এখনও পরীক্ষামূলক পর্যায়ে, সমস্যা জমা দিতে নির্দ্বিধায়।

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