VS Code

Kodunuzun yanında konsol karesinin canlı önizlemesi, App Router iskeleti oluşturma, kod parçacıkları ve TX hata bağlantıları.

VS Code için Text.js eklentisi, konsol karenizi kodun yanında gösterir. text dev altında çalışan uygulamayı yansıtır veya hiçbir şey çalışmıyorsa açık dosyanın kendisini render eder. Ayrıca App Router için iskelet oluşturma, kod parçacıkları ve TX### hata kodlarına bağlantılar ekler.

Kurulum

Visual Studio Marketplace’ten Text.js eklentisini yükleyin. VS Code’da Uzantılar görünümünü (⌘⇧X) açıp textjs.vscode-textjs arayın veya şu komutu çalıştırın:

code --install-extension textjs.vscode-textjs

Text.js uygulaması içeren her klasörde etkinleşir: bir text.config.ts dosyası veya @textjs/app bağımlılığı ve app/ dizini olan bir paket. Birden fazla uygulama içeren monorepo’lar da çalışır.

Canlı önizleme

Bir page.tsx, layout.tsx dosyası veya bileşen açıp Text.js: Open Preview (⌘K V) komutunu çalıştırın ya da düzenleyicinin başlık çubuğundaki önizleme düğmesine tıklayın. Panel, kareyi tarayıcı konsolunuzla aynı DevTools arayüzünde ve Menlo hücreleriyle çizer.

Önizleme, karelerini iki kaynaktan birinden alır. Araç çubuğundaki rozet hangisinin etkin olduğunu gösterir:

KaynakNe zamanGördüğünüz
Canlıtext dev çalışıyorsa ve uygulama bir tarayıcı sekmesinde açıksaDurumu, verileri ve ızgara boyutuyla gerçek uygulama
BaşsızGeliştirme sunucusu yoksa veya açık sekme yoksaEklentinin panel boyutunda render ettiği açık dosya

auto (varsayılan), kullanılabildiğinde Canlı, aksi durumda Başsız kaynağını kullanır. Rozetten veya textjs.preview.mode ile bunlardan birini sabitleyin.

Klavye

Tuşları uygulamaya göndermek için konsola tıklayın: ok tuşları, Tab, kısayollar, yazma ve yapıştırma tarayıcıdaki gibi çalışır. Durdurmak için konsolun dışına tıklayın. ⌘P ve ⌘⇧P gibi düzenleyici kısayolları yine VS Code’a gider. Konsol üzerinde kaydırma yapmak tekerlek olayları gönderir.

Her iki kaynakta da gezinmek için adres alanına /deployments/dpl_a1 gibi bir rota yazabilirsiniz.

Canlı mod

Bir önizleme açıkken geliştirme sunucusu, bağlı sekmelerden karelerini akış olarak göndermelerini ister. Sekmeler yalnızca değişen satırları gönderir ve önizleme kapandığında göndermeyi durdurur; böylece açık önizlemesi olmayan bir uygulama ek maliyet taşımaz. Dosya kaydetme işlemi Fast Refresh üzerinden geçer ve önizleme sekmeyle birlikte güncellenir.

Tarayıcı sekmesini düzenlediğiniz page.tsx dosyasının rotasına taşımak için Takip et (textjs.preview.followEditor) seçeneğini açın.

Arka plandaki sekmeler animasyon karesi almaz, bu yüzden normalde yeniden görünür olana kadar karelerini korur. Bir önizleme izlerken arka plandaki sekme girdi gelir gelmez bir kare çizer, bu nedenle önizlemede yazmak güncelleme yapmaya devam eder. Arka plandaki bir sekmede animasyonlar yaklaşık saniyede bir kez güncellenir. Akıcı kalmaları için uygulamayı ayrı bir pencereye taşıyın.

Başsız mod

Eklenti, projenizde küçük bir çalıştırıcı başlatır. Rota dosyalarını projenin kendi Vite ve @textjs/app kurulumları üzerinden yükler; böylece takma adlar, TypeScript ve JSX, text dev ile aynı şekilde davranır. Bellek içi geçmiş kullanarak App Router bileşenini, layout’larıyla birlikte açık dosyanın rotasına bağlar:

DosyaÖnizleme
app/page.tsx/
app/(shop)/items/[id]/page.tsx/items/id (dinamik segmentler kendi adlarını kullanır)
app/blog/[[...slug]]/layout.tsx/blog
components/Card.tsxProp olmadan varsayılan dışa aktarım veya ilk PascalCase dışa aktarımı

Aynı kaynaklı fetch("/api/...") çağrıları, text run komutundaki gibi route.ts işleyicilerinizi aynı süreçte çalıştırır. Izgara, panelin boyutunu izler ve uygulamadaki herhangi bir dosyayı kaydetmek yeniden render edilmesini sağlar. Hatalar, TX### sayfalarına bağlantılarla karenin üzerinde gösterilir.

Komutlar

KomutAçıklama
Text.js: Start Dev Serverdev betiğinizi (veya text dev komutunu) bir terminalde çalıştırır
Text.js: Stop Dev ServerVS Code’dan başlatılan geliştirme sunucusunu durdurur
Text.js: Open PreviewEtkin dosya için canlı önizlemeyi açar
Text.js: Open in Browser ConsoleGeçerli rotayı geliştirme sunucusunda açar. Ardından tarayıcı konsolunu açın
Text.js: New PageMeta veriler ve tür tanımlı params ile app/<route>/page.tsx
Text.js: New Layoutapp/<route>/layout.tsx
Text.js: New Route HandlerGET ve POST ile app/<route>/route.ts
Text.js: New Loading UI / Error Boundary / Not Found Pageloading.tsx, error.tsx, not-found.tsx

İskelet oluşturma komutları, Gezgin’deki klasör bağlam menüsünde de bulunur. settings, blog/[slug], docs/[...path] ve (marketing)/about gibi App Router segmentlerini kabul eder ve aynı segmente bir page ile bir route.ts yerleştirmeyi reddeder. JavaScript projelerinde (tsconfig.json yoksa) .jsx ve .js dosyaları oluşturulur.

Kod parçacıkları

ÖnekEklenen içerik
txpage, txlayout, txloading, txerrorKlasörlerinin adını taşıyan rota dosyaları
txcDosyanın adını taşıyan bir konsol bileşeni
txroute, txroutepParametreli veya parametresiz rota işleyicileri
box, boxb, text, scrollbox, link, spinnerBileşenler
input, select, tabsEtkileşimli bileşenler
useInput, useKeymap, useFocus, useTheme, useViewport, useRouter, useIntervalHook’lar
metadata, txconfigRota meta verileri ve text.config.ts

Hata kodları

Kaynak kodda, günlüklerde, Çıktı panelinde veya yapıştırılmış bir yığın izinde herhangi bir TX### kodunun üzerine gelin. Açılan bilgi kutusu, başlığını, mesajını ve paketini textjs.org üzerindeki sayfasına bağlantıyla gösterir. Her kod aynı zamanda bir bağlantıdır (⌘-tıklama).

Durum çubuğu

▼ öğesi, geliştirme sunucusunun durumunu ve konsol ızgarasının boyutunu gösterir; örneğin ▼ :3000 120×36. Sekmeler, önizleme açık olmasa bile boyutları her değiştiğinde geliştirme sunucusuna bildirir. Ana komutlar için öğeye tıklayın.

Ayarlar

AyarVarsayılanAçıklama
textjs.preview.modeautoauto, live veya headless
textjs.preview.followEditorfalseCanlı mod: düzenlenen rotayı takip etme
textjs.preview.fontSize12Hücre yazı tipi boyutu (DevTools 12 kullanır)
textjs.preview.runtimeBaşsız önizlemeler için Node.js ikili dosyası (varsayılan: VS Code ile gelen)
textjs.devServer.urlGeliştirme sunucusu URL’si (varsayılan: 3.000–3.010 bağlantı noktalarında keşif). Yalnızca http:// geri döngü adresleri kullanılır
textjs.devServer.commandStart Dev Server için komut

Çalışma alanı güveni

Önizleme ve geliştirme sunucusu projenizin kodunu (Vite yapılandırması, text.config.* ve bileşenler) çalıştırır. Kısıtlı Mod’da eklenti yalnızca kod parçacıkları, iskelet oluşturma ve hata bağlantıları sunar; çalışma alanı ayarlarındaki textjs.preview.runtime, textjs.devServer.command ve textjs.devServer.url değerlerini yok sayar. Önizlemeyi açmak için çalışma alanına güvenin. Çalışma alanı klasörlerinizin dışındaki dosyalar hiçbir zaman önizlenmez.

Çalışma şekli

text dev, düzenleyiciler için üç uç nokta sunar. Yalnızca bir geri döngü ana bilgisayarına (localhost, 127.0.0.1, [::1]) yöneltilmiş geri döngü bağlantılarına ve yalnızca Origin içermeyen veya geliştirme sunucusunun kendi kaynağını içeren isteklere yanıt verirler. Tarayıcıların siteler arası ve no-cors istekleri reddedilir:

Uç nokta
GET /__textjs/statusProje kökü, bağlı sekmeler, ızgara boyutu ve geçerli rota
GET /__textjs/framesSunucudan gönderilen olaylar: değişiklik başına, satır farkları olarak kodlanmış bir frame olayı
POST /__textjs/inputSekme için bir tuş, yapıştırma, IME veya ölü tuş metni (text), tekerlek ya da gezinme girdisi. JSON ve x-textjs-mirror: 1 başlığını gerektirir; böylece diğer siteler tuş vuruşları gönderemez

Sekmeler, kareleri sunucuya özel bir belirteç gerektiren Vite HMR soketi üzerinden geliştirme sunucusuna gönderir. Kendi görüntüleyicinizi oluşturmak isterseniz aktarım biçimi @textjs/app/frame-protocol üzerinden dışa aktarılır (FrameEncoder, FrameDecoder, parseInputMessage). Bunların hiçbiri text build çıktısında bulunmaz.

Bu sayfayı GitHub’da düzenle