Ga naar inhoud

Plug-in HTML-voorbeeld

Een live voorbeeld met volledige getrouwheid van het actieve HTML- (en PHP-)document, weergegeven met een echte browserengine (QtWebEngine) in een dokbaar paneel. Anders dan het Markdown-voorbeeld geeft dit CSS, JavaScript, weblettertypen en al het overige precies weer zoals een browser dat zou doen.

Beschikbaarheid — niet elke download bevat het

Het HTML-voorbeeld wordt aangedreven door QtWebEngine, een volledige browserengine, en is navenant groot. Het is daarom optioneel, en welke download u hebt bepaalt of u het krijgt.

  • macOS — OctoEdit wordt uitgebracht als twee pakketten: één met het HTML-voorbeeld en een slank pakket zonder. Kies de download die zegt dat het HTML-voorbeeld erbij zit, en het voorbeeld is er zodra u de editor start. Er is geen uitbreiding om achteraf te installeren: een pakket zonder het voorbeeld kan het later niet alsnog krijgen, dus download in dat geval het andere.
  • Windows — het voorbeeld kan ook later aan een bestaande installatie worden toegevoegd, als een aparte download voor het HTML-voorbeeld die u uitpakt in de map waarin OctoEdit geïnstalleerd is, waarna u de editor herstart.

Ontbreekt Beeld ▸ HTML-voorbeeld in het menu, dan bevat uw exemplaar het voorbeeld niet. Het Markdown-voorbeeld heeft geen browserengine nodig en is altijd beschikbaar.

Zelf bouwen vanaf de broncode: het voorbeeld zit achter de CMake-optie MTE_ENABLE_HTML_PREVIEW — zie BUILDING.md voor notities over pakketten en licenties.

Waar u het vindt

Beeld ▸ HTML-voorbeeld opent (of sluit) het voorbeelddok voor het huidige tabblad.

Hoe het zich gedraagt

  • Live weergave. Het voorbeeld wordt opnieuw weergegeven terwijl u typt (met vertraging; die wordt voor heel grote bestanden soepeler).
  • Volledige getrouwheid. Stijlbladen, scripts, afbeeldingen en andere bronnen laden ten opzichte van de map van het document, zodat een pagina eruitziet zoals hij in een browser zou doen.
  • Koppelingen naar mappen. Klikken op een koppeling die naar een lokale map wijst laadt het indexdocument van die map (index.html / index.htm / index.xhtml) in plaats van een maplijst.
  • In browser openen. De werkbalk opent het bestand op de schijf (of, bij de PHP-servermodi hieronder, de live URL) in uw standaardbrowser.
  • Paneelgrootte. Het voorbeeld houdt een aandeel van het venster in plaats van een vaste breedte, dus het groeit en krimpt mee met het venster — zie Opgeslagen indeling.

Één flikkering bij vensterweergave via de CPU

Het voorbeeld brengt een browserengine in het venster van de editor, en met Vensterweergave op CPU moet het venster opnieuw worden aangemaakt om er plaats voor te maken. Het venster van de editor flikkert daarom één keer — de eerste keer dat u het HTML-voorbeeld in een sessie opent, en daarna nooit meer. De standaard, GPU, voorkomt dat volledig; zie Voorkeuren ▸ Algemeen ▸ Vensterweergave.

Zichtbaarheid van het voorbeeld

De zichtbaarheid van het voorbeeld wordt per bestand onthouden, zowel binnen een sessie als over herstarts heen:

  • Webbestanden (.html, .htm, .xhtml, en .php / .phtml / .php3 / .php4) openen het voorbeeld automatisch de eerste keer dat u ze bekijkt.
  • Andere bestanden doen dat niet — maar u kunt het voorbeeld op elk bestand openen met Beeld ▸ HTML-voorbeeld, en het geeft dat bestand als HTML weer.
  • Binnen een sessie wordt uw keuze voor een tabblad hersteld wanneer u ernaar terugkeert.
  • Over herstarts heen wordt uw uitdrukkelijke keuze voor een bestand onthouden: een handmatige sluiting blijft gesloten de volgende keer dat u dat bestand opent, en een voorbeeld dat u opende op een bestand dat niet automatisch zou openen gaat weer open. Bestanden die u nooit uitdrukkelijk hebt aangeraakt volgen elke keer de standaard van het automatisch openen.

PHP bekijken

PHP draait op de server, dus QtWebEngine kan het niet rechtstreeks uitvoeren. Kies onder Voorkeuren ▸ Plug-ins ▸ HTML-voorbeeld hoe .php-bestanden behandeld worden:

Modus Wat die doet Het beste voor
Uitgeschakeld Toont een pagina met instructies; voert nooit iets uit en haalt nooit iets op. Het PHP-voorbeeld uitzetten.
Uitvoeren met PHP (opdrachtregel) Laat het document door het lokale programma php lopen en geeft de uitvoer weer. Draait onder de CLI-SAPI van PHP. Sjablonen / losstaande bestanden die HTML uitvoeren.
Uitvoeren met PHP (ingebouwde server) Bedient het document via de ingebouwde webserver van PHP (php -S) die de editor voor u start en stopt. Draait onder de web-SAPI. Volledige pagina's — phpinfo(), $_SERVER, sessies, routering.
Een eigen server gebruiken (URL) Koppelt het geopende bestand aan een URL op een server die u draait (Apache, nginx, Docker, php artisan serve, …). Een bestaande lokale ontwikkelomgeving.

Het pad naar het Uitvoerbaar PHP-bestand en Automatisch bijwerken tijdens het typen gelden voor zowel de modus opdrachtregel als ingebouwde server. Laat het pad leeg om uw PATH en de gebruikelijke installatielocaties te doorzoeken (op macOS erft een via Finder gestarte toepassing uw shell-PATH niet, dus stel het volledige pad in, bijvoorbeeld /opt/homebrew/bin/php).

Opdrachtregel tegenover ingebouwde server

Deze twee modi draaien beide het lokale programma php, maar in verschillende omgevingen (SAPI's), en dat verandert wat er werkt:

  • Opdrachtregel (CLI-SAPI). Snel en eenvoudig — het toont eenvoudigweg wat het script afdrukt. Maar phpinfo() verschijnt als platte tekst, en webfunctionaliteit als $_SERVER, sessies en routering is beperkt of leeg. Prima voor bestanden die vooral HTML uitstoten.
  • Ingebouwde server (web-SAPI). De editor start een kleine php -S 127.0.0.1:<port> met de map van uw bestand als wortel en laadt de pagina over HTTP, zodat die precies als bij een echte server weergegeven wordt: phpinfo() is een opgemaakte HTML-pagina, $_SERVER is gevuld, en sessies en verzoeken om bronnen en deelbronnen werken allemaal.

  • De server wordt pas gestart wanneer u in deze modus voor het eerst een .php-bestand bekijkt, wordt over weergaven heen hergebruikt, herstart wanneer u naar een bestand in een andere map overschakelt, en gestopt wanneer u de editor sluit of de modus verlaat.

  • Hij bindt zich alleen aan 127.0.0.1, dus hij is nooit vanaf het netwerk bereikbaar.
  • Niet-opgeslagen bewerkingen worden ook getoond: uw levende buffer wordt naar een tijdelijk bestand in de map van het document geschreven (zodat __DIR__ en relatieve include/require correct opgelost worden) en dat is wat er bediend wordt. Het tijdelijke bestand wordt bij elke weergave vervangen en verwijderd wanneer u afsluit of van modus wisselt.

Tip

Verschijnt een PHP-pagina als tekst in plaats van als weergegeven pagina, schakel dan van opdrachtregel naar ingebouwde server — dat is het verschil tussen de CLI- en de web-SAPI, geen fout.

Een server gebruiken die u zelf draait (URL)

Draait u PHP al achter een webserver, wijs het voorbeeld daar dan naartoe:

  • Basis-URL — de wortel van uw server, bijvoorbeeld http://127.0.0.1:8000.
  • Documenthoofdmap — de lokale map die op die basis-URL bediend wordt. Het geopende bestand wordt aan een URL daaronder gekoppeld. Laat het leeg om het bestand op naam vanaf de basis-URL te bedienen. Ligt het bestand buiten de documentwortel, dan meldt het voorbeeld dat, zodat u de koppeling kunt repareren.

Wanneer PHP niet gevonden wordt

Kan er in de modus opdrachtregel of ingebouwde server geen php-programma gevonden worden, dan toont het voorbeeld een korte fout die uitlegt hoe u het pad instelt of PHP installeert. De instructiepagina van de modus Uitgeschakeld verwijst ook naar PHP-downloads en laat zien hoe u een server start.

Zie ook