Merge CONTRIBUTING.md
This commit is contained in:
commit
8d35576a36
15 changed files with 263 additions and 34 deletions
2
LICENSE
2
LICENSE
|
@ -1,4 +1,4 @@
|
|||
Copyright (c) 2014 GitHub Inc.
|
||||
Copyright (c) 2016 GitHub Inc.
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
|
|
|
@ -79,3 +79,7 @@ forums
|
|||
|
||||
Check out [awesome-electron](https://github.com/sindresorhus/awesome-electron)
|
||||
for a community maintained list of useful example apps, tools and resources.
|
||||
|
||||
## License
|
||||
|
||||
MIT © 2016 Github
|
||||
|
|
|
@ -21,6 +21,10 @@ namespace atom {
|
|||
|
||||
namespace {
|
||||
|
||||
void FreeNodeBufferData(char* data, void* hint) {
|
||||
delete[] data;
|
||||
}
|
||||
|
||||
void RunCallbackInUI(
|
||||
const AtomBlobReader::CompletionCallback& callback,
|
||||
char* blob_data,
|
||||
|
@ -32,7 +36,8 @@ void RunCallbackInUI(
|
|||
v8::HandleScope handle_scope(isolate);
|
||||
if (blob_data) {
|
||||
v8::Local<v8::Value> buffer = node::Buffer::New(isolate,
|
||||
blob_data, static_cast<size_t>(size)).ToLocalChecked();
|
||||
blob_data, static_cast<size_t>(size), &FreeNodeBufferData, nullptr)
|
||||
.ToLocalChecked();
|
||||
callback.Run(buffer);
|
||||
} else {
|
||||
callback.Run(v8::Null(isolate));
|
||||
|
|
|
@ -71,7 +71,8 @@ void WindowList::RemoveObserver(WindowListObserver* observer) {
|
|||
void WindowList::CloseAllWindows() {
|
||||
WindowVector windows = GetInstance()->windows_;
|
||||
for (const auto& window : windows)
|
||||
window->Close();
|
||||
if (!window->IsClosed())
|
||||
window->Close();
|
||||
}
|
||||
|
||||
WindowList::WindowList() {
|
||||
|
|
|
@ -144,7 +144,7 @@ void NodeBindings::Initialize() {
|
|||
// uv_init overrides error mode to suppress the default crash dialog, bring
|
||||
// it back if user wants to show it.
|
||||
std::unique_ptr<base::Environment> env(base::Environment::Create());
|
||||
if (env->HasVar("ELECTRON_DEFAULT_ERROR_MODE"))
|
||||
if (is_browser_ || env->HasVar("ELECTRON_DEFAULT_ERROR_MODE"))
|
||||
SetErrorMode(GetErrorMode() & ~SEM_NOGPFAULTERRORBOX);
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -47,12 +47,15 @@ char* CopyPDFDataOnIOThread(
|
|||
new base::SharedMemory(params.metafile_data_handle, true));
|
||||
if (!shared_buf->Map(params.data_size))
|
||||
return nullptr;
|
||||
char* memory_pdf_data = static_cast<char*>(shared_buf->memory());
|
||||
char* pdf_data = new char[params.data_size];
|
||||
memcpy(pdf_data, memory_pdf_data, params.data_size);
|
||||
memcpy(pdf_data, shared_buf->memory(), params.data_size);
|
||||
return pdf_data;
|
||||
}
|
||||
|
||||
void FreeNodeBufferData(char* data, void* hint) {
|
||||
delete[] data;
|
||||
}
|
||||
|
||||
} // namespace
|
||||
|
||||
namespace printing {
|
||||
|
@ -126,11 +129,12 @@ void PrintPreviewMessageHandler::RunPrintToPDFCallback(
|
|||
v8::HandleScope handle_scope(isolate);
|
||||
if (data) {
|
||||
v8::Local<v8::Value> buffer = node::Buffer::New(isolate,
|
||||
data, static_cast<size_t>(data_size)).ToLocalChecked();
|
||||
data, static_cast<size_t>(data_size), &FreeNodeBufferData, nullptr)
|
||||
.ToLocalChecked();
|
||||
print_to_pdf_callback_map_[request_id].Run(v8::Null(isolate), buffer);
|
||||
} else {
|
||||
v8::Local<v8::String> error_message = v8::String::NewFromUtf8(isolate,
|
||||
"Fail to generate PDF");
|
||||
"Failed to generate PDF");
|
||||
print_to_pdf_callback_map_[request_id].Run(
|
||||
v8::Exception::Error(error_message), v8::Null(isolate));
|
||||
}
|
||||
|
|
|
@ -309,7 +309,7 @@ Returns:
|
|||
* `matches` Integer (optional) - 일치하는 개수.
|
||||
* `selectionArea` Object (optional) - 첫 일치 부위의 좌표.
|
||||
|
||||
[`webContents.findInPage`](web-contents.md#webcontentsfindinpage) 요청의 결과를
|
||||
[`webContents.findInPage`] 요청의 결과를
|
||||
사용할 수 있을 때 발생하는 이벤트입니다.
|
||||
|
||||
#### Event: 'media-started-playing'
|
||||
|
@ -755,7 +755,7 @@ CSS 코드를 현재 웹 페이지에 삽입합니다.
|
|||
|
||||
#### `contents.stopFindInPage(action)`
|
||||
|
||||
* `action` String - [`webContents.findInPage`](web-contents.md#webcontentfindinpage)
|
||||
* `action` String - [`webContents.findInPage`]
|
||||
요청이 종료되었을 때 일어날 수 있는 작업을 지정합니다.
|
||||
* `clearSelection` - 선택을 취소합니다.
|
||||
* `keepSelection` - 선택을 일반 선택으로 변경합니다.
|
||||
|
@ -1235,3 +1235,4 @@ win.webContents.debugger.sendCommand('Network.enable')
|
|||
디버깅 타겟이 관련 이벤트를 발생시킬 때 마다 발생하는 이벤트입니다.
|
||||
|
||||
[rdp]: https://developer.chrome.com/devtools/docs/debugger-protocol
|
||||
[`webContents.findInPage`]: web-contents.md#contentsfindinpagetext-options
|
||||
|
|
46
docs-translations/pt-BR/project/CODE_OF_CONDUCT.md
Normal file
46
docs-translations/pt-BR/project/CODE_OF_CONDUCT.md
Normal file
|
@ -0,0 +1,46 @@
|
|||
# Pacto de Conduta do Colaborador de Código
|
||||
|
||||
## Nosso Compromisso
|
||||
|
||||
No interesse de promover um ambiente aberto e acolhedor, nos como colaboradores e mantenedores comprometidos a fazer participação em nosso projeto e nossa comunidade uma experiência livre de assédio para todos, independentemente da idade, estatura, deficiência, etnia, identidade de gênero e expressão, nivel de experiência, nacionalidade, aparência pessoal, raça, religião ou identidade sexual e orientação.
|
||||
|
||||
## Nossos Padrões
|
||||
|
||||
Exemplos de comportamento que contribui para criar um ambiente positivo incluem:
|
||||
|
||||
* Usar uma linguagem de boas-vindas e incluisiva
|
||||
* Ser respeitoso com diferentes pontos de vista e experiências
|
||||
* Graciosamente aceitar críticas construtivas
|
||||
* Incidindo sobre o que é melhor para a comunidade
|
||||
* Mostrando empatia para com outros membros da comunidade
|
||||
|
||||
Exemplos de comportamento inaceitável pelos participantes incluem:
|
||||
|
||||
* O uso de linguagem sexualizada ou imagens e atenção sexual indesejada ou avanços
|
||||
* Trolando, comentários depreciativos, e ataques insultantes/pessoais ou politicos
|
||||
* Assédio público ou privado
|
||||
* A publicação de outras informações privadas, tais como um endereço físico ou eletrônico, sem permissão explícita
|
||||
* Outra conduta que possa ser razoavelmente considerada inadequada em um ambiente profissional
|
||||
|
||||
## Nossas Responsabilidades
|
||||
|
||||
Mantenedores do projeto são responsáveis por esclarecer as normas do comportamento aceitável e espera-se que as medidas corretivas adequadas e justas em resposta a todas as instâncias do comportamento inaceitável.
|
||||
|
||||
Mantenedores do projeto têm o direito e a responsabilidade de remover, editar, ou rejeitar comentários, commits, código, edição de wiki, issues e outras contribuições que não estão alinhadas a este Código de Conduta, ou proibir temporária ou permamentemente qualquer colaborador por outros comportamentos que considerem inapropriado, ameaçador, ofensivo ou prejudicial.
|
||||
|
||||
## Escopo
|
||||
|
||||
Este Código de Conduta aplica-se tanto dentro dos espaços do projeto e em espaços públicos quando um indivíduo está representando o projeto ou sua comunidade. Exemplos de que representa um projeto ou comunidade incluem o uso de um endereço de e-mail do projeto oficial, postado através de uma conta oficial de mídia social, ou agindo como um representante nomeado em um evento on-line ou off-line. Representação de um projeto pode ser ainda definidos e esclarecidos pelos mantenedores do projeto.
|
||||
|
||||
## Aplicação
|
||||
|
||||
Instânicas de assédio ou comportamento abusivo, de outro modo inaceitáveis podem ser relatados em contato com a equipe do projeto em [electron@github.com](mailto:electron@github.com). Todas as reclamações serão analisadas e investigadas e irá resultar em uma resposta que for considerada necessária e adequada ás circunstâncias. A equipe do projeto é obrigada a manter a confidencialidade no que diz respeito ao relato de um incidente. Mais detalhes das políticas de aplicação específicas podem ser publicadas separadamente.
|
||||
|
||||
Mantenedores de projetos que não seguem ou fazem comprir o Código de Conduta de boa-fé podem enfrentar repercussões temporárias ou permanentes, conforme determinado por outros membros da liderança do projeto.
|
||||
|
||||
## Atribuição
|
||||
|
||||
Este Código de Conduta é uma adaptação do [Pacto do Colaborador][homepage], versão 1.4, disponível em [http://contributor-covenant.org/version/1/4][version]
|
||||
|
||||
[homepage]: http://contributor-covenant.org
|
||||
[version]: http://contributor-covenant.org/version/1/4/
|
|
@ -5,27 +5,27 @@
|
|||
:+1::tada: Primeiramente, obrigado por utilizar seu tempo contribuindo! :tada::+1:
|
||||
|
||||
Esse projeto segue um [código de conduta](CODE_OF_CONDUCT.md).
|
||||
Participando, é esperado que o código seja seguido. Favor reportar comportamentos inaceitáveis para atom@github.com.
|
||||
Ao participar, é esperado que o código seja seguido. Favor reportar comportamentos inaceitáveis para atom@github.com.
|
||||
|
||||
O texto a seguir é um conjunto de diretrizes para a contribuição com o Electron.
|
||||
São apenas diretrizes, e não regras, use o seu bom senso e sinta-se livre para sugerir modificações nesse documento em um pull request.
|
||||
O texto a seguir é um conjunto de diretrizes para a contribuir com o Electron.
|
||||
Estas são apenas diretrizes e não regras, use o seu bom senso e sinta-se livre para propor alterações nesse documento em um pull request.
|
||||
|
||||
## Enviando Issues
|
||||
## Reportando Issues
|
||||
|
||||
* Você pode criar uma issue [aqui](https://github.com/electron/electron/issues/new),
|
||||
porém, antes disso, por favor, leia as notas abaixo e inclua o máximo de detalhes possível em seu relato. Se puder, favor informar:
|
||||
mas antes disso, por favor, leia as notas abaixo e inclua o máximo de detalhes possíveis em seu relato. Se puder, favor informar:
|
||||
* A versão do Electron utilizada
|
||||
* O sistema operacional utilizado
|
||||
* Se possível, o que estava fazendo para que esse problema surgisse e o que era esperado que acontecesse
|
||||
* Se possível, o que estava fazendo quando o problema ocorreu e o que era esperado que acontecesse
|
||||
* Alguns outros meios que irão ajudar a resolver a issue:
|
||||
* Imagens da tela e GIFs animados
|
||||
* Capturas de tela e GIFs animados
|
||||
* Saída de erro que aparece no terminal, dev tools ou algum em algum alerta
|
||||
* Faça uma [pesquisa rápida](https://github.com/electron/electron/issues?utf8=✓&q=is%3Aissue+)
|
||||
para verificar se já não existe uma issue similar já aberta
|
||||
|
||||
## Enviando Pull Requests
|
||||
## Submetendo Pull Requests
|
||||
|
||||
* Inclua imagens da tela e GIFs animados em seu pull request sempre que possível.
|
||||
* Inclua capturas de tela e GIFs animados em seu pull request sempre que possível.
|
||||
* Siga os [padrões de código definidos nos documentos](/docs/development/coding-style.md) para JavaScript, C++, e Python.
|
||||
* Escreva a documentação em [Markdown](https://daringfireball.net/projects/markdown).
|
||||
Veja o [Guia de estilo de documentação](/docs/styleguide.md).
|
||||
|
@ -33,16 +33,16 @@ porém, antes disso, por favor, leia as notas abaixo e inclua o máximo de detal
|
|||
|
||||
## Guias de estilo
|
||||
|
||||
### General Code
|
||||
### Código Geral
|
||||
|
||||
* Arquivos terminam com uma nova linha.
|
||||
* Terminar arquivos com uma nova linha.
|
||||
* A organização deve estar na seguinte ordem:
|
||||
* Módulos embutidos do Node (como o `path`)
|
||||
* Módulos embutidos do Electron (como `ipc`, `app`)
|
||||
* Módulos locais (usando caminhos relativos)
|
||||
* Defina as propriedades da classe na seguinte ordem:
|
||||
* Métodos da classe e propriedades (métodos iniciam com `@`)
|
||||
* Métodos de instância e propriedades
|
||||
* Métodos e propriedades da classe (métodos iniciam com `@`)
|
||||
* Métodos e propriedades de instância
|
||||
* Evite o uso de códigos dependentes da plataforma:
|
||||
* Use `path.join()` para concatenar nomes de arquivos.
|
||||
* Use `os.tmpdir()` ao invés de `/tmp` quando precisar referenciar o diretório temporário.
|
||||
|
@ -60,13 +60,13 @@ porém, antes disso, por favor, leia as notas abaixo e inclua o máximo de detal
|
|||
* :art: `:art:` quando aperfeiçoar o formato/estrutura do código
|
||||
* :racehorse: `:racehorse:` quando aperfeiçoar a performance
|
||||
* :non-potable_water: `:non-potable_water:` quando previnir vazamento de memória
|
||||
* :memo: `:memo:` quando escrever documentos
|
||||
* :penguin: `:penguin:` quando consertar algo no Linux
|
||||
* :apple: `:apple:` quando consertar algo no macOS
|
||||
* :checkered_flag: `:checkered_flag:` quando consertar algo no Windows
|
||||
* :memo: `:memo:` quando escrever documentação
|
||||
* :penguin: `:penguin:` quando corrigir algo no Linux
|
||||
* :apple: `:apple:` quando corrigir algo no OSX
|
||||
* :checkered_flag: `:checkered_flag:` quando corrigir algo no Windows
|
||||
* :bug: `:bug:` quando corrigir um bug
|
||||
* :fire: `:fire:` quando remover código ou arquivos
|
||||
* :green_heart: `:green_heart:` quando consertar o build do CI
|
||||
* :green_heart: `:green_heart:` quando corrigir o build do CI
|
||||
* :white_check_mark: `:white_check_mark:` quando adicionar testes
|
||||
* :lock: `:lock:` quando estiver lidando com segurança
|
||||
* :arrow_up: `:arrow_up:` quando atualizar dependências
|
||||
|
|
67
docs-translations/pt-BR/project/README.md
Normal file
67
docs-translations/pt-BR/project/README.md
Normal file
|
@ -0,0 +1,67 @@
|
|||
[](http://electron.atom.io/)
|
||||
|
||||
[](https://travis-ci.org/electron/electron)
|
||||
[](https://ci.appveyor.com/project/Atom/electron)
|
||||
[](https://david-dm.org/electron/electron#info=devDependencies)
|
||||
[](http://atom-slack.herokuapp.com/)
|
||||
|
||||
:memo: Available Translations: [Korean](https://github.com/electron/electron/tree/master/docs-translations/ko-KR/project/README.md) | [Simplified Chinese](https://github.com/electron/electron/tree/master/docs-translations/zh-CN/project/README.md) | [Brazilian Portuguese](https://github.com/electron/electron/tree/master/docs-translations/pt-BR/project/README.md)
|
||||
|
||||
O framework Electron permite escrever aplicações desktop multi-plataforma usando JavaScript, HTML e CSS. Baseia-se em [Node.js](https://nodejs.org/) e [Chromium](http://www.chromium.org) e é usado pelo [editor Atom](https://github.com/atom/atom) e muitas outras [aplicações](http://electron.atom.io/apps).
|
||||
|
||||
Siga [@ElectronJS](https://twitter.com/electronjs) no Twitter para anúncios importantes.
|
||||
|
||||
Este projeto adere ao código do Pacto do Colaborador [código de conduta](CODE_OF_CONDUCT.md). Ao participar, espera-se que você siga esse código. Por favor, reporte o comportamento inaceitável para electron@github.com.
|
||||
|
||||
## Downloads
|
||||
|
||||
Binários pré-construídos e símbolos de depuração do Electron para Linux, Windows e macOS podem ser encontrados na página de [releases](https://github.com/electron/electron/releases).
|
||||
|
||||
Você também pode usar [`npm`](https://docs.npmjs.com/) para instalar os binários do electron:
|
||||
|
||||
```sh
|
||||
# Install the `electron` command globally in your $PATH
|
||||
npm install electron -g
|
||||
|
||||
# Install as a development dependency
|
||||
npm install electron --save-dev
|
||||
```
|
||||
|
||||
### Mirrors
|
||||
|
||||
- [China](https://npm.taobao.org/mirrors/electron)
|
||||
|
||||
## Documentação
|
||||
|
||||
Guias de referência da API estão localizados no diretório [docs](https://github.com/electron/electron/tree/master/docs). Ele também contém documentos que descrevem como construir e contribuir para o Electron.
|
||||
|
||||
## Documentos Traduzidos
|
||||
|
||||
- [Brazilian Portuguese](https://github.com/electron/electron/tree/master/docs-translations/pt-BR)
|
||||
- [Korean](https://github.com/electron/electron/tree/master/docs-translations/ko-KR)
|
||||
- [Japanese](https://github.com/electron/electron/tree/master/docs-translations/jp)
|
||||
- [Spanish](https://github.com/electron/electron/tree/master/docs-translations/es)
|
||||
- [Simplified Chinese](https://github.com/electron/electron/tree/master/docs-translations/zh-CN)
|
||||
- [Traditional Chinese](https://github.com/electron/electron/tree/master/docs-translations/zh-TW)
|
||||
- [Turkish](https://github.com/electron/electron/tree/master/docs-translations/tr-TR)
|
||||
- [Ukrainian](https://github.com/electron/electron/tree/master/docs-translations/uk-UA)
|
||||
- [Russian](https://github.com/electron/electron/tree/master/docs-translations/ru-RU)
|
||||
- [French](https://github.com/electron/electron/tree/master/docs-translations/fr-FR)
|
||||
|
||||
## Começo Rápido
|
||||
|
||||
Clone o repositório e execute o [`electron/electron-quick-start`](https://github.com/electron/electron-quick-start) para ver um pequeno aplicativo Electron em ação.
|
||||
|
||||
## Comunidade
|
||||
|
||||
Você pode fazer perguntas e interagir com a comunidade nos seguintes locais:
|
||||
- [`electron`](http://discuss.atom.io/c/electron) categoria nos fóruns Atom
|
||||
- `#atom-shell` canal na Freenode
|
||||
- [`Atom`](http://atom-slack.herokuapp.com/) canal no Slack
|
||||
- [`electron-br`](https://electron-br.slack.com) *(Brazilian Portuguese)*
|
||||
- [`electron-kr`](http://www.meetup.com/electron-kr/) *(Korean)*
|
||||
- [`electron-jp`](https://electron-jp-slackin.herokuapp.com/) *(Japanese)*
|
||||
- [`electron-tr`](http://www.meetup.com/Electron-JS-Istanbul/) *(Turkish)*
|
||||
- [`electron-id`](https://electron-id.slack.com) *(Indonesia)*
|
||||
|
||||
Confira [awesome-electron](https://github.com/sindresorhus/awesome-electron) para uma lista mantida pela comunidade de exemplos de aplicativos úteis, ferramentas e recursos.
|
33
docs-translations/pt-BR/tutorial/accessibility.md
Normal file
33
docs-translations/pt-BR/tutorial/accessibility.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
# Acessibilidade
|
||||
|
||||
Fazendo aplicações acessíveis é importante e nós estamos felizes em apresentar uma nova funcionalidade para [Devtron](http://electron.atom.io/devtron) e [Spectron](http://electron.atom.io/spectron) que dá aos desenvolvedores a oportunidade de fazer as suas aplicações melhor para todos.
|
||||
|
||||
---
|
||||
|
||||
Preocupações de acessibilidade em aplicações Electron são semelhantes aos de websites, porque eles são ambos em última análise HTML. Com aplicativos Electron, no entanto, você não pode usar recursos on-line para auditorias de acessibilidade porque a sua aplicação não tem uma URL para apontar para o auditor.
|
||||
|
||||
Esses novos recursos trazem essas ferramentas de auditoria para a sua aplicação Electron. Você pode optar por adicionar auditorias aos seus testes com Spectron ou usá-los dentro do DevTools com Devtron. Leia a seguir para obter um resumo das ferramentas ou verifique nossa [documentação de acessibilidade](http://electron.atom.io/docs/tutorial/accessibility) para obter mais informações.
|
||||
|
||||
### Spectron
|
||||
|
||||
No framework de testes Spectron, agora você pode auditar cada janela e tag `<webview>` em seu aplicativo. Por exemplo:
|
||||
|
||||
```javascript
|
||||
app.client.auditAccessibility().then(function (audit) {
|
||||
if (audit.failed) {
|
||||
console.error(audit.message)
|
||||
}
|
||||
})
|
||||
```
|
||||
|
||||
Você pode ler mais sobre este recurso na [documentação do Spectron](https://github.com/electron/spectron#accessibility-testing).
|
||||
|
||||
### Devtron
|
||||
|
||||
Em Devtron há uma nova guia de acessibilidade que permitirá auditar uma página no seu aplicativo, classificar e filtrar os resultados.
|
||||
|
||||

|
||||
|
||||
Ambas as ferramentas estão usando a biblioteca [Accessibility Developer Tools](https://github.com/GoogleChrome/accessibility-developer-tools) construída pela Google for Chrome. Você pode aprender mais sobre as regras de auditoria da biblioteca de acessibilidade no [wiki do repositório](https://github.com/GoogleChrome/accessibility-developer-tools/wiki/Audit-Rules).
|
||||
|
||||
Se você souber de outras ferramentas de acessibilidade para o Electron, adicione-as à [documentação de acessibilidade](http://electron.atom.io/docs/tutorial/accessibility) através de um pull request.
|
|
@ -248,7 +248,7 @@ var webContents = win.webContents;
|
|||
* `matches` Integer (可选) - 匹配数量.
|
||||
* `selectionArea` Object (可选) - 协调首个匹配位置.
|
||||
|
||||
当使用 [`webContents.findInPage`](web-contents.md#webcontentsfindinpage) 进行页内查找并且找到可用值得时候发出事件.
|
||||
当使用 [`webContents.findInPage`] 进行页内查找并且找到可用值得时候发出事件.
|
||||
|
||||
### Event: 'media-started-playing'
|
||||
|
||||
|
@ -499,7 +499,7 @@ var currentURL = win.webContents.getURL();
|
|||
### `webContents.stopFindInPage(action)`
|
||||
|
||||
* `action` String - 指定一个行为来接替停止
|
||||
[`webContents.findInPage`](web-contents.md#webcontentfindinpage) 请求.
|
||||
[`webContents.findInPage`] 请求.
|
||||
* `clearSelection` - 转变为一个普通的 selection.
|
||||
* `keepSelection` - 清除 selection.
|
||||
* `activateSelection` - 获取焦点并点击 selection node.
|
||||
|
@ -862,3 +862,4 @@ win.webContents.debugger.sendCommand("Network.enable");
|
|||
每当调试目标发出事件时发出.
|
||||
|
||||
[rdp]: https://developer.chrome.com/devtools/docs/debugger-protocol
|
||||
[`webContents.findInPage`]: web-contents.md#webcontentsfindinpagetext-options
|
||||
|
|
|
@ -120,4 +120,70 @@ $ ./script/cpplint.py
|
|||
|
||||
```bash
|
||||
$ ./script/test.py
|
||||
```
|
||||
```
|
||||
|
||||
## Advanced topics
|
||||
|
||||
默认编译配置是针对主流 Linux 桌面发行版而言, 对于其他特定发行版或平台, 以下信息可能会帮到你.
|
||||
|
||||
### 本地编译 `libchromiumcontent`
|
||||
|
||||
可以添加参数 `--build_libchromiumcontent` 给 `bootstrap.py` 脚本以避免使用预编译的
|
||||
`libchromiumcontent` 二进制文件:
|
||||
|
||||
```bash
|
||||
$ ./script/bootstrap.py -v --build_libchromiumcontent
|
||||
```
|
||||
|
||||
默认情况下不会以 `shared_library` 方式编译, 所以你如果使用以下模式的话, 只能编译 Electron
|
||||
的 `Release` 版本:
|
||||
|
||||
```bash
|
||||
$ ./script/build.py -c R
|
||||
```
|
||||
|
||||
### 使用系统提供的 `clang`
|
||||
|
||||
默认情况下 Electron 使用 Chromium 项目提供的预编译的 `clang` 进行编译. 如果基于某些原因
|
||||
你想要使用已经安装到系统的 `clang` 进行编译, 可以添加 `--clang_dir=<path>` 参数给
|
||||
`bootstrap.py` 以指定 `clang` 安装路径. 上面参数告诉编译脚本, 在目录 `<path>/bin/` 下有
|
||||
`clang` 程序.
|
||||
|
||||
假设你的 `clang` 安装路径为 `/user/local/bin/clang`:
|
||||
|
||||
```bash
|
||||
$ ./script/bootstrap.py -v --build_libchromiumcontent --clang_dir /usr/local
|
||||
$ ./script/build.py -c R
|
||||
```
|
||||
|
||||
### 使用 `clang` 之外的编译器
|
||||
|
||||
要使用其他编译器 (如: `g++`) 编译 Electron, 首先需要使用参数 `--disable_clang` 禁用 `clang`,
|
||||
然后设置 `CC` 及 `CXX` 环境变量.
|
||||
|
||||
假设使用 GCC 工具链:
|
||||
|
||||
```bash
|
||||
$ env CC=gcc CXX=g++ ./script/bootstrap.py -v --build_libchromiumcontent --disable_clang
|
||||
$ ./script/build.py -c R
|
||||
```
|
||||
|
||||
### 环境变量
|
||||
|
||||
除了 `CC` 及 `CXX`, 你还可以设置以下环境变量来自定以编译配置:
|
||||
|
||||
* `CPPFLAGS`
|
||||
* `CPPFLAGS_host`
|
||||
* `CFLAGS`
|
||||
* `CFLAGS_host`
|
||||
* `CXXFLAGS`
|
||||
* `CXXFLAGS_host`
|
||||
* `AR`
|
||||
* `AR_host`
|
||||
* `CC`
|
||||
* `CC_host`
|
||||
* `CXX`
|
||||
* `CXX_host`
|
||||
* `LDFLAGS`
|
||||
|
||||
以上环境变量需要在执行 `bootstrap.py` 前设置, 在执行 `build.py` 的时候再设置将无效.
|
||||
|
|
|
@ -312,7 +312,7 @@ Returns:
|
|||
* `selectionArea` Object - Coordinates of first match region.
|
||||
|
||||
Emitted when a result is available for
|
||||
[`webContents.findInPage`](web-contents.md#webcontentsfindinpage) request.
|
||||
[`webContents.findInPage`] request.
|
||||
|
||||
#### Event: 'media-started-playing'
|
||||
|
||||
|
@ -775,7 +775,7 @@ the request can be obtained by subscribing to
|
|||
#### `contents.stopFindInPage(action)`
|
||||
|
||||
* `action` String - Specifies the action to take place when ending
|
||||
[`webContents.findInPage`](web-contents.md#webcontentfindinpage) request.
|
||||
[`webContents.findInPage`] request.
|
||||
* `clearSelection` - Clear the selection.
|
||||
* `keepSelection` - Translate the selection into a normal selection.
|
||||
* `activateSelection` - Focus and click the selection node.
|
||||
|
@ -1261,3 +1261,4 @@ Emitted when debugging session is terminated. This happens either when
|
|||
Emitted whenever debugging target issues instrumentation event.
|
||||
|
||||
[rdp]: https://developer.chrome.com/devtools/docs/debugger-protocol
|
||||
[`webContents.findInPage`]: web-contents.md#contentsfindinpagetext-options
|
||||
|
|
|
@ -24,7 +24,7 @@ You can read more about this feature in [Spectron's documentation](https://githu
|
|||
|
||||
### Devtron
|
||||
|
||||
In Devtron there is a new accessibility tab which will allow you to audit a page in your app, sort and filter the results.
|
||||
In Devtron, there is a new accessibility tab which will allow you to audit a page in your app, sort and filter the results.
|
||||
|
||||

|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue