আমারও একই সমস্যা ছিল। আমি হাইফেন্যাট প্লাস নিম্নলিখিত ম্যাক্রো ব্যবহার করি :
\RequirePackage{hyphenat}
\RequirePackage{expl3}
% The following defs make sure words that contain an explicit `-` (hyphen) are still hyphenated the normal way, and double- and triple hyphens keep working the way they should. Just don't use a `-` as the last token of your document. Also note that `-` is now a macro that is not fully expandable
\ExplSyntaxOn
% latex2e doesn't like commands starting with 'end', apparently expl3 doesn't have any problems with it
\cs_new:Npn \hyphenfix_emdash:c {---}
\cs_new:Npn \hyphenfix_endash:c {--}
\cs_new:Npn \hyphenfix_discardnext:NN #1#2{#1}
\catcode`\-=\active
\cs_new_protected:Npn -{
\futurelet\hyphenfix_nexttok\hyphenfix_i:w
}
\cs_new:Npn \hyphenfix_i:w {
\cs_if_eq:NNTF{\hyphenfix_nexttok}{-}{
%discard the next `-` token
\hyphenfix_discardnext:NN{\futurelet\hyphenfix_nexttok\hyphenfix_ii:w}
}{
% from package hyphenat
\hyp
}
}
\cs_new:Npn \hyphenfix_ii:w {
\cs_if_eq:NNTF{\hyphenfix_nexttok}{-}{
\hyphenfix_discardnext:NN{\hyphenfix_emdash:c}
}{
\hyphenfix_endash:c
}
}
\ExplSyntaxOff
মনে রাখবেন যে এটি লেটেক্স 3 থেকে এক্সপ্লেল 3 প্যাকেজটি ব্যবহার করে।
এটি এমন -
একটি সক্রিয় চরিত্র তৈরি করে যা আরও ড্যাশ অনুসরণ করে তা অনুসরণ করার জন্য স্ক্যান করে স্ক্যান করে। যদি তাই হয়, এটি একটি থাকে -
, তা নিশ্চিত করার জন্য --
এবং ---
কাজ করা চালিয়ে। যদি তা না হয় তবে এটি \hyp
হাইফেন্যাট থেকে কমান্ড হয়ে যায় , শব্দটির বাকী অংশে শব্দ ভেঙে সক্ষম করে। এটি একটি জেনেরিক সমাধান যা স্পষ্টভাবে হাইফেন হাইফেনেট সহ সমস্ত শব্দকে সাধারণত করে তোলে।
নোট করুন যে -
একটি ম্যাক্রো হয়ে গেছে যা পুরোপুরি প্রসারণযোগ্য নয়, সুতরাং অন্য প্যাকেজগুলি লোড করার পরে এটি অন্তর্ভুক্ত করার চেষ্টা করুন যা -
ম্যাক্রো হওয়ার আশা করে না
সম্পাদনা: এটি আমার দ্বিতীয় সংস্করণ, যখন হাইফেনটি অনুসরণ {
বা }
অনুসরণ করা হয়েছিল তখন প্রথম সংস্করণটি কম শক্ত ছিল । এটি এক নয়, তবে প্রথম সংস্করণটির বিপরীতে -
এই সংস্করণটির পুরোপুরি প্রসারণযোগ্য নয়।