<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های هاشم کامروا</title>
        <link>https://virgool.io/feed/@c.kamrava</link>
        <description></description>
        <language>fa</language>
        <pubDate>2026-06-16 11:06:06</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/30302/avatar/AwL4nE.jpeg?height=120&amp;width=120</url>
            <title>هاشم کامروا</title>
            <link>https://virgool.io/@c.kamrava</link>
        </image>

                    <item>
                <title>ویرایش فایل‌های yaml با vim</title>
                <link>https://virgool.io/@c.kamrava/%D9%88%DB%8C%D8%B1%D8%A7%DB%8C%D8%B4-%D9%81%D8%A7%DB%8C%D9%84-%D9%87%D8%A7%DB%8C-yaml-%D8%A8%D8%A7-vim-mavidlic5vxg</link>
                <description>امروزه فرمت yaml تبدیل شده به یک استاندارد فایل‌های کانفیگ اکثر برنامه‌ها .پروژه هایی مانند Ansible kubernetes ، docker-compose و ... از این فرمت فایل برای پیکربندی استفاده می‌کنند.ویرایش این فایل‌ها چالش اکثر مدیران سیستم ،مهندسین Devops  و حتی برنامه نویس ها است، دلیلش هم فاصله‌گذاری‌ها و یا همون indent گذاری هست.اگر تو محیط گرافیکی باشید مشکل چندانی با این قضیه ندارید چون اکثر IDE ‌ها فرمت yaml ‌رو می‌شناسند و فاصله ‌گذاری  رو برای شما انجام می‌دهد. حالا اگر روی سرور خواستیم یک فایل رو ویرایش کنیم که به فقط یه ترمینال داریم چیکار کنیم؟توی این مقاله من چندتا قابلیت دیگه vim ‌رو بهتون معرفی می‌کنم که کار رو راحت می‌کنه و استفاده از vim ‌رو لذت بخش‌تر .vim syntax highlightingویرایشگر vim  تنظیمات اش رو از فایل vimrc میخونه که توی یکی از این مسیر می تونید اون رو پیدا کنید./etc/vim/vimrc
~/.vimrcمرحله اول فایل vimrc رو باز کنید و این کد رو قرار بدید.syntax onاگر این فایل وجود نداشت مشکلی نداره و می‌تونید با این دستور فایل رو ایجاد کنید. توجه داشته باشید این فایل با . شروع میشه که یعنی یک فایل مخفی هست.touch ~/.vimrcویرایشگر vim هر باری که اجرا میشه اول میاد محتویات این فایل رو چک می‌کنه و دستورات اون رو اجرا میکنه. اگر روی سرور شما نسخه‌های ماقبل vim 8 نصب باشه مثل centos 7 احتمالا کار نمی‌کنه و شما باید اول پکیج vim-enhanced رو نصب کنیدyum install vim-enhancedتنظیمات زیر رو هم به فایل .vimrc اضافه کنید.filetype indent plugin on 
set ruler 
autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab autoindentبا دستور اول indenting یا همون فاصله گذاری تو در تو رو فعال میکنیمset ruler :‌شماره سطر و ستون رو نمایش میدهخط سوم برای فایل های yaml میاد و این موارد رو تغییر میدهts=2 این میگه حرکت کلید تب به اندازی دوتا کاراکتر باشهsts=2  این میگه اگه دوبار space رو زدی انگاری یه کلید tap رو زده باشیset sw=2 : توی vim اگر دوبار این &gt;&gt; کاراکتر رو بزنی خط رو شیفت میده. حالا این دستور میگه به اندازه دو تا اسپیس شیفت رو انجام بدهset expandtab تب رو تبدیل به اسپیس میکنه.اگر دوست داشته باشید که خطوط شماره گذای بشه این کد رو به فایل vimrc اضافه کنید.set numberمرحله بعدی نصب یه پلاگین کاربردی هست که توی ویرایش فایل های vim خیلی بدردخوره هست.این دوتا دستور رو برای نصب پلاگین indentLine وارد کنیدgit clone https://github.com/Yggdroot/indentLine.git ~/.vim/pack/vendor/start/indentLine vim -u NONE -c &amp;quothelptags  ~/.vim/pack/vendor/start/indentLine/doc&amp;quot -c &amp;quotq&amp;quot بعدش توی فایل vimrc این کد رو هم اضافه کنید.با این کد هر دوتا فاصله‌ای که وارد کنید یه کاراکتر &quot;|&quot; نمایش می‌ده.این نکته رو هم بگم که فقط این کاراکتر رو نمایش می‌ده و توی فایل این کاراکتر رو اضافه نمی‌کنهlet g:indentLine_char = &#039;|&#039;میتونید یه لیست از کاراکترها رو هم بهش بدید.اینطوری به ترتیب کاراکترها رو نمایش می‌ده که هم خواناتر میشه و هم خشکل ترlet g:indentLine_char_list = [&#039;|&#039;، &#039;:&#039;،&#039;.&#039;]ویرایش فایل‌های yaml با vim توی اینجا میتونید تنظیمات کامل پلاگین رو مشاهده کنیدhttps://github.com/Yggdroot/indentLineویرایشگر vim  قابلیت های زیادی داره  و با یه سرچ ساده میتونید کلی پلاگین و کانفیگ جالب و کاربردی توی اینترنت پیدا کنید.امیدوارم این مقاله براتون مفید بوده باشه.اگر هم خوشتون اومد میتونید لایک فراموش نشه.</description>
                <category>هاشم کامروا</category>
                <author>هاشم کامروا</author>
                <pubDate>Fri, 18 Mar 2022 17:23:40 +0330</pubDate>
            </item>
                    <item>
                <title>عملیات Cut، Copy و Paste در ویرایشگر vim</title>
                <link>https://virgool.io/@c.kamrava/%D8%B9%D9%85%D9%84%DB%8C%D8%A7%D8%AA-cut-copy-%D9%88-paste-%D8%AF%D8%B1-%D9%88%DB%8C%D8%B1%D8%A7%DB%8C%D8%B4%DA%AF%D8%B1-vim-wpr6yb3nuoqg</link>
                <description>کات کپی پیست در vim احتمالاً برای شما هم پیش آمده که‌ یک فایل رو در ویرایشگر vim باز کنید و  نیاز باشه یک کلمه یا خط رو copy کنید. ممکنه تصور کنید توی یک ویرایشگر  متنی مثل vim نمی‌شه یک متن رو  انتخاب و  copy کرد. باید بگم توی ویرایشگر vim میشه این کار رو انجام داد و اصلاً هم سخت نیست. فقط vim این کار رو به شیوه خودش انجام می‌ده. vi به عمل copy می‌گه yunk به paste می‌گه put و عمل cut میشه delete!  برای copy و paste باید روی command mode باشید، تو حالت ویرایش یا insert mode نمی‌شه این کار رو انجام داد. برای copy (yunking) کلید y رو می‌زنید. برای paste (put) کلید p. با این کار اون کاراکتری که مکان نما روی اون قرار داره copy میشه  اینجا چندتا دستور پر کاربرد رو براتون لیست کردم  yy: دوتا کاراکتر y یعنی کل خط رو copy کن ۳yy: یعنی از این خطی که مکان نما قرار داره سه تا خط رو copy کن yw: کلمه‌ای که مکان نما روش قرار داره رو copy می‌کنه y$: از مکان نما تا آخر خط رو copy می‌کنه y^: از مکان نما تا اول خط رو copy می‌کنه برای عملیات delete )cut): کلید d رو می‌زنیم dd: دوتا d یعنی کل خط رو cut کن ۳dd: یعنی از اینجا ۳ تا خط رو cut کن d$: یعنی از محل مکان نما تا اخر خط رو cut کن. تمام کاراکتر‌ها و syntax  هاش مثل copy هست. مثل dw که کلمه رو cut می‌کنه d^ که از محل مکان نما تا  اخر خط رو cut می‌کنه. برای paste کردن (put) هم کلید p رو می‌زنیم و paste رو در محل مکان نما انجام می‌ده.  تا اینجا توی حالت command mode عملیات کپی پیست رو انجام دادیم.‌یه راه  آسون‌تر دیگه که میشه به راحتی متن رو هم انتخاب کرد حالت visual mode  ویرایش‌گر vim هست. کپی پست در vimبرای ورود به این مد توی حالت command mode مکان نما رو ببرید اول متنی که  می‌خواین انتخاب کنید، کلید v رو بزنید تا وارد حالت visual mode بشید. با  کلید‌های جهت نما و حرکت به جلو ، متن رو انتخاب می‌کنید، بعد انتخاب متن کلید  y رو برای کپی بزنید. حالا برین محلی که می‌خواین متن رو paste کنید و  کلید p رو بزنید.  اگر V حروف بزرگ رو بزنید میشه visual line mode و می‌تونید چند خط رو باهم  انتخاب کنید و کلید ctrl +v هم visual block mode هست و بصورت بلاک متن  رو انتخاب می‌کنه.  نکته آخر. اگر هر جا نیاز داشتین عملیات تون رو undo کنید(مثل ctrl+z) فقط کافیه کلید u رو بزنید.</description>
                <category>هاشم کامروا</category>
                <author>هاشم کامروا</author>
                <pubDate>Sat, 26 Feb 2022 13:13:34 +0330</pubDate>
            </item>
            </channel>
</rss>