O que é o formato de ficheiro JSX?
Um arquivo .jsx no ecossistema Adobe é um script de automação ExtendScript - um programa baseado em JavaScript para controlar aplicativos da Adobe Creative Cloud, como Photoshop, Illustrator, InDesign e After Effects. O ExtendScript é baseado no ECMAScript 3 (não no ES6+ moderno) e o estende com um DOM específico da Adobe (objetos como app, document, layer), além de classes de utilitários como File, Folder e ScriptUI para construir interfaces de diálogo simples.
Os scripts normalmente começam com uma diretiva #target (ex: #target photoshop) que informa ao mecanismo ExtendScript qual aplicativo endereçar. Tarefas comuns incluem exportação em lote de arquivos, redimensionamento de camadas, geração de PDFs a partir de modelos e automação de fluxos de trabalho de produção repetitivos.
A extensão .jsx também é usada pelo React para arquivos de origem JSX (JavaScript XML) - um contexto completamente diferente. Ao encontrar um arquivo .jsx, o projeto ao redor (uma pasta de scripts da Adobe vs. um projeto de desenvolvimento web) determina seu significado.
A forma compilada e ofuscada de um arquivo ExtendScript é o .jsxbin, que oculta o código-fonte enquanto permanece executável pelo mecanismo da Adobe. Os scripts podem ser executados a partir do menu Scripts de um aplicativo, por meio da extensão VS Code ExtendScript Debugger ou através de mensagens entre aplicativos BridgeTalk.
A Adobe está substituindo gradualmente o ExtendScript pelo UXP (Unified Extensibility Platform) usando mecanismos JavaScript modernos, embora o ExtendScript continue sendo suportado na maioria dos aplicativos atuais da Creative Cloud.
Segurança e proteção
RISCO: MEDIUMUm .jsx é código executável. O ExtendScript pode ler, gravar e excluir arquivos no disco (via objetos File/Folder) e automatizar o aplicativo host, portanto, executar um .jsx de uma fonte não confiável pode ser prejudicial. Inspecione o script em um editor de texto primeiro, tenha cuidado com operações de sistema de arquivos ou rede e habilite apenas «Permitir que os Scripts Gravem Arquivos e Acessem a Rede» para scripts em que você confia. O código-fonte React .jsx também é apenas código - a mesma cautela se aplica antes de executar ferramentas de build nele.
Detalhes do formato
em resumo- React JSX (JavaScript XML) - Arquivos de origem para componentes React misturando JavaScript com marcação semelhante a XML; transpilados pelo Babel, não relacionados à Adobe.
- JavaScript genérico com sintaxe JSX - Qualquer arquivo de toolchain JS usando sintaxe JSX (Preact, Solid, etc.); um arquivo de origem de desenvolvedor, não um script da Adobe.
Programas que abrem arquivos JSX
Detalhes técnicos
especificação profunda| Codificação | Texto, UTF-8 (compatível com BOM); arquivos legados podem usar ASCII ou Latin-1 |
| Contêiner | Texto simples |
| Criptografia | Nenhuma (a variante compilada/ofuscada é .jsxbin) |
| Tamanho típico | 1 KB - algumas centenas de KB |
| Linguagem de script | ECMAScript 3 com extensões Adobe DOM (objetos app, document, layer) e ScriptUI para construção de diálogos |
| Diretiva de destino | A linha opcional de pré-processador #target <appname> ou //@target direciona o script para o aplicativo Adobe correto |
| Forma compilada | .jsxbin - forma binária codificada/protegida que oculta o código-fonte enquanto permanece executável pelo mecanismo Adobe |
| SO associado | Windows, macOS |
| Ambiente de execução | Mecanismo Adobe ExtendScript incorporado em aplicativos Creative Cloud; depurado via extensão VS Code ExtendScript Debugger |
| Substituído por | Adobe UXP (Unified Extensibility Platform) com mecanismos JavaScript modernos em aplicativos Creative Cloud mais recentes |
| Colisão de nomes | .jsx também é usado para arquivos de origem React JSX (JavaScript XML) - um formato completamente separado sem relação com a Adobe |
| Lançado | Early 2000s (Adobe Creative Suite scripting; ExtendScript based on ECMAScript 3) |
| Versão mais recente | ExtendScript (ECMAScript 3-based) with the ExtendScript Toolkit/VS Code debugger; modern UXP is its successor |
| Padrão aberto | Sim · livre de royalties |
| Especificação | extendscript.docsforadobe.dev |
Conversões de JSX
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos JSX.