Org- মোড সংখ্যাযুক্ত তালিকায় পাঠ্য প্রান্তিককরণ?


13

প্রশ্ন:org-mode সংখ্যাযুক্ত তালিকায় শূন্যগুলি প্রিপেন্ড করার কোনও উপায় আছে কি ?

সংখ্যাযুক্ত তালিকায় পাঠ্য প্রান্তিককরণটি সংখ্যাগুলি দ্বিগুণ হয়ে গেলে অপ্রীতিকর দেখা শুরু করে:

* A numbered list

  1. Item 1
  2. Item 2
  3. Item 3
  4. Item 4
  5. Item 5
  6. Item 6
  7. Item 7
  8. Item 8
  9. Item 9
  10. Item 10   # ah, my eyes!

org-modeউপর ম্যানুয়াল প্লেইন তালিকা যে:

একই তালিকার সাথে সম্পর্কিত আইটেমগুলির প্রথম লাইনে একই ইনডেন্টেশন থাকতে হবে। বিশেষত, যদি আদেশের তালিকাটি '10। 'নাম্বারে পৌঁছায়, তবে 2 – অঙ্কের সংখ্যাটি অবশ্যই তালিকার অন্যান্য সংখ্যার সাথে বাম-প্রান্তরে লিখতে হবে। পরবর্তী লাইনের আগে একটি আইটেম শেষ হয় যা তার বুলেট / সংখ্যার চেয়ে কম বা সমানভাবে অভিযুক্ত হয়।

সুতরাং দেখে মনে হচ্ছে org-modeবাম-সারিবদ্ধ করার জন্য অঙ্কগুলি দরকার। এরূপ হিসাবে, আমি ভাবছি যে একক-অঙ্কের আইটেমগুলিতে শূন্যগুলি প্রিপেন্ড করা সম্ভব হয় যাতে পাঠ্যটি সুন্দরভাবে সাজায়:

* A zero-padded numbered list

  01. Item 1
  02. Item 2
  03. Item 3
  04. Item 4
  05. Item 5
  06. Item 6
  07. Item 7
  08. Item 8
  09. Item 9
  10. Item 10   # much better!

কৌতূহলের বাইরে আমি একটি তালিকায় শূন্যগুলিতে হাত triedোকানোর চেষ্টা করেছি এবং আঘাত করার চেষ্টা করেছি C-c C-c, যা কেবল তাদের আবার সরিয়ে দেয়।

সুতরাং: সংখ্যাযুক্ত তালিকায় শূন্যগুলি প্রিপেন্ড করার কোনও উপায় আছে org-modeকি?

(দ্রষ্টব্য: এই SO থ্রেড দ্বারা অনুপ্রাণিত প্রশ্ন ।)

উত্তর:


10

নিম্নলিখিত কৌশলগুলি org-list.elকি ভিন্ন!

diff --git a/lisp/org-list.el b/lisp/org-list.el
index b1d47c9..509e79f 100644
--- a/lisp/org-list.el
+++ b/lisp/org-list.el
@@ -1641,7 +1641,8 @@ as returned by `org-list-prevs-alist'."
      ;; Num bullet: increment it.
      ((string-match "[0-9]+" bullet)
       (replace-match
-       (number-to-string (1+ (string-to-number (match-string 0 bullet))))
+       (format (format "%%0%dd" (length (match-string 0 bullet)))
+          (1+ (string-to-number (match-string 0 bullet))))
        nil nil bullet))
      ;; Alpha bullet: increment it.
      ((string-match "[A-Za-z]" bullet)
@@ -1715,7 +1716,7 @@ This function modifies STRUCT."
          (replace-match "a" nil nil bullet))
         ;; First bullet is num: use "1".
         ((string-match "\\([0-9]+\\|[A-Za-z]\\)" bullet)
-         (replace-match "1" nil nil bullet))
+         (replace-match (format (format "%%0%dd" (1+ (log (length struct) 10))) 1) nil nil bullet))
         ;; Not an ordered list: keep bullet.
         (t bullet)))))))))
     (mapc fix-bul (mapcar 'car struct))))

org-list-inc-bullet-maybeপ্রথম আইটেমটিতে প্যাডিং ব্যবহৃত রাখার জন্য প্রথম অংশ প্যাচগুলি কাজ করে। org-list-struct-fix-bulতালিকার উপাদানগুলির সংখ্যার ভিত্তিতে প্যাডিং গণনা করতে দ্বিতীয় অংশ প্যাচগুলি কাজ করে।


2
নিস! আপনি org- মোড বিকাশকারীদের কাছে (অগ্রাধিকারের সাথে এটি টগল করার বিকল্পের সাথে) জমা দিতে পারলে দুর্দান্ত হবে।
— সেন্ট আর্দভার্ক কার্পেটেড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.