summaryrefslogtreecommitdiffhomepage
path: root/fa-ir
diff options
context:
space:
mode:
Diffstat (limited to 'fa-ir')
-rw-r--r--fa-ir/vim-fa.html.markdown469
1 files changed, 469 insertions, 0 deletions
diff --git a/fa-ir/vim-fa.html.markdown b/fa-ir/vim-fa.html.markdown
new file mode 100644
index 00000000..f1864619
--- /dev/null
+++ b/fa-ir/vim-fa.html.markdown
@@ -0,0 +1,469 @@
+---
+category: tool
+tool: vim
+contributors:
+ - ["RadhikaG", "https://github.com/RadhikaG"]
+translators:
+ - ["Moein Halvaei", "https://github.com/mo1ein"]
+lang: fa-ir
+filename: LearnVim-fa.txt
+---
+
+<p dir="rtl">
+[Vim](http://www.vim.org) (Vi رشدیافته) یک کلون از ادیتور مشهور vi است برای unix. ادیتورمتنی‌ست که برای سرعت و افزایش بهره‌وری طراحی شده‌ و در همه جا به ویژه در سیستم های unix-based دیده می‌شود. شورتکات کلید های بی‌شماری برای سرعت جهت‌یابی به نقاط ویژه‌ي فایل ها و تغییر سریع، دارد.
+<br />
+`vimtutor` یک برنامه‌ي عالیست که به شما چگونگی استفاده از `vim` را آموزش می‌دهد.
+این به همراه پکیج های vim هنگام نصب کردن، نصب می‌شود. شما باید بتوانید با ران کردن `vimtutor` در کامندلاین از آموزش ها استفاده کنید. این همه‌ی ویژگی های عمده‌ی `vim` را به شما راهنمایی می‌کند.
+</p>
+<h3>
+ <p dir="rtl">
+مکان‌یابی اولیه vim
+ </p>
+</h3>
+
+
+<p dir="rtl">
+باز کردن `<filename>` در ویم
+</p>
+
+```
+vim <filename> # Open <filename> in vim
+```
+<p dir="rtl">
+باز کردن help docs های `<topic>` اگر وجود داشته باشد
+</p>
+
+```
+:help <topic> # Open up built-in help docs about <topic> if any exists
+```
+```
+:q # خروج از ویم
+
+:w # ذخیره کردن فایل فعلی
+
+:wq # ذخیره کردن و خارج شدن از ویم
+
+ZZ # ذخیره کردن و خارج شدن از ویم
+
+:q! # خارج شدن بدون ذخیره کردن فایل
+
+! *forces* :q to execute, hence quiting vim without saving
+
+ZQ # خارج شدن بدون ذخیره کردن فایل
+```
+
+<p dir="rtl">ذخیره کردن و خارج شدن از vim ورژن خلاصه شده‌ی wq:</p>
+
+```
+:x # Save file and quit vim, shorter version of :wq
+```
+
+<p dir="rtl">برگشت به عقب</p>
+
+```
+ u # Undo
+```
+
+<p dir="rtl">رفتن به جلو</p>
+
+```
+CTRL+R # Redo
+```
+
+<p dir="rtl">راه رفتن در صفحه</p>
+
+```
+h # رفتن یک کاراکتر به چپ
+
+j # رفتن یک کاراکتر به پایین
+
+k # رفتن یک کاراکتر به بالا
+
+l # رفتن یک کاراکتر به راست
+
+Ctrl+B # جابه‌جا شدن به عقب به اندازه یک صفحه
+
+Ctrl+F # جابه‌جا شدن به جلو به اندازه یک صفحه
+
+Ctrl+D # جابه‌جا شدن به جلو به اندازه نصف صفحه
+
+Ctrl+U # جابه‌جا شدن به عقب به اندازه نصف صفحه
+```
+
+<p dir="rtl"><strong>جابه‌جا شدن در خط</strong></p>
+
+```
+0 # رفتن به اول خط
+$ # رفتن به آخر خط
+^ # رفتن به اولین کاراکتر غیرخالی در خط
+```
+
+<p dir="rtl"><strong>جست و جو در متن</strong></p>
+
+```
+/word # هایلایت کردن همه‌ی کلمه های بعد کِرسر
+
+?word # هایلایت کردن همه‌ی کلمه های قبل کِرسر
+
+n # جابه‌جایی کِرسر به کلمه های بعدی پیدا شده
+
+N # جابه‌جایی کِرسر به کلمه های قبلی پیدا شده
+```
+
+<p dir="rtl">عوض کردن 'foo' به 'bar' در هر خط از فایل</p>
+
+```
+:%s/foo/bar/g # Change 'foo' to 'bar' on every line in the file
+```
+
+<p dir="rtl">عوض کردن 'foo' به 'bar' در خط فعلی</p>
+
+```
+:s/foo/bar/g # Change 'foo' to 'bar' on the current line
+```
+
+<p dir="rtl">جایگزینی کاراکتر های خط جدید با کاراکتر های خط جدید</p>
+
+```
+:%s/\n/\r/g # Replace new line characters with new line characters
+```
+
+<p dir="rtl"><strong>پرش به کاراکتر ها</strong></p>
+<p dir="rtl">پرش به جلو و قرار گرفتن روی کاراکتر مورد نظر</p>
+
+```
+f<character> # Jump forward and land on <character>
+```
+
+<p dir="rtl">پرش به جلو و قرار گرفتن قبل کاراکتر مورد نظر</p>
+
+```
+t<character> # Jump forward and land right before <character>
+```
+
+<p dir="rtl"><strong>برای مثال:</strong></p>
+
+<p dir="rtl">پرش به جلو و قرار گرفتن روی ></p>
+
+```
+f< # Jump forward and land on <
+```
+
+<p dir="rtl">پرش به جلو و قرار گرفتن قبل از ></p>
+
+```
+t< # Jump forward and land right before <
+```
+<p dir="rtl"><strong>جابه‌جا شدن با کلمه ها</strong></p>
+
+```
+w # رفتن به جلو به اندازه‌ی یک کلمه
+b # رفتن به عقب به اندازه‌ی یک کلم
+e # رفتن به آخر کلمه‌ی فعلی
+```
+<p dir="rtl"><strong>سایر کاراکتر ها برای جابه‌جایی</strong></p>
+<p dir="rtl">رفتن به اول فایل</p>
+
+```
+gg # Go to the top of the file
+```
+<p dir="rtl">رفتن به آخر فایل</p>
+
+```
+G # Go to the bottom of the file
+```
+<p dir="rtl">رفتن به شماره‌ی خط مورد نظر (NUM شماره است)</p>
+
+```
+:NUM # Go to line number NUM (NUM is any number)
+```
+<p dir="rtl">رفتن به اول صفحه</p>
+
+```
+H # Move to the top of the screen
+```
+<p dir="rtl">رفتن به وسط صفحه</p>
+
+```
+M # Move to the middle of the screen
+```
+<p dir="rtl">رفتن به آخر صفحه</p>
+
+```
+L # Move to the bottom of the screen
+```
+
+<h3>
+<p dir="rtl"><strong>
+داک های help
+</strong></p>
+</h3>
+
+<p dir="rtl">
+Vim دارای یک help doc داخلی است که می‌توان با help: <topic> به آن دسترسی داشت. برای مثال help navigation: داک مربوط به مکان‌یابی در فضای کار را به شما نشان می‌دهد! <br /><br />
+help: همچنین می‌تواند بدون option مورد استفاده قرار گیرد.
+این یه صورت یک help پیش‌فرض بالا می‌آید که شروع vim را قابل دسترس تر می‌کند!
+</p>
+
+<h3>
+ <p dir="rtl"><strong>Modes:</strong></p>
+</h3>
+
+<div dir="rtl">
+Vim بر پایه‌ی مفهومی‌ست به نام <strong>modes</strong>
+<br /><br />
+<ul>
+ <li>
+ Command Mode - ویم در این حالت بالا می‌آید،‌ برای مکان‌یابی و نوشتن دستورات استفاده می‌شود
+</li>
+<li>
+ Insert Mode - برای ایجاد تغییر در فایل شما استفاده می‌شود
+</li>
+<li>
+ Visual Mode - برای هایلایت کردن متن و انجام عملی روی آن ها استفاده می‌شود
+</li>
+<li>
+ Ex Mode - برای وارد کردن دستورات توسط ":" در قسمت پایین استفاده می‌شود
+</li>
+</ul>
+<br />
+</div>
+
+<p dir="rtl">رفتن به حالت insert, پیش از جایگاه cursor</p>
+
+```
+i # Puts vim into insert mode, before the cursor position
+```
+<p dir="rtl">رفتن به حالت insert, پس از جایگاه cursor</p>
+
+```
+a # Puts vim into insert mode, after the cursor position
+```
+
+<p dir="rtl">رفتن به حالت visual</p>
+
+```
+v # Puts vim into visual mode
+```
+<p dir="rtl">رفتن به حالت ex</p>
+
+```
+: # Puts vim into ex mode
+```
+<p dir="rtl">خروج از همه‌ی حالت ها و رفتن به حالت command</p>
+
+```
+<esc> # 'Escapes' from whichever mode you're in, into Command mode
+```
+<p dir="rtl">کپی و پیست در متن</p>
+
+```
+y # کپی کردن متن انتخاب شده
+
+yy # کپی کردن خط فعلی
+
+d # حذف کردن متن انتخاب شده
+
+dd # حذف کردن خط فعلی
+
+p # پیست کردن متن کپی شده پس از جایگاه فعلی کِرسر
+
+P # پیست کردن متن کپی شده پیش از جایگاه فعلی کِرسر
+
+x # حذف کردن یک کاراکتر از جایگاه کِرسر
+```
+
+<h3>
+<p dir="rtl"><strong>گرامر (Grammer) </strong></p>
+</h3>
+
+<div dir="rtl">
+Vim را می توان به عنوان مجموعه ای از دستورات در قالب (Verb - Modifier - Noun) تصور کرد ، جایی که:
+<br /><br />
+<ul>
+<li>
+ Verb - عمل شما
+</li>
+<li>
+ Modifier - چگونگی انجام عمل شما
+</li>
+<li>
+ Noun - شیئی که عمل شما بر اساس آن عمل می کند
+</li>
+</ul>
+اندکی از مثال های مهم Verbs ,Modifiers, Nouns:
+<br /><br />
+</div>
+
+<p dir="rtl"><strong>فعل ها (Verbs)</strong></p>
+
+```
+d # حذف
+c # تغییر
+y # کپی
+v # انتخاب
+```
+<p dir="rtl"><strong>تغییردهنده ها (Modifiers)</strong></p>
+
+```
+i # داخل
+a # اطراف
+NUM # شماره (NUM هر شماره‌ای است)
+f # جست و جو کردن چیزی و متوقف شدن روی آن
+t # جست و جو کردن چیزی و متوقف شدن قبل از آن
+/ # جست و جو کردن رشته‌ای پس از کِرسر
+? # جست و جو کردن رشته‌ای پیش از کِرسر
+```
+<p dir="rtl"><strong>اسم ها (Nouns)</strong></p>
+
+```
+w # کلمه
+s # جمله
+p # پاراگراف
+b # بلوک
+```
+<p dir="rtl"><strong>جمله ها و کامند های نمونه</strong></p>
+
+```
+d2w # حذف دو کلمه
+cis # تغییر داخل جمله
+yip # کپی داخل پاراگراف (از پاراگرافی که داخل آن هستید کپی کنید)
+ct< # متن را از جایی که قرار دارید به براکت باز بعدی تغییر دهید
+d$ # حذف تا پایان
+```
+
+<h3>
+ <p dir="rtl">بعضی از شورتکات ها و ترفند ها</p>
+</h3>
+
+```
+<!--TODO: Add more!-->
+
+> # ایجاد دندانه به اندازه یک بلوک
+
+< # حذف دندانه به اندازه یک بلوک
+
+:earlier 15m # برگرداندن همه چیز به ۱۵ دقیقه قبل
+
+:later 15m # برعکس کامند قبلی
+
+ddp # تغییر مکان خطوط متوالی(dd, then p)
+
+. # تکرار دستور قبلی
+
+:w !sudo tee % # ذخیره کردن فایل فعلی به عنوان روت
+
+:set syntax=c # تنظیم سینتکس هایلایتینگ روی 'c'
+
+:sort # مرتب کردن همه‌ی خطوط
+
+:sort! # مرتب کردن همه‌ی خطوط به صورت برعکس
+
+:sort u # مرتب کردن همه‌ی خطوط و پاک کردن تکراری ها
+
+~ # تبدیل متن انتخاب شده به حروف (اگر بزرگ است، کوچک و اگر کوچک است، بزرگ)
+
+u # تبدیل متن انتخاب شده به حروف کوچک
+
+U # تبدیل متن انتخاب شده به حروف بزرگ
+
+J # اتصال خط فعلی به خط بعدی
+```
+<h4>
+<p dir="rtl">
+فولد (Fold)
+</p>
+</h4>
+
+```
+zf # ایجاد فولد برای متن انتخاب شده
+zo # باز کردن فولد فعلی
+zc # بستن فولد فعلی
+zR # باز کردن همه‌ی فولد ها
+zM # بستن همه‌ی فولد ها
+```
+
+<h3>
+<p dir="rtl">
+ماکرو ها (Macros)
+</p>
+</h3>
+
+<p dir="rtl">
+ماکرو ها اساسا عمل های قابل ضبط هستند. زمانی که شما شروع می‌کنید به ضبط ماکرو، هر عمل و دستوری را که استفاده می‌کنید، تا زمانی که ضبط را متوقف کنید، ضبط می‌شود. با فراخوانی ماکرو، دقیقاً همان توالی اعمال و دستورات، دوباره روی متن انتخاب شده اعمال می‌شود.
+</p>
+
+```
+qa # Start recording a macro named 'a'
+q # Stop recording
+@a # Play back the macro
+```
+<h3>
+<p dir="rtl">
+کانفیگ vimrc./~
+<p>
+</h3>
+
+<p dir="rtl">
+vimrc. فایلی‌ست که استفاده می‌شود برای کانفیگ vim هنگام بالا آمدن
+<br />
+این‌جا یک نمونه‌ فایل vimrc. آورده شده:
+</p>
+
+```
+" Example ~/.vimrc
+" 2015.10
+
+" Required for vim to be iMproved
+set nocompatible
+
+" Determines filetype from name to allow intelligent auto-indenting, etc.
+filetype indent plugin on
+
+" Enable syntax highlighting
+syntax on
+
+" Better command-line completion
+set wildmenu
+
+" Use case insensitive search except when using capital letters
+set ignorecase
+set smartcase
+
+" When opening a new line and no file-specific indenting is enabled,
+" keep same indent as the line you're currently on
+set autoindent
+
+" Display line numbers on the left
+set number
+
+" Indentation options, change according to personal preference
+
+" Number of visual spaces per TAB
+set tabstop=4
+
+" Number of spaces in TAB when editing
+set softtabstop=4
+
+" Number of spaces indented when reindent operations (>> and <<) are used
+set shiftwidth=4
+" Convert TABs to spaces
+set expandtab
+
+" Enable intelligent tabbing and spacing for indentation and alignment
+set smarttab
+```
+
+<h3>
+<p dir="rtl">رفرنس ها</p>
+</h3>
+
+[Vim | Home](http://www.vim.org/index.php)
+
+`$ vimtutor`
+
+[A vim Tutorial and Primer](https://danielmiessler.com/study/vim/)
+
+[What are the dark corners of Vim your mom never told you about? (St
+
+[Arch Linux Wiki](https://wiki.archlinux.org/index.php/Vim)