
# CLI

`./vendor/bin/tailwindphp` yra PHP [@tailwindcss/cli](https://github.com/tailwindlabs/tailwindcss/tree/next/packages/%40tailwindcss-cli) prievadas, kuriam nereikia Node.js. Jis naudoja tas pačias kūrimo parinktis, išskyrus šaltinio žemėlapius (`--map`), tačiau turinį nuskaito kitaip: žr. [Ką nuskaito CLI](#what-the-cli-scans). Po `composer require tailwindphp/tailwindphp` dvejetainis failas susiejamas su `vendor/bin/`.

Jei vykdymo metu iš PHP reikia tik CSS, naudokite [API](https://tailwindphp.inline0.dev/lt/docs/api) — CLI skirta kūrimo darbo eigoms, kurios įrašo stilių lentelę į diską.

## Greita pradžia

```bash
# Build CSS from an input file
./vendor/bin/tailwindphp -i ./src/app.css -o ./dist/styles.css

# Watch for changes and rebuild
./vendor/bin/tailwindphp -i ./src/app.css -o ./dist/styles.css --watch

# Build minified for production
./vendor/bin/tailwindphp -i ./src/app.css -o ./dist/styles.css --minify
```

## Parinktys

```bash
tailwindphp [-i input.css] [-o output.css] [--watch] [options…]
```

Ilgųjų parinkčių reikšmę nurodykite su `=`: `--input=./src/app.css`, `--output=./dist/styles.css`, `--cwd=/path/to/project`. Tarpas ir reikšmė po ilgosios parinkties (`--input ./src/app.css`) šiuo metu ignoruojami be klaidos, o kūrimas naudoja numatytąsias reikšmes ([#13](https://github.com/inline0/tailwindphp/issues/13)). Trumposios parinktys reikšmę priima kaip kitą argumentą (`-i ./src/app.css`).

| Parinktis | Aprašymas | Numatytoji reikšmė |
|---|---|---|
| `-i, --input` | Įvesties CSS failas; `--input=-` nuskaito jį iš stdin | `@import "tailwindcss"` |
| `-o, --output` | Išvesties failas | `-` (stdout) |
| `-w, --watch` | Stebėti pakeitimus ir prireikus kurti iš naujo | — |
| `-m, --minify` | Optimizuoti ir sumažinti išvesties failo dydį | — |
| `--optimize` | Dokumentacijoje aprašyta kaip „optimizuoti nemažinant failo dydžio“; šiuo metu failo dydis mažinamas kaip naudojant `--minify` ([#9](https://github.com/inline0/tailwindphp/issues/9)) | — |
| `--cwd` | Dabartinis darbinis katalogas | `.` |
| `-h, --help` | Rodyti naudojimo informaciją | — |
| `-V, --version` | Rodyti versiją | — |
| `-v, --verbose` | Nepavykus sukurti, rodyti iškvietimų steką | — |

Kai `--output` yra `-` (numatytoji reikšmė), sukompiliuotas CSS išvedamas į stdout, todėl galite jį perduoti toliau. Eigos pranešimai (versijos antraštė ir `Done in …ms`) siunčiami į stderr.

Skirtingai nei `@tailwindcss/cli`, parinkties `--map` nėra: TailwindPHP šaltinio žemėlapių negeneruoja.

## Įvesties CSS

Sukurkite `app.css` su Tailwind importu, tema ir direktyvomis:

```css
@import "tailwindcss";

@theme {
    --color-brand: #3b82f6;
}
```

## Ką nuskaito CLI

Turinio nuskaitymas CLI dar nepaiso `@source` taip, kaip tai daro `@tailwindcss/cli` ([#8](https://github.com/inline0/tailwindphp/issues/8)). Dabartinėje versijoje:

- **Jei įvesties CSS faile nėra `@source` failo direktyvos**, CLI rekursyviai nuskaito darbinį katalogą (`--cwd`). Tai apima `vendor/` ir `node_modules/`; į `.gitignore` neatsižvelgiama.
- **Jei yra viena ar daugiau `@source` failo direktyvų**, CLI rekursyviai nuskaito **įvesties failo katalogą**. Direktyvoje nurodytas kelias arba glob šablonas netaikomas: `@source "../templates"` šalia `src/app.css` nuskaito `src/`, o ne `templates/`.
- **`@source not "…"`** direktyvos praleidžiamos; jos nieko nepašalina.
- **`@source inline("…")`** ir **`@source not inline("…")`** veikia, kaip aprašyta, nes jas apdoroja pats kompiliatorius.

Skaitomi tik šių plėtinių failai: `php`, `html`, `htm`, `twig`, `blade.php`, `vue`, `jsx`, `tsx`, `svelte`, `astro` ir `mdx`. Klasių pavadinimai imami iš atributų `class` ir `className`, kaip ir [`tw::extractCandidates()`](https://tailwindphp.inline0.dev/lt/docs/api#twextractcandidates), todėl klasė, nurodyta tik eilutėje PHP arba JavaScript, neaptinkama. Tokias klases įtraukite naudodami `@source inline("…")`.

Kol tai bus ištaisyta, patikimiausia įvesties CSS failą įdėti į skenuojamo katalogo šakninį lygį:

```css
/* templates/app.css: scans templates/ recursively */
@import "tailwindcss";
@source "./";
```

Direktyvų sintaksę, įskaitant formas `not` ir `inline()`, rasite čia: [@source](https://tailwindphp.inline0.dev/lt/docs/usage/source).

## Pavyzdžiai

```bash
# Build from an input file
tailwindphp -i ./src/app.css -o ./dist/styles.css

# Build minified for production
tailwindphp -i ./src/app.css -o ./dist/styles.css -m

# Watch mode with minification
tailwindphp -i ./src/app.css -o ./dist/styles.css -w -m

# Run against a different working directory
tailwindphp -i app.css -o dist/styles.css --cwd=/path/to/project
```

CLI sukuria išvesties katalogą, jei jo nėra, ir pateikia klaidą, jei trūksta įvesties failo arba įvesties ir išvesties keliai sutampa. Stebėjimo režimu įvesties failas ir skenuojami failai tikrinami kas 500 ms; aptikus pakeitimą arba naują failą, kuriama iš naujo.

## Visuotinis diegimas

Įdiekite globaliai, kad galėtumėte naudoti `tailwindphp` iš bet kur:

```bash
composer global require tailwindphp/tailwindphp

# Now available globally
tailwindphp -i ./src/app.css -o ./dist/styles.css
```

Dėl projekto sąrankos žr. [Pradžia](https://tailwindphp.inline0.dev/lt/docs/getting-started), o vykdymo aplinkos CSS generavimą iš PHP – [API](https://tailwindphp.inline0.dev/lt/docs/api).
