در این پست در مورد ویرایشگر اتم صحبت میکنیم که یک ویرایشگر قابل هک و شخصی سازی بالا برای قرن ۲۱ شناخته شده و با آمدنش به دنیای ویرایشگرها سروصدای زیادی به پا کرده است. اتم یک ویرایشگر زیبا و متن باز است که ظاهری ساده و در عین حال مدرن دارد که جامعهای فعال و بسیار پویا دارد و در همین راستا پکیج هایی بسیار متفاوت و زیاد را برای این ویرایشگر توسعه میدهند و هر روز میکوشند تا این ویرایشگر را به بهترین نحو بهینه کنند. آیا شما تا به حال از این ویرایشگر استفاده کرده اید؟ در اینجا میخواهیم این ویرایشگر را نصب و برای کدزدن پایتون کانفیگ و شخصی سازی کنیم. در ادامه با دیجیاسپارک همراه باشید.
ابتدا atom را از سایت رسمی آن دریافت کنید و پس از نصب آن بهتر است با دو دستور آشنا شوید؛ دستور اول Atom است که ویرایشگر شما را باز میکند و دستور دوم apm که برای نصب پکیج های اتم به کار برده میشه. در ادامه با این دو دستور بیشترآشنا میشویم.
ویرایش یک فایل python و استفاده از تکمیلکننده خودکار اتم (autocomplete)
بیایید کار خودمون رو با ایجاد یک فایل پایتون شروع کنیم. ابتدا دستور زیر را وارد کنید:
atom myfile.py
دستور بالا اتم را باز کرده و یک فایل جدید با نام myfile و با پسوند py ایجاد میکند. شما میتوانید پوشه ای را که فایل هایتان در آن ذخیره میشود در سایدبار سمت چپ مشاهده کنید.
در فایل جدید اگر تایپ کنید de خواهید دید که پیشنهادهایی به شما ارائه میشود که اگر بخواهیم یک تابع جدید ایجاد کنیم میتوانیم از def که پیشنهاد شده است استفاده کنیم. این پیشنهاد ها برای این داده میشوند که فایل ایجاد شده پسوند پایتونی دارد.
اگر کلید tab را در زمانی که de را تایپ کردهاید فشار دهید یک قالب ساده از تابع برای شما نوشته میشود که میتوانید آن را تکمیل کنید. اگر توجه کنید fname هایلایت شده است که به شما امکان میدهد تا اسم تابع خود را به سرعت تایپ کنید. اگر دوباره tab را فشار دهیم arg هایلایت میشود که میتوانید آرگومان هایی که تابع نیاز دارد را در آن تایپ کنید. و برای بار دیگر tab را فشار دهید تا pass هایلایت شود و بدنه تابع را در آن وارد کنید.
Linter برای Atom
linter یک پکیج برای ارائه api ها سطح بالا است به طوریکه اتحاد بسیار خوبی را بین تمامی پلاگین های برقرارمیکند. این بدین معنا است که تمام بسته های اضافی که نصب کنید میتوانند با استفاده از linter از قاعده ای ثابت و هماهنگ با دیگر پکیج ها و پلاگین ها استفاده کنند و برای مثال در تشخیص خطا دچار سردرگمی در رنگی شدن و هایلایت شدن کدها نمیشوید. برای نصب آن کافی است کد زیر را وارد کنید :
apm install linter
پس از آن به سراغ نصب پکیج linter برای python میرویم تا کمک کند خطاها را در پایتون پیدا کنید. این پیکج با نام linter-flake8 شناخته میشود. برای نصب flake8 کد های زیر را وارد کنید :
$ pip install flake8 $ pip install flake8-docstrings $ apm install linter-flake8
پس از آن باید اتم را ریستارت کنید تا تغییرات اعمال شود. پس از آن اگر در کدنویسی خود اشتباهی کنید عبارتی همانند زیر مشاهده میکنید که به شما هشدار خواهد داد.
شما نیاز دارید تا به atom رفته و اسکریپت init خود را بازکنید و کد زیر را در آن وارد کنید:
process.env.PATH = ['/usr/local/bin/', process.env.PATH].join(':')
سپس اتم را ریستارت کنید تا تغییرات اعمال شوند. همچنین linter برای زبانهای دیگر نیز موجود است همانند javascript و html و css که میتوانید با جستوجویی کوتاه در اینترنت آنها را پیدا کنید.
سفارشی سازی بیشتر و دنیال کردن pep8
حال در زیر نحوه کانفیگ کردن اتم برای استفاده از pep8 و دنبال کردن آن را نشان خواهیم داد :
ابتدا اتم را باز کنید و سپس preferences را باز کنید.
۱ – استفاده از space به جای tab
با پایین صفحه اسکرول کنید تا به گزینه soft tabs برسید و تیک این گزینه را بزنید این گزینه tab را به صورت اتوماتیک به اسپیس تبدیل میکند.
۲ – تنظیم کردن میزان tab برای ۴ فضای خالی
کمی پایینتر گزینه ای به نام tab length مشاهده میکنیم که مقدار آن را به ۴ تغییر میدهیم.
۳ – معتبرسازی pep8 به صورت اتوماتیک
اگر شما linter-flake8 را نصب کرده باشید شما به صورت خودکار pep8 را داشته و استفاده میکنید.
پیکج های مفید دیگر :
project manager : یک بسته برای ذخیره کردن پروژه ها
atom django : پشتیبانی از django برای اتم
minimap : نمایش یک نقشه کوچک برای فایلی که در حال ویرایش هستید در قسمت کناری سمت راست اسناد خود مشاهده کنید (همانند ویرایشگر سابلایم)
اگر از پکیج های دیگری استفاده میکنید در دیجیاسپارک به دوستان خود معرفی کنید.
ممنون واقعا برام مفید بود خیلی وقت بود دنبال همچین چیزی میگشتم
با سلام و خسته نباشید
linter-flake8 این ارور را می دهد.
See console for more info
حل شد
سلام.برای منم همین خطا را میده .چکار کنم؟؟
البته بهتر بود به جای نویسنده مینوشتید مترجم چون این مطلب یک سایت دیگر هست که شما ترجمش کردین
با سلام و تشکر از توجه شما
کاربر گرامی طی چند سال گذشته، دیجی اسپارک دارای فراز و نشیبهای زیادی بوده است. تغییرات بسیاری طی این مدت اعمال شده است. شما هیچ کدام از این موارد را اطلاع ندارید و تازه از راه رسیدهاید و دست روی یک موضوعی میگذارید که بخشی از آرمانهای سایت را زیر سوال ببرید؟ به نظرم از راه رسیدهاید و بهتر است کمی در سایت گشت و گذار کرده و مطالب را مطالعه کنید.
سلام
linter-flake8 این ارور را می دهد.
See console for more info
چرا؟
چگونه اون دستور ها رو وارد کنم؟
با سلام
از طریق Command line اقدام کنید.
سلام ببخشید من از این فونت شما خوشم اومده
میشه لطف کنید اسم فونت رو بگید
این دستور atom myfile.py رو کچا باید بنویسم توی cmd?
یکی به من کمک کنه….
من باید فریم ورک جنگو رو فعال کنم تو atom. اما هرکاری میکنم activate نمیشه. pip , virtualenv, django رو install کردم. اما نمیتونم پوشه و پروژه رو تو اتم فعال کنم. یعنی دستور activate… و یادستور …\scripts\activate ارور میده
مجبور میشم با cmd کارکنم که سخته و اونجا نمیفهمم.