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.