Kako odpreti datoteko v urejevalniku iz programa Tracy? (Integracija IDE)

Ko je prikazana stran z napako, lahko kliknete na imena datotek in te se bodo odprle v urejevalniku s kazalcem na ustrezni vrstici. Datoteke lahko tudi ustvarite (akcija create file) ali v njih odpravite napake (akcija fix it). Da bi to lahko storili, morate konfigurirati brskalnik in sistem.

Tracy odpira datoteke prek naslovov URL v obliki editor://open/?file=%file&line=%line, tj. s protokolom editor://. Za to bomo registrirali svoj lasten izvajalec. To je lahko katerakoli izvedljiva datoteka, ki obdela parametre in zažene naš najljubši urejevalnik.

Naslov URL lahko spremenimo v spremenljivki Tracy\Debugger::$editor ali pa onemogočimo klik z nastavitvijo Tracy\Debugger::$editor = null.

Windows

  1. Prenesite ustrezne datoteke iz skladišča Tracy na disk.
  2. Uredite spletno stran open-editor.js in odkomentirajte ali uredite pot do svojega urejevalnika v settings:
var settings = {

	// PhpStorm
	editor: '"C:\\Program Files\\JetBrains\\PhpStorm 2018.1.2\\bin\\phpstorm64.exe" --line %line% "%file%"',
	title: 'PhpStorm',

	// NetBeans
	// editor: '"C:\\Program Files\\NetBeans 8.1\\bin\\netbeans.exe" "%file%:%line%" --console suppress',

	// Sublime Text 2
	// editor: '"C:\\Program Files\\Sublime Text 2\\sublime_text.exe" "%file%:%line%"',

	...
}

...

Bodite previdni in ohranite dvojne poševnice v poteh.

3. V sistemu registrirajte upravljalnik za protokol editor://.

To storite tako, da zaženete install.cmd. Zažeti ga morate kot skrbnik. Skripta open-editor.js bo zdaj služila protokolu editor://.

Če želite odpreti povezave, ustvarjene v drugih strežnikih, na primer produkcijskem strežniku ali strežniku Docker, v spletno mesto open-editor.js dodajte preslikavo oddaljenega v lokalni naslov URL:

	mappings: {
		// remote path: local path
		'/var/www/nette.app': 'W:\\Nette.web\\_web',
	}

Linux

  1. Prenesite ustrezne datoteke iz skladišča Tracy v imenik ~/bin.
  2. Uredite naslov open-editor.sh in v spremenljivki editor odkomentirajte ali uredite pot do svojega urejevalnika:
#!/bin/bash

# Emacs
#editor='emacs +$LINE "$FILE"'

# gVim
#editor='gvim +$LINE "$FILE"'

# gEdit
#editor='gedit +$LINE "$FILE"'

# Pluma
#editor='pluma +$LINE "$FILE"'

...

Naredite jo izvršljivo:

chmod +x ~/bin/open-editor.sh

Če urejevalnik, ki ga uporabljate, ni nameščen iz paketa, binarni program verjetno ne bo imel poti v $PATH. To lahko preprosto popravite. V imeniku ~/bin ustvarite simelno povezavo na binarno datoteko urejevalnika.

3. V sistemu registrirajte upravljalnik za protokol editor://.

To storite tako, da zaženete install.sh. Skripta open-editor.js bo zdaj servisirala protokol editor://.

macOS

Urejevalniki, kot so PhpStorm, TextMate itd., omogočajo odpiranje datotek prek posebnega naslova URL, ki ga morate nastaviti:

// PhpStorm
Tracy\Debugger::$editor = 'phpstorm://open?file=%file&line=%line';
// TextMate
Tracy\Debugger::$editor = 'txmt://open/?url=file://%file&line=%line';
// MacVim
Tracy\Debugger::$editor = 'mvim://open/?url=file://%file&line=%line';
// Visual Studio Code
Tracy\Debugger::$editor = 'vscode://file/%file:%line';

Če uporabljate samostojni Tracy, postavite vrstico pred Tracy\Debugger::enable(), če uporabljate Nette, pred $configurator->enableTracy() v Bootstrap.php.

Na žalost ukrepa create file ali fix it ne delujeta v operacijskem sistemu MacOS.

Predstavitveni program

Odpravljanje napake:

Ustvarjanje nove datoteke:

Odpravljanje težav

  • V brskalniku Firefox boste morda morali dovoliti izvajanje protokola po meri v nastavitvah about:config tako, da nastavite network.protocol-handler.expose.editor na false in network.protocol-handler.expose-all na true. Vendar bi moralo biti to privzeto dovoljeno.
  • Če vse skupaj ne deluje takoj, ne zganjajte panike. Poskusite osvežiti stran, ponovno zaženite brskalnik ali računalnik. To bi moralo pomagati.
  • Če želite popraviti, glejte tukaj:

    Vhodna napaka: Morda ste datoteko “.js” povezali z drugo aplikacijo in ne z gonilnikom JScript.

Od različice 77 brskalnika Google Chrome se ob odprtju urejevalnika prek povezave ne bo več prikazovalo potrditveno polje “Vedno odpiraj te vrste povezav v povezani aplikaciji”. Ovinek za Windows: ustvarite datoteko fix.reg:

Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\URLWhitelist]
"123"="editor://*"

Uvozite jo z dvojnim klikom in znova zaženite Chrome.

Če imate več težav ali vprašanj, vprašajte na forumu.