emacs - محرر إيماكس، مشروع جنو
ملخص
emacs [ خيارات سطر الأوامر ] [ ملفات ... ]
الوصف
إيماكس هو نسخة من إيماكس، كتبها مؤلف النسخة الأصلية (PDP-10)، ريتشارد ستالمان. تشمل وظائف إيماكس كل ما تفعله المحررون الآخرون، ويمكن توسيعه بسهولة لأن أوامر التحرير الخاصة به مكتوبة بلغة ليسب.
التوثيق الأساسي لإيماكس موجود في دليل إيماكس، والذي يمكنك قراءته باستخدام Info، إما من إيماكس أو كبرنامج مستقل. يرجى الرجوع إلى هناك للحصول على وثائق كاملة وحديثة. يتم تحديث هذه الصفحة فقط عندما يتطوع شخص ما للقيام بذلك.
يحتوي إيماكس على مرفق مساعدة تفاعلي شامل، ولكن يفترض هذا المرفق أنك تعرف كيفية معالجة نوافذ ومخازن إيماكس. يفتح CTRL-h أو F1 مرفق المساعدة. يبدأ "مساعدة تعليمية" (CTRL-h t) برنامجًا تعليميًا تفاعليًا لتعليم المبتدئين أساسيات إيماكس بسرعة. يساعد "مساعدة البحث" (CTRL-h a) في العثور على أمر يطابق نمطًا معينًا، ويصف "مساعدة المفاتيح" (CTRL-h k) تسلسل مفاتيح معين، ويصف "مساعدة الوظائف" (CTRL-h f) وظيفة ليسب معينة.
تحتوي إيماكس على العديد من الحزم الخاصة التي تتعامل مع قراءة البريد الإلكتروني (RMail) وإرساله (Mail)، وتحرير المخطط التفصيلي (Outline)، والتحويل البرمجي (Compile)، وتشغيل البرامج الفرعية داخل نوافذ إيماكس (Shell)، وتشغيل حلقة "قراءة-تقييم-طباعة" لغة ليسب (Lisp-Interaction-Mode)، والعلاج النفسي الآلي (Doctor)، وغير ذلك الكثير.
خيارات إيماكس
الخيارات التالية ذات أهمية عامة:
ملف تحرير ملف.
--file=ملف، --find-file=ملف، --visit=ملف
نفس الشيء مثل تحديد الملف مباشرة كوسيطة.
+رقم انتقل إلى السطر المحدد بالرقم (لا تضع مسافة بين علامة "+" والرقم). ينطبق هذا فقط على الملف التالي المحدد.
+سطر:عمود
انتقل إلى السطر والعمود المحددين.
--chdir=مجلد
انتقل إلى المجلد.
-q، --no-init-file
لا تقم بتحميل ملف التهيئة.
-nl، --no-shared-memory
لا تستخدم الذاكرة المشتركة.
--no-site-file
لا تقم بتحميل ملف بدء التشغيل على مستوى الموقع.
-nsl، --no-site-lisp
لا تقم بإضافة أدلة site-lisp إلى مسار التحميل.
--no-desktop
لا تقم بتحميل سطح مكتب محفوظ.
-Q، --quick
يشبه "-q --no-site-file --no-splash". بالإضافة إلى ذلك، تجنب معالجة موارد X.
--no-splash
لا تعرض شاشة البداية أثناء بدء التشغيل.
--debug-init
قم بتمكين مصحح أخطاء لغة ليسب أثناء معالجة ملف التهيئة الخاص بالمستخدم ~/.emacs. هذا مفيد لتصحيح المشكلات في ملف التهيئة.
-u مستخدم، --user=مستخدم
قم بتحميل ملف تهيئة المستخدم بدلاً من ملفك الخاص.
--init-directory=مجلد
ابدأ إيماكس مع تعيين user-emacs-directory إلى المجلد.
-t ملف، --terminal=ملف
استخدم الملف المحدد كطرفي بدلاً من استخدام stdin/stdout. يجب أن يكون هذا هو أول وسيطة يتم تحديدها في سطر الأوامر.
--daemon[=اسم]، --bg-daemon[=اسم]
ابدأ Emacs كعملية في الخلفية، مما يتيح خادم Emacs ويفصل عن الطرفي. يمكنك بعد ذلك استخدام الأمر emacsclient(1) للاتصال بالخادم (مع اسم اختياري).
--fg-daemon[=اسم]
على غرار "--bg-daemon"، ولكن لا تفصل عن الطرفي.
--version
اعرض معلومات إصدار Emacs واخرج.
--help اعرض المساعدة واخرج.
الخيارات التالية موجهة نحو Lisp (يتم معالجة هذه الخيارات بالترتيب الذي تظهر به):
-f دالة، --funcall=دالة
نفذ دالة Lisp المحددة.
-l ملف، --load=ملف
قم بتحميل كود Lisp الموجود في الملف المحدد.
--eval=تعبير، --execute=تعبير
قم بتقييم تعبير Lisp المحدد.
الخيارات التالية مفيدة عند تشغيل Emacs كمحرر دفعي:
--batch قم بالتحرير في وضع الدفع. سيرسل المحرر الرسائل إلى stderr. يجب عليك استخدام خيارات -l و -f لتحديد الملفات المراد تنفيذها والدوال المراد استدعاؤها.
--script ملف
قم بتشغيل الملف كبرنامج نصي لـ Emacs Lisp.
--insert=ملف
أدخل محتويات الملف في المخزن المؤقت الحالي.
--kill اخرج من Emacs أثناء وجوده في وضع الدفع.
-L دليل، --directory=دليل
أضف الدليل إلى قائمة الأدلة التي يبحث فيها Emacs عن ملفات Lisp.
استخدام Emacs مع X
تم تصميم Emacs ليعمل بشكل جيد مع نظام X Window. إذا قمت بتشغيل Emacs من داخل نوافذ X، فسيقوم بإنشاء نافذة X الخاصة به لعرضها. ربما تريد أن تبدأ المحرر كعملية في الخلفية حتى تتمكن من الاستمرار في استخدام النافذة الأصلية.
يمكن بدء Emacs بالخيارات التالية لنظام X:
--name=اسم
حدد الاسم الذي يجب تعيينه للنافذة الأولية لـ Emacs. هذا يتحكم في البحث عن موارد X بالإضافة إلى عنوان النافذة.
--no-x-resources
لا تقم بتحميل موارد X.
-T اسم، --title=اسم
حدد العنوان للنافذة الأولية لـ X.
-r، -rv، --reverse-video
اعرض نافذة Emacs في وضع الفيديو العكسي.
-fn خط، --font=خط
عيّن خط نافذة Emacs إلى الخط المحدد. ستجد خطوط X المختلفة في الدليل /usr/lib/X11/fonts. لاحظ أن Emacs سيقبل فقط الخطوط ذات العرض الثابت. في اتفاقيات تسمية خطوط X11 Release 4، أي خط يحتوي على القيمة "m" أو "c" في الحقل الحادي عشر من اسم الخط هو خط ذو عرض ثابت. علاوة على ذلك، فإن الخطوط التي يكون اسمها على شكل عرضxارتفاع هي بشكل عام خطوط ذات عرض ثابت، وكذلك الخط الثابت. راجع xlsfonts(1) لمزيد من المعلومات.
عند تحديد خط، تأكد من وضع مسافة بين المفتاح واسم الخط.
--xrm=موارد
عيّن موارد X إضافية.
--color، --color=وضع
تجاوز وضع الألوان للمحطات الطرفية النصية؛ الوضع الافتراضي هو "auto"، ويمكن أن يكون أيضًا "never" أو "auto" أو "always" أو اسم وضع مثل "ansi8".
-bw بكسل، --border-width=بكسل
عيّن عرض حد نافذة Emacs إلى عدد البكسل المحدد. الافتراضي هو بكسل واحد على كل جانب من جوانب النافذة.
-ib pixels، --internal-border=pixels
يُعيِّن عرض الحافة الداخلية للنافذة بعدد البيكسلات المُحدَّد بواسطة `pixels`. القيمة الافتراضية هي بكسل واحد من الحشو على كل جانب من جوانب النافذة.
-g geometry، --geometry=geometry
يُعيِّن عرض وارتفاع وموضع نافذة Emacs كما هو مُحدَّد. مواصفات الهندسة هي بتنسيق X القياسي؛ انظر X(7) للحصول على مزيد من المعلومات. يتم تحديد العرض والارتفاع بالأحرف؛ القيمة الافتراضية للإطارات الرسومية هي عرض 80 وارتفاع بين 35 و 40، اعتمادًا على نظام التشغيل ومدير النوافذ. راجع دليل Emacs، قسم "خيارات حجم النافذة وموضعها"، للحصول على معلومات حول كيفية تفاعل أحجام النوافذ مع تحديد أو إلغاء تحديد شريط الأدوات وشريط التبويبات وشريط القائمة.
-lsp pixels، --line-spacing=pixels
مساحة إضافية لوضعها بين الأسطر.
-vb، --vertical-scroll-bars
تفعيل أشرطة التمرير الرأسية.
-fh، --fullheight
اجعل الإطار الأول بنفس ارتفاع الشاشة.
-fs، --fullscreen
اجعل الإطار الأول في وضع ملء الشاشة.
-fw، --fullwidth
اجعل الإطار الأول بنفس عرض الشاشة.
-mm، --maximized
توسيع الإطار الأول إلى أقصى حجم، مثل "-fw -fh".
-fg color، --foreground-color=color
في شاشات الألوان، يضبط لون النص.
استخدم الأمر M-x list-colors-display للحصول على قائمة بأسماء الألوان الصالحة.
-bg color، --background-color=color
في شاشات الألوان، يضبط لون خلفية النافذة.
-bd color، --border-color=color
في شاشات الألوان، يضبط لون حدود النافذة.
-cr color، --cursor-color=color
في شاشات الألوان، يضبط لون مؤشر نص النافذة.
-ms color، --mouse-color=color
في شاشات الألوان، يضبط لون مؤشر الماوس في النافذة.
-d displayname، --display=displayname
ينشئ نافذة Emacs على الشاشة المحددة بواسطة `displayname`. يجب أن يكون هذا هو الخيار الأول المحدد في سطر الأوامر.
-nbi، --no-bitmap-icon
لا تستخدم صورة الغنو كأيقونة Emacs.
--iconic
ابدأ Emacs في حالة مصغَّرة.
-nbc، --no-blinking-cursor
تعطيل المؤشر الوامض.
--parent-id=xid
عيِّن النافذة الأصل.
-nw، --no-window-system
أخبر Emacs بعدم إنشاء إطار رسومي. إذا استخدمت هذا الخيار عند استدعاء Emacs من نافذة xterm(1)، فسيتم إجراء العرض في تلك النافذة.
-D، --basic-display
يعطّل هذا الخيار العديد من ميزات العرض؛ استخدمه لتصحيح أخطاء Emacs.
يمكنك تعيين قيم افتراضية لـ X لنوافذ Emacs في ملف .Xresources (انظر xrdb(1)). استخدم التنسيق التالي:
emacs.keyword:value
حيث تحدد `value` القيمة الافتراضية للكلمة الأساسية `keyword`. يسمح Emacs بتعيين قيم افتراضية للكلمات الأساسية التالية:
background (class Background)
بالنسبة لشاشات الألوان، يضبط لون خلفية النافذة.
bitmapIcon (class BitmapIcon)
إذا تم تعيين قيمة `bitmapIcon` على `on`، فستظهر النافذة كأيقونة "حوض المطبخ".
borderColor (class BorderColor)
بالنسبة لشاشات الألوان، يضبط لون حدود النافذة.
borderWidth (class BorderWidth)
يضبط عرض حدود النافذة بالبيكسل.
cursorColor (class Foreground)
بالنسبة لشاشات الألوان، يضبط لون مؤشر نص النافذة.
cursorBlink (فئة CursorBlink)
يحدد ما إذا كان سيتم جعل المؤشر يومض. القيمة الافتراضية هي التشغيل. استخدم إيقاف التشغيل أو "false" لإيقاف وميض المؤشر.
font (فئة Font)
يحدد خط النافذة.
foreground (فئة Foreground)
بالنسبة لشاشات الألوان، يحدد لون نص النافذة.
fullscreen (فئة Fullscreen)
حجم ملء الشاشة المطلوب. يمكن أن تكون القيمة إحدى القيم التالية: fullboth أو maximized أو fullwidth أو fullheight، والتي تتوافق مع خيارات سطر الأوامر "-fs" و "-mm" و "-fw" و "-fh" على التوالي. لاحظ أن هذا ينطبق على الإطار الأولي فقط.
geometry (فئة Geometry)
يحدد هندسة نافذة Emacs (كما هو موضح أعلاه).
iconName (فئة Title)
يحدد اسم الرمز لنافذة Emacs.
internalBorder (فئة BorderWidth)
يحدد عرض الحد الداخلي للنافذة بالبكسل.
lineSpacing (فئة LineSpacing)
مسافة إضافية ("تباعد") بين الأسطر، بالبكسل.
menuBar (فئة MenuBar)
يمنح الإطارات أشرطة قوائم إذا كانت في وضع التشغيل؛ لا يمنحها أشرطة قوائم إذا كانت في وضع الإيقاف. راجع دليل Emacs، الأقسام "موارد Lucid" و "موارد Motif"، لمعرفة كيفية التحكم في مظهر شريط القوائم إذا كان لديك واحد.
minibuffer (فئة Minibuffer)
إذا كانت القيمة "none"، فلا تقم بإنشاء مخزن مؤقت صغير في هذا الإطار. سيستخدم إطارًا منفصلاً للمخزن المؤقت الصغير بدلاً من ذلك.
paneFont (فئة Font)
اسم الخط لعناوين لوحة القائمة، في إصدارات Emacs غير المستندة إلى أدوات.
pointerColor (فئة Foreground)
بالنسبة لشاشات الألوان، يحدد لون مؤشر الماوس في النافذة.
privateColormap (فئة PrivateColormap)
إذا كانت في وضع التشغيل، فاستخدم خريطة ألوان خاصة، في حالة استخدام "المرئي الافتراضي" لفئة PseudoColor و Emacs.
reverseVideo (فئة ReverseVideo)
إذا تم تعيين قيمة reverseVideo على التشغيل، فسيتم عرض النافذة في وضع الفيديو العكسي.
screenGamma (فئة ScreenGamma)
تصحيح جاما للألوان، يعادل معلمة الإطار "screen-gamma".
scrollBarWidth (فئة ScrollBarWidth)
عرض شريط التمرير بالبكسل، يعادل معلمة الإطار "scroll-bar-width".
selectionFont (فئة SelectionFont)
اسم الخط لعناصر قائمة التنشيط، في إصدارات Emacs غير المستندة إلى أدوات. (بالنسبة للإصدارات المستندة إلى الأدوات، راجع دليل Emacs، الأقسام "موارد Lucid" و "موارد Motif").
selectionTimeout (فئة SelectionTimeout)
عدد المللي ثانية للانتظار للحصول على رد التحديد. تعني القيمة 0 الانتظار طالما لزم الأمر.
synchronous (فئة Synchronous)
قم بتشغيل Emacs في الوضع المتزامن إذا كان في وضع التشغيل. الوضع المتزامن مفيد لتصحيح أخطاء X.
title (فئة Title)
يحدد عنوان نافذة Emacs.
toolBar (فئة ToolBar)
عدد الأسطر المراد حجزها لشريط الأدوات.
tabBar (فئة TabBar)
عدد الأسطر المراد حجزها لشريط علامات التبويب.
useXIM (فئة UseXIM)
يقوم بإيقاف استخدام طرق إدخال X (XIM) إذا كانت القيمة "false" أو "off".
verticalScrollBars (فئة ScrollBars)
يمنح الإطارات أشرطة تمرير عمودية إذا كانت في وضع التشغيل؛ يكبت أشرطة التمرير إذا كانت في وضع الإيقاف.
visualClass (فئة VisualClass)
حدد "المرئي" الذي يجب أن تستخدمه X. يخبر هذا X بكيفية التعامل مع الألوان. يجب أن تبدأ القيمة بإحدى القيم التالية: TrueColor أو PseudoColor أو DirectColor أو StaticColor أو GrayScale أو StaticGray، متبوعة بـ "-depth"، حيث يكون العمق هو عدد مستويات الألوان.
الأدلة
يمكنك طلب نسخ مطبوعة من دليل GNU Emacs من مؤسسة البرمجيات الحرة، التي تطور برامج GNU. انظر إلى المتجر عبر الإنترنت على [https://shop.fsf.org/]. قد يكون لدى مسؤول النظام المحلي الخاص بك أيضًا نسخ متاحة. كما هو الحال مع جميع البرامج والمنشورات من مؤسسة البرمجيات الحرة، يُسمح للجميع بإجراء و توزيع نسخ من دليل Emacs. كما يتم تضمين مصدر Texinfo للدليل في توزيع مصدر Emacs.
الملفات
/usr/local/share/info — ملفات لمتصفح مستندات Info. يتم تضمين النص الكامل لدليل مرجع Emacs في شكل شجرة مناسب. يتضمن ذلك دليل مرجع Emacs Lisp، وهو مفيد لأي شخص يرغب في كتابة برامج بلغة الامتداد Emacs Lisp، ومقدمة في البرمجة بلغة Emacs Lisp.
/usr/local/share/emacs/$VERSION/lisp — ملفات مصدر Lisp والملفات المترجمة التي تحدد معظم
أوامر التحرير. يتم تحميل بعضها مسبقًا؛ ويتم تحميل البعض الآخر تلقائيًا من هذا الدليل عند استخدامه.
/usr/local/libexec/emacs/$VERSION/$ARCH — برامج مختلفة تُستخدم مع GNU Emacs.
/usr/local/share/emacs/$VERSION/etc — ملفات معلومات مختلفة.
/usr/local/share/emacs/$VERSION/etc/DOC.* — يحتوي على سلاسل التوثيق للبدائيات Lisp ووظائف Lisp المحملة مسبقًا في GNU Emacs. يتم تخزينها هنا لـ
تقليل حجم Emacs.
الأخطاء
هناك قائمة بريدية، _، للإبلاغ عن أخطاء Emacs وإصلاحها. ولكن قبل الإبلاغ عن شيء ما على أنه خطأ، يرجى التأكد من أنه خطأ بالفعل، وليس سوء فهم أو ميزة مقصودة. نطلب منك قراءة قسم "الإبلاغ عن الأخطاء" في دليل Emacs للحصول على تلميحات حول كيفية ومتى يتم الإبلاغ عن الأخطاء. قم أيضًا بتضمين رقم إصدار Emacs الذي تستخدمه في كل تقرير أخطاء ترسله. تميل الأخطاء إلى الإصلاح إذا أمكن عزلها، لذلك من مصلحتك الإبلاغ عنها بطريقة يمكن إعادة إنتاجها بسهولة.
لا تتوقع إجابة شخصية على تقرير الأخطاء. الغرض من الإبلاغ عن الأخطاء هو إصلاحها لكل شخص في الإصدار التالي، إن أمكن. للحصول على مساعدة شخصية، راجع دليل الخدمات على [https://www.fsf.org/resources/service/] للحصول على قائمة بالأشخاص الذين يقدمونها.
الرجاء عدم إرسال أي شيء بخلاف تقارير الأخطاء إلى هذه القائمة البريدية. للحصول على قوائم Emacs الأخرى، انظر [https://savannah.gnu.org/mail/?group=emacs].
القيود
Emacs مجاني؛ يجوز لأي شخص إعادة توزيع نسخ من Emacs لأي شخص وفقًا للشروط الواردة في رخصة جنو العمومية، يتم تضمين نسخة منها مع كل نسخة من Emacs والتي تظهر أيضًا في الدليل المرجعي.
قد يتم استلام نسخ من Emacs أحيانًا مع توزيعات أنظمة Unix، ولكنها ليست مضمنة أبدًا في نطاق أي ترخيص يغطي تلك الأنظمة. ينتهك هذا الإدراج الشروط التي يُسمح بها التوزيع بموجبها. في الواقع، فإن الغرض الأساسي من رخصة جنو العمومية هو منع أي شخص من إرفاق أي قيود أخرى بإعادة توزيع Emacs.
يشجع ريتشارد ستالمان على تحسين وتوسيع برنامج إيماكس، ويحث على المساهمة بتوسيعاتك في مكتبة جنو. في النهاية، ستكون جنو (جنو ليست يونكس) بديلاً كاملاً لنظام يونكس. سيكون الجميع أحرارًا في استخدام نظام جنو ونسخه ودراسته وتعديله.
انظر أيضًا
emacsclient(1)، etags(1)، X(7)، xlsfonts(1)، xterm(1)، xrdb(1)
المؤلفون
تم كتابة برنامج إيماكس بواسطة ريتشارد ستالمان ومؤسسة البرمجيات الحرة. للحصول على أرصدة وإقرارات مفصلة، راجع دليل جنو إيماكس.
حقوق النشر
حقوق النشر 1995-2025 مؤسسة البرمجيات الحرة، إنك.
يُمنح الإذن لإجراء وتوزيع نسخ طبق الأصل من هذا المستند شريطة الحفاظ على إشعار حقوق النشر وإشعار الإذن هذا على جميع النسخ.
يُمنح الإذن لنسخ وتوزيع نسخ معدلة من هذا المستند وفقًا لشروط النسخ الحرفي، شريطة أن يتم توزيع العمل المشتق الناتج بأكمله بموجب شروط إشعار إذن مماثل لهذا.
يُمنح الإذن لنسخ وتوزيع ترجمات لهذا المستند إلى لغة أخرى، وفقًا للشروط المذكورة أعلاه للنسخ المعدلة، باستثناء أنه يجوز ذكر هذا الإشعار بالإذن بترجمة معتمدة من مؤسسة البرمجيات الحرة.
لا توجد أي ضمانات، إلى أقصى حد يسمح به القانون.