NotePad Elite
App Store
← Voltar ao suporte

NOTEPAD ELITE / Centro de suporte

Programadores e criadores

Personaliza o NotePad Elite e partilha o que criares. Estes guias explicam os formatos de recursos que a app pode importar, com pequenos exemplos para descarregar, editar e testar.

Descarregar o kit inicial para criadores

Os nomes dos menus podem variar com a língua selecionada e a versão da app. Usa o comando equivalente no teu dispositivo.

Criar um tema

Um tema é um documento XML com GlobalStyles e, opcionalmente, LexerStyles. Parte de um tema exportado quando precisares de cobertura completa das linguagens. O modelo Ocean é deliberadamente pequeno: define uma paleta azul para o editor e alguns estilos de Python.

As cores usam seis algarismos hexadecimais sem #. As entradas globais WidgetStyle descrevem a superfície do editor, margem, cursor, seleção e linha atual. Um LexerType agrupa estilos da linguagem; os valores styleID pertencem a esse analisador léxico e não podem ser deduzidos de outra linguagem. fontStyle é uma máscara de bits: 1 negrito, 2 itálico, 4 sublinhado; 0 é normal.

  1. Descarrega Elite-Ocean.xml e guarda uma cópia antes de editar.
  2. Em Definições, abre Importar definições e temas → Importar tema XML. A importação ativa uma cópia na biblioteca da app; o ficheiro original não é alterado.
  3. Abre exemplos de Python e texto simples. Verifica texto, seleção, cursor, margens e contraste em ambientes claros e escuros.
  4. Abre Temas → Editar estilos, usa Guardar uma cópia para aperfeiçoar o resultado e depois Exportar XML para o distribuir.
Elite-Ocean.xmlDescarregar ↓
<?xml version="1.0" encoding="UTF-8"?>
<NotepadPlus>
  <GlobalStyles>
    <WidgetStyle name="Default Style" styleID="32" fgColor="DCEBFF" bgColor="102C54" fontName="Menlo" fontSize="14" fontStyle="0" />
    <WidgetStyle name="Line number margin" styleID="33" fgColor="88A9D2" bgColor="102C54" />
    <WidgetStyle name="Caret colour" styleID="2069" fgColor="62ADFF" />
    <WidgetStyle name="Selected text colour" styleID="0" fgColor="FFFFFF" bgColor="245B96" />
    <WidgetStyle name="Current line background colour" styleID="0" bgColor="15365F" />
  </GlobalStyles>
  <LexerStyles>
    <LexerType name="python" desc="Python" ext="py pyw">
      <WordsStyle name="KEYWORD" styleID="5" fgColor="84C1FF" bgColor="102C54" fontStyle="1" />
      <WordsStyle name="COMMENTLINE" styleID="1" fgColor="8BA6C8" bgColor="102C54" fontStyle="2" />
    </LexerType>
  </LexerStyles>
</NotepadPlus>

Definir uma linguagem com UDL

Um ficheiro XML UDL descreve extensões, grupos de palavras-chave, comentários, delimitadores e estilos. Usa o editor integrado de linguagens do utilizador para uma definição mais completa; o modelo apenas realça task, end, true e false em ficheiros .edemo.

Importa Elite-Demo.xml como linguagem do utilizador e abre elite-demo.edemo. Se necessário, seleciona Elite Demo explicitamente. As extensões são separadas por espaços e escritas sem o ponto inicial. Exporta uma cópia depois dos testes.

Elite-Demo.xmlDescarregar ↓
<?xml version="1.0" encoding="UTF-8"?>
<NotepadPlus>
  <UserLang name="Elite Demo" ext="edemo" udlVersion="2.1">
    <Settings>
      <Global caseIgnored="no" allowFoldOfComments="no" foldCompact="no" forcePureLC="0" decimalSeparator="0" />
      <Prefix Keywords1="no" />
    </Settings>
    <KeywordLists>
      <Keywords name="Keywords1">task end true false</Keywords>
    </KeywordLists>
    <Styles>
      <WordsStyle name="DEFAULT" styleID="0" fgColor="102C54" bgColor="F8FBFF" fontStyle="0" />
      <WordsStyle name="KEYWORDS1" styleID="4" fgColor="1559AD" bgColor="F8FBFF" fontStyle="1" />
    </Styles>
  </UserLang>
</NotepadPlus>
elite-demo.edemo ↓

Criar um dicionário de conclusão automática

O XML de API de conclusão automática lista entradas KeyWord. Uma entrada de função pode conter elementos Overload e Param para sugestões de chamada. Descreve sugestões; não implementa essas funções.

O nome do ficheiro importado seleciona o recurso da linguagem. Mantém o nome python.xml no exemplo e seleciona Python durante os testes. Mudar apenas AutoComplete language não chega para definir outra linguagem. Guarda o dicionário existente antes de importares um substituto.

python.xmlDescarregar ↓
<?xml version="1.0" encoding="UTF-8"?>
<NotepadPlus>
  <AutoComplete language="python">
    <Environment ignoreCase="no" startFunc="(" stopFunc=")" paramSeparator="," />
    <KeyWord name="save_note" func="yes">
      <Overload retVal="None" descr="Save a note to the selected path.">
        <Param name="path: str" />
        <Param name="text: str" />
      </Overload>
    </KeyWord>
    <KeyWord name="project_name" />
  </AutoComplete>
</NotepadPlus>

Adicionar regras para a lista de funções

Um analisador de funções usa expressões regulares para identificar declarações e extrair nomes. O exemplo encontra declarações task em Elite Demo. Importa elite-demo-functions.xml e overridemap.xml através do importador de regras de funções.

O mapa de substituição associa o nome UDL Elite Demo a elite-demo-functions.xml. Se já tens um mapa, junta a associação em vez de perderes os outros mapeamentos. Testa com o exemplo .edemo e com um ficheiro sem declarações.

elite-demo-functions.xmlDescarregar ↓
<?xml version="1.0" encoding="UTF-8"?>
<NotepadPlus>
  <functionList>
    <parser id="elite-demo" displayName="Elite Demo">
      <function mainExpr="(?m)^task\h+\w+">
        <functionName><nameExpr expr="task\h+\K\w+" /></functionName>
      </function>
    </parser>
  </functionList>
</NotepadPlus>
overridemap.xml ↓

Partilhar macros úteis

Grava uma pequena edição repetível e testa-a numa cópia. Dá um nome descritivo à macro e gere-a na biblioteca. As exportações nativas usam JSON com versão; as portáveis usam shortcuts.xml para o subconjunto de ações suportadas.

Mantém o formato exportado pela app. Não edites manualmente os identificadores internos nem assumas que todas as ações passam entre perfis. Inclui o modo de seleção esperado, exemplo de entrada, exemplo de saída e versão da app. Os registos importados que não possam executar-se devem ser revistos em vez de apresentados como suportados.

Publicar um catálogo UDL

Um catálogo personalizado é JSON com schemaVersion 1 e um array entries. Cada entrada contém um id único, name, author, uma url HTTPS para o XML em bruto e uma licença. Um sha256 opcional contém o resumo SHA-256 de 64 algarismos do recurso.

O catálogo descarregável neste site aponta para o verdadeiro XML Elite Demo e inclui a sua soma de verificação. Para publicares o teu catálogo, substitui a entrada e o URL pelo teu recurso, recalcula o resumo depois de editar, aloja ambos em HTTPS e testa a pré-visualização e instalação do catálogo na app.

catalog.jsonDescarregar ↓
{
  "schemaVersion": 1,
  "entries": [
    {
      "id": "elite-demo",
      "name": "Elite Demo",
      "author": "NotePad Elite",
      "url": "https://notepadelite.pages.dev/resources/Elite-Demo.xml",
      "license": "MIT",
      "sha256": "840e13fc62289ec0edf66a525370b30626d400a46e0fb559c4fb9e9c268f6fee"
    }
  ]
}

Partilhar projetos e sessões

Um XML de projeto agrupa referências a ficheiros e pastas. Usa NotepadPlus como raiz e elementos Project, Folder e File com atributos name. Usa o painel de projetos para criar, importar e exportar a estrutura em vez de dependeres de caminhos absolutos privados.

O projeto exportado contém referências, não cópias dos documentos. Explica como mapear caminhos e autorizar uma pasta num novo dispositivo. Remove caminhos pessoais das sessões partilhadas, inclui uma pasta de exemplo e deixa os documentos privados fora do pacote.

Ligar um servidor de linguagem

As ferramentas de análise de código podem ligar a um servidor de linguagem escolhido por ti através de LSP sobre TCP ou TLS. Configura anfitrião e porta, autoriza a pasta local do projeto e mapeia o seu URI se o servidor usar outro caminho. A app não instala nem inicia o servidor por ti.

A ligação pode enviar texto e caminhos dos documentos para o servidor quando pedes ações de linguagem. Explica a configuração do servidor, a linguagem suportada, o transporte e as práticas de privacidade. Usa o índice local do projeto quando só precisares de procurar símbolos sem ligação.

Preparar e partilhar o teu trabalho

Publica um recurso com nome claro, README, autor, versão, licença, versões da app suportadas, passos de instalação e um pequeno exemplo. Inclui uma captura de ecrã para um tema e entradas/saídas esperadas para macros ou regras de análise.

Confirma que podes redistribuir qualquer material de terceiros incluído. Remove caminhos pessoais, credenciais e documentos privados. Este site oferece documentação e recursos iniciais para descarregar, não uma galeria de envios: partilha o teu repositório ou URL de download, ou envia a ligação do recurso por email ao suporte.

  1. Testa a importação, seleciona o recurso e verifica o efeito no exemplo fornecido.
  2. Testa texto acentuado e um ficheiro vazio; verifica nomes longos e contraste claro/escuro.
  3. Exporta o recurso final a partir da app, documenta os limites e adiciona um registo de alterações.
  4. Partilha o URL, a licença e o tipo de recurso para que outros saibam o que estão a instalar.

Contactar o suporte

Perguntas, relatos de erros, pedidos de privacidade ou recursos da comunidade: escreve-nos. Inclui a versão da app, o dispositivo e os passos para reproduzir o problema. Não envies palavras-passe, chaves ou documentos privados.

notepadelite@outlook.com Programador: Daniel Ortega Del Casar