сряда, 11 юли 2007 г.

отново VIM

   Не мога да се сдържа и да не го похваля. Снощи пак ми дойде вдъхновението да поровя и да видя какво може и какво не този текстов редактор. Попаднах на още няколко много полезни команди.
   Да речем, че сте отворили някакъв файл за редактиране и искате част от написаното в него да прехвърлите в друг файл. Както си е отворен прозореца на vim в команден режим просто пишете :tabnew file_name и вече въпросния file_name е отворен в нов таб. Що е то таб няма да обяснявам. Смяната между табовете става с gt.
   Открих, че vim има проверка за правопис и на български. Може би това е от доста време, но за мен е новост, за това ще дам и малко информация относно командите за проверка на правопис. :set spell включва проверката за правопис а :set nospell я изключва. За да зададете езика (речника), който да се използва за проверка на правописа използвайте :set spelllang=en, като вместо en можете да напишете bg, fr или каквото ви е нужно. Vim 7 поддържа проверка на правопис на около 30 езика. Ако избраният от вас език не е инсталиран, vim ще предложи да го изтегли от интернет. ]s преминава на следваща дума, която е разпозната като грешна от проверката за правопис а [s на предишната. Когато курсора се намира върху дума, която е разпозната като грешна, чрез z= можете да извикате списък, с предложения за думи, който да заменят грешната. Ако прецените, че някоя дума е вярна, въпреки че е разпозната като грешна можете да я добавите в речника чрез zg. Ако без да искате добавите грешна дума в речника като вярна можете да я "изкарате" от там като поставите курсора върху нея и използвате командата zw.
   Друга команда, която открих е :earlier 2h. Ако сте редактирали някакъв файл, или пишете код няколко часа и в един момент решите, че варианта, който е бил преди два часа ви харесва повече от текущия, това е вашата команда ;-). В случай, че размислите и искате отново да се върнете на последния вариант винаги можете да използвате :later 2h. Вместо h може да се използва s за секунди и m за минути. Вместо :earlier можете да използвате :ea, а вместо :later по-краткото :lat

   Открих нещо много полезно и при писането на HTML код. Можете да започнете да пишете някой HTML таг и да поискате от vim да го довърши. В случай, че сте написали <tab и натиснете Ctrl+X Ctrl+O, тагът ще бъде довършен до <table. В някои случай има повече от един вариант за довършване на тага, тогава ще ви бъде предложен списък, от който да си изберете. Хубавото при довършването на таговете е, че допускането на грешка става по-трудно. Ако сте написали <table><tbody><t и натиснете Ctrl+X Ctrl+O директно ще получите <table><tbody><tr, а не вариант да избирате между <tr>, <td> или нещо друго, което показва, че vim предлага не само възможните тагове, но и единствено възможните верни тагове. Vim разбира какъв код пишете от разширението на файла, който редактирате. В момента езиците които се поддържат са HTML, C, JavaScript, Python, Ruby, и XML.
   В случай, че имате две версии на един файл и искате да разберете каква е разликата между тях можете да използвате vim -d file_1 file_2. Файловете ще се отворят успоредно в един прозорец и разликите между тях ще бъдат оцветени в червено.

Няма коментари:

Публикуване на коментар