سنگین بودن Spacemacs با در نظر گرفتن قابلیت ها

سلام
من به تازگی روی Emacs ، باندل Spacemacs رو نصب کردم، و خیلی از حالت Evil mode هم لذت بردم.
اما چیزی که برای من عجیبه اینه که خیلی سنگینه. وقتی اجراش میکنم احساس میکنم Android studio یا Pycharm رو باز کردم.
در حالی که به جز تم و قابلیت Evil mode قابلیت به خصوصی توش نمیبینم.
مثلا یه فایل پایتون برای تست ایجاد کردم و بازش کردم اولش که گفت میخواد چند تا پکیج دانلود کنه برای زبان Python و بعد دانلود هم فقط Syntax Highlight داشت و حتی auto complete های خیلی ساده رو هم نداشت.
یا مثلا من توقع داشتم با Git سازگاری بیشتری داشته باشه و وقتی نسبت به آخرین کامیت خط به کدم اضافه یا کم میکنم نمایش بده.
خلاصه این که میخوام بدونم دوستانی که از Spacemacs مدتیه استفاده میکنن نظرشون چیه؟؟ چه قابلیت هایی داره که انقدر سنگینه؟؟

هممم من spacemacs استفاده نکردم. ولی اگر سنگین هست می تونی خودت چیزایی که نیاز داری رو رو ایمکس جمع کنی. یا از باندل های دیگه استفاده کنی

1 Like

ترجیح میدم از یه باندل آماده استفاده کنم حالا اگه چیز دیگه ای خواستم بهش اضافه کنم
ولی یه باندل که حداقل هارو داشته باشه
شما چی پیشنهاد میکنید؟ اگه Evil mode رو به صورت پیشفرض داشته باشه عالیه.

والا من از evil mode استفاده نمی کنم. تنها باندلی هم که استفاده می کنم FG42 هستش.

2 Likes

در کل spacemacs اصلا سنگین نیست مگر اینکه انتظار داشته باشی مثل‌ vim بدون پکیج های اضافه یا sublime باشه، فقط وقتی اجرا میکنی ممکنه در زمان لود شدن بسته های زیادی رو لود کنه که میتونی هر کدوم رو که نمیخوای حذف کنی، در ضمن مطمئن شو که ag هم روی سیستمت نصب باشه. من بجای ag از rg استفاده میکنم(ripgrep).
در کل باید بگم اصلا احساس نمیکنم که spacemacs سنگین باشه مگر اینکه چیزی توی سیستم کم باشه یا اینکه spacemacs اشتباهی در کانفیگ وجود داشته باشه.
فایل کانفیگ خودمو میذارم اینجا اما ممکنه بعضی چیزا رو لازم نداشته باشی که میتونی حذفشون کنی.
اما اگر چیزی رو عوض نکردی حتما به کامنت زیر فایل توجه کن وگرنه دچار مشکل میشی و توجه داشته باش که این گانفیگ فقط در مک و لینوکس کار میکنه

2 Likes

مرسی برای توضیحات
موقعی که اجراش میکنم شروع میکنه به index کردن layer ها و خیلی سریع نیست
یه توضیح کوتاه در مورد ag و rg میدین؟
در کل شما چرا از Spacemacs استفاده میکنید؟ به جز تم و Evil Mode چه قابلیت هایی داره؟

evil mode قابلیت spacemacs نیست. رو هر ایمکسی می تونی داشته باشیش. همین طور تم ش.
در کل spacemacs یه سری تنظیمات آماده هست. که خودم می تونی انجام بدی (‌البته کلی طول می کشه)

2 Likes

Spacemacs امکانات خیلی زیادی داره، کلا یک سوپر ست برای emacs ا.
Spacemacs به‌‌ صورت پیشفرض‌ از ag برای جستجو استفاده میکنه و اگر نصب نباشه میتونه باعث کند شدن spacemacs بشه، اما من از rg استفاده کردم برای همین اگر از کانفیگ من استفاده میکنید باید rg نصب باشه.

1 Like

منم سپیسمکس داشتم برام سنگین بود، شاید مشکل ag و rg باشه ولی بیخیالش شدم رفتم سراغ doom emacs
سریعه و امکاناتی که سپیسمکس داشت رو هم داره (و به نظر من تم پیشفرض خوشگلتری داره :crazy_face:)

2 Likes

خب ایمکس برای این نیست که فایل رو باز کنیم ادیت کنیم و بعد ایمکس رو ببندیم. برای اینکارِ، ویم مناسبه.
ایمکس برای اینه که وقتی کامپیوتر روشن میشه یه ایمکس full screen باز کنیم و توش زندگی کنیم :sweat_smile:

4 Likes

موافقم، منم دقیقا برای همین گفتم که نباید با vim یا sublime مقایسه کرد

3 Likes

حقیقتش اینه که من یه مدت با vim کار میکردم و خیلی هم راضی بودم تا این که به دوتا مشکل خیلی بزرگ برخوردم
مشکل اول این که بعد نصب تم و چند تا پکیج به شدت کند شد؛ و منظورم از کند شدن فقط اولش که باز میشه نیست، در تمام طول اجرا کند عمل میکرد و مثل بازی آنلاینی که پینگت بالا باشه لگ میزد.
مشکل دوم و البته خیلی مهم تر این که بسیار وابسته به سیستم عامله. من با توجه به شرایطم در طول هفته حداقل با سه تا سیستم متفاوت با سیستم عامل های متفاوت (مک، لینوکس، ویندوز) کار میکنم و روی هرکدوم یه جور رفتار میکنه. بزرگ ترین مشکلم هم این بود که تم Dracula نصب کرده بودم و رنگارو درست نشون نمیداد و توی فایل کانفیگ vim هر سیستم عامل باید یه دستور خاص که نمیدونستم چیه و همینجوری تو اینترنت پیدا کرده بودم رو میزدم تا درست بشه. (توی هر سیستم عامل این دستور فرق میکرد و دستوری که توی یه سیستم عامل مشکل رو حل میکرد توی اون یکی، بود و نبودش یکی بود)

1 Like

از FG42 استفاده کردی؟
VScode هم خیلی چیز خوبیه اگر تست نکردی یه مدتی امتحانش کن. واقعا قدرتمنده و vim mode خوبی هم داره، چیزی از emacs کم نداره.

2 Likes

درمورد کندی ویم بعد از لود بعضی پلاگینها موافقم. ویم نمیتونه multi-processing داشته باشه و به خاطر ضعف شدید viml بعضیها مجبورن پلاگینهاشون رو با زبانهای دیگه مثل پایتون بنویسن. اینم یه نکته‌ی خیلی بده.
برای بالاتر رفتن سرعت شاید بهتر باشه ویم رو توی یکی از ترمینالهای Gnome ران کنید. ترمینالهای kde یه مقدار کندتر هستن توی نمایش محتوا. (اختلافش خیلی کمه ولی شاید همین هم بهتون کمک کنه. من از terminator که برای kde هست استفاده میکنم ولی راضی هستم)
مشکل در تفاوت بین سیستم‌عاملها هم به خاطر محیطی هست که ویم توش ران میشه. ویم یه نرم‌افزار تحت ترمیناله. حتی gvim یا هر محیط gui دیگه‌ای هم داره یه ترمینال ران میکنه و ویم رو داخلش باز میکنه (مطمئن نیستم ولی به نظر اینطور میاد) پس اگه یه ترمینال مشترک توی همه‌ی این سیستم‌عاملها داشته باشید، احتمالا مشکل ظاهری برطرف بشه. (درحالی که ایمکس مثل یه اپلیکیشن کامل و مستقل ران میشه مگر به صورت nox یا همون headless)

در کل منم حس میکنم ایمکس توی سینتکس‌هایلایتینگ و پراسس متن خیلی سریعتر و قویتر از ویم عمل میکنه.

I use Emacs, which might be though of as a thermonuclear word processor.
— Neal Stephenson

2 Likes

در مورد این ویدئو این رو بگم که این آقا از ایمکس هیچی نمی دونه. کسی که بخاطر emoji ایمکس رو ول می کنه معلومه چیزی از ایمکس نمی دونه. شرمنده که این رو می گم اما اصلا حرف هاش منطقی نبود

3 Likes

اگر کند هست حتما یه جای کار می لنگه و باید دیباگش کنی. اگر خواستی کانفیگت رو بده ببینم که کمکت کنم

1 Like

منظورم حرفای مقایسه ایش نبود، یه سری تکنیک رو‌گفته بود که بنظرم‌ خوب اومد.

2 Likes

سلام
این کانفیگ vim منه

""" Vim-Plugin
call plug#begin('~/.vim/plugged')
Plug 'dracula/vim', { 'as': 'dracula' }
" Fugitive must be installed unless airline doesn't show git branch
Plug 'vim-airline/vim-airline'
Plug 'airblade/vim-gitgutter'
call plug#end()

""" Show line number
set number

""" Forbidden +80 characters in vim
:set textwidth=80
:set colorcolumn=+1
highlight ExtraWhitespace ctermbg=darkred guibg=#FF0000
"" These 3 line make characters red when they pass the limit
" match ExtraWhitespace /\s\+$/
" highlight OverLength ctermbg=red guibg=#FF0000
" 2match OverLength /\%80v.\+/

""" Change updatetime flag so gitgutter recognize changes faster
set updatetime=2000

""" Powerline font symbol
let g:airline_powerline_fonts = 1

""" Kite auto complete
let g:kite_auto_complete=1
let g:kite_tab_complete=1

""" Enable dracula theme
syntax on
set t_Co=256
set termguicolors
color dracula

البته این رو هم بگم که من یه مدت نسبتا زیادی روی ماشین مجازی لینوکس و vim رو اجرا میکردم. (کیبوردم خراب شد، کیبورد قدیمیم هم توی لینوکس دکمه های Control و alt اش کار نمیکرد، مجبور شدم توی ویندوز روی ماشین مجازی لینوکس نصب کنم) الآن که لینوکس رو روی خود سیستم نصب کردم یکمی بهتره.

تا حالا با NeoVim کار کردین؟ اون چه طوره؟

نه. فقط با vim و emacs کار کردم. چندروز با spacemacs کار کردم و الآن با FG42.
البته به عنوان یه طرفدار vim، توی محیط ایمکس روان و productive نیستم برای همین هنوز یه وقتایی با vim کار میکنم. چیزهایی توی ویم هست که جای دیگه‌ای نمیتونه وجود داشته باشه و حتی evil-mode هم نتونسته ۱۰۰٪ مطابق بشه. مثلا Ctrl-o دقیقا مثل داخل ویم عمل نمیکنه چون فلسفه‌ی بافرهای ویم و ایمکس با همدیگه فرق میکنن و نحوه‌ی نگهداریشون توی رم متفاوته.

1 Like