¿Cómo abrir un archivo en el editor desde Tracy? (Integración IDE)
Cuando se muestra la página de errores, puede hacer clic en los nombres de los archivos y se abrirán en su
editor con el cursor en la línea correspondiente. También se pueden crear archivos (acción create file
)
o corregir errores en ellos (acción fix it
). Para ello, es necesario configurar el navegador y el sistema.
Tracy abre ficheros a través de URLs de la forma editor://open/?file=%file&line=%line
, es decir, con el
protocolo editor://
. Registraremos nuestro propio manejador para éste. Este puede ser cualquier archivo ejecutable
que procese los parámetros e inicie nuestro editor favorito.
Podemos cambiar la URL en la variable Tracy\Debugger::$editor
, o desactivar el click-through configurando
Tracy\Debugger::$editor = null
.
Windows
- Descargue los archivos apropiados del repositorio Tracy al disco.
- Edite
open-editor.js
y descomente o edite la ruta a su editor ensettings
:
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%"',
...
}
...
Ten cuidado y mantén las barras dobles en las rutas.
3. Registre el manejador para el protocolo editor://
en el sistema.
Esto se hace ejecutando install.cmd
. **Necesitas ejecutarlo como Administrador. El script
open-editor.js
ahora servirá al protocolo editor://
.
Para abrir enlaces generados en otros servidores, como un servidor de producción o Docker, añada una asignación de URL
remota a local a open-editor.js
:
mappings: {
// remote path: local path
'/var/www/nette.app': 'W:\\Nette.web\\_web',
}
Linux
- Descargue los archivos apropiados del
repositorio Tracy al directorio
~/bin
. - 2. Edite
open-editor.sh
y descomente o edite la ruta a su editor en la variableeditor
:
#!/bin/bash
# Emacs
#editor='emacs +$LINE "$FILE"'
# gVim
#editor='gvim +$LINE "$FILE"'
# gEdit
#editor='gedit +$LINE "$FILE"'
# Pluma
#editor='pluma +$LINE "$FILE"'
...
Hazlo ejecutable:
chmod +x ~/bin/open-editor.sh
Si el editor que está utilizando no está instalado desde el paquete, el binario probablemente no tendrá una
ruta en $PATH
. Esto puede corregirse fácilmente. En el directorio ~/bin
, crea un enlace simbólico en
el binario del editor.
3. Registre el manejador para el protocolo editor://
en el sistema.
Esto se hace ejecutando install.sh
. El script open-editor.js
servirá ahora el protocolo
editor://
.
macOS
Editores como PhpStorm, TextMate, etc. te permiten abrir archivos a través de una URL especial, que sólo tienes que configurar:
// 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';
Si está usando Tracy independiente, ponga la línea antes de Tracy\Debugger::enable()
, si es Nette, antes de
$configurator->enableTracy()
en Bootstrap.php
.
Lamentablemente, las acciones create file
o fix it
no funcionan en macOS.
Demostraciones
Corrección de errores:
Creación de un nuevo archivo:
Solución de problemas
- En Firefox puede que necesite permitir la
ejecución de protocolos personalizados en about:config estableciendo
network.protocol-handler.expose.editor
comofalse
ynetwork.protocol-handler.expose-all
comotrue
. Sin embargo, debería estar permitido por defecto. - Si no funciona todo inmediatamente, no te asustes. Intenta actualizar la página, reinicia el navegador o el ordenador. Eso debería ayudar.
- Consulte aquí para
solucionarlo:
Error de entrada: No hay motor de script para la extensión de archivo „.js“ Tal vez usted asoció el archivo „.js“ a otra aplicación, no al motor JScript.
A partir de la versión 77 de Google Chrome ya no aparecerá la casilla „Abrir siempre este tipo de enlaces en la
aplicación asociada“ cuando se abra el editor a través de un enlace. Solución para Windows: cree el archivo
fix.reg
:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\URLWhitelist]
"123"="editor://*"
Imórtelo haciendo doble clic y reinicie Chrome.
En caso de más problemas o preguntas, pregunte en el foro.