diff --git a/docs-translations/ko-KR/README.md b/docs-translations/ko-KR/README.md index 629c3ec8c210..b484d6dc8d71 100644 --- a/docs-translations/ko-KR/README.md +++ b/docs-translations/ko-KR/README.md @@ -21,8 +21,10 @@ Electron에 대해 자주 묻는 질문이 있습니다. 이슈를 생성하기 * [지원하는 플랫폼](tutorial/supported-platforms.md) * [보안](tutorial/security.md) +* [Electron 버전 관리](tutorial/electron-versioning.md) * [어플리케이션 배포](tutorial/application-distribution.md) * [Mac 앱스토어 어플리케이션 제출 가이드](tutorial/mac-app-store-submission-guide.md) +* [Windows 스토어 가이드](tutorial/windows-store-guide.md) * [어플리케이션 패키징](tutorial/application-packaging.md) * [네이티브 Node 모듈 사용하기](tutorial/using-native-node-modules.md) * [메인 프로세스 디버깅하기](tutorial/debugging-main-process.md) diff --git a/docs-translations/ko-KR/api/accelerator.md b/docs-translations/ko-KR/api/accelerator.md index 58d4b41d972a..05532d06c08e 100644 --- a/docs-translations/ko-KR/api/accelerator.md +++ b/docs-translations/ko-KR/api/accelerator.md @@ -39,6 +39,7 @@ Linux와 Windows에서는 `Command`키가 없으므로 작동하지 않습니다 * `~`, `!`, `@`, `#`, `$`, etc 와 같은 구두점 기호들 * `Plus` * `Space` +* `Tab` * `Backspace` * `Delete` * `Insert` diff --git a/docs-translations/ko-KR/api/app.md b/docs-translations/ko-KR/api/app.md index b0bf4d73601c..fbf1fcd29378 100644 --- a/docs-translations/ko-KR/api/app.md +++ b/docs-translations/ko-KR/api/app.md @@ -24,7 +24,7 @@ Windows, Linux 운영체제에서의 `will-finish-launching` 이벤트는 `ready `open-file`과 `open-url` 이벤트 리스너를 설정하고 crash reporter와 auto updater를 시작합니다. -대부분의 경우, 모든 것을 `ready` 이벤트 핸들러로 해결해야 합니다. +대부분의 경우, 모든 것을 `ready` 이벤트 핸들러 안에서 해결해야 합니다. ### Event: 'ready' @@ -34,8 +34,9 @@ Electron이 초기화를 끝냈을 때 발생하는 이벤트입니다. 모든 윈도우가 종료되었을 때 발생하는 이벤트입니다. -이 이벤트는 어플리케이션이 완전히 종료되지 않았을 때만 발생합니다. -만약 사용자가 `Cmd + Q`를 입력했거나 개발자가 `app.quit()`를 호출했다면, +만약 이 이벤트를 구독하지 않은 상태로 모든 윈도우가 닫혔을 때의 기본 동작은 앱을 +종료하는 것입니다. 하지만, 이 이벤트를 구독하면, 앱을 종료할지 다른 일을 할지 제어할 +수 있습니다. 만약 사용자가 `Cmd + Q`를 입력했거나 개발자가 `app.quit()`를 호출했다면, Electron은 먼저 모든 윈도우의 종료를 시도하고 `will-quit` 이벤트를 발생시킵니다. 그리고 `will-quit` 이벤트가 발생했을 땐 `window-all-closed` 이벤트가 발생하지 않습니다. @@ -63,7 +64,7 @@ Returns: 모든 윈도우들이 종료되고 어플리케이션이 종료되기 시작할 때 발생하는 이벤트입니다. `event.preventDefault()` 호출을 통해 어플리케이션의 종료를 방지할 수 있습니다. -`will-quit` 와 `window-all-closed` 이벤트의 차이점을 확인하려면 `window-all-close` +`will-quit` 와 `window-all-closed` 이벤트의 차이점을 확인하려면 `window-all-closed` 이벤트의 설명을 참고하세요. ### Event: 'quit' diff --git a/docs-translations/ko-KR/api/auto-updater.md b/docs-translations/ko-KR/api/auto-updater.md index a551459171d2..d7dc9c18a46a 100644 --- a/docs-translations/ko-KR/api/auto-updater.md +++ b/docs-translations/ko-KR/api/auto-updater.md @@ -26,7 +26,7 @@ OS X에선 `auto-updater` 모듈이 [Squirrel.Mac][squirrel-mac]를 기반으로 서버 사이드 요구 사항은 [서버 지원][server-support]을 참고하세요. **참고:** Mac OS X에서 자동 업데이트를 지원하려면 반드시 사인이 되어있어야 합니다. -이것은 `Squirrel.Mac`의 요구사항입니다. +이것은 `Squirrel.Mac`의 요구 사항입니다. ### Windows @@ -34,6 +34,11 @@ Windows에선 `auto-updater` 모듈을 사용하기 전에 어플리케이션을 설치해야 합니다. [grunt-electron-installer][installer]를 사용하여 어플리케이션 인스톨러를 만드는 것을 권장합니다. +Windows에선 `autoUpdater` 모듈을 사용하기 전에 사용자의 장치에 어플리케이션을 +설치해야 합니다. 따라서 [electron-winstaller][installer-lib] 모듈이나 +[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`가 그 예시입니다. @@ -108,6 +113,7 @@ Returns: [server-support]: https://github.com/Squirrel/Squirrel.Mac#server-support [squirrel-windows]: https://github.com/Squirrel/Squirrel.Windows [installer]: https://github.com/electron/grunt-electron-installer +[installer-lib]: https://github.com/electron/windows-installer [app-user-model-id]: https://msdn.microsoft.com/en-us/library/windows/desktop/dd378459(v=vs.85).aspx [electron-release-server]: https://github.com/ArekSredzki/electron-release-server [squirrel-updates-server]: https://github.com/Aluxian/squirrel-updates-server diff --git a/docs-translations/ko-KR/api/dialog.md b/docs-translations/ko-KR/api/dialog.md index 30132383b5b8..949a26835db9 100644 --- a/docs-translations/ko-KR/api/dialog.md +++ b/docs-translations/ko-KR/api/dialog.md @@ -27,6 +27,8 @@ const {dialog} = require('electron').remote; * `options` Object * `title` String * `defaultPath` String + * `buttonLabel` String - 확인 버튼을 위한 커스텀 라벨이며, 빈칸으로 둘 경우 기본 + 라벨이 사용됩니다. * `filters` Array * `properties` Array - 대화 상자가 사용할 기능(모드)이 담긴 배열입니다. 다음을 포함할 수 있습니다: `openFile`, `openDirectory`, `multiSelections`, @@ -71,6 +73,8 @@ const {dialog} = require('electron').remote; * `options` Object * `title` String * `defaultPath` String + * `buttonLabel` String - 확인 버튼을 위한 커스텀 라벨이며, 빈칸으로 둘 경우 기본 + 라벨이 사용됩니다. * `filters` Array * `callback` Function (optional) @@ -90,7 +94,8 @@ const {dialog} = require('electron').remote; * `type` String - `"none"`, `"info"`, `"error"`, `"question"`, `"warning"` 중 하나를 사용할 수 있습니다. Windows에선 따로 `icon`을 설정하지 않은 이상 "question"과 "info"는 같은 아이콘으로 표시됩니다. - * `buttons` Array - 버튼들의 라벨을 포함한 배열입니다. + * `buttons` Array - 버튼들의 라벨을 포함한 배열입니다. Windows에서 빈 배열로 둘 + 경우, "OK" 버튼 하나가 포함됩니다. * `defaultId` Integer - 메시지 박스가 열렸을 때 기본적으로 선택될 버튼 배열의 버튼 인덱스입니다. * `title` String - 대화 상자의 제목입니다. 몇몇 플랫폼에선 보이지 않을 수 있습니다. diff --git a/docs-translations/ko-KR/api/environment-variables.md b/docs-translations/ko-KR/api/environment-variables.md index 55a5ac5385de..f24532a698bf 100644 --- a/docs-translations/ko-KR/api/environment-variables.md +++ b/docs-translations/ko-KR/api/environment-variables.md @@ -50,8 +50,4 @@ Electron이 크래시되면, 크래시 정보 창을 표시합니다. ## `ELECTRON_FORCE_WINDOW_MENU_BAR` _Linux_ -Linux의 글로벌 메뉴 막대를 사용하지 않습니다. - -## `ELECTRON_HIDE_INTERNAL_MODULES` - -`require('ipc')`같은 예전 방식의 빌트인 모듈을 비활성화합니다. +Linux의 전역 메뉴바를 사용하지 않습니다. diff --git a/docs-translations/ko-KR/api/remote.md b/docs-translations/ko-KR/api/remote.md index da8a54413e15..e626780a99c6 100644 --- a/docs-translations/ko-KR/api/remote.md +++ b/docs-translations/ko-KR/api/remote.md @@ -107,7 +107,7 @@ remote.getCurrentWindow().on('close', () => { 창을 새로고침 할 때마다 콜백을 새로 설치합니다. 게다가 이전 콜백이 제거되지 않고 계속해서 쌓이면서 메모리 누수가 발생합니다. -설상가상으로 이전에 등록된 콜백의 콘텍스트가 릴리즈 되고 난 후 (e.g. 페이지 새로고침) +설상가상으로 이전에 등록된 콜백의 컨텍스트가 릴리즈 되고 난 후 (e.g. 페이지 새로고침) `close` 이벤트가 발생하면 예외가 발생하고 메인 프로세스가 작동 중지됩니다. 이러한 문제를 피하려면 렌더러 프로세스에서 메인 프로세스로 넘긴 함수의 참조를 사용 후 diff --git a/docs-translations/ko-KR/api/synopsis.md b/docs-translations/ko-KR/api/synopsis.md index 04134689a9fa..cb2ea015e295 100644 --- a/docs-translations/ko-KR/api/synopsis.md +++ b/docs-translations/ko-KR/api/synopsis.md @@ -71,25 +71,5 @@ const app = electron.app; const BrowserWindow = electron.BrowserWindow; ``` -## 이전 스타일의 빌트인 모듈 비활성화 - -v0.35.0 이전 버전에선 빌트인 모듈이 모두 `require('module-name')`같은 형식으로 -사용되었습니다. 하지만 [많은 단점][issue-387]이 있기 때문에 현재 API가 변경되었습니다. -하지만 오래된 앱의 호환성 유지를 위해 아직 구 버전 API를 지원하고 있습니다. - -완벽하게 모든 구 버전 API를 비활성화하려면 `ELECTRON_HIDE_INTERNAL_MODULES` 환경 -변수를 설정하면 됩니다: - -```javascript -process.env.ELECTRON_HIDE_INTERNAL_MODULES = 'true' -``` - -또는 `hideInternalModules` API를 사용해도 됩니다: - -```javascript -require('electron').hideInternalModules(); -``` - [gui]: https://en.wikipedia.org/wiki/Graphical_user_interface [destructuring-assignment]: https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment -[issue-387]: https://github.com/electron/electron/issues/387 diff --git a/docs-translations/ko-KR/api/system-preferences.md b/docs-translations/ko-KR/api/system-preferences.md index c5707ea7eaf1..8a98dd1d5432 100644 --- a/docs-translations/ko-KR/api/system-preferences.md +++ b/docs-translations/ko-KR/api/system-preferences.md @@ -14,11 +14,14 @@ * `event` String * `callback` Function -OS X의 네이티브 알림을 구독하며, 해당하는 `event`가 발생하면 `callback`이 호출됩니다. +OS X의 네이티브 알림을 구독하며, 해당하는 `event`가 발생하면 `callback`이 +`callback(event, userInfo)` 형태로 호출됩니다. `userInfo`는 알림과 함께 전송되는 +사용자 정보 딕셔너리를 포함하는 객체입니다. + 구독자의 `id`가 반환되며 `event`를 구독 해제할 때 사용할 수 있습니다. -이 API는 후드에서 `NSDistributedNotificationCenter`를 구독하며, `event`에서 사용 -가능한 값은 다음과 같습니다: +이 API는 후드에서 `NSDistributedNotificationCenter`를 구독하며, `event`의 예시 +값은 다음과 같습니다: * `AppleInterfaceThemeChangedNotification` * `AppleAquaColorVariantChanged` diff --git a/docs-translations/ko-KR/api/web-contents.md b/docs-translations/ko-KR/api/web-contents.md index d0d7bd43b4b9..0510f0bd5788 100644 --- a/docs-translations/ko-KR/api/web-contents.md +++ b/docs-translations/ko-KR/api/web-contents.md @@ -8,7 +8,7 @@ 접근하는 예시입니다: ```javascript -const BrowserWindow = require('electron').BrowserWindow; +const {BrowserWindow} = require('electron'); let win = new BrowserWindow({width: 800, height: 1500}); win.loadURL('http://github.com'); @@ -37,8 +37,9 @@ Returns: 이 이벤트는 `did-finish-load`와 비슷하나, 로드가 실패했거나 취소되었을 때 발생합니다. 예를 들면 `window.stop()`이 실행되었을 때 발생합니다. 발생할 수 있는 전체 에러 코드의 -목록과 설명은 [여기](https://code.google.com/p/chromium/codesearch#chromium/src/net/base/net_error_list.h)서 -확인할 수 있습니다. +목록과 설명은 [여기서](https://code.google.com/p/chromium/codesearch#chromium/src/net/base/net_error_list.h) +확인할 수 있습니다. 참고로 리다이렉트 응답은 `errorCode` -3과 함께 발생합니다; 이 +에러는 명시적으로 무시할 수 있습니다. ### Event: 'did-frame-finish-load' @@ -225,7 +226,7 @@ Returns: * `issuerName` String - 인증서 발급자 이름 * `callback` Function -클라이언트 인증이 요청되었을 때 발생하는 이벤트 입니다. +클라이언트 인증이 요청되었을 때 발생하는 이벤트입니다. 사용법은 [`app`의 `select-client-certificate` 이벤트](app.md#event-select-client-certificate)와 같습니다. @@ -292,7 +293,7 @@ Returns: * `image` NativeImage (optional) * `scale` Float (optional) -커서 타입이 변경될 때 발생하는 이벤트입니다. `type` 매개변수는 다음 값이 될 수 있습니다: +커서 종류가 변경될 때 발생하는 이벤트입니다. `type` 인수는 다음 값이 될 수 있습니다: `default`, `crosshair`, `pointer`, `text`, `wait`, `help`, `e-resize`, `n-resize`, `ne-resize`, `nw-resize`, `s-resize`, `se-resize`, `sw-resize`, `w-resize`, `ns-resize`, `ew-resize`, `nesw-resize`, `nwse-resize`, `col-resize`, @@ -301,10 +302,64 @@ Returns: `cell`, `context-menu`, `alias`, `progress`, `nodrop`, `copy`, `none`, `not-allowed`, `zoom-in`, `zoom-out`, `grab`, `grabbing`, `custom`. -만약 `type` 매개변수가 `custom` 이고 `image` 매개변수가 `NativeImage`를 통한 커스텀 -커서를 지정했을 때, 해당 이미지로 커서가 변경됩니다. 또한 `scale` 매개변수는 이미지의 +만약 `type` 인수가 `custom` 이고 `image` 인수가 `NativeImage`를 통한 커스텀 +커서를 지정했을 때, 해당 이미지로 커서가 변경됩니다. 또한 `scale` 인수는 이미지의 크기를 조정합니다. +### Event: 'context-menu' + +Returns: + +* `event` Event +* `params` Object + * `x` Integer - x 좌표 + * `y` Integer - y 좌표 + * `linkURL` String - 컨텍스트 메뉴가 호출된 노드를 둘러싸는 링크의 URL. + * `linkText` String - 링크에 연관된 텍스트. 콘텐츠의 링크가 이미지인 경우 빈 + 문자열이 됩니다. + * `pageURL` String - 컨텍스트 메뉴가 호출된 상위 수준 페이지의 URL. + * `frameURL` String - 컨텍스트 메뉴가 호출된 서브 프레임의 URL. + * `srcURL` String - 컨텍스트 메뉴가 호출된 요소에 대한 소스 URL. 요소와 소스 URL은 + 이미지, 오디오, 비디오입니다. + * `mediaType` String - 컨텍스트 메뉴가 호출된 노드의 종류. 값은 `none`, `image`, + `audio`, `video`, `canvas`, `file` 또는 `plugin`이 될 수 있습니다. + * `hasImageContent` Boolean - 컨텍스트 메뉴가 내용이 있는 이미지에서 호출되었는지 + 여부. + * `isEditable` Boolean - 컨텍스트를 편집할 수 있는지 여부. + * `selectionText` String - 컨텍스트 메뉴가 호출된 부분에 있는 선택된 텍스트. + * `titleText` String - 컨텍스트 메뉴가 호출된 선택된 제목 또는 알림 텍스트. + * `misspelledWord` String - 만약 있는 경우, 커서가 가르키는 곳에서 발생한 오타. + * `frameCharset` String - 메뉴가 호출된 프레임의 문자열 인코딩. + * `inputFieldType` String - 컨텍스트 메뉴가 입력 필드에서 호출되었을 때, 그 필드의 + 종류. 값은 `none`, `plainText`, `password`, `other` 중 한 가지가 될 수 있습니다. + * `menuSourceType` String - 컨텍스트 메뉴를 호출한 입력 소스. 값은 `none`, + `mouse`, `keyboard`, `touch`, `touchMenu` 중 한 가지가 될 수 있습니다. + * `mediaFlags` Object - 컨텍스트 메뉴가 호출된 미디어 요소에 대한 플래그. 자세한 + 사항은 아래를 참고하세요. + * `editFlags` Object - 이 플래그는 렌더러가 어떤 행동을 이행할 수 있는지 여부를 + 표시합니다. 자세한 사항은 아래를 참고하세요. + +`mediaFlags`는 다음과 같은 속성을 가지고 있습니다: + * `inError` Boolean - 미디어 객체가 크래시되었는지 여부. + * `isPaused` Boolean - 미디어 객체가 일시중지되었는지 여부. + * `isMuted` Boolean - 미디어 객체가 음소거되었는지 여부. + * `hasAudio` Boolean - 미디어 객체가 오디오를 가지고 있는지 여부. + * `isLooping` Boolean - 미디어 객체가 루프중인지 여부. + * `isControlsVisible` Boolean - 미디어 객체의 컨트롤이 보이는지 여부. + * `canToggleControls` Boolean - 미디어 객체의 컨트롤을 토글할 수 있는지 여부. + * `canRotate` Boolean - 미디어 객체를 돌릴 수 있는지 여부. + +`editFlags`는 다음과 같은 속성을 가지고 있습니다: + * `canUndo` Boolean - 렌더러에서 실행 취소할 수 있는지 여부. + * `canRedo` Boolean - 렌더러에서 다시 실행할 수 있는지 여부. + * `canCut` Boolean - 렌더러에서 잘라내기를 실행할 수 있는지 여부. + * `canCopy` Boolean - 렌더러에서 복사를 실행할 수 있는지 여부. + * `canPaste` Boolean - 렌더러에서 붙여넣기를 실행할 수 있는지 여부. + * `canDelete` Boolean - 렌더러에서 삭제를 실행할 수 있는지 여부. + * `canSelectAll` Boolean - 렌더러에서 모두 선택을 실행할 수 있는지 여부. + +새로운 컨텍스트 메뉴의 제어가 필요할 때 발생하는 이벤트입니다. + ## Instance Methods `webContents`객체는 다음과 같은 인스턴스 메서드들을 가지고 있습니다. @@ -604,14 +659,14 @@ Chromium의 미리보기 프린팅 커스텀 설정을 이용하여 윈도우의 ``` ```javascript -const BrowserWindow = require('electron').BrowserWindow; +const {BrowserWindow} = require('electron'); const fs = require('fs'); let win = new BrowserWindow({width: 800, height: 600}); win.loadURL('http://github.com'); win.webContents.on('did-finish-load', () => { - // Use default printing options + // 기본 프린트 옵션을 사용합니다 win.webContents.printToPDF({}, (error, data) => { if (error) throw error; fs.writeFile('/tmp/print.pdf', data, (error) => { @@ -648,7 +703,7 @@ win.webContents.on('devtools-opened', () => { * `detach` Boolean - 새 창에서 개발자 도구를 엽니다. * `mode` String - 개발자 도구 표시 상태를 지정합니다. 옵션은 "right", "bottom", "undocked", "detach"가 될 수 있습니다. 기본값은 마지막 표시 상태를 - 사용합니다. `undocked` 모드에선 다시 독을 할 수 있습니다. 하지만 `detach` + 사용합니다. `undocked` 모드에선 다시 도킹할 수 있습니다. 하지만 `detach` 모드에선 할 수 없습니다. 개발자 도구를 엽니다. @@ -674,7 +729,7 @@ win.webContents.on('devtools-opened', () => { * `x` Integer * `y` Integer -(`x`, `y`)위치의 엘레먼트를 조사합니다. +(`x`, `y`)위치의 요소를 조사합니다. ### `webContents.inspectServiceWorker()` @@ -712,7 +767,7 @@ app.on('ready', () => {
@@ -759,7 +814,7 @@ app.on('ready', () => { ### `webContents.sendInputEvent(event)` * `event` Object - * `type` String (**required**) - 이벤트의 타입. 다음 값들을 사용할 수 있습니다: + * `type` String (**required**) - 이벤트의 종류. 다음 값들을 사용할 수 있습니다: `mouseDown`, `mouseUp`, `mouseEnter`, `mouseLeave`, `contextMenu`, `mouseWheel`, `mouseMove`, `keyDown`, `keyUp`, `char`. * `modifiers` Array - 이벤트의 수정자(modifier)들에 대한 배열. 다음 값들을 포함 @@ -816,7 +871,7 @@ Input `event`를 웹 페이지로 전송합니다. ### `webContents.savePage(fullPath, saveType, callback)` * `fullPath` String - 전체 파일 경로. -* `saveType` String - 저장 타입을 지정합니다. +* `saveType` String - 저장 종류를 지정합니다. * `HTMLOnly` - 페이지의 HTML만 저장합니다. * `HTMLComplete` - 페이지의 완성된 HTML을 저장합니다. * `MHTML` - 페이지의 완성된 HTML을 MHTML로 저장합니다. @@ -840,6 +895,10 @@ win.webContents.on('did-finish-load', () => { `WebContents`객체들은 다음 속성들을 가지고 있습니다: +### `webContents.id` + +이 WebContents의 유일 ID. + ### `webContents.session` 이 webContents에서 사용하는 [session](session.md) 객체를 반환합니다. @@ -898,7 +957,7 @@ win.webContents.debugger.sendCommand('Network.enable'); * `method` String - 메서드 이름, 반드시 원격 디버깅 프로토콜에 의해 정의된 메서드중 하나가 됩니다. -* `commandParams` Object (optional) - 요청 매개변수를 표현한 JSON 객체. +* `commandParams` Object (optional) - 요청 인수를 표현한 JSON 객체. * `callback` Function (optional) - 응답 * `error` Object - 커맨드의 실패를 표시하는 에러 메시지. * `result` Object - 원격 디버깅 프로토콜에서 커맨드 설명의 'returns' 속성에 의해 @@ -918,8 +977,7 @@ win.webContents.debugger.sendCommand('Network.enable'); * `event` Event * `method` String - 메서드 이름. -* `params` Object - 원격 디버깅 프로토콜의 'parameters' 속성에서 정의된 이벤트 - 매개변수 +* `params` Object - 원격 디버깅 프로토콜의 'parameters' 속성에서 정의된 이벤트 인수 디버깅 타겟이 관련 이벤트를 발생시킬 때 마다 발생하는 이벤트입니다. diff --git a/docs-translations/ko-KR/api/web-frame.md b/docs-translations/ko-KR/api/web-frame.md index 69e563df3f59..fdc68d222313 100644 --- a/docs-translations/ko-KR/api/web-frame.md +++ b/docs-translations/ko-KR/api/web-frame.md @@ -103,4 +103,40 @@ ServiceWorker의 등록과 fetch API를 사용할 수 있도록 지원합니다. 브라우저 윈도우에서 어떤 `requestFullScreen` 같은 HTML API는 사용자의 승인이 필요합니다. `userGesture`를 `true`로 설정하면 이러한 제약을 제거할 수 있습니다. +### `webFrame.getResourceUsage()` + +Blink의 내부 메모리 캐시 사용 정보를 담고있는 객체를 반환합니다. + +```javascript +console.log(webFrame.getResourceUsage()) +``` + +다음이 출력됩니다: + +```javascript +{ + images: { + count: 22, + size: 2549, + liveSize: 2542, + decodedSize: 478, + purgedSize: 0, + purgeableSize: 0 + }, + cssStyleSheets: { /* same with "images" */ }, + xslStyleSheets: { /* same with "images" */ }, + fonts: { /* same with "images" */ }, + other: { /* same with "images" */ }, +} +``` + +### `webFrame.clearCache()` + +사용하지 않는 메모리 비우기를 시도합니다. (이전 페이지의 이미지 등) + +참고로 맹목적으로 이 메서드를 호출하는 것은 이 빈 캐시를 다시 채워야하기 때문에 +Electron을 느리게 만듭니다. 따라서 이 메서드는 페이지가 예상했던 것 보다 실질적으로 더 +적은 메모리를 사용하게 만드는 어플리케이션 이벤트가 발생했을 때만 호출해야 합니다. +(i.e. 아주 무거운 페이지에서 거의 빈 페이지로 이동한 후 계속 유지할 경우) + [spellchecker]: https://github.com/atom/node-spellchecker diff --git a/docs-translations/ko-KR/api/web-view-tag.md b/docs-translations/ko-KR/api/web-view-tag.md index 3191db71331e..7adbe5cbd188 100644 --- a/docs-translations/ko-KR/api/web-view-tag.md +++ b/docs-translations/ko-KR/api/web-view-tag.md @@ -11,6 +11,8 @@ 상호작용이 비동기로 작동한다는 것을 의미합니다. 따라서 임베디드 콘텐츠로부터 어플리케이션을 안전하게 유지할 수 있습니다. +보안상의 이유로, `webview`는 `nodeIntegration`이 활성화된 `BrowserWindow`에서만 사용할 수 있습니다. + ## 예시 웹 페이지를 어플리케이션에 삽입하려면 `webview` 태그를 사용해 원하는 타겟 페이지에 diff --git a/docs-translations/ko-KR/development/debug-instructions-windows.md b/docs-translations/ko-KR/development/debug-instructions-windows.md index 35c49bc7e709..27f96c284b00 100644 --- a/docs-translations/ko-KR/development/debug-instructions-windows.md +++ b/docs-translations/ko-KR/development/debug-instructions-windows.md @@ -8,7 +8,7 @@ Electron 소스 코드가 중단점을 통해 순차적으로 쉽게 디버깅 ## 요구 사항 * **Electron의 디버그 빌드**: 가장 쉬운 방법은 보통 - [Windows용 빌드 설명서](build-instructions-windows.md)에 명시된 요구사항과 툴을 + [Windows용 빌드 설명서](build-instructions-windows.md)에 명시된 요구 사항과 툴을 사용하여 스스로 빌드하는 것입니다. 물론 직접 다운로드 받은 Electron 바이너리에도 디버거 연결 및 디버깅을 사용할 수 있지만, 실질적으로 디버깅이 까다롭게 고도의 최적화가 되어있음을 발견하게 될 것입니다: 인라인화, 꼬리 호출, 이외 여러 가지 diff --git a/docs-translations/ko-KR/development/source-code-directory-structure.md b/docs-translations/ko-KR/development/source-code-directory-structure.md index 98a3fd2a1de0..003eca596839 100644 --- a/docs-translations/ko-KR/development/source-code-directory-structure.md +++ b/docs-translations/ko-KR/development/source-code-directory-structure.md @@ -60,7 +60,7 @@ Electron ## Git 서브 모듈 최신 버전으로 유지 -Electron 저장소는 몇 가지 외부 벤더 종속성을 가지고 있으며 [/vendor](/vendor) +Electron 저장소는 몇 가지 외부 벤더 종속성을 가지고 있으며 [/vendor][vendor] 디렉터리에서 확인할 수 있습니다. 때때로 `git status`를 실행했을 때 아마 다음과 같은 메시지를 흔히 목격할 것입니다: @@ -84,3 +84,5 @@ git submodule update --init --recursive [alias] su = submodule update --init --recursive ``` + +[vendor]: https://github.com/electron/electron/tree/master/vendor diff --git a/docs-translations/ko-KR/faq/electron-faq.md b/docs-translations/ko-KR/faq/electron-faq.md index 38235e2d8980..c186d148c2a0 100644 --- a/docs-translations/ko-KR/faq/electron-faq.md +++ b/docs-translations/ko-KR/faq/electron-faq.md @@ -9,7 +9,7 @@ Electron의 Chrome 버전은 보통 새로운 Chrome 안정 버전이 릴리즈 Electron은 크롬이 사용하는 안정된 채널만을 이용합니다, 만약 중요한 수정이 베타 또는 개발 채널에 패치된 경우, 이전 버전의 채널로 롤백합니다. -자세한 내용은 [보안 설명](../tutorial/electron-security.md)을 참고하세요. +자세한 내용은 [보안 설명](../tutorial/security.md)을 참고하세요. ## Electron은 언제 최신 버전의 Node.js로 업그레이드 하나요? diff --git a/docs-translations/ko-KR/tutorial/electron-versioning.md b/docs-translations/ko-KR/tutorial/electron-versioning.md new file mode 100644 index 000000000000..13d83563033d --- /dev/null +++ b/docs-translations/ko-KR/tutorial/electron-versioning.md @@ -0,0 +1,20 @@ +# Electron 버전 관리 + +노련한 Node 개발자라면, `semver` (유의적 버전)에 대해 확실히 알고 있을 것입니다 - +그리고 제공된 의존성 관리 시스템은 고정된 버전 숫자 대신 견고한 가이드라인을 따릅니다. +Electron은 Node와 Chromium에 큰 의존성을 지니고 있는 만큼, 유의적 버전을 그대로 +따르지 않습니다. 따라서 항상 Electron의 특정 버전을 참조해야 합니다. + +버전 숫자는 다음과 같은 규칙으로 올라갑니다: + +* Major: Electron API의 주요 변경 사항을 반영합니다 - 만약 `0.37.0`에서 `1.0.0`로 + 업그레이드하는 경우, 어플리케이션을 업데이트해야 합니다. +* Minor: 주요 Chrome과 Node 버전의 업그레이드를 반영하거나; Electron의 중요한 변경 + 사항을 반영합니다 - 만약 `1.0.0`에서 `1.1.0`로 업그레이드하는 경우, 어플리케이션은 + 여전히 작동하겠지만, 약간의 업데이트가 필요할 수 있습니다. +* Patch: 새로운 기능과 버그 수정을 반영합니다 - 만약 `1.0.0`에서 `1.0.1`로 + 업그레이드하는 경우, 어플리케이션은 잘 작동할 것입니다. + +`electron-prebuilt`를 사용하고 있다면, Electron의 변경 사항을 확실하게 인지하고 +개발자 스스로 업그레이드를 적용하기 위해 고정된 버전 숫자를 사용하는 것을 권장합니다. +(`^1.1.0` 대신 `1.1.0` 사용) diff --git a/docs-translations/ko-KR/tutorial/mac-app-store-submission-guide.md b/docs-translations/ko-KR/tutorial/mac-app-store-submission-guide.md index 8fd25a303af0..c4dd2ca0423a 100644 --- a/docs-translations/ko-KR/tutorial/mac-app-store-submission-guide.md +++ b/docs-translations/ko-KR/tutorial/mac-app-store-submission-guide.md @@ -20,13 +20,32 @@ Electron은 v0.34.0 버전부터 앱 패키지를 Mac App Store(MAS)에 제출 앱 스토어에 어플리케이션을 제출하려면, 먼저 Apple로부터 인증서를 취득해야 합니다. 취득 방법은 웹에서 찾아볼 수 있는 [가이드][nwjs-guide]를 참고하면 됩니다. +### Team ID 얻기 + +어플리케이션에 서명하기 전에, 먼저 개발 계정의 Team ID를 알아야 합니다. Team ID를 +알아보려면 [Apple Developer Center](https://developer.apple.com/account/)에 +로그인한 후, 사이드바의 Membership을 클릭합니다. Team ID는 Membership Information +섹션의 팀 이름 밑에 위치합니다. + ### 앱에 서명하기 -Apple로부터 인증서를 취득했다면, [어플리케이션 배포](application-distribution.md) -문서에 따라 어플리케이션을 패키징한 후 어플리케이션에 서명 합니다. 이 절차는 기본적으로 -다른 프로그램과 같습니다. 하지만 키는 Electron 종속성 파일에 각각 따로 서명 해야 합니다. +준비 작업이 끝난 후, [어플리케이션 배포](application-distribution.md) 문서에 따라 +어플리케이션을 패키징한 후 어플리케이션에 서명 합니다. -첫번째, 다음 두 자격(plist) 파일을 준비합니다. +먼저, Team ID를 키로 가지고 있는 어플리케이션의 `Info.plist`에 `ElectronTeamID` 키를 +추가해야 합니다: + +```xml +