Hogyan nyissunk meg egy fájlt a Tracy szerkesztőben? (IDE integráció)
Amikor a hibaoldal megjelenik, a fájlnevekre kattintva megnyílnak a szerkesztőprogramban, a kurzor a
megfelelő soron lesz. A fájlokat létre is lehet hozni (művelet create file
) vagy hibát javítani bennük
(művelet fix it
). Ehhez a böngészőt és a rendszert kell beállítani.
A Tracy a editor://open/?file=%file&line=%line
formájú URL-eken keresztül, azaz a editor://
protokollal nyitja meg a fájlokat. Ehhez saját kezelőt fogunk regisztrálni. Ez lehet bármilyen futtatható fájl, amely
feldolgozza a paramétereket és elindítja a kedvenc szerkesztőnket.
A Tracy\Debugger::$editor
változóban megváltoztathatjuk az URL-t, vagy a
Tracy\Debugger::$editor = null
beállításával letilthatjuk az átkattintást.
Windows
- Töltse le a megfelelő fájlokat a Tracy tárolóból a lemezre.
- Szerkessze meg a
open-editor.js
címet, és vegye ki asettings
címen a szerkesztőhöz vezető elérési utat, vagy szerkessze azt:
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%"',
...
}
...
Legyen óvatos, és tartsa meg a kettős kötőjeleket az elérési utakban.
3. Regisztrálja a editor://
protokoll kezelőjét a rendszerben.
Ez a install.cmd
futtatásával történik. Adminisztrátorként kell futtatnia. A
open-editor.js
szkript mostantól a editor://
protokollt fogja kiszolgálni.
Ahhoz, hogy más szervereken, például egy termelési szerveren vagy Dockerben létrehozott hivatkozásokat nyisson meg, adjon
hozzá egy távoli helyi URL-t leképezőt a open-editor.js
címhez:
mappings: {
// remote path: local path
'/var/www/nette.app': 'W:\\Nette.web\\_web',
}
Linux
- Töltse le a megfelelő fájlokat a Tracy
repositoryból a
~/bin
könyvtárba. - Szerkessze a
open-editor.sh
címet, és vegye ki aeditor
változóból a szerkesztőhöz vezető elérési utat, vagy szerkessze azt:
#!/bin/bash
# Emacs
#editor='emacs +$LINE "$FILE"'
# gVim
#editor='gvim +$LINE "$FILE"'
# gEdit
#editor='gedit +$LINE "$FILE"'
# Pluma
#editor='pluma +$LINE "$FILE"'
...
Tegye futtathatóvá:
chmod +x ~/bin/open-editor.sh
Ha az Ön által használt szerkesztő nem a csomagból van telepítve, a bináris verzióban valószínűleg nem
lesz elérési útvonal a $PATH
címen. Ez könnyen korrigálható. A ~/bin
könyvtárban hozzon létre
egy szimlinket a szerkesztő binárisára.
3. Regisztrálja a editor://
protokoll kezelőjét a rendszerben.
Ez a install.sh
futtatásával történik. A open-editor.js
szkript mostantól a
editor://
protokollt fogja kiszolgálni.
macOS
Az olyan szerkesztők, mint a PhpStorm, TextMate stb. lehetővé teszik a fájlok megnyitását egy speciális URL-en keresztül, amelyet csak be kell állítanod:
// 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';
Ha önálló Tracy-t használ, akkor a sort a Tracy\Debugger::enable()
, ha Nette-t, akkor a
$configurator->enableTracy()
elé kell tenni a Bootstrap.php
.
Sajnos a create file
vagy a fix it
műveletek nem működnek macOS alatt.
Demók
Hiba javítása:
Új fájl létrehozása:
Hibaelhárítás
- A Firefoxban előfordulhat, hogy engedélyeznie kell az egyéni protokollok
végrehajtását az about:configban a
network.protocol-handler.expose.editor
beállításával afalse
és anetwork.protocol-handler.expose-all
beállításával atrue
címre. Alapértelmezés szerint azonban engedélyezni kell. - Ha nem működik minden azonnal, ne ess pánikba. Próbálja meg frissíteni az oldalt, indítsa újra a böngészőt vagy a számítógépet. Ennek segítenie kell.
- A javításhoz lásd itt:
Input Error: js" fájlt egy másik alkalmazáshoz társította, nem pedig a JScript motorhoz.
A Google Chrome 77-es verziójától kezdve már nem jelenik meg a “Az ilyen típusú linkeket mindig a társított
alkalmazásban nyissa meg” jelölőnégyzet, ha a szerkesztő egy hivatkozáson keresztül nyílik meg. Megoldás Windows
esetén: hozzon létre fájlt fix.reg
:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\URLWhitelist]
"123"="editor://*"
Importálja azt dupla kattintással, és indítsa újra a Chrome-ot.
További problémák vagy kérdések esetén kérdezzen a fórumon.