Como abrir um arquivo em Editor da Tracy? (Integração IDE)
Quando a página de erro for exibida, você pode clicar nos nomes dos arquivos e eles serão abertos em seu
editor com o cursor na linha correspondente. Os arquivos também podem ser criados (ação create file
) ou
corrigidos com bugs (ação fix it
). Para isso, você precisa configurar o navegador e o sistema.
Tracy abre arquivos via URLs do formulário editor://open/?file=%file&line=%line
, ou seja, com o protocolo
editor://
. Registraremos nosso próprio manipulador para este. Este pode ser qualquer arquivo executável que
processe os parâmetros e inicie nosso editor favorito.
Você pode alterar a URL na variável Tracy\Debugger::$editor
, ou desativar o click-through definindo
Tracy\Debugger::$editor = null
.
Windows
- Faça o download dos arquivos apropriados do repositório Tracy para o disco.
- Editar
open-editor.js
e descomentar ou editar o caminho para seu editor emsettings
:
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%"',
...
}
...
Tenha cuidado e mantenha os cortes duplos nos caminhos.
3. Registre o manipulador para o protocolo editor://
no sistema.
Isto é feito através da install.cmd
. ** Você precisa executá-lo como Administrador.** O script
open-editor.js
servirá agora ao protocolo editor://
.
Para abrir links gerados em outros servidores, como um servidor de produção ou o Docker, adicione um mapeamento de URL
remoto para local em open-editor.js
:
mappings: {
// remote path: local path
'/var/www/nette.app': 'W:\\Nette.web\\_web',
}
Linux
- Baixe os arquivos apropriados do repositório
Tracy para o diretório
~/bin
. - Editar
open-editor.sh
e descomentar ou editar o caminho para seu editor na variáveleditor
:
#!/bin/bash
# Emacs
#editor='emacs +$LINE "$FILE"'
# gVim
#editor='gvim +$LINE "$FILE"'
# gEdit
#editor='gedit +$LINE "$FILE"'
# Pluma
#editor='pluma +$LINE "$FILE"'
...
Torná-lo executável:
chmod +x ~/bin/open-editor.sh
Se o editor que você está usando não estiver instalado a partir do pacote, o binário provavelmente não
terá um caminho em $PATH
. Isto pode ser facilmente corrigido. No diretório ~/bin
, crie um link
simbólico no binário do editor.
3. Registre o manipulador para o protocolo editor://
no sistema.
Isto é feito através da install.sh
. O script open-editor.js
servirá agora ao protocolo
editor://
.
macOS
Editores como PhpStorm, TextMate, etc. permitem que você abra arquivos através de uma URL especial, que você só precisa definir:
// 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';
Se você estiver usando Tracy autônomo, coloque a linha antes de Tracy\Debugger::enable()
, se Nette, antes do
$configurator->enableTracy()
em Bootstrap.php
.
Infelizmente, as ações create file
ou fix it
não funcionam em macOS.
Demos
Consertando o bug:
Criação de um novo arquivo:
Solução de problemas
- No Firefox você pode precisar permitir a
execução do protocolo personalizado em about:config config config config config configurando
network.protocol-handler.expose.editor
parafalse
enetwork.protocol-handler.expose-all
paratrue
. Deve ser permitido por padrão, no entanto. - Se não estiver tudo funcionando imediatamente, não entre em pânico. Tente atualizar a página, reinicie o navegador ou o computador. Isso deve ajudar.
- Veja aqui para
consertar:
Erro de entrada: Não existe um mecanismo de script para extensão de arquivo “.js” Talvez você tenha associado o arquivo “.js” a outro aplicativo, não ao mecanismo JScript.
A partir da versão 77 do Google Chrome você não verá mais a caixa de seleção “Sempre abra estes tipos de links no
aplicativo associado” quando o editor for aberto através de um link. Solução para o Windows: criar arquivo
fix.reg
:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome\URLWhitelist]
"123"="editor://*"
Importe-o clicando duas vezes e reinicie o Cromo.
Em caso de mais problemas ou perguntas, pergunte no fórum.