আমি কি বিরামচিহ্নগুলিকে অতীত ফিল-কলাম চালানোর অনুমতি দিতে পারি?


12

টাইপোগ্রাফিতে, 'প্রোট্রিউশন' (বা ঝুলন্ত বিরামচিহ্ন ) নামে একটি অনুশীলন রয়েছে যা নির্দিষ্ট চিহ্নগুলিকে মার্জিনের শেষটি আটকে রাখতে দেয়:

প্রসারক

আমি আমার পাঠ্য নথির জন্য একই জিনিস করতে চাই।

অনুচ্ছেদে ভরাট হলে আমি কি fill-paragraph(এবং বন্ধুরা?) অবধি-অফ-লাইন বিরামচিহ্ন ( .?!:;,'"-) টি উপেক্ষা করতে পারি ?


আমি নিশ্চিত নই যে আপনি যখন হার্ড-মোড়ানো পাঠ্যকে (যা প্রভাবটিকে মূলত অদৃশ্য করে তোলে, তখন ডিফল্টরূপে পাঠ্যকে ন্যায়সঙ্গত করে না) যখন যথাযথ পাঠ্যকে যথাযথ পাঠ্যের তুলনামূলক ন্যায্য পাঠ্যের প্রোট্রিউশন (ট্রেলিং বিরামচিহ্নের সূক্ষ্ম স্থানান্তর) বলতে পারেন কিনা not সম্ভবত আপনি যুক্ত করতে চান এটির ন্যায়সঙ্গত বৈকল্পিকের জন্য এটি প্রযোজ্য fill-paragraph?
wasamasa

বাম পাঠ্য ব্লক ফ্লাশের জন্য ওয়াসামাসা প্রোট্রিউশন এখনও বিদ্যমান।
শান অলরেড

এটি কি তখন লেখার বাম প্রান্তে প্রযোজ্য?
wasamasa

@ ওয়াসামাসা যদি না আপনি আরটিএল ভাষা এবং সম্পাদক (যা সমর্থিত হলেও আমি মনে করি না যে এই সুযোগটি বহির্ভূত) রয়েছে, তা বোঝা যায় না। আপনার যদি ডানদিকে একটি ফ্লাশ ডান ব্লক থাকে এবং আপনার বাম মার্জিনে (যেমন, কলাম 0) 'ঘরছাড়া হয়ে যায়', আপনি ঠিক কলাম -1 এ বিরামচিহ্ন রাখতে পারবেন না। (আমি মনে করি আপনি ডান মার্জিনটি (1+ পূরণ-কলাম) এ স্থানান্তর করতে পারেন, তবে এটি ফিলিং পরিবর্তন করবে এবং আপনি একটি লুপে আটকে যেতে পারেন))
সান অলরেড

1
@ ওসামাসা বাস্তবায়নের ক্ষেত্রে: পরিপূর্ণ নয়। পূর্ণ-কলামে লাফ দিন। যদি বিন্দু বিরামচিহ্নের একটি একক চরিত্রের দিকে তাকিয়ে থাকে এবং তারপরে শ্বেত স্পেস হয়, এগিয়ে যান। অন্যথায় যদি কোনও শব্দের মাঝামাঝি হয়, পিছনে যান। নতুন লাইন, পুনরাবৃত্তি।
শন অলরেড 18

উত্তর:


2

আহা, আমার সমাধান আছে! এটি আপনার .emacs/ .emacs.d/init.elফাইলে কোথাও রাখুন :

(define-advice current-fill-column (:filter-return (rtn) protrusion)
  "Advice to allow hanging punctuation when filling text."
  ;; Get the character after the proposed cutoff point
  (let ((end-char (char-after (1+ rtn))))
    (if (and end-char
             ;; Check if character is in the “punctuation” syntax table…
             (or (eq (char-syntax end-char) ?.)
                 ;; …or is any of these characters (feel free to add more)
                 (memq end-char (string-to-list ".,!?;:-"))))
        ;; If so, return the original value, plus one.
        (1+ rtn)
      ;; Otherwise, do nothing and return the original value.
      rtn)))

আমি এটি দিয়ে পরীক্ষা করেছি fill-paragraphএবং এটি সমস্ত ফিল ফাংশনগুলির জন্য কাজ করা উচিত (যেহেতু তারা current-fill-columnপ্রতিটি লাইন প্রক্রিয়াকরণের সময় ব্যবহার করে )। আশা করি তুমি পছন্দ করেছ! 😇

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