Vim - ویرایشگر افسانهای برنامهنویسی
Vim یک ویرایشگر متن قدرتمند برای ترمینال است که برنامهنویسان حرفهای عاشقش هستند!
مقایسه Vim vs Nano:
ویژگی Nano (ساده) Vim (پیشرفته)
سختی آسان

سخت اما قوی
سرعت معمولی بسیار سریع
امکانات محدود بینهایت
کدنویسی مناسب مبتدیان حرفهای
---
نصب Vim در Termux:
pkg update
pkg install vim
---
ورود به Vim:
vim test.py # فایل جدید
vim file.txt # باز کردن فایل موجود
```
اولین مشکل: نمیتونی تایپ کنی!
---
حالتهای Vim (مهمترین مفهوم):
۱. حالت Normal (پیشفرض)
· وقتی Vim را باز میکنی، این حالت فعاله
· فقط میتونی حرکت کنی، نه تایپ!
· کلیدهای حرکتی: h ←, j ↓, k ↑, l →
۲. حالت Insert (برای تایپ)
· برای وارد کردن متن
· دستور ورود: i (حرف i را بزن)
· حالا میتونی تایپ کنی
۳. حالت Visual (برای انتخاب)
· برای انتخاب متن
· دستور: v
---
مهمترین دستورات Vim:
ذخیره و خروج (Save & Exit):
```
:w # ذخیره (Write)
:q # خروج (Quit)
:wq # ذخیره و خروج
:q! # خروج بدون ذخیره (اجباری)
```
حرکت در متن:
```
h # چپ
j # پایین
k # بالا
l # راست
0 # ابتدای خط
$ # انتهای خط
gg # اول فایل
G # آخر فایل
```
ویرایش:
```
i # وارد حالت Insert کن
a # بعد از کرسر تایپ کن
o # خط جدید پایین
O # خط جدید بالا
x # حذف یک کاراکتر
dd # حذف یک خط
u # برگرداندن (Undo)
Ctrl+r # بازگردانی (Redo)
```
---
آموزش قدم به قدم:
گام ۱: باز کردن و تایپ
vim اولیت-برنامه.py
```
1. حرف i را بزن (حالت Insert)
2. تایپ کن: print("سلام Vim!")
3. Esc را بزن (بازگشت به Normal mode)
گام ۲: ذخیره و خروج
1. : را بزن (برای وارد کردن دستور)
2. بنویس: wq
3. Enter بزن
---
Vim زیبا (با پیکربندی):
فایل تنظیمات Vim ایجاد کن:
vim ~/.vimrc
```
محتوای ساده:
```vim
" تنظیمات پایه Vim
set number " نمایش شماره خط
syntax on " رنگآمیزی کد
set mouse=a " فعالکردن ماوس
set tabstop=4 " اندازه Tab
set expandtab " Tab به فاصله تبدیل شود
" کلیدهای میانبر شخصی
map <F2> :w<CR> " F2 برای ذخیره
map <F3> :q<CR> " F3 برای خروج
```
---
تمرین سریع:
تمرین ۱: ساخت فایل و ذخیره
vim تمرین.txt
```
1. i بزن
2. بنویس: این اولین فایل Vim من است
3. Esc بزن
4. :wq بنویس و Enter بزن
تمرین ۲: ویرایش فایل موجود
vim تمرین.txt
```
1. j را بزن (به پایین برو)
2. o بزن (خط جدید)
3. بنویس: خط دوم اضافه شد
4. Esc → :wq
---
چرا Vim یاد بگیریم؟
مزایا:
1. سریع - بدون نیاز به ماوس
2. قدرتمند - هزاران پلاگین
3. سبک - روی هر سروری موجوده
4. شخصیسازی نامحدود
معایب:
1. منحنی یادگیری شیب دار ️
2. اولش عجیب و غریب
---
دستورات جالب Vim:
تغییر سریع متن:
```
ci" # تغییر محتوای داخل ""
ci( # تغییر محتوای داخل ()
cit # تغییر محتوای داخل تگ HTML
```
جستجو:
```
/کلمه # جستجوی کلمه
n # نتیجه بعدی
N # نتیجه قبلی
```
کپی/پیست:
```
yy # کپی خط
p # پیست
```
---
اگر در Vim گیر کردی:
موقعیت اضطراری:
1. Esc را بزن (مطمئن شو در Normal mode هستی)
2. : تایپ کن
3. بنویس q! و Enter بزن
یا: دکمه Esc + : + qa! (خروج از همه چیز)
---
مسیر یادگیری Vim:
```
مبتدی: حرکات پایه → i, Esc, :wq
متوسط: جستجو، کپی/پیست، جایگزینی
حرفهای: ماکروها، پلاگینها، اسکریپتنویسی
```
---
نکته برای شروع:
اول با Nano کار کن، وقتی راحت شدی، Vim رو یاد بگیر.
Vim مثل رانندگی با دنده دستی است - اول سخته، اما بعد کنترل کاملی داری!
---

میخوای Vim رو امتحان کنی یا فعلاً با Nano ادامه بدی؟ میتونی برات مثال عملی با Vim بزنم!