الحصول على Emacs ملء الفقرة للعب لطيفة مع جافادوك-مثل تعليقات

StackOverflow https://stackoverflow.com/questions/71788

  •  09-06-2019
  •  | 
  •  

سؤال

انا اكتب Emacs الرئيسية وضع APL لهجة تستخدم في العمل.لقد حصلت الأساسية قفل الخط إلى العمل بعد وضع التعليق في البدء ، التعليق-بداية-تخطي تعليق/uncomment المنطقة وملء الفقرة أيضا العمل.

ومع ذلك, تعليق كتل غالبا ما تحتوي على جافادوك نمط التعليقات و أنا أود ملء الفقرة لتجنب التغرية معا خطوط الانطلاق مع مثل هذه الأوامر.

إذا كان لدي هذا (\ بدلا من جافادوك @):

# This is a comment that is long and should be wrapped.
# \arg Description of argument
# \ret Description of return value

م-س يعطيني:

# This is a comment that is long and
# should be wrapped. \arg Description
# of argument \ret Description of
# return value

ولكن أريد:

# This is a comment that is long and
# should be wrapped.
# \arg Description of argument
# \ret Description of return value

لقد حاولت وضع الفقرة-بداية الفقرة-منفصلة القيم المناسبة ، ولكن ملء الفقرة لا يزال لا يعمل داخل تعليق كتلة.إذا قمت بإزالة التعليق علامات ، م-س يعمل كما أريد لذا regexp تستخدم الفقرة بدء ويبدو أن العمل.

هل يجب أن أكتب مخصص ملء الفقرة لبلدي الرئيسية الوضع ؟ cc-وضع واحد أن يعالج مثل هذه الحالات, لكنه حقا مجمع أود أن تجنب ذلك إذا كان ذلك ممكنا.

هل كانت مفيدة؟

المحلول

المشكلة أن الفقرة بدء regexp يجب أن تتطابق مع خط كامل من العمل ، بما في ذلك الفعلية التعليق حرف.التالية elisp يعمل المثال أعطى:

(setq paragraph-start "^\\s-*\\#\\s-*\\\\\\(arg\\|ret\\).*$")

هنا صفحة يحتوي على مثال regexp php-وضع أن يفعل هذا:http://barelyenough.org/blog/2006/10/nicer-phpdoc-comments/

نصائح أخرى

هناك طرق أخرى أقل تعقيدا وظائف المستخدمة fill-paragraph-function.تصفح من خلال تثبيت يبدو منها في ادا وضع وجعل وضع أمثلة جيدة.

ماذا أفعل في هذه الحالات هو فتح سطر فارغ بين الفقرة خطوط الحجة خطوط ، ثم استخدام M-س التفاف الفقرة خطوط ، ثم قتل سطر فارغ بينهم.ليست مثالية ، لكنه يعمل و من السهل بما فيه الكفاية لتسجيل في الكلية إذا كنت بحاجة إلى تكرار ذلك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top