جنگ ویرایشگرها
ظاهر

جنگ ویرایشگر (به انگلیسی: Editor war) نامی است که به رقابت میان کاربران ویرایشگرهای متن ایمکس و Vi اختصاص داده شده است. جنگی قدیمی که بین جامعه هکرها و جامعه جنبش نرمافزار آزاد وجود داشتهاست.[۱][۲]
علت این جنگ این است که هر گروه اصرار بر این دارند که ادیتور منتخبشان نسبت به دیگری دارای برتریهایی است. برخلاف جنگهایی که بر سر سیستمعاملها، زبانهای برنامهنویسی و حتی سبک تورفتگیها در کد مبدأ وجود دارد، انتخاب ویرایشگر متن اغلب امری کاملاً شخصی است.[۳][۴]
تفاوتها بین Emacs و vi
[ویرایش]مهمترین تفاوتهای بین Emacs و vi در جدول زیر آورده شده است:
vi | Emacs | |
---|---|---|
مصرف حافظه و قابلیت سفارشیسازی | از همان اول، vi برنامهای کوچکتر و سریعتر بود، اما ظرفیت محدودی برای سفارشیسازی دارد. | ادیتور Emacs زمان بیشتری برای اجرا شدن نیاز دارد و حافظهی بیشتری مصرف میکند. اما بسیار منعطف و قابل سفارشیسازی است و دارای ویژگیهای بسیار زیادی است. |
محیط کاربری | ادیتور vi منحصراً برای محیط متنی طراحی شدهاست و هیچ واسط گرافیکیای (GUI) در اختیار کاربر قرار نمیدهد. البته خیلی از مشتقات vi مانند MacVim و gVim هم وجود دارند که واسطهای گرافیکی کاملی در اختیار قرار میدهند. | ادیتور Emacs در ابتدا برای استفاده در محیط متنی طراحی شد که کمکم برای آن واسط گرافیکی نیز نوشته شد. ورژنهای جدید Emacs از هر دو محیط متنی و گرافیکی پشتیبانی میکنند. |
مزیتهای ویرایشگرهای شبه vi
[ویرایش]- از فلسفه «ترکیبی از ابزارهای ساده» پیروی میکند.
- بسیار کم حجم است و از فلسفه یونیکس که میگوید «یک کار را انجام بده، ولی درست انجام بده» پیروی میکند.
- از Emacs سریعتر است.
- بر روی تمام سیستمهایی که کتابخانههای استاندارد زبان برنامهنویسی سی بر روی آنها پیادهسازی شدهاست اجرا میشود، مانند یونیکس، لینوکس، آمیگااواس، داس، ویندوز، مکینتاش و سیستمعاملهای مطابق با پازیکس.
- به کاربرانی که صفحهکلیدشان از نوع QWERTY است اجازه میدهد بدون برداشتن دست خود از روی قسمت میانی صفحه کلید، کار خود را انجام دهند، در نتیجه کاربر حرکات کمتری برای ویرایش متن انجام میدهد.
مزیتهای Emacs
[ویرایش]- از فلسفه سینک آشپزخانه پیروی میکند. دارای ویژگیهای بسیار زیادتری نسبت به vi است.
- بر روی طیف گستردهای از سیستمعاملها شامل سیستمعاملهای شبهیونیکس (مانند گنو/لینوکس، بیاسدی، سولاریس، ایریکس، AmigaOSآمیگااواس، مکینتاش و ...)، داس، ویندوز و اپنویاماس اجرا میشود.
- توسعهپذیر و قابل سفارشیسازی است (توسط زبان لیسپ و ایمکس لیسپ) با ویژگیهایی نظیر:
پیوند به بیرون
[ویرایش]منابع
[ویرایش]- ↑ "Holy War (Hacker Jargon)". Archived from the original on 2012-04-02. Retrieved 2016-11-30.
- ↑ "EMACS vs. vi: The endless geek 'holy war'". Archived from the original on 2016-11-30. Retrieved 2016-11-30.
- ↑ "Just Let Me Code". Archived from the original on 2015-05-01. Retrieved 2015-04-24.
- ↑ "Why Coding Style Matters". Archived from the original on 2015-05-03. Retrieved 2015-04-24.