দুষ্ট চিহ্নিতকারীদের কীভাবে টিকিয়ে রাখবেন?


10

আমি আমার বাফার স্থানীয় দুষ্ট চিহ্নিতকারীগুলিকে (কোনও স্থান চিহ্নিত করতে মি এবং তারপরে 'বা it এটিতে লাফিয়ে তোলা) ইমাস সেশন / দৃষ্টান্তগুলিতে সংরক্ষণ করতে সক্ষম হতে চাই। আমি কীভাবে এটি করব তা নিশ্চিত নয় not আমি সেশনটি ইনস্টল / ব্যবহার করে এবং এগুলি যুক্ত করার চেষ্টা করেছি:

(add-to-list 'session-locals-include 'evil-markers-alist)

এটি যদিও কাজ করে না, এবং অন্য কী চেষ্টা করবেন তা আমি নিশ্চিত নই। ধন্যবাদ।


ভিম স্বয়ংক্রিয়ভাবে ডিফল্টে বাফার-স্থানীয় চিহ্নিতকারীগুলিকে ডিস্কে সংরক্ষণ করে। অশুভ কাজটি করে না, কারণ এটি ভিমের + ভিমিনফো বৈশিষ্ট্যটি অনুকরণ করে না । আপনি কি এভিল ইস্যু ট্র্যাকারটিতে একটি বৈশিষ্ট্য অনুরোধ জমা দিয়েছেন ? তারা কি সাড়া দিয়েছে?
অবিস্মরণীয়যোগ্য

@ অ্যাঞ্জেলিক_সিডিশন সত্যই, এটি মন্দ সম্পর্কে নয়, এটি ধ্রুবক বাফার-লোকাল-ভেরিয়েবল সম্পর্কে। আধুনিকটি আরও সাধারণ এবং দরকারী এবং আমি উত্তরের প্রতি বেশ আগ্রহী। আমি আপনার প্রশ্নের জন্য একটি ট্যাগ তৈরি করেছি।
পাইথননট

@ পাইথননট আচ্ছা আমি দেখতে পেয়েছি যে সমস্যাটি চিহ্নিতকারীদের (বিশেষত) মনে করে। দু'টো ডেস্কটপ এবং সেশন.এল স্টোর বাফার-মার্কার্স-আলিস্টের জন্য স্থানীয় ভেরিয়েবলগুলি সংরক্ষণ করে, তবে তারা আসল মানটির সাথে মিলে যায় না (108. # <ফাইলআরওয়েতে 54991-তে মার্কারটি বাদ যায়))। আমি অনুমান করতাম এটি হ'ল কারণ তারা কোনও চিহ্নিতকারীকে কীভাবে সংরক্ষণ করতে পারে বা জানে না know
নিখটয়েড

1
2017 সালের মে পর্যন্ত এটি একটি উন্মুক্ত সমস্যা
মিরজান ইরকেগুলভ

উত্তর:


1

আমার সমাধানটি এখানে: আপনার .emacs বা .spacemacs এ কোডটি নীচে রাখুন।

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

  (setq alist (default-value 'evil-markers-alist))
  (evil-add-to-alist 'alist ?E '("/path/to/yourfile" . 1))
  (setq-default evil-markers-alist alist)

  (evil-define-command evil-goto-mark (char &optional noerror)
    "Go to the marker specified by CHAR."
    :keep-visual t
    :repeat nil
    :type exclusive
    (interactive (list (read-char)))
    (let ((marker (evil-get-marker char)))
      (cond
       ((markerp marker)
        (switch-to-buffer (marker-buffer marker))
        (goto-char (marker-position marker)))
       ((numberp marker)
        (goto-char marker))
       ((consp marker)
        (when (or (and (find-buffer-visiting (car marker))
                       (switch-to-buffer (find-buffer-visiting (car marker)) )
                       )
                  (and (y-or-n-p (format "Visit file %s again? "
                                         (car marker)))
                       (find-file (car marker))))
          (goto-char (cdr marker))))
       ((not noerror)
        (user-error "Marker `%c' is not set%s" char
                    (if (evil-global-marker-p char) ""
                      " in this buffer"))))))
  )

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

1

ডেস্কটপ.এল (এখন কমপক্ষে) চিহ্নিতকারীদের সংরক্ষণ / পুনরুদ্ধার সমর্থন করে। (add-to-list 'desktop-locals-to-save 'evil-markers-alist)বা (cl-pushnew 'evil-markers-alist desktop-locals-to-save)আমার জন্য কাজ।

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