4-dars. Cursor Tab va Inline Edit — tezkor kod yozish
Tab va Inline Edit — bu Cursor ning kundalik ish vositalari. Tab sizga yozayotgan kodning davomini taklif qiladi. Inline Edit (Cmd+K) esa tanlangan kod ustida o'zgartirish kiritishga imkon beradi. Bu ikki vosita bilan siz 3-5 marta tezroq ishlaysiz.
Mavzu izohi
Cursor Tab — bu oddiy autocomplete emas. An'anaviy autocomplete faqat o'zgaruvchi nomlarini taklif qiladi. Cursor Tab esa butun qatorlar, funksiyalar va hatto mantiqiy bloklarni bashorat qiladi. U sizning loyihangiz kontekstini, yozayotgan kodingiz uslubini va maqsadingizni tushunadi.
Inline Edit (Cmd+K Mac da, Ctrl+K Windows da) — bu satr yoki blok ustida tezkor o'zgartirish. Kodni tanlaysiz, Cmd+K bosasiz, nima qilish kerakligini yozasiz — AI o'zgartiradi. Masalan: 'bu funksiyaga error handling qo'sh' yoki 'bu loopni optimallash'.
Tab va Inline Edit birgalikda ishlaganda juda samarali: siz yangi kod yozayotganda Tab taklif qiladi, mavjud kodni o'zgartirishda Inline Edit ishlatiladi. Chat yoki Agent mode ga kirish shart emas — bu tezkor, minimal harakat talab qiladigan vositalar.
Amaliy maslahat: Tab taklifini to'liq qabul qilish uchun Tab bosing, qisman qabul qilish uchun Cmd+→ (so'z-so'z) bosing. Agar taklif yoqmasa — yozishni davom eting, AI yangi taklif beradi.
Bu darsdan nima olasiz
- Tab completion ishlash prinsipini tushunasiz va samarali foydalanasiz
- Inline Edit (Cmd+K / Ctrl+K) bilan mavjud kodni AI yordamida o'zgartirasiz
- Partial accept (qisman qabul) texnikasini bilasiz
- Tab va Inline Edit qachon ishlatishni farqlaysiz
- Tezkor klaviatura shortcutlarni yodlaysiz
Chuqurroq tushuntirish
Tab completion texnik ishlashi: Cursor sizning kursoringiz pozitsiyasini, atrofdagi kodni (yuqoridagi va pastdagi 50-100 qator), ochiq fayllarni va loyiha tuzilmasini AI modelga yuboradi. Model 100-200ms ichida eng ehtimoliy davomini qaytaradi. Siz yozishni davom etgan sari taklif yangilanadi. Bu real-time bashorat — siz hatto so'rashingiz shart emas.
Inline Edit ning kuchi shundaki, u faqat tanlangan kodni o'zgartiradi, qolgan faylga tegmaydi. Bu uni Chat dan farq qiladi — Chat butun faylni qayta yozishi mumkin, Inline Edit esa cerrahi amaliyot kabi aniq joyni o'zgartiradi. Masalan: bitta funksiyaga error handling qo'shish, bitta o'zgaruvchini rename qilish, bitta loop ni optimallashtirish.
Pro texnika — Multi-cursor Tab: Bir nechta kursorni qo'yib (Alt+Click), har birida alohida Tab taklif olish mumkin. Bu takroriy kodni tez yozishda juda foydali — masalan, bir nechta o'xshash funksiya yoki test yaratishda.
Partial accept strategiyasi: Ba'zan Tab taklifi to'g'ri boshlanadi, lekin oxiri noto'g'ri. Bunday holda Cmd+→ bilan faqat birinchi so'z/qismni qabul qilib, keyin yana Tab bosing — yangi taklif keladi. Bu 'progressive accept' deyiladi va tajribali foydalanuvchilar doim shunday ishlaydi.
Tayyor prompt shabloni
Ko'chirib moslashtiringBu funksiya foydalanuvchi yoshini tekshiradi. Iltimos: 1) input validation qo'sh (raqam ekanligini tekshir), 2) 0 dan kichik va 150 dan katta qiymatlar uchun xato qaytarsin, 3) TypeScript tiplarini qo'sh.
Nega ishlaydi
Kontekst: 'Bu funksiya' — Inline Edit tanlangan kodga nisbatan ishlaydi
Aniq vazifalar ro'yxati: 1, 2, 3 — AI har birini ketma-ket bajaradi
Texnik talab: 'input validation', 'xato qaytarsin' — aniq funksionallik
Til talabi: 'TypeScript tiplarini qo'sh' — AI JavaScript dan TypeScript ga o'giradi
Amaliy mashq
- Cursor da yangi fayl yarating: utils.ts
- Faylga 'export function ' yozing va Tab taklifini kuting — qabul qiling
- Oddiy funksiya yarating: 'function greet(name) { return "Hello " + name }'
- Funksiyani tanlang, Cmd+K bosing va 'TypeScript tiplarini qo'sh va template literal ishlatsin' deb yozing
- Natijani ko'ring va Accept/Reject tugmasini bosing
- Yangi qator boshlang va 'function calculate' yozib, Tab taklifini sinab ko'ring
Ko'p uchraydigan xatolar
- Har bir Tab taklifini ko'r-ko'rona qabul qilish — taklif mantiqiy bo'lsa qabul qiling, aks holda yozishni davom eting
- Inline Edit uchun juda katta kod blokini tanlash — 5-20 qator optimal, 100+ qator uchun Chat yaxshiroq
- Shortcut ni unutish — Cmd+K eng ko'p ishlatiladigan shortcut, yodlang
- Inline Edit natijasini diff ko'rmasdan qabul qilish — har doim o'zgarishlarni ko'rib chiqing
Dars bo'yicha savol-javob
Tab completion ishlashini qanday yaxshilayman?
Loyihangizda yaxshi nomlash ishlating (descriptive function/variable names), izohlar yozing va fayllarni mantiqiy tartibda saqlang. Cursor kontekstdan o'rganadi — toza kod = yaxshi takliflar.
Inline Edit nechta qatorni o'zgartira oladi?
Texnik cheklov yo'q, lekin 5-30 qator optimal. Juda katta bloklar uchun (50+ qator) Chat rejimini ishlatish yaxshiroq — u ko'proq kontekst bilan ishlaydi.
Tab taklifini o'chirib qo'yish mumkinmi?
Ha, Settings > Cursor Tab da 'Enable' ni o'chirishingiz mumkin. Yoki muayyan fayl turlari uchun o'chirish mumkin. Lekin tavsiya etilmaydi — Tab vibe coding ning asosi.