Gå til indholdet

HTML-forhåndsvisning-udvidelsesmodulet

En fuldtro, levende forhåndsvisning af det aktive HTML-dokument (og PHP-dokument), gengivet med en rigtig browsermotor (QtWebEngine) i et panel, der kan dokkes. I modsætning til Markdown-forhåndsvisningen gengiver denne CSS, JavaScript, webskrifttyper og alt andet præcis, som en browser ville.

Tilgængelighed — ikke alle downloads indeholder den

HTML-forhåndsvisningen drives af QtWebEngine, en komplet browsermotor, og er tilsvarende stor. Den er derfor valgfri, og hvilken download du har, afgør, om du får den.

  • macOS — OctoEdit udgives som to pakker: en med HTML-forhåndsvisningen og en slank en uden. Vælg den download, der siger, at den indeholder HTML-forhåndsvisningen, så er forhåndsvisningen der, i det øjeblik du starter editoren. Der er ingen tilføjelse at installere bagefter: en pakke uden forhåndsvisningen kan ikke få den senere, så hent den anden i stedet.
  • Windows — forhåndsvisningen kan også tilføjes til en eksisterende installation senere som en separat HTML-forhåndsvisnings-download, som du pakker ud i den mappe, OctoEdit er installeret i, hvorefter du genstarter editoren.

Mangler Vis ▸ HTML-forhåndsvisning i menuen, indeholder din udgave ikke forhåndsvisningen. Markdown-forhåndsvisningen kræver ingen browsermotor og er altid til rådighed.

At bygge fra kildekoden: forhåndsvisningen ligger bag CMake-indstillingen MTE_ENABLE_HTML_PREVIEW — se BUILDING.md for bemærkninger om pakning og licenser.

Hvor du finder det

Vis ▸ HTML-forhåndsvisning åbner (eller lukker) forhåndsvisningspanelet for det aktuelle faneblad.

Sådan opfører den sig

  • Levende gengivelse. Forhåndsvisningen gengives på ny, mens du skriver (med en forsinkelse, der slækkes i meget store filer).
  • Fuldtro. Stilark, scripts, billeder og andre ressourcer indlæses i forhold til dokumentets mappe, så en side forhåndsvises, som den ville se ud i en browser.
  • Links til mapper. Klikker du på et link, der peger på en lokal mappe, indlæses den mappes indeksdokument (index.html / index.htm / index.xhtml) i stedet for en mappeoversigt.
  • Åbn i browser. Værktøjslinjen åbner filen på disken (eller, i PHP-servertilstandene nedenfor, den levende URL) i din standardbrowser.
  • Panelets størrelse. Forhåndsvisningen holder en andel af vinduet i stedet for en fast bredde, så den vokser og skrumper med vinduet — se Gemt layout.

Ét blink med vinduesgengivelse på CPU

Forhåndsvisningen tager en browsermotor ind i editorens vindue, og med Vinduesgengivelse sat til CPU skal vinduet oprettes på ny for at give plads til den. Editorvinduet blinker derfor én gang — første gang du åbner HTML-forhåndsvisningen i en session, og aldrig mere derefter. Standardindstillingen, GPU, undgår det helt; se Indstillinger ▸ Generelt ▸ Vinduesgengivelse.

Forhåndsvisningens synlighed

Forhåndsvisningens synlighed huskes pr. fil, både i løbet af en session og på tværs af genstarter:

  • Webfiler (.html, .htm, .xhtml samt .php / .phtml / .php3 / .php4) åbner forhåndsvisningen af sig selv, første gang du ser dem.
  • Andre filer gør ikke — men du kan åbne forhåndsvisningen på enhver fil med Vis ▸ HTML-forhåndsvisning, og den vil gengive den fil som HTML.
  • Inden for en session gendannes dit valg for et faneblad, når du vender tilbage til det.
  • På tværs af genstarter huskes dit udtrykkelige valg for en fil: en manuel lukning bliver ved med at være lukket, næste gang du åbner den fil, og en forhåndsvisning, du åbnede på en fil, der ikke ville åbne den af sig selv, åbnes igen. Filer, du aldrig udtrykkeligt har rørt, følger standarden for automatisk åbning hver gang.

At forhåndsvise PHP

PHP kører på serveren, så QtWebEngine kan ikke køre det direkte. Vælg, hvordan .php-filer håndteres, under Indstillinger ▸ Udvidelsesmoduler ▸ HTML-forhåndsvisning:

Tilstand Hvad den gør Bedst til
Fra Viser en vejledningsside; kører eller henter aldrig noget. At slå PHP-forhåndsvisning fra.
Kør med PHP (kommandolinje) Sender dokumentet gennem det lokale php-program og gengiver dets output. Kører under PHP's CLI-SAPI. Skabeloner og selvstændige filer, der udskriver HTML.
Kør med PHP (indbygget server) Leverer dokumentet gennem PHP's indbyggede webserver (php -S), som editoren starter og stopper for dig. Kører under web-SAPI'en. Hele sider — phpinfo(), $_SERVER, sessioner, routing.
Brug en server, du selv kører (URL) Knytter den åbne fil til en URL på en server, du kører (Apache, nginx, Docker, php artisan serve …). Et eksisterende lokalt udviklingsmiljø.

Stien under PHP-program og Opdatér automatisk under indtastning gælder både tilstanden kommandolinje og indbygget server. Lad stien stå tom for at søge i din PATH og på almindelige installationssteder (på macOS arver et program, der er startet fra Finder, ikke din skals PATH, så angiv hele stien, f.eks. /opt/homebrew/bin/php).

Kommandolinje kontra indbygget server

Begge disse tilstande kører det lokale php-program, men i forskellige miljøer (SAPI'er), og det ændrer, hvad der virker:

  • Kommandolinje (CLI-SAPI). Hurtig og enkel — den viser bare det, scriptet udskriver. Men phpinfo() gengives som almindelig tekst, og webfunktioner som $_SERVER, sessioner og routing er begrænsede eller tomme. Glimrende til filer, der mest udsender HTML.
  • Indbygget server (web-SAPI). Editoren starter en lille php -S 127.0.0.1:<port> med rod i din fils mappe og indlæser siden over HTTP, så den gengives præcis som på en rigtig server: phpinfo() er en formateret HTML-side, $_SERVER er fyldt ud, og sessioner og forespørgsler efter ressourcer og underressourcer virker alle sammen.

  • Serveren startes først, når du forhåndsviser en .php-fil i denne tilstand, genbruges på tværs af gengivelser, genstartes, hvis du skifter til en fil i en anden mappe, og stoppes, når du lukker editoren eller forlader tilstanden.

  • Den binder sig kun til 127.0.0.1, så den kan aldrig nås fra netværket.
  • Ikke gemte ændringer forhåndsvises også: din levende buffer skrives til en midlertidig fil i dokumentets mappe (så __DIR__ og relative include og require peger rigtigt), og det er den, der leveres. Den midlertidige fil erstattes ved hver gengivelse og fjernes, når du afslutter eller skifter tilstand.

Tip

Vises en PHP-side som tekst i stedet for som en gengivet side, så skift fra kommandolinje til indbygget server — det er forskellen mellem CLI- og web-SAPI og ikke en fejl.

Brug en server, du selv kører (URL)

Kører du allerede PHP bag en webserver, så peg forhåndsvisningen mod den:

  • Basis-URL — din servers rod, f.eks. http://127.0.0.1:8000.
  • Dokumentrod — den lokale mappe, der leveres på den basis-URL. Den åbne fil knyttes til en URL under den. Lad den stå tom for at levere filen efter navn fra basis-URL'en. Ligger filen uden for dokumentroden, melder forhåndsvisningen det, så du kan rette sammenhængen.

Når PHP ikke findes

I tilstandene kommandolinje og indbygget server viser forhåndsvisningen en kort fejl, der forklarer, hvordan du angiver stien eller installerer PHP, hvis der ikke kan findes noget php-program. Vejledningssiden i tilstanden Fra henviser også til PHP-downloads og viser, hvordan man starter en server.

Se også