diff --git a/README-ko.md b/README-ko.md index d35ba87f62b7..606d4e973e3e 100644 --- a/README-ko.md +++ b/README-ko.md @@ -8,8 +8,8 @@ :zap: *프레임워크 이름이 Atom Shell에서 Electron으로 변경되었습니다* :zap: -Electron 프레임워크는 JavaScript, HTML 그리고 CSS를 사용하여 Cross-Platform 데스크톱 -어플리케이션을 개발할 수 있도록 해주는 프레임워크입니다. 이 프레임워크는 +Electron 프레임워크는 JavaScript, HTML 그리고 CSS를 사용하여 +Cross-Platform 데스크톱 어플리케이션을 개발할 수 있도록 해주는 프레임워크입니다. [Node.js](https://nodejs.org/)와 [Chromium](http://www.chromium.org)을 기반으로 만들어졌으며 [Atom Editor](https://github.com/atom/atom)에 사용되고 있습니다. @@ -17,17 +17,17 @@ Electron에 대한 중요한 알림을 받고 싶다면 Twitter에서 [@ElectronJS](https://twitter.com/electronjs)를 팔로우 하세요. 이 프로젝트는 [기여자 규약 1.2](http://contributor-covenant.org/version/1/2/0/)을 -준수합니다. 따라서 이 프로젝트의 개발에 참여하려면 이 계약을 지켜야 합니다. -받아들일 수 없는 행위를 발견했을 경우 atom@github.com로 보고 하십시오. +준수합니다. 따라서 이 프로젝트의 개발에 참여하려면 이 계약을 지켜야 합니다. 받아들일 수 +없는 행위를 발견했을 경우 atom@github.com로 보고 하십시오. ## 다운로드 Linux, Windows, OS X 용으로 미리 빌드된 Electron 바이너리와 디버그 심볼이 준비되어 -있습니다. [releases](https://github.com/atom/electron/releases) 페이지에서 -받아 볼 수 있습니다. +있습니다. [releases](https://github.com/atom/electron/releases) 페이지에서 받아 볼 +수 있습니다. -또한 [`npm`](https://docs.npmjs.com/)을 통해 미리 빌드된 Electron 바이너리를 -설치할 수도 있습니다: +또한 [`npm`](https://docs.npmjs.com/)을 통해 미리 빌드된 Electron 바이너리를 설치할 +수도 있습니다: ```sh # $PATH에 `electron` 커맨드를 등록하고 전역에 설치합니다. @@ -70,5 +70,5 @@ API 레퍼런스가 있습니다. Electron을 빌드 하는 방법과 프로젝 - Slack의 [`Atom`](http://atom-slack.herokuapp.com/) 채널 [awesome-electron](https://github.com/sindresorhus/awesome-electron) 프로젝트에 -커뮤니티가 운영중인 유용한 예제 어플리케이션과 도구, 리소스가 있으니 -한번 참고해 보시기 바랍니다. +커뮤니티가 운영중인 유용한 예제 어플리케이션과 도구, 리소스가 있으니 한번 참고해 보시기 +바랍니다. diff --git a/docs-translations/ko-KR/api/accelerator.md b/docs-translations/ko-KR/api/accelerator.md index 9e72543a4cc6..99b549bbb70d 100644 --- a/docs-translations/ko-KR/api/accelerator.md +++ b/docs-translations/ko-KR/api/accelerator.md @@ -10,8 +10,9 @@ Accelerator는 키보드 단축키를 표현하는 문자열입니다, 여러 ## 플랫폼에 관련하여 주의할 점 -Linux와 Windows에서는 `Command`키가 없으므로 작동하지 않습니다. 대신에 `CommandOrControl`을 -사용하면 OS X의 `Command`와 Linux, Windows의 `Control` 모두 지원할 수 있습니다. +Linux와 Windows에서는 `Command`키가 없으므로 작동하지 않습니다. 대신에 +`CommandOrControl`을 사용하면 OS X의 `Command`와 Linux, Windows의 `Control` 모두 +지원할 수 있습니다. `Super`키는 Windows와 Linux 에서는 `윈도우`키를, OS X에서는 `Cmd`키로 맵핑됩니다. diff --git a/docs-translations/ko-KR/api/app.md b/docs-translations/ko-KR/api/app.md index 51e88c534ff4..6dbec14ba681 100644 --- a/docs-translations/ko-KR/api/app.md +++ b/docs-translations/ko-KR/api/app.md @@ -18,9 +18,11 @@ app.on('window-all-closed', function() { ### Event: 'will-finish-launching' 어플리케이션이 기본적인 시작 준비를 마치면 발생하는 이벤트입니다. -Windows, Linux 운영체제에서의 `will-finish-launching` 이벤트는 `ready` 이벤트와 동일합니다. -OS X에서의 이벤트는 `NSApplication`의 `applicationWillFinishLaunching`에 대한 알림으로 표현됩니다. -대개 이곳에서 `open-file`과 `open-url` 이벤트 리스너를 설정하고 crash reporter와 auto updater를 시작합니다. +Windows, Linux 운영체제에서의 `will-finish-launching` 이벤트는 `ready` 이벤트와 +동일합니다. OS X에서의 이벤트는 `NSApplication`의 +`applicationWillFinishLaunching`에 대한 알림으로 표현됩니다. 대개 이곳에서 +`open-file`과 `open-url` 이벤트 리스너를 설정하고 crash reporter와 auto updater를 +시작합니다. 대부분의 경우, 모든 것을 `ready` 이벤트 핸들러로 해결해야 합니다. @@ -35,10 +37,12 @@ Electron이 초기화를 끝냈을 때 발생하는 이벤트입니다. 이 이벤트는 어플리케이션이 완전히 종료되지 않았을 때만 발생합니다. 만약 사용자가 `Cmd + Q`를 입력했거나 개발자가 `app.quit()`를 호출했다면, Electron은 먼저 모든 윈도우 창의 종료를 시도하고 `will-quit` 이벤트를 발생시킵니다. -그리고 `will-quit` 이벤트가 발생했을 땐 `window-all-closed` 이벤트가 발생하지 않습니다. +그리고 `will-quit` 이벤트가 발생했을 땐 `window-all-closed` 이벤트가 발생하지 +않습니다. -**역주:** 이 이벤트는 말 그대로 현재 어플리케이션에서 윈도우 창만 완전히 종료됬을 때 발생하는 이벤트 입니다. - 따라서 어플리케이션을 완전히 종료하려면 이 이벤트에서 `app.quit()`를 호출해 주어야 합니다. +**역주:** 이 이벤트는 말 그대로 현재 어플리케이션에서 윈도우 창만 완전히 종료됬을 때 +발생하는 이벤트 입니다. 따라서 어플리케이션을 완전히 종료하려면 이 이벤트에서 +`app.quit()`를 호출해 주어야 합니다. ### Event: 'before-quit' @@ -59,7 +63,8 @@ Returns: 모든 윈도우 창들이 종료되고 어플리케이션이 종료되기 시작할 때 발생하는 이벤트 입니다. `event.preventDefault()` 호출을 통해 어플리케이션의 종료를 방지할 수 있습니다. -`will-quit` 와 `window-all-closed` 이벤트의 차이점을 확인하려면 `window-all-close` 이벤트의 설명을 참고하세요. +`will-quit` 와 `window-all-closed` 이벤트의 차이점을 확인하려면 `window-all-close` +이벤트의 설명을 참고하세요. ### Event: 'quit' @@ -74,9 +79,11 @@ Returns: 사용자가 어플리케이션을 통해 파일을 열고자 할 때 발생하는 이벤트입니다. -`open-file` 이벤트는 보통 어플리케이션이 열려 있을 때 OS가 파일을 열기 위해 어플리케이션을 재사용할 때 발생합니다. -이 이벤트는 파일을 dock에 떨어트릴 때, 어플리케이션이 실행되기 전에도 발생합니다. -따라서 이 이벤트를 제대로 처리하려면 `open-file` 이벤트 핸들러를 어플리케이션이 시작하기 전에 등록해 놓았는지 확실히 확인해야 합니다. (`ready` 이벤트가 발생하기 전에) +`open-file` 이벤트는 보통 어플리케이션이 열려 있을 때 OS가 파일을 열기 위해 +어플리케이션을 재사용할 때 발생합니다. 이 이벤트는 파일을 dock에 떨어트릴 때, +어플리케이션이 실행되기 전에도 발생합니다. 따라서 이 이벤트를 제대로 처리하려면 +`open-file` 이벤트 핸들러를 어플리케이션이 시작하기 전에 등록해 놓았는지 확실히 +확인해야 합니다. (`ready` 이벤트가 발생하기 전에) 이 이벤트를 처리할 땐 반드시 `event.preventDefault()`를 호출해야 합니다. @@ -132,7 +139,7 @@ Returns: 새로운 [browserWindow](browser-window.md)가 생성되었을 때 발생하는 이벤트 입니다. -### Event: 'select-certificate' +### Event: 'select-client-certificate' Returns: @@ -148,10 +155,11 @@ Returns: `url`은 클라이언트 인증서를 요청하는 탐색 항목에 해당합니다. 그리고 `callback`은 목록에서 필터링된 항목과 함께 호출될 필요가 있습니다. -이 이벤트에서의 `event.preventDefault()` 호출은 초기 인증 때 저장된 데이터를 사용하는 것을 막습니다. +이 이벤트에서의 `event.preventDefault()` 호출은 초기 인증 때 저장된 데이터를 사용하는 +것을 막습니다. ```javascript -app.on('select-certificate', function(event, host, url, list, callback) { +app.on('select-client-certificate', function(event, webContents, url, list, callback) { event.preventDefault(); callback(list[0]); }) @@ -201,10 +209,12 @@ GPU가 작동하던 중 크래시가 일어났을 때 발생하는 이벤트입 ### `app.quit()` 모든 윈도우 창 종료를 시도합니다. `before-quit` 이벤트가 먼저 발생합니다. -모든 윈도우 창이 성공적으로 종료되면 `will-quit` 이벤트가 발생하고 기본 동작에 따라 어플리케이션이 종료됩니다. +모든 윈도우 창이 성공적으로 종료되면 `will-quit` 이벤트가 발생하고 기본 동작에 따라 +어플리케이션이 종료됩니다. 이 함수는 모든 `beforeunload`와 `unload` 이벤트 핸들러가 제대로 실행됨을 보장합니다. -`beforeunload` 이벤트 핸들러에서 `false`를 반환했을 때 윈도우 창 종료가 취소 될 수 있습니다. +`beforeunload` 이벤트 핸들러에서 `false`를 반환했을 때 윈도우 창 종료가 취소 될 수 +있습니다. ### `app.exit(exitCode)` @@ -212,7 +222,8 @@ GPU가 작동하던 중 크래시가 일어났을 때 발생하는 이벤트입 `exitCode`와 함께 어플리케이션을 즉시 종료합니다. -모든 윈도우 창은 사용자의 동의 여부에 상관없이 즉시 종료되며 `before-quit` 이벤트와 `will-quit` 이벤트가 발생하지 않습니다. +모든 윈도우 창은 사용자의 동의 여부에 상관없이 즉시 종료되며 `before-quit` 이벤트와 +`will-quit` 이벤트가 발생하지 않습니다. ### `app.getAppPath()` @@ -253,39 +264,43 @@ GPU가 작동하던 중 크래시가 일어났을 때 발생하는 이벤트입 * `path` String `name`에 대한 특정 디렉터리나 파일의 경로인 `path`를 재정의합니다. -만약 지정한 디렉터리의 경로가 존재하지 않으면 디렉터리가 이 메서드를 통해 새로 생성됩니다. -재정의에 실패했을 땐 `Error`를 반환합니다. +만약 지정한 디렉터리의 경로가 존재하지 않으면 디렉터리가 이 메서드를 통해 새로 +생성됩니다. 재정의에 실패했을 땐 `Error`를 반환합니다. 이 메서드는 `app.getPath`에 정의되어 있는 `name`의 경로만 재정의할 수 있습니다. 기본적으로, 웹 페이지의 쿠키와 캐시는 `userData` 디렉터리에 저장됩니다. -만약 이 위치를 변경하고자 한다면, 반드시 `app` 모듈의 `ready` 이벤트가 발생하기 전에 `userData` 경로를 재정의해야 합니다. +만약 이 위치를 변경하고자 한다면, 반드시 `app` 모듈의 `ready` 이벤트가 발생하기 전에 +`userData` 경로를 재정의해야 합니다. ### `app.getVersion()` 로드된 어플리케이션의 버전을 반환합니다. -만약 `package.json` 파일에서 어플리케이션의 버전을 찾을 수 없는 경우, 현재 번들 또는 실행 파일의 버전을 반환합니다. +만약 `package.json` 파일에서 어플리케이션의 버전을 찾을 수 없는 경우, 현재 번들 또는 +실행 파일의 버전을 반환합니다. ### `app.getName()` `package.json`에서 기술된 현재 어플리케이션의 이름을 반환합니다. -npm 모듈 규칙에 따라 대부분의 경우 `package.json`의 `name` 필드는 소문자 이름을 사용합니다. -하지만 Electron은 `name`대신 `productName` 필드를 주로 사용하기 때문에 반드시 이 필드도 같이 지정해야 합니다. -이 필드는 맨 앞글자가 대문자인 어플리케이션 전체 이름을 지정해야 합니다. +npm 모듈 규칙에 따라 대부분의 경우 `package.json`의 `name` 필드는 소문자 이름을 +사용합니다. 하지만 Electron은 `name`대신 `productName` 필드를 주로 사용하기 때문에 +반드시 이 필드도 같이 지정해야 합니다. 이 필드는 맨 앞글자가 대문자인 어플리케이션 +전체 이름을 지정해야 합니다. ### `app.getLocale()` -현재 어플리케이션의 [로케일](https://ko.wikipedia.org/wiki/%EB%A1%9C%EC%BC%80%EC%9D%BC)을 반환합니다. +현재 어플리케이션의 [로케일](https://ko.wikipedia.org/wiki/%EB%A1%9C%EC%BC%80%EC%9D%BC)을 +반환합니다. ### `app.resolveProxy(url, callback)` * `url` URL * `callback` Function -`url`의 프록시 정보를 해석합니다. -`callback`은 요청이 수행되었을 때 `callback(proxy)` 형태로 호출됩니다. +`url`의 프록시 정보를 해석합니다. `callback`은 요청이 수행되었을 때 +`callback(proxy)` 형태로 호출됩니다. ### `app.addRecentDocument(path)` _OS X_ _Windows_ @@ -293,8 +308,8 @@ npm 모듈 규칙에 따라 대부분의 경우 `package.json`의 `name` 필드 최근 문서 목록에 `path`를 추가합니다. -이 목록은 OS에 의해 관리됩니다. -최근 문서 목록은 Windows의 경우 작업 표시줄에서 찾을 수 있고, OS X의 경우 dock 메뉴에서 찾을 수 있습니다. +이 목록은 OS에 의해 관리됩니다. 최근 문서 목록은 Windows의 경우 작업 표시줄에서 찾을 +수 있고, OS X의 경우 dock 메뉴에서 찾을 수 있습니다. ### `app.clearRecentDocuments()` _OS X_ _Windows_ @@ -317,8 +332,9 @@ Windows에서 사용할 수 있는 JumpList의 [Tasks][tasks] 카테고리에 `t * `iconPath` String - JumpList에 표시될 아이콘의 절대 경로. 아이콘을 포함하고 있는 임의의 리소스 파일을 사용할 수 있습니다. 보통 어플리케이션의 아이콘을 그대로 사용하기 위해 `process.execPath`를 지정합니다. -* `iconIndex` Integer - 아이콘 파일의 인덱스. 만약 아이콘 파일이 두 개 이상의 아이콘을 가지고 있을 경우, - 사용할 아이콘의 인덱스를 이 옵션으로 지정해 주어야 합니다. 단, 아이콘을 하나만 포함하고 있는 경우 0을 지정하면 됩니다. +* `iconIndex` Integer - 아이콘 파일의 인덱스. 만약 아이콘 파일이 두 개 이상의 + 아이콘을 가지고 있을 경우, 사용할 아이콘의 인덱스를 이 옵션으로 지정해 주어야 합니다. + 단, 아이콘을 하나만 포함하고 있는 경우 0을 지정하면 됩니다. ### `app.allowNTLMCredentialsForAllDomains(allow)` @@ -326,33 +342,40 @@ Windows에서 사용할 수 있는 JumpList의 [Tasks][tasks] 카테고리에 `t 항상 동적으로 HTTP NTLM 또는 Negotiate 인증에 자격 증명을 보낼 것인지 설정합니다. -기본적으로 Electron은 "로컬 인터넷" 사이트 URL에서 NTLM/Kerberos 자격 증명만을 보냅니다. (같은 도메인 내에서) -그러나 기업 네트워크가 잘못 구성된 경우 종종 작업에 실패할 수 있습니다. -이때 이 메서드를 통해 모든 URL을 허용할 수 있습니다. +기본적으로 Electron은 "로컬 인터넷" 사이트 URL에서 NTLM/Kerberos 자격 증명만을 +보냅니다. (같은 도메인 내에서) 그러나 기업 네트워크가 잘못 구성된 경우 종종 작업에 +실패할 수 있습니다. 이때 이 메서드를 통해 모든 URL을 허용할 수 있습니다. ### `app.makeSingleInstance(callback)` * `callback` Function 현재 어플리케이션을 **Single Instance Application**으로 만들어줍니다. -이 메서드는 어플리케이션이 여러 번 실행됐을 때 다중 인스턴스가 생성되는 대신 한 개의 주 인스턴스만 유지되도록 만들 수 있습니다. -이때 중복 생성된 인스턴스는 주 인스턴스에 신호를 보내고 종료됩니다. +이 메서드는 어플리케이션이 여러 번 실행됐을 때 다중 인스턴스가 생성되는 대신 한 개의 +주 인스턴스만 유지되도록 만들 수 있습니다. 이때 중복 생성된 인스턴스는 주 인스턴스에 +신호를 보내고 종료됩니다. -`callback`은 주 인스턴스가 생성된 이후 또 다른 인스턴스가 생성됐을 때 `callback(argv, workingDirectory)` 형식으로 호출됩니다. -`argv`는 두 번째 인스턴스의 명령줄 인수이며 `workingDirectory`는 현재 작업중인 디렉터리입니다. -보통 대부분의 어플리케이션은 이러한 콜백이 호출될 때 주 윈도우 창을 포커스하고 최소화되어있으면 창 복구를 실행합니다. +`callback`은 주 인스턴스가 생성된 이후 또 다른 인스턴스가 생성됐을 때 +`callback(argv, workingDirectory)` 형식으로 호출됩니다. `argv`는 두 번째 인스턴스의 +명령줄 인수이며 `workingDirectory`는 현재 작업중인 디렉터리입니다. 보통 대부분의 +어플리케이션은 이러한 콜백이 호출될 때 주 윈도우 창을 포커스하고 최소화되어있으면 창 +복구를 실행합니다. `callback`은 `app`의 `ready` 이벤트가 발생한 후 실행됨을 보장합니다. -이 메서드는 현재 실행된 어플리케이션이 주 인스턴스인 경우 `false`를 반환하고 어플리케이션의 로드가 계속 진행 되도록 합니다. -그리고 두 번째 중복된 인스턴스 생성인 경우 `true`를 반환합니다. (다른 인스턴스에 인수가 전달됬을 때) -이 불리언 값을 통해 중복 생성된 인스턴스는 즉시 종료시켜야 합니다. +이 메서드는 현재 실행된 어플리케이션이 주 인스턴스인 경우 `false`를 반환하고 +어플리케이션의 로드가 계속 진행 되도록 합니다. 그리고 두 번째 중복된 인스턴스 생성인 +경우 `true`를 반환합니다. (다른 인스턴스에 인수가 전달됬을 때) 이 불리언 값을 통해 +중복 생성된 인스턴스는 즉시 종료시켜야 합니다. -OS X에선 사용자가 Finder에서 어플리케이션의 두 번째 인스턴스를 열려고 했을 때 자동으로 **Single Instance**화 하고 `open-file`과 `open-url` 이벤트를 발생시킵니다. -그러나 사용자가 어플리케이션을 CLI 터미널에서 실행하면 운영체제 시스템의 싱글 인스턴스 메커니즘이 무시되며 그대로 중복 실행됩니다. -따라서 OS X에서도 이 메서드를 통해 확실히 중복 실행을 방지하는 것이 좋습니다. +OS X에선 사용자가 Finder에서 어플리케이션의 두 번째 인스턴스를 열려고 했을 때 자동으로 +**Single Instance**화 하고 `open-file`과 `open-url` 이벤트를 발생시킵니다. 그러나 +사용자가 어플리케이션을 CLI 터미널에서 실행하면 운영체제 시스템의 싱글 인스턴스 +메커니즘이 무시되며 그대로 중복 실행됩니다. 따라서 OS X에서도 이 메서드를 통해 확실히 +중복 실행을 방지하는 것이 좋습니다. -다음 예제는 두 번째 인스턴스가 생성되었을 때 중복된 인스턴스를 종료하고 주 어플리케이션 인스턴스의 윈도우 창을 활성화 시키는 예제입니다: +다음 예제는 두 번째 인스턴스가 생성되었을 때 중복된 인스턴스를 종료하고 주 어플리케이션 +인스턴스의 윈도우 창을 활성화 시키는 예제입니다: ```javascript var myWindow = null; @@ -386,8 +409,8 @@ app.on('ready', function() { Chrominum의 명령줄에 스위치를 추가합니다. `value`는 추가적인 값을 뜻하며 옵션입니다. -**참고:** 이 메서드는 `process.argv`에 영향을 주지 않습니다. - 개발자들은 보통 Chrominum의 로우 레벨 수준의 동작을 제어하기 위해 주로 사용합니다. +**참고:** 이 메서드는 `process.argv`에 영향을 주지 않습니다. 개발자들은 보통 +Chrominum의 로우 레벨 수준의 동작을 제어하기 위해 주로 사용합니다. ### `app.commandLine.appendArgument(value)` @@ -397,12 +420,14 @@ Chrominum의 명령줄에 인수를 추가합니다. 인수는 올바르게 인 ### `app.dock.bounce([type])` _OS X_ -* `type` String (optional) - `critical` 또는 `informational`을 지정할 수 있습니다. 기본값은 `informational` 입니다. +* `type` String (optional) - `critical` 또는 `informational`을 지정할 수 있습니다. + 기본값은 `informational` 입니다. -`critical`이 전달되면 dock 아이콘이 어플리케이션이 활성화되거나 요청이 중지되기 전까지 통통 튑니다. +`critical`이 전달되면 dock 아이콘이 어플리케이션이 활성화되거나 요청이 중지되기 전까지 +통통 튑니다. -`informational`이 전달되면 dock 아이콘이 1초만 통통 튑니다. -하지만 어플리케이션이 활성화되거나 요청이 중지되기 전까지 요청은 계속 활성화로 유지 됩니다. +`informational`이 전달되면 dock 아이콘이 1초만 통통 튑니다. 하지만 어플리케이션이 +활성화되거나 요청이 중지되기 전까지 요청은 계속 활성화로 유지 됩니다. 또한 요청을 취소할 때 사용할 수 있는 ID를 반환합니다. diff --git a/docs-translations/ko-KR/api/auto-updater.md b/docs-translations/ko-KR/api/auto-updater.md index 1b0d9c032ccc..04593ee57600 100644 --- a/docs-translations/ko-KR/api/auto-updater.md +++ b/docs-translations/ko-KR/api/auto-updater.md @@ -4,7 +4,8 @@ ## 플랫폼별 참고 사항 -`autoUpdater`는 기본적으로 모든 플랫폼에 대해 같은 API를 제공하지만, 여전히 플랫폼별로 약간씩 다른 점이 있습니다. +`autoUpdater`는 기본적으로 모든 플랫폼에 대해 같은 API를 제공하지만, 여전히 플랫폼별로 +약간씩 다른 점이 있습니다. ### OS X @@ -14,16 +15,18 @@ OS X에선 `auto-updater` 모듈이 [Squirrel.Mac][squirrel-mac]를 기반으로 ### Windows -Windows에선 `auto-updater` 모듈을 사용하기 전에 어플리케이션을 사용자의 장치에 설치해야 합니다. -[grunt-electron-installer][installer]를 사용하여 어플리케이션 인스톨러를 만드는 것을 권장합니다. +Windows에선 `auto-updater` 모듈을 사용하기 전에 어플리케이션을 사용자의 장치에 +설치해야 합니다. [grunt-electron-installer][installer]를 사용하여 어플리케이션 +인스톨러를 만드는 것을 권장합니다. Squirrel로 생성된 인스톨러는 [Application User Model ID][app-user-model-id]와 함께 -`com.squirrel.PACKAGE_ID.YOUR_EXE_WITHOUT_DOT_EXE`으로 형식화된 바로가기 아이콘을 생성합니다. -`com.squirrel.slack.Slack` 과 `com.squirrel.code.Code`가 그 예시입니다. -`app.setAppUserModelId` API를 통해 어플리케이션 ID를 동일하게 유지해야 합니다. -그렇지 않으면 Windows 작업 표시줄에 어플리케이션을 고정할 때 제대로 적용되지 않을 수 있습니다. +`com.squirrel.PACKAGE_ID.YOUR_EXE_WITHOUT_DOT_EXE`으로 형식화된 바로가기 아이콘을 +생성합니다. `com.squirrel.slack.Slack` 과 `com.squirrel.code.Code`가 그 예시입니다. +`app.setAppUserModelId` API를 통해 어플리케이션 ID를 동일하게 유지해야 합니다. 그렇지 +않으면 Windows 작업 표시줄에 어플리케이션을 고정할 때 제대로 적용되지 않을 수 있습니다. -서버 사이드 요구 사항 또한 OS X와 다르게 적용됩니다. 자세한 내용은 [Squirrel.Windows][squirrel-windows]를 참고하세요. +서버 사이드 요구 사항 또한 OS X와 다르게 적용됩니다. 자세한 내용은 +[Squirrel.Windows][squirrel-windows]를 참고하세요. ### Linux @@ -78,7 +81,8 @@ Returns: ### `autoUpdater.checkForUpdates()` -서버에 새로운 업데이트가 있는지 요청을 보내 확인합니다. API를 사용하기 전에 `setFeedURL`를 호출해야 합니다. +서버에 새로운 업데이트가 있는지 요청을 보내 확인합니다. API를 사용하기 전에 +`setFeedURL`를 호출해야 합니다. ### `autoUpdater.quitAndInstall()` diff --git a/docs-translations/ko-KR/api/browser-window.md b/docs-translations/ko-KR/api/browser-window.md index 02ae9eb66049..ef1f270a010d 100644 --- a/docs-translations/ko-KR/api/browser-window.md +++ b/docs-translations/ko-KR/api/browser-window.md @@ -16,13 +16,16 @@ win.loadURL('https://github.com'); win.show(); ``` -또한 [Frameless Window](frameless-window.md) API를 사용하여 창 테두리가 없는 윈도우 창을 생성할 수 있습니다. +또한 [Frameless Window](frameless-window.md) API를 사용하여 창 테두리가 없는 윈도우 +창을 생성할 수 있습니다. ## Class: BrowserWindow -`BrowserWindow`는 [EventEmitter](http://nodejs.org/api/events.html#events_class_events_eventemitter)를 상속받은 클래스 입니다. +`BrowserWindow`는 [EventEmitter](http://nodejs.org/api/events.html#events_class_events_eventemitter)를 +상속받은 클래스 입니다. -`BrowserWindow`는 `options`를 통해 네이티브 속성을 포함한 새로운 윈도우 창을 생성합니다. +`BrowserWindow`는 `options`를 통해 네이티브 속성을 포함한 새로운 윈도우 창을 +생성합니다. ### `new BrowserWindow(options)` @@ -33,7 +36,8 @@ win.show(); * `x` Integer - 화면을 기준으로 창 좌측을 오프셋 한 위치. * `y` Integer - 화면을 기준으로 창 상단을 오프셋 한 위치. * `useContentSize` Boolean - `width`와 `height`를 웹 페이지의 크기로 사용합니다. - 이 속성을 사용하면 웹 페이지의 크기에 윈도우 프레임 크기가 추가되므로 실제 창은 조금 더 커질 수 있습니다. + 이 속성을 사용하면 웹 페이지의 크기에 윈도우 프레임 크기가 추가되므로 실제 창은 조금 + 더 커질 수 있습니다. * `center` Boolean - 윈도우 창을 화면 정 중앙에 위치시킵니다. * `minWidth` Integer - 윈도우 창의 최소 가로 너비. * `minHeight` Integer - 윈도우 창의 최소 세로 높이. @@ -46,42 +50,65 @@ win.show(); * `skipTaskbar` Boolean - 작업표시줄 어플리케이션 아이콘 표시 여부. * `kiosk` Boolean - Kiosk(키오스크) 모드. * `title` String - 기본 윈도우 창 제목. -* `icon` [NativeImage](native-image.md) - 윈도우 아이콘, 생략하면 실행 파일의 아이콘이 대신 사용됩니다. +* `icon` [NativeImage](native-image.md) - 윈도우 아이콘, 생략하면 실행 파일의 + 아이콘이 대신 사용됩니다. * `show` Boolean - 윈도우가 생성되면 보여줄지 여부. -* `frame` Boolean - `false`로 지정하면 창을 [Frameless Window](frameless-window.md) 형태로 생성합니다. -* `acceptFirstMouse` Boolean - 윈도우가 비활성화 상태일 때 내부 컨텐츠 클릭 시 활성화 되는 동시에 단일 mouse-down 이벤트를 발생시킬지 여부. +* `frame` Boolean - `false`로 지정하면 창을 [Frameless Window](frameless-window.md) + 형태로 생성합니다. +* `acceptFirstMouse` Boolean - 윈도우가 비활성화 상태일 때 내부 컨텐츠 클릭 시 + 활성화 되는 동시에 단일 mouse-down 이벤트를 발생시킬지 여부. * `disableAutoHideCursor` Boolean - 파이핑중 자동으로 커서를 숨길지 여부. -* `autoHideMenuBar` Boolean - `Alt`를 누르지 않는 한 어플리케이션 메뉴바를 숨길지 여부. -* `enableLargerThanScreen` Boolean - 윈도우 창 크기가 화면 크기보다 크게 재조정 될 수 있는지 여부. -* `backgroundColor` String - 16진수로 표현된 윈도우의 배경 색. `#66CD00` 또는 `#FFF`가 사용될 수 있습니다. +* `autoHideMenuBar` Boolean - `Alt`를 누르지 않는 한 어플리케이션 메뉴바를 숨길지 + 여부. +* `enableLargerThanScreen` Boolean - 윈도우 창 크기가 화면 크기보다 크게 재조정 될 + 수 있는지 여부. +* `backgroundColor` String - 16진수로 표현된 윈도우의 배경 색. `#66CD00` 또는 + `#FFF`가 사용될 수 있습니다. 이 속성은 Linux와 Windows에만 구현되어 있습니다. -* `darkTheme` Boolean - 설정에 상관 없이 무조건 어두운 윈도우 테마를 사용합니다. 몇몇 GTK+3 데스크톱 환경에서만 작동합니다. +* `darkTheme` Boolean - 설정에 상관 없이 무조건 어두운 윈도우 테마를 사용합니다. + 몇몇 GTK+3 데스크톱 환경에서만 작동합니다. * `transparent` Boolean - 윈도우 창을 [투명화](frameless-window.md)합니다. * `type` String - 윈도우 창 종류를 지정합니다. - 사용할 수 있는 창 종류는 `desktop`, `dock`, `toolbar`, `splash`, `notification`와 같습니다. - 이 속성은 Linux에서만 작동합니다. -* `standardWindow` Boolean - OS X의 표준 윈도우를 텍스쳐 윈도우 대신 사용합니다. 기본 값은 `true`입니다. -* `titleBarStyle` String, OS X - 윈도우 타이틀 바 스타일을 지정합니다. 이 속성은 OS X 10.10 Yosemite 이후 버전만 지원합니다. - 다음 3가지 종류의 값을 사용할 수 있습니다: + 사용할 수 있는 창 종류는 `desktop`, `dock`, `toolbar`, `splash`, + `notification`와 같습니다. 이 속성은 Linux에서만 작동합니다. +* `standardWindow` Boolean - OS X의 표준 윈도우를 텍스쳐 윈도우 대신 사용합니다. + 기본 값은 `true`입니다. +* `titleBarStyle` String, OS X - 윈도우 타이틀 바 스타일을 지정합니다. 이 속성은 + OS X 10.10 Yosemite 이후 버전만 지원합니다. 다음 3가지 종류의 값을 사용할 수 + 있습니다: * `default` 또는 미지정: 표준 Mac 회색 불투명 스타일을 사용합니다. * `hidden`: 타이틀 바를 숨기고 컨텐츠 전체를 윈도우 크기에 맞춥니다. 타이틀 바는 없어지지만 표준 창 컨트롤 ("신호등 버튼")은 왼쪽 상단에 유지됩니다. - * `hidden-inset`: `hidden` 타이틀 바 속성과 함께 신호등 버튼이 윈도우 모서리로부터 약간 더 안쪽으로 들어가도록합니다. -* `webPreferences` Object - 웹 페이지 기능을 설정합니다. 사용할 수 있는 속성은 다음과 같습니다: + * `hidden-inset`: `hidden` 타이틀 바 속성과 함께 신호등 버튼이 윈도우 모서리로부터 + 약간 더 안쪽으로 들어가도록합니다. +* `webPreferences` Object - 웹 페이지 기능을 설정합니다. 사용할 수 있는 속성은 + 다음과 같습니다: * `nodeIntegration` Boolean - node(node.js) 통합 여부. 기본값은 `true`입니다. - * `preload` String - 스크립트를 지정하면 페이지 내의 다른 스크립트가 작동하기 전에 로드됩니다. - 여기서 지정한 스크립트는 페이지의 node 통합 활성화 여부에 상관없이 언제나 모든 node API에 접근할 수 있습니다. - 그리고 `preload` 스크립트의 경로는 절대 경로로 지정해야 합니다. + * `preload` String - 스크립트를 지정하면 페이지 내의 다른 스크립트가 작동하기 전에 + 로드됩니다. 여기서 지정한 스크립트는 node 통합 활성화 여부에 상관없이 언제나 모든 + node API에 접근할 수 있습니다. 이 속성의 스크립트 경로는 절대 경로로 지정해야 + 합니다. + + note 통합이 비활성화되어있을 경우, preload 스크립트는 Node의 global 심볼들을 + 다시 global 스코프로 다시 포함 시킬 수 있습니다. [여기](process.md#event-loaded) + 의 예제를 참고하세요. * `partition` String - 페이지에서 사용할 세션을 지정합니다. 만약 `partition`이 - `persist:`로 시작하면 페이지는 지속성 세션을 사용하며 다른 모든 앱 내의 페이지에서 같은 `partition`을 사용할 수 있습니다. - 만약 `persist:` 접두어로 시작하지 않으면 페이지는 인-메모리 세션을 사용합니다. 여러 페이지에서 같은 `partition`을 지정하면 - 같은 세션을 공유할 수 있습니다. `partition`을 지정하지 않으면 어플리케이션의 기본 세션이 사용됩니다. - * `zoomFactor` Number - 페이지의 기본 줌 값을 지정합니다. 예를 들어 `300%`를 표현하려면 `3.0`으로 지정합니다. + `persist:`로 시작하면 페이지는 지속성 세션을 사용하며 다른 모든 앱 내의 + 페이지에서 같은 `partition`을 사용할 수 있습니다. 만약 `persist:` 접두어로 + 시작하지 않으면 페이지는 인-메모리 세션을 사용합니다. 여러 페이지에서 같은 + `partition`을 지정하면 같은 세션을 공유할 수 있습니다. `partition`을 지정하지 + 않으면 어플리케이션의 기본 세션이 사용됩니다. + * `zoomFactor` Number - 페이지의 기본 줌 값을 지정합니다. 예를 들어 `300%`를 + 표현하려면 `3.0`으로 지정합니다. * `javascript` Boolean - * `webSecurity` Boolean - `false`로 지정하면 same-origin 정책을 비활성화합니다. (이 속성은 보통 사람에 의해 웹 사이트를 테스트할 때 사용합니다) - 그리고 `allowDisplayingInsecureContent`와 `allowRunningInsecureContent`이 사용자로부터 `true`로 지정되지 않은 경우 `true`로 지정합니다. - * `allowDisplayingInsecureContent` Boolean - https 페이지에서 http URL에서 로드한 이미지 같은 리소스를 표시할 수 있도록 허용합니다. - * `allowRunningInsecureContent` Boolean - https 페이지에서 http URL에서 로드한 JavaScript와 CSS 또는 플러그인을 실행시킬 수 있도록 허용합니다. + * `webSecurity` Boolean - `false`로 지정하면 same-origin 정책을 비활성화합니다. + (이 속성은 보통 사람에 의해 웹 사이트를 테스트할 때 사용합니다) 그리고 + `allowDisplayingInsecureContent`와 `allowRunningInsecureContent`이 + 사용자로부터 `true`로 지정되지 않은 경우 `true`로 지정합니다. + * `allowDisplayingInsecureContent` Boolean - https 페이지에서 http URL에서 + 로드한 이미지 같은 리소스를 표시할 수 있도록 허용합니다. + * `allowRunningInsecureContent` Boolean - https 페이지에서 http URL에서 로드한 + JavaScript와 CSS 또는 플러그인을 실행시킬 수 있도록 허용합니다. * `images` Boolean * `java` Boolean * `textAreasAreResizable` Boolean @@ -93,9 +120,11 @@ win.show(); * `overlayScrollbars` Boolean * `overlayFullscreenVideo` Boolean * `sharedWorker` Boolean - * `directWrite` Boolean - Windows에서 폰트 랜더링을 위해 DirectWrite를 사용하는지를 지정합니다. - * `pageVisibility` Boolean - 현재 윈도우의 가시성을 반영하는 대신 페이지가 visible 또는 hidden 중 지정된 상태를 계속 유지하도록 합니다. - 이 속성을 `true`로 지정하면 DOM 타이머의 스로틀링을 방지할 수 있습니다. + * `directWrite` Boolean - Windows에서 폰트 랜더링을 위해 DirectWrite를 + 사용하는지를 지정합니다. + * `pageVisibility` Boolean - 현재 윈도우의 가시성을 반영하는 대신 페이지가 + visible 또는 hidden 중 지정된 상태를 계속 유지하도록 합니다. 이 속성을 `true`로 + 지정하면 DOM 타이머의 스로틀링을 방지할 수 있습니다. ## Events @@ -109,8 +138,8 @@ Returns: * `event` Event -문서의 제목이 변경될 때 발생하는 이벤트 입니다. -`event.preventDefault()`를 호출하여 네이티브 윈도우의 제목이 변경되는 것을 방지할 수 있습니다. +문서의 제목이 변경될 때 발생하는 이벤트 입니다. `event.preventDefault()`를 호출하여 +네이티브 윈도우의 제목이 변경되는 것을 방지할 수 있습니다. ### Event: 'close' @@ -132,18 +161,19 @@ Electron에선 빈 문자열 또는 `false`를 전달할 경우 윈도우 종료 window.onbeforeunload = function(e) { console.log('I do not want to be closed'); - // 반드시 문자열을 반환해야 하고 사용자에게 페이지 언로드에 대한 확인 창을 보여주는 보통의 브라우저와는 달리 - // Electron은 개발자에게 더 많은 옵션을 제공합니다. + // 반드시 문자열을 반환해야 하고 사용자에게 페이지 언로드에 대한 확인 창을 보여주는 + // 보통의 브라우저와는 달리 Electron은 개발자에게 더 많은 옵션을 제공합니다. // 빈 문자열을 반환하거나 false를 반환하면 페이지 언로드를 방지합니다. - // 또한 dialog API를 통해 사용자에게 어플리케이션을 종료할지에 대한 확인 창을 보여줄 수도 있습니다. + // 또한 dialog API를 통해 사용자에게 어플리케이션을 종료할지에 대한 확인 창을 + // 보여줄 수도 있습니다. e.returnValue = false; }; ``` ### Event: 'closed' -윈도우 종료가 완료된 경우 발생하는 이벤트입니다. -이 이벤트가 발생했을 경우 반드시 윈도우 창의 레퍼런스가 더 이상 사용되지 않도록 제거해야 합니다. +윈도우 종료가 완료된 경우 발생하는 이벤트입니다. 이 이벤트가 발생했을 경우 반드시 +윈도우 창의 레퍼런스가 더 이상 사용되지 않도록 제거해야 합니다. ### Event: 'unresponsive' @@ -209,9 +239,10 @@ __참고__: OS X에선 이 이벤트가 그저 `moved` 이벤트의 별칭(alias ### Event: 'app-command' _Windows_ -[App Command](https://msdn.microsoft.com/en-us/library/windows/desktop/ms646275(v=vs.85).aspx)가 호출됐을 때 발생하는 이벤트입니다. -이 이벤트는 일반적으로 키보드 미디어 키 또는 브라우저 커맨드(기본 동작 키)에 관련되어 있습니다. -예를 들어 Windows에서 작동하는 몇몇 마우스는 "뒤로가기" 같은 동작을 포함하고 있습니다. +[App Command](https://msdn.microsoft.com/en-us/library/windows/desktop/ms646275(v=vs.85).aspx)가 +호출됐을 때 발생하는 이벤트입니다. 이 이벤트는 일반적으로 키보드 미디어 키 또는 +브라우저 커맨드(기본 동작 키)에 관련되어 있습니다. 예를 들어 Windows에서 작동하는 +몇몇 마우스는 "뒤로가기" 같은 동작을 포함하고 있습니다. ```javascript someWindow.on('app-command', function(e, cmd) { @@ -272,9 +303,11 @@ var win = new BrowserWindow({ width: 800, height: 600 }); ### `win.webContents` -윈도우의 `WebContents` 객체입니다. 모든 웹 페이지와 관련된 이벤트와 작업이 이 객체를 통해 수행됩니다. +윈도우의 `WebContents` 객체입니다. 모든 웹 페이지와 관련된 이벤트와 작업이 이 객체를 +통해 수행됩니다. -메서드나 이벤트에 대한 자세한 내용은 [`webContents` 문서](web-contents.md)를 참고하세요. +메서드나 이벤트에 대한 자세한 내용은 [`webContents` 문서](web-contents.md)를 +참고하세요. ### `win.id` @@ -288,15 +321,17 @@ var win = new BrowserWindow({ width: 800, height: 600 }); ### `win.destroy()` -윈도우를 강제로 닫습니다. 웹 페이지의 `unload` 와 `beforeunload` 이벤트는 일어나지 않습니다. -또한 이 윈도우의 `close`도 일어나지 않습니다. 하지만 `closed` 이벤트는 반드시 발생함을 보장합니다. +윈도우를 강제로 닫습니다. 웹 페이지의 `unload` 와 `beforeunload` 이벤트는 일어나지 +않습니다. 또한 이 윈도우의 `close`도 일어나지 않습니다. 하지만 `closed` 이벤트는 +반드시 발생함을 보장합니다. 이 메서드는 렌더러 프로세스가 예기치 않게 크래시가 일어났을 경우에만 사용해야 합니다. ### `win.close()` -윈도우의 종료를 시도합니다. 이 메서드는 사용자가 윈도우의 닫기 버튼을 클릭했을 때와 같은 효과를 냅니다. -웹 페이지는 로드가 취소되고 종료됩니다. 자세한 내용은 [close 이벤트](#event-close)를 참고하세요. +윈도우의 종료를 시도합니다. 이 메서드는 사용자가 윈도우의 닫기 버튼을 클릭했을 때와 +같은 효과를 냅니다. 웹 페이지는 로드가 취소되고 종료됩니다. 자세한 내용은 +[close 이벤트](#event-close)를 참고하세요. ### `win.focus()` @@ -359,19 +394,22 @@ var win = new BrowserWindow({ width: 800, height: 600 }); ### `win.setAspectRatio(aspectRatio[, extraSize])` _OS X_ * `aspectRatio` 유지하려 하는 컨텐츠 뷰 일부의 종횡비 -* `extraSize` Object (optional) - 종횡비를 유지하는 동안 포함되지 않을 엑스트라 크기. 사용 가능한 속성: +* `extraSize` Object (optional) - 종횡비를 유지하는 동안 포함되지 않을 엑스트라 크기. + 사용 가능한 속성: * `width` Integer * `height` Integer -이 메서드는 윈도우의 종횡비를 유지하는 기능을 수행합니다. -엑스트라 크기는 개발자가 픽셀로 특정한 공간이 있을 때 종횡비 계산에서 제외됩니다. -이 API는 윈도우의 크기와 컨텐츠 사이즈의 차이를 이미 고려하고 있습니다. +이 메서드는 윈도우의 종횡비를 유지하는 기능을 수행합니다. 엑스트라 크기는 개발자가 +픽셀로 특정한 공간이 있을 때 종횡비 계산에서 제외됩니다. 이 API는 윈도우의 크기와 +컨텐츠 사이즈의 차이를 이미 고려하고 있습니다. 일반 윈도우에서 작동하는 HD 비디오 플레이어와 관련된 컨트롤을 고려합니다. -만약 15 픽셀의 컨트롤이 왼쪽 가장자리에 있고 25 픽셀의 컨트롤이 오른쪽 가장자리에 있으며 50 픽셀의 컨트롤이 플레이어 밑에 있을 때 -플레이어 자체가 16:9 종횡비(HD의 표준 종횡비는 @1920x1080)를 유지하기 위해선 이 함수를 16/9, [ 40, 50 ] 인수와 함께 호출해야 합니다. -두번째 인수 엑스트라 크기는 존재하는 크기만 관여하고 컨텐츠 뷰 내의 크기는 관여하지 않습니다. -그저 전체 컨텐츠 뷰 내에 있는 모든 엑스트라 너비, 높이 영역이 합해집니다. +만약 15 픽셀의 컨트롤이 왼쪽 가장자리에 있고 25 픽셀의 컨트롤이 오른쪽 가장자리에 +있으며 50 픽셀의 컨트롤이 플레이어 밑에 있을 때 플레이어 자체가 16:9 종횡비(HD의 표준 +종횡비는 @1920x1080)를 유지하기 위해선 이 함수를 16/9, [ 40, 50 ] 인수와 함께 +호출해야 합니다. 두번째 인수 엑스트라 크기는 존재하는 크기만 관여하고 컨텐츠 뷰 내의 +크기는 관여하지 않습니다. 그저 전체 컨텐츠 뷰 내에 있는 모든 엑스트라 너비, 높이 영역이 +합해집니다. ### `win.setBounds(options)` @@ -446,8 +484,8 @@ var win = new BrowserWindow({ width: 800, height: 600 }); * `flag` Boolean -윈도우가 언제나 다른 윈도우들 위에 표시되는지 여부를 지정합니다. -이 설정을 활성화 하면 윈도우는 포커스 될 수 없는 툴박스 윈도우가 아닌 일반 윈도우로 유지됩니다. +윈도우가 언제나 다른 윈도우들 위에 표시되는지 여부를 지정합니다. 이 설정을 활성화 하면 +윈도우는 포커스 될 수 없는 툴박스 윈도우가 아닌 일반 윈도우로 유지됩니다. ### `win.isAlwaysOnTop()` @@ -539,7 +577,8 @@ Windows 메시지 훅을 등록합니다. `callback`은 WndProc에서 메시지 * `edited` Boolean -윈도우의 문서가 변경되었는지 여부를 설정합니다. 그리고 `true`로 설정했을 때 타이틀 바의 아이콘이 회색으로 표시됩니다. +윈도우의 문서가 변경되었는지 여부를 설정합니다. 그리고 `true`로 설정했을 때 타이틀 바의 +아이콘이 회색으로 표시됩니다. ### `win.isDocumentEdited()` _OS X_ @@ -551,17 +590,17 @@ Windows 메시지 훅을 등록합니다. `callback`은 WndProc에서 메시지 ### `win.capturePage([rect, ]callback)` -* `rect` Object (optional) - 캡쳐할 페이지의 영역. 사용할 수 있는 속성은 다음과 같습니다: +* `rect` Object (optional) - 캡쳐할 페이지의 영역. + 사용할 수 있는 속성은 다음과 같습니다: * `x` Integer * `y` Integer * `width` Integer * `height` Integer * `callback` Function -페이지의 스크린샷을 `rect`에 설정한 만큼 캡처합니다. -캡처가 완료되면 `callback`이 `callback(image)` 형식으로 호출됩니다. -`image`는 [NativeImage](native-image.md)의 인스턴스이며 스크린샷 데이터를 담고있습니다. -`rect`를 생략하면 페이지 전체를 캡처합니다. +페이지의 스크린샷을 `rect`에 설정한 만큼 캡처합니다. 캡처가 완료되면 `callback`이 +`callback(image)` 형식으로 호출됩니다. `image`는 [NativeImage](native-image.md)의 +인스턴스이며 스크린샷 데이터를 담고있습니다. `rect`를 생략하면 페이지 전체를 캡처합니다. ### `win.print([options])` @@ -589,23 +628,24 @@ Windows 메시지 훅을 등록합니다. `callback`은 WndProc에서 메시지 * `progress` Double -작업표시줄에 표시되고 있는 어플리케이션 아이콘에 진행 상태를 표시합니다. [0, 1.0] 사이의 값을 지정할 수 있습니다. +작업표시줄에 표시되고 있는 어플리케이션 아이콘에 진행 상태를 표시합니다. [0, 1.0] +사이의 값을 지정할 수 있습니다. 진행 상태가 < 0 이 되면 진행 상태 표시를 제거합니다. 진행 상태가 > 1 이 되면 불확정 상태 표시로 전환합니다. -Linux 플랫폼에선 Unity 데스크톱 환경만 지원합니다. -그리고 이 기능을 사용하려면 `*.desktop` 파일을 생성한 후 `package.json`의 `desktopName` 필드에 파일 이름을 지정해야 합니다. -기본적으로 `app.getName().desktop`을 통해 접근합니다. +Linux 플랫폼에선 Unity 데스크톱 환경만 지원합니다. 그리고 이 기능을 사용하려면 +`*.desktop` 파일을 생성한 후 `package.json`의 `desktopName` 필드에 파일 이름을 +지정해야 합니다. 기본적으로 `app.getName().desktop`을 통해 접근합니다. ### `win.setOverlayIcon(overlay, description)` _Windows 7+_ -* `overlay` [NativeImage](native-image.md) - 작업표시줄 아이콘의 우측 하단에 표시될 아이콘입니다. -`null`로 지정하면 빈 오버레이가 사용됩니다 +* `overlay` [NativeImage](native-image.md) - 작업표시줄 아이콘의 우측 하단에 표시될 +아이콘입니다. `null`로 지정하면 빈 오버레이가 사용됩니다 * `description` String - 접근성 설정에 의한 스크린 리더에 제공될 설명입니다 -현재 작업표시줄 아이콘에 16px 크기의 오버레이를 지정합니다. -보통 이 기능은 어플리케이션의 여러 상태를 사용자에게 소극적으로 알리기 위한 방법으로 사용됩니다. +현재 작업표시줄 아이콘에 16px 크기의 오버레이를 지정합니다. 보통 이 기능은 +어플리케이션의 여러 상태를 사용자에게 소극적으로 알리기 위한 방법으로 사용됩니다. ### `win.setThumbarButtons(buttons)` _Windows 7+_ @@ -615,23 +655,27 @@ Linux 플랫폼에선 Unity 데스크톱 환경만 지원합니다. * `icon` [NativeImage](native-image.md) - 미리보기 툴바에 보여질 아이콘. * `tooltip` String (optional) - 버튼의 툴팁 텍스트. -* `flags` Array (optional) - 버튼의 특정 동작 및 상태 제어. 기본적으로 `enabled`이 사용됩니다. - 이 속성은 다음 문자열들을 포함할 수 있습니다: +* `flags` Array (optional) - 버튼의 특정 동작 및 상태 제어. 기본적으로 `enabled`이 + 사용됩니다. 이 속성은 다음 문자열들을 포함할 수 있습니다: * `enabled` - 사용자가 사용할 수 있도록 버튼이 활성화 됩니다. - * `disabled` - 버튼이 비활성화 됩니다. 버튼은 표시되지만 시각적인 상태는 사용자의 동작에 응답하지 않는 - 비활성화 상태로 표시됩니다. - * `dismissonclick` - 버튼이 클릭되면 작업표시줄 버튼의 미리보기(flyout)가 즉시 종료됩니다. + * `disabled` - 버튼이 비활성화 됩니다. 버튼은 표시되지만 시각적인 상태는 사용자의 + 동작에 응답하지 않는 비활성화 상태로 표시됩니다. + * `dismissonclick` - 버튼이 클릭되면 작업표시줄 버튼의 미리보기(flyout)가 즉시 + 종료됩니다. * `nobackground` - 버튼의 테두리를 표시하지 않습니다. 이미지에만 사용할 수 있습니다. * `hidden` - 버튼을 사용자에게 표시되지 않도록 숨깁니다. - * `noninteractive` - 버튼은 활성화되어 있지만 반응이 제거되며 버튼을 눌러도 눌려지지 않은 상태를 유지합니다. - 이 값은 버튼을 알림의 용도로 사용하기 위해 만들어졌습니다. + * `noninteractive` - 버튼은 활성화되어 있지만 반응이 제거되며 버튼을 눌러도 + 눌려지지 않은 상태를 유지합니다. 이 값은 버튼을 알림의 용도로 사용하기 위해 + 만들어졌습니다. * `click` - Function -윈도우 작업표시줄 버튼 레이아웃의 미리보기 이미지 영역에 미리보기 툴바와 버튼 세트를 지정합니다. -반환되는 `Boolean` 값은 미리보기 툴바가 성공적으로 추가됬는지를 알려줍니다. +윈도우 작업표시줄 버튼 레이아웃의 미리보기 이미지 영역에 미리보기 툴바와 버튼 세트를 +지정합니다. 반환되는 `Boolean` 값은 미리보기 툴바가 성공적으로 추가됬는지를 알려줍니다. -미리보기 이미지 영역의 제한된 크기로 인해 미리보기 툴바에 추가될 수 있는 최대 버튼의 개수는 7개이며 이 이상 추가될 수 없습니다. -플랫폼의 제약으로 인해 미리보기 툴바는 한 번 설정되면 삭제할 수 없습니다. 하지만 이 API에 빈 배열을 전달하여 버튼들을 제거할 수 있습니다. +미리보기 이미지 영역의 제한된 크기로 인해 미리보기 툴바에 추가될 수 있는 최대 버튼의 +개수는 7개이며 이 이상 추가될 수 없습니다. 플랫폼의 제약으로 인해 미리보기 툴바는 한 번 +설정되면 삭제할 수 없습니다. 하지만 이 API에 빈 배열을 전달하여 버튼들을 제거할 수 +있습니다. ### `win.showDefinitionForSelection()` _OS X_ @@ -644,7 +688,8 @@ Linux 플랫폼에선 Unity 데스크톱 환경만 지원합니다. 메뉴 막대 자동 숨김 기능을 활성화 합니다. 숨겨진 메뉴는 사용자가 `Alt` 키를 단일 입력했을 때만 표시됩니다. -메뉴 막대가 이미 표시되고 있을 때 `setAutoHideMenuBar(true)`를 호출한다고 해서 메뉴가 즉시 숨겨지지는 않습니다. +메뉴 막대가 이미 표시되고 있을 때 `setAutoHideMenuBar(true)`를 호출한다고 해서 +메뉴가 즉시 숨겨지지는 않습니다. ### `win.isMenuBarAutoHide()` @@ -654,8 +699,8 @@ Linux 플랫폼에선 Unity 데스크톱 환경만 지원합니다. * `visible` Boolean -메뉴 막대의 표시 여부를 설정합니다. -만약 메뉴 막대 자동 숨김 상태라면 여전히 사용자가 `Alt` 키를 입력하여 메뉴 막대를 표시되도록 할 수 있습니다. +메뉴 막대의 표시 여부를 설정합니다. 만약 메뉴 막대 자동 숨김 상태라면 여전히 사용자가 +`Alt` 키를 입력하여 메뉴 막대를 표시되도록 할 수 있습니다. **역주:** 기본 메뉴 막대를 완전히 없애려면 `win.setMenu(null)`를 호출해야 합니다. 단순히 이 API를 사용하면 여전히 메뉴에 등록된 핫 키가 작동합니다. diff --git a/docs-translations/ko-KR/api/chrome-command-line-switches.md b/docs-translations/ko-KR/api/chrome-command-line-switches.md index d3aa5dd6411b..3c825b1abb13 100644 --- a/docs-translations/ko-KR/api/chrome-command-line-switches.md +++ b/docs-translations/ko-KR/api/chrome-command-line-switches.md @@ -1,8 +1,9 @@ # 크롬 명령줄 스위치 지원 -크롬 명령줄(Command-Line) 스위치는 크롬 브라우저에서 제공되는 추가 옵션이며 Electron에서도 지원합니다. -[app][app]의 [ready][ready]이벤트가 작동하기 전에 [app.commandLine.appendSwitch][append-switch] API를 사용하면 -어플리케이션 내부에서 스위치들을 추가할 수 있습니다: +크롬 명령줄(Command-Line) 스위치는 크롬 브라우저에서 제공되는 추가 옵션이며 +Electron에서도 지원합니다. [app][app]의 [ready][ready]이벤트가 작동하기 전에 +[app.commandLine.appendSwitch][append-switch] API를 사용하면 어플리케이션 내부에서 +스위치를 추가할 수 있습니다: ```javascript const app = require('electron').app; @@ -32,8 +33,8 @@ HTTP 요청 캐시를 비활성화 합니다. ## --js-flags=`flags` -JS 엔진에 지정한 플래그를 전달합니다. -`flags`를 메인 프로세스에서 활성화하고자 한다면, Electron이 시작되기 전에 스위치를 전달해야 합니다. +JS 엔진에 지정한 플래그를 전달합니다. `flags`를 메인 프로세스에서 활성화하고자 한다면, +Electron이 시작되기 전에 스위치를 전달해야 합니다. ```bash $ electron --js-flags="--harmony_proxies --harmony_collections" your-app @@ -41,11 +42,12 @@ $ electron --js-flags="--harmony_proxies --harmony_collections" your-app ## --proxy-server=`address:port` -시스템 설정의 프록시 서버를 무시하고 지정한 서버로 연결합니다. HTTP와 HTTPS 요청에만 적용됩니다. +시스템 설정의 프록시 서버를 무시하고 지정한 서버로 연결합니다. HTTP와 HTTPS 요청에만 +적용됩니다. -시스템 프록시 서버 설정을 무시하고 지정한 서버로 연결합니다. -이 스위치는 HTTP와 HTTPS 그리고 WebSocket 요청에만 적용됩니다. -그리고 모든 프록시 서버가 HTTPS가 WebSocket 요청을 지원하지 않고 있을 수 있으므로 사용시 주의해야 합니다. +시스템 프록시 서버 설정을 무시하고 지정한 서버로 연결합니다. 이 스위치는 HTTP와 HTTPS +그리고 WebSocket 요청에만 적용됩니다. 그리고 모든 프록시 서버가 HTTPS가 WebSocket +요청을 지원하지 않고 있을 수 있으므로 사용시 주의해야 합니다. ## --proxy-pac-url=`url` @@ -53,7 +55,8 @@ $ electron --js-flags="--harmony_proxies --harmony_collections" your-app ## --no-proxy-server -프록시 서버를 사용하지 않습니다. 다른 프록시 서버 플래그 및 설정을 무시하고 언제나 직접 연결을 사용합니다. +프록시 서버를 사용하지 않습니다. 다른 프록시 서버 플래그 및 설정을 무시하고 언제나 직접 +연결을 사용합니다. ## --host-rules=`rules` @@ -61,24 +64,21 @@ Hostname 맵핑 규칙을 설정합니다. (`,`로 구분) 예시: -* `MAP * 127.0.0.1` Forces all hostnames to be mapped to 127.0.0.1 -* `MAP *.google.com proxy` Forces all google.com subdomains to be resolved to - "proxy". -* `MAP test.com [::1]:77` Forces "test.com" to resolve to IPv6 loopback. Will - also force the port of the resulting socket address to be 77. -* `MAP * baz, EXCLUDE www.google.com` Remaps everything to "baz", except for - "www.google.com". - -이 맵핑은 네트워크 요청시의 endpoint를 지정합니다. (TCP 연결과 직접 연결의 호스트 resolver, http 프록시 연결의 `CONNECT`, `SOCKS` 프록시 연결의 endpoint 호스트) +* `MAP * 127.0.0.1` 강제적으로 모든 호스트네임을 127.0.0.1로 맵핑합니다 +* `MAP *.google.com proxy` 강제적으로 모든 google.com의 서브도메인을 "proxy"로 + 연결합니다 +* `MAP test.com [::1]:77` 강제적으로 "test.com"을 IPv6 루프백으로 연결합니다. + 소켓 주소의 포트 또한 77로 고정됩니다. +* `MAP * baz, EXCLUDE www.google.com` "www.google.com"을 제외한 모든 것들을 + "baz"로 맵핑합니다. + +이 맵핑은 네트워크 요청시의 endpoint를 지정합니다. (TCP 연결과 직접 연결의 호스트 +resolver, http 프록시 연결의 `CONNECT`, `SOCKS` 프록시 연결의 endpoint 호스트) ## --host-resolver-rules=`rules` `--host-rules` 플래그와 비슷하지만 이 플래그는 host resolver에만 적용됩니다. -[app]: app.md -[append-switch]: app.md#appcommandlineappendswitchswitch-value -[ready]: app.md#event-ready - ## --ignore-certificate-errors 인증서 에러를 무시합니다. @@ -97,7 +97,8 @@ Net log 이벤트를 활성화하고 `path`에 로그를 기록합니다. ## --ssl-version-fallback-min=`version` -TLS fallback에서 사용할 SSL/TLS 최소 버전을 지정합니다. ("tls1", "tls1.1", "tls1.2") +TLS fallback에서 사용할 SSL/TLS 최소 버전을 지정합니다. ("tls1", "tls1.1", +"tls1.2") ## --cipher-suite-blacklist=`cipher_suites` @@ -107,21 +108,29 @@ SSL 암호화를 비활성화할 대상 목록을 지정합니다. (`,`로 구 Chromium의 로그를 콘솔에 출력합니다. -이 스위치는 어플리케이션이 로드되기 전에 분석 되므로 `app.commandLine.appendSwitch` 메서드에선 사용할 수 없습니다. -하지만 `ELECTRON_ENABLE_LOGGING` 환경 변수를 설정하면 본 스위치를 지정한 것과 같은 효과를 낼 수 있습니다. +이 스위치는 어플리케이션이 로드되기 전에 분석 되므로 `app.commandLine.appendSwitch` +메서드에선 사용할 수 없습니다. 하지만 `ELECTRON_ENABLE_LOGGING` 환경 변수를 설정하면 +본 스위치를 지정한 것과 같은 효과를 낼 수 있습니다. ## --v=`log_level` -기본 V-logging 최대 활성화 레벨을 지정합니다. 기본값은 0입니다. 기본적으로 양수를 레벨로 사용합니다. +기본 V-logging 최대 활성화 레벨을 지정합니다. 기본값은 0입니다. 기본적으로 양수를 +레벨로 사용합니다. 이 스위치는 `--enable-logging` 스위치를 같이 지정해야 작동합니다. ## --vmodule=`pattern` `--v` 옵션에 전달된 값을 덮어쓰고 모듈당 최대 V-logging 레벨을 지정합니다. -예를 들어 `my_module=2,foo*=3`는 `my_module.*`, `foo*.*`와 같은 파일 이름 패턴을 가진 모든 소스 코드들의 로깅 레벨을 각각 2와 3으로 설정합니다. +예를 들어 `my_module=2,foo*=3`는 `my_module.*`, `foo*.*`와 같은 파일 이름 패턴을 +가진 모든 소스 코드들의 로깅 레벨을 각각 2와 3으로 설정합니다. -또한 슬래시(`/`) 또는 백슬래시(`\`)를 포함하는 패턴은 지정한 경로에 대해 패턴을 테스트 합니다. -예를 들어 `*/foo/bar/*=2` 표현식은 `foo/bar` 디렉터리 안의 모든 소스 코드의 로깅 레벨을 2로 지정합니다. +또한 슬래시(`/`) 또는 백슬래시(`\`)를 포함하는 패턴은 지정한 경로에 대해 패턴을 테스트 +합니다. 예를 들어 `*/foo/bar/*=2` 표현식은 `foo/bar` 디렉터리 안의 모든 소스 코드의 +로깅 레벨을 2로 지정합니다. 이 스위치는 `--enable-logging` 스위치를 같이 지정해야 작동합니다. + +[app]: app.md +[append-switch]: app.md#appcommandlineappendswitchswitch-value +[ready]: app.md#event-ready diff --git a/docs-translations/ko-KR/api/clipboard.md b/docs-translations/ko-KR/api/clipboard.md index 01f1945856f3..2a0c98da2c09 100644 --- a/docs-translations/ko-KR/api/clipboard.md +++ b/docs-translations/ko-KR/api/clipboard.md @@ -1,13 +1,15 @@ # clipboard -`clipboard` 모듈은 복사/붙여넣기 작업을 수행하는 방법을 제공합니다. 다음 예제는 클립보드에 문자열을 씁니다: +`clipboard` 모듈은 복사/붙여넣기 작업을 수행하는 방법을 제공합니다. 다음 예제는 +클립보드에 문자열을 씁니다: ```javascript const clipboard = require('electron').clipboard; clipboard.writeText('Example String'); ``` -X Window 시스템에선 selection 클립보드도 존재합니다. 이를 사용하려면 인자 뒤에 `selection` 문자열을 같이 지정해주어야 합니다: +X Window 시스템에선 selection 클립보드도 존재합니다. 이를 사용하려면 인자 뒤에 +`selection` 문자열을 같이 지정해주어야 합니다: ```javascript clipboard.writeText('Example String', 'selection'); @@ -18,7 +20,8 @@ console.log(clipboard.readText('selection')); `clipboard` 모듈은 다음과 같은 메서드를 가지고 있습니다: -**참고:** Experimental 마크가 붙은 API는 실험적인 기능이며 차후 최신 버전에서 제거될 수 있습니다. +**참고:** Experimental 마크가 붙은 API는 실험적인 기능이며 차후 최신 버전에서 제거될 +수 있습니다. ### `clipboard.readText([type])` diff --git a/docs-translations/ko-KR/api/content-tracing.md b/docs-translations/ko-KR/api/content-tracing.md index f5f8b03d294a..ed73ce319f68 100644 --- a/docs-translations/ko-KR/api/content-tracing.md +++ b/docs-translations/ko-KR/api/content-tracing.md @@ -1,7 +1,9 @@ # contentTracing -`content-tracing` 모듈은 Chromium 컨텐츠 모듈단에서 생성된 데이터를 수집하고 추적하는데 사용됩니다. -이 모듈은 웹 인터페이스를 포함하고 있지 않으며 크롬 브라우저에서 `chrome://tracing/` 페이지를 열어 생성된 파일을 로드하면 결과를 볼 수 있습니다. +`content-tracing` 모듈은 Chromium 컨텐츠 모듈단에서 생성된 데이터를 수집하고 +추적하는데 사용됩니다. 이 모듈은 웹 인터페이스를 포함하고 있지 않으며 크롬 +브라우저에서 `chrome://tracing/` 페이지를 열어 생성된 파일을 로드하면 결과를 볼 수 +있습니다. ```javascript const contentTracing = require('electron').contentTracing; @@ -32,7 +34,8 @@ contentTracing.startRecording(options, function() { 카테고리 그룹 세트를 가져옵니다. 카테고리 그룹은 도달된 코드 경로를 변경할 수 있습니다. -모든 child 프로세스가 `getCategories` 요청을 승인하면 `callback`이 한 번 호출되며 인자에 카테고리 그룹의 배열이 전달됩니다. +모든 child 프로세스가 `getCategories` 요청을 승인하면 `callback`이 한 번 호출되며 +인자에 카테고리 그룹의 배열이 전달됩니다. ### `contentTracing.startRecording(options, callback)` @@ -43,12 +46,13 @@ contentTracing.startRecording(options, function() { 모든 프로세스에서 레코딩을 시작합니다. -레코딩은 지역적으로 즉시 실행됩니다. 그리고 비동기로 child 프로세스는 곧 EnableRecording 요청을 받게 됩니다. -모든 child 프로세스가 `startRecording` 요청을 승인하면 `callback`이 한 번 호출됩니다. +레코딩은 지역적으로 즉시 실행됩니다. 그리고 비동기로 child 프로세스는 곧 +EnableRecording 요청을 받게 됩니다. 모든 child 프로세스가 `startRecording` 요청을 +승인하면 `callback`이 한 번 호출됩니다. `categoryFilter`는 어떤 카테고리 그룹이 트레이싱 되어야 하는지 필터링할 수 있습니다. -필터는 `-` 접두사를 통해 특정 카테고리 그룹을 제외할 수 있습니다. -카테고리 패턴은 같은 리스트 내에서 포함과 제외를 함께 사용할 수 없습니다. +필터는 `-` 접두사를 통해 특정 카테고리 그룹을 제외할 수 있습니다. 카테고리 패턴은 같은 +리스트 내에서 포함과 제외를 함께 사용할 수 없습니다. 예제: @@ -56,7 +60,8 @@ contentTracing.startRecording(options, function() { * `test_MyTest*,test_OtherStuff`, * `"-excluded_category1,-excluded_category2` -`traceOptions`은 어떤 종류의 트레이싱을 사용할 수 있는지 지정하고 콤마로 리스트를 구분합니다. +`traceOptions`은 어떤 종류의 트레이싱을 사용할 수 있는지 지정하고 콤마로 리스트를 +구분합니다. 사용할 수 있는 옵션은 다음과 같습니다: @@ -67,12 +72,13 @@ contentTracing.startRecording(options, function() { * `enable-systrace` 첫번째부터 3번째까지의 옵션은 추적 레코딩 모드입니다. 이에 따라 상호 배타적입니다. -만약 레코딩 모드가 한 개 이상 지정되면 마지막 지정한 모드만 사용됩니다. -어떤 모드도 설정되지 않았다면 `record-until-full` 모드가 기본으로 사용됩니다. +만약 레코딩 모드가 한 개 이상 지정되면 마지막 지정한 모드만 사용됩니다. 어떤 모드도 +설정되지 않았다면 `record-until-full` 모드가 기본으로 사용됩니다. 추적 옵션은 `traceOptions`이 파싱되어 적용되기 전까지 다음과 같은 기본값이 사용됩니다. -`record-until-full`이 기본 모드, `enable-sampling`과 `enable-systrace`옵션은 포함되지 않음 +`record-until-full`이 기본 모드, `enable-sampling`과 `enable-systrace`옵션은 +포함되지 않음 ## `contentTracing.stopRecording(resultFilePath, callback)` @@ -81,15 +87,18 @@ contentTracing.startRecording(options, function() { 모든 프로세스에서 레코딩을 중지합니다. -Child 프로세스는 일반적으로 추적 데이터와 희귀한 플러시 그리고 추적 데이터를 메인 프로세스로 보내는 작업에 대해 캐싱 합니다. -이러한 일을 하는 이유는 IPC를 통해 추적 데이터를 보내는 작업은 매우 비싼 연산을 동반하기 때문입니다. -우리는 추적에 의한 런타임 오버헤드를 피하고자 합니다. -그래서 추적이 끝나면 모든 child 프로세스에 보류된 추적 데이터를 플러시 할 것인지 물어봅니다. +Child 프로세스는 일반적으로 추적 데이터와 희귀한 플러시 그리고 추적 데이터를 메인 +프로세스로 보내는 작업에 대해 캐싱 합니다. 이러한 일을 하는 이유는 IPC를 통해 추적 +데이터를 보내는 작업은 매우 비싼 연산을 동반하기 때문입니다. 우리는 추적에 의한 런타임 +오버헤드를 피하고자 합니다. 그래서 추적이 끝나면 모든 child 프로세스에 보류된 추적 +데이터를 플러시 할 것인지 물어봅니다. -모든 child 프로세스가 `stopRecording` 요청을 승인하면 `callback`에 추적 데이터 파일을 포함하여 한 번 호출됩니다. +모든 child 프로세스가 `stopRecording` 요청을 승인하면 `callback`에 추적 데이터 +파일을 포함하여 한 번 호출됩니다. -추적 데이터는 `resultFilePath` 해당 경로가 비어있는 경우에 한 해 해당 경로에 작성되거나 임시 파일에 작성됩니다. -실제 파일 경로는 null이 아닌 이상 `callback`을 통해 전달됩니다. +추적 데이터는 `resultFilePath` 해당 경로가 비어있는 경우에 한 해 해당 경로에 +작성되거나 임시 파일에 작성됩니다. 실제 파일 경로는 null이 아닌 이상 `callback`을 +통해 전달됩니다. ### `contentTracing.startMonitoring(options, callback)` @@ -100,7 +109,8 @@ Child 프로세스는 일반적으로 추적 데이터와 희귀한 플러시 모든 프로세스에서 모니터링을 시작합니다. -모니터링은 지역적으로 즉시 시작됩니다. 그리고 이내 자식 프로세스들이 `startMonitoring` 비동기 요청을 받습니다. +모니터링은 지역적으로 즉시 시작됩니다. 그리고 이내 자식 프로세스들이 +`startMonitoring` 비동기 요청을 받습니다. 모든 자식 프로세스가 `startMonitoring` 요청을 승인하면 `callback`이 한 번 호출됩니다. @@ -119,18 +129,21 @@ Child 프로세스는 일반적으로 추적 데이터와 희귀한 플러시 현재 모니터링 추적 데이터를 가져옵니다. -자식 프로세스들은 일반적으로 추적 데이터를 캐싱하며 드물게 플러시 하거나 메인 프로세스로 추적 데이터를 보냅니다. -왜냐하면 IPC를 통해 추적 데이터를 보내는데에는 많은 자원을 소비하기 때문입니다. -그리고 우리는 추적시 발생하는 불필요한 런타임 오버헤드를 피하고자 합니다. -그래서 추적이 끝나면 반드시 비동기로 자식 프로세스들의 보류된 추적 데이터를 플러시 할 것인지 물어봅니다. +자식 프로세스들은 일반적으로 추적 데이터를 캐싱하며 드물게 플러시 하거나 메인 +프로세스로 추적 데이터를 보냅니다. 왜냐하면 IPC를 통해 추적 데이터를 보내는데에는 +많은 자원을 소비하기 때문입니다. 그리고 우리는 추적시 발생하는 불필요한 런타임 +오버헤드를 피하고자 합니다. 그래서 추적이 끝나면 반드시 비동기로 자식 프로세스들의 +보류된 추적 데이터를 플러시 할 것인지 물어봅니다. -모든 자식 프로세스가 `captureMonitoringSnapshot` 요청을 승인하면 추적 데이터 파일을 포함하는 `callback`이 한 번 호출됩니다. +모든 자식 프로세스가 `captureMonitoringSnapshot` 요청을 승인하면 추적 데이터 파일을 +포함하는 `callback`이 한 번 호출됩니다. ### `contentTracing.getTraceBufferUsage(callback)` * `callback` Function -추적 버퍼 % 전체 상태의 프로세스간 최대치를 가져옵니다. TraceBufferUsage 값이 결정되면 `callback`이 한 번 호출됩니다. +추적 버퍼 % 전체 상태의 프로세스간 최대치를 가져옵니다. TraceBufferUsage 값이 +결정되면 `callback`이 한 번 호출됩니다. ### `contentTracing.setWatchEvent(categoryName, eventName, callback)` @@ -142,4 +155,5 @@ Child 프로세스는 일반적으로 추적 데이터와 희귀한 플러시 ### `contentTracing.cancelWatchEvent()` -Watch 이벤트를 중단합니다. 만약 추적이 활성화되어 있다면 이 메서드는 watch 이벤트 콜백과 race가 일어날 것입니다. +Watch 이벤트를 중단합니다. 만약 추적이 활성화되어 있다면 이 메서드는 watch 이벤트 +콜백과 race가 일어날 것입니다. diff --git a/docs-translations/ko-KR/api/crash-reporter.md b/docs-translations/ko-KR/api/crash-reporter.md index a5d29551571e..a4d42f013366 100644 --- a/docs-translations/ko-KR/api/crash-reporter.md +++ b/docs-translations/ko-KR/api/crash-reporter.md @@ -1,6 +1,7 @@ # crashReporter -`crash-reporter` 모듈은 어플리케이션의 크래시 정보를 자동으로 원격 서버에 업로드하는데 사용합니다. +`crash-reporter` 모듈은 어플리케이션의 크래시 정보를 자동으로 원격 서버에 +업로드하는데 사용합니다. 다음 예제는 윈격 서버에 어플리케이션 크래시 정보를 자동으로 보고하는 예제입니다: @@ -34,12 +35,13 @@ crashReporter.start({ * 크래시 리포트 시 같이 보낼 추가 정보를 지정하는 객체입니다. * 문자열로 된 속성만 정상적으로 보내집니다. * 중첩 객체는 지원되지 않습니다. (Nested objects are not supported) - + 다른 crashReporter API를 사용하기 전에 이 메서드를 먼저 호출해야 합니다. -**참고:** OS X에선 Windows와 Linux의 `breakpad`와 달리 새로운 `crashpad` 클라이언트를 사용합니다. -오류 수집 기능을 활성화 시키려면 오류를 수집하고 싶은 메인 프로세스나 랜더러 프로세스에서 -`crashReporter.start` 메서드를 호출하여 `crashpad`를 초기화 해야합니다. +**참고:** OS X에선 Windows와 Linux의 `breakpad`와 달리 새로운 `crashpad` +클라이언트를 사용합니다. 오류 수집 기능을 활성화 시키려면 오류를 수집하고 싶은 메인 +프로세스나 랜더러 프로세스에서 `crashReporter.start` 메서드를 호출하여 `crashpad`를 +초기화 해야합니다. ### `crashReporter.getLastCrashReport()` diff --git a/docs-translations/ko-KR/api/dialog.md b/docs-translations/ko-KR/api/dialog.md index e7e81240da0f..bb92c1f43e89 100644 --- a/docs-translations/ko-KR/api/dialog.md +++ b/docs-translations/ko-KR/api/dialog.md @@ -1,7 +1,8 @@ # dialog -`dialog` 모듈은 파일 열기, 알림과 같은 네이티브 시스템의 대화 상자를 조작할 때 사용할 수 있는 모듈입니다. -이 모듈을 사용하면 웹 어플리케이션에서 일반 네이티브 어플리케이션과 비슷한 사용자 경험을 제공할 수 있습니다. +`dialog` 모듈은 파일 열기, 알림과 같은 네이티브 시스템의 대화 상자를 조작할 때 사용할 +수 있는 모듈입니다. 이 모듈을 사용하면 웹 어플리케이션에서 일반 네이티브 어플리케이션과 +비슷한 사용자 경험을 제공할 수 있습니다. 다음 예제는 파일과 디렉터리를 다중으로 선택하는 대화 상자를 표시하는 예제입니다: @@ -11,7 +12,8 @@ const dialog = require('electron').dialog; console.log(dialog.showOpenDialog({ properties: [ 'openFile', 'openDirectory', 'multiSelections' ]})); ``` -**OS X 알림**: 대화 상자를 시트처럼 보여지게 하려면 `browserWindow` 인자에 `BrowserWindow` 객체의 참조를 제공하면 됩니다. +**OS X 참고**: 대화 상자를 시트처럼 보여지게 하려면 `browserWindow` 인자에 +`BrowserWindow` 객체의 참조를 제공하면 됩니다. ## Methods @@ -25,15 +27,18 @@ console.log(dialog.showOpenDialog({ properties: [ 'openFile', 'openDirectory', ' * `defaultPath` String * `filters` Array * `properties` Array - 대화 상자가 사용할 기능(모드)이 담긴 배열입니다. - 다음을 포함할 수 있습니다: `openFile`, `openDirectory`, `multiSelections`, `createDirectory` + 다음을 포함할 수 있습니다: `openFile`, `openDirectory`, `multiSelections`, + `createDirectory` * `callback` Function (optional) -사용할 대화 상자의 기능이 담긴 배열입니다. 다음을 포함할 수 있습니다: `openFile`, `openDirectory`, `multiSelections`, `createDirectory` +사용할 대화 상자의 기능이 담긴 배열입니다. 다음을 포함할 수 있습니다: `openFile`, +`openDirectory`, `multiSelections`, `createDirectory` -작업에 성공하면 콜백으로 유저가 선택한 파일의 경로를 포함한 배열을 반환합니다. 그 외엔 `undefined`를 반환합니다. +작업에 성공하면 콜백으로 유저가 선택한 파일의 경로를 포함한 배열을 반환합니다. 그 외의 +경우엔 `undefined`를 반환합니다. -`filters`를 지정하면 유저가 선택 가능한 파일 형식을 지정할 수 있습니다. -유저가 선택할 수 있는 타입에 제한을 두려면 다음과 같이 할 수 있습니다: +`filters`를 지정하면 유저가 선택 가능한 파일 형식을 지정할 수 있습니다. 유저가 선택할 +수 있는 타입에 제한을 두려면 다음과 같이 할 수 있습니다: ```javascript { @@ -46,14 +51,17 @@ console.log(dialog.showOpenDialog({ properties: [ 'openFile', 'openDirectory', ' } ``` -`extensions` 배열은 반드시 와일드카드와 마침표를 제외한 파일 확장자를 포함시켜야 합니다. -(예를 들어 `'png'`는 가능하지만 `'.png'`와 `'*.png'`는 안됩니다) -모든 파일을 보여주려면 `'*'`와 같은 와일드카드를 사용하면 됩니다. (다른 와일드카드는 지원하지 않습니다) +`extensions` 배열은 반드시 와일드카드와 마침표를 제외한 파일 확장자를 포함시켜야 +합니다. (예를 들어 `'png'`는 가능하지만 `'.png'`와 `'*.png'`는 안됩니다) 모든 파일을 +보여주려면 `'*'`와 같은 와일드카드를 사용하면 됩니다. (다른 와일드카드는 지원하지 + 않습니다) -`callback`이 전달되면 메소드가 비동기로 작동되며 결과는 `callback(filenames)`을 통해 전달됩니다. +`callback`이 전달되면 메서드가 비동기로 작동되며 결과는 `callback(filenames)`을 +통해 전달됩니다. -**참고:** Windows와 Linux에선 파일 선택 모드, 디렉터리 선택 모드를 동시에 사용할 수 없습니다. -이러한 이유로 `properties`를 `['openFile', 'openDirectory']`로 설정하면 디렉터리 선택 대화 상자가 표시됩니다. +**참고:** Windows와 Linux에선 파일 선택 모드, 디렉터리 선택 모드를 동시에 사용할 수 +없습니다. 이러한 이유로 `properties`를 `['openFile', 'openDirectory']`로 설정하면 +디렉터리 선택 대화 상자가 표시됩니다. ### `dialog.showSaveDialog([browserWindow][, options][, callback])` @@ -64,43 +72,52 @@ console.log(dialog.showOpenDialog({ properties: [ 'openFile', 'openDirectory', ' * `filters` Array * `callback` Function (optional) -작업에 성공하면 콜백으로 유저가 선택한 파일의 경로를 포함한 배열을 반환합니다. 그 외엔 `undefined`를 반환합니다. +작업에 성공하면 콜백으로 유저가 선택한 파일의 경로를 포함한 배열을 반환합니다. 그 외엔 +`undefined`를 반환합니다. -`filters`를 지정하면 유저가 저장 가능한 파일 형식을 지정할 수 있습니다. 사용 방법은 `dialog.showOpenDialog`의 `filters` 속성과 같습니다. +`filters`를 지정하면 유저가 저장 가능한 파일 형식을 지정할 수 있습니다. 사용 방법은 +`dialog.showOpenDialog`의 `filters` 속성과 같습니다. -`callback`이 전달되면 메소드가 비동기로 작동되며 결과는 `callback(filename)`을 통해 전달됩니다. +`callback`이 전달되면 메서드가 비동기로 작동되며 결과는 `callback(filename)`을 통해 전달됩니다. ### `dialog.showMessageBox([browserWindow][, options][, callback])` * `browserWindow` BrowserWindow * `options` Object - * `type` String - `"none"`, `"info"`, `"error"`, `"question"`, `"warning"` 중 하나를 사용할 수 있습니다. - Windows에선 따로 `icon`을 설정하지 않은 이상 "question"과 "info"는 같은 아이콘으로 표시됩니다. + * `type` String - `"none"`, `"info"`, `"error"`, `"question"`, `"warning"` 중 + 하나를 사용할 수 있습니다. Windows에선 따로 `icon`을 설정하지 않은 이상 + "question"과 "info"는 같은 아이콘으로 표시됩니다. * `buttons` Array - 버튼들의 라벨을 포함한 배열입니다. * `title` String - 대화 상자의 제목입니다. 몇몇 플랫폼에선 보이지 않을 수 있습니다. * `message` String - 대화 상자의 본문 내용입니다. * `detail` String - 메시지의 추가 정보입니다. * `icon` [NativeImage](native-image.md) - * `cancelId` Integer - 유저가 대화 상자의 버튼을 클릭하지 않고 대화 상자를 취소했을 때 반환되는 버튼의 인덱스입니다. - 기본적으로 버튼 리스트가 "cancel" 또는 "no" 라벨을 가지고 있을 때 해당 버튼의 인덱스를 반환합니다. 따로 두 라벨이 지정되지 않은 경우 0을 반환합니다. - OS X와 Windows에선 `cancelId` 지정 여부에 상관없이 "Cancel" 버튼이 언제나 `cancelId`로 지정됩니다. - * `noLink` Boolean - Windows Electron은 "Cancel"이나 "Yes"와 같은 흔히 사용되는 버튼을 찾으려고 시도하고 - 대화 상자 내에서 해당 버튼을 커맨드 링크처럼 만듭니다. 이 기능으로 앱을 좀 더 Modern Windows 앱처럼 만들 수 있습니다. - 이 기능을 원하지 않으면 `noLink`를 true로 지정하면 됩니다. + * `cancelId` Integer - 유저가 대화 상자의 버튼을 클릭하지 않고 대화 상자를 취소했을 + 때 반환되는 버튼의 인덱스입니다. 기본적으로 버튼 리스트가 "cancel" 또는 "no" + 라벨을 가지고 있을 때 해당 버튼의 인덱스를 반환합니다. 따로 두 라벨이 지정되지 + 않은 경우 0을 반환합니다. OS X와 Windows에선 `cancelId` 지정 여부에 상관없이 + "Cancel" 버튼이 언제나 `cancelId`로 지정됩니다. + * `noLink` Boolean - Windows Electron은 "Cancel"이나 "Yes"와 같은 흔히 사용되는 + 버튼을 찾으려고 시도하고 대화 상자 내에서 해당 버튼을 커맨드 링크처럼 만듭니다. + 이 기능으로 앱을 좀 더 Modern Windows 앱처럼 만들 수 있습니다. 이 기능을 원하지 + 않으면 `noLink`를 true로 지정하면 됩니다. * `callback` Function -대화 상자를 표시합니다. `browserWindow`를 지정하면 대화 상자가 완전히 닫힐 때까지 지정한 창을 사용할 수 없습니다. -완료 시 유저가 선택한 버튼의 인덱스를 반환합니다. +대화 상자를 표시합니다. `browserWindow`를 지정하면 대화 상자가 완전히 닫힐 때까지 +지정한 창을 사용할 수 없습니다. 완료 시 유저가 선택한 버튼의 인덱스를 반환합니다. -역주: 부정을 표현하는 "아니오", "취소"와 같은 한글 단어는 지원되지 않습니다. -만약 OS X 또는 Windows에서 "확인", "취소"와 같은 순서로 버튼을 지정하게 될 때 Alt + f4로 해당 대화 상자를 끄게 되면 "확인"을 누른 것으로 판단되어 버립니다. -이를 해결하려면 "Cancel"을 대신 사용하거나 BrowserWindow API를 사용하여 대화 상자를 직접 구현해야합니다. +역주: 부정을 표현하는 "아니오", "취소"와 같은 한글 단어는 지원되지 않습니다. 만약 +OS X 또는 Windows에서 "확인", "취소"와 같은 순서로 버튼을 지정하게 될 때 Alt + f4로 +해당 대화 상자를 끄게 되면 "확인"을 누른 것으로 판단되어 버립니다. 이를 해결하려면 +"Cancel"을 대신 사용하거나 BrowserWindow API를 사용하여 대화 상자를 직접 구현해야 +합니다. -`callback`이 전달되면 메소드가 비동기로 작동되며 결과는 `callback(response)`을 통해 전달됩니다. +`callback`이 전달되면 메서드가 비동기로 작동되며 결과는 `callback(response)`을 통해 +전달됩니다. ### `dialog.showErrorBox(title, content)` 에러 메시지를 보여주는 대화 상자를 표시합니다. -이 API는 `app` 모듈의 `ready` 이벤트가 발생하기 전에 사용할 수 있습니다. -이 메소드는 보통 어플리케이션이 시작되기 전에 특정한 에러를 표시하기 위해 사용됩니다. +이 API는 `app` 모듈의 `ready` 이벤트가 발생하기 전에 사용할 수 있습니다. 이 메서드는 +보통 어플리케이션이 시작되기 전에 특정한 에러를 표시하기 위해 사용됩니다. diff --git a/docs-translations/ko-KR/api/download-item.md b/docs-translations/ko-KR/api/download-item.md index 95a00c857533..a367d0e000bd 100644 --- a/docs-translations/ko-KR/api/download-item.md +++ b/docs-translations/ko-KR/api/download-item.md @@ -1,8 +1,8 @@ # DownloadItem `DownloadItem`은 EventEmitter를 상속받았으며 Electron의 다운로드 아이템을 표현합니다. -이 클래스 객체는 `Session` 모듈의 `will-download` 이벤트에 사용되며 -사용자가 다운로드 아이템을 다룰 수 있도록 도와줍니다. +이 클래스 객체는 `Session` 모듈의 `will-download` 이벤트에 사용되며 사용자가 다운로드 +아이템을 다룰 수 있도록 도와줍니다. ```javascript // 메인 프로세스 @@ -38,9 +38,9 @@ win.webContents.session.on('will-download', function(event, item, webContents) { * `cancelled` - 다운로드가 취소되었습니다. * `interrupted` - 다운로드 중 파일 서버로부터의 연결이 끊겼습니다. -다운로드가 종료될 때 발생하는 이벤트입니다. -이 이벤트는 다운로드 중 문제가 발생하여 중단되거나, 모두 성공적으로 완료된 경우, -`downloadItem.cancel()` 같은 메서드를 통해 취소하는 경우의 종료 작업이 모두 포함됩니다. +다운로드가 종료될 때 발생하는 이벤트입니다. 이 이벤트는 다운로드 중 문제가 발생하여 +중단되거나, 모두 성공적으로 완료된 경우, `downloadItem.cancel()` 같은 메서드를 통해 +취소하는 경우의 종료 작업이 모두 포함됩니다. ## Methods @@ -50,8 +50,9 @@ win.webContents.session.on('will-download', function(event, item, webContents) { * `path` String - 다운로드 아이템을 저장할 파일 경로를 지정합니다. -이 API는 세션의 `will-download` 콜백 함수에서만 사용할 수 있습니다. -사용자가 API를 통해 아무 경로도 설정하지 않을 경우 Electron은 기본 루틴 파일 저장을 실행합니다. (파일 대화 상자를 엽니다) +이 API는 세션의 `will-download` 콜백 함수에서만 사용할 수 있습니다. 사용자가 API를 +통해 아무 경로도 설정하지 않을 경우 Electron은 기본 루틴 파일 저장을 실행합니다. +(파일 대화 상자를 엽니다) ### `downloadItem.pause()` @@ -81,12 +82,14 @@ win.webContents.session.on('will-download', function(event, item, webContents) { 다운로드 아이템의 파일 이름을 표현하는 문자열을 반환합니다. -**참고:** 실제 파일 이름과 로컬 디스크에 저장되는 파일의 이름은 서로 다를 수 있습니다. 예를 들어 -만약 사용자가 파일을 저장할 때 파일 이름을 바꿨다면 실제 파일 이름과 저장 파일 이름은 서로 달라지게 됩니다. +**참고:** 실제 파일 이름과 로컬 디스크에 저장되는 파일의 이름은 서로 다를 수 있습니다. +예를 들어 만약 사용자가 파일을 저장할 때 파일 이름을 바꿨다면 실제 파일 이름과 저장 +파일 이름은 서로 달라지게 됩니다. ### `downloadItem.getTotalBytes()` -현재 아이템의 전체 다운로드 크기를 정수로 반환합니다. 크기가 unknown이면 0을 반환합니다. +현재 아이템의 전체 다운로드 크기를 정수로 반환합니다. 크기가 unknown이면 0을 +반환합니다. ### `downloadItem.getReceivedBytes()` diff --git a/docs-translations/ko-KR/api/file-object.md b/docs-translations/ko-KR/api/file-object.md index 6006220647dd..a2a19a530d4a 100644 --- a/docs-translations/ko-KR/api/file-object.md +++ b/docs-translations/ko-KR/api/file-object.md @@ -1,8 +1,8 @@ # `File` 객체 -DOM의 File 인터페이스는 네이티브 파일을 추상화 합니다. -유저가 직접 HTML5 File API를 이용하여 작업할 때 선택된 파일의 경로를 알 수 있도록 -Electron은 파일의 실제 경로를 담은 `path` 속성을 File 인터페이스에 추가하였습니다. +DOM의 File 인터페이스는 네이티브 파일을 추상화 합니다. 유저가 직접 HTML5 File API를 +이용하여 작업할 때 선택된 파일의 경로를 알 수 있도록 Electron은 파일의 실제 경로를 +담은 `path` 속성을 File 인터페이스에 추가하였습니다. 다음 예제는 앱으로 드래그 앤 드롭한 파일의 실제 경로를 가져옵니다: diff --git a/docs-translations/ko-KR/api/frameless-window.md b/docs-translations/ko-KR/api/frameless-window.md index a10cba190937..e13794e0fdfd 100644 --- a/docs-translations/ko-KR/api/frameless-window.md +++ b/docs-translations/ko-KR/api/frameless-window.md @@ -1,12 +1,14 @@ # Frameless Window -Frameless Window는 [창 테두리](https://developer.mozilla.org/en-US/docs/Glossary/Chrome)가 없는 윈도우를 말합니다. -이 기능은 윈도우 창의 일부분인 툴바와 같이 웹 페이지의 일부분이 아닌 부분을 보이지 않도록 합니다. -[`BrowserWindow`](browser-window.md) 클래스의 옵션에서 설정할 수 있습니다. +Frameless Window는 [창 테두리](https://developer.mozilla.org/en-US/docs/Glossary/Chrome)가 +없는 윈도우를 말합니다. 이 기능은 윈도우 창의 일부분인 툴바와 같이 웹 페이지의 일부분이 +아닌 부분을 보이지 않도록 합니다. [`BrowserWindow`](browser-window.md) 클래스의 +옵션에서 설정할 수 있습니다. ## Frameless Window 만들기 -Frameless Window를 만드려면 [BrowserWindow](browser-window.md) 객체의 `options`에서 `frame` 옵션을 `false`로 지정하면 됩니다: +Frameless Window를 만드려면 [BrowserWindow](browser-window.md) 객체의 +`options` 객체에서 `frame` 옵션을 `false`로 지정하면 됩니다: ```javascript const BrowserWindow = require('electron').BrowserWindow; @@ -15,9 +17,10 @@ var win = new BrowserWindow({ width: 800, height: 600, frame: false }); ### 최신 OS X에서 사용할 수 있는 대안 -OS X 10.10 Yosemite 이후의 최신 버전부터는 테두리가 없는 창을 만들 때 새로운 방법을 사용할 수 있습니다. -`frame` 옵션을 `false`로 지정하여 제목과 창 구성 요소를 모두 비활성화하는 대신 새로운 `title-bar-style` -옵션을 통해 제목만 숨기고 창 구성 요소("흔히 신호등으로 알고 있는")의 기능과 창 크기를 그대로 유지할 수 있습니다: +OS X 10.10 Yosemite 이후의 최신 버전부터는 테두리가 없는 창을 만들 때 새로운 방법을 +사용할 수 있습니다. `frame` 옵션을 `false`로 지정하여 제목과 창 구성 요소를 모두 +비활성화하는 대신 새로운 `title-bar-style` 옵션을 통해 제목만 숨기고 창 구성 요소 +("흔히 신호등으로 알고 있는")의 기능과 창 크기를 그대로 유지할 수 있습니다: ```javascript var win = new BrowserWindow({ 'title-bar-style': 'hidden' }); @@ -25,7 +28,8 @@ var win = new BrowserWindow({ 'title-bar-style': 'hidden' }); ## 투명한 창 만들기 -Frameless Window 창의 배경을 투명하게 만들고 싶다면 `transparent` 옵션을 `true`로 바꿔주기만 하면됩니다: +Frameless Window 창의 배경을 투명하게 만들고 싶다면 `transparent` 옵션을 `true`로 +바꿔주기만 하면됩니다: ```javascript var win = new BrowserWindow({ transparent: true, frame: false }); @@ -33,30 +37,38 @@ var win = new BrowserWindow({ transparent: true, frame: false }); ### API의 한계 -* 투명한 영역을 통과하여 클릭할 수 없습니다. 우리는 이 문제를 해결하기 위해 API를 제공할 예정이었지만 현재로써는 - [upstream 버그](https://code.google.com/p/chromium/issues/detail?id=387234)로 인해 중단된 상태입니다. -* 투명한 창은 크기를 조절할 수 없습니다. `resizable` 속성을 `true`로 할 경우 몇몇 플랫폼에선 크래시가 일어납니다. -* `blur` 필터는 웹 페이지에서만 적용됩니다. 윈도우 아래 컨텐츠에는 블러 효과를 적용할 방법이 없습니다. (예시: 유저의 시스템에 열린 다른 어플리케이션) -* Windows에선 DWM(데스크톱 창 관리자)가 비활성화되어 있을 경우 투명한 창이 작동하지 않습니다. +* 투명한 영역을 통과하여 클릭할 수 없습니다. 우리는 이 문제를 해결하기 위해 API를 + 제공할 예정이었지만 현재로써는 [upstream 버그](https://code.google.com/p/chromium/issues/detail?id=387234)로 + 인해 중단된 상태입니다. +* 투명한 창은 크기를 조절할 수 없습니다. `resizable` 속성을 `true`로 할 경우 몇몇 + 플랫폼에선 크래시가 일어납니다. +* `blur` 필터는 웹 페이지에서만 적용됩니다. 윈도우 아래 컨텐츠에는 블러 효과를 적용할 + 방법이 없습니다. (예시: 유저의 시스템에 열린 다른 어플리케이션) +* Windows에선 DWM(데스크톱 창 관리자)가 비활성화되어 있을 경우 투명한 창이 작동하지 + 않습니다. * Linux를 사용할 경우 [alpha channel doesn't work on some NVidia drivers](https://code.google.com/p/chromium/issues/detail?id=369209) - upstream 버그가 있는 관계로 투명한 창 기능을 사용하려면 CLI 옵션에 `--enable-transparent-visuals --disable-gpu`을 추가해야 합니다. - 이 옵션은 GPU의 사용을 중단하고 윈도우를 생성하는데 ARGB를 사용할 수 있도록 해줍니다. + upstream 버그가 있는 관계로 투명한 창 기능을 사용하려면 CLI 옵션에 + `--enable-transparent-visuals --disable-gpu`을 추가해야 합니다. 이 옵션은 GPU의 + 사용을 중단하고 윈도우를 생성하는데 ARGB를 사용할 수 있도록 해줍니다. * OS X(Mac)에선 네이티브 창에서 보여지는 그림자가 투명한 창에선 보이지 않습니다. ## 드래그 가능 위치 지정 -기본적으로 Frameless Window는 드래그 할 수 없습니다. -어플리케이션의 CSS에서 특정 범위를 `-webkit-app-region: drag`로 지정하면 OS의 기본 타이틀 바 처럼 드래그 되도록 할 수 있습니다. -그리고 `-webkit-app-region: no-drag`를 지정해서 드래그 불가능 영역을 만들 수도 있습니다. 현재 사각형 형태의 범위만 지원합니다. +기본적으로 Frameless Window는 드래그 할 수 없습니다. 어플리케이션의 CSS에서 특정 +범위를 `-webkit-app-region: drag`로 지정하면 OS의 기본 타이틀 바 처럼 드래그 되도록 +할 수 있습니다. 그리고 `-webkit-app-region: no-drag`를 지정해서 드래그 불가능 영역을 +만들 수도 있습니다. 현재 사각형 형태의 범위만 지원합니다. -창 전체를 드래그 가능하게 만드려면 `-webkit-app-region: drag`을 `body`의 스타일에 지정하면 됩니다: +창 전체를 드래그 가능하게 만드려면 `-webkit-app-region: drag`을 `body`의 스타일에 +지정하면 됩니다: ```html
``` -참고로 창 전체를 드래그 영역으로 지정할 경우 사용자가 버튼을 클릭할 수 없게 되므로 버튼은 드래그 불가능 영역으로 지정해야 합니다: +참고로 창 전체를 드래그 영역으로 지정할 경우 사용자가 버튼을 클릭할 수 없게 되므로 +버튼은 드래그 불가능 영역으로 지정해야 합니다: ```css button { @@ -64,13 +76,15 @@ button { } ``` -따로 커스텀 타이틀 바를 만들어 사용할 때는 타이틀 바 내부의 모든 버튼을 드래그 불가능 영역으로 지정해야 합니다. +따로 커스텀 타이틀 바를 만들어 사용할 때는 타이틀 바 내부의 모든 버튼을 드래그 불가 +영역으로 지정해야 합니다. ## 텍스트 선택 -Frameless Window에서 텍스트가 선택되는 드래그 동작은 혼란을 야기할 수 있습니다. -예를 들어 타이틀 바를 드래그 할 때 타이틀 바의 텍스트를 실수로 선택할 수 있습니다. -이를 방지하기 위해 다음과 같이 드래그 영역의 텍스트 선택 기능을 비활성화해야 할 필요가 있습니다: +Frameless Window에서 텍스트가 선택되는 드래그 동작은 혼란을 야기할 수 있습니다. 예를 +들어 타이틀 바를 드래그 할 때 타이틀 바의 텍스트를 실수로 선택할 수 있습니다. 이를 +방지하기 위해 다음과 같이 드래그 영역의 텍스트 선택 기능을 비활성화해야 할 필요가 +있습니다: ```css .titlebar { @@ -81,5 +95,7 @@ Frameless Window에서 텍스트가 선택되는 드래그 동작은 혼란을 ## 컨텍스트 메뉴 -몇몇 플랫폼에선 드래그 가능 영역이 non-client 프레임으로 처리됩니다. 이러한 플랫폼에선 드래그 가능 영역에서 오른쪽 클릭 할 경우 시스템 메뉴가 팝업 됩니다. -이러한 이유로 컨텍스트 메뉴 지정 시 모든 플랫폼에서 정상적으로 작동하게 하려면 커스텀 컨텍스트 메뉴를 드래그 영역 내에 만들어선 안됩니다. +몇몇 플랫폼에선 드래그 가능 영역이 non-client 프레임으로 처리됩니다. 이러한 플랫폼에선 +드래그 가능 영역에서 오른쪽 클릭 할 경우 시스템 메뉴가 팝업 됩니다. 이러한 이유로 +컨텍스트 메뉴 지정 시 모든 플랫폼에서 정상적으로 작동하게 하려면 커스텀 컨텍스트 메뉴를 +드래그 영역 내에 만들어선 안됩니다. diff --git a/docs-translations/ko-KR/api/global-shortcut.md b/docs-translations/ko-KR/api/global-shortcut.md index 2120f73cc5cb..1b8363bcbe70 100644 --- a/docs-translations/ko-KR/api/global-shortcut.md +++ b/docs-translations/ko-KR/api/global-shortcut.md @@ -1,10 +1,12 @@ # global-shortcut -`global-shortcut` 모듈은 운영체제의 전역 키보드 단축키를 등록/해제 하는 방법을 제공합니다. -이 모듈을 사용하여 사용자가 다양한 작업을 편하게 할 수 있도록 단축키를 정의 할 수 있습니다. +`global-shortcut` 모듈은 운영체제의 전역 키보드 단축키를 등록/해제 하는 방법을 +제공합니다. 이 모듈을 사용하여 사용자가 다양한 작업을 편하게 할 수 있도록 단축키를 +정의 할 수 있습니다. -**참고:** 등록된 단축키는 어플리케이션이 백그라운드로 작동(창이 포커스 되지 않음) 할 때도 계속해서 작동합니다. -이 모듈은 `app` 모듈의 `ready` 이벤트 이전에 사용할 수 없습니다. +**참고:** 등록된 단축키는 어플리케이션이 백그라운드로 작동(창이 포커스 되지 않음) 할 +때도 계속해서 작동합니다. 이 모듈은 `app` 모듈의 `ready` 이벤트 이전에 사용할 수 +없습니다. ```javascript const electron = require('electron'); @@ -43,13 +45,15 @@ app.on('will-quit', function() { * `accelerator` [Accelerator](accelerator.md) * `callback` Function -`accelerator`로 표현된 전역 단축키를 등록합니다. 유저로부터 등록된 단축키가 눌렸을 경우 `callback` 함수가 호출됩니다. +`accelerator`로 표현된 전역 단축키를 등록합니다. 유저로부터 등록된 단축키가 눌렸을 +경우 `callback` 함수가 호출됩니다. ### `globalShortcut.isRegistered(accelerator)` * `accelerator` [Accelerator](accelerator.md) -지정된 `accelerator` 단축키가 등록되었는지 여부를 확인합니다. 반환값은 boolean(true, false) 입니다. +지정된 `accelerator` 단축키가 등록되었는지 여부를 확인합니다. 반환값은 boolean값 +입니다. ### `globalShortcut.unregister(accelerator)` diff --git a/docs-translations/ko-KR/api/ipc-main.md b/docs-translations/ko-KR/api/ipc-main.md index fae8aa4d5cf6..2dffcaf79ab1 100644 --- a/docs-translations/ko-KR/api/ipc-main.md +++ b/docs-translations/ko-KR/api/ipc-main.md @@ -1,12 +1,14 @@ # ipcMain -`ipcMain` 모듈은 메인 프로세스에서 사용할 때 랜더러 프로세스(웹 페이지)에서 전달된 동기/비동기 메시지를 주고 받는 방법을 제공합니다. -랜더러 프로세스에서 메시지를 전달하면 이 모듈을 통해 메시지를 받을 수 있습니다. +`ipcMain` 모듈은 메인 프로세스에서 사용할 때 랜더러 프로세스(웹 페이지)에서 전달된 +동기/비동기 메시지를 주고 받는 방법을 제공합니다. 랜더러 프로세스에서 메시지를 전달하면 +이 모듈을 통해 메시지를 받을 수 있습니다. ## 메시지 전송 물론 메시지를 받는 것 말고도 메인 프로세스에서 랜더러 프로세스로 보내는 것도 가능합니다. -자세한 내용은 [webContents.send](web-contents.md#webcontentssendchannel-args)를 참고하세요. +자세한 내용은 [webContents.send](web-contents.md#webcontentssendchannel-args)를 +참고하세요. * 메시지를 전송할 때 이벤트 이름은 `channel`이 됩니다. * 메시지에 동기로 응답할 땐 반드시 `event.returnValue`를 설정해야 합니다. @@ -60,7 +62,8 @@ ipc.send('asynchronous-message', 'ping'); ### `Event.sender` -메시지를 보낸 `webContents` 객체를 반환합니다. `event.sender.send` 메서드를 통해 비동기로 메시지를 전달할 수 있습니다. -자세한 내용은 [webContents.send][webcontents-send]를 참고하세요. +메시지를 보낸 `webContents` 객체를 반환합니다. `event.sender.send` 메서드를 통해 +비동기로 메시지를 전달할 수 있습니다. 자세한 내용은 +[webContents.send][webcontents-send]를 참고하세요. [webcontents-send]: web-contents.md#webcontentssendchannel-args diff --git a/docs-translations/ko-KR/api/ipc-renderer.md b/docs-translations/ko-KR/api/ipc-renderer.md index 28442a29073a..69c7936d66ea 100644 --- a/docs-translations/ko-KR/api/ipc-renderer.md +++ b/docs-translations/ko-KR/api/ipc-renderer.md @@ -1,7 +1,7 @@ # ipcRenderer -`ipcRenderer` 모듈은 랜더러 프로세스에서 메인 프로세스로 동기/비동기 메시지를 주고 받는 방법을 제공합니다. -또한 메인 프로세스로부터 받은 메시지에 응답할 수도 있습니다. +`ipcRenderer` 모듈은 랜더러 프로세스에서 메인 프로세스로 동기/비동기 메시지를 주고 +받는 방법을 제공합니다. 또한 메인 프로세스로부터 받은 메시지에 응답할 수도 있습니다. [ipcMain](ipc-main.md)에서 코드 예제를 확인할 수 있습니다. @@ -25,24 +25,29 @@ * `channel` String - 이벤트 이름 * `arg` (optional) -`channel`을 통해 메인 프로세스에 비동기 메시지를 보냅니다. 그리고 필요에 따라 임의의 인자를 사용할 수도 있습니다. -메인 프로세스는 `ipcMain` 모듈의 `channel` 이벤트를 통해 이벤트를 리스닝 할 수 있습니다. +`channel`을 통해 메인 프로세스에 비동기 메시지를 보냅니다. 그리고 필요에 따라 임의의 +인자를 사용할 수도 있습니다. 메인 프로세스는 `ipcMain` 모듈의 `channel` 이벤트를 통해 +이벤트를 리스닝 할 수 있습니다. ### `ipcRenderer.sendSync(channel[, arg1][, arg2][, ...])` * `channel` String - 이벤트 이름 * `arg` (optional) -`channel`을 통해 메인 프로세스에 동기 메시지를 보냅니다. 그리고 필요에 따라 임의의 인자를 사용할 수도 있습니다. -메인 프로세스는 `ipc`를 통해 `channel` 이벤트를 리스닝 할 수 있습니다. +`channel`을 통해 메인 프로세스에 동기 메시지를 보냅니다. 그리고 필요에 따라 임의의 +인자를 사용할 수도 있습니다. 메인 프로세스는 `ipc`를 통해 `channel` 이벤트를 리스닝 +할 수 있습니다. -메인 프로세스에선 `ipc` 모듈의 `channel` 이벤트를 통해 받은 `event.returnValue`로 회신 할 수 있습니다. +메인 프로세스에선 `ipcMain` 모듈의 `channel` 이벤트를 통해 받은 +`event.returnValue`로 회신 할 수 있습니다. -__참고:__ 동기 메서드는 모든 랜더러 프로세스의 작업을 일시 중단시킵니다. 사용 목적이 확실하지 않다면 사용하지 않는 것이 좋습니다. +__참고:__ 동기 메서드는 모든 랜더러 프로세스의 작업을 일시 중단시킵니다. 사용 목적이 +확실하지 않다면 사용하지 않는 것이 좋습니다. ### `ipcRenderer.sendToHost(channel[, arg1][, arg2][, ...])` * `channel` String - 이벤트 이름 * `arg` (optional) -`ipcRenderer.send`와 비슷하지만 이벤트를 메인 프로세스 대신 호스트 페이지내의 `