From cf7dc9ca9ded1bd59d3564863a43108153928d07 Mon Sep 17 00:00:00 2001 From: Marcel Gerber Date: Mon, 11 Aug 2014 23:27:20 +0200 Subject: [PATCH 001/141] Make anchors in Quick Docs relative to page URL --- .../default/WebPlatformDocs/InlineDocsViewer.js | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/extensions/default/WebPlatformDocs/InlineDocsViewer.js b/src/extensions/default/WebPlatformDocs/InlineDocsViewer.js index e9df4160c93..f4f1f44ac32 100644 --- a/src/extensions/default/WebPlatformDocs/InlineDocsViewer.js +++ b/src/extensions/default/WebPlatformDocs/InlineDocsViewer.js @@ -76,9 +76,14 @@ define(function (require, exports, module) { this.$wrapperDiv.find("a").each(function (index, elem) { var $elem = $(elem); var url = $elem.attr("href"); - if (url && url.substr(0, 4) !== "http") { - // URLs in JSON data are relative - url = "http://docs.webplatform.org" + (url.charAt(0) !== "/" ? "/" : "") + url; + if (url) { + if (url.indexOf("#") === 0) { + // Anchors in JSON data are relative to page URL + url = templateVars.url + url; + } else if (url.substr(0, 4) !== "http") { + // URLs in JSON data are relative + url = "http://docs.webplatform.org" + (url.indexOf("/") !== 0 ? "/" : "") + url; + } $elem.attr("href", url); } $elem.attr("title", url); From 2456300be205dc71ee69a13056f620b0ae5335d7 Mon Sep 17 00:00:00 2001 From: Marcel Gerber Date: Tue, 12 Aug 2014 00:12:59 +0200 Subject: [PATCH 002/141] Fixed unit tests --- .../default/WebPlatformDocs/unittest-files/description.html | 3 ++- src/extensions/default/WebPlatformDocs/unittests.js | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/extensions/default/WebPlatformDocs/unittest-files/description.html b/src/extensions/default/WebPlatformDocs/unittest-files/description.html index d08b65611bc..be452203680 100644 --- a/src/extensions/default/WebPlatformDocs/unittest-files/description.html +++ b/src/extensions/default/WebPlatformDocs/unittest-files/description.html @@ -4,4 +4,5 @@ relative file url querystring -hash \ No newline at end of file +hash +hash diff --git a/src/extensions/default/WebPlatformDocs/unittests.js b/src/extensions/default/WebPlatformDocs/unittests.js index 2823625b28d..c7309a76f59 100644 --- a/src/extensions/default/WebPlatformDocs/unittests.js +++ b/src/extensions/default/WebPlatformDocs/unittests.js @@ -197,8 +197,8 @@ define(function (require, exports, module) { href, $links = viewer.$htmlContent.find("a:not(.close)"); - // 7 links in description.html, 1 "more info" link in template - expect($links.length).toBe(8); + // 8 links in description.html, 1 "more info" link in template + expect($links.length).toBe(9); $links.each(function (i, anchor) { $a = $(anchor); From 1b3febea0dfcf101bb982c04aa73cd3a154c3072 Mon Sep 17 00:00:00 2001 From: Triangle717 Date: Thu, 4 Sep 2014 11:04:47 -0400 Subject: [PATCH 003/141] Remove CollectionUtils module and references --- src/brackets.js | 2 - src/dependencies.js | 2 +- src/preferences/PreferencesBase.js | 1 - src/utils/CollectionUtils.js | 94 ------------------------------ 4 files changed, 1 insertion(+), 98 deletions(-) delete mode 100644 src/utils/CollectionUtils.js diff --git a/src/brackets.js b/src/brackets.js index 577b14d2767..32220a45e44 100644 --- a/src/brackets.js +++ b/src/brackets.js @@ -132,8 +132,6 @@ define(function (require, exports, module) { require("extensibility/ExtensionManagerDialog"); require("editor/ImageViewer"); - // Deprecated modules loaded just so extensions can still use them for now - require("utils/CollectionUtils"); // Compatibility shims for filesystem API migration require("project/FileIndexManager"); require("file/NativeFileSystem"); diff --git a/src/dependencies.js b/src/dependencies.js index 1a2ae341a82..377a00e2c45 100644 --- a/src/dependencies.js +++ b/src/dependencies.js @@ -22,7 +22,7 @@ */ /*jslint vars: true, plusplus: true, devel: true, nomen: true, indent: 4, maxerr: 50, evil:true */ -/*global window, document:true, CollectionUtils:true */ +/*global window, document:true */ /** * Check for missing dependencies diff --git a/src/preferences/PreferencesBase.js b/src/preferences/PreferencesBase.js index f2cb4f98ca0..20fa5785137 100644 --- a/src/preferences/PreferencesBase.js +++ b/src/preferences/PreferencesBase.js @@ -61,7 +61,6 @@ define(function (require, exports, module) { var FileUtils = require("file/FileUtils"), FileSystem = require("filesystem/FileSystem"), ExtensionLoader = require("utils/ExtensionLoader"), - CollectionUtils = require("utils/CollectionUtils"), _ = require("thirdparty/lodash"), Async = require("utils/Async"), globmatch = require("thirdparty/globmatch"); diff --git a/src/utils/CollectionUtils.js b/src/utils/CollectionUtils.js deleted file mode 100644 index 600891f3310..00000000000 --- a/src/utils/CollectionUtils.js +++ /dev/null @@ -1,94 +0,0 @@ -/* - * Copyright (c) 2012 Adobe Systems Incorporated. All rights reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER - * DEALINGS IN THE SOFTWARE. - * - */ - -/*jslint vars: true, plusplus: true, devel: true, nomen: true, regexp: true, indent: 4, maxerr: 50 */ -/*global define, $ */ - -/** - * Utilities functions related to data collections (arrays & maps) - */ -define(function (require, exports, module) { - "use strict"; - - var _ = require("thirdparty/lodash"); - - /** - * Returns the first index in 'array' for which isMatch() returns true, or -1 if none - * @param {!Array.<*>|jQueryObject} array - * @param {!function(*, Number):boolean} isMatch Passed (item, index), same as with forEach() - * @deprecated - */ - function indexOf(array, isMatch) { - console.warn("CollectionUtils.indexOf is deprecated. Use _.findIndex instead."); - return _.findIndex(array, isMatch); - } - - /** - * Iterates over all the properties in an object or elements in an array. Differs from - * $.each in that it always iterates over the properties of an object, even if it has a length - * property making it look like an array. - * @param {*} object The object or array to iterate over. - * @param {function(value, key)} callback The function that will be executed on every object. - * @deprecated - */ - function forEach(object, callback) { - console.warn("CollectionUtils.forEach is deprecated. Use _.forEach instead."); - _.forEach(object, callback); - } - - /** - * Iterates over all the properties in an object or elements in an array. If a callback returns a - * truthly value then it will immediately return true, if not, it will return false. Differs from - * $.each in that it always iterates over the properties of an object, even if it has a length - * property making it look like an array. - * @param {*} object The object or array to iterate over. - * @param {function(value, key)} callback The function that will be executed on every object. - * @return {boolean} - * @deprecated - */ - function some(object, callback) { - console.warn("CollectionUtils.some is deprecated. Use _.some instead."); - return _.some(object, callback); - } - - /** - * Returns true if the object has the specified property. - * This calls the Object.prototype.hasOwnProperty function directly, rather than - * depending on the object having a function named "hasOwnProperty". This way the - * object *can* have a property named "hasOwnProperty" that is not a function. - * @param {*} object The object to test - * @param {string} property The name of the property to query - * @return {boolean} True if the object contains the property - * @deprecated - */ - function hasProperty(object, property) { - console.warn("CollectionUtils.hasProperty is deprecated. Use _.has instead."); - return _.has(object, property); - } - - // Define public API - exports.indexOf = indexOf; - exports.forEach = forEach; - exports.some = some; - exports.hasProperty = hasProperty; -}); From e9d958a4104e872db585edb436bd535508d9698c Mon Sep 17 00:00:00 2001 From: Triangle717 Date: Thu, 4 Sep 2014 11:05:09 -0400 Subject: [PATCH 004/141] Remove StringUtils.htmlEscape() function --- src/utils/StringUtils.js | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/utils/StringUtils.js b/src/utils/StringUtils.js index 0c91abe86be..f307bee7409 100644 --- a/src/utils/StringUtils.js +++ b/src/utils/StringUtils.js @@ -51,14 +51,6 @@ define(function (require, exports, module) { }); } - /** - * @deprecated Use lodash `escape()` instead. - */ - function htmlEscape(str) { - console.warn("StringUtils.htmlEscape is deprecated. Use _.escape instead."); - return _.escape(str); - } - function regexEscape(str) { return str.replace(/([.?*+\^$\[\]\\(){}|\-])/g, "\\$1"); } @@ -221,7 +213,6 @@ define(function (require, exports, module) { // Define public API exports.format = format; - exports.htmlEscape = htmlEscape; exports.regexEscape = regexEscape; exports.jQueryIdEscape = jQueryIdEscape; exports.getLines = getLines; From 13c5e0e773c55defdaf67ce960a4a6a2dfc6a896 Mon Sep 17 00:00:00 2001 From: Triangle717 Date: Fri, 5 Sep 2014 15:24:11 -0400 Subject: [PATCH 005/141] Remove functions deprecated before 0.41 Commits showing when each function was deprecated. https://github.com/adobe/brackets/commit/a9ab07c38e2175c46bccaa3c5ad8fb3e331b7499 https://github.com/adobe/brackets/commit/0c0218454c5dfea62ced4f3ec75de34bee13930c https://github.com/adobe/brackets/commit/d2a8a827454efe4e692fa17730e36649cb19a1dd https://github.com/adobe/brackets/commit/04b015e9d18a44b1f27c889c12d36b8abacc06cc --- src/LiveDevelopment/Agents/CSSAgent.js | 14 -------------- src/LiveDevelopment/Documents/CSSDocument.js | 10 ---------- src/file/FileUtils.js | 14 -------------- src/project/ProjectManager.js | 12 ------------ 4 files changed, 50 deletions(-) diff --git a/src/LiveDevelopment/Agents/CSSAgent.js b/src/LiveDevelopment/Agents/CSSAgent.js index e369eab3c89..eb5dd98a94a 100644 --- a/src/LiveDevelopment/Agents/CSSAgent.js +++ b/src/LiveDevelopment/Agents/CSSAgent.js @@ -91,19 +91,6 @@ define(function CSSAgent(require, exports, module) { return styles; } - /** - * Use styleSheetAdded and styleSheetRemoved events. - * Get a list of all loaded stylesheet files by URL. - * @deprecated - */ - function getStylesheetURLs() { - var styleSheetId, urls = []; - for (styleSheetId in _styleSheetDetails) { - urls[_styleSheetDetails[styleSheetId].canonicalizedURL] = true; - } - return _.keys(urls); - } - /** * Reload a CSS style sheet from a document * @param {Document} document @@ -242,7 +229,6 @@ define(function CSSAgent(require, exports, module) { // Export public functions exports.enable = enable; exports.styleForURL = styleForURL; - exports.getStylesheetURLs = getStylesheetURLs; exports.reloadCSSForDocument = reloadCSSForDocument; exports.clearCSSForDocument = clearCSSForDocument; exports.load = load; diff --git a/src/LiveDevelopment/Documents/CSSDocument.js b/src/LiveDevelopment/Documents/CSSDocument.js index 23e077cc58c..962ef13da8d 100644 --- a/src/LiveDevelopment/Documents/CSSDocument.js +++ b/src/LiveDevelopment/Documents/CSSDocument.js @@ -93,16 +93,6 @@ define(function CSSDocumentModule(require, exports, module) { return CSSAgent.styleForURL(this.doc.url); }; - /** - * CSSStyleSheetBody was removed in protocol 1.1. This method is unused in Brackets 36. - * Get the browser version of the StyleSheet object - * @deprecated - * @return {jQuery.promise} - */ - CSSDocument.prototype.getStyleSheetFromBrowser = function getStyleSheetFromBrowser() { - return new $.Deferred().reject().promise(); - }; - /** * Get the browser version of the source * @return {jQuery.promise} Promise resolved with the text content of this CSS document diff --git a/src/file/FileUtils.js b/src/file/FileUtils.js index c9c08dabf9e..5e914227553 100644 --- a/src/file/FileUtils.js +++ b/src/file/FileUtils.js @@ -249,19 +249,6 @@ define(function (require, exports, module) { } } - /** - * Warning: Contrary to the name, this does NOT return a canonical path. The canonical format - * used by Directory.fullPath actually DOES include the trailing "/" - * @deprecated - * - * @param {string} path - * @return {string} - */ - function canonicalizeFolderPath(path) { - console.error("Warning: FileUtils.canonicalizeFolderPath() is deprecated. Use paths ending in '/' if possible, like Directory.fullPath"); - return stripTrailingSlash(path); - } - /** * Get the name of a file or a directory, removing any preceding path. * @param {string} fullPath full path to a file or directory @@ -520,7 +507,6 @@ define(function (require, exports, module) { exports.convertWindowsPathToUnixPath = convertWindowsPathToUnixPath; exports.getNativeBracketsDirectoryPath = getNativeBracketsDirectoryPath; exports.getNativeModuleDirectoryPath = getNativeModuleDirectoryPath; - exports.canonicalizeFolderPath = canonicalizeFolderPath; exports.stripTrailingSlash = stripTrailingSlash; exports.isCSSPreprocessorFile = isCSSPreprocessorFile; exports.isStaticHtmlFileExt = isStaticHtmlFileExt; diff --git a/src/project/ProjectManager.js b/src/project/ProjectManager.js index 0beabcb3433..4c1e8fa4ba8 100644 --- a/src/project/ProjectManager.js +++ b/src/project/ProjectManager.js @@ -862,17 +862,6 @@ define(function (require, exports, module) { return _shouldShowName(entry.name); } - /** - * Returns true if fileName's extension doesn't belong to binary (e.g. archived) - * @deprecated Use LanguageManager.getLanguageForPath(fullPath).isBinary() - * @param {string} fileName - * @return {boolean} - */ - function isBinaryFile(fileName) { - DeprecationWarning.deprecationWarning("ProjectManager.isBinaryFile() called for " + fileName + ". Use LanguageManager.getLanguageForPath(fileName).isBinary() instead."); - return LanguageManager.getLanguageForPath(fileName).isBinary(); - } - /** * @private * Generate a string suitable for sorting @@ -2383,7 +2372,6 @@ define(function (require, exports, module) { exports.isWithinProject = isWithinProject; exports.makeProjectRelativeIfPossible = makeProjectRelativeIfPossible; exports.shouldShow = shouldShow; - exports.isBinaryFile = isBinaryFile; exports.openProject = openProject; exports.getSelectedItem = getSelectedItem; exports.getInitialProjectPath = getInitialProjectPath; From 3acf98556ddfb566607df6ea7a6eb69b54cdc9bd Mon Sep 17 00:00:00 2001 From: Peter Flynn Date: Tue, 23 Sep 2014 19:02:33 -0700 Subject: [PATCH 006/141] Initial implementation of Quick Edit grouping the results list by file, in collapsible sections. Also, remove async code from _updateSelectedMarker() (seems to be a very old remnant from when we allowed scrolling in the rule list, which we don't anymore) and stop returning a Promise (no one was using it anyway). --- src/editor/MultiRangeInlineEditor.js | 245 ++++++++++++++++++++------- src/styles/brackets.less | 12 ++ 2 files changed, 197 insertions(+), 60 deletions(-) diff --git a/src/editor/MultiRangeInlineEditor.js b/src/editor/MultiRangeInlineEditor.js index 9356faebc27..9313a74db3c 100644 --- a/src/editor/MultiRangeInlineEditor.js +++ b/src/editor/MultiRangeInlineEditor.js @@ -44,6 +44,8 @@ define(function (require, exports, module) { var TextRange = require("document/TextRange").TextRange, InlineTextEditor = require("editor/InlineTextEditor").InlineTextEditor, EditorManager = require("editor/EditorManager"), + PreferencesManager = require("preferences/PreferencesManager"), + ProjectManager = require("project/ProjectManager"), Commands = require("command/Commands"), Strings = require("strings"), CommandManager = require("command/CommandManager"); @@ -105,6 +107,7 @@ define(function (require, exports, module) { this._labelCB = labelCB; this._selectedRangeIndex = -1; + this._collapsedFiles = {}; } MultiRangeInlineEditor.prototype = Object.create(InlineTextEditor.prototype); MultiRangeInlineEditor.prototype.constructor = MultiRangeInlineEditor; @@ -114,17 +117,37 @@ define(function (require, exports, module) { MultiRangeInlineEditor.prototype.$relatedContainer = null; MultiRangeInlineEditor.prototype.$related = null; MultiRangeInlineEditor.prototype.$selectedMarker = null; + + /** Includes all the _ranges[i].$listItem items, as well as section headers */ MultiRangeInlineEditor.prototype.$rangeList = null; /** - * List of search results + * List of search results. Section headers are not represented in this list (they are implied before each group of + * of consecutive results from the same Document). * @type {Array.} */ MultiRangeInlineEditor.prototype._ranges = null; + + /** Index into this._ranges - indices do not include section headers */ MultiRangeInlineEditor.prototype._selectedRangeIndex = null; + + /** + * Map from fullPath to true if collapsed. May not agree with preferences, in cases where multiple inline editors make + * concurrent changes + */ + MultiRangeInlineEditor.prototype._collapsedFiles = null; + MultiRangeInlineEditor.prototype._messageCB = null; MultiRangeInlineEditor.prototype._labelCB = null; + /** @type {!Object.} Map from fullPath to section header DOM node */ + MultiRangeInlineEditor.prototype._$headers = null; + + + function getPrefsContext() { + return { location : { scope: "user", layer: "project" } }; + } + /** * @private * Add a new range to the range list UI. @@ -148,20 +171,89 @@ define(function (require, exports, module) { }); range.$listItem = $rangeItem; + }; + + MultiRangeInlineEditor.prototype._toggleSection = function (fullPath, duringInit) { + var $headerItem = this._$headers[fullPath]; + var context = getPrefsContext(); + + var $disclosureIcon = $headerItem.find(".disclosure-triangle"); + var isCollapsing = $disclosureIcon.hasClass("expanded"); + $disclosureIcon.toggleClass("expanded").toggleClass("collapsed"); + $headerItem.nextUntil(".section-header").toggle(); + + // Update instance-specific state AND persist as per-project view state + this._collapsedFiles[fullPath] = isCollapsing; + if (!duringInit) { + var setting = PreferencesManager.getViewState("inlineEditor.collapsedFiles", context) || {}; + if (isCollapsing) { + setting[fullPath] = true; + } else { + delete setting[fullPath]; + } + PreferencesManager.setViewState("inlineEditor.collapsedFiles", setting, context); + } + + // Show/hide selection indicator if selection was in collapsed section + this._updateSelectedMarker(false); - // Update list item as TextRange changes - $(range.textRange).on("change", function () { - _updateRangeLabel($rangeItem, range); - }).on("contentChange", function () { - _updateRangeLabel($rangeItem, range, self._labelCB); - }); + // Changing height of rule list may change ht of overall editor + this._updateEditorMinHeight(); + }; + + MultiRangeInlineEditor.prototype._createHeaderItem = function (doc) { + var $headerItem = $("
  • " + _.escape(doc.file.name) + "
  • ") + .addClass("section-header") + .appendTo(this.$rangeList); - // If TextRange lost sync, remove it from the list (and close the widget if no other ranges are left) - $(range.textRange).on("lostSync", function () { - self._removeRange(range); - }); + $headerItem.click(function () { + this._toggleSection(doc.file.fullPath); + }.bind(this)); + + return $headerItem; }; - + + MultiRangeInlineEditor.prototype._renderList = function () { + this.$rangeList.empty(); + + var lastSectionDoc, + headers = {}, + nHeaders = 0, + nFilesInSection = 0; + + function finalizeSection() { + if (lastSectionDoc) { + headers[lastSectionDoc.file.fullPath].append(" (" + nFilesInSection + ")"); + } + } + + this._ranges.forEach(function (resultItem, index) { + if (lastSectionDoc !== resultItem.textRange.document) { + // Finalize previous section + finalizeSection(); + + // Initialize new section + lastSectionDoc = resultItem.textRange.document; + nFilesInSection = 0; + + // Create filename header for new section + nHeaders++; + var header = this._createHeaderItem(lastSectionDoc); + headers[lastSectionDoc.file.fullPath] = header; + } + nFilesInSection++; + this._createListItem(resultItem, index + nHeaders); + }, this); + + // Finalize last section + finalizeSection(); + + this._$headers = headers; + + // FIXME: calling this again later doesn't restore collapsed sections + }; + + /** * @override * @param {!Editor} hostEditor Outer Editor instance that inline editor will sit within. @@ -191,18 +283,48 @@ define(function (require, exports, module) { // Range list this.$rangeList = $(" From cd068ad6933d7f277e5b446ab6101a0ca0f1ba7c Mon Sep 17 00:00:00 2001 From: valtlait Date: Mon, 27 Oct 2014 18:53:17 +0200 Subject: [PATCH 087/141] Update index.html --- samples/fi/Aloitus/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/fi/Aloitus/index.html b/samples/fi/Aloitus/index.html index 1f0542aeefc..26a62203c3f 100644 --- a/samples/fi/Aloitus/index.html +++ b/samples/fi/Aloitus/index.html @@ -57,7 +57,7 @@

    Pikamuokkaus CSS:lle ja JavaScriptille

    Cmd/Ctrl + E. Sinun pitäisi nähdä, kun CSS-pikaeditori ilmestyy alapuolelle näyttäen CSS-säännön, joka pätee siihen. Pikamuokkaus toimii niin class- kuin id-attribuuttienkin kanssa. - Voit luoda uusia sääntöjä samalla tavalla. Napsauta yhtä alaosan -tägeista ja paina + Voit luoda uusia sääntöjä samalla tavalla. Napsauta yhtä alaosan -tägeistä ja paina Cmd/Ctrl + E. Sille ei ole sääntöjä juuri nyt, mutta voit napsauttaa Uusi sääntö -painiketta lisätäksesi uuden säännön -tägeille. From e6fd77ebbf975cef0ea47d442e240be32256903c Mon Sep 17 00:00:00 2001 From: valtlait Date: Mon, 27 Oct 2014 20:07:25 +0200 Subject: [PATCH 088/141] =?UTF-8?q?Change=20=E2=80=9D=E2=86=92=E2=80=9D=20?= =?UTF-8?q?back=20to=20=E2=80=9D>=E2=80=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- samples/fi/Aloitus/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/samples/fi/Aloitus/index.html b/samples/fi/Aloitus/index.html index 26a62203c3f..2a03f3e22ff 100644 --- a/samples/fi/Aloitus/index.html +++ b/samples/fi/Aloitus/index.html @@ -140,7 +140,7 @@

    Tarvitsetko jotakin muuta? Kokeile laajennusta!

    Sen kaiken hyvän lisäksi, jota Bracketsiin on rakennettu, suuri ja kasvava laajennuskehittäjien yhteisömme on tehnyt yli sata laajennusta, jotka lisäävät hyödyllisiä toimintoja. Jos on jotakin, jota tarvitset ja jota Brackets ei tarjoa, enemmän kuin todennäköisesti joku on tehnyt laajennuksen siihen. Selaa saatavilla - olevien laajennusten luetteloa tai hae siitä valitsemalla Tiedosto → Laajennusten hallinta + olevien laajennusten luetteloa tai hae siitä valitsemalla Tiedosto > Laajennusten hallinta ja napsauttamalla ”Saatavilla”-välilehteä. Kun löydät haluamasi laajennuksen, napsauta vain ”Asenna”- painiketta sen vierestä.

    From 2ae2f391485e9337d3ea23cbb42b55a3da3aa9c5 Mon Sep 17 00:00:00 2001 From: valtlait Date: Mon, 27 Oct 2014 20:12:28 +0200 Subject: [PATCH 089/141] Fix line length --- samples/fi/Aloitus/index.html | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/samples/fi/Aloitus/index.html b/samples/fi/Aloitus/index.html index 2a03f3e22ff..57d63dad244 100644 --- a/samples/fi/Aloitus/index.html +++ b/samples/fi/Aloitus/index.html @@ -140,9 +140,9 @@

    Tarvitsetko jotakin muuta? Kokeile laajennusta!

    Sen kaiken hyvän lisäksi, jota Bracketsiin on rakennettu, suuri ja kasvava laajennuskehittäjien yhteisömme on tehnyt yli sata laajennusta, jotka lisäävät hyödyllisiä toimintoja. Jos on jotakin, jota tarvitset ja jota Brackets ei tarjoa, enemmän kuin todennäköisesti joku on tehnyt laajennuksen siihen. Selaa saatavilla - olevien laajennusten luetteloa tai hae siitä valitsemalla Tiedosto > Laajennusten hallinta - ja napsauttamalla ”Saatavilla”-välilehteä. Kun löydät haluamasi laajennuksen, napsauta vain ”Asenna”- - painiketta sen vierestä. + olevien laajennusten luetteloa tai hae siitä valitsemalla Tiedosto > Laajennusten + hallinta ja napsauttamalla ”Saatavilla”-välilehteä. Kun löydät haluamasi laajennuksen, napsauta + vain ”Asenna”-painiketta sen vierestä.

    Projektit Bracketsissa

    From 7dc5c03fc1fa515c263635819e41c48786316fc0 Mon Sep 17 00:00:00 2001 From: Mikael Jorhult Date: Mon, 27 Oct 2014 20:07:26 +0100 Subject: [PATCH 090/141] Apply review suggestions. --- src/nls/sv/strings.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/nls/sv/strings.js b/src/nls/sv/strings.js index 719bdd645cc..f2c5029e38c 100644 --- a/src/nls/sv/strings.js +++ b/src/nls/sv/strings.js @@ -77,7 +77,7 @@ define({ // User key map error strings "ERROR_KEYMAP_TITLE" : "Fel uppstod när användarens tangentuppsättning lästes in", - "ERROR_KEYMAP_CORRUPT" : "Din tangentuppsättningsfil är inte korrekt JSON. Filen kommer att öppnas så att du kan åtgärda formatet.", + "ERROR_KEYMAP_CORRUPT" : "Din tangentuppsättningsfil är inte korrekt formaterad JSON. Filen kommer att öppnas så att du kan åtgärda formateringsfelet.", "ERROR_LOADING_KEYMAP" : "Din tangentuppsättningsfil är inte en UTF-8-kodad textfil och kan inte läsas", "ERROR_RESTRICTED_COMMANDS" : "Du kan inte ändra kortkommandot för följande kommandon: {0}", "ERROR_RESTRICTED_SHORTCUTS" : "Du kan inte ändra följande kortkommandon: {0}", @@ -241,9 +241,9 @@ define({ "LEFT" : "Vänster", "RIGHT" : "Höger", - "CMD_SPLITVIEW_NONE" : "Ingen split", - "CMD_SPLITVIEW_VERTICAL" : "Vertikal split", - "CMD_SPLITVIEW_HORIZONTAL" : "Horisontell split", + "CMD_SPLITVIEW_NONE" : "Ingen delning", + "CMD_SPLITVIEW_VERTICAL" : "Vertikal delning", + "CMD_SPLITVIEW_HORIZONTAL" : "Horisontell delning", "SPLITVIEW_MENU_TOOLTIP" : "Dela editorn vertikalt eller horisontellt", "GEAR_MENU_TOOLTIP" : "Konfigurera arbetsyta", From 558502495dddd25974af9f4487f00a35e47dcfec Mon Sep 17 00:00:00 2001 From: Ryan Stewart Date: Mon, 27 Oct 2014 12:20:10 -0700 Subject: [PATCH 091/141] Changes based on review. --- samples/root/Getting Started/index.html | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/samples/root/Getting Started/index.html b/samples/root/Getting Started/index.html index f02cd6d87e0..f77776d55cb 100644 --- a/samples/root/Getting Started/index.html +++ b/samples/root/Getting Started/index.html @@ -55,8 +55,6 @@

    Projects in Brackets

    sample project. -

    We're trying out a few new things

    - @@ -73,7 +71,7 @@

    Quick Edit for CSS and JavaScript

    Want to see it in action? Place your cursor on the tag above and press Cmd/Ctrl + E. You should see a CSS quick editor appear above, showing the CSS rule that - applies to it. Quick Edit works in class and id attributes as well. And you can use it with your + applies to it. Quick Edit works in class and id attributes as well. You can use it with your LESS and SCSS files also. You can create new rules the same way. Click in one of the tags above and press From 12784f5a77d874cd8122a4a5e2ed6c36c1fbe7ab Mon Sep 17 00:00:00 2001 From: Peter Flynn Date: Mon, 27 Oct 2014 13:39:50 -0700 Subject: [PATCH 092/141] Fix bug #9179 (New Untitled documents have wrong line endings on Windows) -- Use correct form of Document.getText() in Save As, like in Save. Plus unit test. --- src/document/DocumentCommandHandlers.js | 2 +- src/project/ProjectManager.js | 3 +- test/spec/DocumentCommandHandlers-test.js | 86 ++++++++++++++++++++--- 3 files changed, 81 insertions(+), 10 deletions(-) diff --git a/src/document/DocumentCommandHandlers.js b/src/document/DocumentCommandHandlers.js index 0432e47359d..25f1fff634f 100644 --- a/src/document/DocumentCommandHandlers.js +++ b/src/document/DocumentCommandHandlers.js @@ -873,7 +873,7 @@ define(function (require, exports, module) { // explictly allow "blind" writes to the filesystem in this case, // ignoring warnings about the contents being modified outside of // the editor. - FileUtils.writeText(newFile, doc.getText(), true) + FileUtils.writeText(newFile, doc.getText(true), true) .done(function () { // If there were unsaved changes before Save As, they don't stay with the old // file anymore - so must revert the old doc to match disk content. diff --git a/src/project/ProjectManager.js b/src/project/ProjectManager.js index 1ab72fc6b04..7f836316a95 100644 --- a/src/project/ProjectManager.js +++ b/src/project/ProjectManager.js @@ -1334,7 +1334,8 @@ define(function (require, exports, module) { /** * Returns an Array of all files for this project, optionally including * files in the working set that are *not* under the project root. Files are - * filtered out by ProjectModel.shouldShow(). + * filtered first by ProjectModel.shouldShow(), then by the custom filter + * argument (if one was provided). The list is unsorted. * * @param {function (File, number):boolean=} filter Optional function to filter * the file list (does not filter directory traversal). API matches Array.filter(). diff --git a/test/spec/DocumentCommandHandlers-test.js b/test/spec/DocumentCommandHandlers-test.js index 2653ced3ec9..2f817b40828 100644 --- a/test/spec/DocumentCommandHandlers-test.js +++ b/test/spec/DocumentCommandHandlers-test.js @@ -794,7 +794,7 @@ define(function (require, exports, module) { }); // Regardless of platform, files with CRLF should be saved with CRLF and files with LF should be saved with LF - it("should preserve line endings when saving changes", function () { + it("should preserve line endings after Save", function () { var crlfText = "line1\r\nline2\r\nline3", lfText = "line1\nline2\nline3", crlfPath = testPath + "/crlfTest.js", @@ -816,7 +816,6 @@ define(function (require, exports, module) { promise = CommandManager.execute(Commands.FILE_OPEN, {fullPath: crlfPath}); waitsForDone(promise, "Open CRLF test file"); }); - runs(function () { DocumentManager.getCurrentDocument().replaceRange("line2a\nline2b", {line: 1, ch: 0}, {line: 1, ch: 5}); promise = CommandManager.execute(Commands.FILE_SAVE); @@ -828,14 +827,13 @@ define(function (require, exports, module) { promise = CommandManager.execute(Commands.FILE_OPEN, {fullPath: lfPath}); waitsForDone(promise, "Open LF test file"); }); - runs(function () { DocumentManager.getCurrentDocument().replaceRange("line2a\nline2b", {line: 1, ch: 0}, {line: 1, ch: 5}); promise = CommandManager.execute(Commands.FILE_SAVE); waitsForDone(promise, "Save modified file"); }); - // verify file contents + // verify files' contents runs(function () { promise = FileUtils.readAsText(FileSystem.getFileForPath(crlfPath)) .done(function (actualText) { @@ -854,14 +852,86 @@ define(function (require, exports, module) { // clean up runs(function () { - promise = SpecRunnerUtils.deletePath(crlfPath); - waitsForDone(promise, "Remove CRLF test file"); + waitsForDone(SpecRunnerUtils.deletePath(crlfPath), "Remove CRLF test file"); + waitsForDone(SpecRunnerUtils.deletePath(lfPath), "Remove LF test file"); + }); + }); + + it("should preserve line endings after Save As", function () { // bug #9179 + var crlfText = "line1\r\nline2\r\nline3", + lfText = "line1\nline2\nline3", + crlfPath = testPath + "/crlfTest.js", + lfPath = testPath + "/lfTest.js", + crlfNewPath = testPath + "/saveAsCRLF.js", + lfNewPath = testPath + "/saveAsLF.js", + promise; + + // create test files (Git rewrites line endings, so these can't be kept in src control) + runs(function () { + promise = FileUtils.writeText(FileSystem.getFileForPath(crlfPath), crlfText); + waitsForDone(promise, "Create CRLF test file"); + }); + runs(function () { + promise = FileUtils.writeText(FileSystem.getFileForPath(lfPath), lfText); + waitsForDone(promise, "Create LF test file"); + }); + + // open, modify, and Save As (CRLF case) + runs(function () { + promise = CommandManager.execute(Commands.FILE_OPEN, {fullPath: crlfPath}); + waitsForDone(promise, "Open CRLF test file"); + }); + runs(function () { + DocumentManager.getCurrentDocument().replaceRange("line2a\nline2b", {line: 1, ch: 0}, {line: 1, ch: 5}); + + spyOn(FileSystem, "showSaveDialog").andCallFake(function (dialogTitle, initialPath, proposedNewName, callback) { + callback(undefined, crlfNewPath); + }); + promise = CommandManager.execute(Commands.FILE_SAVE_AS); + waitsForDone(promise, "Save As modified file"); + }); + + // open, modify, and Save As (LF case) + runs(function () { + promise = CommandManager.execute(Commands.FILE_OPEN, {fullPath: lfPath}); + waitsForDone(promise, "Open LF test file"); + }); + runs(function () { + DocumentManager.getCurrentDocument().replaceRange("line2a\nline2b", {line: 1, ch: 0}, {line: 1, ch: 5}); + + FileSystem.showSaveDialog.andCallFake(function (dialogTitle, initialPath, proposedNewName, callback) { + callback(undefined, lfNewPath); + }); + promise = CommandManager.execute(Commands.FILE_SAVE_AS); + waitsForDone(promise, "Save As modified file"); + }); + + // verify files' contents + runs(function () { + promise = FileUtils.readAsText(FileSystem.getFileForPath(crlfNewPath)) + .done(function (actualText) { + expect(actualText).toBe(crlfText.replace("line2", "line2a\r\nline2b")); + }); + waitsForDone(promise, "Read CRLF save-as file"); + }); + + runs(function () { + promise = FileUtils.readAsText(FileSystem.getFileForPath(lfNewPath)) + .done(function (actualText) { + expect(actualText).toBe(lfText.replace("line2", "line2a\nline2b")); + }); + waitsForDone(promise, "Read LF save-as file"); }); + + // clean up runs(function () { - promise = SpecRunnerUtils.deletePath(lfPath); - waitsForDone(promise, "Remove LF test file"); + waitsForDone(SpecRunnerUtils.deletePath(crlfPath), "Remove CRLF test file"); + waitsForDone(SpecRunnerUtils.deletePath(lfPath), "Remove LF test file"); + waitsForDone(SpecRunnerUtils.deletePath(crlfNewPath), "Remove CRLF save-as file"); + waitsForDone(SpecRunnerUtils.deletePath(lfNewPath), "Remove LF save-as file"); }); }); + }); From da4175a5ce7b5e862b3af334a17ba0f0833d8b9a Mon Sep 17 00:00:00 2001 From: "walf (Localization Automation)" Date: Mon, 27 Oct 2014 21:53:55 -0700 Subject: [PATCH 093/141] Updated by ALF automation. --- src/nls/ja/strings.js | 970 +++++++++++++++++++++--------------------- 1 file changed, 485 insertions(+), 485 deletions(-) diff --git a/src/nls/ja/strings.js b/src/nls/ja/strings.js index 89c40bb478b..0b6066a71eb 100644 --- a/src/nls/ja/strings.js +++ b/src/nls/ja/strings.js @@ -31,269 +31,269 @@ define({ */ // General file io error strings - "GENERIC_ERROR": "(エラー {0})", - "NOT_FOUND_ERR": "ファイルが見つかりません。", - "NOT_READABLE_ERR": "ファイルを読み取れません。", - "EXCEEDS_MAX_FILE_SIZE": "{0} MB を超えるサイズのファイルは {APP_NAME} で開くことはできません。", - "NO_MODIFICATION_ALLOWED_ERR": "対象ディレクトリは変更できません。", - "NO_MODIFICATION_ALLOWED_ERR_FILE": "ファイルを変更する権限がありません。", - "CONTENTS_MODIFIED_ERR": "このファイルは {APP_NAME} 以外で変更されています。", - "UNSUPPORTED_ENCODING_ERR": "{APP_NAME} は現在 UTF-8 でエンコードされたテキストファイルのみをサポートしています。", - "FILE_EXISTS_ERR": "ファイルまたはディレクトリは既に存在しています。", - "FILE": "ファイル", - "FILE_TITLE": "ファイル", - "DIRECTORY": "ディレクトリ", - "DIRECTORY_TITLE": "ディレクトリ", - "DIRECTORY_NAMES_LEDE": "ディレクトリ名", - "FILENAMES_LEDE": "ファイル名", - "FILENAME": "ファイル名", - "DIRECTORY_NAME": "ディレクトリ名", + "GENERIC_ERROR": "(エラー {0})", + "NOT_FOUND_ERR": "ファイルが見つかりません。", + "NOT_READABLE_ERR": "ファイルを読み取れません。", + "EXCEEDS_MAX_FILE_SIZE": "{0} MB を超えるサイズのファイルは {APP_NAME} で開くことはできません。", + "NO_MODIFICATION_ALLOWED_ERR": "対象ディレクトリは変更できません。", + "NO_MODIFICATION_ALLOWED_ERR_FILE": "ファイルを変更する権限がありません。", + "CONTENTS_MODIFIED_ERR": "このファイルは {APP_NAME} 以外で変更されています。", + "UNSUPPORTED_ENCODING_ERR": "{APP_NAME} は現在 UTF-8 でエンコードされたテキストファイルのみをサポートしています。", + "FILE_EXISTS_ERR": "ファイルまたはディレクトリは既に存在しています。", + "FILE": "ファイル", + "FILE_TITLE": "ファイル", + "DIRECTORY": "ディレクトリ", + "DIRECTORY_TITLE": "ディレクトリ", + "DIRECTORY_NAMES_LEDE": "ディレクトリ名", + "FILENAMES_LEDE": "ファイル名", + "FILENAME": "ファイル名", + "DIRECTORY_NAME": "ディレクトリ名", // Project error strings - "ERROR_LOADING_PROJECT": "プロジェクトを読み込む際にエラーが発生しました。", - "OPEN_DIALOG_ERROR": "「ファイルを開く」ダイアログを表示する際にエラーが発生しました。(エラー {0})", - "REQUEST_NATIVE_FILE_SYSTEM_ERROR": "ディレクトリ {0} を読み込む際にエラーが発生しました。(エラー {1})", - "READ_DIRECTORY_ENTRIES_ERROR": "ディレクトリ {0} の内容を読み込む際にエラーが発生しました。(エラー {1})", + "ERROR_LOADING_PROJECT": "プロジェクトを読み込む際にエラーが発生しました。", + "OPEN_DIALOG_ERROR": "「ファイルを開く」ダイアログを表示する際にエラーが発生しました。(エラー {0})", + "REQUEST_NATIVE_FILE_SYSTEM_ERROR": "ディレクトリ {0} を読み込む際にエラーが発生しました。(エラー {1})", + "READ_DIRECTORY_ENTRIES_ERROR": "ディレクトリ {0} の内容を読み込む際にエラーが発生しました。(エラー {1})", // File open/save error string - "ERROR_OPENING_FILE_TITLE": "ファイルを開く際にエラーが発生しました。", - "ERROR_OPENING_FILE": "ファイル {0} を開く際にエラーが発生しました。{1}", - "ERROR_OPENING_FILES": "次のファイルを開くときにエラーが発生しました :", - "ERROR_RELOADING_FILE_TITLE": "ディスクから変更を再読み込みする際にエラーが発生しました。", - "ERROR_RELOADING_FILE": "ファイル {0} を再読込する際にエラーが発生しました。{1}", - "ERROR_SAVING_FILE_TITLE": "ファイルを保存する際にエラーが発生しました。", - "ERROR_SAVING_FILE": "ファイル {0} を保存する際にエラーが発生しました。{1}", - "ERROR_RENAMING_FILE_TITLE": "{0} の名前を変更する際にエラーが発生しました。", - "ERROR_RENAMING_FILE": "{2} {0} の名前を変更する際にエラーが発生しました。{1}", - "ERROR_DELETING_FILE_TITLE": "{0} を削除する際にエラーが発生しました。", - "ERROR_DELETING_FILE": "{2} {0} を削除する際にエラーが発生しました。{1}", - "INVALID_FILENAME_TITLE": "無効な{0}", - "INVALID_FILENAME_MESSAGE": "{0}にはシステムのすべての予約語、末尾のピリオド (.)、および次の文字を含めることはできません : {1}", - "ENTRY_WITH_SAME_NAME_EXISTS": "{0} という名前のファイルまたはディレクトリは既に存在します。", - "ERROR_CREATING_FILE_TITLE": "{0} を作成する際にエラーが発生しました。", - "ERROR_CREATING_FILE": "{0} {1} を作成する際にエラーが発生しました。{2}", - "ERROR_MIXED_DRAGDROP": "他のファイルを開いている間はフォルダーを開くことはできません。", + "ERROR_OPENING_FILE_TITLE": "ファイルを開く際にエラーが発生しました。", + "ERROR_OPENING_FILE": "ファイル {0} を開く際にエラーが発生しました。{1}", + "ERROR_OPENING_FILES": "次のファイルを開くときにエラーが発生しました :", + "ERROR_RELOADING_FILE_TITLE": "ディスクから変更を再読み込みする際にエラーが発生しました。", + "ERROR_RELOADING_FILE": "ファイル {0} を再読込する際にエラーが発生しました。{1}", + "ERROR_SAVING_FILE_TITLE": "ファイルを保存する際にエラーが発生しました。", + "ERROR_SAVING_FILE": "ファイル {0} を保存する際にエラーが発生しました。{1}", + "ERROR_RENAMING_FILE_TITLE": "{0} の名前を変更する際にエラーが発生しました。", + "ERROR_RENAMING_FILE": "{2} {0} の名前を変更する際にエラーが発生しました。{1}", + "ERROR_DELETING_FILE_TITLE": "{0} を削除する際にエラーが発生しました。", + "ERROR_DELETING_FILE": "{2} {0} を削除する際にエラーが発生しました。{1}", + "INVALID_FILENAME_TITLE": "無効な{0}", + "INVALID_FILENAME_MESSAGE": "{0}にはシステムのすべての予約語、末尾のピリオド (.)、および次の文字を含めることはできません : {1}", + "ENTRY_WITH_SAME_NAME_EXISTS": "{0} という名前のファイルまたはディレクトリは既に存在します。", + "ERROR_CREATING_FILE_TITLE": "{0} を作成する際にエラーが発生しました。", + "ERROR_CREATING_FILE": "{0} {1} を作成する際にエラーが発生しました。{2}", + "ERROR_MIXED_DRAGDROP": "他のファイルを開いている間はフォルダーを開くことはできません。", // User key map error strings - "ERROR_KEYMAP_TITLE": "ユーザーキーマップを読み込む際にエラーが発生しました", - "ERROR_KEYMAP_CORRUPT": "キーマップファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。", - "ERROR_LOADING_KEYMAP": "キーマップファイルが UTF-8 でエンコードされた有効なテキストファイルではないため、読み込めません", - "ERROR_RESTRICTED_COMMANDS": "これらのコマンドにショートカットを割り当て直すことはできません : {0}", - "ERROR_RESTRICTED_SHORTCUTS": "これらのショートカットを割り当て直すことはできません : {0}", - "ERROR_MULTIPLE_SHORTCUTS": "これらのコマンドに複数のショートカットを割り当て直しています : {0}", - "ERROR_DUPLICATE_SHORTCUTS": "これらのショートカットの複数のバインディングがあります : {0}", - "ERROR_INVALID_SHORTCUTS": "これらのショートカットは無効です : {0}", - "ERROR_NONEXISTENT_COMMANDS": "存在しないコマンドにショートカットを割り当てています : {0}", + "ERROR_KEYMAP_TITLE": "ユーザーキーマップを読み込む際にエラーが発生しました", + "ERROR_KEYMAP_CORRUPT": "キーマップファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。", + "ERROR_LOADING_KEYMAP": "キーマップファイルが UTF-8 でエンコードされた有効なテキストファイルではないため、読み込めません", + "ERROR_RESTRICTED_COMMANDS": "これらのコマンドにショートカットを割り当て直すことはできません : {0}", + "ERROR_RESTRICTED_SHORTCUTS": "これらのショートカットを割り当て直すことはできません : {0}", + "ERROR_MULTIPLE_SHORTCUTS": "これらのコマンドに複数のショートカットを割り当て直しています : {0}", + "ERROR_DUPLICATE_SHORTCUTS": "これらのショートカットの複数のバインディングがあります : {0}", + "ERROR_INVALID_SHORTCUTS": "これらのショートカットは無効です : {0}", + "ERROR_NONEXISTENT_COMMANDS": "存在しないコマンドにショートカットを割り当てています : {0}", // Application preferences corrupt error strings - "ERROR_PREFS_CORRUPT_TITLE": "環境設定を読み込む際にエラーが発生しました。", - "ERROR_PREFS_CORRUPT": "環境設定ファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。変更を反映するには、{APP_NAME} を再起動する必要があります。", + "ERROR_PREFS_CORRUPT_TITLE": "環境設定を読み込む際にエラーが発生しました。", + "ERROR_PREFS_CORRUPT": "環境設定ファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。変更を反映するには、{APP_NAME} を再起動する必要があります。", // Application error strings - "ERROR_IN_BROWSER_TITLE": "{APP_NAME} は、まだブラウザー上で実行されていません。", - "ERROR_IN_BROWSER": "{APP_NAME} は HTML で構築されていますが、デスクトップアプリとして実行することで、ローカルファイルを編集することができます。{APP_NAME} を実行するために、github.com/adobe/brackets-shell リポジトリのアプリケーションシェルを使用してください。", + "ERROR_IN_BROWSER_TITLE": "{APP_NAME} は、まだブラウザー上で実行されていません。", + "ERROR_IN_BROWSER": "{APP_NAME} は HTML で構築されていますが、デスクトップアプリとして実行することで、ローカルファイルを編集することができます。{APP_NAME} を実行するために、github.com/adobe/brackets-shell リポジトリのアプリケーションシェルを使用してください。", // ProjectManager max files error string - "ERROR_MAX_FILES_TITLE": "ファイルのインデックス時にエラーが発生しました。", - "ERROR_MAX_FILES": "このプロジェクトには 30,000 個以上のファイルが含まれています。複数のファイルを操作する機能が無効になるか、プロジェクトが空であるかのように動作します。大きいプロジェクトの操作方法の詳細を表示。", + "ERROR_MAX_FILES_TITLE": "ファイルのインデックス時にエラーが発生しました。", + "ERROR_MAX_FILES": "このプロジェクトには 30,000 個以上のファイルが含まれています。複数のファイルを操作する機能が無効になるか、プロジェクトが空であるかのように動作します。大きいプロジェクトの操作方法の詳細を表示。", // Live Preview error strings - "ERROR_LAUNCHING_BROWSER_TITLE": "ブラウザーの起動時にエラーが発生しました。", - "ERROR_CANT_FIND_CHROME": "Google Chrome ブラウザーが見つかりません。インストールされていることを確認してください。", - "ERROR_LAUNCHING_BROWSER": "ブラウザーの起動時にエラーが発生しました。(エラー {0})", + "ERROR_LAUNCHING_BROWSER_TITLE": "ブラウザーの起動時にエラーが発生しました。", + "ERROR_CANT_FIND_CHROME": "Google Chrome ブラウザーが見つかりません。インストールされていることを確認してください。", + "ERROR_LAUNCHING_BROWSER": "ブラウザーの起動時にエラーが発生しました。(エラー {0})", - "LIVE_DEVELOPMENT_ERROR_TITLE": "ライブプレビューのエラーが発生しました。", - "LIVE_DEVELOPMENT_RELAUNCH_TITLE": "ブラウザーに接続しています", - "LIVE_DEVELOPMENT_ERROR_MESSAGE": "ライブプレビューに接続するには、リモートデバッグを有効にして Chrome を再起動する必要があります。

    Chrome を再起動してリモートデバッグを有効にしますか?

    ", - "LIVE_DEV_LOADING_ERROR_MESSAGE": "ライブプレビューページを読み込めません。", - "LIVE_DEV_NEED_HTML_MESSAGE": "ライブプレビューを起動するには、HTML ファイルを開くか、index.html ファイルがプロジェクトに含まれていることを確認してください。", - "LIVE_DEV_NEED_BASEURL_MESSAGE": "サーバー側ファイルでライブプレビューを起動するには、このプロジェクトのベース URL を指定する必要があります。", - "LIVE_DEV_SERVER_NOT_READY_MESSAGE": "ファイルのライブプレビューで使用する HTTP サーバーの起動時にエラーが発生しました。もう一度実行してください。", - "LIVE_DEVELOPMENT_INFO_TITLE": "ライブプレビューへようこそ", - "LIVE_DEVELOPMENT_INFO_MESSAGE": "ライブプレビューにより {APP_NAME} がブラウザーに接続しました。ブラウザーで HTML ファイルのプレビューが起動し、コードを編集すると直ちにプレビューが更新されます。

    この初期バージョンの {APP_NAME} では、Google Chrome でのみライブプレビューが機能し、CSS または HTML ファイルの編集時にのみライブ更新が行われます。 JavaScript ファイルへの変更は、保存時に自動的にリロードされます。

    (このメッセージは一度しか表示されません。)", - "LIVE_DEVELOPMENT_TROUBLESHOOTING": "詳しくは、ライブプレビューの接続エラーに関するトラブルシューティングを参照してください。", + "LIVE_DEVELOPMENT_ERROR_TITLE": "ライブプレビューのエラーが発生しました。", + "LIVE_DEVELOPMENT_RELAUNCH_TITLE": "ブラウザーに接続しています", + "LIVE_DEVELOPMENT_ERROR_MESSAGE": "ライブプレビューに接続するには、リモートデバッグを有効にして Chrome を再起動する必要があります。

    Chrome を再起動してリモートデバッグを有効にしますか?

    ", + "LIVE_DEV_LOADING_ERROR_MESSAGE": "ライブプレビューページを読み込めません。", + "LIVE_DEV_NEED_HTML_MESSAGE": "ライブプレビューを起動するには、HTML ファイルを開くか、index.html ファイルがプロジェクトに含まれていることを確認してください。", + "LIVE_DEV_NEED_BASEURL_MESSAGE": "サーバー側ファイルでライブプレビューを起動するには、このプロジェクトのベース URL を指定する必要があります。", + "LIVE_DEV_SERVER_NOT_READY_MESSAGE": "ファイルのライブプレビューで使用する HTTP サーバーの起動時にエラーが発生しました。もう一度実行してください。", + "LIVE_DEVELOPMENT_INFO_TITLE": "ライブプレビューへようこそ", + "LIVE_DEVELOPMENT_INFO_MESSAGE": "ライブプレビューにより {APP_NAME} がブラウザーに接続しました。ブラウザーで HTML ファイルのプレビューが起動し、コードを編集すると直ちにプレビューが更新されます。

    この初期バージョンの {APP_NAME} では、Google Chrome でのみライブプレビューが機能し、CSS または HTML ファイルの編集時にのみライブ更新が行われます。 JavaScript ファイルへの変更は、保存時に自動的にリロードされます。

    (このメッセージは一度しか表示されません。)", + "LIVE_DEVELOPMENT_TROUBLESHOOTING": "詳しくは、ライブプレビューの接続エラーに関するトラブルシューティングを参照してください。", - "LIVE_DEV_STATUS_TIP_NOT_CONNECTED": "ライブプレビュー", - "LIVE_DEV_STATUS_TIP_PROGRESS1": "ライブプレビュー : 接続中\u2026", - "LIVE_DEV_STATUS_TIP_PROGRESS2": "ライブプレビュー : 初期化中\u2026", - "LIVE_DEV_STATUS_TIP_CONNECTED": "ライブプレビューの接続を切断します", - "LIVE_DEV_STATUS_TIP_OUT_OF_SYNC": "ライブプレビュー (ファイルを保存して更新)", - "LIVE_DEV_STATUS_TIP_SYNC_ERROR": "ライブプレビュー (シンタックスエラーのため更新されません)", + "LIVE_DEV_STATUS_TIP_NOT_CONNECTED": "ライブプレビュー", + "LIVE_DEV_STATUS_TIP_PROGRESS1": "ライブプレビュー : 接続中\u2026", + "LIVE_DEV_STATUS_TIP_PROGRESS2": "ライブプレビュー : 初期化中\u2026", + "LIVE_DEV_STATUS_TIP_CONNECTED": "ライブプレビューの接続を切断します", + "LIVE_DEV_STATUS_TIP_OUT_OF_SYNC": "ライブプレビュー (ファイルを保存して更新)", + "LIVE_DEV_STATUS_TIP_SYNC_ERROR": "ライブプレビュー (シンタックスエラーのため更新されません)", - "LIVE_DEV_DETACHED_REPLACED_WITH_DEVTOOLS": "ブラウザーの開発ツールが開いているため、ライブプレビューはキャンセルされました", - "LIVE_DEV_DETACHED_TARGET_CLOSED": "ブラウザーでページが閉じられたため、ライブプレビューはキャンセルされました", - "LIVE_DEV_NAVIGATED_AWAY": "ブラウザーで現在のプロジェクトに含まれないページに移動したため、ライブプレビューはキャンセルされました", - "LIVE_DEV_CLOSED_UNKNOWN_REASON": "不明な原因 ({0}) によってライブプレビューはキャンセルされました", + "LIVE_DEV_DETACHED_REPLACED_WITH_DEVTOOLS": "ブラウザーの開発ツールが開いているため、ライブプレビューはキャンセルされました", + "LIVE_DEV_DETACHED_TARGET_CLOSED": "ブラウザーでページが閉じられたため、ライブプレビューはキャンセルされました", + "LIVE_DEV_NAVIGATED_AWAY": "ブラウザーで現在のプロジェクトに含まれないページに移動したため、ライブプレビューはキャンセルされました", + "LIVE_DEV_CLOSED_UNKNOWN_REASON": "不明な原因 ({0}) によってライブプレビューはキャンセルされました", - "SAVE_CLOSE_TITLE": "変更を保存", - "SAVE_CLOSE_MESSAGE": "文書 {0} に加えた変更を保存しますか?", - "SAVE_CLOSE_MULTI_MESSAGE": "以下のファイルに対する変更を保存しますか?", - "EXT_MODIFIED_TITLE": "外部で変更されました。", - "CONFIRM_FOLDER_DELETE_TITLE": "削除の確認", - "CONFIRM_FOLDER_DELETE": "{0} フォルダーを削除してもよろしいですか?", - "FILE_DELETED_TITLE": "ファイルは削除されました", - "EXT_MODIFIED_WARNING": "{0} はディスク上で変更されています。

    ファイルを保存し、これらの変更を上書きしますか。", - "EXT_MODIFIED_MESSAGE": "{0} はディスク上で変更されていますが、{APP_NAME} 内にも保存されていない変更があります。

    どちらのバージョンを保持しますか?", - "EXT_DELETED_MESSAGE": "{0} はディスク上で削除されていますが、{APP_NAME} 内に保存されていない変更があります。

    変更を保持しますか?", + "SAVE_CLOSE_TITLE": "変更を保存", + "SAVE_CLOSE_MESSAGE": "文書 {0} に加えた変更を保存しますか?", + "SAVE_CLOSE_MULTI_MESSAGE": "以下のファイルに対する変更を保存しますか?", + "EXT_MODIFIED_TITLE": "外部で変更されました。", + "CONFIRM_FOLDER_DELETE_TITLE": "削除の確認", + "CONFIRM_FOLDER_DELETE": "{0} フォルダーを削除してもよろしいですか?", + "FILE_DELETED_TITLE": "ファイルは削除されました", + "EXT_MODIFIED_WARNING": "{0} はディスク上で変更されています。

    ファイルを保存し、これらの変更を上書きしますか。", + "EXT_MODIFIED_MESSAGE": "{0} はディスク上で変更されていますが、{APP_NAME} 内にも保存されていない変更があります。

    どちらのバージョンを保持しますか?", + "EXT_DELETED_MESSAGE": "{0} はディスク上で削除されていますが、{APP_NAME} 内に保存されていない変更があります。

    変更を保持しますか?", // Generic dialog/button labels - "DONE": "完了", - "OK": "OK", - "CANCEL": "キャンセル", - "DONT_SAVE": "保存しない", - "SAVE": "保存", - "SAVE_AS": "名前を付けて保存\u2026", - "SAVE_AND_OVERWRITE": "上書き", - "DELETE": "削除", - "BUTTON_YES": "はい", - "BUTTON_NO": "いいえ", + "DONE": "完了", + "OK": "OK", + "CANCEL": "キャンセル", + "DONT_SAVE": "保存しない", + "SAVE": "保存", + "SAVE_AS": "名前を付けて保存\u2026", + "SAVE_AND_OVERWRITE": "上書き", + "DELETE": "削除", + "BUTTON_YES": "はい", + "BUTTON_NO": "いいえ", // Find, Replace, Find in Files - "FIND_MATCH_INDEX": "{0} / {1}", - "FIND_NO_RESULTS": "該当なし", - "FIND_QUERY_PLACEHOLDER": "検索\u2026", - "REPLACE_PLACEHOLDER": "\u2026 に置換", - "BUTTON_REPLACE_ALL": "バッチ\u2026", - "BUTTON_REPLACE_ALL_IN_FILES": "置換\u2026", - "BUTTON_REPLACE": "置換", - "BUTTON_NEXT": "\u25B6", - "BUTTON_PREV": "\u25C0", - "BUTTON_NEXT_HINT": "次の候補に移動", - "BUTTON_PREV_HINT": "前の候補に移動", - "BUTTON_CASESENSITIVE_HINT": "大文字と小文字を区別", - "BUTTON_REGEXP_HINT": "正規表現", - "REPLACE_WITHOUT_UNDO_WARNING_TITLE": "取り消し情報を保存せずに置換", - "REPLACE_WITHOUT_UNDO_WARNING": "{0} 個を超えるファイルを変更する必要があるため、{APP_NAME} によってディスク上の開かれていないファイルが変更されます。
    これらのファイルで行った置換は取り消しできません。", - "BUTTON_REPLACE_WITHOUT_UNDO": "取り消し情報を保存せずに置換", + "FIND_MATCH_INDEX": "{0} / {1}", + "FIND_NO_RESULTS": "該当なし", + "FIND_QUERY_PLACEHOLDER": "検索\u2026", + "REPLACE_PLACEHOLDER": "\u2026 に置換", + "BUTTON_REPLACE_ALL": "バッチ\u2026", + "BUTTON_REPLACE_ALL_IN_FILES": "置換\u2026", + "BUTTON_REPLACE": "置換", + "BUTTON_NEXT": "\u25B6", + "BUTTON_PREV": "\u25C0", + "BUTTON_NEXT_HINT": "次の候補に移動", + "BUTTON_PREV_HINT": "前の候補に移動", + "BUTTON_CASESENSITIVE_HINT": "大文字と小文字を区別", + "BUTTON_REGEXP_HINT": "正規表現", + "REPLACE_WITHOUT_UNDO_WARNING_TITLE": "取り消し情報を保存せずに置換", + "REPLACE_WITHOUT_UNDO_WARNING": "{0} 個を超えるファイルを変更する必要があるため、{APP_NAME} によってディスク上の開かれていないファイルが変更されます。
    これらのファイルで行った置換は取り消しできません。", + "BUTTON_REPLACE_WITHOUT_UNDO": "取り消し情報を保存せずに置換", - "OPEN_FILE": "ファイルを開く", - "SAVE_FILE_AS": "ファイルを保存", - "CHOOSE_FOLDER": "フォルダーを選択", + "OPEN_FILE": "ファイルを開く", + "SAVE_FILE_AS": "ファイルを保存", + "CHOOSE_FOLDER": "フォルダーを選択", - "RELEASE_NOTES": "リリースノート", - "NO_UPDATE_TITLE": "最新バージョンです。", - "NO_UPDATE_MESSAGE": "{APP_NAME} の最新バージョンを実行中です。", + "RELEASE_NOTES": "リリースノート", + "NO_UPDATE_TITLE": "最新バージョンです。", + "NO_UPDATE_MESSAGE": "{APP_NAME} の最新バージョンを実行中です。", // Find and Replace - "FIND_REPLACE_TITLE_LABEL": "置換対象", - "FIND_REPLACE_TITLE_WITH": "置換後の文字列", - "FIND_TITLE_LABEL": "検索結果", - "FIND_TITLE_SUMMARY": "— {0} {1} {2} ({3})", + "FIND_REPLACE_TITLE_LABEL": "置換対象", + "FIND_REPLACE_TITLE_WITH": "置換後の文字列", + "FIND_TITLE_LABEL": "検索結果", + "FIND_TITLE_SUMMARY": "— {0} {1} {2} ({3})", // Find in Files - "FIND_NUM_FILES": "{0} {1}", - "FIND_IN_FILES_SCOPED": "{0} 内", - "FIND_IN_FILES_NO_SCOPE": "プロジェクト内", - "FIND_IN_FILES_ZERO_FILES": "フィルターは {0}の全ファイルを除外します", - "FIND_IN_FILES_FILE": "ファイル", - "FIND_IN_FILES_FILES": "ファイル", - "FIND_IN_FILES_MATCH": "が見つかりました", - "FIND_IN_FILES_MATCHES": "件見つかりました", - "FIND_IN_FILES_MORE_THAN": "以上", - "FIND_IN_FILES_PAGING": "{0}—{1}", - "FIND_IN_FILES_FILE_PATH": "{0} {2} {1}", - "FIND_IN_FILES_EXPAND_COLLAPSE": "Ctrl / Command キーをクリックしてすべて展開 / 折りたたみ", - "REPLACE_IN_FILES_ERRORS_TITLE": "置換エラー", - "REPLACE_IN_FILES_ERRORS": "次のファイルは検索の後で変更されているか、書き込むことができないため、変更されていません。", + "FIND_NUM_FILES": "{0} {1}", + "FIND_IN_FILES_SCOPED": "{0} 内", + "FIND_IN_FILES_NO_SCOPE": "プロジェクト内", + "FIND_IN_FILES_ZERO_FILES": "フィルターは {0}の全ファイルを除外します", + "FIND_IN_FILES_FILE": "ファイル", + "FIND_IN_FILES_FILES": "ファイル", + "FIND_IN_FILES_MATCH": "が見つかりました", + "FIND_IN_FILES_MATCHES": "件見つかりました", + "FIND_IN_FILES_MORE_THAN": "以上", + "FIND_IN_FILES_PAGING": "{0}—{1}", + "FIND_IN_FILES_FILE_PATH": "{0} {2} {1}", + "FIND_IN_FILES_EXPAND_COLLAPSE": "Ctrl / Command キーをクリックしてすべて展開 / 折りたたみ", + "REPLACE_IN_FILES_ERRORS_TITLE": "置換エラー", + "REPLACE_IN_FILES_ERRORS": "次のファイルは検索の後で変更されているか、書き込むことができないため、変更されていません。", - "ERROR_FETCHING_UPDATE_INFO_TITLE": "更新情報を取得する際にエラーが発生しました。", - "ERROR_FETCHING_UPDATE_INFO_MSG": "サーバーから最新の更新情報を取得する際にエラーが発生しました。インターネット接続を確認してリトライしてください。", + "ERROR_FETCHING_UPDATE_INFO_TITLE": "更新情報を取得する際にエラーが発生しました。", + "ERROR_FETCHING_UPDATE_INFO_MSG": "サーバーから最新の更新情報を取得する際にエラーが発生しました。インターネット接続を確認してリトライしてください。", // File exclusion filters - "NEW_FILE_FILTER": "新規除外セット\u2026", - "CLEAR_FILE_FILTER": "ファイルを除外しない", - "NO_FILE_FILTER": "除外されたファイルはありません", - "EXCLUDE_FILE_FILTER": "{0} を除外", - "EDIT_FILE_FILTER": "編集\u2026", - "FILE_FILTER_DIALOG": "除外セットを編集", - "FILE_FILTER_INSTRUCTIONS": "次の文字列やサブストリング、またはワイルドカードのいずれかに一致するファイルおよびフォルダーを除外します。各文字列を新しい行に入力してください。", - "FILTER_NAME_PLACEHOLDER": "この除外セットに名前を付ける (オプション)", - "FILE_FILTER_CLIPPED_SUFFIX": "さらに {0} 件", - "FILTER_COUNTING_FILES": "ファイル数を確認中\u2026", - "FILTER_FILE_COUNT": "{2}の {1} ファイル中 {0} ファイルを許可", - "FILTER_FILE_COUNT_ALL": "{1}の全 {0} ファイルを許可", + "NEW_FILE_FILTER": "新規除外セット\u2026", + "CLEAR_FILE_FILTER": "ファイルを除外しない", + "NO_FILE_FILTER": "除外されたファイルはありません", + "EXCLUDE_FILE_FILTER": "{0} を除外", + "EDIT_FILE_FILTER": "編集\u2026", + "FILE_FILTER_DIALOG": "除外セットを編集", + "FILE_FILTER_INSTRUCTIONS": "次の文字列やサブストリング、またはワイルドカードのいずれかに一致するファイルおよびフォルダーを除外します。各文字列を新しい行に入力してください。", + "FILTER_NAME_PLACEHOLDER": "この除外セットに名前を付ける (オプション)", + "FILE_FILTER_CLIPPED_SUFFIX": "さらに {0} 件", + "FILTER_COUNTING_FILES": "ファイル数を確認中\u2026", + "FILTER_FILE_COUNT": "{2}の {1} ファイル中 {0} ファイルを許可", + "FILTER_FILE_COUNT_ALL": "{1}の全 {0} ファイルを許可", // Quick Edit - "ERROR_QUICK_EDIT_PROVIDER_NOT_FOUND": "現在のカーソル位置で行えるクイック編集はありません", - "ERROR_CSSQUICKEDIT_BETWEENCLASSES": "CSS クイック編集 : カーソルを単一のクラス名に置いてください", - "ERROR_CSSQUICKEDIT_CLASSNOTFOUND": "CSS クイック編集 : 不完全なクラス属性", - "ERROR_CSSQUICKEDIT_IDNOTFOUND": "CSS クイック編集 : 不完全な ID 属性", - "ERROR_CSSQUICKEDIT_UNSUPPORTEDATTR": "CSS クイック編集 : カーソルをタグ、クラスまたは ID に置いてください", - "ERROR_TIMINGQUICKEDIT_INVALIDSYNTAX": "CSS タイミング機能のクイック編集 : 無効なシンタックス", - "ERROR_JSQUICKEDIT_FUNCTIONNOTFOUND": "JS クイック編集 : カーソルを関数名に置いてください", + "ERROR_QUICK_EDIT_PROVIDER_NOT_FOUND": "現在のカーソル位置で行えるクイック編集はありません", + "ERROR_CSSQUICKEDIT_BETWEENCLASSES": "CSS クイック編集 : カーソルを単一のクラス名に置いてください", + "ERROR_CSSQUICKEDIT_CLASSNOTFOUND": "CSS クイック編集 : 不完全なクラス属性", + "ERROR_CSSQUICKEDIT_IDNOTFOUND": "CSS クイック編集 : 不完全な ID 属性", + "ERROR_CSSQUICKEDIT_UNSUPPORTEDATTR": "CSS クイック編集 : カーソルをタグ、クラスまたは ID に置いてください", + "ERROR_TIMINGQUICKEDIT_INVALIDSYNTAX": "CSS タイミング機能のクイック編集 : 無効なシンタックス", + "ERROR_JSQUICKEDIT_FUNCTIONNOTFOUND": "JS クイック編集 : カーソルを関数名に置いてください", // Quick Docs - "ERROR_QUICK_DOCS_PROVIDER_NOT_FOUND": "現在のカーソル位置で使用できるクイックドキュメントはありません", + "ERROR_QUICK_DOCS_PROVIDER_NOT_FOUND": "現在のカーソル位置で使用できるクイックドキュメントはありません", /** * ProjectManager */ - "PROJECT_LOADING": "読み込んでいます\u2026", - "UNTITLED": "名称未設定", - "WORKING_FILES": "作業中ファイル", + "PROJECT_LOADING": "読み込んでいます\u2026", + "UNTITLED": "名称未設定", + "WORKING_FILES": "作業中ファイル", /** * MainViewManager */ - "TOP": "上", - "BOTTOM": "下", - "LEFT": "左", - "RIGHT": "右", + "TOP": "上", + "BOTTOM": "下", + "LEFT": "左", + "RIGHT": "右", - "CMD_SPLITVIEW_NONE": "分割なし", - "CMD_SPLITVIEW_VERTICAL": "左右分割", - "CMD_SPLITVIEW_HORIZONTAL": "上下分割", - "SPLITVIEW_MENU_TOOLTIP": "エディターを垂直方向 / 水平方向に分割", - "GEAR_MENU_TOOLTIP": "ワーキングセットを構成", + "CMD_SPLITVIEW_NONE": "分割なし", + "CMD_SPLITVIEW_VERTICAL": "左右分割", + "CMD_SPLITVIEW_HORIZONTAL": "上下分割", + "SPLITVIEW_MENU_TOOLTIP": "エディターを垂直方向 / 水平方向に分割", + "GEAR_MENU_TOOLTIP": "ワーキングセットを構成", - "SPLITVIEW_INFO_TITLE": "既に開かれています", - "SPLITVIEW_MULTIPANE_WARNING": "ファイルは他のペインで既に開かれています。{APP_NAME} ではまもなく複数のペインで同じファイルを開くことが可能になる予定です。それまでは、ファイルは既に開かれているペインで表示されます。

    (このメッセージは一度しか表示されません。)", + "SPLITVIEW_INFO_TITLE": "既に開かれています", + "SPLITVIEW_MULTIPANE_WARNING": "ファイルは他のペインで既に開かれています。{APP_NAME} ではまもなく複数のペインで同じファイルを開くことが可能になる予定です。それまでは、ファイルは既に開かれているペインで表示されます。

    (このメッセージは一度しか表示されません。)", /** * Keyboard modifier names */ - "KEYBOARD_CTRL": "Ctrl", - "KEYBOARD_SHIFT": "Shift", - "KEYBOARD_SPACE": "Space", + "KEYBOARD_CTRL": "Ctrl", + "KEYBOARD_SHIFT": "Shift", + "KEYBOARD_SPACE": "Space", /** * StatusBar strings */ - "STATUSBAR_CURSOR_POSITION": "行 {0}, 列 {1}", - "STATUSBAR_SELECTION_CH_SINGULAR": " \u2014 {0} 列を選択", - "STATUSBAR_SELECTION_CH_PLURAL": " \u2014 {0} 列を選択", - "STATUSBAR_SELECTION_LINE_SINGULAR": " \u2014 {0} 行を選択", - "STATUSBAR_SELECTION_LINE_PLURAL": " \u2014 {0} 行を選択", - "STATUSBAR_SELECTION_MULTIPLE": " \u2014 選択範囲 {0}", - "STATUSBAR_INDENT_TOOLTIP_SPACES": "インデントをスペースに変換する", - "STATUSBAR_INDENT_TOOLTIP_TABS": "インデントをタブに変換する", - "STATUSBAR_INDENT_SIZE_TOOLTIP_SPACES": "インデントに用いるスペースの数を変更", - "STATUSBAR_INDENT_SIZE_TOOLTIP_TABS": "タブ幅を変更", - "STATUSBAR_SPACES": "スペース :", - "STATUSBAR_TAB_SIZE": "タブ幅 :", - "STATUSBAR_LINE_COUNT_SINGULAR": "\u2014 {0} 行", - "STATUSBAR_LINE_COUNT_PLURAL": "\u2014 {0} 行", - "STATUSBAR_USER_EXTENSIONS_DISABLED": "拡張機能無効", - "STATUSBAR_INSERT": "INS", - "STATUSBAR_OVERWRITE": "OVR", - "STATUSBAR_INSOVR_TOOLTIP": "クリックして挿入 (INS) モードと上書き (OVR) モード間のカーソルを切り替え", - "STATUSBAR_LANG_TOOLTIP": "クリックしてファイルタイプを変更", - "STATUSBAR_CODE_INSPECTION_TOOLTIP": "{0}。クリックしてレポートパネルを切り替えます。", - "STATUSBAR_DEFAULT_LANG": "(指定なし)", - "STATUSBAR_SET_DEFAULT_LANG": ".{0} ファイルのデフォルトとして設定", + "STATUSBAR_CURSOR_POSITION": "行 {0}, 列 {1}", + "STATUSBAR_SELECTION_CH_SINGULAR": " \u2014 {0} 列を選択", + "STATUSBAR_SELECTION_CH_PLURAL": " \u2014 {0} 列を選択", + "STATUSBAR_SELECTION_LINE_SINGULAR": " \u2014 {0} 行を選択", + "STATUSBAR_SELECTION_LINE_PLURAL": " \u2014 {0} 行を選択", + "STATUSBAR_SELECTION_MULTIPLE": " \u2014 選択範囲 {0}", + "STATUSBAR_INDENT_TOOLTIP_SPACES": "インデントをスペースに変換する", + "STATUSBAR_INDENT_TOOLTIP_TABS": "インデントをタブに変換する", + "STATUSBAR_INDENT_SIZE_TOOLTIP_SPACES": "インデントに用いるスペースの数を変更", + "STATUSBAR_INDENT_SIZE_TOOLTIP_TABS": "タブ幅を変更", + "STATUSBAR_SPACES": "スペース :", + "STATUSBAR_TAB_SIZE": "タブ幅 :", + "STATUSBAR_LINE_COUNT_SINGULAR": "\u2014 {0} 行", + "STATUSBAR_LINE_COUNT_PLURAL": "\u2014 {0} 行", + "STATUSBAR_USER_EXTENSIONS_DISABLED": "拡張機能無効", + "STATUSBAR_INSERT": "INS", + "STATUSBAR_OVERWRITE": "OVR", + "STATUSBAR_INSOVR_TOOLTIP": "クリックして挿入 (INS) モードと上書き (OVR) モード間のカーソルを切り替え", + "STATUSBAR_LANG_TOOLTIP": "クリックしてファイルタイプを変更", + "STATUSBAR_CODE_INSPECTION_TOOLTIP": "{0}。クリックしてレポートパネルを切り替えます。", + "STATUSBAR_DEFAULT_LANG": "(指定なし)", + "STATUSBAR_SET_DEFAULT_LANG": ".{0} ファイルのデフォルトとして設定", // CodeInspection: errors/warnings - "ERRORS_PANEL_TITLE_MULTIPLE": "{0} 個の問題", - "SINGLE_ERROR": "1 個の {0} の問題", - "MULTIPLE_ERRORS": "{1} 個の {0} の問題", - "NO_ERRORS": "{0} の問題は検出されませんでした - Good job!", - "NO_ERRORS_MULTIPLE_PROVIDER": "問題は検出されませんでした - Good job!", - "LINT_DISABLED": "Lint チェックは使用できません", - "NO_LINT_AVAILABLE": "{0} に使用できる Lint チェッカーがありません", - "NOTHING_TO_LINT": "Lint チェックするファイルがありません", - "LINTER_TIMED_OUT": "{0} は {1} ミリ秒待機した後でタイムアウトしました", - "LINTER_FAILED": "{0} は次のエラーにより終了しました : {1}", + "ERRORS_PANEL_TITLE_MULTIPLE": "{0} 個の問題", + "SINGLE_ERROR": "1 個の {0} の問題", + "MULTIPLE_ERRORS": "{1} 個の {0} の問題", + "NO_ERRORS": "{0} の問題は検出されませんでした - Good job!", + "NO_ERRORS_MULTIPLE_PROVIDER": "問題は検出されませんでした - Good job!", + "LINT_DISABLED": "Lint チェックは使用できません", + "NO_LINT_AVAILABLE": "{0} に使用できる Lint チェッカーがありません", + "NOTHING_TO_LINT": "Lint チェックするファイルがありません", + "LINTER_TIMED_OUT": "{0} は {1} ミリ秒待機した後でタイムアウトしました", + "LINTER_FAILED": "{0} は次のエラーにより終了しました : {1}", /** @@ -301,328 +301,328 @@ define({ */ // File menu commands - "FILE_MENU": "ファイル", - "CMD_FILE_NEW_UNTITLED": "新規作成", - "CMD_FILE_NEW": "新しいファイル", - "CMD_FILE_NEW_FOLDER": "新しいフォルダー", - "CMD_FILE_OPEN": "開く\u2026", - "CMD_ADD_TO_WORKING_SET": "ワーキングセットに開く", - "CMD_OPEN_DROPPED_FILES": "ドロップしたファイルを開く", - "CMD_OPEN_FOLDER": "フォルダーを開く\u2026", - "CMD_FILE_CLOSE": "閉じる", - "CMD_FILE_CLOSE_ALL": "すべて閉じる", - "CMD_FILE_CLOSE_LIST": "リストを閉じる", - "CMD_FILE_CLOSE_OTHERS": "他をすべて閉じる", - "CMD_FILE_CLOSE_ABOVE": "上をすべて閉じる", - "CMD_FILE_CLOSE_BELOW": "下をすべて閉じる", - "CMD_FILE_SAVE": "保存", - "CMD_FILE_SAVE_ALL": "すべて保存", - "CMD_FILE_SAVE_AS": "名前を付けて保存\u2026", - "CMD_LIVE_FILE_PREVIEW": "ライブプレビュー", - "CMD_RELOAD_LIVE_PREVIEW": "ライブプレビューを強制的に再読込み", - "CMD_PROJECT_SETTINGS": "プロジェクト設定\u2026", - "CMD_FILE_RENAME": "ファイル名変更", - "CMD_FILE_DELETE": "削除", - "CMD_INSTALL_EXTENSION": "拡張機能をインストール\u2026", - "CMD_EXTENSION_MANAGER": "拡張機能マネージャー\u2026", - "CMD_FILE_REFRESH": "ファイルツリーを更新", - "CMD_QUIT": "終了する", + "FILE_MENU": "ファイル", + "CMD_FILE_NEW_UNTITLED": "新規作成", + "CMD_FILE_NEW": "新しいファイル", + "CMD_FILE_NEW_FOLDER": "新しいフォルダー", + "CMD_FILE_OPEN": "開く\u2026", + "CMD_ADD_TO_WORKING_SET": "ワーキングセットに開く", + "CMD_OPEN_DROPPED_FILES": "ドロップしたファイルを開く", + "CMD_OPEN_FOLDER": "フォルダーを開く\u2026", + "CMD_FILE_CLOSE": "閉じる", + "CMD_FILE_CLOSE_ALL": "すべて閉じる", + "CMD_FILE_CLOSE_LIST": "リストを閉じる", + "CMD_FILE_CLOSE_OTHERS": "他をすべて閉じる", + "CMD_FILE_CLOSE_ABOVE": "上をすべて閉じる", + "CMD_FILE_CLOSE_BELOW": "下をすべて閉じる", + "CMD_FILE_SAVE": "保存", + "CMD_FILE_SAVE_ALL": "すべて保存", + "CMD_FILE_SAVE_AS": "名前を付けて保存\u2026", + "CMD_LIVE_FILE_PREVIEW": "ライブプレビュー", + "CMD_RELOAD_LIVE_PREVIEW": "ライブプレビューを強制的に再読込み", + "CMD_PROJECT_SETTINGS": "プロジェクト設定\u2026", + "CMD_FILE_RENAME": "ファイル名変更", + "CMD_FILE_DELETE": "削除", + "CMD_INSTALL_EXTENSION": "拡張機能をインストール\u2026", + "CMD_EXTENSION_MANAGER": "拡張機能マネージャー\u2026", + "CMD_FILE_REFRESH": "ファイルツリーを更新", + "CMD_QUIT": "終了する", // Used in native File menu on Windows - "CMD_EXIT": "終了", + "CMD_EXIT": "終了", // Edit menu commands - "EDIT_MENU": "編集", - "CMD_UNDO": "取り消し", - "CMD_REDO": "やり直し", - "CMD_CUT": "カット", - "CMD_COPY": "コピー", - "CMD_PASTE": "ペースト", - "CMD_SELECT_ALL": "すべて選択", - "CMD_SELECT_LINE": "行の選択", - "CMD_SPLIT_SEL_INTO_LINES": "選択範囲を行に分ける", - "CMD_ADD_CUR_TO_NEXT_LINE": "次の行にカーソルを追加", - "CMD_ADD_CUR_TO_PREV_LINE": "前の行にカーソルを追加", - "CMD_INDENT": "インデント", - "CMD_UNINDENT": "インデント解除", - "CMD_DUPLICATE": "行を複製", - "CMD_DELETE_LINES": "行を削除", - "CMD_COMMENT": "行コメントの切り替え", - "CMD_BLOCK_COMMENT": "ブロックコメントの切り替え", - "CMD_LINE_UP": "行を上に移動", - "CMD_LINE_DOWN": "行を下に移動", - "CMD_OPEN_LINE_ABOVE": "上の行を開く", - "CMD_OPEN_LINE_BELOW": "下の行を開く", - "CMD_TOGGLE_CLOSE_BRACKETS": "自動閉じカッコ", - "CMD_SHOW_CODE_HINTS": "コードヒントを表示", + "EDIT_MENU": "編集", + "CMD_UNDO": "取り消し", + "CMD_REDO": "やり直し", + "CMD_CUT": "カット", + "CMD_COPY": "コピー", + "CMD_PASTE": "ペースト", + "CMD_SELECT_ALL": "すべて選択", + "CMD_SELECT_LINE": "行の選択", + "CMD_SPLIT_SEL_INTO_LINES": "選択範囲を行に分ける", + "CMD_ADD_CUR_TO_NEXT_LINE": "次の行にカーソルを追加", + "CMD_ADD_CUR_TO_PREV_LINE": "前の行にカーソルを追加", + "CMD_INDENT": "インデント", + "CMD_UNINDENT": "インデント解除", + "CMD_DUPLICATE": "行を複製", + "CMD_DELETE_LINES": "行を削除", + "CMD_COMMENT": "行コメントの切り替え", + "CMD_BLOCK_COMMENT": "ブロックコメントの切り替え", + "CMD_LINE_UP": "行を上に移動", + "CMD_LINE_DOWN": "行を下に移動", + "CMD_OPEN_LINE_ABOVE": "上の行を開く", + "CMD_OPEN_LINE_BELOW": "下の行を開く", + "CMD_TOGGLE_CLOSE_BRACKETS": "自動閉じカッコ", + "CMD_SHOW_CODE_HINTS": "コードヒントを表示", // Search menu commands - "FIND_MENU": "検索", - "CMD_FIND": "検索", - "CMD_FIND_NEXT": "次を検索", - "CMD_FIND_PREVIOUS": "前を検索", - "CMD_FIND_ALL_AND_SELECT": "すべて検索して選択", - "CMD_ADD_NEXT_MATCH": "選択範囲に次の候補を追加", - "CMD_SKIP_CURRENT_MATCH": "スキップして次の候補を追加", - "CMD_FIND_IN_FILES": "ファイルを横断して検索", - "CMD_FIND_IN_SELECTED": "選択したファイルまたはフォルダーを検索", - "CMD_FIND_IN_SUBTREE": "検索先\u2026", - "CMD_REPLACE": "置換", - "CMD_REPLACE_IN_FILES": "ファイルを横断して置換", - "CMD_REPLACE_IN_SELECTED": "選択したファイルまたはフォルダーで置換", - "CMD_REPLACE_IN_SUBTREE": "置換対象\u2026", + "FIND_MENU": "検索", + "CMD_FIND": "検索", + "CMD_FIND_NEXT": "次を検索", + "CMD_FIND_PREVIOUS": "前を検索", + "CMD_FIND_ALL_AND_SELECT": "すべて検索して選択", + "CMD_ADD_NEXT_MATCH": "選択範囲に次の候補を追加", + "CMD_SKIP_CURRENT_MATCH": "スキップして次の候補を追加", + "CMD_FIND_IN_FILES": "ファイルを横断して検索", + "CMD_FIND_IN_SELECTED": "選択したファイルまたはフォルダーを検索", + "CMD_FIND_IN_SUBTREE": "検索先\u2026", + "CMD_REPLACE": "置換", + "CMD_REPLACE_IN_FILES": "ファイルを横断して置換", + "CMD_REPLACE_IN_SELECTED": "選択したファイルまたはフォルダーで置換", + "CMD_REPLACE_IN_SUBTREE": "置換対象\u2026", // View menu commands - "VIEW_MENU": "表示", - "CMD_HIDE_SIDEBAR": "サイドバーを隠す", - "CMD_SHOW_SIDEBAR": "サイドバーを表示する", - "CMD_INCREASE_FONT_SIZE": "フォントサイズを大きく", - "CMD_DECREASE_FONT_SIZE": "フォントサイズを小さく", - "CMD_RESTORE_FONT_SIZE": "フォントサイズを元に戻す", - "CMD_SCROLL_LINE_UP": "1 行上にスクロール", - "CMD_SCROLL_LINE_DOWN": "1 行下にスクロール", - "CMD_TOGGLE_LINE_NUMBERS": "行番号", - "CMD_TOGGLE_ACTIVE_LINE": "アクティブな行をハイライト", - "CMD_TOGGLE_WORD_WRAP": "折り返し", - "CMD_LIVE_HIGHLIGHT": "ライブプレビューハイライト", - "CMD_VIEW_TOGGLE_INSPECTION": "保存時にファイルを Lint チェック", - "CMD_WORKINGSET_SORT_BY_ADDED": "追加日時順", - "CMD_WORKINGSET_SORT_BY_NAME": "名前順", - "CMD_WORKINGSET_SORT_BY_TYPE": "種類順", - "CMD_WORKING_SORT_TOGGLE_AUTO": "自動ソート", - "CMD_THEMES": "テーマ\u2026", + "VIEW_MENU": "表示", + "CMD_HIDE_SIDEBAR": "サイドバーを隠す", + "CMD_SHOW_SIDEBAR": "サイドバーを表示する", + "CMD_INCREASE_FONT_SIZE": "フォントサイズを大きく", + "CMD_DECREASE_FONT_SIZE": "フォントサイズを小さく", + "CMD_RESTORE_FONT_SIZE": "フォントサイズを元に戻す", + "CMD_SCROLL_LINE_UP": "1 行上にスクロール", + "CMD_SCROLL_LINE_DOWN": "1 行下にスクロール", + "CMD_TOGGLE_LINE_NUMBERS": "行番号", + "CMD_TOGGLE_ACTIVE_LINE": "アクティブな行をハイライト", + "CMD_TOGGLE_WORD_WRAP": "折り返し", + "CMD_LIVE_HIGHLIGHT": "ライブプレビューハイライト", + "CMD_VIEW_TOGGLE_INSPECTION": "保存時にファイルを Lint チェック", + "CMD_WORKINGSET_SORT_BY_ADDED": "追加日時順", + "CMD_WORKINGSET_SORT_BY_NAME": "名前順", + "CMD_WORKINGSET_SORT_BY_TYPE": "種類順", + "CMD_WORKING_SORT_TOGGLE_AUTO": "自動ソート", + "CMD_THEMES": "テーマ\u2026", // Navigate menu Commands - "NAVIGATE_MENU": "ナビゲート", - "CMD_QUICK_OPEN": "クイックオープン", - "CMD_GOTO_LINE": "行に移動", - "CMD_GOTO_DEFINITION": "定義をクイック検索", - "CMD_GOTO_FIRST_PROBLEM": "最初のエラーまたは警告に移動", - "CMD_TOGGLE_QUICK_EDIT": "クイック編集", - "CMD_TOGGLE_QUICK_DOCS": "クイックドキュメント", - "CMD_QUICK_EDIT_PREV_MATCH": "前の候補に移動", - "CMD_QUICK_EDIT_NEXT_MATCH": "次の候補に移動", - "CMD_CSS_QUICK_EDIT_NEW_RULE": "新規ルール", - "CMD_NEXT_DOC": "次の文書", - "CMD_PREV_DOC": "前の文書", - "CMD_SHOW_IN_TREE": "ファイルツリー内で表示", - "CMD_SHOW_IN_EXPLORER": "エクスプローラーで表示", - "CMD_SHOW_IN_FINDER": "Finder で表示", - "CMD_SHOW_IN_OS": "OS で表示", + "NAVIGATE_MENU": "ナビゲート", + "CMD_QUICK_OPEN": "クイックオープン", + "CMD_GOTO_LINE": "行に移動", + "CMD_GOTO_DEFINITION": "定義をクイック検索", + "CMD_GOTO_FIRST_PROBLEM": "最初のエラーまたは警告に移動", + "CMD_TOGGLE_QUICK_EDIT": "クイック編集", + "CMD_TOGGLE_QUICK_DOCS": "クイックドキュメント", + "CMD_QUICK_EDIT_PREV_MATCH": "前の候補に移動", + "CMD_QUICK_EDIT_NEXT_MATCH": "次の候補に移動", + "CMD_CSS_QUICK_EDIT_NEW_RULE": "新規ルール", + "CMD_NEXT_DOC": "次の文書", + "CMD_PREV_DOC": "前の文書", + "CMD_SHOW_IN_TREE": "ファイルツリー内で表示", + "CMD_SHOW_IN_EXPLORER": "エクスプローラーで表示", + "CMD_SHOW_IN_FINDER": "Finder で表示", + "CMD_SHOW_IN_OS": "OS で表示", // Help menu commands - "HELP_MENU": "ヘルプ", - "CMD_CHECK_FOR_UPDATE": "更新をチェックする", - "CMD_HOW_TO_USE_BRACKETS": "{APP_NAME} の使用方法", - "CMD_SUPPORT": "{APP_NAME} サポート", - "CMD_SUGGEST": "機能改善の提案", - "CMD_RELEASE_NOTES": "リリースノート", - "CMD_GET_INVOLVED": "コミュニティに参加", - "CMD_SHOW_EXTENSIONS_FOLDER": "拡張機能のフォルダーを開く", - "CMD_HOMEPAGE": "{APP_TITLE} ホームページ", - "CMD_TWITTER": "Twitter で {TWITTER_NAME} をフォロー", - "CMD_ABOUT": "{APP_TITLE} について", - "CMD_OPEN_PREFERENCES": "環境設定ファイルを開く", - "CMD_OPEN_KEYMAP": "ユーザーキーマップを開く", + "HELP_MENU": "ヘルプ", + "CMD_CHECK_FOR_UPDATE": "更新をチェックする", + "CMD_HOW_TO_USE_BRACKETS": "{APP_NAME} の使用方法", + "CMD_SUPPORT": "{APP_NAME} サポート", + "CMD_SUGGEST": "機能改善の提案", + "CMD_RELEASE_NOTES": "リリースノート", + "CMD_GET_INVOLVED": "コミュニティに参加", + "CMD_SHOW_EXTENSIONS_FOLDER": "拡張機能のフォルダーを開く", + "CMD_HOMEPAGE": "{APP_TITLE} ホームページ", + "CMD_TWITTER": "Twitter で {TWITTER_NAME} をフォロー", + "CMD_ABOUT": "{APP_TITLE} について", + "CMD_OPEN_PREFERENCES": "環境設定ファイルを開く", + "CMD_OPEN_KEYMAP": "ユーザーキーマップを開く", // Strings for main-view.html - "EXPERIMENTAL_BUILD": "試験ビルド", - "DEVELOPMENT_BUILD": "開発ビルド", - "RELOAD_FROM_DISK": "ディスクから再読み込み", - "KEEP_CHANGES_IN_EDITOR": "エディター内の変更を保持する", - "CLOSE_DONT_SAVE": "保存せずに閉じる", - "RELAUNCH_CHROME": "Chrome を再起動", - "ABOUT": "このソフトウェアについて", - "CLOSE": "閉じる", - "ABOUT_TEXT_LINE1": "リリース {VERSION_MAJOR}.{VERSION_MINOR} {BUILD_TYPE} {VERSION}", - "ABOUT_TEXT_BUILD_TIMESTAMP": "ビルドのタイムスタンプ : ", - "ABOUT_TEXT_LINE3": "Notices, terms and conditions pertaining to third party software are located at {ADOBE_THIRD_PARTY} and incorporated by reference herein.", - "ABOUT_TEXT_LINE4": "ドキュメントとソースコードは https://github.com/adobe/brackets/ から入手できます。", - "ABOUT_TEXT_LINE5": "\u2764 および JavaScript を使用して次の人によって作成されました :", - "ABOUT_TEXT_LINE6": "多くの人々 (ただし、人物データの読み込みに問題が発生しています)。", - "ABOUT_TEXT_WEB_PLATFORM_DOCS": "Web Platform Docs and the Web Platform graphical logo are licensed under a Creative Commons Attribution license, CC-BY 3.0 Unported.", - "UPDATE_NOTIFICATION_TOOLTIP": "{APP_NAME} の新しいビルドを利用できます。詳細はここをクリックしてください。", - "UPDATE_AVAILABLE_TITLE": "利用可能なアップデートがあります", - "UPDATE_MESSAGE": "{APP_NAME} の新しいビルドが利用できます。新機能の一部を以下にご紹介します :", - "GET_IT_NOW": "すぐに入手する", - "PROJECT_SETTINGS_TITLE": "プロジェクト設定 : {0}", - "PROJECT_SETTING_BASE_URL": "ライブプレビューのベース URL", - "PROJECT_SETTING_BASE_URL_HINT": "http://localhost:8000/ 等のURLを入力してローカルサーバーを使用", - "BASEURL_ERROR_INVALID_PROTOCOL": "{0} プロトコルはライブプレビューではサポートされていません。http: または https: を使用してください。", - "BASEURL_ERROR_SEARCH_DISALLOWED": "ベース URL には、「{0}」のような検索パラメーターは使用できません。", - "BASEURL_ERROR_HASH_DISALLOWED": "ベース URL には、「{0}」のようなハッシュ記号は使用できません。", - "BASEURL_ERROR_INVALID_CHAR": "「{0}」のような特殊文字は、パーセントエンコーディングする必要があります。", - "BASEURL_ERROR_UNKNOWN_ERROR": "ベース URL の解析中に不明なエラーが発生しました", - "EMPTY_VIEW_HEADER": "このペインにフォーカスがあるときにファイルを開く", + "EXPERIMENTAL_BUILD": "試験ビルド", + "DEVELOPMENT_BUILD": "開発ビルド", + "RELOAD_FROM_DISK": "ディスクから再読み込み", + "KEEP_CHANGES_IN_EDITOR": "エディター内の変更を保持する", + "CLOSE_DONT_SAVE": "保存せずに閉じる", + "RELAUNCH_CHROME": "Chrome を再起動", + "ABOUT": "このソフトウェアについて", + "CLOSE": "閉じる", + "ABOUT_TEXT_LINE1": "リリース {VERSION_MAJOR}.{VERSION_MINOR} {BUILD_TYPE} {VERSION}", + "ABOUT_TEXT_BUILD_TIMESTAMP": "ビルドのタイムスタンプ : ", + "ABOUT_TEXT_LINE3": "Notices, terms and conditions pertaining to third party software are located at {ADOBE_THIRD_PARTY} and incorporated by reference herein.", + "ABOUT_TEXT_LINE4": "ドキュメントとソースコードは https://github.com/adobe/brackets/ から入手できます。", + "ABOUT_TEXT_LINE5": "\u2764 および JavaScript を使用して次の人によって作成されました :", + "ABOUT_TEXT_LINE6": "多くの人々 (ただし、人物データの読み込みに問題が発生しています)。", + "ABOUT_TEXT_WEB_PLATFORM_DOCS": "Web Platform Docs and the Web Platform graphical logo are licensed under a Creative Commons Attribution license, CC-BY 3.0 Unported.", + "UPDATE_NOTIFICATION_TOOLTIP": "{APP_NAME} の新しいビルドを利用できます。詳細はここをクリックしてください。", + "UPDATE_AVAILABLE_TITLE": "利用可能なアップデートがあります", + "UPDATE_MESSAGE": "{APP_NAME} の新しいビルドが利用できます。新機能の一部を以下にご紹介します :", + "GET_IT_NOW": "すぐに入手する", + "PROJECT_SETTINGS_TITLE": "プロジェクト設定 : {0}", + "PROJECT_SETTING_BASE_URL": "ライブプレビューのベース URL", + "PROJECT_SETTING_BASE_URL_HINT": "http://localhost:8000/ 等のURLを入力してローカルサーバーを使用", + "BASEURL_ERROR_INVALID_PROTOCOL": "{0} プロトコルはライブプレビューではサポートされていません。http: または https: を使用してください。", + "BASEURL_ERROR_SEARCH_DISALLOWED": "ベース URL には、「{0}」のような検索パラメーターは使用できません。", + "BASEURL_ERROR_HASH_DISALLOWED": "ベース URL には、「{0}」のようなハッシュ記号は使用できません。", + "BASEURL_ERROR_INVALID_CHAR": "「{0}」のような特殊文字は、パーセントエンコーディングする必要があります。", + "BASEURL_ERROR_UNKNOWN_ERROR": "ベース URL の解析中に不明なエラーが発生しました", + "EMPTY_VIEW_HEADER": "このペインにフォーカスがあるときにファイルを開く", // Strings for themes-settings.html and themes-general.html - "CURRENT_THEME": "現在のテーマ", - "USE_THEME_SCROLLBARS": "テーマスクロールバーを使用", - "FONT_SIZE": "フォントサイズ", - "FONT_FAMILY": "フォントファミリー", - "THEMES_SETTINGS": "テーマ設定", + "CURRENT_THEME": "現在のテーマ", + "USE_THEME_SCROLLBARS": "テーマスクロールバーを使用", + "FONT_SIZE": "フォントサイズ", + "FONT_FAMILY": "フォントファミリー", + "THEMES_SETTINGS": "テーマ設定", // CSS Quick Edit - "BUTTON_NEW_RULE": "新規ルール", + "BUTTON_NEW_RULE": "新規ルール", // Extension Management strings - "INSTALL": "インストール", - "UPDATE": "更新", - "REMOVE": "削除", - "OVERWRITE": "上書き", - "CANT_REMOVE_DEV": "dev フォルダーの拡張機能は手動で削除する必要があります。", - "CANT_UPDATE": "アップデートはこのバージョンの {APP_NAME} と互換性がありません。", - "CANT_UPDATE_DEV": "dev フォルダーの拡張機能は自動的に更新されません。", - "INSTALL_EXTENSION_TITLE": "拡張機能をインストール", - "UPDATE_EXTENSION_TITLE": "拡張機能を更新", - "INSTALL_EXTENSION_LABEL": "拡張機能の URL", - "INSTALL_EXTENSION_HINT": "拡張機能 zip ファイルまたは GitHub レポジトリの URL", - "INSTALLING_FROM": "{0} から拡張機能をインストールしています\u2026", - "INSTALL_SUCCEEDED": "インストールは成功しました。", - "INSTALL_FAILED": "インストールは失敗しました。", - "CANCELING_INSTALL": "キャンセルしています\u2026", - "CANCELING_HUNG": "インストールのキャンセルに時間がかかっています。内部エラーが発生した可能性があります。", - "INSTALL_CANCELED": "インストールはキャンセルされました。", - "VIEW_COMPLETE_DESCRIPTION": "詳細な説明を表示", - "VIEW_TRUNCATED_DESCRIPTION": "省略された説明を表示", + "INSTALL": "インストール", + "UPDATE": "更新", + "REMOVE": "削除", + "OVERWRITE": "上書き", + "CANT_REMOVE_DEV": "dev フォルダーの拡張機能は手動で削除する必要があります。", + "CANT_UPDATE": "アップデートはこのバージョンの {APP_NAME} と互換性がありません。", + "CANT_UPDATE_DEV": "dev フォルダーの拡張機能は自動的に更新されません。", + "INSTALL_EXTENSION_TITLE": "拡張機能をインストール", + "UPDATE_EXTENSION_TITLE": "拡張機能を更新", + "INSTALL_EXTENSION_LABEL": "拡張機能の URL", + "INSTALL_EXTENSION_HINT": "拡張機能 zip ファイルまたは GitHub レポジトリの URL", + "INSTALLING_FROM": "{0} から拡張機能をインストールしています\u2026", + "INSTALL_SUCCEEDED": "インストールは成功しました。", + "INSTALL_FAILED": "インストールは失敗しました。", + "CANCELING_INSTALL": "キャンセルしています\u2026", + "CANCELING_HUNG": "インストールのキャンセルに時間がかかっています。内部エラーが発生した可能性があります。", + "INSTALL_CANCELED": "インストールはキャンセルされました。", + "VIEW_COMPLETE_DESCRIPTION": "詳細な説明を表示", + "VIEW_TRUNCATED_DESCRIPTION": "省略された説明を表示", // These must match the error codes in ExtensionsDomain.Errors.* : - "INVALID_ZIP_FILE": "ダウンロードされたコンテンツは有効な zip ファイルではありません。", - "INVALID_PACKAGE_JSON": "package.json ファイルは有効ではありません (エラーは {0} です)。", - "MISSING_PACKAGE_NAME": "package.json ファイルはパッケージ名を指定していません。", - "BAD_PACKAGE_NAME": "{0} は無効なパッケージ名です。", - "MISSING_PACKAGE_VERSION": "package.json ファイルはパッケージバージョンを指定していません。", - "INVALID_VERSION_NUMBER": "パッケージバージョン番号 ({0}) は無効です。", - "INVALID_BRACKETS_VERSION": "{APP_NAME} 互換文字列 {0} は無効です。", - "DISALLOWED_WORDS": "{1} は {0} フィールドでは使用できません。", - "API_NOT_COMPATIBLE": "拡張機能はこのバージョンの {APP_NAME} と互換性がありません。無効な拡張機能フォルダーにインストールされます。", - "MISSING_MAIN": "パッケージに main.js ファイルが含まれていません。", - "EXTENSION_ALREADY_INSTALLED": "このパッケージをインストールすると以前にインストールした拡張機能が上書きされます。古い拡張機能を上書きしますか?", - "EXTENSION_SAME_VERSION": "このパッケージのバージョンは現在インストールされているバージョンと同じです。既存のインストールを上書きしますか?", - "EXTENSION_OLDER_VERSION": "このパッケージのバージョン ({0}) は、現在インストールされているバージョン ({1}) よりも古いバージョンです。既存のインストールを上書きしますか?", - "DOWNLOAD_ID_IN_USE": "内部エラー : ダウンロード ID は既に使用されています。", - "NO_SERVER_RESPONSE": "サーバーに接続できません。", - "BAD_HTTP_STATUS": "ファイルがサーバー (HTTP {0}) に見つかりません。", - "CANNOT_WRITE_TEMP": "一時ダウンロードファイルを保存できません。", - "ERROR_LOADING": "拡張機能の起動時にエラーが発生しました。", - "MALFORMED_URL": "URL が無効です。正しく入力されているか確認してください。", - "UNSUPPORTED_PROTOCOL": "URL は http または https URL である必要があります。", - "UNKNOWN_ERROR": "不明な内部エラー。", + "INVALID_ZIP_FILE": "ダウンロードされたコンテンツは有効な zip ファイルではありません。", + "INVALID_PACKAGE_JSON": "package.json ファイルは有効ではありません (エラーは {0} です)。", + "MISSING_PACKAGE_NAME": "package.json ファイルはパッケージ名を指定していません。", + "BAD_PACKAGE_NAME": "{0} は無効なパッケージ名です。", + "MISSING_PACKAGE_VERSION": "package.json ファイルはパッケージバージョンを指定していません。", + "INVALID_VERSION_NUMBER": "パッケージバージョン番号 ({0}) は無効です。", + "INVALID_BRACKETS_VERSION": "{APP_NAME} 互換文字列 {0} は無効です。", + "DISALLOWED_WORDS": "{1} は {0} フィールドでは使用できません。", + "API_NOT_COMPATIBLE": "拡張機能はこのバージョンの {APP_NAME} と互換性がありません。無効な拡張機能フォルダーにインストールされます。", + "MISSING_MAIN": "パッケージに main.js ファイルが含まれていません。", + "EXTENSION_ALREADY_INSTALLED": "このパッケージをインストールすると以前にインストールした拡張機能が上書きされます。古い拡張機能を上書きしますか?", + "EXTENSION_SAME_VERSION": "このパッケージのバージョンは現在インストールされているバージョンと同じです。既存のインストールを上書きしますか?", + "EXTENSION_OLDER_VERSION": "このパッケージのバージョン ({0}) は、現在インストールされているバージョン ({1}) よりも古いバージョンです。既存のインストールを上書きしますか?", + "DOWNLOAD_ID_IN_USE": "内部エラー : ダウンロード ID は既に使用されています。", + "NO_SERVER_RESPONSE": "サーバーに接続できません。", + "BAD_HTTP_STATUS": "ファイルがサーバー (HTTP {0}) に見つかりません。", + "CANNOT_WRITE_TEMP": "一時ダウンロードファイルを保存できません。", + "ERROR_LOADING": "拡張機能の起動時にエラーが発生しました。", + "MALFORMED_URL": "URL が無効です。正しく入力されているか確認してください。", + "UNSUPPORTED_PROTOCOL": "URL は http または https URL である必要があります。", + "UNKNOWN_ERROR": "不明な内部エラー。", // For NOT_FOUND_ERR, see generic strings above - "EXTENSION_MANAGER_TITLE": "拡張機能マネージャー", - "EXTENSION_MANAGER_ERROR_LOAD": "拡張機能レジストリにアクセスできません。後でもう一度試してください。", - "INSTALL_EXTENSION_DRAG": ".zip をここにドラッグするか、", - "INSTALL_EXTENSION_DROP": ".zip をドロップしてインストール", - "INSTALL_EXTENSION_DROP_ERROR": "次のエラーのため、インストール / アンインストールが中止されました :", - "INSTALL_FROM_URL": "URL からインストール\u2026", - "INSTALL_EXTENSION_VALIDATING": "検証中\u2026", - "EXTENSION_AUTHOR": "作成者", - "EXTENSION_DATE": "日付", - "EXTENSION_INCOMPATIBLE_NEWER": "この拡張機能には新しいバージョンの {APP_NAME} が必要です。", - "EXTENSION_INCOMPATIBLE_OLDER": "この拡張機能は現在、古いバージョンの {APP_NAME} でしか動作しません。", - "EXTENSION_LATEST_INCOMPATIBLE_NEWER": "この拡張機能のバージョン {0} には {APP_NAME} の新しいバージョンが必要です。ただし、以前のバージョン {1} をインストールすることができます。", - "EXTENSION_LATEST_INCOMPATIBLE_OLDER": "この拡張機能のバージョン {0} は {APP_NAME} の古いバージョンでのみ動作します。ただし、以前のバージョン {1} をインストールすることができます。", - "EXTENSION_NO_DESCRIPTION": "説明なし", - "EXTENSION_MORE_INFO": "詳細情報...", - "EXTENSION_ERROR": "拡張機能のエラー", - "EXTENSION_KEYWORDS": "キーワード", - "EXTENSION_TRANSLATED_USER_LANG": "ご使用の言語を含む {0} 言語に翻訳されました", - "EXTENSION_TRANSLATED_GENERAL": "{0} 言語に翻訳されました", - "EXTENSION_TRANSLATED_LANGS": "この拡張機能はこれらの言語に翻訳されています : {0}", - "EXTENSION_INSTALLED": "インストール完了", - "EXTENSION_UPDATE_INSTALLED": "この拡張機能のアップデートがダウンロードされました。{APP_NAME} のリロード後にインストールされます。", - "EXTENSION_SEARCH_PLACEHOLDER": "検索", - "EXTENSION_MORE_INFO_LINK": "詳細", - "BROWSE_EXTENSIONS": "拡張機能を探す", - "EXTENSION_MANAGER_REMOVE": "拡張機能を削除", - "EXTENSION_MANAGER_REMOVE_ERROR": "1 つ以上の拡張機能 ({0}) を削除できません。{APP_NAME} がリロード中です。", - "EXTENSION_MANAGER_UPDATE": "拡張機能を更新", - "EXTENSION_MANAGER_UPDATE_ERROR": "1 つ以上の拡張機能 ({0}) を更新できません。{APP_NAME} がリロード中です。", - "MARKED_FOR_REMOVAL": "削除予定", - "UNDO_REMOVE": "取り消し", - "MARKED_FOR_UPDATE": "更新予定", - "UNDO_UPDATE": "取り消し", - "CHANGE_AND_RELOAD_TITLE": "拡張機能を変更", - "CHANGE_AND_RELOAD_MESSAGE": "更新予定または削除予定の拡張機能を更新または削除するには、{APP_NAME} をリロードする必要があります。未保存の変更を保存するかどうか確認されます。", - "REMOVE_AND_RELOAD": "拡張機能を削除してリロード", - "CHANGE_AND_RELOAD": "拡張機能を変更してリロード", - "UPDATE_AND_RELOAD": "拡張機能を更新してリロード", - "PROCESSING_EXTENSIONS": "拡張機能の変更を処理中\u2026", - "EXTENSION_NOT_INSTALLED": "インストールされていなかったため、拡張機能 {0} を削除できませんでした。", - "NO_EXTENSIONS": "インストールされている拡張機能はまだありません。
    上の「入手可能」タブをクリックしてインストールしてください。", - "NO_EXTENSION_MATCHES": "検索条件に一致する拡張機能がありません。", - "REGISTRY_SANITY_CHECK_WARNING": "注意 : これらの拡張機能の作成元が {APP_NAME} 以外である可能性があります。拡張機能はレビューされず、ローカルアクセス権が一杯です。不明なソースから拡張機能をインストールするときは十分に注意してください。", - "EXTENSIONS_INSTALLED_TITLE": "インストール済み", - "EXTENSIONS_AVAILABLE_TITLE": "入手可能", - "EXTENSIONS_THEMES_TITLE": "テーマ", - "EXTENSIONS_UPDATES_TITLE": "アップデート", + "EXTENSION_MANAGER_TITLE": "拡張機能マネージャー", + "EXTENSION_MANAGER_ERROR_LOAD": "拡張機能レジストリにアクセスできません。後でもう一度試してください。", + "INSTALL_EXTENSION_DRAG": ".zip をここにドラッグするか、", + "INSTALL_EXTENSION_DROP": ".zip をドロップしてインストール", + "INSTALL_EXTENSION_DROP_ERROR": "次のエラーのため、インストール / アンインストールが中止されました :", + "INSTALL_FROM_URL": "URL からインストール\u2026", + "INSTALL_EXTENSION_VALIDATING": "検証中\u2026", + "EXTENSION_AUTHOR": "作成者", + "EXTENSION_DATE": "日付", + "EXTENSION_INCOMPATIBLE_NEWER": "この拡張機能には新しいバージョンの {APP_NAME} が必要です。", + "EXTENSION_INCOMPATIBLE_OLDER": "この拡張機能は現在、古いバージョンの {APP_NAME} でしか動作しません。", + "EXTENSION_LATEST_INCOMPATIBLE_NEWER": "この拡張機能のバージョン {0} には {APP_NAME} の新しいバージョンが必要です。ただし、以前のバージョン {1} をインストールすることができます。", + "EXTENSION_LATEST_INCOMPATIBLE_OLDER": "この拡張機能のバージョン {0} は {APP_NAME} の古いバージョンでのみ動作します。ただし、以前のバージョン {1} をインストールすることができます。", + "EXTENSION_NO_DESCRIPTION": "説明なし", + "EXTENSION_MORE_INFO": "詳細情報...", + "EXTENSION_ERROR": "拡張機能のエラー", + "EXTENSION_KEYWORDS": "キーワード", + "EXTENSION_TRANSLATED_USER_LANG": "ご使用の言語を含む {0} 言語に翻訳されました", + "EXTENSION_TRANSLATED_GENERAL": "{0} 言語に翻訳されました", + "EXTENSION_TRANSLATED_LANGS": "この拡張機能はこれらの言語に翻訳されています : {0}", + "EXTENSION_INSTALLED": "インストール完了", + "EXTENSION_UPDATE_INSTALLED": "この拡張機能のアップデートがダウンロードされました。{APP_NAME} のリロード後にインストールされます。", + "EXTENSION_SEARCH_PLACEHOLDER": "検索", + "EXTENSION_MORE_INFO_LINK": "詳細", + "BROWSE_EXTENSIONS": "拡張機能を探す", + "EXTENSION_MANAGER_REMOVE": "拡張機能を削除", + "EXTENSION_MANAGER_REMOVE_ERROR": "1 つ以上の拡張機能 ({0}) を削除できません。{APP_NAME} がリロード中です。", + "EXTENSION_MANAGER_UPDATE": "拡張機能を更新", + "EXTENSION_MANAGER_UPDATE_ERROR": "1 つ以上の拡張機能 ({0}) を更新できません。{APP_NAME} がリロード中です。", + "MARKED_FOR_REMOVAL": "削除予定", + "UNDO_REMOVE": "取り消し", + "MARKED_FOR_UPDATE": "更新予定", + "UNDO_UPDATE": "取り消し", + "CHANGE_AND_RELOAD_TITLE": "拡張機能を変更", + "CHANGE_AND_RELOAD_MESSAGE": "更新予定または削除予定の拡張機能を更新または削除するには、{APP_NAME} をリロードする必要があります。未保存の変更を保存するかどうか確認されます。", + "REMOVE_AND_RELOAD": "拡張機能を削除してリロード", + "CHANGE_AND_RELOAD": "拡張機能を変更してリロード", + "UPDATE_AND_RELOAD": "拡張機能を更新してリロード", + "PROCESSING_EXTENSIONS": "拡張機能の変更を処理中\u2026", + "EXTENSION_NOT_INSTALLED": "インストールされていなかったため、拡張機能 {0} を削除できませんでした。", + "NO_EXTENSIONS": "インストールされている拡張機能はまだありません。
    上の「入手可能」タブをクリックしてインストールしてください。", + "NO_EXTENSION_MATCHES": "検索条件に一致する拡張機能がありません。", + "REGISTRY_SANITY_CHECK_WARNING": "注意 : これらの拡張機能の作成元が {APP_NAME} 以外である可能性があります。拡張機能はレビューされず、ローカルアクセス権が一杯です。不明なソースから拡張機能をインストールするときは十分に注意してください。", + "EXTENSIONS_INSTALLED_TITLE": "インストール済み", + "EXTENSIONS_AVAILABLE_TITLE": "入手可能", + "EXTENSIONS_THEMES_TITLE": "テーマ", + "EXTENSIONS_UPDATES_TITLE": "アップデート", - "INLINE_EDITOR_NO_MATCHES": "一致するものがありません。", - "INLINE_EDITOR_HIDDEN_MATCHES": "一致項目はすべて縮小されています。一致項目を表示するには、右側にリストされているファイルを展開してください。", - "CSS_QUICK_EDIT_NO_MATCHES": "選択に一致する既存の CSS ルールがありません。
    「新規ルール」をクリックしてルールを作成してください。", - "CSS_QUICK_EDIT_NO_STYLESHEETS": "プロジェクトにはスタイルシートがありません。
    スタイルシートを作成して CSS ルールに追加してください。", + "INLINE_EDITOR_NO_MATCHES": "一致するものがありません。", + "INLINE_EDITOR_HIDDEN_MATCHES": "一致項目はすべて縮小されています。一致項目を表示するには、右側にリストされているファイルを展開してください。", + "CSS_QUICK_EDIT_NO_MATCHES": "選択に一致する既存の CSS ルールがありません。
    「新規ルール」をクリックしてルールを作成してください。", + "CSS_QUICK_EDIT_NO_STYLESHEETS": "プロジェクトにはスタイルシートがありません。
    スタイルシートを作成して CSS ルールに追加してください。", // Custom Viewers - "IMAGE_VIEWER_LARGEST_ICON": "最大", + "IMAGE_VIEWER_LARGEST_ICON": "最大", /** * Unit names */ - "UNIT_PIXELS": "ピクセル", + "UNIT_PIXELS": "ピクセル", // extensions/default/DebugCommands - "DEBUG_MENU": "デバッグ", - "ERRORS": "エラー", - "CMD_SHOW_DEV_TOOLS": "開発者ツールを表示", - "CMD_REFRESH_WINDOW": "拡張機能付きでリロード", - "CMD_RELOAD_WITHOUT_USER_EXTS": "拡張機能なしでリロード", - "CMD_NEW_BRACKETS_WINDOW": "新しい {APP_NAME} ウィンドウ", - "CMD_SWITCH_LANGUAGE": "言語を切り替える", - "CMD_RUN_UNIT_TESTS": "テストを実行", - "CMD_SHOW_PERF_DATA": "パフォーマンスデータを表示", - "CMD_ENABLE_NODE_DEBUGGER": "Node Debugger を有効にする", - "CMD_LOG_NODE_STATE": "Node の状態をコンソールに記録", - "CMD_RESTART_NODE": "Node を再起動", - "CMD_SHOW_ERRORS_IN_STATUS_BAR": "ステータスバーにエラーを表示", - "CMD_OPEN_BRACKETS_SOURCE": "オープン Brackets ソース", + "DEBUG_MENU": "デバッグ", + "ERRORS": "エラー", + "CMD_SHOW_DEV_TOOLS": "開発者ツールを表示", + "CMD_REFRESH_WINDOW": "拡張機能付きでリロード", + "CMD_RELOAD_WITHOUT_USER_EXTS": "拡張機能なしでリロード", + "CMD_NEW_BRACKETS_WINDOW": "新しい {APP_NAME} ウィンドウ", + "CMD_SWITCH_LANGUAGE": "言語を切り替える", + "CMD_RUN_UNIT_TESTS": "テストを実行", + "CMD_SHOW_PERF_DATA": "パフォーマンスデータを表示", + "CMD_ENABLE_NODE_DEBUGGER": "Node Debugger を有効にする", + "CMD_LOG_NODE_STATE": "Node の状態をコンソールに記録", + "CMD_RESTART_NODE": "Node を再起動", + "CMD_SHOW_ERRORS_IN_STATUS_BAR": "ステータスバーにエラーを表示", + "CMD_OPEN_BRACKETS_SOURCE": "オープン Brackets ソース", - "LANGUAGE_TITLE": "言語を切り替える", - "LANGUAGE_MESSAGE": "言語 :", - "LANGUAGE_SUBMIT": "{APP_NAME} をリロード", - "LANGUAGE_CANCEL": "キャンセル", - "LANGUAGE_SYSTEM_DEFAULT": "システムのデフォルト", + "LANGUAGE_TITLE": "言語を切り替える", + "LANGUAGE_MESSAGE": "言語 :", + "LANGUAGE_SUBMIT": "{APP_NAME} をリロード", + "LANGUAGE_CANCEL": "キャンセル", + "LANGUAGE_SYSTEM_DEFAULT": "システムのデフォルト", // extensions/default/InlineTimingFunctionEditor - "INLINE_TIMING_EDITOR_TIME": "時間", - "INLINE_TIMING_EDITOR_PROGRESSION": "進行", - "BEZIER_EDITOR_INFO": " 選択したポイントを移動
    Shift 10 単位ずつ移動
    Tab ポイントを切り替え", - "STEPS_EDITOR_INFO": " 手順を増減
    「開始」または「終了」", - "INLINE_TIMING_EDITOR_INVALID": "古い値 {0} が無効なため、表示されている関数は {1} に変更されました。ドキュメントは最初の編集内容で更新されます。", + "INLINE_TIMING_EDITOR_TIME": "時間", + "INLINE_TIMING_EDITOR_PROGRESSION": "進行", + "BEZIER_EDITOR_INFO": " 選択したポイントを移動
    Shift 10 単位ずつ移動
    Tab ポイントを切り替え", + "STEPS_EDITOR_INFO": " 手順を増減
    「開始」または「終了」", + "INLINE_TIMING_EDITOR_INVALID": "古い値 {0} が無効なため、表示されている関数は {1} に変更されました。ドキュメントは最初の編集内容で更新されます。", // extensions/default/InlineColorEditor - "COLOR_EDITOR_CURRENT_COLOR_SWATCH_TIP": "現在の色", - "COLOR_EDITOR_ORIGINAL_COLOR_SWATCH_TIP": "元の色", - "COLOR_EDITOR_RGBA_BUTTON_TIP": "RGBa 形式", - "COLOR_EDITOR_HEX_BUTTON_TIP": "16 進形式", - "COLOR_EDITOR_HSLA_BUTTON_TIP": "HSLa 形式", - "COLOR_EDITOR_USED_COLOR_TIP_SINGULAR": "{0} ({1} 回使用)", - "COLOR_EDITOR_USED_COLOR_TIP_PLURAL": "{0} ({1} 回使用)", + "COLOR_EDITOR_CURRENT_COLOR_SWATCH_TIP": "現在の色", + "COLOR_EDITOR_ORIGINAL_COLOR_SWATCH_TIP": "元の色", + "COLOR_EDITOR_RGBA_BUTTON_TIP": "RGBa 形式", + "COLOR_EDITOR_HEX_BUTTON_TIP": "16 進形式", + "COLOR_EDITOR_HSLA_BUTTON_TIP": "HSLa 形式", + "COLOR_EDITOR_USED_COLOR_TIP_SINGULAR": "{0} ({1} 回使用)", + "COLOR_EDITOR_USED_COLOR_TIP_PLURAL": "{0} ({1} 回使用)", // extensions/default/JavaScriptCodeHints - "CMD_JUMPTO_DEFINITION": "定義にジャンプ", - "CMD_SHOW_PARAMETER_HINT": "パラメーターヒントを表示", - "NO_ARGUMENTS": "<パラメーターがありません>", - "DETECTED_EXCLUSION_TITLE": "JavaScript ファイルの推論問題", - "DETECTED_EXCLUSION_INFO": "Brackets で {0} の処理中に問題が発生しました。

    このファイルはコードヒント、定義にジャンプ、またはクイック編集では処理されません。このファイルを再度有効にするには、プロジェクトで .brackets.json を開いて jscodehints.detectedExclusions を編集してください。

    これは、Brackets のバグである可能性があります。このファイルのコピーをご提供いただける場合は、ここで名付けたファイルへのリンクを記載してバグを登録してください。", + "CMD_JUMPTO_DEFINITION": "定義にジャンプ", + "CMD_SHOW_PARAMETER_HINT": "パラメーターヒントを表示", + "NO_ARGUMENTS": "<パラメーターがありません>", + "DETECTED_EXCLUSION_TITLE": "JavaScript ファイルの推論問題", + "DETECTED_EXCLUSION_INFO": "Brackets で {0} の処理中に問題が発生しました。

    このファイルはコードヒント、定義にジャンプ、またはクイック編集では処理されません。このファイルを再度有効にするには、プロジェクトで .brackets.json を開いて jscodehints.detectedExclusions を編集してください。

    これは、Brackets のバグである可能性があります。このファイルのコピーをご提供いただける場合は、ここで名付けたファイルへのリンクを記載してバグを登録してください。", // extensions/default/JSLint - "JSLINT_NAME": "JSLint", + "JSLINT_NAME": "JSLint", // extensions/default/QuickView - "CMD_ENABLE_QUICK_VIEW": "ホバー・クイックビュー", + "CMD_ENABLE_QUICK_VIEW": "ホバー・クイックビュー", // extensions/default/RecentProjects - "CMD_TOGGLE_RECENT_PROJECTS": "最近使用したプロジェクト", + "CMD_TOGGLE_RECENT_PROJECTS": "最近使用したプロジェクト", // extensions/default/WebPlatformDocs - "DOCS_MORE_LINK": "詳細" + "DOCS_MORE_LINK": "詳細" }); From a02e2946e3cf960951a8fc066ed3008f2651cdf7 Mon Sep 17 00:00:00 2001 From: Ingo Richter Date: Mon, 27 Oct 2014 23:53:26 -0700 Subject: [PATCH 094/141] - append buildnumber to version to make UpdateNotification check work again --- tasks/update-release-number.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks/update-release-number.js b/tasks/update-release-number.js index 3383b958bfc..cd291ceb317 100644 --- a/tasks/update-release-number.js +++ b/tasks/update-release-number.js @@ -39,7 +39,7 @@ module.exports = function (grunt) { grunt.fail.fatal("Please specify a release. e.g. grunt update-release-number --release=1.1.0"); } - packageJSON.version = release; + packageJSON.version = release + "-0"; packageJSON.apiVersion = release; common.writeJSON(grunt, path, packageJSON); From f3329c636dc413d2dab58ce8434166088bb04319 Mon Sep 17 00:00:00 2001 From: Jeff Booher Date: Mon, 27 Oct 2014 15:08:49 -0700 Subject: [PATCH 095/141] move resizer higher in DOM for splitview to fix #9706 --- src/utils/Resizer.js | 20 +++++++++++++++----- src/view/MainViewManager.js | 2 +- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/utils/Resizer.js b/src/utils/Resizer.js index 4cf85b38b35..1f8df2bf425 100644 --- a/src/utils/Resizer.js +++ b/src/utils/Resizer.js @@ -169,8 +169,12 @@ define(function (require, exports, module) { * @param {?boolean} createdByWorkspaceManager For internal use only * @param {?boolean} usePercentages Maintain the size of the element as a percentage of its parent * the default is to maintain the size of the element in pixels + * @param {?boolean} _attachToParent Attaches the resizer element to parent of the element rather than + * to element itself. Attach the resizer to the parent *ONLY* if element has the + * same offset as parent otherwise the resizer will be incorrectly positioned. + * FOR INTERNAL USE ONLY */ - function makeResizable(element, direction, position, minSize, collapsible, forceLeft, createdByWorkspaceManager, usePercentages) { + function makeResizable(element, direction, position, minSize, collapsible, forceLeft, createdByWorkspaceManager, usePercentages, _attachToParent) { var $resizer = $('
    '), $element = $(element), $parent = $element.parent(), @@ -229,8 +233,11 @@ define(function (require, exports, module) { collapsible = collapsible || false; - $element.prepend($resizer); - + if (_attachToParent) { + $parent.prepend($resizer); + } else { + $element.prepend($resizer); + } // Important so min/max sizes behave predictably $element.css("box-sizing", "border-box"); @@ -291,8 +298,11 @@ define(function (require, exports, module) { elementPrefs.visible = true; if (collapsible) { - $element.prepend($resizer); - + if (_attachToParent) { + $parent.prepend($resizer); + } else { + $element.prepend($resizer); + } if (position === POSITION_TOP) { $resizer.css(resizerCSSPosition, ""); } else if (position === POSITION_RIGHT) { diff --git a/src/view/MainViewManager.js b/src/view/MainViewManager.js index 71734fe750c..651e494067e 100644 --- a/src/view/MainViewManager.js +++ b/src/view/MainViewManager.js @@ -1073,7 +1073,7 @@ define(function (require, exports, module) { Resizer.makeResizable(firstPane.$el, _orientation === HORIZONTAL ? Resizer.DIRECTION_VERTICAL : Resizer.DIRECTION_HORIZONTAL, _orientation === HORIZONTAL ? Resizer.POSITION_BOTTOM : Resizer.POSITION_RIGHT, - MIN_PANE_SIZE, false, false, false, true); + MIN_PANE_SIZE, false, false, false, true, true); firstPane.$el.on("panelResizeUpdate", function () { _updateLayout(); From 2ab324a0d482fb646da6503a6f47401ec97965fc Mon Sep 17 00:00:00 2001 From: Kevin Dangoor Date: Tue, 28 Oct 2014 14:04:22 -0400 Subject: [PATCH 096/141] Add build number field for release number. Brackets won't start with a 1.0.0 version number. This also bumps the version number to 1.0.0-0. --- package.json | 4 ++-- src/config.json | 4 ++-- tasks/update-release-number.js | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index aedaf856954..ce3a7d1c614 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "Brackets", - "version": "0.45.0-0", - "apiVersion": "0.45.0", + "version": "1.0.0-0", + "apiVersion": "1.0.0", "homepage": "http://brackets.io", "issues": { "url": "http://github.com/adobe/brackets/issues" diff --git a/src/config.json b/src/config.json index ad815278683..f3b15a7b4cd 100644 --- a/src/config.json +++ b/src/config.json @@ -22,8 +22,8 @@ "build_timestamp": "" }, "name": "Brackets", - "version": "0.45.0-0", - "apiVersion": "0.45.0", + "version": "1.0.0-0", + "apiVersion": "1.0.0", "homepage": "http://brackets.io", "issues": { "url": "http://github.com/adobe/brackets/issues" diff --git a/tasks/update-release-number.js b/tasks/update-release-number.js index 3383b958bfc..cd291ceb317 100644 --- a/tasks/update-release-number.js +++ b/tasks/update-release-number.js @@ -39,7 +39,7 @@ module.exports = function (grunt) { grunt.fail.fatal("Please specify a release. e.g. grunt update-release-number --release=1.1.0"); } - packageJSON.version = release; + packageJSON.version = release + "-0"; packageJSON.apiVersion = release; common.writeJSON(grunt, path, packageJSON); From 893c065b715c211526dcd010c0294e12a8683995 Mon Sep 17 00:00:00 2001 From: Randy Edmunds Date: Tue, 28 Oct 2014 11:50:57 -0700 Subject: [PATCH 097/141] remove 'experimental' from About dialog --- src/nls/root/strings.js | 1 + src/strings.js | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/nls/root/strings.js b/src/nls/root/strings.js index 7ca4d9e33c6..e0e53745add 100644 --- a/src/nls/root/strings.js +++ b/src/nls/root/strings.js @@ -426,6 +426,7 @@ define({ // Strings for main-view.html "EXPERIMENTAL_BUILD" : "experimental build", + "RELEASE_BUILD" : "build", "DEVELOPMENT_BUILD" : "development build", "RELOAD_FROM_DISK" : "Reload from Disk", "KEEP_CHANGES_IN_EDITOR" : "Keep Changes in Editor", diff --git a/src/strings.js b/src/strings.js index fb391e547cf..eea4207250e 100644 --- a/src/strings.js +++ b/src/strings.js @@ -56,7 +56,12 @@ define(function (require, exports, module) { additionalGlobals.VERSION_PATCH = parsedVersion[3]; var isDevBuild = !StringUtils.endsWith(decodeURI(window.location.pathname), "/www/index.html"); - additionalGlobals.BUILD_TYPE = (isDevBuild ? strings.DEVELOPMENT_BUILD : strings.EXPERIMENTAL_BUILD); + if (isDevBuild) { + additionalGlobals.BUILD_TYPE = strings.DEVELOPMENT_BUILD; + } else { + var isReleaseBuild = (brackets.platform === "mac" || brackets.platform === "win"); + additionalGlobals.BUILD_TYPE = (isReleaseBuild ? strings.RELEASE_BUILD : strings.EXPERIMENTAL_BUILD); + } // Insert application strings _.forEach(strings, function (value, key) { From 01446b7e647898b9a8701bc191604680dc4e029f Mon Sep 17 00:00:00 2001 From: valtlait Date: Tue, 28 Oct 2014 21:51:07 +0200 Subject: [PATCH 098/141] =?UTF-8?q?Add=20=E2=80=9CRELEASE=5FBUILD=E2=80=9D?= =?UTF-8?q?=20string?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/nls/fi/strings.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/nls/fi/strings.js b/src/nls/fi/strings.js index d470fb1c4bd..ae0e13ac604 100644 --- a/src/nls/fi/strings.js +++ b/src/nls/fi/strings.js @@ -426,6 +426,7 @@ define({ // Strings for main-view.html "EXPERIMENTAL_BUILD" : "kokeellinen koontiversio", + "RELEASE_BUILD" : "koontiversio", "DEVELOPMENT_BUILD" : "kehityskoontiversio", "RELOAD_FROM_DISK" : "Lataa uudelleen levyltä", "KEEP_CHANGES_IN_EDITOR" : "Pidä muutokset muokkaimessa", @@ -627,4 +628,4 @@ define({ "DOCS_MORE_LINK" : "Lue lisää" }); -/* Last translated for 0b949dd02b87866d54f38631715a4353a8f927e5 */ +/* Last translated for 893c065b715c211526dcd010c0294e12a8683995 */ From 8936fec87ca5181710dcf72c8579fe2d1ec9f4e8 Mon Sep 17 00:00:00 2001 From: eliezerb Date: Tue, 28 Oct 2014 18:30:47 -0200 Subject: [PATCH 099/141] Review pt-br strings --- src/nls/pt-br/strings.js | 64 ++++++++++++++++++++++++++++++---------- 1 file changed, 49 insertions(+), 15 deletions(-) diff --git a/src/nls/pt-br/strings.js b/src/nls/pt-br/strings.js index 243d40a2535..a039169160b 100644 --- a/src/nls/pt-br/strings.js +++ b/src/nls/pt-br/strings.js @@ -34,10 +34,11 @@ define({ "GENERIC_ERROR" : "(erro {0})", "NOT_FOUND_ERR" : "O arquivo não pôde ser encontrado.", "NOT_READABLE_ERR" : "O arquivo não pôde ser lido.", + "EXCEEDS_MAX_FILE_SIZE" : "Arquivos maiores que {0} MB não podem ser abertos no {APP_NAME}.", "NO_MODIFICATION_ALLOWED_ERR" : "O diretório de destino não pode ser modificado.", "NO_MODIFICATION_ALLOWED_ERR_FILE" : "As permissões não permitem que você faça modificações.", "CONTENTS_MODIFIED_ERR" : "O arquivo foi modificado fora do {APP_NAME}.", - "UNSUPPORTED_ENCODING_ERR" : "O arquivo não contém texto codificado em UTF-8.", + "UNSUPPORTED_ENCODING_ERR" : "{APP_NAME} atualmente suporta apenas arquivos de texto codificados em UTF-8.", "FILE_EXISTS_ERR" : "Arquivo ou pasta já existe.", "FILE" : "arquivo", "FILE_TITLE" : "Arquivo", @@ -72,9 +73,21 @@ define({ "ENTRY_WITH_SAME_NAME_EXISTS" : "Já existe um arquivo ou diretório como o nome {0}.", "ERROR_CREATING_FILE_TITLE" : "Erro ao criar {0}", "ERROR_CREATING_FILE" : "Ocorreu um erro ao tentar criar o {0} {1}. {2}", + "ERROR_MIXED_DRAGDROP" : "Não é possível abrir uma pasta e outros arquivos ao mesmo tempo.", + + // User key map error strings + "ERROR_KEYMAP_TITLE" : "Erro ao ler mapa de teclas do usuário", + "ERROR_KEYMAP_CORRUPT" : "Seu arquivo de mapa de teclas não é um JSON válido. O arquivo será aberto para que você possa corrigir o formato.", + "ERROR_LOADING_KEYMAP" : "Seu arquivo de mapa de teclas não é um arquivo de texto com codificação UTF-8 válida e não pode ser carregado", + "ERROR_RESTRICTED_COMMANDS" : "Você não pode reatribuir atalhos para estes comandos: {0}", + "ERROR_RESTRICTED_SHORTCUTS" : "Você não pode reatribuir estes atalhos: {0}", + "ERROR_MULTIPLE_SHORTCUTS" : "Você está reatribuindo múltiplos atalhos para estes comandos: {0}", + "ERROR_DUPLICATE_SHORTCUTS" : "Você tem múltiplos vínculos para estes atalhos: {0}", + "ERROR_INVALID_SHORTCUTS" : "Estes atalhos são inválidos: {0}", + "ERROR_NONEXISTENT_COMMANDS" : "Você está atribuindo atalhos para comandos não existentes: {0}", // Application preferences corrupt error strings - "ERROR_PREFS_CORRUPT_TITLE" : "Erro ao ler preferências", + "ERROR_PREFS_CORRUPT_TITLE" : "Erro ao ler as preferências", "ERROR_PREFS_CORRUPT" : "Seu arquivo de preferências não é um JSON válido. O arquivo será aberto para que você possa corrigir o formato. Você deverá reiniciar o {APP_NAME} para as alterações terem efeito.", // Application error strings @@ -83,7 +96,7 @@ define({ // ProjectManager max files error string "ERROR_MAX_FILES_TITLE" : "Erro ao indexar arquivos", - "ERROR_MAX_FILES" : "O número máximo de arquivos foi indexado. Ações que procuram no índice de arquivos podem funcionar incorretamente.", + "ERROR_MAX_FILES" : "Este projeto contém mais de 30.000 arquivos. Funcionalidades que operam em múltiplos arquivos podem ser desabilitadas ou se comportarem como se o projeto estivesse vazio. Leia mais sobre como trabalhar com grandes projetos.", // Live Preview error strings "ERROR_LAUNCHING_BROWSER_TITLE" : "Erro ao abrir o navegador", @@ -93,7 +106,7 @@ define({ "LIVE_DEVELOPMENT_ERROR_TITLE" : "Erro no Live Preview", "LIVE_DEVELOPMENT_RELAUNCH_TITLE" : "Conectando-se ao navegador", "LIVE_DEVELOPMENT_ERROR_MESSAGE" : "Para que o Live Preview conecte-se, o Chrome deve ser reiniciado com a opção de depuração remota ativada.

    Gostaria de abrir o Chrome novamente e permitir a depuração remota?", - "LIVE_DEV_LOADING_ERROR_MESSAGE" : "Não foi possível carregar a página de Live Development", + "LIVE_DEV_LOADING_ERROR_MESSAGE" : "Não foi possível carregar a página de Live Preview", "LIVE_DEV_NEED_HTML_MESSAGE" : "Abra um arquivo HTML para iniciar Live Preview.", "LIVE_DEV_NEED_BASEURL_MESSAGE" : "Para iniciar um live preview com um arquivo server-side, é preciso especificar uma URL Base para este projeto.", "LIVE_DEV_SERVER_NOT_READY_MESSAGE" : "Erro ao iniciar o servidor HTTP para os arquivos do desenvolvimento em tempo real. Por favor, tente novamente.", @@ -102,7 +115,7 @@ define({ "LIVE_DEVELOPMENT_TROUBLESHOOTING" : "Para mais informações, veja Solucionando erros de conexão com Live Development.", "LIVE_DEV_STATUS_TIP_NOT_CONNECTED" : "Live Preview", - "LIVE_DEV_STATUS_TIP_PROGRESS1" : "Live Preview: Connectando\u2026", + "LIVE_DEV_STATUS_TIP_PROGRESS1" : "Live Preview: Conectando\u2026", "LIVE_DEV_STATUS_TIP_PROGRESS2" : "Live Preview: Inicializando\u2026", "LIVE_DEV_STATUS_TIP_CONNECTED" : "Desconectar Live Preview", "LIVE_DEV_STATUS_TIP_OUT_OF_SYNC" : "Live Preview (salve o arquivo para recarregar)", @@ -116,7 +129,7 @@ define({ "SAVE_CLOSE_TITLE" : "Salvar alterações", "SAVE_CLOSE_MESSAGE" : "Você quer salvar as alterações feitas no documento {0}?", "SAVE_CLOSE_MULTI_MESSAGE" : "Você quer salvar as alterações feitas aos seguintes arquivos?", - "EXT_MODIFIED_TITLE" : "Mudanças externas", + "EXT_MODIFIED_TITLE" : "Alterações externas", "CONFIRM_FOLDER_DELETE_TITLE" : "Confirmar exclusão", "CONFIRM_FOLDER_DELETE" : "Tem certeza que deseja excluir a pasta {0}?", "FILE_DELETED_TITLE" : "Arquivo excluído", @@ -150,15 +163,15 @@ define({ "BUTTON_PREV_HINT" : "Resultado anterior", "BUTTON_CASESENSITIVE_HINT" : "Diferenciar maiúsculas/minúsculas", "BUTTON_REGEXP_HINT" : "Expressão regular", - "REPLACE_WITHOUT_UNDO_WARNING_TITLE": "Substituir sem Desfazer", + "REPLACE_WITHOUT_UNDO_WARNING_TITLE": "Substituir sem desfazer", "REPLACE_WITHOUT_UNDO_WARNING" : "Porque mais de {0} arquivos precisam ser alterados, {APP_NAME} irá modificar arquivos não abertos no disco.
    Não será possível desfazer as modificações nestes arquivos.", - "BUTTON_REPLACE_WITHOUT_UNDO" : "Substituir sem Desfazer", + "BUTTON_REPLACE_WITHOUT_UNDO" : "Substituir sem desfazer", "OPEN_FILE" : "Abrir arquivo", "SAVE_FILE_AS" : "Salvar arquivo", "CHOOSE_FOLDER" : "Escolha uma pasta", - "RELEASE_NOTES" : "Notas da Versão", + "RELEASE_NOTES" : "Notas da versão", "NO_UPDATE_TITLE" : "Você está atualizado!", "NO_UPDATE_MESSAGE" : "Você está executando a versão mais recente do {APP_NAME}.", @@ -220,6 +233,23 @@ define({ "UNTITLED" : "Sem título", "WORKING_FILES" : "Arquivos abertos", + /** + * MainViewManager + */ + "TOP" : "Início", + "BOTTOM" : "Fim", + "LEFT" : "Esquerda", + "RIGHT" : "Direita", + + "CMD_SPLITVIEW_NONE" : "Sem divisão", + "CMD_SPLITVIEW_VERTICAL" : "Divisão vertical", + "CMD_SPLITVIEW_HORIZONTAL" : "Divisão horizontal", + "SPLITVIEW_MENU_TOOLTIP" : "Divida o editor veticalmente ou horizontalmente", + "GEAR_MENU_TOOLTIP" : "Configurar conjunto de trabalho", + + "SPLITVIEW_INFO_TITLE" : "Já está aberto", + "SPLITVIEW_MULTIPANE_WARNING" : "O arquivo já está aberto em outro painel. {APP_NAME} em breve irá suportar a abertura de um mesmo arquivo em mais de um painel. Até lá, o arquivo será mostrado no painel onde já está aberto.

    (Você irá ver esta mensagem apenas uma vez.)", + /** * Keyboard modifier names */ @@ -249,7 +279,7 @@ define({ "STATUSBAR_OVERWRITE" : "OVR", "STATUSBAR_INSOVR_TOOLTIP" : "Clique para alternar o cursor entre os modos Insert (INS) e Overwrite (OVR)", "STATUSBAR_LANG_TOOLTIP" : "Clique para alterar o tipo de arquivo", - "STATUSBAR_CODE_INSPECTION_TOOLTIP" : "{0}. Clique para abrir/fechar o painel de reatórios.", + "STATUSBAR_CODE_INSPECTION_TOOLTIP" : "{0}. Clique para abrir/fechar o painel de relatórios.", "STATUSBAR_DEFAULT_LANG" : "(padrão)", "STATUSBAR_SET_DEFAULT_LANG" : "Definir como padrão para arquivos .{0}.", @@ -276,7 +306,7 @@ define({ "CMD_FILE_NEW" : "Novo arquivo", "CMD_FILE_NEW_FOLDER" : "Nova pasta", "CMD_FILE_OPEN" : "Abrir\u2026", - "CMD_ADD_TO_WORKING_SET" : "Adicionar ao Conjunto de Trabalho", + "CMD_ADD_TO_WORKING_SET" : "Adicionar ao conjunto de trabalho", "CMD_OPEN_DROPPED_FILES" : "Abrir arquivos largados", "CMD_OPEN_FOLDER" : "Abrir pasta\u2026", "CMD_FILE_CLOSE" : "Fechar", @@ -392,6 +422,7 @@ define({ "CMD_TWITTER" : "{TWITTER_NAME} no Twitter", "CMD_ABOUT" : "Sobre o {APP_TITLE}", "CMD_OPEN_PREFERENCES" : "Abrir arquivo de configurações", + "CMD_OPEN_KEYMAP" : "Abrir mapa de teclas do usuário", // Strings for main-view.html "EXPERIMENTAL_BUILD" : "versão experimental", @@ -421,6 +452,7 @@ define({ "BASEURL_ERROR_HASH_DISALLOWED" : "A URL base não pode conter hashes como \"{0}\".", "BASEURL_ERROR_INVALID_CHAR" : "Caracteres especiais como '{0}' devem ser codificados para URL encoding.", "BASEURL_ERROR_UNKNOWN_ERROR" : "Erro desconhecido ao parsear URL base", + "EMPTY_VIEW_HEADER" : "Abra um arquivo enquanto este painel possui o foco", // Strings for themes-settings.html and themes-general.html "CURRENT_THEME" : "Tema atual", @@ -517,13 +549,14 @@ define({ "EXTENSION_NOT_INSTALLED" : "Não foi possível remover a extensão {0} porque ela não estava instalada.", "NO_EXTENSIONS" : "Nenhuma extensão instalada ainda.
    Clique na aba Disponíveis acima para começar.", "NO_EXTENSION_MATCHES" : "Nenhuma extensão corresponde à sua pesquisa.", - "REGISTRY_SANITY_CHECK_WARNING" : "Tenha cuidado ao instalar extensões de fontes desconhecidas.", + "REGISTRY_SANITY_CHECK_WARNING" : "NOTA: Estas extensões podem vir de diferentes autores e não do próprio {APP_NAME}. Extensões não são revisadas e tem prilégios locais totais. Tenha cuidado ao instalar extensões de fontes desconhecidas.", "EXTENSIONS_INSTALLED_TITLE" : "Instaladas", "EXTENSIONS_AVAILABLE_TITLE" : "Disponíveis", "EXTENSIONS_THEMES_TITLE" : "Temas", "EXTENSIONS_UPDATES_TITLE" : "Atualizações", - "INLINE_EDITOR_NO_MATCHES" : "Nenhuma correspondência.", + "INLINE_EDITOR_NO_MATCHES" : "Nenhum resultado.", + "INLINE_EDITOR_HIDDEN_MATCHES" : "Todas as correspondências foram ocultadas. Expanda os arquivos listados na direita para ver os resultados.", "CSS_QUICK_EDIT_NO_MATCHES" : "Nenhuma regra CSS corresponde à sua seleção.
    Clique em \"Nova regra\" para criar uma.", "CSS_QUICK_EDIT_NO_STYLESHEETS" : "Seu projeto não tem uma folha de estilos.
    Crie uma para adicionar regras CSS.", @@ -539,7 +572,7 @@ define({ // extensions/default/DebugCommands "DEBUG_MENU" : "Depurar", "ERRORS" : "Erros", - "CMD_SHOW_DEV_TOOLS" : "Mostrar Ferramentas do Desenvolvedor", + "CMD_SHOW_DEV_TOOLS" : "Mostrar ferramentas do desenvolvedor", "CMD_REFRESH_WINDOW" : "Recarregar com extensões", "CMD_RELOAD_WITHOUT_USER_EXTS" : "Recarregar sem extensões", "CMD_NEW_BRACKETS_WINDOW" : "Nova janela do {APP_NAME}", @@ -550,6 +583,7 @@ define({ "CMD_LOG_NODE_STATE" : "Registrar estado do Node no console", "CMD_RESTART_NODE" : "Reiniciar Node", "CMD_SHOW_ERRORS_IN_STATUS_BAR" : "Mostrar erros na barra de status", + "CMD_OPEN_BRACKETS_SOURCE" : "Abrir local do Brackets", "LANGUAGE_TITLE" : "Alterar idioma", "LANGUAGE_MESSAGE" : "Idioma:", @@ -578,7 +612,7 @@ define({ "CMD_SHOW_PARAMETER_HINT" : "Mostrar dicas de parâmetro", "NO_ARGUMENTS" : "", "DETECTED_EXCLUSION_TITLE" : "Problema de inferência de arquivo JavaScript", - "DETECTED_EXCLUSION_INFO" : "Brackets enfrentou um problema ao processar:

    {0}

    Este arquivo não será mais processado para dicas de código e definições. Para reverter, abra .brackets.json em seu projeto e remova o arquivo de jscodehints.detectedExclusions.", + "DETECTED_EXCLUSION_INFO" : "Brackets enfrentou um problema ao processar: {0}.

    Este arquivo não será mais processado para dicas de código, definições ou edição rápida. Para reverter, abra .brackets.json em seu projeto e edite jscodehints.detectedExclusions.

    Este provavelmente é um bug do Brackets. Se você pode fornecer uma cópia deste arquivo, por favor registre um bug com um link para o arquivo mencionado aqui.", // extensions/default/JSLint "JSLINT_NAME" : "JSLint", From 1e5234c4d082fa52cf9833239e9a7e797a903fab Mon Sep 17 00:00:00 2001 From: JeffryBooher Date: Tue, 28 Oct 2014 11:28:17 -0700 Subject: [PATCH 100/141] update danish getting started screen grab --- .../screenshots/quick-edit.png | Bin 161328 -> 310783 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/samples/da/Kom godt i gang/screenshots/quick-edit.png b/samples/da/Kom godt i gang/screenshots/quick-edit.png index f5187e254c86e569c9f2d4368e53e1fb2ccdd027..911d70c8266fbb65f12ec5e79b427a797d9613ad 100644 GIT binary patch literal 310783 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
    ~%P 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 z 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

  • 5EluZM)P^S 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 AH2?qr literal 161328 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 SC{RZL0000 Date: Tue, 28 Oct 2014 22:53:07 +0200 Subject: [PATCH 101/141] Changes based on PR #9691 --- samples/fi/Aloitus/index.html | 76 ++++++++++++++++++----------------- 1 file changed, 39 insertions(+), 37 deletions(-) diff --git a/samples/fi/Aloitus/index.html b/samples/fi/Aloitus/index.html index 57d63dad244..c5c60a17797 100644 --- a/samples/fi/Aloitus/index.html +++ b/samples/fi/Aloitus/index.html @@ -18,10 +18,9 @@

    Tämä on oppaasi!

    -->

    - Tervetuloa käyttämään Bracketsin varhaista esiversiota, uutta avoimen lähdekoodin ja seuraavan - web-sukupolven editoria. Olemme suuria standardien faneja ja haluamme rakentaa paremmat työkalut - JavaScriptille, HTML:lle ja CSS:lle sekä niihin liittyville, avoimille web-tekniikoille. Tämä on nöyrä - alkumme. + Tervetuloa käyttämään Bracketsia, nykyaikaista, avoimen lähdekoodin koodieditoria, joka ymmärtää + web-suunnittelun. Se on kevyt mutta silti tehokas: koodieditori, joka sulauttaa visuaaliset työkalut suoraan + editoriin, niin että saat oikean määrän apua silloin, kun haluat sitä.

    Brackets on erityyppinen editori. - Yksi huomattava ero on se, että tämä editori on kirjoitettu JavaScriptillä, HTML:llä ja CSS:llä. Se - tarkoittaa, että useimmilla teistä, Bracketsin käyttäjistä, on välttämättömät taidot muokata ja laajentaa - editoria. Itse asiassa käytämme Bracketsia joka päivä sen itsensä kehittämiseen. Bracketsissa on joitakin - ainutlaatuisia ominaisuuksia, kuten pikamuokkaus, reaaliaikainen esikatselu ja muita, joita et voi löytää - muista editoreista. Oppiaksesi lisää siitä, kuinka käyttää näitä ominaisuuksia, jatka lukemista. + Bracketsissa on joitakin ainutlaatuisia ominaisuuksia, kuten pikamuokkaus, reaaliaikainen esikatselu ja + muita, joita et voi löytää muista editoreista. Lisäksi Brackets on kirjoitettu JavaSciptillä, HTML:llä ja + CSS:llä. Se tarkoittaa, että useimmilla Bracketsin käyttäjistä on riittävät taidot muokata ja laajentaa + editoria. Itse asiassa käytämme Bracketsia joka päivä sen itsensä kehitykseen. Oppiaksesi lisää siitä, + kuinka käyttää avainominaisuuksia, jatka lukemista.

    + + +

    Projektit Bracketsissa

    +

    + Muokataksesi omaa koodiasi Bracketsia käyttäen voit vain avata tiedostosi sisältävän kansion. Brackets pitää + nykyistä avointa kansiota ”projektina”; ominaisuudet, kuten koodivihjeet, esikatselu ja pikamuokkaus, + käyttävät vain parhaillaan avoinna olevan kansion tiedostoja. +

    -

    Kokeilemme muutamia uusia asioita

    + + Heti kun olet valmis luopumaan tästä näyteprojektista ja muokkaamaan omaa koodiasi, voit käyttää vasemman + sivupalkin pudotusvalikkoa kansioiden vaihtamiseen. Juuri nyt pudotusvalikossa lukee ”Aloitus”. Tämä on + kansio, joka sisältää tiedoston, jota tarkastelet juuri nyt. Avaa oma kansiosi napsauttamalla + pudotusvalikkoa ja valitsemalla ”Avaa kansio…”. + Voit käyttää pudotusvalikkoa myös myöhemmin vaihtaaksesi takaisin kansioihin, jotka olet avannut aiemmin, + sisältäen tämän näyteprojektin. + -tägiin ja paina - Cmd/Ctrl + E. Sinun pitäisi nähdä, kun CSS-pikaeditori ilmestyy alapuolelle näyttäen - CSS-säännön, joka pätee siihen. Pikamuokkaus toimii niin class- kuin id-attribuuttienkin kanssa. + Cmd/Ctrl + E. Sinun pitäisi nähdä, kun CSS-pikaeditori ilmestyy alapuolelle näyttäen CSS-säännön, + joka pätee siihen. Pikamuokkaus toimii toki myös class- ja id-attribuuttien kanssa. Voit käyttää sitä myös + LESS- ja SCSS-tiedostojesi kanssa. Voit luoda uusia sääntöjä samalla tavalla. Napsauta yhtä alaosan -tägeistä ja paina Cmd/Ctrl + E. Sille ei ole sääntöjä juuri nyt, mutta voit napsauttaa Uusi sääntö -painiketta @@ -99,10 +116,10 @@

    Korosta HTML-elementtejä ja CSS-sääntöjä reaaliaikaisesti

    - Jos sinulla on Google Chrome asennettuna, voit kokeilla tätä itse. Napsauta Brackets-ikkunan - oikeassa yläkulmassa sijaitsevaa salamakuvaketta tai paina Cmd/Ctrl + Alt + P. Kun esikatselu on - käytössä HTML-dokumentissa, kaikkia linkitettyjä CSS-dokumentteja voi muokata reaaliajassa. Kuvake muuttuu - harmaasta kultaiseksi, kun Brackets muodostaa yhteyden selaimeesi. + Jos sinulla on Google Chrome asennettuna, voit kokeilla tätä itse. Napsauta Brackets-ikkunan oikeassa + yläkulmassa sijaitsevaa salamakuvaketta tai paina Cmd/Ctrl + Alt + P. Kun esikatselu on käytössä + HTML-dokumentissa, kaikkia linkitettyjä CSS-dokumentteja voi muokata reaaliajassa. Kuvake muuttuu harmaasta + kultaiseksi, kun Brackets muodostaa yhteyden selaimeesi. Aseta kohdistin nyt yläpuolella olevaan -tägiin. Huomaa sininen korostus, joka ilmestyy kuvan ympärille Chromessa. Käytä seuraavaksi Cmd/Ctrl + E -näppäinyhdistelmää avataksesi määritellyt @@ -137,36 +154,21 @@

    Pikanäkymä

    Tarvitsetko jotakin muuta? Kokeile laajennusta!

    - Sen kaiken hyvän lisäksi, jota Bracketsiin on rakennettu, suuri ja kasvava laajennuskehittäjien yhteisömme - on tehnyt yli sata laajennusta, jotka lisäävät hyödyllisiä toimintoja. Jos on jotakin, jota tarvitset ja - jota Brackets ei tarjoa, enemmän kuin todennäköisesti joku on tehnyt laajennuksen siihen. Selaa saatavilla - olevien laajennusten luetteloa tai hae siitä valitsemalla Tiedosto > Laajennusten + Sen kaiken hyvän lisäksi, jota Bracketsiin on rakennettu, on suuri ja kasvava laajennuskehittäjien + yhteisömme tehnyt satoja laajennuksia, jotka lisäävät hyödyllisiä toimintoja. Jos on jotakin, jota tarvitset + ja jota Brackets ei tarjoa, enemmän kuin todennäköisesti joku on tehnyt laajennuksen siihen. Selaa + saatavilla olevien laajennusten luetteloa tai hae siitä valitsemalla Tiedosto > Laajennusten hallinta ja napsauttamalla ”Saatavilla”-välilehteä. Kun löydät haluamasi laajennuksen, napsauta vain ”Asenna”-painiketta sen vierestä.

    -

    Projektit Bracketsissa

    -

    - Muokataksesi omaa koodiasi Bracketsia käyttäen voit vain avata tiedostosi sisältävän kansion. Brackets pitää - nykyistä avointa kansiota ”projektina”; ominaisuudet, kuten koodivihjeet, esikatselu ja pikamuokkaus, - käyttävät vain parhaillaan avoinna olevan kansion tiedostoja. -

    - - - Heti kun olet valmis luopumaan tästä näyteprojektista ja muokkaamaan omaa koodiasi, voit käyttää vasemman - sivupalkin pudotusvalikkoa kansioiden vaihtamiseen. Juuri nyt pudotusvalikossa lukee ”Aloitus”. Tämä on - kansio, joka sisältää tiedoston, jota tarkastelet juuri nyt. Avaa oma kansiosi napsauttamalla - pudotusvalikkoa ja valitsemalla ”Avaa kansio…”. Voit käyttää pudotusvalikkoa myös myöhemmin vaihtaaksesi - takaisin kansioihin, jotka olet avannut aiemmin, sisältäen tämän näyteprojektin. - -

    Lähde mukaan

    Brackets on avoimen lähdekoodin projekti. Web-kehittäjät ympäri maailmaa osallistuvat paremman koodieditorin - kehittämiseen. Paljon enemmän rakennetaan laajennuksia, jotka laajentavat Bracketsin kykyjä. Kerro meille, + kehittämiseen. Vieläkin enemmän kehitetään laajennuksia, jotka laajentavat Bracketsin kykyjä. Kerro meille, mitä ajattelet. Jaa ideasi tai osallistu suoraan projektiin.

    diff --git a/src/nls/de/strings.js b/src/nls/de/strings.js index 4d25e666c5b..3dc92cb3e8b 100644 --- a/src/nls/de/strings.js +++ b/src/nls/de/strings.js @@ -34,6 +34,7 @@ define({ "GENERIC_ERROR" : "(Fehler {0})", "NOT_FOUND_ERR" : "Die Datei konnte nicht gefunden werden.", "NOT_READABLE_ERR" : "Die Datei konnte nicht gelesen werden.", + "EXCEEDS_MAX_FILE_SIZE" : "{APP_NAME} kann keine Dateien öffnen, die größer als {0} MB sind.", "NO_MODIFICATION_ALLOWED_ERR" : "Der Ziel-Ordner kann nicht verändert werden.", "NO_MODIFICATION_ALLOWED_ERR_FILE" : "Die Berechtigungen erlauben Ihnen nicht, Veränderungen vorzunehmen.", "CONTENTS_MODIFIED_ERR" : "Die Datei wurde außerhalb von {APP_NAME} verändert.", @@ -72,10 +73,22 @@ define({ "ENTRY_WITH_SAME_NAME_EXISTS" : "Eine Datei oder ein Ordner mit dem Namen {0} existiert bereits.", "ERROR_CREATING_FILE_TITLE" : "Fehler beim Erstellen von {0}", // TODO: depends on {0} gender "ERROR_CREATING_FILE" : "Beim Erstellen von {0} {1} ist ein Fehler aufgetreten: {2}", // TODO: depends on {0} gender + "ERROR_MIXED_DRAGDROP" : "Ein Ordner kann nicht zeitgleich mit anderen Dateien geöffnet werden.", + + // User key map error strings + "ERROR_KEYMAP_TITLE" : "Fehler beim Einlesen der benutzerdefinierten Tastenbelegung", + "ERROR_KEYMAP_CORRUPT" : "Ihre Tastenbelegungs-Datei enthält kein gültiges JSON. Die Datei wird geöffnet, damit sie das Format korrigieren können.", + "ERROR_LOADING_KEYMAP" : "Ihre Tastenbelegungs-Datei ist keine gültige UTF-8-kodierte Textdatei und kann daher nicht geladen werden.", + "ERROR_RESTRICTED_COMMANDS" : "Sie können die Tastenkürzel der folgenden Befehle nicht ändern: {0}", + "ERROR_RESTRICTED_SHORTCUTS" : "Sie können die folgenden Tastenkürzel nicht ändern: {0}", + "ERROR_MULTIPLE_SHORTCUTS" : "Sie ordnen diesen Befehlen mehrere Tastenkürzel zu: {0}", + "ERROR_DUPLICATE_SHORTCUTS" : "Sie belegen diese Tastenkürzel mehrfach: {0}", + "ERROR_INVALID_SHORTCUTS" : "Diese Tastenkürzel sind ungültig: {0}", + "ERROR_NONEXISTENT_COMMANDS" : "Sie ordnen nicht existierenden Befehlen Tastenkürzel zu: {0}", // Application preferences corrupt error strings "ERROR_PREFS_CORRUPT_TITLE" : "Fehler beim Lesen der Einstellungen", - "ERROR_PREFS_CORRUPT" : "Ihre Einstellungsdatei ist kein gültiges JSON. Die Datei wird geöffnet, damit Sie das Format korrigieren können. Sie müssen {APP_NAME} neu starten, damit die Änderungen wirksam werden.", + "ERROR_PREFS_CORRUPT" : "Ihre Einstellungsdatei enthält kein gültiges JSON. Die Datei wird geöffnet, damit Sie das Format korrigieren können. Sie müssen {APP_NAME} neu starten, damit die Änderungen wirksam werden.", // Application error strings "ERROR_IN_BROWSER_TITLE" : "Ups! {APP_NAME} kann derzeit leider noch nicht im Browser ausgeführt werden.", @@ -92,8 +105,8 @@ define({ "LIVE_DEVELOPMENT_ERROR_TITLE" : "Fehler bei der Live-Vorschau", "LIVE_DEVELOPMENT_RELAUNCH_TITLE" : "Verbinden zum Browser", - "LIVE_DEVELOPMENT_ERROR_MESSAGE" : "Um die Live-Vorschau zu verwenden, muss Chrome mit aktiviertem Remote-Debugging neu gestartet werden.

    Soll Chrome neu gestartet werden, um das Remote Debugger Protokoll zu aktivieren?", - "LIVE_DEV_LOADING_ERROR_MESSAGE" : "Laden der Live-Vorschau nicht möglich", + "LIVE_DEVELOPMENT_ERROR_MESSAGE" : "Um die Live-Vorschau zu verwenden, muss Chrome mit aktiviertem Remote-Debugging neu gestartet werden.

    Soll Chrome neu gestartet werden, um das Remote Debugger Protokoll zu aktivieren?

    ", + "LIVE_DEV_LOADING_ERROR_MESSAGE" : "Laden der Live-Vorschau nicht möglich.", "LIVE_DEV_NEED_HTML_MESSAGE" : "Öffnen Sie eine HTML-Datei oder stellen Sie sicher, dass sich eine index.html-Datei im Projekt befindet, um die Live-Vorschau zu starten.", "LIVE_DEV_NEED_BASEURL_MESSAGE" : "Zum Starten der Live-Vorschau mit einer serverseitigen Datei müssen Sie eine Basis-URL für dieses Projekt angeben.", "LIVE_DEV_SERVER_NOT_READY_MESSAGE" : "Ein Fehler ist beim Starten des HTTP-Servers oder der Live-Vorschau-Dateien aufgetreten. Bitte versuchen Sie es später erneut.", @@ -220,6 +233,23 @@ define({ "UNTITLED" : "Unbenannt", "WORKING_FILES" : "Offene Dateien", + /** + * MainViewManager + */ + "TOP" : "Oben", + "BOTTOM" : "Unten", + "LEFT" : "Links", + "RIGHT" : "Rechts", + + "CMD_SPLITVIEW_NONE" : "Nicht geteilt", + "CMD_SPLITVIEW_VERTICAL" : "Vetikal geteilt", + "CMD_SPLITVIEW_HORIZONTAL" : "Horizontal geteilt", + "SPLITVIEW_MENU_TOOLTIP" : "Teilen Sie den Editor vertikal oder horizontal", + "GEAR_MENU_TOOLTIP" : "Projektdateien konfigurieren", + + "SPLITVIEW_INFO_TITLE" : "Bereits geöffnet", + "SPLITVIEW_MULTIPANE_WARNING" : "Diese Datei ist bereits in einer anderen Ansicht geöffnet. Das Öffnen einer Datei in mehreren Ansichten wird {APP_NAME} bald unterstützen. Bis dahin wird die Datei in der Ansicht angezeigt, in der sie bereits geöffnet ist.

    (Sie sehen diese Nachricht nur einmal.)", + /** * Keyboard modifier names */ @@ -276,7 +306,7 @@ define({ "CMD_FILE_NEW" : "Neue Datei", "CMD_FILE_NEW_FOLDER" : "Neuer Ordner", "CMD_FILE_OPEN" : "Öffnen\u2026", - "CMD_ADD_TO_WORKING_SET" : "Zum Projekt hinzufügen", + "CMD_ADD_TO_WORKING_SET" : "Im Projekt öffnen", "CMD_OPEN_DROPPED_FILES" : "Abgelegte Dateien öffnen", "CMD_OPEN_FOLDER" : "Ordner öffnen\u2026", "CMD_FILE_CLOSE" : "Schließen", @@ -355,10 +385,10 @@ define({ "CMD_TOGGLE_WORD_WRAP" : "Zeilenumbruch aktivieren", "CMD_LIVE_HIGHLIGHT" : "Live-Vorschau Highlight", "CMD_VIEW_TOGGLE_INSPECTION" : "Beim Speichern linten", - "CMD_SORT_WORKINGSET_BY_ADDED" : "Nach Hinzufügen-Datum sortieren", - "CMD_SORT_WORKINGSET_BY_NAME" : "Nach Name sortieren", - "CMD_SORT_WORKINGSET_BY_TYPE" : "Nach Typ sortieren", - "CMD_SORT_WORKINGSET_AUTO" : "Automatisch sortieren", + "CMD_WORKINGSET_SORT_BY_ADDED" : "Nach Hinzufügen-Datum sortieren", + "CMD_WORKINGSET_SORT_BY_NAME" : "Nach Name sortieren", + "CMD_WORKINGSET_SORT_BY_TYPE" : "Nach Typ sortieren", + "CMD_WORKING_SORT_TOGGLE_AUTO" : "Automatisch sortieren", "CMD_THEMES" : "Designs\u2026", // Navigate menu Commands @@ -392,9 +422,11 @@ define({ "CMD_TWITTER" : "{TWITTER_NAME} auf Twitter", "CMD_ABOUT" : "Über {APP_TITLE}", "CMD_OPEN_PREFERENCES" : "Einstellungsdatei öffnen", + "CMD_OPEN_KEYMAP" : "Benutzerdefinierte Tastenbelegung öffnen", // Strings for main-view.html "EXPERIMENTAL_BUILD" : "Experimenteller Build", + "RELEASE_BUILD" : "Build", "DEVELOPMENT_BUILD" : "Entwicklungs-Build", "RELOAD_FROM_DISK" : "Von der Festplatte neu laden", "KEEP_CHANGES_IN_EDITOR" : "Änderungen im Editor behalten", @@ -402,7 +434,7 @@ define({ "RELAUNCH_CHROME" : "Chrome neu starten", "ABOUT" : "Über", "CLOSE" : "Schließen", - "ABOUT_TEXT_LINE1" : "Sprint {VERSION_MINOR} {BUILD_TYPE} {VERSION}", + "ABOUT_TEXT_LINE1" : "Release {VERSION_MAJOR}.{VERSION_MINOR} {BUILD_TYPE} {VERSION}", "ABOUT_TEXT_BUILD_TIMESTAMP" : "Zeitpunkt des Builds: ", "ABOUT_TEXT_LINE3" : "Hinweise, Bestimmungen und Bedingungen, die sich auf Drittanbieter-Software beziehen, finden sich unter {ADOBE_THIRD_PARTY} und sind hier durch Bezugnahme eingeschlossen.", "ABOUT_TEXT_LINE4" : "Dokumentation und Quellcode unter https://github.com/adobe/brackets/", @@ -421,6 +453,7 @@ define({ "BASEURL_ERROR_HASH_DISALLOWED" : "Die Basis-URL kann keine Hashes wie \"{0}\" enthalten.", "BASEURL_ERROR_INVALID_CHAR" : "Sonderzeichen wie \"{0}\" müssen %-kodiert werden.", "BASEURL_ERROR_UNKNOWN_ERROR" : "Unbekannter Fehler beim Verarbeiten der Basis-URL", + "EMPTY_VIEW_HEADER" : "Öffnen Sie eine Datei, während diese Ansicht fokussiert ist", // Strings for themes-settings.html and themes-general.html "CURRENT_THEME" : "Aktuelles Design", @@ -524,6 +557,7 @@ define({ "EXTENSIONS_UPDATES_TITLE" : "Updates", "INLINE_EDITOR_NO_MATCHES" : "Keine Ergebnisse verfügbar.", + "INLINE_EDITOR_HIDDEN_MATCHES" : "Alle Ergebnisse sind ausglendet. Klicken Sie auf die rechts gelisteten Dateien, um die dazugehörigen Ergebnisse anzuzeigen.", "CSS_QUICK_EDIT_NO_MATCHES" : "Es gibt keine CSS-Regeln, die zu Ihrer Auswahl passen.
    Klicken Sie auf \"Neue Regel\", um eine neue Regel zu erstellen.", "CSS_QUICK_EDIT_NO_STYLESHEETS" : "Es gibt keine Stylesheets in Ihrem Projekt.
    Erstellen Sie eines, um CSS-Regeln hinzuzufügen.", @@ -550,6 +584,7 @@ define({ "CMD_LOG_NODE_STATE" : "Node-Status in Konsole anzeigen", "CMD_RESTART_NODE" : "Node neu starten", "CMD_SHOW_ERRORS_IN_STATUS_BAR" : "Zeige Fehler in der Statusleiste", + "CMD_OPEN_BRACKETS_SOURCE" : "Brackets-Quellcode anzeigen", "LANGUAGE_TITLE" : "Sprache wechseln", "LANGUAGE_MESSAGE" : "Sprache:", @@ -578,7 +613,7 @@ define({ "CMD_SHOW_PARAMETER_HINT" : "Parameter-Hinweis anzeigen", "NO_ARGUMENTS" : "", "DETECTED_EXCLUSION_TITLE" : "Problem mit einer JavaScript-Datei", - "DETECTED_EXCLUSION_INFO" : "Brackets hat Probleme damit, diese Datei zu verarbeiten:

    {0}

    Code-Vervollständigung und das Springen zur Definition werden für die Datei nicht mehr bereitgestellt. Öffnen Sie .brackets.json in diesem Projekt und entfernen Sie den Dateipfad von jscodehints.detectedExclusions, um diese Features zu reaktivieren.", + "DETECTED_EXCLUSION_INFO" : "Brackets hat Probleme damit, {0} zu verarbeiten.

    Code-Vervollständigung, Springen zur Definition und Schnelles Bearbeiten werden für die Datei nicht mehr bereitgestellt. Öffnen Sie .brackets.json in diesem Projekt und entfernen Sie den Dateipfad von jscodehints.detectedExclusions, um diese Datei wieder einzuschließen.

    Das ist wahrscheinlich ein Bug in Brackets. Melden Sie den Fehler bitte, falls Sie eine Kopie dieser Datei bereitstellen können. Verlinken Sie in diesem Fall die oben genannte Datei.", // extensions/default/JSLint "JSLINT_NAME" : "JSLint", @@ -593,4 +628,4 @@ define({ "DOCS_MORE_LINK" : "Weiterlesen" }); -/* Last translated for 8712385a6bf12277e6d0788d408e630a40c95a14 */ +/* Last translated for 893c065b715c211526dcd010c0294e12a8683995 */ From d6fe04f8002165b0c8789584c393008e497f0324 Mon Sep 17 00:00:00 2001 From: eliezerb Date: Tue, 28 Oct 2014 19:40:53 -0200 Subject: [PATCH 103/141] Adding SHA --- src/nls/pt-br/strings.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/nls/pt-br/strings.js b/src/nls/pt-br/strings.js index a039169160b..8a487c43bff 100644 --- a/src/nls/pt-br/strings.js +++ b/src/nls/pt-br/strings.js @@ -625,4 +625,5 @@ define({ // extensions/default/WebPlatformDocs "DOCS_MORE_LINK" : "Leia mais" -}); \ No newline at end of file +}); +/* Last translated for 0b949dd02b87866d54f38631715a4353a8f927e5 */ From 3a3c7b4c9bede6420e53be9c2c20ed78b4d7d9b1 Mon Sep 17 00:00:00 2001 From: eliezerb Date: Tue, 28 Oct 2014 23:28:14 -0200 Subject: [PATCH 104/141] Fixing typo --- src/nls/pt-br/strings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nls/pt-br/strings.js b/src/nls/pt-br/strings.js index 8a487c43bff..86f84fd3cdc 100644 --- a/src/nls/pt-br/strings.js +++ b/src/nls/pt-br/strings.js @@ -244,7 +244,7 @@ define({ "CMD_SPLITVIEW_NONE" : "Sem divisão", "CMD_SPLITVIEW_VERTICAL" : "Divisão vertical", "CMD_SPLITVIEW_HORIZONTAL" : "Divisão horizontal", - "SPLITVIEW_MENU_TOOLTIP" : "Divida o editor veticalmente ou horizontalmente", + "SPLITVIEW_MENU_TOOLTIP" : "Divida o editor verticalmente ou horizontalmente", "GEAR_MENU_TOOLTIP" : "Configurar conjunto de trabalho", "SPLITVIEW_INFO_TITLE" : "Já está aberto", From 23dcf61b05db39588d1de86a407de937a41431c6 Mon Sep 17 00:00:00 2001 From: TomMalbran Date: Tue, 28 Oct 2014 23:40:06 -0300 Subject: [PATCH 105/141] Updated latest changes --- samples/es/Primeros Pasos/index.html | 125 ++++++++++++++------------- src/nls/es/strings.js | 1 + 2 files changed, 67 insertions(+), 59 deletions(-) diff --git a/samples/es/Primeros Pasos/index.html b/samples/es/Primeros Pasos/index.html index cb440703c71..47ce1056920 100644 --- a/samples/es/Primeros Pasos/index.html +++ b/samples/es/Primeros Pasos/index.html @@ -18,9 +18,9 @@

    ¡Ésta es tu guía!

    -->

    - Bienvenido a una versión preliminar de Brackets, un nuevo editor de código abierto para la nueva - generación de Internet. Somos unos apasionados de los estándares y queremos construir mejores - herramientas para JavaScript, HTML, CSS y el resto de tecnologías web. Éste es nuestro humilde comienzo. + Bienvenido a Brackets, un nuevo editor de código abierto que entiende el diseño web. Es un editor de + código liviano y potente al mismo tiempo que incluye herramientas visuales dentro del mismo para + que puedas obtener la ayuda que necesites cuando la necesites.

    Brackets es un editor diferente. - La gran diferencia es que está escrito en JavaScript, HTML y CSS. Esto significa que la mayoría de quienes - usan Brackets tiene las habilidades necesarias para modificar y extender el editor. De hecho, nosotros - lo usamos todos los días para desarrollar Brackets. También tiene algunas características únicas como - Edición rápida, Vista previa dinámica y más que no encontrarás en otros editores. - Sigue leyendo para saber más sobre cómo sacar provecho de estas características + Brackets tiene varias características únicas como la Edición rápida y la Vista previa dinámica y muchas + más que no vas a encontrar en otros editores. Además, Brackets está escrito en JavaScript, HTML y CSS. + Esto significa que la mayoría de quienes usan Brackets tienen las habilidades necesarias para modificar y + extender el editor. De hecho, nosotros usamos Brackets todos los días para desarrollar Brackets. Para + saber más sobre cómo utilizar estas características únicas, continua leyendo.

    + + +

    Proyectos en Brackets

    +

    + Para poder editar tu propio código en Brackets, puedes simplemente abrir la carpeta que contiene los + archivos. Brackets considera a la carpeta abierta como el "proyecto"; características como las Sugerencias + de código, la Vista previa dinámica y la Edición rápida solo utilizan los archivos contenidos dentro de + la carpeta actualmente abierta. +

    + + + Una vez que estés listo para salir del proyecto de ejemplo y editar tu propio código, puedes usar el menú + despegable en la barra de la izquierda para cambiar de carpeta. En estos momentos, el menú despegable dice + "Primeros Pasos" - la cual es la carpeta que contiene el archivo que estás viendo en estos momentos. Haz + clic en el menú despegable y selecciona "Abrir carpeta…" para abrir tu carpeta. + También puedes usar el menú despegable para abrir las carpetas que abriste recientemente, incluyendo este + proyecto de ejemplo. +

    Estamos intentando algunas cosas nuevas

    @@ -46,18 +66,19 @@

    Edición rápida de CSS y JavaScript

    Se acabó el estar saltando de documento en documento perdiendo de vista lo que estás haciendo. Mientras estás escribiendo HTML, usa el atajo de teclado Cmd/Ctrl + E para abrir un editor rápido en línea con todo el contenido CSS relacionado. Ajusta tu CSS y oprime ESC para volver a tu HTML, - o simplemente mantenga las reglas CSS abiertas para que pasen a formar parte de tu editor de HTML. Si pulsas - ESC fuera de un editor rápido, todos se cerrarán a la vez. La edición rápida también funciona con - archivos LESS y SCSS files, incluyedo las reglas anidadas. + o simplemente mantenga las reglas CSS abiertas para que pasen a formar parte de tu editor de HTML. Si + pulsas ESC fuera de un editor rápido, todos se cerrarán a la vez. La edición rápida también + funciona con archivos LESS y SCSS files, incluyendo las reglas anidadas.

    - ¿Quieres verlo funcionando? Coloca tu cursor sobe la etiqueta y oprime Cmd/Ctrl + E. - Deberías ver aparecer un editor rápido de CSS más arriba, mostrando la regla CSS que le afecta. La edición rápida - funciona también en atributos de de tipo clase e id. + ¿Quieres verlo funcionando? Coloca tu cursor sobe la etiqueta y oprime + Cmd/Ctrl + E. Deberías ver aparecer un editor rápido de CSS más arriba, mostrando la regla CSS + que le afecta. La edición rápida funciona también en atributos de de tipo clase e id. También puedes + utilizarlo en tus archivos LESS o SCSS. - Puedes crear nuevas reglas de la misma manera. Haz click en una de las etiquetas de más arriba y - oprime Cmd/Ctrl + E. Todavía no hay reglas para ese elemento, pero puedes hacer click en el + Puedes crear nuevas reglas de la misma manera. Haz clic en una de las etiquetas de más arriba + y oprime Cmd/Ctrl + E. Todavía no hay reglas para ese elemento, pero puedes hacer clic en el botón Nueva Regla para añadir una nueva regla a las etiquetas . @@ -80,14 +101,14 @@

    Edición rápida de CSS y JavaScript

    Visualiza cambios en archivos HTML y CSS en vivo en el navegador

    ¿Conoces ese baile de "guardar/recargar" que llevamos años haciendo? ¿Ése en el que haces cambios en tu - editor, oprimes guardar, cambias al navegador y recargas para por fin poder ver el resultado? Con Brackets, - ya no tienes que hacerlo. + editor, oprimes guardar, cambias al navegador y recargas para por fin poder ver el resultado? Con + Brackets, ya no tienes que hacerlo.

    ¡Brackets abrirá una conexión en vivo con tu navegador local y le enviará los cambios en el - archivo HTML y CSS conforme escribas! Puede que ya estés haciendo algo parecido con las herramientas de desarrollo - del navegador, pero con Brackets ya no necesitas copiar y pegar el código final de vuelta a tu editor. - ¡Tu código se ejecuta en el navegador, pero vive en tu editor! + archivo HTML y CSS conforme escribas! Puede que ya estés haciendo algo parecido con las herramientas de + desarrollo del navegador, pero con Brackets ya no necesitas copiar y pegar el código final de vuelta a tu + editor. ¡Tu código se ejecuta en el navegador, pero vive en tu editor!

    Resaltado en vivo de elementos HTML y reglas CSS

    @@ -98,7 +119,7 @@

    Resaltado en vivo de elementos HTML y reglas CSS

    - Si tienes instalado Google Chrome, puedes probarlo tú mismo. Haz click sobre el icono del rayo de la + Si tienes instalado Google Chrome, puedes probarlo tú mismo. Haz clic sobre el icono del rayo de la esquina superior derecha o presiona Cmd/Ctrl + Alt + P. Cuando la Vista previa dinámica está funcionando en un documento HTML, todos los documentos CSS relacionados se pueden editar en tiempo real. El icono pasará de gris a dorado cuando Brackets consiga establecer una conexión con tu navegador. @@ -106,60 +127,46 @@

    Resaltado en vivo de elementos HTML y reglas CSS

    Ahora, coloca el cursor sobre la etiqueta que se encuentra un poco más arriba. Observa cómo aparece el resaltado azul alrededor de la imagen en Chrome. Luego, utiliza Cmd/Ctrl + E para abrir las reglas de CSS existentes. Intenta cambiar el tamaño del borde de 10px a 20px o el color - del fondo de "transparent" a "hotpink". Si Brackets y tu navegador están funcionando en paralelo, verás los - cambios reflejados de manera instantánea en tu navegador. Genial, ¿verdad? + del fondo de "transparent" a "hotpink". Si Brackets y tu navegador están funcionando en paralelo, verás + los cambios reflejados de manera instantánea en tu navegador. Genial, ¿verdad?

    - Actualmente, Brackets sólo soporta Vista previa dinámica para HTML y CSS. Aún así, en la versión actual, los cambios - en archivos JavaScript son recargados automáticamente en el navegador cuando guardas. En stos momentos estamos - trabajando en el soporte de Vista previa dinámica para JavaScript. Las actualizaciones automáticas sólo son posibles - en Google Chrome, pero esperamos poder trasladar esta funcionalidad a todos los grandes navegadores. + Actualmente, Brackets sólo soporta Vista previa dinámica para HTML y CSS. Aún así, en la versión actual, + los cambios en archivos JavaScript son recargados automáticamente en el navegador cuando guardas. En estos + momentos estamos trabajando en el soporte de Vista previa dinámica para JavaScript. Las actualizaciones + automáticas sólo son posibles en Google Chrome, pero esperamos poder trasladar esta funcionalidad a todos + los grandes navegadores.

    Vista Rápida

    - Para aquellos que todavía no han memorizado las equivalencias de color entre Hex y RGB, Brackets permite ver - exactamente qué color se está utilizando rápida y fácilmente. Tanto en CSS como en HTML, simplemente mueve el - cursor sobre cualquier valor de color o gradiente y Brackets mostrará una previsualización del mismo de manera - automática. Lo mismo sirve para imágenes: simplemente pasa el cursor sobre la dirección de una imagen en Brackets, - y éste mostrará una vista en miniatura de la misma. + Para aquellos que todavía no han memorizado las equivalencias de color entre Hex y RGB, Brackets permite + ver exactamente qué color se está utilizando rápida y fácilmente. Tanto en CSS como en HTML, simplemente + mueve el cursor sobre cualquier valor de color o gradiente y Brackets mostrará una previsualización del + mismo de manera automática. Lo mismo sirve para imágenes: simplemente pasa el cursor sobre la dirección + de una imagen en Brackets, y éste mostrará una vista en miniatura de la misma.

    - Para probar la previsualización tú mismo, coloca el cursor en la etiqueta al principio de este - documento y oprime Cmd/Ctrl + E para abrir un editor CSS. Ahora, simplemente mueve el ratón sobre - cualquiera de los colores dentro del CSS. También puedes verlo funcionando en gradientes abriendo un editor - de CSS en la etiqueta y pasando el cursor por cualquiera de los valores para las imágenes de fondo. - Para probar la vista previa de imágenes, coloca el cursor sobre la imagen incluida antes en este documento. + Para probar la previsualización tú mismo, coloca el cursor en la etiqueta al principio de + este documento y oprime Cmd/Ctrl + E para abrir un editor CSS. Ahora, simplemente mueve el + cursor sobre cualquiera de los colores dentro del CSS. También puedes verlo funcionando en gradientes + abriendo un editor de CSS en la etiqueta y pasando el cursor por cualquiera de los valores + para las imágenes de fondo. Para probar la vista previa de imágenes, coloca el cursor sobre la imagen + incluida antes en éste documento.

    ¿Necesitas algo más? ¡Prueba una extensión!

    Además de todas las bondades naturales de Brackets, nuestra amplia y creciente comunidad de desarrolladores - de extensiones ha creado más de un centenar de extensiones que añaden útiles funcionalidades. Si hay algo que - necesitas que Brackets no soporte, es bastante probable que alguien haya construido una extensión para ello. - Para navegar o buscar en la lista de extensiones disponibles, selecciona Archivo > Gestionar - extensiones... y haz click en la pestaña "Disponibles". Cuando encuentres una que quieras, simplemente - presiona el botón "Instalar" a su derecha. -

    - -

    Proyectos en Brackets

    -

    - Para poder editar tu propio código en Brackets, puedes simplemente abrir la carpeta que contiene los archivos. - Brackets considera a la carpeta abierta como el "proyecto"; características como las Sugerencias de Código, - la Vista Previa y la Edición Rápida solo usan los archivos dentro de la carpeta abierta actualmente. + de extensiones ha creado cientos de extensiones que añaden útiles funcionalidades. Si hay algo que + necesitas que Brackets no soporte, es bastante probable que alguien haya construido una extensión para + ello. Para navegar o buscar en la lista de extensiones disponibles, selecciona Archivo > + Gestionar extensiones... y haz clic en la pestaña "Disponibles". Cuando encuentres una que + quieras, simplemente presiona el botón "Instalar" a su derecha.

    - - Una vez que estés listo para salir del proyecto de ejemplo y editar tu propio código, puedes usar el menú - despegable en la barra de la izquierda para cambiar carpetas. En estos momentos, el menú despegable dice - "Primeros Pasos" - la cual es la carpeta que contiene el archivo que estás viendo en estos momentos. Haz - click en el menú despegable y selecciona "Abrir carpeta…" para abrir tu carpeta. - También puedes usar el menú despegable para abrir las carpetas que abriste recientemente, incluyendo este - proyecto de ejemplo. - - diff --git a/src/nls/es/strings.js b/src/nls/es/strings.js index 12a87db4bf7..a75de0f64d3 100644 --- a/src/nls/es/strings.js +++ b/src/nls/es/strings.js @@ -426,6 +426,7 @@ define({ // Strings for main-view.html "EXPERIMENTAL_BUILD" : "versión experimental", + "RELEASE_BUILD" : "versión", "DEVELOPMENT_BUILD" : "versión de desarrollo", "RELOAD_FROM_DISK" : "Volver a cargar desde disco", "KEEP_CHANGES_IN_EDITOR" : "Conservar los cambios del editor", From 856cc7e036050ce48c6529d488f453b14328fdf0 Mon Sep 17 00:00:00 2001 From: "walf (Localization Automation)" Date: Tue, 28 Oct 2014 21:55:07 -0700 Subject: [PATCH 106/141] Updated by ALF automation. --- src/nls/fr/strings.js | 1 + src/nls/ja/strings.js | 971 +++++++++++++++++++++--------------------- 2 files changed, 487 insertions(+), 485 deletions(-) diff --git a/src/nls/fr/strings.js b/src/nls/fr/strings.js index c195faf3f36..8b6343e9b0f 100644 --- a/src/nls/fr/strings.js +++ b/src/nls/fr/strings.js @@ -426,6 +426,7 @@ define({ // Strings for main-view.html "EXPERIMENTAL_BUILD": "version expérimentale", + "RELEASE_BUILD": "version", "DEVELOPMENT_BUILD": "version de développement", "RELOAD_FROM_DISK": "Recharger à partir du disque", "KEEP_CHANGES_IN_EDITOR": "Conserver les modifications dans l’éditeur", diff --git a/src/nls/ja/strings.js b/src/nls/ja/strings.js index 0b6066a71eb..85316338794 100644 --- a/src/nls/ja/strings.js +++ b/src/nls/ja/strings.js @@ -31,269 +31,269 @@ define({ */ // General file io error strings - "GENERIC_ERROR": "(エラー {0})", - "NOT_FOUND_ERR": "ファイルが見つかりません。", - "NOT_READABLE_ERR": "ファイルを読み取れません。", - "EXCEEDS_MAX_FILE_SIZE": "{0} MB を超えるサイズのファイルは {APP_NAME} で開くことはできません。", - "NO_MODIFICATION_ALLOWED_ERR": "対象ディレクトリは変更できません。", - "NO_MODIFICATION_ALLOWED_ERR_FILE": "ファイルを変更する権限がありません。", - "CONTENTS_MODIFIED_ERR": "このファイルは {APP_NAME} 以外で変更されています。", - "UNSUPPORTED_ENCODING_ERR": "{APP_NAME} は現在 UTF-8 でエンコードされたテキストファイルのみをサポートしています。", - "FILE_EXISTS_ERR": "ファイルまたはディレクトリは既に存在しています。", - "FILE": "ファイル", - "FILE_TITLE": "ファイル", - "DIRECTORY": "ディレクトリ", - "DIRECTORY_TITLE": "ディレクトリ", - "DIRECTORY_NAMES_LEDE": "ディレクトリ名", - "FILENAMES_LEDE": "ファイル名", - "FILENAME": "ファイル名", - "DIRECTORY_NAME": "ディレクトリ名", + "GENERIC_ERROR": "(エラー {0})", + "NOT_FOUND_ERR": "ファイルが見つかりません。", + "NOT_READABLE_ERR": "ファイルを読み取れません。", + "EXCEEDS_MAX_FILE_SIZE": "{0} MB を超えるサイズのファイルは {APP_NAME} で開くことはできません。", + "NO_MODIFICATION_ALLOWED_ERR": "対象ディレクトリは変更できません。", + "NO_MODIFICATION_ALLOWED_ERR_FILE": "ファイルを変更する権限がありません。", + "CONTENTS_MODIFIED_ERR": "このファイルは {APP_NAME} 以外で変更されています。", + "UNSUPPORTED_ENCODING_ERR": "{APP_NAME} は現在 UTF-8 でエンコードされたテキストファイルのみをサポートしています。", + "FILE_EXISTS_ERR": "ファイルまたはディレクトリは既に存在しています。", + "FILE": "ファイル", + "FILE_TITLE": "ファイル", + "DIRECTORY": "ディレクトリ", + "DIRECTORY_TITLE": "ディレクトリ", + "DIRECTORY_NAMES_LEDE": "ディレクトリ名", + "FILENAMES_LEDE": "ファイル名", + "FILENAME": "ファイル名", + "DIRECTORY_NAME": "ディレクトリ名", // Project error strings - "ERROR_LOADING_PROJECT": "プロジェクトを読み込む際にエラーが発生しました。", - "OPEN_DIALOG_ERROR": "「ファイルを開く」ダイアログを表示する際にエラーが発生しました。(エラー {0})", - "REQUEST_NATIVE_FILE_SYSTEM_ERROR": "ディレクトリ {0} を読み込む際にエラーが発生しました。(エラー {1})", - "READ_DIRECTORY_ENTRIES_ERROR": "ディレクトリ {0} の内容を読み込む際にエラーが発生しました。(エラー {1})", + "ERROR_LOADING_PROJECT": "プロジェクトを読み込む際にエラーが発生しました。", + "OPEN_DIALOG_ERROR": "「ファイルを開く」ダイアログを表示する際にエラーが発生しました。(エラー {0})", + "REQUEST_NATIVE_FILE_SYSTEM_ERROR": "ディレクトリ {0} を読み込む際にエラーが発生しました。(エラー {1})", + "READ_DIRECTORY_ENTRIES_ERROR": "ディレクトリ {0} の内容を読み込む際にエラーが発生しました。(エラー {1})", // File open/save error string - "ERROR_OPENING_FILE_TITLE": "ファイルを開く際にエラーが発生しました。", - "ERROR_OPENING_FILE": "ファイル {0} を開く際にエラーが発生しました。{1}", - "ERROR_OPENING_FILES": "次のファイルを開くときにエラーが発生しました :", - "ERROR_RELOADING_FILE_TITLE": "ディスクから変更を再読み込みする際にエラーが発生しました。", - "ERROR_RELOADING_FILE": "ファイル {0} を再読込する際にエラーが発生しました。{1}", - "ERROR_SAVING_FILE_TITLE": "ファイルを保存する際にエラーが発生しました。", - "ERROR_SAVING_FILE": "ファイル {0} を保存する際にエラーが発生しました。{1}", - "ERROR_RENAMING_FILE_TITLE": "{0} の名前を変更する際にエラーが発生しました。", - "ERROR_RENAMING_FILE": "{2} {0} の名前を変更する際にエラーが発生しました。{1}", - "ERROR_DELETING_FILE_TITLE": "{0} を削除する際にエラーが発生しました。", - "ERROR_DELETING_FILE": "{2} {0} を削除する際にエラーが発生しました。{1}", - "INVALID_FILENAME_TITLE": "無効な{0}", - "INVALID_FILENAME_MESSAGE": "{0}にはシステムのすべての予約語、末尾のピリオド (.)、および次の文字を含めることはできません : {1}", - "ENTRY_WITH_SAME_NAME_EXISTS": "{0} という名前のファイルまたはディレクトリは既に存在します。", - "ERROR_CREATING_FILE_TITLE": "{0} を作成する際にエラーが発生しました。", - "ERROR_CREATING_FILE": "{0} {1} を作成する際にエラーが発生しました。{2}", - "ERROR_MIXED_DRAGDROP": "他のファイルを開いている間はフォルダーを開くことはできません。", + "ERROR_OPENING_FILE_TITLE": "ファイルを開く際にエラーが発生しました。", + "ERROR_OPENING_FILE": "ファイル {0} を開く際にエラーが発生しました。{1}", + "ERROR_OPENING_FILES": "次のファイルを開くときにエラーが発生しました :", + "ERROR_RELOADING_FILE_TITLE": "ディスクから変更を再読み込みする際にエラーが発生しました。", + "ERROR_RELOADING_FILE": "ファイル {0} を再読込する際にエラーが発生しました。{1}", + "ERROR_SAVING_FILE_TITLE": "ファイルを保存する際にエラーが発生しました。", + "ERROR_SAVING_FILE": "ファイル {0} を保存する際にエラーが発生しました。{1}", + "ERROR_RENAMING_FILE_TITLE": "{0} の名前を変更する際にエラーが発生しました。", + "ERROR_RENAMING_FILE": "{2} {0} の名前を変更する際にエラーが発生しました。{1}", + "ERROR_DELETING_FILE_TITLE": "{0} を削除する際にエラーが発生しました。", + "ERROR_DELETING_FILE": "{2} {0} を削除する際にエラーが発生しました。{1}", + "INVALID_FILENAME_TITLE": "無効な{0}", + "INVALID_FILENAME_MESSAGE": "{0}にはシステムのすべての予約語、末尾のピリオド (.)、および次の文字を含めることはできません : {1}", + "ENTRY_WITH_SAME_NAME_EXISTS": "{0} という名前のファイルまたはディレクトリは既に存在します。", + "ERROR_CREATING_FILE_TITLE": "{0} を作成する際にエラーが発生しました。", + "ERROR_CREATING_FILE": "{0} {1} を作成する際にエラーが発生しました。{2}", + "ERROR_MIXED_DRAGDROP": "他のファイルを開いている間はフォルダーを開くことはできません。", // User key map error strings - "ERROR_KEYMAP_TITLE": "ユーザーキーマップを読み込む際にエラーが発生しました", - "ERROR_KEYMAP_CORRUPT": "キーマップファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。", - "ERROR_LOADING_KEYMAP": "キーマップファイルが UTF-8 でエンコードされた有効なテキストファイルではないため、読み込めません", - "ERROR_RESTRICTED_COMMANDS": "これらのコマンドにショートカットを割り当て直すことはできません : {0}", - "ERROR_RESTRICTED_SHORTCUTS": "これらのショートカットを割り当て直すことはできません : {0}", - "ERROR_MULTIPLE_SHORTCUTS": "これらのコマンドに複数のショートカットを割り当て直しています : {0}", - "ERROR_DUPLICATE_SHORTCUTS": "これらのショートカットの複数のバインディングがあります : {0}", - "ERROR_INVALID_SHORTCUTS": "これらのショートカットは無効です : {0}", - "ERROR_NONEXISTENT_COMMANDS": "存在しないコマンドにショートカットを割り当てています : {0}", + "ERROR_KEYMAP_TITLE": "ユーザーキーマップを読み込む際にエラーが発生しました", + "ERROR_KEYMAP_CORRUPT": "キーマップファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。", + "ERROR_LOADING_KEYMAP": "キーマップファイルが UTF-8 でエンコードされた有効なテキストファイルではないため、読み込めません", + "ERROR_RESTRICTED_COMMANDS": "これらのコマンドにショートカットを割り当て直すことはできません : {0}", + "ERROR_RESTRICTED_SHORTCUTS": "これらのショートカットを割り当て直すことはできません : {0}", + "ERROR_MULTIPLE_SHORTCUTS": "これらのコマンドに複数のショートカットを割り当て直しています : {0}", + "ERROR_DUPLICATE_SHORTCUTS": "これらのショートカットの複数のバインディングがあります : {0}", + "ERROR_INVALID_SHORTCUTS": "これらのショートカットは無効です : {0}", + "ERROR_NONEXISTENT_COMMANDS": "存在しないコマンドにショートカットを割り当てています : {0}", // Application preferences corrupt error strings - "ERROR_PREFS_CORRUPT_TITLE": "環境設定を読み込む際にエラーが発生しました。", - "ERROR_PREFS_CORRUPT": "環境設定ファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。変更を反映するには、{APP_NAME} を再起動する必要があります。", + "ERROR_PREFS_CORRUPT_TITLE": "環境設定を読み込む際にエラーが発生しました。", + "ERROR_PREFS_CORRUPT": "環境設定ファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。変更を反映するには、{APP_NAME} を再起動する必要があります。", // Application error strings - "ERROR_IN_BROWSER_TITLE": "{APP_NAME} は、まだブラウザー上で実行されていません。", - "ERROR_IN_BROWSER": "{APP_NAME} は HTML で構築されていますが、デスクトップアプリとして実行することで、ローカルファイルを編集することができます。{APP_NAME} を実行するために、github.com/adobe/brackets-shell リポジトリのアプリケーションシェルを使用してください。", + "ERROR_IN_BROWSER_TITLE": "{APP_NAME} は、まだブラウザー上で実行されていません。", + "ERROR_IN_BROWSER": "{APP_NAME} は HTML で構築されていますが、デスクトップアプリとして実行することで、ローカルファイルを編集することができます。{APP_NAME} を実行するために、github.com/adobe/brackets-shell リポジトリのアプリケーションシェルを使用してください。", // ProjectManager max files error string - "ERROR_MAX_FILES_TITLE": "ファイルのインデックス時にエラーが発生しました。", - "ERROR_MAX_FILES": "このプロジェクトには 30,000 個以上のファイルが含まれています。複数のファイルを操作する機能が無効になるか、プロジェクトが空であるかのように動作します。大きいプロジェクトの操作方法の詳細を表示。", + "ERROR_MAX_FILES_TITLE": "ファイルのインデックス時にエラーが発生しました。", + "ERROR_MAX_FILES": "このプロジェクトには 30,000 個以上のファイルが含まれています。複数のファイルを操作する機能が無効になるか、プロジェクトが空であるかのように動作します。大きいプロジェクトの操作方法の詳細を表示。", // Live Preview error strings - "ERROR_LAUNCHING_BROWSER_TITLE": "ブラウザーの起動時にエラーが発生しました。", - "ERROR_CANT_FIND_CHROME": "Google Chrome ブラウザーが見つかりません。インストールされていることを確認してください。", - "ERROR_LAUNCHING_BROWSER": "ブラウザーの起動時にエラーが発生しました。(エラー {0})", + "ERROR_LAUNCHING_BROWSER_TITLE": "ブラウザーの起動時にエラーが発生しました。", + "ERROR_CANT_FIND_CHROME": "Google Chrome ブラウザーが見つかりません。インストールされていることを確認してください。", + "ERROR_LAUNCHING_BROWSER": "ブラウザーの起動時にエラーが発生しました。(エラー {0})", - "LIVE_DEVELOPMENT_ERROR_TITLE": "ライブプレビューのエラーが発生しました。", - "LIVE_DEVELOPMENT_RELAUNCH_TITLE": "ブラウザーに接続しています", - "LIVE_DEVELOPMENT_ERROR_MESSAGE": "ライブプレビューに接続するには、リモートデバッグを有効にして Chrome を再起動する必要があります。

    Chrome を再起動してリモートデバッグを有効にしますか?

    ", - "LIVE_DEV_LOADING_ERROR_MESSAGE": "ライブプレビューページを読み込めません。", - "LIVE_DEV_NEED_HTML_MESSAGE": "ライブプレビューを起動するには、HTML ファイルを開くか、index.html ファイルがプロジェクトに含まれていることを確認してください。", - "LIVE_DEV_NEED_BASEURL_MESSAGE": "サーバー側ファイルでライブプレビューを起動するには、このプロジェクトのベース URL を指定する必要があります。", - "LIVE_DEV_SERVER_NOT_READY_MESSAGE": "ファイルのライブプレビューで使用する HTTP サーバーの起動時にエラーが発生しました。もう一度実行してください。", - "LIVE_DEVELOPMENT_INFO_TITLE": "ライブプレビューへようこそ", - "LIVE_DEVELOPMENT_INFO_MESSAGE": "ライブプレビューにより {APP_NAME} がブラウザーに接続しました。ブラウザーで HTML ファイルのプレビューが起動し、コードを編集すると直ちにプレビューが更新されます。

    この初期バージョンの {APP_NAME} では、Google Chrome でのみライブプレビューが機能し、CSS または HTML ファイルの編集時にのみライブ更新が行われます。 JavaScript ファイルへの変更は、保存時に自動的にリロードされます。

    (このメッセージは一度しか表示されません。)", - "LIVE_DEVELOPMENT_TROUBLESHOOTING": "詳しくは、ライブプレビューの接続エラーに関するトラブルシューティングを参照してください。", + "LIVE_DEVELOPMENT_ERROR_TITLE": "ライブプレビューのエラーが発生しました。", + "LIVE_DEVELOPMENT_RELAUNCH_TITLE": "ブラウザーに接続しています", + "LIVE_DEVELOPMENT_ERROR_MESSAGE": "ライブプレビューに接続するには、リモートデバッグを有効にして Chrome を再起動する必要があります。

    Chrome を再起動してリモートデバッグを有効にしますか?

    ", + "LIVE_DEV_LOADING_ERROR_MESSAGE": "ライブプレビューページを読み込めません。", + "LIVE_DEV_NEED_HTML_MESSAGE": "ライブプレビューを起動するには、HTML ファイルを開くか、index.html ファイルがプロジェクトに含まれていることを確認してください。", + "LIVE_DEV_NEED_BASEURL_MESSAGE": "サーバー側ファイルでライブプレビューを起動するには、このプロジェクトのベース URL を指定する必要があります。", + "LIVE_DEV_SERVER_NOT_READY_MESSAGE": "ファイルのライブプレビューで使用する HTTP サーバーの起動時にエラーが発生しました。もう一度実行してください。", + "LIVE_DEVELOPMENT_INFO_TITLE": "ライブプレビューへようこそ", + "LIVE_DEVELOPMENT_INFO_MESSAGE": "ライブプレビューにより {APP_NAME} がブラウザーに接続しました。ブラウザーで HTML ファイルのプレビューが起動し、コードを編集すると直ちにプレビューが更新されます。

    この初期バージョンの {APP_NAME} では、Google Chrome でのみライブプレビューが機能し、CSS または HTML ファイルの編集時にのみライブ更新が行われます。 JavaScript ファイルへの変更は、保存時に自動的にリロードされます。

    (このメッセージは一度しか表示されません。)", + "LIVE_DEVELOPMENT_TROUBLESHOOTING": "詳しくは、ライブプレビューの接続エラーに関するトラブルシューティングを参照してください。", - "LIVE_DEV_STATUS_TIP_NOT_CONNECTED": "ライブプレビュー", - "LIVE_DEV_STATUS_TIP_PROGRESS1": "ライブプレビュー : 接続中\u2026", - "LIVE_DEV_STATUS_TIP_PROGRESS2": "ライブプレビュー : 初期化中\u2026", - "LIVE_DEV_STATUS_TIP_CONNECTED": "ライブプレビューの接続を切断します", - "LIVE_DEV_STATUS_TIP_OUT_OF_SYNC": "ライブプレビュー (ファイルを保存して更新)", - "LIVE_DEV_STATUS_TIP_SYNC_ERROR": "ライブプレビュー (シンタックスエラーのため更新されません)", + "LIVE_DEV_STATUS_TIP_NOT_CONNECTED": "ライブプレビュー", + "LIVE_DEV_STATUS_TIP_PROGRESS1": "ライブプレビュー : 接続中\u2026", + "LIVE_DEV_STATUS_TIP_PROGRESS2": "ライブプレビュー : 初期化中\u2026", + "LIVE_DEV_STATUS_TIP_CONNECTED": "ライブプレビューの接続を切断します", + "LIVE_DEV_STATUS_TIP_OUT_OF_SYNC": "ライブプレビュー (ファイルを保存して更新)", + "LIVE_DEV_STATUS_TIP_SYNC_ERROR": "ライブプレビュー (シンタックスエラーのため更新されません)", - "LIVE_DEV_DETACHED_REPLACED_WITH_DEVTOOLS": "ブラウザーの開発ツールが開いているため、ライブプレビューはキャンセルされました", - "LIVE_DEV_DETACHED_TARGET_CLOSED": "ブラウザーでページが閉じられたため、ライブプレビューはキャンセルされました", - "LIVE_DEV_NAVIGATED_AWAY": "ブラウザーで現在のプロジェクトに含まれないページに移動したため、ライブプレビューはキャンセルされました", - "LIVE_DEV_CLOSED_UNKNOWN_REASON": "不明な原因 ({0}) によってライブプレビューはキャンセルされました", + "LIVE_DEV_DETACHED_REPLACED_WITH_DEVTOOLS": "ブラウザーの開発ツールが開いているため、ライブプレビューはキャンセルされました", + "LIVE_DEV_DETACHED_TARGET_CLOSED": "ブラウザーでページが閉じられたため、ライブプレビューはキャンセルされました", + "LIVE_DEV_NAVIGATED_AWAY": "ブラウザーで現在のプロジェクトに含まれないページに移動したため、ライブプレビューはキャンセルされました", + "LIVE_DEV_CLOSED_UNKNOWN_REASON": "不明な原因 ({0}) によってライブプレビューはキャンセルされました", - "SAVE_CLOSE_TITLE": "変更を保存", - "SAVE_CLOSE_MESSAGE": "文書 {0} に加えた変更を保存しますか?", - "SAVE_CLOSE_MULTI_MESSAGE": "以下のファイルに対する変更を保存しますか?", - "EXT_MODIFIED_TITLE": "外部で変更されました。", - "CONFIRM_FOLDER_DELETE_TITLE": "削除の確認", - "CONFIRM_FOLDER_DELETE": "{0} フォルダーを削除してもよろしいですか?", - "FILE_DELETED_TITLE": "ファイルは削除されました", - "EXT_MODIFIED_WARNING": "{0} はディスク上で変更されています。

    ファイルを保存し、これらの変更を上書きしますか。", - "EXT_MODIFIED_MESSAGE": "{0} はディスク上で変更されていますが、{APP_NAME} 内にも保存されていない変更があります。

    どちらのバージョンを保持しますか?", - "EXT_DELETED_MESSAGE": "{0} はディスク上で削除されていますが、{APP_NAME} 内に保存されていない変更があります。

    変更を保持しますか?", + "SAVE_CLOSE_TITLE": "変更を保存", + "SAVE_CLOSE_MESSAGE": "文書 {0} に加えた変更を保存しますか?", + "SAVE_CLOSE_MULTI_MESSAGE": "以下のファイルに対する変更を保存しますか?", + "EXT_MODIFIED_TITLE": "外部で変更されました。", + "CONFIRM_FOLDER_DELETE_TITLE": "削除の確認", + "CONFIRM_FOLDER_DELETE": "{0} フォルダーを削除してもよろしいですか?", + "FILE_DELETED_TITLE": "ファイルは削除されました", + "EXT_MODIFIED_WARNING": "{0} はディスク上で変更されています。

    ファイルを保存し、これらの変更を上書きしますか。", + "EXT_MODIFIED_MESSAGE": "{0} はディスク上で変更されていますが、{APP_NAME} 内にも保存されていない変更があります。

    どちらのバージョンを保持しますか?", + "EXT_DELETED_MESSAGE": "{0} はディスク上で削除されていますが、{APP_NAME} 内に保存されていない変更があります。

    変更を保持しますか?", // Generic dialog/button labels - "DONE": "完了", - "OK": "OK", - "CANCEL": "キャンセル", - "DONT_SAVE": "保存しない", - "SAVE": "保存", - "SAVE_AS": "名前を付けて保存\u2026", - "SAVE_AND_OVERWRITE": "上書き", - "DELETE": "削除", - "BUTTON_YES": "はい", - "BUTTON_NO": "いいえ", + "DONE": "完了", + "OK": "OK", + "CANCEL": "キャンセル", + "DONT_SAVE": "保存しない", + "SAVE": "保存", + "SAVE_AS": "名前を付けて保存\u2026", + "SAVE_AND_OVERWRITE": "上書き", + "DELETE": "削除", + "BUTTON_YES": "はい", + "BUTTON_NO": "いいえ", // Find, Replace, Find in Files - "FIND_MATCH_INDEX": "{0} / {1}", - "FIND_NO_RESULTS": "該当なし", - "FIND_QUERY_PLACEHOLDER": "検索\u2026", - "REPLACE_PLACEHOLDER": "\u2026 に置換", - "BUTTON_REPLACE_ALL": "バッチ\u2026", - "BUTTON_REPLACE_ALL_IN_FILES": "置換\u2026", - "BUTTON_REPLACE": "置換", - "BUTTON_NEXT": "\u25B6", - "BUTTON_PREV": "\u25C0", - "BUTTON_NEXT_HINT": "次の候補に移動", - "BUTTON_PREV_HINT": "前の候補に移動", - "BUTTON_CASESENSITIVE_HINT": "大文字と小文字を区別", - "BUTTON_REGEXP_HINT": "正規表現", - "REPLACE_WITHOUT_UNDO_WARNING_TITLE": "取り消し情報を保存せずに置換", - "REPLACE_WITHOUT_UNDO_WARNING": "{0} 個を超えるファイルを変更する必要があるため、{APP_NAME} によってディスク上の開かれていないファイルが変更されます。
    これらのファイルで行った置換は取り消しできません。", - "BUTTON_REPLACE_WITHOUT_UNDO": "取り消し情報を保存せずに置換", + "FIND_MATCH_INDEX": "{0} / {1}", + "FIND_NO_RESULTS": "該当なし", + "FIND_QUERY_PLACEHOLDER": "検索\u2026", + "REPLACE_PLACEHOLDER": "\u2026 に置換", + "BUTTON_REPLACE_ALL": "バッチ\u2026", + "BUTTON_REPLACE_ALL_IN_FILES": "置換\u2026", + "BUTTON_REPLACE": "置換", + "BUTTON_NEXT": "\u25B6", + "BUTTON_PREV": "\u25C0", + "BUTTON_NEXT_HINT": "次の候補に移動", + "BUTTON_PREV_HINT": "前の候補に移動", + "BUTTON_CASESENSITIVE_HINT": "大文字と小文字を区別", + "BUTTON_REGEXP_HINT": "正規表現", + "REPLACE_WITHOUT_UNDO_WARNING_TITLE": "取り消し情報を保存せずに置換", + "REPLACE_WITHOUT_UNDO_WARNING": "{0} 個を超えるファイルを変更する必要があるため、{APP_NAME} によってディスク上の開かれていないファイルが変更されます。
    これらのファイルで行った置換は取り消しできません。", + "BUTTON_REPLACE_WITHOUT_UNDO": "取り消し情報を保存せずに置換", - "OPEN_FILE": "ファイルを開く", - "SAVE_FILE_AS": "ファイルを保存", - "CHOOSE_FOLDER": "フォルダーを選択", + "OPEN_FILE": "ファイルを開く", + "SAVE_FILE_AS": "ファイルを保存", + "CHOOSE_FOLDER": "フォルダーを選択", - "RELEASE_NOTES": "リリースノート", - "NO_UPDATE_TITLE": "最新バージョンです。", - "NO_UPDATE_MESSAGE": "{APP_NAME} の最新バージョンを実行中です。", + "RELEASE_NOTES": "リリースノート", + "NO_UPDATE_TITLE": "最新バージョンです。", + "NO_UPDATE_MESSAGE": "{APP_NAME} の最新バージョンを実行中です。", // Find and Replace - "FIND_REPLACE_TITLE_LABEL": "置換対象", - "FIND_REPLACE_TITLE_WITH": "置換後の文字列", - "FIND_TITLE_LABEL": "検索結果", - "FIND_TITLE_SUMMARY": "— {0} {1} {2} ({3})", + "FIND_REPLACE_TITLE_LABEL": "置換対象", + "FIND_REPLACE_TITLE_WITH": "置換後の文字列", + "FIND_TITLE_LABEL": "検索結果", + "FIND_TITLE_SUMMARY": "— {0} {1} {2} ({3})", // Find in Files - "FIND_NUM_FILES": "{0} {1}", - "FIND_IN_FILES_SCOPED": "{0} 内", - "FIND_IN_FILES_NO_SCOPE": "プロジェクト内", - "FIND_IN_FILES_ZERO_FILES": "フィルターは {0}の全ファイルを除外します", - "FIND_IN_FILES_FILE": "ファイル", - "FIND_IN_FILES_FILES": "ファイル", - "FIND_IN_FILES_MATCH": "が見つかりました", - "FIND_IN_FILES_MATCHES": "件見つかりました", - "FIND_IN_FILES_MORE_THAN": "以上", - "FIND_IN_FILES_PAGING": "{0}—{1}", - "FIND_IN_FILES_FILE_PATH": "{0} {2} {1}", - "FIND_IN_FILES_EXPAND_COLLAPSE": "Ctrl / Command キーをクリックしてすべて展開 / 折りたたみ", - "REPLACE_IN_FILES_ERRORS_TITLE": "置換エラー", - "REPLACE_IN_FILES_ERRORS": "次のファイルは検索の後で変更されているか、書き込むことができないため、変更されていません。", + "FIND_NUM_FILES": "{0} {1}", + "FIND_IN_FILES_SCOPED": "{0} 内", + "FIND_IN_FILES_NO_SCOPE": "プロジェクト内", + "FIND_IN_FILES_ZERO_FILES": "フィルターは {0}の全ファイルを除外します", + "FIND_IN_FILES_FILE": "ファイル", + "FIND_IN_FILES_FILES": "ファイル", + "FIND_IN_FILES_MATCH": "が見つかりました", + "FIND_IN_FILES_MATCHES": "件見つかりました", + "FIND_IN_FILES_MORE_THAN": "以上", + "FIND_IN_FILES_PAGING": "{0}—{1}", + "FIND_IN_FILES_FILE_PATH": "{0} {2} {1}", + "FIND_IN_FILES_EXPAND_COLLAPSE": "Ctrl / Command キーをクリックしてすべて展開 / 折りたたみ", + "REPLACE_IN_FILES_ERRORS_TITLE": "置換エラー", + "REPLACE_IN_FILES_ERRORS": "次のファイルは検索の後で変更されているか、書き込むことができないため、変更されていません。", - "ERROR_FETCHING_UPDATE_INFO_TITLE": "更新情報を取得する際にエラーが発生しました。", - "ERROR_FETCHING_UPDATE_INFO_MSG": "サーバーから最新の更新情報を取得する際にエラーが発生しました。インターネット接続を確認してリトライしてください。", + "ERROR_FETCHING_UPDATE_INFO_TITLE": "更新情報を取得する際にエラーが発生しました。", + "ERROR_FETCHING_UPDATE_INFO_MSG": "サーバーから最新の更新情報を取得する際にエラーが発生しました。インターネット接続を確認してリトライしてください。", // File exclusion filters - "NEW_FILE_FILTER": "新規除外セット\u2026", - "CLEAR_FILE_FILTER": "ファイルを除外しない", - "NO_FILE_FILTER": "除外されたファイルはありません", - "EXCLUDE_FILE_FILTER": "{0} を除外", - "EDIT_FILE_FILTER": "編集\u2026", - "FILE_FILTER_DIALOG": "除外セットを編集", - "FILE_FILTER_INSTRUCTIONS": "次の文字列やサブストリング、またはワイルドカードのいずれかに一致するファイルおよびフォルダーを除外します。各文字列を新しい行に入力してください。", - "FILTER_NAME_PLACEHOLDER": "この除外セットに名前を付ける (オプション)", - "FILE_FILTER_CLIPPED_SUFFIX": "さらに {0} 件", - "FILTER_COUNTING_FILES": "ファイル数を確認中\u2026", - "FILTER_FILE_COUNT": "{2}の {1} ファイル中 {0} ファイルを許可", - "FILTER_FILE_COUNT_ALL": "{1}の全 {0} ファイルを許可", + "NEW_FILE_FILTER": "新規除外セット\u2026", + "CLEAR_FILE_FILTER": "ファイルを除外しない", + "NO_FILE_FILTER": "除外されたファイルはありません", + "EXCLUDE_FILE_FILTER": "{0} を除外", + "EDIT_FILE_FILTER": "編集\u2026", + "FILE_FILTER_DIALOG": "除外セットを編集", + "FILE_FILTER_INSTRUCTIONS": "次の文字列やサブストリング、またはワイルドカードのいずれかに一致するファイルおよびフォルダーを除外します。各文字列を新しい行に入力してください。", + "FILTER_NAME_PLACEHOLDER": "この除外セットに名前を付ける (オプション)", + "FILE_FILTER_CLIPPED_SUFFIX": "さらに {0} 件", + "FILTER_COUNTING_FILES": "ファイル数を確認中\u2026", + "FILTER_FILE_COUNT": "{2}の {1} ファイル中 {0} ファイルを許可", + "FILTER_FILE_COUNT_ALL": "{1}の全 {0} ファイルを許可", // Quick Edit - "ERROR_QUICK_EDIT_PROVIDER_NOT_FOUND": "現在のカーソル位置で行えるクイック編集はありません", - "ERROR_CSSQUICKEDIT_BETWEENCLASSES": "CSS クイック編集 : カーソルを単一のクラス名に置いてください", - "ERROR_CSSQUICKEDIT_CLASSNOTFOUND": "CSS クイック編集 : 不完全なクラス属性", - "ERROR_CSSQUICKEDIT_IDNOTFOUND": "CSS クイック編集 : 不完全な ID 属性", - "ERROR_CSSQUICKEDIT_UNSUPPORTEDATTR": "CSS クイック編集 : カーソルをタグ、クラスまたは ID に置いてください", - "ERROR_TIMINGQUICKEDIT_INVALIDSYNTAX": "CSS タイミング機能のクイック編集 : 無効なシンタックス", - "ERROR_JSQUICKEDIT_FUNCTIONNOTFOUND": "JS クイック編集 : カーソルを関数名に置いてください", + "ERROR_QUICK_EDIT_PROVIDER_NOT_FOUND": "現在のカーソル位置で行えるクイック編集はありません", + "ERROR_CSSQUICKEDIT_BETWEENCLASSES": "CSS クイック編集 : カーソルを単一のクラス名に置いてください", + "ERROR_CSSQUICKEDIT_CLASSNOTFOUND": "CSS クイック編集 : 不完全なクラス属性", + "ERROR_CSSQUICKEDIT_IDNOTFOUND": "CSS クイック編集 : 不完全な ID 属性", + "ERROR_CSSQUICKEDIT_UNSUPPORTEDATTR": "CSS クイック編集 : カーソルをタグ、クラスまたは ID に置いてください", + "ERROR_TIMINGQUICKEDIT_INVALIDSYNTAX": "CSS タイミング機能のクイック編集 : 無効なシンタックス", + "ERROR_JSQUICKEDIT_FUNCTIONNOTFOUND": "JS クイック編集 : カーソルを関数名に置いてください", // Quick Docs - "ERROR_QUICK_DOCS_PROVIDER_NOT_FOUND": "現在のカーソル位置で使用できるクイックドキュメントはありません", + "ERROR_QUICK_DOCS_PROVIDER_NOT_FOUND": "現在のカーソル位置で使用できるクイックドキュメントはありません", /** * ProjectManager */ - "PROJECT_LOADING": "読み込んでいます\u2026", - "UNTITLED": "名称未設定", - "WORKING_FILES": "作業中ファイル", + "PROJECT_LOADING": "読み込んでいます\u2026", + "UNTITLED": "名称未設定", + "WORKING_FILES": "作業中ファイル", /** * MainViewManager */ - "TOP": "上", - "BOTTOM": "下", - "LEFT": "左", - "RIGHT": "右", + "TOP": "上", + "BOTTOM": "下", + "LEFT": "左", + "RIGHT": "右", - "CMD_SPLITVIEW_NONE": "分割なし", - "CMD_SPLITVIEW_VERTICAL": "左右分割", - "CMD_SPLITVIEW_HORIZONTAL": "上下分割", - "SPLITVIEW_MENU_TOOLTIP": "エディターを垂直方向 / 水平方向に分割", - "GEAR_MENU_TOOLTIP": "ワーキングセットを構成", + "CMD_SPLITVIEW_NONE": "分割なし", + "CMD_SPLITVIEW_VERTICAL": "左右分割", + "CMD_SPLITVIEW_HORIZONTAL": "上下分割", + "SPLITVIEW_MENU_TOOLTIP": "エディターを垂直方向 / 水平方向に分割", + "GEAR_MENU_TOOLTIP": "ワーキングセットを構成", - "SPLITVIEW_INFO_TITLE": "既に開かれています", - "SPLITVIEW_MULTIPANE_WARNING": "ファイルは他のペインで既に開かれています。{APP_NAME} ではまもなく複数のペインで同じファイルを開くことが可能になる予定です。それまでは、ファイルは既に開かれているペインで表示されます。

    (このメッセージは一度しか表示されません。)", + "SPLITVIEW_INFO_TITLE": "既に開かれています", + "SPLITVIEW_MULTIPANE_WARNING": "ファイルは他のペインで既に開かれています。{APP_NAME} ではまもなく複数のペインで同じファイルを開くことが可能になる予定です。それまでは、ファイルは既に開かれているペインで表示されます。

    (このメッセージは一度しか表示されません。)", /** * Keyboard modifier names */ - "KEYBOARD_CTRL": "Ctrl", - "KEYBOARD_SHIFT": "Shift", - "KEYBOARD_SPACE": "Space", + "KEYBOARD_CTRL": "Ctrl", + "KEYBOARD_SHIFT": "Shift", + "KEYBOARD_SPACE": "Space", /** * StatusBar strings */ - "STATUSBAR_CURSOR_POSITION": "行 {0}, 列 {1}", - "STATUSBAR_SELECTION_CH_SINGULAR": " \u2014 {0} 列を選択", - "STATUSBAR_SELECTION_CH_PLURAL": " \u2014 {0} 列を選択", - "STATUSBAR_SELECTION_LINE_SINGULAR": " \u2014 {0} 行を選択", - "STATUSBAR_SELECTION_LINE_PLURAL": " \u2014 {0} 行を選択", - "STATUSBAR_SELECTION_MULTIPLE": " \u2014 選択範囲 {0}", - "STATUSBAR_INDENT_TOOLTIP_SPACES": "インデントをスペースに変換する", - "STATUSBAR_INDENT_TOOLTIP_TABS": "インデントをタブに変換する", - "STATUSBAR_INDENT_SIZE_TOOLTIP_SPACES": "インデントに用いるスペースの数を変更", - "STATUSBAR_INDENT_SIZE_TOOLTIP_TABS": "タブ幅を変更", - "STATUSBAR_SPACES": "スペース :", - "STATUSBAR_TAB_SIZE": "タブ幅 :", - "STATUSBAR_LINE_COUNT_SINGULAR": "\u2014 {0} 行", - "STATUSBAR_LINE_COUNT_PLURAL": "\u2014 {0} 行", - "STATUSBAR_USER_EXTENSIONS_DISABLED": "拡張機能無効", - "STATUSBAR_INSERT": "INS", - "STATUSBAR_OVERWRITE": "OVR", - "STATUSBAR_INSOVR_TOOLTIP": "クリックして挿入 (INS) モードと上書き (OVR) モード間のカーソルを切り替え", - "STATUSBAR_LANG_TOOLTIP": "クリックしてファイルタイプを変更", - "STATUSBAR_CODE_INSPECTION_TOOLTIP": "{0}。クリックしてレポートパネルを切り替えます。", - "STATUSBAR_DEFAULT_LANG": "(指定なし)", - "STATUSBAR_SET_DEFAULT_LANG": ".{0} ファイルのデフォルトとして設定", + "STATUSBAR_CURSOR_POSITION": "行 {0}, 列 {1}", + "STATUSBAR_SELECTION_CH_SINGULAR": " \u2014 {0} 列を選択", + "STATUSBAR_SELECTION_CH_PLURAL": " \u2014 {0} 列を選択", + "STATUSBAR_SELECTION_LINE_SINGULAR": " \u2014 {0} 行を選択", + "STATUSBAR_SELECTION_LINE_PLURAL": " \u2014 {0} 行を選択", + "STATUSBAR_SELECTION_MULTIPLE": " \u2014 選択範囲 {0}", + "STATUSBAR_INDENT_TOOLTIP_SPACES": "インデントをスペースに変換する", + "STATUSBAR_INDENT_TOOLTIP_TABS": "インデントをタブに変換する", + "STATUSBAR_INDENT_SIZE_TOOLTIP_SPACES": "インデントに用いるスペースの数を変更", + "STATUSBAR_INDENT_SIZE_TOOLTIP_TABS": "タブ幅を変更", + "STATUSBAR_SPACES": "スペース :", + "STATUSBAR_TAB_SIZE": "タブ幅 :", + "STATUSBAR_LINE_COUNT_SINGULAR": "\u2014 {0} 行", + "STATUSBAR_LINE_COUNT_PLURAL": "\u2014 {0} 行", + "STATUSBAR_USER_EXTENSIONS_DISABLED": "拡張機能無効", + "STATUSBAR_INSERT": "INS", + "STATUSBAR_OVERWRITE": "OVR", + "STATUSBAR_INSOVR_TOOLTIP": "クリックして挿入 (INS) モードと上書き (OVR) モード間のカーソルを切り替え", + "STATUSBAR_LANG_TOOLTIP": "クリックしてファイルタイプを変更", + "STATUSBAR_CODE_INSPECTION_TOOLTIP": "{0}。クリックしてレポートパネルを切り替えます。", + "STATUSBAR_DEFAULT_LANG": "(指定なし)", + "STATUSBAR_SET_DEFAULT_LANG": ".{0} ファイルのデフォルトとして設定", // CodeInspection: errors/warnings - "ERRORS_PANEL_TITLE_MULTIPLE": "{0} 個の問題", - "SINGLE_ERROR": "1 個の {0} の問題", - "MULTIPLE_ERRORS": "{1} 個の {0} の問題", - "NO_ERRORS": "{0} の問題は検出されませんでした - Good job!", - "NO_ERRORS_MULTIPLE_PROVIDER": "問題は検出されませんでした - Good job!", - "LINT_DISABLED": "Lint チェックは使用できません", - "NO_LINT_AVAILABLE": "{0} に使用できる Lint チェッカーがありません", - "NOTHING_TO_LINT": "Lint チェックするファイルがありません", - "LINTER_TIMED_OUT": "{0} は {1} ミリ秒待機した後でタイムアウトしました", - "LINTER_FAILED": "{0} は次のエラーにより終了しました : {1}", + "ERRORS_PANEL_TITLE_MULTIPLE": "{0} 個の問題", + "SINGLE_ERROR": "1 個の {0} の問題", + "MULTIPLE_ERRORS": "{1} 個の {0} の問題", + "NO_ERRORS": "{0} の問題は検出されませんでした - Good job!", + "NO_ERRORS_MULTIPLE_PROVIDER": "問題は検出されませんでした - Good job!", + "LINT_DISABLED": "Lint チェックは使用できません", + "NO_LINT_AVAILABLE": "{0} に使用できる Lint チェッカーがありません", + "NOTHING_TO_LINT": "Lint チェックするファイルがありません", + "LINTER_TIMED_OUT": "{0} は {1} ミリ秒待機した後でタイムアウトしました", + "LINTER_FAILED": "{0} は次のエラーにより終了しました : {1}", /** @@ -301,328 +301,329 @@ define({ */ // File menu commands - "FILE_MENU": "ファイル", - "CMD_FILE_NEW_UNTITLED": "新規作成", - "CMD_FILE_NEW": "新しいファイル", - "CMD_FILE_NEW_FOLDER": "新しいフォルダー", - "CMD_FILE_OPEN": "開く\u2026", - "CMD_ADD_TO_WORKING_SET": "ワーキングセットに開く", - "CMD_OPEN_DROPPED_FILES": "ドロップしたファイルを開く", - "CMD_OPEN_FOLDER": "フォルダーを開く\u2026", - "CMD_FILE_CLOSE": "閉じる", - "CMD_FILE_CLOSE_ALL": "すべて閉じる", - "CMD_FILE_CLOSE_LIST": "リストを閉じる", - "CMD_FILE_CLOSE_OTHERS": "他をすべて閉じる", - "CMD_FILE_CLOSE_ABOVE": "上をすべて閉じる", - "CMD_FILE_CLOSE_BELOW": "下をすべて閉じる", - "CMD_FILE_SAVE": "保存", - "CMD_FILE_SAVE_ALL": "すべて保存", - "CMD_FILE_SAVE_AS": "名前を付けて保存\u2026", - "CMD_LIVE_FILE_PREVIEW": "ライブプレビュー", - "CMD_RELOAD_LIVE_PREVIEW": "ライブプレビューを強制的に再読込み", - "CMD_PROJECT_SETTINGS": "プロジェクト設定\u2026", - "CMD_FILE_RENAME": "ファイル名変更", - "CMD_FILE_DELETE": "削除", - "CMD_INSTALL_EXTENSION": "拡張機能をインストール\u2026", - "CMD_EXTENSION_MANAGER": "拡張機能マネージャー\u2026", - "CMD_FILE_REFRESH": "ファイルツリーを更新", - "CMD_QUIT": "終了する", + "FILE_MENU": "ファイル", + "CMD_FILE_NEW_UNTITLED": "新規作成", + "CMD_FILE_NEW": "新しいファイル", + "CMD_FILE_NEW_FOLDER": "新しいフォルダー", + "CMD_FILE_OPEN": "開く\u2026", + "CMD_ADD_TO_WORKING_SET": "ワーキングセットに開く", + "CMD_OPEN_DROPPED_FILES": "ドロップしたファイルを開く", + "CMD_OPEN_FOLDER": "フォルダーを開く\u2026", + "CMD_FILE_CLOSE": "閉じる", + "CMD_FILE_CLOSE_ALL": "すべて閉じる", + "CMD_FILE_CLOSE_LIST": "リストを閉じる", + "CMD_FILE_CLOSE_OTHERS": "他をすべて閉じる", + "CMD_FILE_CLOSE_ABOVE": "上をすべて閉じる", + "CMD_FILE_CLOSE_BELOW": "下をすべて閉じる", + "CMD_FILE_SAVE": "保存", + "CMD_FILE_SAVE_ALL": "すべて保存", + "CMD_FILE_SAVE_AS": "名前を付けて保存\u2026", + "CMD_LIVE_FILE_PREVIEW": "ライブプレビュー", + "CMD_RELOAD_LIVE_PREVIEW": "ライブプレビューを強制的に再読込み", + "CMD_PROJECT_SETTINGS": "プロジェクト設定\u2026", + "CMD_FILE_RENAME": "ファイル名変更", + "CMD_FILE_DELETE": "削除", + "CMD_INSTALL_EXTENSION": "拡張機能をインストール\u2026", + "CMD_EXTENSION_MANAGER": "拡張機能マネージャー\u2026", + "CMD_FILE_REFRESH": "ファイルツリーを更新", + "CMD_QUIT": "終了する", // Used in native File menu on Windows - "CMD_EXIT": "終了", + "CMD_EXIT": "終了", // Edit menu commands - "EDIT_MENU": "編集", - "CMD_UNDO": "取り消し", - "CMD_REDO": "やり直し", - "CMD_CUT": "カット", - "CMD_COPY": "コピー", - "CMD_PASTE": "ペースト", - "CMD_SELECT_ALL": "すべて選択", - "CMD_SELECT_LINE": "行の選択", - "CMD_SPLIT_SEL_INTO_LINES": "選択範囲を行に分ける", - "CMD_ADD_CUR_TO_NEXT_LINE": "次の行にカーソルを追加", - "CMD_ADD_CUR_TO_PREV_LINE": "前の行にカーソルを追加", - "CMD_INDENT": "インデント", - "CMD_UNINDENT": "インデント解除", - "CMD_DUPLICATE": "行を複製", - "CMD_DELETE_LINES": "行を削除", - "CMD_COMMENT": "行コメントの切り替え", - "CMD_BLOCK_COMMENT": "ブロックコメントの切り替え", - "CMD_LINE_UP": "行を上に移動", - "CMD_LINE_DOWN": "行を下に移動", - "CMD_OPEN_LINE_ABOVE": "上の行を開く", - "CMD_OPEN_LINE_BELOW": "下の行を開く", - "CMD_TOGGLE_CLOSE_BRACKETS": "自動閉じカッコ", - "CMD_SHOW_CODE_HINTS": "コードヒントを表示", + "EDIT_MENU": "編集", + "CMD_UNDO": "取り消し", + "CMD_REDO": "やり直し", + "CMD_CUT": "カット", + "CMD_COPY": "コピー", + "CMD_PASTE": "ペースト", + "CMD_SELECT_ALL": "すべて選択", + "CMD_SELECT_LINE": "行の選択", + "CMD_SPLIT_SEL_INTO_LINES": "選択範囲を行に分ける", + "CMD_ADD_CUR_TO_NEXT_LINE": "次の行にカーソルを追加", + "CMD_ADD_CUR_TO_PREV_LINE": "前の行にカーソルを追加", + "CMD_INDENT": "インデント", + "CMD_UNINDENT": "インデント解除", + "CMD_DUPLICATE": "行を複製", + "CMD_DELETE_LINES": "行を削除", + "CMD_COMMENT": "行コメントの切り替え", + "CMD_BLOCK_COMMENT": "ブロックコメントの切り替え", + "CMD_LINE_UP": "行を上に移動", + "CMD_LINE_DOWN": "行を下に移動", + "CMD_OPEN_LINE_ABOVE": "上の行を開く", + "CMD_OPEN_LINE_BELOW": "下の行を開く", + "CMD_TOGGLE_CLOSE_BRACKETS": "自動閉じカッコ", + "CMD_SHOW_CODE_HINTS": "コードヒントを表示", // Search menu commands - "FIND_MENU": "検索", - "CMD_FIND": "検索", - "CMD_FIND_NEXT": "次を検索", - "CMD_FIND_PREVIOUS": "前を検索", - "CMD_FIND_ALL_AND_SELECT": "すべて検索して選択", - "CMD_ADD_NEXT_MATCH": "選択範囲に次の候補を追加", - "CMD_SKIP_CURRENT_MATCH": "スキップして次の候補を追加", - "CMD_FIND_IN_FILES": "ファイルを横断して検索", - "CMD_FIND_IN_SELECTED": "選択したファイルまたはフォルダーを検索", - "CMD_FIND_IN_SUBTREE": "検索先\u2026", - "CMD_REPLACE": "置換", - "CMD_REPLACE_IN_FILES": "ファイルを横断して置換", - "CMD_REPLACE_IN_SELECTED": "選択したファイルまたはフォルダーで置換", - "CMD_REPLACE_IN_SUBTREE": "置換対象\u2026", + "FIND_MENU": "検索", + "CMD_FIND": "検索", + "CMD_FIND_NEXT": "次を検索", + "CMD_FIND_PREVIOUS": "前を検索", + "CMD_FIND_ALL_AND_SELECT": "すべて検索して選択", + "CMD_ADD_NEXT_MATCH": "選択範囲に次の候補を追加", + "CMD_SKIP_CURRENT_MATCH": "スキップして次の候補を追加", + "CMD_FIND_IN_FILES": "ファイルを横断して検索", + "CMD_FIND_IN_SELECTED": "選択したファイルまたはフォルダーを検索", + "CMD_FIND_IN_SUBTREE": "検索先\u2026", + "CMD_REPLACE": "置換", + "CMD_REPLACE_IN_FILES": "ファイルを横断して置換", + "CMD_REPLACE_IN_SELECTED": "選択したファイルまたはフォルダーで置換", + "CMD_REPLACE_IN_SUBTREE": "置換対象\u2026", // View menu commands - "VIEW_MENU": "表示", - "CMD_HIDE_SIDEBAR": "サイドバーを隠す", - "CMD_SHOW_SIDEBAR": "サイドバーを表示する", - "CMD_INCREASE_FONT_SIZE": "フォントサイズを大きく", - "CMD_DECREASE_FONT_SIZE": "フォントサイズを小さく", - "CMD_RESTORE_FONT_SIZE": "フォントサイズを元に戻す", - "CMD_SCROLL_LINE_UP": "1 行上にスクロール", - "CMD_SCROLL_LINE_DOWN": "1 行下にスクロール", - "CMD_TOGGLE_LINE_NUMBERS": "行番号", - "CMD_TOGGLE_ACTIVE_LINE": "アクティブな行をハイライト", - "CMD_TOGGLE_WORD_WRAP": "折り返し", - "CMD_LIVE_HIGHLIGHT": "ライブプレビューハイライト", - "CMD_VIEW_TOGGLE_INSPECTION": "保存時にファイルを Lint チェック", - "CMD_WORKINGSET_SORT_BY_ADDED": "追加日時順", - "CMD_WORKINGSET_SORT_BY_NAME": "名前順", - "CMD_WORKINGSET_SORT_BY_TYPE": "種類順", - "CMD_WORKING_SORT_TOGGLE_AUTO": "自動ソート", - "CMD_THEMES": "テーマ\u2026", + "VIEW_MENU": "表示", + "CMD_HIDE_SIDEBAR": "サイドバーを隠す", + "CMD_SHOW_SIDEBAR": "サイドバーを表示する", + "CMD_INCREASE_FONT_SIZE": "フォントサイズを大きく", + "CMD_DECREASE_FONT_SIZE": "フォントサイズを小さく", + "CMD_RESTORE_FONT_SIZE": "フォントサイズを元に戻す", + "CMD_SCROLL_LINE_UP": "1 行上にスクロール", + "CMD_SCROLL_LINE_DOWN": "1 行下にスクロール", + "CMD_TOGGLE_LINE_NUMBERS": "行番号", + "CMD_TOGGLE_ACTIVE_LINE": "アクティブな行をハイライト", + "CMD_TOGGLE_WORD_WRAP": "折り返し", + "CMD_LIVE_HIGHLIGHT": "ライブプレビューハイライト", + "CMD_VIEW_TOGGLE_INSPECTION": "保存時にファイルを Lint チェック", + "CMD_WORKINGSET_SORT_BY_ADDED": "追加日時順", + "CMD_WORKINGSET_SORT_BY_NAME": "名前順", + "CMD_WORKINGSET_SORT_BY_TYPE": "種類順", + "CMD_WORKING_SORT_TOGGLE_AUTO": "自動ソート", + "CMD_THEMES": "テーマ\u2026", // Navigate menu Commands - "NAVIGATE_MENU": "ナビゲート", - "CMD_QUICK_OPEN": "クイックオープン", - "CMD_GOTO_LINE": "行に移動", - "CMD_GOTO_DEFINITION": "定義をクイック検索", - "CMD_GOTO_FIRST_PROBLEM": "最初のエラーまたは警告に移動", - "CMD_TOGGLE_QUICK_EDIT": "クイック編集", - "CMD_TOGGLE_QUICK_DOCS": "クイックドキュメント", - "CMD_QUICK_EDIT_PREV_MATCH": "前の候補に移動", - "CMD_QUICK_EDIT_NEXT_MATCH": "次の候補に移動", - "CMD_CSS_QUICK_EDIT_NEW_RULE": "新規ルール", - "CMD_NEXT_DOC": "次の文書", - "CMD_PREV_DOC": "前の文書", - "CMD_SHOW_IN_TREE": "ファイルツリー内で表示", - "CMD_SHOW_IN_EXPLORER": "エクスプローラーで表示", - "CMD_SHOW_IN_FINDER": "Finder で表示", - "CMD_SHOW_IN_OS": "OS で表示", + "NAVIGATE_MENU": "ナビゲート", + "CMD_QUICK_OPEN": "クイックオープン", + "CMD_GOTO_LINE": "行に移動", + "CMD_GOTO_DEFINITION": "定義をクイック検索", + "CMD_GOTO_FIRST_PROBLEM": "最初のエラーまたは警告に移動", + "CMD_TOGGLE_QUICK_EDIT": "クイック編集", + "CMD_TOGGLE_QUICK_DOCS": "クイックドキュメント", + "CMD_QUICK_EDIT_PREV_MATCH": "前の候補に移動", + "CMD_QUICK_EDIT_NEXT_MATCH": "次の候補に移動", + "CMD_CSS_QUICK_EDIT_NEW_RULE": "新規ルール", + "CMD_NEXT_DOC": "次の文書", + "CMD_PREV_DOC": "前の文書", + "CMD_SHOW_IN_TREE": "ファイルツリー内で表示", + "CMD_SHOW_IN_EXPLORER": "エクスプローラーで表示", + "CMD_SHOW_IN_FINDER": "Finder で表示", + "CMD_SHOW_IN_OS": "OS で表示", // Help menu commands - "HELP_MENU": "ヘルプ", - "CMD_CHECK_FOR_UPDATE": "更新をチェックする", - "CMD_HOW_TO_USE_BRACKETS": "{APP_NAME} の使用方法", - "CMD_SUPPORT": "{APP_NAME} サポート", - "CMD_SUGGEST": "機能改善の提案", - "CMD_RELEASE_NOTES": "リリースノート", - "CMD_GET_INVOLVED": "コミュニティに参加", - "CMD_SHOW_EXTENSIONS_FOLDER": "拡張機能のフォルダーを開く", - "CMD_HOMEPAGE": "{APP_TITLE} ホームページ", - "CMD_TWITTER": "Twitter で {TWITTER_NAME} をフォロー", - "CMD_ABOUT": "{APP_TITLE} について", - "CMD_OPEN_PREFERENCES": "環境設定ファイルを開く", - "CMD_OPEN_KEYMAP": "ユーザーキーマップを開く", + "HELP_MENU": "ヘルプ", + "CMD_CHECK_FOR_UPDATE": "更新をチェックする", + "CMD_HOW_TO_USE_BRACKETS": "{APP_NAME} の使用方法", + "CMD_SUPPORT": "{APP_NAME} サポート", + "CMD_SUGGEST": "機能改善の提案", + "CMD_RELEASE_NOTES": "リリースノート", + "CMD_GET_INVOLVED": "コミュニティに参加", + "CMD_SHOW_EXTENSIONS_FOLDER": "拡張機能のフォルダーを開く", + "CMD_HOMEPAGE": "{APP_TITLE} ホームページ", + "CMD_TWITTER": "Twitter で {TWITTER_NAME} をフォロー", + "CMD_ABOUT": "{APP_TITLE} について", + "CMD_OPEN_PREFERENCES": "環境設定ファイルを開く", + "CMD_OPEN_KEYMAP": "ユーザーキーマップを開く", // Strings for main-view.html - "EXPERIMENTAL_BUILD": "試験ビルド", - "DEVELOPMENT_BUILD": "開発ビルド", - "RELOAD_FROM_DISK": "ディスクから再読み込み", - "KEEP_CHANGES_IN_EDITOR": "エディター内の変更を保持する", - "CLOSE_DONT_SAVE": "保存せずに閉じる", - "RELAUNCH_CHROME": "Chrome を再起動", - "ABOUT": "このソフトウェアについて", - "CLOSE": "閉じる", - "ABOUT_TEXT_LINE1": "リリース {VERSION_MAJOR}.{VERSION_MINOR} {BUILD_TYPE} {VERSION}", - "ABOUT_TEXT_BUILD_TIMESTAMP": "ビルドのタイムスタンプ : ", - "ABOUT_TEXT_LINE3": "Notices, terms and conditions pertaining to third party software are located at {ADOBE_THIRD_PARTY} and incorporated by reference herein.", - "ABOUT_TEXT_LINE4": "ドキュメントとソースコードは https://github.com/adobe/brackets/ から入手できます。", - "ABOUT_TEXT_LINE5": "\u2764 および JavaScript を使用して次の人によって作成されました :", - "ABOUT_TEXT_LINE6": "多くの人々 (ただし、人物データの読み込みに問題が発生しています)。", - "ABOUT_TEXT_WEB_PLATFORM_DOCS": "Web Platform Docs and the Web Platform graphical logo are licensed under a Creative Commons Attribution license, CC-BY 3.0 Unported.", - "UPDATE_NOTIFICATION_TOOLTIP": "{APP_NAME} の新しいビルドを利用できます。詳細はここをクリックしてください。", - "UPDATE_AVAILABLE_TITLE": "利用可能なアップデートがあります", - "UPDATE_MESSAGE": "{APP_NAME} の新しいビルドが利用できます。新機能の一部を以下にご紹介します :", - "GET_IT_NOW": "すぐに入手する", - "PROJECT_SETTINGS_TITLE": "プロジェクト設定 : {0}", - "PROJECT_SETTING_BASE_URL": "ライブプレビューのベース URL", - "PROJECT_SETTING_BASE_URL_HINT": "http://localhost:8000/ 等のURLを入力してローカルサーバーを使用", - "BASEURL_ERROR_INVALID_PROTOCOL": "{0} プロトコルはライブプレビューではサポートされていません。http: または https: を使用してください。", - "BASEURL_ERROR_SEARCH_DISALLOWED": "ベース URL には、「{0}」のような検索パラメーターは使用できません。", - "BASEURL_ERROR_HASH_DISALLOWED": "ベース URL には、「{0}」のようなハッシュ記号は使用できません。", - "BASEURL_ERROR_INVALID_CHAR": "「{0}」のような特殊文字は、パーセントエンコーディングする必要があります。", - "BASEURL_ERROR_UNKNOWN_ERROR": "ベース URL の解析中に不明なエラーが発生しました", - "EMPTY_VIEW_HEADER": "このペインにフォーカスがあるときにファイルを開く", + "EXPERIMENTAL_BUILD": "試験ビルド", + "RELEASE_BUILD": "ビルド", + "DEVELOPMENT_BUILD": "開発ビルド", + "RELOAD_FROM_DISK": "ディスクから再読み込み", + "KEEP_CHANGES_IN_EDITOR": "エディター内の変更を保持する", + "CLOSE_DONT_SAVE": "保存せずに閉じる", + "RELAUNCH_CHROME": "Chrome を再起動", + "ABOUT": "このソフトウェアについて", + "CLOSE": "閉じる", + "ABOUT_TEXT_LINE1": "リリース {VERSION_MAJOR}.{VERSION_MINOR} {BUILD_TYPE} {VERSION}", + "ABOUT_TEXT_BUILD_TIMESTAMP": "ビルドのタイムスタンプ : ", + "ABOUT_TEXT_LINE3": "Notices, terms and conditions pertaining to third party software are located at {ADOBE_THIRD_PARTY} and incorporated by reference herein.", + "ABOUT_TEXT_LINE4": "ドキュメントとソースコードは https://github.com/adobe/brackets/ から入手できます。", + "ABOUT_TEXT_LINE5": "\u2764 および JavaScript を使用して次の人によって作成されました :", + "ABOUT_TEXT_LINE6": "多くの人々 (ただし、人物データの読み込みに問題が発生しています)。", + "ABOUT_TEXT_WEB_PLATFORM_DOCS": "Web Platform Docs and the Web Platform graphical logo are licensed under a Creative Commons Attribution license, CC-BY 3.0 Unported.", + "UPDATE_NOTIFICATION_TOOLTIP": "{APP_NAME} の新しいビルドを利用できます。詳細はここをクリックしてください。", + "UPDATE_AVAILABLE_TITLE": "利用可能なアップデートがあります", + "UPDATE_MESSAGE": "{APP_NAME} の新しいビルドが利用できます。新機能の一部を以下にご紹介します :", + "GET_IT_NOW": "すぐに入手する", + "PROJECT_SETTINGS_TITLE": "プロジェクト設定 : {0}", + "PROJECT_SETTING_BASE_URL": "ライブプレビューのベース URL", + "PROJECT_SETTING_BASE_URL_HINT": "http://localhost:8000/ 等のURLを入力してローカルサーバーを使用", + "BASEURL_ERROR_INVALID_PROTOCOL": "{0} プロトコルはライブプレビューではサポートされていません。http: または https: を使用してください。", + "BASEURL_ERROR_SEARCH_DISALLOWED": "ベース URL には、「{0}」のような検索パラメーターは使用できません。", + "BASEURL_ERROR_HASH_DISALLOWED": "ベース URL には、「{0}」のようなハッシュ記号は使用できません。", + "BASEURL_ERROR_INVALID_CHAR": "「{0}」のような特殊文字は、パーセントエンコーディングする必要があります。", + "BASEURL_ERROR_UNKNOWN_ERROR": "ベース URL の解析中に不明なエラーが発生しました", + "EMPTY_VIEW_HEADER": "このペインにフォーカスがあるときにファイルを開く", // Strings for themes-settings.html and themes-general.html - "CURRENT_THEME": "現在のテーマ", - "USE_THEME_SCROLLBARS": "テーマスクロールバーを使用", - "FONT_SIZE": "フォントサイズ", - "FONT_FAMILY": "フォントファミリー", - "THEMES_SETTINGS": "テーマ設定", + "CURRENT_THEME": "現在のテーマ", + "USE_THEME_SCROLLBARS": "テーマスクロールバーを使用", + "FONT_SIZE": "フォントサイズ", + "FONT_FAMILY": "フォントファミリー", + "THEMES_SETTINGS": "テーマ設定", // CSS Quick Edit - "BUTTON_NEW_RULE": "新規ルール", + "BUTTON_NEW_RULE": "新規ルール", // Extension Management strings - "INSTALL": "インストール", - "UPDATE": "更新", - "REMOVE": "削除", - "OVERWRITE": "上書き", - "CANT_REMOVE_DEV": "dev フォルダーの拡張機能は手動で削除する必要があります。", - "CANT_UPDATE": "アップデートはこのバージョンの {APP_NAME} と互換性がありません。", - "CANT_UPDATE_DEV": "dev フォルダーの拡張機能は自動的に更新されません。", - "INSTALL_EXTENSION_TITLE": "拡張機能をインストール", - "UPDATE_EXTENSION_TITLE": "拡張機能を更新", - "INSTALL_EXTENSION_LABEL": "拡張機能の URL", - "INSTALL_EXTENSION_HINT": "拡張機能 zip ファイルまたは GitHub レポジトリの URL", - "INSTALLING_FROM": "{0} から拡張機能をインストールしています\u2026", - "INSTALL_SUCCEEDED": "インストールは成功しました。", - "INSTALL_FAILED": "インストールは失敗しました。", - "CANCELING_INSTALL": "キャンセルしています\u2026", - "CANCELING_HUNG": "インストールのキャンセルに時間がかかっています。内部エラーが発生した可能性があります。", - "INSTALL_CANCELED": "インストールはキャンセルされました。", - "VIEW_COMPLETE_DESCRIPTION": "詳細な説明を表示", - "VIEW_TRUNCATED_DESCRIPTION": "省略された説明を表示", + "INSTALL": "インストール", + "UPDATE": "更新", + "REMOVE": "削除", + "OVERWRITE": "上書き", + "CANT_REMOVE_DEV": "dev フォルダーの拡張機能は手動で削除する必要があります。", + "CANT_UPDATE": "アップデートはこのバージョンの {APP_NAME} と互換性がありません。", + "CANT_UPDATE_DEV": "dev フォルダーの拡張機能は自動的に更新されません。", + "INSTALL_EXTENSION_TITLE": "拡張機能をインストール", + "UPDATE_EXTENSION_TITLE": "拡張機能を更新", + "INSTALL_EXTENSION_LABEL": "拡張機能の URL", + "INSTALL_EXTENSION_HINT": "拡張機能 zip ファイルまたは GitHub レポジトリの URL", + "INSTALLING_FROM": "{0} から拡張機能をインストールしています\u2026", + "INSTALL_SUCCEEDED": "インストールは成功しました。", + "INSTALL_FAILED": "インストールは失敗しました。", + "CANCELING_INSTALL": "キャンセルしています\u2026", + "CANCELING_HUNG": "インストールのキャンセルに時間がかかっています。内部エラーが発生した可能性があります。", + "INSTALL_CANCELED": "インストールはキャンセルされました。", + "VIEW_COMPLETE_DESCRIPTION": "詳細な説明を表示", + "VIEW_TRUNCATED_DESCRIPTION": "省略された説明を表示", // These must match the error codes in ExtensionsDomain.Errors.* : - "INVALID_ZIP_FILE": "ダウンロードされたコンテンツは有効な zip ファイルではありません。", - "INVALID_PACKAGE_JSON": "package.json ファイルは有効ではありません (エラーは {0} です)。", - "MISSING_PACKAGE_NAME": "package.json ファイルはパッケージ名を指定していません。", - "BAD_PACKAGE_NAME": "{0} は無効なパッケージ名です。", - "MISSING_PACKAGE_VERSION": "package.json ファイルはパッケージバージョンを指定していません。", - "INVALID_VERSION_NUMBER": "パッケージバージョン番号 ({0}) は無効です。", - "INVALID_BRACKETS_VERSION": "{APP_NAME} 互換文字列 {0} は無効です。", - "DISALLOWED_WORDS": "{1} は {0} フィールドでは使用できません。", - "API_NOT_COMPATIBLE": "拡張機能はこのバージョンの {APP_NAME} と互換性がありません。無効な拡張機能フォルダーにインストールされます。", - "MISSING_MAIN": "パッケージに main.js ファイルが含まれていません。", - "EXTENSION_ALREADY_INSTALLED": "このパッケージをインストールすると以前にインストールした拡張機能が上書きされます。古い拡張機能を上書きしますか?", - "EXTENSION_SAME_VERSION": "このパッケージのバージョンは現在インストールされているバージョンと同じです。既存のインストールを上書きしますか?", - "EXTENSION_OLDER_VERSION": "このパッケージのバージョン ({0}) は、現在インストールされているバージョン ({1}) よりも古いバージョンです。既存のインストールを上書きしますか?", - "DOWNLOAD_ID_IN_USE": "内部エラー : ダウンロード ID は既に使用されています。", - "NO_SERVER_RESPONSE": "サーバーに接続できません。", - "BAD_HTTP_STATUS": "ファイルがサーバー (HTTP {0}) に見つかりません。", - "CANNOT_WRITE_TEMP": "一時ダウンロードファイルを保存できません。", - "ERROR_LOADING": "拡張機能の起動時にエラーが発生しました。", - "MALFORMED_URL": "URL が無効です。正しく入力されているか確認してください。", - "UNSUPPORTED_PROTOCOL": "URL は http または https URL である必要があります。", - "UNKNOWN_ERROR": "不明な内部エラー。", + "INVALID_ZIP_FILE": "ダウンロードされたコンテンツは有効な zip ファイルではありません。", + "INVALID_PACKAGE_JSON": "package.json ファイルは有効ではありません (エラーは {0} です)。", + "MISSING_PACKAGE_NAME": "package.json ファイルはパッケージ名を指定していません。", + "BAD_PACKAGE_NAME": "{0} は無効なパッケージ名です。", + "MISSING_PACKAGE_VERSION": "package.json ファイルはパッケージバージョンを指定していません。", + "INVALID_VERSION_NUMBER": "パッケージバージョン番号 ({0}) は無効です。", + "INVALID_BRACKETS_VERSION": "{APP_NAME} 互換文字列 {0} は無効です。", + "DISALLOWED_WORDS": "{1} は {0} フィールドでは使用できません。", + "API_NOT_COMPATIBLE": "拡張機能はこのバージョンの {APP_NAME} と互換性がありません。無効な拡張機能フォルダーにインストールされます。", + "MISSING_MAIN": "パッケージに main.js ファイルが含まれていません。", + "EXTENSION_ALREADY_INSTALLED": "このパッケージをインストールすると以前にインストールした拡張機能が上書きされます。古い拡張機能を上書きしますか?", + "EXTENSION_SAME_VERSION": "このパッケージのバージョンは現在インストールされているバージョンと同じです。既存のインストールを上書きしますか?", + "EXTENSION_OLDER_VERSION": "このパッケージのバージョン ({0}) は、現在インストールされているバージョン ({1}) よりも古いバージョンです。既存のインストールを上書きしますか?", + "DOWNLOAD_ID_IN_USE": "内部エラー : ダウンロード ID は既に使用されています。", + "NO_SERVER_RESPONSE": "サーバーに接続できません。", + "BAD_HTTP_STATUS": "ファイルがサーバー (HTTP {0}) に見つかりません。", + "CANNOT_WRITE_TEMP": "一時ダウンロードファイルを保存できません。", + "ERROR_LOADING": "拡張機能の起動時にエラーが発生しました。", + "MALFORMED_URL": "URL が無効です。正しく入力されているか確認してください。", + "UNSUPPORTED_PROTOCOL": "URL は http または https URL である必要があります。", + "UNKNOWN_ERROR": "不明な内部エラー。", // For NOT_FOUND_ERR, see generic strings above - "EXTENSION_MANAGER_TITLE": "拡張機能マネージャー", - "EXTENSION_MANAGER_ERROR_LOAD": "拡張機能レジストリにアクセスできません。後でもう一度試してください。", - "INSTALL_EXTENSION_DRAG": ".zip をここにドラッグするか、", - "INSTALL_EXTENSION_DROP": ".zip をドロップしてインストール", - "INSTALL_EXTENSION_DROP_ERROR": "次のエラーのため、インストール / アンインストールが中止されました :", - "INSTALL_FROM_URL": "URL からインストール\u2026", - "INSTALL_EXTENSION_VALIDATING": "検証中\u2026", - "EXTENSION_AUTHOR": "作成者", - "EXTENSION_DATE": "日付", - "EXTENSION_INCOMPATIBLE_NEWER": "この拡張機能には新しいバージョンの {APP_NAME} が必要です。", - "EXTENSION_INCOMPATIBLE_OLDER": "この拡張機能は現在、古いバージョンの {APP_NAME} でしか動作しません。", - "EXTENSION_LATEST_INCOMPATIBLE_NEWER": "この拡張機能のバージョン {0} には {APP_NAME} の新しいバージョンが必要です。ただし、以前のバージョン {1} をインストールすることができます。", - "EXTENSION_LATEST_INCOMPATIBLE_OLDER": "この拡張機能のバージョン {0} は {APP_NAME} の古いバージョンでのみ動作します。ただし、以前のバージョン {1} をインストールすることができます。", - "EXTENSION_NO_DESCRIPTION": "説明なし", - "EXTENSION_MORE_INFO": "詳細情報...", - "EXTENSION_ERROR": "拡張機能のエラー", - "EXTENSION_KEYWORDS": "キーワード", - "EXTENSION_TRANSLATED_USER_LANG": "ご使用の言語を含む {0} 言語に翻訳されました", - "EXTENSION_TRANSLATED_GENERAL": "{0} 言語に翻訳されました", - "EXTENSION_TRANSLATED_LANGS": "この拡張機能はこれらの言語に翻訳されています : {0}", - "EXTENSION_INSTALLED": "インストール完了", - "EXTENSION_UPDATE_INSTALLED": "この拡張機能のアップデートがダウンロードされました。{APP_NAME} のリロード後にインストールされます。", - "EXTENSION_SEARCH_PLACEHOLDER": "検索", - "EXTENSION_MORE_INFO_LINK": "詳細", - "BROWSE_EXTENSIONS": "拡張機能を探す", - "EXTENSION_MANAGER_REMOVE": "拡張機能を削除", - "EXTENSION_MANAGER_REMOVE_ERROR": "1 つ以上の拡張機能 ({0}) を削除できません。{APP_NAME} がリロード中です。", - "EXTENSION_MANAGER_UPDATE": "拡張機能を更新", - "EXTENSION_MANAGER_UPDATE_ERROR": "1 つ以上の拡張機能 ({0}) を更新できません。{APP_NAME} がリロード中です。", - "MARKED_FOR_REMOVAL": "削除予定", - "UNDO_REMOVE": "取り消し", - "MARKED_FOR_UPDATE": "更新予定", - "UNDO_UPDATE": "取り消し", - "CHANGE_AND_RELOAD_TITLE": "拡張機能を変更", - "CHANGE_AND_RELOAD_MESSAGE": "更新予定または削除予定の拡張機能を更新または削除するには、{APP_NAME} をリロードする必要があります。未保存の変更を保存するかどうか確認されます。", - "REMOVE_AND_RELOAD": "拡張機能を削除してリロード", - "CHANGE_AND_RELOAD": "拡張機能を変更してリロード", - "UPDATE_AND_RELOAD": "拡張機能を更新してリロード", - "PROCESSING_EXTENSIONS": "拡張機能の変更を処理中\u2026", - "EXTENSION_NOT_INSTALLED": "インストールされていなかったため、拡張機能 {0} を削除できませんでした。", - "NO_EXTENSIONS": "インストールされている拡張機能はまだありません。
    上の「入手可能」タブをクリックしてインストールしてください。", - "NO_EXTENSION_MATCHES": "検索条件に一致する拡張機能がありません。", - "REGISTRY_SANITY_CHECK_WARNING": "注意 : これらの拡張機能の作成元が {APP_NAME} 以外である可能性があります。拡張機能はレビューされず、ローカルアクセス権が一杯です。不明なソースから拡張機能をインストールするときは十分に注意してください。", - "EXTENSIONS_INSTALLED_TITLE": "インストール済み", - "EXTENSIONS_AVAILABLE_TITLE": "入手可能", - "EXTENSIONS_THEMES_TITLE": "テーマ", - "EXTENSIONS_UPDATES_TITLE": "アップデート", + "EXTENSION_MANAGER_TITLE": "拡張機能マネージャー", + "EXTENSION_MANAGER_ERROR_LOAD": "拡張機能レジストリにアクセスできません。後でもう一度試してください。", + "INSTALL_EXTENSION_DRAG": ".zip をここにドラッグするか、", + "INSTALL_EXTENSION_DROP": ".zip をドロップしてインストール", + "INSTALL_EXTENSION_DROP_ERROR": "次のエラーのため、インストール / アンインストールが中止されました :", + "INSTALL_FROM_URL": "URL からインストール\u2026", + "INSTALL_EXTENSION_VALIDATING": "検証中\u2026", + "EXTENSION_AUTHOR": "作成者", + "EXTENSION_DATE": "日付", + "EXTENSION_INCOMPATIBLE_NEWER": "この拡張機能には新しいバージョンの {APP_NAME} が必要です。", + "EXTENSION_INCOMPATIBLE_OLDER": "この拡張機能は現在、古いバージョンの {APP_NAME} でしか動作しません。", + "EXTENSION_LATEST_INCOMPATIBLE_NEWER": "この拡張機能のバージョン {0} には {APP_NAME} の新しいバージョンが必要です。ただし、以前のバージョン {1} をインストールすることができます。", + "EXTENSION_LATEST_INCOMPATIBLE_OLDER": "この拡張機能のバージョン {0} は {APP_NAME} の古いバージョンでのみ動作します。ただし、以前のバージョン {1} をインストールすることができます。", + "EXTENSION_NO_DESCRIPTION": "説明なし", + "EXTENSION_MORE_INFO": "詳細情報...", + "EXTENSION_ERROR": "拡張機能のエラー", + "EXTENSION_KEYWORDS": "キーワード", + "EXTENSION_TRANSLATED_USER_LANG": "ご使用の言語を含む {0} 言語に翻訳されました", + "EXTENSION_TRANSLATED_GENERAL": "{0} 言語に翻訳されました", + "EXTENSION_TRANSLATED_LANGS": "この拡張機能はこれらの言語に翻訳されています : {0}", + "EXTENSION_INSTALLED": "インストール完了", + "EXTENSION_UPDATE_INSTALLED": "この拡張機能のアップデートがダウンロードされました。{APP_NAME} のリロード後にインストールされます。", + "EXTENSION_SEARCH_PLACEHOLDER": "検索", + "EXTENSION_MORE_INFO_LINK": "詳細", + "BROWSE_EXTENSIONS": "拡張機能を探す", + "EXTENSION_MANAGER_REMOVE": "拡張機能を削除", + "EXTENSION_MANAGER_REMOVE_ERROR": "1 つ以上の拡張機能 ({0}) を削除できません。{APP_NAME} がリロード中です。", + "EXTENSION_MANAGER_UPDATE": "拡張機能を更新", + "EXTENSION_MANAGER_UPDATE_ERROR": "1 つ以上の拡張機能 ({0}) を更新できません。{APP_NAME} がリロード中です。", + "MARKED_FOR_REMOVAL": "削除予定", + "UNDO_REMOVE": "取り消し", + "MARKED_FOR_UPDATE": "更新予定", + "UNDO_UPDATE": "取り消し", + "CHANGE_AND_RELOAD_TITLE": "拡張機能を変更", + "CHANGE_AND_RELOAD_MESSAGE": "更新予定または削除予定の拡張機能を更新または削除するには、{APP_NAME} をリロードする必要があります。未保存の変更を保存するかどうか確認されます。", + "REMOVE_AND_RELOAD": "拡張機能を削除してリロード", + "CHANGE_AND_RELOAD": "拡張機能を変更してリロード", + "UPDATE_AND_RELOAD": "拡張機能を更新してリロード", + "PROCESSING_EXTENSIONS": "拡張機能の変更を処理中\u2026", + "EXTENSION_NOT_INSTALLED": "インストールされていなかったため、拡張機能 {0} を削除できませんでした。", + "NO_EXTENSIONS": "インストールされている拡張機能はまだありません。
    上の「入手可能」タブをクリックしてインストールしてください。", + "NO_EXTENSION_MATCHES": "検索条件に一致する拡張機能がありません。", + "REGISTRY_SANITY_CHECK_WARNING": "注意 : これらの拡張機能の作成元が {APP_NAME} 以外である可能性があります。拡張機能はレビューされず、ローカルアクセス権が一杯です。不明なソースから拡張機能をインストールするときは十分に注意してください。", + "EXTENSIONS_INSTALLED_TITLE": "インストール済み", + "EXTENSIONS_AVAILABLE_TITLE": "入手可能", + "EXTENSIONS_THEMES_TITLE": "テーマ", + "EXTENSIONS_UPDATES_TITLE": "アップデート", - "INLINE_EDITOR_NO_MATCHES": "一致するものがありません。", - "INLINE_EDITOR_HIDDEN_MATCHES": "一致項目はすべて縮小されています。一致項目を表示するには、右側にリストされているファイルを展開してください。", - "CSS_QUICK_EDIT_NO_MATCHES": "選択に一致する既存の CSS ルールがありません。
    「新規ルール」をクリックしてルールを作成してください。", - "CSS_QUICK_EDIT_NO_STYLESHEETS": "プロジェクトにはスタイルシートがありません。
    スタイルシートを作成して CSS ルールに追加してください。", + "INLINE_EDITOR_NO_MATCHES": "一致するものがありません。", + "INLINE_EDITOR_HIDDEN_MATCHES": "一致項目はすべて縮小されています。一致項目を表示するには、右側にリストされているファイルを展開してください。", + "CSS_QUICK_EDIT_NO_MATCHES": "選択に一致する既存の CSS ルールがありません。
    「新規ルール」をクリックしてルールを作成してください。", + "CSS_QUICK_EDIT_NO_STYLESHEETS": "プロジェクトにはスタイルシートがありません。
    スタイルシートを作成して CSS ルールに追加してください。", // Custom Viewers - "IMAGE_VIEWER_LARGEST_ICON": "最大", + "IMAGE_VIEWER_LARGEST_ICON": "最大", /** * Unit names */ - "UNIT_PIXELS": "ピクセル", + "UNIT_PIXELS": "ピクセル", // extensions/default/DebugCommands - "DEBUG_MENU": "デバッグ", - "ERRORS": "エラー", - "CMD_SHOW_DEV_TOOLS": "開発者ツールを表示", - "CMD_REFRESH_WINDOW": "拡張機能付きでリロード", - "CMD_RELOAD_WITHOUT_USER_EXTS": "拡張機能なしでリロード", - "CMD_NEW_BRACKETS_WINDOW": "新しい {APP_NAME} ウィンドウ", - "CMD_SWITCH_LANGUAGE": "言語を切り替える", - "CMD_RUN_UNIT_TESTS": "テストを実行", - "CMD_SHOW_PERF_DATA": "パフォーマンスデータを表示", - "CMD_ENABLE_NODE_DEBUGGER": "Node Debugger を有効にする", - "CMD_LOG_NODE_STATE": "Node の状態をコンソールに記録", - "CMD_RESTART_NODE": "Node を再起動", - "CMD_SHOW_ERRORS_IN_STATUS_BAR": "ステータスバーにエラーを表示", - "CMD_OPEN_BRACKETS_SOURCE": "オープン Brackets ソース", + "DEBUG_MENU": "デバッグ", + "ERRORS": "エラー", + "CMD_SHOW_DEV_TOOLS": "開発者ツールを表示", + "CMD_REFRESH_WINDOW": "拡張機能付きでリロード", + "CMD_RELOAD_WITHOUT_USER_EXTS": "拡張機能なしでリロード", + "CMD_NEW_BRACKETS_WINDOW": "新しい {APP_NAME} ウィンドウ", + "CMD_SWITCH_LANGUAGE": "言語を切り替える", + "CMD_RUN_UNIT_TESTS": "テストを実行", + "CMD_SHOW_PERF_DATA": "パフォーマンスデータを表示", + "CMD_ENABLE_NODE_DEBUGGER": "Node Debugger を有効にする", + "CMD_LOG_NODE_STATE": "Node の状態をコンソールに記録", + "CMD_RESTART_NODE": "Node を再起動", + "CMD_SHOW_ERRORS_IN_STATUS_BAR": "ステータスバーにエラーを表示", + "CMD_OPEN_BRACKETS_SOURCE": "オープン Brackets ソース", - "LANGUAGE_TITLE": "言語を切り替える", - "LANGUAGE_MESSAGE": "言語 :", - "LANGUAGE_SUBMIT": "{APP_NAME} をリロード", - "LANGUAGE_CANCEL": "キャンセル", - "LANGUAGE_SYSTEM_DEFAULT": "システムのデフォルト", + "LANGUAGE_TITLE": "言語を切り替える", + "LANGUAGE_MESSAGE": "言語 :", + "LANGUAGE_SUBMIT": "{APP_NAME} をリロード", + "LANGUAGE_CANCEL": "キャンセル", + "LANGUAGE_SYSTEM_DEFAULT": "システムのデフォルト", // extensions/default/InlineTimingFunctionEditor - "INLINE_TIMING_EDITOR_TIME": "時間", - "INLINE_TIMING_EDITOR_PROGRESSION": "進行", - "BEZIER_EDITOR_INFO": " 選択したポイントを移動
    Shift 10 単位ずつ移動
    Tab ポイントを切り替え", - "STEPS_EDITOR_INFO": " 手順を増減
    「開始」または「終了」", - "INLINE_TIMING_EDITOR_INVALID": "古い値 {0} が無効なため、表示されている関数は {1} に変更されました。ドキュメントは最初の編集内容で更新されます。", + "INLINE_TIMING_EDITOR_TIME": "時間", + "INLINE_TIMING_EDITOR_PROGRESSION": "進行", + "BEZIER_EDITOR_INFO": " 選択したポイントを移動
    Shift 10 単位ずつ移動
    Tab ポイントを切り替え", + "STEPS_EDITOR_INFO": " 手順を増減
    「開始」または「終了」", + "INLINE_TIMING_EDITOR_INVALID": "古い値 {0} が無効なため、表示されている関数は {1} に変更されました。ドキュメントは最初の編集内容で更新されます。", // extensions/default/InlineColorEditor - "COLOR_EDITOR_CURRENT_COLOR_SWATCH_TIP": "現在の色", - "COLOR_EDITOR_ORIGINAL_COLOR_SWATCH_TIP": "元の色", - "COLOR_EDITOR_RGBA_BUTTON_TIP": "RGBa 形式", - "COLOR_EDITOR_HEX_BUTTON_TIP": "16 進形式", - "COLOR_EDITOR_HSLA_BUTTON_TIP": "HSLa 形式", - "COLOR_EDITOR_USED_COLOR_TIP_SINGULAR": "{0} ({1} 回使用)", - "COLOR_EDITOR_USED_COLOR_TIP_PLURAL": "{0} ({1} 回使用)", + "COLOR_EDITOR_CURRENT_COLOR_SWATCH_TIP": "現在の色", + "COLOR_EDITOR_ORIGINAL_COLOR_SWATCH_TIP": "元の色", + "COLOR_EDITOR_RGBA_BUTTON_TIP": "RGBa 形式", + "COLOR_EDITOR_HEX_BUTTON_TIP": "16 進形式", + "COLOR_EDITOR_HSLA_BUTTON_TIP": "HSLa 形式", + "COLOR_EDITOR_USED_COLOR_TIP_SINGULAR": "{0} ({1} 回使用)", + "COLOR_EDITOR_USED_COLOR_TIP_PLURAL": "{0} ({1} 回使用)", // extensions/default/JavaScriptCodeHints - "CMD_JUMPTO_DEFINITION": "定義にジャンプ", - "CMD_SHOW_PARAMETER_HINT": "パラメーターヒントを表示", - "NO_ARGUMENTS": "<パラメーターがありません>", - "DETECTED_EXCLUSION_TITLE": "JavaScript ファイルの推論問題", - "DETECTED_EXCLUSION_INFO": "Brackets で {0} の処理中に問題が発生しました。

    このファイルはコードヒント、定義にジャンプ、またはクイック編集では処理されません。このファイルを再度有効にするには、プロジェクトで .brackets.json を開いて jscodehints.detectedExclusions を編集してください。

    これは、Brackets のバグである可能性があります。このファイルのコピーをご提供いただける場合は、ここで名付けたファイルへのリンクを記載してバグを登録してください。", + "CMD_JUMPTO_DEFINITION": "定義にジャンプ", + "CMD_SHOW_PARAMETER_HINT": "パラメーターヒントを表示", + "NO_ARGUMENTS": "<パラメーターがありません>", + "DETECTED_EXCLUSION_TITLE": "JavaScript ファイルの推論問題", + "DETECTED_EXCLUSION_INFO": "Brackets で {0} の処理中に問題が発生しました。

    このファイルはコードヒント、定義にジャンプ、またはクイック編集では処理されません。このファイルを再度有効にするには、プロジェクトで .brackets.json を開いて jscodehints.detectedExclusions を編集してください。

    これは、Brackets のバグである可能性があります。このファイルのコピーをご提供いただける場合は、ここで名付けたファイルへのリンクを記載してバグを登録してください。", // extensions/default/JSLint - "JSLINT_NAME": "JSLint", + "JSLINT_NAME": "JSLint", // extensions/default/QuickView - "CMD_ENABLE_QUICK_VIEW": "ホバー・クイックビュー", + "CMD_ENABLE_QUICK_VIEW": "ホバー・クイックビュー", // extensions/default/RecentProjects - "CMD_TOGGLE_RECENT_PROJECTS": "最近使用したプロジェクト", + "CMD_TOGGLE_RECENT_PROJECTS": "最近使用したプロジェクト", // extensions/default/WebPlatformDocs - "DOCS_MORE_LINK": "詳細" + "DOCS_MORE_LINK": "詳細" }); From 39f2f36a88699c66027643759b51ea7f59fba9b0 Mon Sep 17 00:00:00 2001 From: Pawel Antkowiak Date: Wed, 29 Oct 2014 11:50:09 +0100 Subject: [PATCH 107/141] Fr and JP translation update Updated FR and JP translation for Getting Started page --- samples/fr/Premiers pas/index.html | 52 ++++++++++++------------ samples/ja/Getting Started/index.html | 58 ++++++++++++++------------- 2 files changed, 57 insertions(+), 53 deletions(-) diff --git a/samples/fr/Premiers pas/index.html b/samples/fr/Premiers pas/index.html index 287b2ff2a88..fac3d38fd36 100644 --- a/samples/fr/Premiers pas/index.html +++ b/samples/fr/Premiers pas/index.html @@ -18,7 +18,7 @@

    Suivez le guide !

    -->

    - Bienvenue dans cette version préliminaire de Brackets, le nouvel éditeur open source adapté au Web de demain. Nous attachons une grande importance aux normes et cherchons à créer des outils plus adaptés aux langages JavaScript, HTML et CSS ainsi qu’aux autres technologies du Web ouvert. Il s’agit là de notre modeste première contribution. + Bienvenue dans Brackets, un éditeur de code open source qui comprend et facilite la conception de sites web. Il s’agit d’un éditeur à la fois léger et puissant qui intègre des outils visuels directement dans son interface, de sorte que chaque opération peut devenir un véritable jeu d’enfant.

    Brackets se distingue des éditeurs traditionnels, - notamment par son écriture en JavaScript, HTML et CSS. - Autrement dit, la plupart des utilisateurs de Brackets disposent des capacités nécessaires pour modifier et étendre l’éditeur. - En fait, nous utilisons Brackets tous les jours pour son propre développement. Brackets propose aussi des fonctionnalités uniques, comme l’Edition rapide ou l’Aperçu en direct, que vous ne trouverez pas forcément dans d’autres éditeurs. - Pour en savoir plus sur l’utilisation de ces fonctionnalités, poursuivez votre lecture. + notamment par ses fonctionnalités uniques, comme l’Edition rapide ou l’Aperçu en direct, que vous ne trouverez pas forcément dans d’autres éditeurs. Cerise sur le gâteau, Brackets est écrit en JavaScript, en HTML et en CSS. Autrement dit, la grande majorité des utilisateurs de Brackets est capable de modifier et d’étendre l’éditeur. En fait, nous utilisons Brackets tous les jours pour son propre développement. Pour en savoir plus sur l’utilisation de ses fonctionnalités centrales, poursuivez votre lecture. +

    + + +

    Projets Brackets

    +

    + Pour éditer votre propre code à l’aide de l’application Brackets, il vous suffit d’ouvrir le dossier contenant vos fichiers. + Brackets traite le dossier ouvert en tant que « projet » ; ainsi, les fonctionnalités Indicateurs de code, Aperçu en direct ou encore Edition rapide s’appliquent uniquement aux fichiers du dossier ouvert. +

    -

    Nous testons actuellement quelques nouveautés.

    + + Si vous vous sentez prêt à franchir le cap et à éditer votre propre code, fermez cet exemple de projet et utilisez la liste déroulante de la barre latérale de gauche pour changer de dossier. Pour le moment, la liste déroulante s’intitule « Prise en main », ce qui correspond au dossier dans lequel se trouve le fichier fictif sur lequel vous vous exercez actuellement. Cliquez sur la liste déroulante et sélectionnez « Ouvrir un dossier… » pour accéder à votre propre dossier. + Par la suite, vous pourrez tout à fait revenir aux dossiers précédemment ouverts, y compris cet exemple de projet, grâce à cette même liste déroulante. + et tapez Cmd/Ctrl + E. Un éditeur rapide CSS apparaît en superposition, avec la règle CSS applicable. La fonction Edition rapide est également utilisable pour les attributs de classe et d’ID. + Une petite démonstration ? Placez le curseur de la souris sur la balise et tapez Cmd/Ctrl + E. Un éditeur rapide CSS apparaît en superposition, avec la règle CSS applicable. La fonction Edition rapide est également utilisable pour les attributs de classe et d’ID. Vous pouvez aussi vous en servir sur vos fichiers LESS et SCSS. - Vous pouvez créer de nouvelles règles en procédant de la même manière. Cliquez sur l’une des balises en haut du document et appuyez sur Cmd/Ctrl + E. Il n’existe aucune règle associée pour le moment, mais vous pouvez cliquer sur le bouton Nouvelle règle afin d’ajouter une règle pour . + Vous pouvez créer de nouvelles règles en procédant de la même manière. Cliquez sur l’une des balises en haut du document et appuyez sur Cmd/Ctrl + E</kbd>. Il n’existe aucune règle associée pour le moment, mais vous pouvez cliquer sur le bouton Nouvelle règle afin d’ajouter une règle pour . @@ -55,7 +65,9 @@

    Edition rapide des codes CSS et JavaScript

    - Vous pouvez utiliser le même raccourci pour éditer d’autres éléments, comme les fonctions dans JavaScript, les couleurs ou les fonctions de temporisation d’animation ; nous ajoutons sans cesse des nouveautés. + Vous pouvez utiliser le même raccourci pour éditer d’autres éléments, comme les fonctions dans JavaScript, les couleurs ou les fonctions de temporisation d’animation ; nous ajoutons sans cesse des nouveautés. +

    +

    Les éditeurs intégrés ne peuvent pas encore être imbriqués. Vous ne pouvez donc utiliser la fonction Edition rapide que lorsque le curseur se trouve dans un éditeur « plein écran ».

    @@ -80,7 +92,7 @@

    Mise en surbrillance en direct des éléments HTML et règles CSS

    Si vous avez installé Google Chrome, vous pouvez dès maintenant tester cette fonctionnalité. Cliquez sur l’icône représentant un éclair en haut à droite de la fenêtre Brackets ou utilisez la combinaison Cmd/Ctrl + Alt + P. Lorsque le module Aperçu en direct est activé sur un document HTML, tous les documents CSS associés peuvent être modifiés en temps réel. L’icône passe du gris au doré une fois que Brackets a établi la connexion à votre navigateur. - Placez maintenant le curseur de la souris sur la balise . Vous constatez qu’une surbrillance bleue apparaît tout autour de l’image dans Chrome. Utilisez ensuite la combinaison Cmd/Ctrl + E pour ouvrir les règles CSS définies. + Placez maintenant le curseur sur la balise . Vous constatez qu’une surbrillance bleue apparaît tout autour de l’image dans Chrome. Utilisez ensuite la combinaison Cmd/Ctrl + E pour ouvrir les règles CSS définies. Essayez de faire passer l’épaisseur de la bordure de 10 px à 20 px, ou de remplacer la couleur d’arrière-plan « transparent » par « hotpink ». Si Brackets et votre navigateur s’exécutent côte à côte, ce dernier affiche immédiatement les modifications. Plutôt sympathique, non ? @@ -99,19 +111,9 @@

    Affichage rapide

    Vous en voulez plus ? Jetez un œil du côté des extensions !

    - En plus de tous les atouts déjà intégrés à Brackets, notre communauté de développeurs, qui ne cesse de s’agrandir, a mis au point plus d’une centaine d’extensions qui offrent des fonctionnalités très pratiques. Si vous avez besoin d’une fonction qui ne se trouve pas dans Brackets, il est fort probable qu’un utilisateur ait créé l’extension qu’il vous faut. Pour parcourir la liste des extensions disponibles ou en rechercher une en particulier, cliquez sur Fichier > Extension Manager, puis ouvrez l’onglet « Disponible ». Lorsque vous trouvez l’extension qui vous convient, il vous suffit de cliquer sur le bouton Installer correspondant. -

    - -

    Projets Brackets

    -

    - Pour éditer votre propre code à l’aide de l’application Brackets, il vous suffit d’ouvrir le dossier contenant vos fichiers. Brackets traite le dossier ouvert en tant que « projet » ; ainsi, les fonctionnalités Indicateurs de code, Aperçu en direct ou encore Edition rapide s’appliquent uniquement aux fichiers du dossier ouvert. + En plus de tous les atouts déjà intégrés à Brackets, notre communauté de développeurs, qui ne cesse de s’agrandir, a mis au point des centaines d’extensions qui offrent des fonctionnalités très pratiques. Si vous avez besoin d’une fonction qui ne se trouve pas dans Brackets, il est fort probable qu’un utilisateur ait créé l’extension qu’il vous faut. Pour parcourir la liste des extensions disponibles ou en rechercher une en particulier, cliquez sur Fichier > Extension Manager, puis ouvrez l’onglet « Disponible ». Lorsque vous trouvez l’extension qui vous convient, il vous suffit de cliquer sur le bouton Installer correspondant.

    - - Si vous vous sentez prêt à franchir le cap et à éditer votre propre code, fermez cet exemple de projet et utilisez la liste déroulante de la barre latérale de gauche pour changer de dossier. Pour le moment, la liste déroulante s’intitule « Prise en main », ce qui correspond au dossier dans lequel se trouve le fichier fictif sur lequel vous vous exercez actuellement. Cliquez sur la liste déroulante et sélectionnez « Ouvrir un dossier… » pour accéder à votre propre dossier. - Par la suite, vous pourrez tout à fait revenir aux dossiers précédemment ouverts, y compris cet exemple de projet, grâce à cette même liste déroulante. - - @@ -127,8 +129,8 @@

    Participer

  • Registre des extensions Brackets
  • Wiki Brackets
  • Liste de diffusion des développeurs Brackets
  • -
  • @brackets sur Twitter
  • -
  • Discutez avec les développeurs de Brackets via IRC sur le canal #brackets du réseau Freenode.
  • +
  • @brackets on Twitter
  • +
  • Discutez avec les développeurs de Brackets via IRC sur #brackets on Freenode
  • diff --git a/samples/ja/Getting Started/index.html b/samples/ja/Getting Started/index.html index bfb99d8930c..a00dc9ee238 100644 --- a/samples/ja/Getting Started/index.html +++ b/samples/ja/Getting Started/index.html @@ -18,7 +18,7 @@

    まずはこのガイドからスタート

    -->

    - プレビュー版 Brackets に関心をお持ちいただきまして、誠にありがとうございます。Brackets は次世代の Web に向けて新開発されたオープンソースのエディターです。アドビでは標準規格を重視しており、JavaScript、HTML、CSS 用の優れたツールや、それに関連するオープンな Web テクノロジーの構築を目指しています。このプレビュー版 Brackets は、それに向けてのささやかな第一歩といえます。 + Web デザインを認識する最新のオープンソースエディター、Brackets をご利用いただき、ありがとうございます。軽量でありながらパワフルなコードエディターでのビジュアルツールとエディターとの融合により、必要なときに必要なだけのサポートを利用することができます。

    Brackets は、新しいタイプのエディターです。 - これまでのエディターと大きく異なる点は、JavaScript、HTML、CSS で記述されているということです。 - つまり、ほとんどの Brackets ユーザーは、習得済みのスキルを使って、このエディターそのものを変更したり拡張したりできるということになります。 - 実際、アドビ社内の開発チームも、毎日 Brackets を使用して Brackets の構築を進めています。また、Brackets にはクイック編集やライブプレビューなど、他のエディターにはないユニークな機能が備わっています。 - こうした機能の使用方法について、下記で詳しくご説明します。 + Brackets にはクイック編集やライブプレビューなど、他のエディターにはないユニークな機能が備わっています。Brackets は JavaScript、HTML および CSS で記述されています。つまり、ほとんどの Brackets ユーザーは、習得済みのスキルを使って、このエディターそのものを変更したり拡張したりできるということになります。実際、アドビ社内の開発チームも、毎日 Brackets を使用して Brackets の構築を進めています。主要機能の使用方法について、下記で詳しくご説明します。 +

    + + +

    Brackets のプロジェクト

    +

    + Brackets を使用して独自のコードを記述するには、自分のファイルを格納したフォルダーを開きます。 + 現時点で開いているフォルダーが Brackets によって「プロジェクト」として処理され、そのフォルダー内のファイルのみがコードヒント、ライブプレビュー、クイック編集などの機能で使用されます。 +

    -

    新しいアイデアを実装

    + + このサンプルプロジェクトを終了し、コードを編集する準備ができたら、左側のサイドバーのドロップダウンを使用してフォルダーを切り替えます。この時点で、ドロップダウンには「はじめに」が表示され、現在表示されているファイルが格納されたフォルダーが選択されています。ドロップダウンで「フォルダーを開く...」を選択して、使用するフォルダーを開きます。 + ドロップダウンを使用して、このサンプルプロジェクトが含まれるフォルダーなど、以前に開いたフォルダーに切り替えることもできます。 +

    CSS と JavaScript のクイック編集

    - いくつものドキュメントを行ったり来たりして、コードの文脈を見失うようなことはもうありません。HTML ファイルの編集中にショートカットの Command + E キーまたは Ctrl + E キーを使用すると、クイック編集用のインラインエディターが開き、関連する CSS がすべて表示されます。 - ここで CSS を調整して Esc キーを押せば、HTML の編集に戻ることができます。また、CSS ルールを開いたままにしておけば、HTML エディターの一部として使用できます。カーソルがクイック編集用インラインエディターの外にあるときに Esc キーを押すと、CSS ルールはすべて折りたたまれます。 + いくつものドキュメントを行ったり来たりして、コードの文脈を見失うようなことはもうありません。HTML ファイルの編集中にショートカットの Command+E キーまたは Ctrl+E キーを使用すると、クイック編集用のインラインエディターが開き、関連する CSS がすべて表示されます。 + ここで CSS を調整して Esc キーを押せば、HTML の編集に戻ることができます。また、CSS ルールを開いたままにしておけば、HTML エディターの一部として使用できます。カーソルがクイック編集用インラインエディターの外にあるときに Esc キーを押すと、CSS ルールはすべて折りたたまれます。また、クイック編集には、ネストされたルールなど、LESS および SCSS ファイルで定義されたルールも備わっています。

    - + - この機能を実際に使用するには、上部の タグにカーソルを合わせた状態で Command + E キーまたは Ctrl + E キーを押します。すると、上部に CSS クイック編集エディターが開き、適用する CSS ルールが表示されます。クイック編集は、クラスおよび id 属性にも使用できます。 + この機能を実際に使用するには、上部の タグにカーソルを合わせた状態で Command+E キーまたは Ctrl+E キーを押します。すると、上部に CSS クイック編集エディターが開き、適用する CSS ルールが表示されます。クイック編集は、クラスおよび id 属性にも使用できます。また、クイック編集は LESS および SCSS ファイルでも使用できます。 - 新規ルールも同じように作成できます。上部の タグのいずれかをクリックし、Command + E キーまたは Ctrl + E キーを押します。そのとき既存のルールがなければ、「新規ルール」ボタンをクリックして に新規ルールを追加できます。 + 新規ルールも同じように作成できます。上部の タグのいずれかをクリックし、Command+E キーまたは Ctrl+E キー</kbd>を押します。そのとき既存のルールがなければ、「新規ルール」ボタンをクリックして に新規ルールを追加できます。 @@ -56,6 +66,8 @@

    CSS と JavaScript のクイック編集

    同じショートカットを使用して、JavaScript の関数、カラー、アニメーションタイミング機能など、他のエレメントも編集できます。アドビでは、この機能を継続して強化していきます。 +

    +

    現時点ではインラインエディターをネストすることはできませんので、クイック編集を使用できるのは、カーソルが「フルサイズ」のエディター内にある場合に限られています。

    @@ -77,10 +89,10 @@

    HTML エレメントと CSS ルールのライブハイライト

    - お使いのコンピューターに Google Chrome がインストールされていれば、これを実際にお試しいただくことができます。Brackets ウィンドウの右上にある稲妻アイコンをクリックするか、Command + Alt + P キーまたは Ctrl + Alt + P キーを押します。HTML ドキュメントでライブプレビューが有効になっていれば、リンクされている CSS ドキュメントはすべてリアルタイムで編集可能です。 + お使いのコンピューターに Google Chrome がインストールされていれば、これを実際にお試しいただくことができます。Brackets ウィンドウの右上にある稲妻アイコンをクリックするか、Command+Alt+P キーまたは Ctrl+Alt+P キーを押します。HTML ドキュメントでライブプレビューが有効になっていれば、リンクされている CSS ドキュメントはすべてリアルタイムで編集可能です。 Brackets でローカルブラウザーとの接続が確立されると、アイコンがグレーから金色に変わります。 - この状態で、上部の タグにカーソルを合わせます。すると、Chrome 上で画像の周囲が青くハイライト表示されます。次に、Command + E キーまたは Ctrl + E キーを押して、定義済みの CSS ルールを開きます。 + この状態で、上部の タグにカーソルを合わせます。すると、Chrome 上で画像の周囲が青くハイライト表示されます。次に、Command+E キーまたは Ctrl+E キーを押して、定義済みの CSS ルールを開きます。 枠のサイズを 10 ピクセルから 20 ピクセルに変更するか、背景色を「透明」から「ホットピンク」に変更してみてください。Brackets とブラウザーが同時に動作していれば、この変更内容が瞬時にブラウザーの表示に反映されるのを確認できます。 @@ -94,30 +106,20 @@

    クイックビュー

    - クイックビューを実際に使ってみるには、このドキュメントの上部にある タグにカーソルを合わせます。その状態で Command + E キーまたは Ctrl + E キーを押すと、CSS クイック編集エディターが開きます。あとは、CSS 内でカラー値のどれかにカーソルを重ねるだけです。また、グラデーションに対してこの機能を使ってみるには、 タグで CSS クイック編集エディターを開き、背景画像の値にカーソルを重ねます。画像のプレビューを試す場合は、このドキュメントの前半に掲載されているスクリーンショット画像にカーソルを重ねてみてください。 + クイックビューを実際に使ってみるには、このドキュメントの上部にある タグにカーソルを合わせます。その状態で Command+E キーまたは Ctrl+E キーを押すと、CSS クイック編集エディターが開きます。あとは、CSS 内でカラー値のどれかにカーソルを重ねるだけです。また、グラデーションに対してこの機能を使ってみるには、 タグで CSS クイック編集エディターを開き、背景画像の値にカーソルを重ねます。画像のプレビューを試す場合は、このドキュメントの前半に掲載されているスクリーンショット画像にカーソルを重ねてみてください。

    拡張機能でさらに補強

    - Brackets に組み込まれた優れた機能に加え、拡大を続ける大規模なコミュニティで、デベロッパーらが 100 種類以上の便利な拡張機能を構築しています。Brackets にない機能を必要としたとき、ほぼ確実に構築済みの拡張機能が見つかります。使用可能な拡張機能の一覧を参照または検索するには、ファイル/Extension Manager を選択し、「入手可能」タブをクリックします。使用する拡張機能が見つかったら、その横の「インストール」ボタンをクリックします。 -

    - -

    Brackets のプロジェクト

    -

    - Brackets を使用して独自のコードを記述するには、自分のファイルを格納したフォルダーを開きます。現時点で開いているフォルダーが Brackets によって「プロジェクト」として処理され、そのフォルダー内のファイルのみがコードヒント、ライブプレビュー、クイック編集などの機能で使用されます。 + Brackets に組み込まれた優れた機能に加え、拡大を続ける大規模なコミュニティで、デベロッパーらが何百もの便利な拡張機能を構築しています。Brackets にない機能を必要としたとき、ほぼ確実に構築済みの拡張機能が見つかります。使用可能な拡張機能の一覧を参照または検索するには、ファイル/Extension Manager を選択し、「入手可能」タブをクリックします。使用する拡張機能が見つかったら、その横の「インストール」ボタンをクリックします。

    - - このサンプルプロジェクトを終了し、コードを編集する準備ができたら、左側のサイドバーのドロップダウンを使用してフォルダーを切り替えます。この時点で、ドロップダウンには「はじめに」が表示され、現在表示されているファイルが格納されたフォルダーが選択されています。ドロップダウンで「フォルダーを開く...」を選択して、使用するフォルダーを開きます。 - ドロップダウンを使用して、このサンプルプロジェクトが含まれるフォルダーなど、以前に開いたフォルダーに切り替えることもできます。 - -

    Brackets プロジェクトに参加

    - Brackets はオープンソースのプロジェクトです。世界中の Web デベロッパーが、優れたコードエディターの構築に貢献しています。さらに多くの人々が、Brackets の拡張機能の構築に携わっています。 + Brackets はオープンソースのプロジェクトです。世界中の Web 開発者が、優れたコードエディターの構築に貢献しています。さらに多くの人々が、Brackets の拡張機能の構築に携わっています。 ぜひ、このプロジェクトについてご意見・アイデアをお寄せください。プロジェクトへの直接的なご参加もお待ちしております。

    From 8331ec7f52c7439d94e219a3f0cb1b72c1639c2e Mon Sep 17 00:00:00 2001 From: Kevin Dangoor Date: Wed, 29 Oct 2014 10:41:49 -0400 Subject: [PATCH 108/141] Make the Refresh File Tree command clear caches as well to ensure a full refresh. As suggested in #7929. --- src/filesystem/FileSystem.js | 14 +++++++++++++- src/project/ProjectModel.js | 15 +++++++++++++-- test/spec/ProjectModel-test.js | 2 ++ 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/src/filesystem/FileSystem.js b/src/filesystem/FileSystem.js index 8578e1881b9..df019859b89 100644 --- a/src/filesystem/FileSystem.js +++ b/src/filesystem/FileSystem.js @@ -816,7 +816,18 @@ define(function (require, exports, module) { } } }; - + + /** + * Clears all cached content. Because of the performance implications of this, this should only be used if + * there is a suspicion that the file system has not been updated through the normal file watchers + * mechanism. + */ + FileSystem.prototype.clearAllCaches = function () { + this._index.visitAll(function (entry) { + entry._clearCachedData(true); + }); + }; + /** * Start watching a filesystem root entry. * @@ -965,6 +976,7 @@ define(function (require, exports, module) { exports.showSaveDialog = _wrap(FileSystem.prototype.showSaveDialog); exports.watch = _wrap(FileSystem.prototype.watch); exports.unwatch = _wrap(FileSystem.prototype.unwatch); + exports.clearAllCaches = _wrap(FileSystem.prototype.clearAllCaches); // Static public utility methods exports.isAbsolutePath = FileSystem.isAbsolutePath; diff --git a/src/project/ProjectModel.js b/src/project/ProjectModel.js index 17bdf883e59..951fd7218b0 100644 --- a/src/project/ProjectModel.js +++ b/src/project/ProjectModel.js @@ -1075,9 +1075,19 @@ define(function (require, exports, module) { }); } }; + + /** + * @private + * + * Clear all caches associated with the project. + */ + ProjectModel.prototype._clearAllCaches = function () { + this._resetCache(); + FileSystem.clearAllCaches(); + }; /** - * Refreshes the contents of the tree. + * Clears caches and refreshes the contents of the tree. * * @return {$.Promise} resolved when the tree has been refreshed */ @@ -1088,7 +1098,8 @@ define(function (require, exports, module) { selections = this._selections, viewModel = this._viewModel, deferred = new $.Deferred(); - + + this._clearAllCaches(); this.setProjectRoot(projectRoot).then(function () { self.reopenNodes(openNodes).then(function () { if (selections.selected) { diff --git a/test/spec/ProjectModel-test.js b/test/spec/ProjectModel-test.js index 20dcd6da18f..da8d189d74a 100644 --- a/test/spec/ProjectModel-test.js +++ b/test/spec/ProjectModel-test.js @@ -1080,6 +1080,7 @@ define(function (require, exports, module) { it("should refresh the whole tree", function () { var oldTree; + spyOn(model, "_clearAllCaches"); waitsForDone(model.reopenNodes(data.nodesByDepth)); runs(function () { model.setSelected("/foo/subdir1/subsubdir/interior.txt"); @@ -1102,6 +1103,7 @@ define(function (require, exports, module) { expect(vm._treeData.getIn(["subdir1", "children", "subsubdir", "children", "newInterior.txt"])).toBeDefined(); expect(vm._treeData.getIn(["subdir1", "children", "subsubdir", "children", "interior.txt"])).toBeUndefined(); expect(vm._treeData.getIn(["subdir3", "children", "higher.txt", "context"])).toBe(true); + expect(model._clearAllCaches).toHaveBeenCalled(); }); }); }); From b103db0a33524f0e95c7f1107d312de0c07918a5 Mon Sep 17 00:00:00 2001 From: Jeff Booher Date: Wed, 29 Oct 2014 09:29:19 -0700 Subject: [PATCH 109/141] update readme for 1.0 --- README.md | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/README.md b/README.md index 802ca6e73a9..4a75473f052 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ Welcome to Brackets! [![Build Status](https://travis-ci.org/adobe/brackets.svg?branch=master)](https://travis-ci.org/adobe/brackets) ------------------- -This is an early version of Brackets, a code editor for HTML, CSS +Brackets is a code editor for HTML, CSS and JavaScript that's *built* in HTML, CSS and JavaScript. What makes Brackets different from other web code editors? @@ -23,11 +23,6 @@ on the wiki, [intro videos](http://www.youtube.com/user/CodeBrackets) on YouTube How to install and run Brackets ------------------------------- - -#### Brackets is getting close to 1.0 - -Together with your contributions, we're getting close to our first release candidate. What's there is reasonably stable, and the Brackets team even uses Brackets to develop Brackets full time. So feel free to give it a spin and let us know what's missing! Being built on JavaScript, it's easy to make your own changes, and we give priority to integrating your pull requests back into Brackets! - #### Download Installers for the latest stable build for Mac, Windows and Linux (Debian/Ubuntu) can be [downloaded here](http://brackets.io/). From fd3ef2bf9041fc067c47d600df1372725f6f5f04 Mon Sep 17 00:00:00 2001 From: Mikael Jorhult Date: Wed, 29 Oct 2014 18:53:28 +0100 Subject: [PATCH 110/141] Add release build string to swedish translation. --- src/nls/sv/strings.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/nls/sv/strings.js b/src/nls/sv/strings.js index f2c5029e38c..ea109272098 100644 --- a/src/nls/sv/strings.js +++ b/src/nls/sv/strings.js @@ -426,6 +426,7 @@ define({ // Strings for main-view.html "EXPERIMENTAL_BUILD" : "experimental build", + "RELEASE_BUILD" : "build", "DEVELOPMENT_BUILD" : "development build", "RELOAD_FROM_DISK" : "Ladda om", "KEEP_CHANGES_IN_EDITOR" : "Behåll ändringar i editorn", @@ -627,4 +628,4 @@ define({ "DOCS_MORE_LINK" : "Läs mer" }); -/* Last translated for d57d327df4f042f2e87f3acc80bd9d01575c5c34 */ +/* Last translated for 893c065b715c211526dcd010c0294e12a8683995 */ From 9ddc4245ac89992e44c6e8edf759beeaaeebe5de Mon Sep 17 00:00:00 2001 From: Kevin Dangoor Date: Wed, 29 Oct 2014 14:59:02 -0400 Subject: [PATCH 111/141] Fixes the extension manager tests to work with 1.0 version --- test/spec/ExtensionManager-test.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/test/spec/ExtensionManager-test.js b/test/spec/ExtensionManager-test.js index 6d8dcf5adcb..cba2a4b902f 100644 --- a/test/spec/ExtensionManager-test.js +++ b/test/spec/ExtensionManager-test.js @@ -1195,7 +1195,7 @@ define(function (require, exports, module) { it("should show disabled install button if requires newer API version", function () { // isCompatible: false, requiresNewer: true runs(function () { - mockRegistry = { "mock-extension": makeMockExtension([">0.100"]) }; + mockRegistry = { "mock-extension": makeMockExtension([">100.0"]) }; setupViewWithMockData(ExtensionManagerViewModel.RegistryViewModel); }); runs(function () { @@ -1229,7 +1229,7 @@ define(function (require, exports, module) { it("should show enabled install button if latest requires newer API version", function () { // isCompatible: true, isLatestVersion: false, requiresNewer: true runs(function () { - mockRegistry = { "mock-extension": makeMockExtension([">0.1", ">0.100"]) }; + mockRegistry = { "mock-extension": makeMockExtension([">0.1", ">100.0"]) }; setupViewWithMockData(ExtensionManagerViewModel.RegistryViewModel); }); runs(function () { @@ -1277,7 +1277,7 @@ define(function (require, exports, module) { it("should install latest compatible version", function () { runs(function () { - mockRegistry = { "mock-extension": makeMockExtension([">0.1", ">0.2", ">0.100"]) }; + mockRegistry = { "mock-extension": makeMockExtension([">0.1", ">0.2", ">100.0"]) }; setupViewWithMockData(ExtensionManagerViewModel.RegistryViewModel); }); runs(function () { @@ -1324,7 +1324,7 @@ define(function (require, exports, module) { }); it("should show disabled update button for items whose available update requires newer API version", function () { // isLatestVersion: false, requiresNewer: true - mockRegistry = { "mock-extension": makeMockExtension([">0.1", ">0.100"]) }; + mockRegistry = { "mock-extension": makeMockExtension([">0.1", ">100.0"]) }; var mockInstallInfo = { "mock-extension": { installInfo: makeMockInstalledVersion(mockRegistry["mock-extension"], "1.0.0") } }; ExtensionManager._setExtensions(mockInstallInfo); setupViewWithMockData(ExtensionManagerViewModel.RegistryViewModel); @@ -1586,7 +1586,7 @@ define(function (require, exports, module) { }); it("should show disabled update button for items whose available update requires newer API version", function () { // isLatestVersion: false, requiresNewer: true - mockRegistry = { "mock-extension": makeMockExtension([">0.1", ">0.100"]) }; + mockRegistry = { "mock-extension": makeMockExtension([">0.1", ">100.0"]) }; var mockInstallInfo = { "mock-extension": { installInfo: makeMockInstalledVersion(mockRegistry["mock-extension"], "1.0.0") } }; ExtensionManager._setExtensions(mockInstallInfo); waitsForDone(ExtensionManager.downloadRegistry()); // ensure mockRegistry integrated in From 9ac6521bf9b9ca9bfaa7deaa201f54ad29565f79 Mon Sep 17 00:00:00 2001 From: Christopher Pecoraro Date: Wed, 29 Oct 2014 20:19:56 +0100 Subject: [PATCH 112/141] adding a few Italian phrases --- src/nls/it/strings.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/nls/it/strings.js b/src/nls/it/strings.js index fc099c2803d..bedeb6ac767 100644 --- a/src/nls/it/strings.js +++ b/src/nls/it/strings.js @@ -34,6 +34,7 @@ define({ "GENERIC_ERROR" : "(errore {0})", "NOT_FOUND_ERR" : "Impossibile trovare il file.", "NOT_READABLE_ERR" : "Il file non può essere letto.", + "EXCEEDS_MAX_FILE_SIZE" : "File oltre {0} MB non possono essere aperti con {APP_NAME}.", "NO_MODIFICATION_ALLOWED_ERR" : "La cartella selezionata non può essere modificata.", "NO_MODIFICATION_ALLOWED_ERR_FILE" : "Non hai i permessi necessari per effettuare la modifica.", "CONTENTS_MODIFIED_ERR" : "Il file è stato modificato fuori {APP_NAME}.", @@ -73,6 +74,18 @@ define({ "ERROR_CREATING_FILE_TITLE" : "Errore durante la creazione del file", "ERROR_CREATING_FILE" : "Errore durante il tentativo di creare il file {0}. {1}", "ERROR_MIXED_DRAGDROP" : "Impossibile aprire una cartella, contemporaneamente, come l'apertura di altri file.", + + + // User key map error strings + "ERROR_KEYMAP_TITLE" : "Errore nella lettura della mappatura dei tasti", + "ERROR_KEYMAP_CORRUPT" : "Il tuo file non è in formatto JSON valide. Il file sarà riaperto per poter correggiare il formatto.", + "ERROR_LOADING_KEYMAP" : "La tua mappatura dei tasti non è un file formattato con testo UTF-8 valido e non può essere caricato", + "ERROR_RESTRICTED_COMMANDS" : "Non puoi riassegnare queste scorciatoie: {0}", + "ERROR_RESTRICTED_SHORTCUTS" : "Non puoi riassegnare delle scorciatoie a questi commandi: {0}", + "ERROR_MULTIPLE_SHORTCUTS" : "Stai riassegnando più di una scorciatoia a questi commandi:: {0}", + "ERROR_INVALID_SHORTCUTS" : "Queste scorciatoie non sono valide: {0}", + "ERROR_NONEXISTENT_COMMANDS" : "Stai assegnando scorciatoie a commandi inesistenti: {0}", + // Application preferences corrupt error strings "ERROR_PREFS_CORRUPT_TITLE" : "Errore nella lettura delle preferenze", From 5596ecb09ce4f7546408d3bd6135b876e31bbdbd Mon Sep 17 00:00:00 2001 From: Christopher Pecoraro Date: Wed, 29 Oct 2014 20:54:51 +0100 Subject: [PATCH 113/141] adding in Release build --- src/nls/it/strings.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/nls/it/strings.js b/src/nls/it/strings.js index bedeb6ac767..1f936c6f147 100644 --- a/src/nls/it/strings.js +++ b/src/nls/it/strings.js @@ -79,7 +79,7 @@ define({ // User key map error strings "ERROR_KEYMAP_TITLE" : "Errore nella lettura della mappatura dei tasti", "ERROR_KEYMAP_CORRUPT" : "Il tuo file non è in formatto JSON valide. Il file sarà riaperto per poter correggiare il formatto.", - "ERROR_LOADING_KEYMAP" : "La tua mappatura dei tasti non è un file formattato con testo UTF-8 valido e non può essere caricato", + "ERROR_LOADING_KEYMAP" : "La tua mappatura dei tasti non è un file nel formatto UTF-8 valido e non può essere caricato", "ERROR_RESTRICTED_COMMANDS" : "Non puoi riassegnare queste scorciatoie: {0}", "ERROR_RESTRICTED_SHORTCUTS" : "Non puoi riassegnare delle scorciatoie a questi commandi: {0}", "ERROR_MULTIPLE_SHORTCUTS" : "Stai riassegnando più di una scorciatoia a questi commandi:: {0}", @@ -427,6 +427,7 @@ define({ // Strings for main-view.html "EXPERIMENTAL_BUILD" : "build sperimentale", "DEVELOPMENT_BUILD" : "build di sviluppo", + "RELEASE_BUILD" : "build di rilascio", "RELOAD_FROM_DISK" : "Ricarica dal disco", "KEEP_CHANGES_IN_EDITOR" : "Conserva le modifiche nell’editor", "CLOSE_DONT_SAVE" : "Chiudi (non salvare)", From f7a4ed1bb9a51dd42481c1ee6dce60d36534eae3 Mon Sep 17 00:00:00 2001 From: Christopher Pecoraro Date: Wed, 29 Oct 2014 21:02:40 +0100 Subject: [PATCH 114/141] fixing a typo --- src/nls/it/strings.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nls/it/strings.js b/src/nls/it/strings.js index 1f936c6f147..2266d350865 100644 --- a/src/nls/it/strings.js +++ b/src/nls/it/strings.js @@ -77,9 +77,9 @@ define({ // User key map error strings - "ERROR_KEYMAP_TITLE" : "Errore nella lettura della mappatura dei tasti", - "ERROR_KEYMAP_CORRUPT" : "Il tuo file non è in formatto JSON valide. Il file sarà riaperto per poter correggiare il formatto.", - "ERROR_LOADING_KEYMAP" : "La tua mappatura dei tasti non è un file nel formatto UTF-8 valido e non può essere caricato", + "ERROR_KEYMAP_TITLE" : "Errore nella lettura della key map", + "ERROR_KEYMAP_CORRUPT" : "Il tuo file non è in formato JSON valido. Il file sarà riaperto per poter correggiare il formato.", + "ERROR_LOADING_KEYMAP" : "La tua key map non è un file UTF-8 valido e non può essere caricato", "ERROR_RESTRICTED_COMMANDS" : "Non puoi riassegnare queste scorciatoie: {0}", "ERROR_RESTRICTED_SHORTCUTS" : "Non puoi riassegnare delle scorciatoie a questi commandi: {0}", "ERROR_MULTIPLE_SHORTCUTS" : "Stai riassegnando più di una scorciatoia a questi commandi:: {0}", From 0edec4658f5a8612bbf28c62fab96acf8eb74c2d Mon Sep 17 00:00:00 2001 From: TomMalbran Date: Wed, 29 Oct 2014 17:15:56 -0300 Subject: [PATCH 115/141] Fixed both typos --- samples/es/Primeros Pasos/index.html | 6 +++--- src/nls/es/strings.js | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/samples/es/Primeros Pasos/index.html b/samples/es/Primeros Pasos/index.html index 47ce1056920..416e6365155 100644 --- a/samples/es/Primeros Pasos/index.html +++ b/samples/es/Primeros Pasos/index.html @@ -72,9 +72,9 @@

    Edición rápida de CSS y JavaScript

    - ¿Quieres verlo funcionando? Coloca tu cursor sobe la etiqueta y oprime - Cmd/Ctrl + E. Deberías ver aparecer un editor rápido de CSS más arriba, mostrando la regla CSS - que le afecta. La edición rápida funciona también en atributos de de tipo clase e id. También puedes + ¿Quieres verlo funcionando? Coloca tu cursor sobre la etiqueta y oprime + Cmd/Ctrl + E. Deberías ver aparecer un editor rápido de CSS más arriba, mostrando la regla de + CSS que le afecta. La edición rápida funciona también en atributos de de tipo clase e id. También puedes utilizarlo en tus archivos LESS o SCSS. Puedes crear nuevas reglas de la misma manera. Haz clic en una de las etiquetas de más arriba diff --git a/src/nls/es/strings.js b/src/nls/es/strings.js index a75de0f64d3..a93be266e12 100644 --- a/src/nls/es/strings.js +++ b/src/nls/es/strings.js @@ -453,7 +453,7 @@ define({ "BASEURL_ERROR_HASH_DISALLOWED" : "La URL base no puede contener hashes como \"{0}\".", "BASEURL_ERROR_INVALID_CHAR" : "Los caracteres especiales como '{0}' deben codificarse en formato %.", "BASEURL_ERROR_UNKNOWN_ERROR" : "Error desconocido analizando la URL base", - "EMPTY_VIEW_HEADER" : "Abra un archivo mientras este panel está efocado", + "EMPTY_VIEW_HEADER" : "Abra un archivo mientras este panel está enfocado", // Strings for themes-settings.html and themes-general.html "CURRENT_THEME" : "Tema actual", From 1976e59efe3356ba75fa710619f26518c1e0d8e6 Mon Sep 17 00:00:00 2001 From: Jeff Booher Date: Wed, 29 Oct 2014 13:38:24 -0700 Subject: [PATCH 116/141] rtc --- README.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 4a75473f052..4ab12aab0eb 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ Welcome to Brackets! [![Build Status](https://travis-ci.org/adobe/brackets.svg?branch=master)](https://travis-ci.org/adobe/brackets) ------------------- -Brackets is a code editor for HTML, CSS +Brackets is a modern open-source code editor for HTML, CSS and JavaScript that's *built* in HTML, CSS and JavaScript. What makes Brackets different from other web code editors? @@ -15,14 +15,17 @@ back and forth between your real source code and the browser view. * **Do it yourself.** Because Brackets is open source, and built with HTML, CSS and JavaScript, you can [help build](https://github.com/adobe/brackets/blob/master/CONTRIBUTING.md) the best code editor for the web. +Brackets is at 1.0 and we're not stopping there. We have many feature ideas on our +[trello board](http://bit.ly/BracketsTrelloBoard) that we're anxious to add and other +innovative web development tools that we're integrating with Brackets behind the scenes. +So take Brackets out for a spin and let us know how we can make it your favorite editor. + You can see some [screenshots of Brackets](https://github.com/adobe/brackets/wiki/Brackets-Screenshots) on the wiki, [intro videos](http://www.youtube.com/user/CodeBrackets) on YouTube, and news on the [Brackets blog](http://blog.brackets.io/). - How to install and run Brackets ------------------------------- - #### Download Installers for the latest stable build for Mac, Windows and Linux (Debian/Ubuntu) can be [downloaded here](http://brackets.io/). From 9e7830c1d0060aa8d3f3669f3cc7eb92125cce91 Mon Sep 17 00:00:00 2001 From: Jeff Booher Date: Wed, 29 Oct 2014 14:53:47 -0700 Subject: [PATCH 117/141] 86 behind the scenes --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 4ab12aab0eb..28a3412145a 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ and JavaScript, you can [help build](https://github.com/adobe/brackets/blob/mast Brackets is at 1.0 and we're not stopping there. We have many feature ideas on our [trello board](http://bit.ly/BracketsTrelloBoard) that we're anxious to add and other -innovative web development tools that we're integrating with Brackets behind the scenes. +innovative web development workflows that we're planning to build into Brackets. So take Brackets out for a spin and let us know how we can make it your favorite editor. You can see some From fada23ff0bb3efd4e0956061e1cd94176eff40b2 Mon Sep 17 00:00:00 2001 From: Claudio Rivabene Date: Thu, 30 Oct 2014 09:24:00 -0400 Subject: [PATCH 118/141] Fixed some translation issues --- src/nls/it/strings.js | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/nls/it/strings.js b/src/nls/it/strings.js index 2266d350865..09d76955605 100644 --- a/src/nls/it/strings.js +++ b/src/nls/it/strings.js @@ -73,7 +73,7 @@ define({ "FILE_ALREADY_EXISTS" : "Il file {0} esiste già.", "ERROR_CREATING_FILE_TITLE" : "Errore durante la creazione del file", "ERROR_CREATING_FILE" : "Errore durante il tentativo di creare il file {0}. {1}", - "ERROR_MIXED_DRAGDROP" : "Impossibile aprire una cartella, contemporaneamente, come l'apertura di altri file.", + "ERROR_MIXED_DRAGDROP" : "Impossibile aprire una cartella contemporaneamente all'apertura di altri file.", // User key map error strings @@ -81,10 +81,10 @@ define({ "ERROR_KEYMAP_CORRUPT" : "Il tuo file non è in formato JSON valido. Il file sarà riaperto per poter correggiare il formato.", "ERROR_LOADING_KEYMAP" : "La tua key map non è un file UTF-8 valido e non può essere caricato", "ERROR_RESTRICTED_COMMANDS" : "Non puoi riassegnare queste scorciatoie: {0}", - "ERROR_RESTRICTED_SHORTCUTS" : "Non puoi riassegnare delle scorciatoie a questi commandi: {0}", - "ERROR_MULTIPLE_SHORTCUTS" : "Stai riassegnando più di una scorciatoia a questi commandi:: {0}", + "ERROR_RESTRICTED_SHORTCUTS" : "Non puoi riassegnare delle scorciatoie a questi comandi: {0}", + "ERROR_MULTIPLE_SHORTCUTS" : "Stai riassegnando più di una scorciatoia a questi comandi:: {0}", "ERROR_INVALID_SHORTCUTS" : "Queste scorciatoie non sono valide: {0}", - "ERROR_NONEXISTENT_COMMANDS" : "Stai assegnando scorciatoie a commandi inesistenti: {0}", + "ERROR_NONEXISTENT_COMMANDS" : "Stai assegnando scorciatoie a comandi inesistenti: {0}", // Application preferences corrupt error strings @@ -93,7 +93,7 @@ define({ // Application error strings "ERROR_IN_BROWSER_TITLE" : "Oops! {APP_NAME} non può essere ancora eseguita nel browser.", - "ERROR_IN_BROWSER" : "{APP_NAME} è scritta in HTML, ma al momento viene eseguita come applicazione desktop per avere la possibilità di modificare file locali. Puoi usare la shell dell’applicazione Puoi usare la shell sul github.com/adobe/brackets-shell repository per eseguire {APP_NAME}.", + "ERROR_IN_BROWSER" : "{APP_NAME} è scritta in HTML, ma al momento viene eseguita come applicazione desktop per avere la possibilità di modificare file locali. Puoi usare la shell dal repository github.com/adobe/brackets-shell per eseguire {APP_NAME}.", // ProjectManager max files error string "ERROR_MAX_FILES_TITLE" : "Errore durante l’indicizzazione dei file", @@ -504,7 +504,7 @@ define({ "BAD_HTTP_STATUS" : "File non trovato sul server (HTTP {0}).", "CANNOT_WRITE_TEMP" : "Impossibile salvare il file scaricato nei file temporanei.", "ERROR_LOADING" : "Questa estensione ha incontrato un errore durante l’avvio.", - "MALFORMED_URL" : "L’indirizzo URL è invalido. Controlla di averlo inserito correttamente.", + "MALFORMED_URL" : "L’indirizzo URL non è valido. Controlla di averlo inserito correttamente.", "UNSUPPORTED_PROTOCOL" : "L’indirizzo URL dev’essere di tipo http o https.", "UNKNOWN_ERROR" : "Errore interno sconosciuto.", // For NOT_FOUND_ERR, see generic strings above From c6a2f463df6ed1819b74bb1a3566e612e9e0fafd Mon Sep 17 00:00:00 2001 From: Kevin Dangoor Date: Thu, 30 Oct 2014 10:58:09 -0400 Subject: [PATCH 119/141] Simpler implementation of refreshFileTree that does a full refresh. --- src/filesystem/FileSystem.js | 4 +-- src/project/ProjectManager.js | 55 ++++++---------------------------- src/project/ProjectModel.js | 11 ------- test/spec/ProjectModel-test.js | 2 -- 4 files changed, 10 insertions(+), 62 deletions(-) diff --git a/src/filesystem/FileSystem.js b/src/filesystem/FileSystem.js index df019859b89..32b4b07e48e 100644 --- a/src/filesystem/FileSystem.js +++ b/src/filesystem/FileSystem.js @@ -823,9 +823,7 @@ define(function (require, exports, module) { * mechanism. */ FileSystem.prototype.clearAllCaches = function () { - this._index.visitAll(function (entry) { - entry._clearCachedData(true); - }); + this._handleExternalChange(null); }; /** diff --git a/src/project/ProjectManager.js b/src/project/ProjectManager.js index 7f836316a95..c7d856cd65e 100644 --- a/src/project/ProjectManager.js +++ b/src/project/ProjectManager.js @@ -920,21 +920,6 @@ define(function (require, exports, module) { return result.promise(); } - /** - * @private - * @type {?$.Promise} Resolves when the currently running instance of - * _refreshFileTreeInternal completes, or null if there is no currently - * running instance. - */ - var _refreshFileTreePromise = null; - - /** - * @type {boolean} If refreshFileTree is called before _refreshFileTreePromise - * has resolved then _refreshPending is set, which indicates that - * refreshFileTree should be called again once the promise resolves. - */ - var _refreshPending = false; - /** * @const * @private @@ -944,38 +929,16 @@ define(function (require, exports, module) { /** * Refresh the project's file tree, maintaining the current selection. - * - * @return {$.Promise} A promise object that will be resolved when the - * project tree is reloaded, or rejected if the project path - * fails to reload. If the previous selected entry is not found, - * the promise is still resolved. + * + * Note that the original implementation of this returned a promise to be resolved when the refresh is complete. + * That use is deprecated and `refreshFileTree` is now a "fire and forget" kind of function. */ - function refreshFileTree() { - if (!_refreshFileTreePromise) { - var internalRefreshPromise = model.refresh(), - deferred = new $.Deferred(); - - _refreshFileTreePromise = deferred.promise(); - - _refreshFileTreePromise.always(function () { - _refreshFileTreePromise = null; - - if (_refreshPending) { - _refreshPending = false; - refreshFileTree(); - } - }); - - // Wait at least one second before resolving the promise - window.setTimeout(function () { - internalRefreshPromise.then(deferred.resolve, deferred.reject); - }, _refreshDelay); - } else { - _refreshPending = true; - } - - return _refreshFileTreePromise; - } + var refreshFileTree = function refreshFileTree() { + FileSystem.clearAllCaches(); + return new $.Deferred().resolve().promise(); + }; + + refreshFileTree = _.debounce(refreshFileTree, _refreshDelay); /** * Expands tree nodes to show the given file or folder and selects it. Silently no-ops if the diff --git a/src/project/ProjectModel.js b/src/project/ProjectModel.js index 951fd7218b0..7c0a7f551e2 100644 --- a/src/project/ProjectModel.js +++ b/src/project/ProjectModel.js @@ -1076,16 +1076,6 @@ define(function (require, exports, module) { } }; - /** - * @private - * - * Clear all caches associated with the project. - */ - ProjectModel.prototype._clearAllCaches = function () { - this._resetCache(); - FileSystem.clearAllCaches(); - }; - /** * Clears caches and refreshes the contents of the tree. * @@ -1099,7 +1089,6 @@ define(function (require, exports, module) { viewModel = this._viewModel, deferred = new $.Deferred(); - this._clearAllCaches(); this.setProjectRoot(projectRoot).then(function () { self.reopenNodes(openNodes).then(function () { if (selections.selected) { diff --git a/test/spec/ProjectModel-test.js b/test/spec/ProjectModel-test.js index da8d189d74a..20dcd6da18f 100644 --- a/test/spec/ProjectModel-test.js +++ b/test/spec/ProjectModel-test.js @@ -1080,7 +1080,6 @@ define(function (require, exports, module) { it("should refresh the whole tree", function () { var oldTree; - spyOn(model, "_clearAllCaches"); waitsForDone(model.reopenNodes(data.nodesByDepth)); runs(function () { model.setSelected("/foo/subdir1/subsubdir/interior.txt"); @@ -1103,7 +1102,6 @@ define(function (require, exports, module) { expect(vm._treeData.getIn(["subdir1", "children", "subsubdir", "children", "newInterior.txt"])).toBeDefined(); expect(vm._treeData.getIn(["subdir1", "children", "subsubdir", "children", "interior.txt"])).toBeUndefined(); expect(vm._treeData.getIn(["subdir3", "children", "higher.txt", "context"])).toBe(true); - expect(model._clearAllCaches).toHaveBeenCalled(); }); }); }); From cc2735137da577281cc3b67415e30cbfd258c39a Mon Sep 17 00:00:00 2001 From: Kevin Dangoor Date: Thu, 30 Oct 2014 11:32:38 -0400 Subject: [PATCH 120/141] Restore the QuickOpen.basicMatchSort and friends. This change broke a few extensions. Looking at the fix, it seems that all QuickOpen plugins will likely need these functions, so we may as well re-export them as we have been doing rather than requiring the extensions to all add another import. If we do decide to deprecate these later, we should do so with deprecation warnings (something we weren't doing when these were moved to the StringMatch module). Revert "Marked as deprecated by adobe/brackets#2462 in Sprint 19" This reverts commit 49e08274a0bc9259d6dd94c03351e4c87bf570f9. --- src/search/QuickOpen.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/search/QuickOpen.js b/src/search/QuickOpen.js index f23edc9c5a4..446057adccb 100644 --- a/src/search/QuickOpen.js +++ b/src/search/QuickOpen.js @@ -949,4 +949,10 @@ define(function (require, exports, module) { exports.beginSearch = beginSearch; exports.addQuickOpenPlugin = addQuickOpenPlugin; exports.highlightMatch = highlightMatch; + + // accessing these from this module will ultimately be deprecated + exports.stringMatch = StringMatch.stringMatch; + exports.SearchResult = StringMatch.SearchResult; + exports.basicMatchSort = StringMatch.basicMatchSort; + exports.multiFieldSort = StringMatch.multiFieldSort; }); From 7e7f4a1fb3a3bc6793324af47ba8b0d04d3573bb Mon Sep 17 00:00:00 2001 From: Kevin Dangoor Date: Thu, 30 Oct 2014 11:35:15 -0400 Subject: [PATCH 121/141] Add clarifying comment for re-exported StringMatch functions in Quick Open. --- src/search/QuickOpen.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/search/QuickOpen.js b/src/search/QuickOpen.js index 446057adccb..d12a14401b4 100644 --- a/src/search/QuickOpen.js +++ b/src/search/QuickOpen.js @@ -950,7 +950,7 @@ define(function (require, exports, module) { exports.addQuickOpenPlugin = addQuickOpenPlugin; exports.highlightMatch = highlightMatch; - // accessing these from this module will ultimately be deprecated + // Convenience exports for functions that most QuickOpen plugins would need. exports.stringMatch = StringMatch.stringMatch; exports.SearchResult = StringMatch.SearchResult; exports.basicMatchSort = StringMatch.basicMatchSort; From 22b35d36a4fd6e8a7c8cc3bea06cc668a9287216 Mon Sep 17 00:00:00 2001 From: Christopher Pecoraro Date: Thu, 30 Oct 2014 21:07:13 +0100 Subject: [PATCH 122/141] fixing a typo: correggiare should be correggere --- src/nls/it/strings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nls/it/strings.js b/src/nls/it/strings.js index 09d76955605..d86e420f263 100644 --- a/src/nls/it/strings.js +++ b/src/nls/it/strings.js @@ -78,7 +78,7 @@ define({ // User key map error strings "ERROR_KEYMAP_TITLE" : "Errore nella lettura della key map", - "ERROR_KEYMAP_CORRUPT" : "Il tuo file non è in formato JSON valido. Il file sarà riaperto per poter correggiare il formato.", + "ERROR_KEYMAP_CORRUPT" : "Il tuo file non è in formato JSON valido. Il file sarà riaperto per poter correggere il formato.", "ERROR_LOADING_KEYMAP" : "La tua key map non è un file UTF-8 valido e non può essere caricato", "ERROR_RESTRICTED_COMMANDS" : "Non puoi riassegnare queste scorciatoie: {0}", "ERROR_RESTRICTED_SHORTCUTS" : "Non puoi riassegnare delle scorciatoie a questi comandi: {0}", From 25cb91cfc58002cbc90e447d8932e7c998333f95 Mon Sep 17 00:00:00 2001 From: Kevin Dangoor Date: Fri, 31 Oct 2014 10:10:25 -0400 Subject: [PATCH 123/141] Restore editor keyEvent. This one wasn't fully deprecated (no warning in console, still in documentation) and there are still a number of extensions that depend upon it. Revert "Deprecated by adobe/brackets#6787" This reverts commit 2e7bc6ab049b5fc50915b54f77e8c1c2b1239845. --- src/editor/Editor.js | 1 + 1 file changed, 1 insertion(+) diff --git a/src/editor/Editor.js b/src/editor/Editor.js index 6a03579cdee..aaffb0f3530 100644 --- a/src/editor/Editor.js +++ b/src/editor/Editor.js @@ -838,6 +838,7 @@ define(function (require, exports, module) { // Redispatch these CodeMirror key events as jQuery events function _onKeyEvent(instance, event) { + $(self).triggerHandler("keyEvent", [self, event]); // deprecated $(self).triggerHandler(event.type, [self, event]); return event.defaultPrevented; // false tells CodeMirror we didn't eat the event } From 85e117dd12818e19502c7d5675fbebaea0bf8700 Mon Sep 17 00:00:00 2001 From: "walf (Localization Automation)" Date: Fri, 31 Oct 2014 09:49:48 -0700 Subject: [PATCH 124/141] Updated by ALF automation. --- src/nls/fr/strings.js | 10 +++++----- src/nls/ja/strings.js | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/nls/fr/strings.js b/src/nls/fr/strings.js index 8b6343e9b0f..ac922393ac8 100644 --- a/src/nls/fr/strings.js +++ b/src/nls/fr/strings.js @@ -76,13 +76,13 @@ define({ "ERROR_MIXED_DRAGDROP": "Impossible d’ouvrir un dossier en même temps que d’autres fichiers.", // User key map error strings - "ERROR_KEYMAP_TITLE": "Erreur lors de la lecture de la mappe de clé utilisateur", - "ERROR_KEYMAP_CORRUPT": "Votre fichier de mappe de clé n'est pas un fichier JSON valide. Il va s'ouvrir afin que vous puissiez corriger le format.", - "ERROR_LOADING_KEYMAP": "Votre fichier de mappe de clé n'étant pas un fichier texte codé en UTF-8 valide, il ne peut pas être chargé", + "ERROR_KEYMAP_TITLE": "Erreur lors de la lecture du mappage de touches utilisateur", + "ERROR_KEYMAP_CORRUPT": "Votre fichier de mappage de touches n’est pas un fichier JSON valide. Il va s’ouvrir afin que vous puissiez corriger le format.", + "ERROR_LOADING_KEYMAP": "Votre fichier de mappage de touches n’étant pas un fichier texte codé en UTF-8 valide, il ne peut pas être chargé.", "ERROR_RESTRICTED_COMMANDS": "Vous ne pouvez pas réaffecter de raccourcis à ces commandes : {0}", "ERROR_RESTRICTED_SHORTCUTS": "Vous ne pouvez pas réaffecter ces raccourcis : {0}", "ERROR_MULTIPLE_SHORTCUTS": "Vous réaffectez plusieurs raccourcis à ces commandes : {0}", - "ERROR_DUPLICATE_SHORTCUTS": "Vous disposez de plusieurs liaisons pour ces raccourcis : {0}", + "ERROR_DUPLICATE_SHORTCUTS": "Plusieurs liaisons ont été définies pour les raccourcis suivants : {0}", "ERROR_INVALID_SHORTCUTS": "Ces raccourcis ne sont pas valides : {0}", "ERROR_NONEXISTENT_COMMANDS": "Vous affectez des raccourcis à des commandes qui n'existent pas : {0}", @@ -422,7 +422,7 @@ define({ "CMD_TWITTER": "{TWITTER_NAME} sur Twitter", "CMD_ABOUT": "A propos de {APP_TITLE}", "CMD_OPEN_PREFERENCES": "Ouvrir le fichier de préférences", - "CMD_OPEN_KEYMAP": "Ouvrir la mappe de clé utilisateur", + "CMD_OPEN_KEYMAP": "Ouvrir le mappage de touches utilisateur", // Strings for main-view.html "EXPERIMENTAL_BUILD": "version expérimentale", diff --git a/src/nls/ja/strings.js b/src/nls/ja/strings.js index 85316338794..18b0304e272 100644 --- a/src/nls/ja/strings.js +++ b/src/nls/ja/strings.js @@ -79,11 +79,11 @@ define({ "ERROR_KEYMAP_TITLE": "ユーザーキーマップを読み込む際にエラーが発生しました", "ERROR_KEYMAP_CORRUPT": "キーマップファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。", "ERROR_LOADING_KEYMAP": "キーマップファイルが UTF-8 でエンコードされた有効なテキストファイルではないため、読み込めません", - "ERROR_RESTRICTED_COMMANDS": "これらのコマンドにショートカットを割り当て直すことはできません : {0}", - "ERROR_RESTRICTED_SHORTCUTS": "これらのショートカットを割り当て直すことはできません : {0}", - "ERROR_MULTIPLE_SHORTCUTS": "これらのコマンドに複数のショートカットを割り当て直しています : {0}", - "ERROR_DUPLICATE_SHORTCUTS": "これらのショートカットの複数のバインディングがあります : {0}", - "ERROR_INVALID_SHORTCUTS": "これらのショートカットは無効です : {0}", + "ERROR_RESTRICTED_COMMANDS": "次のコマンドにショートカットを割り当て直すことはできません : {0}", + "ERROR_RESTRICTED_SHORTCUTS": "次のショートカットを割り当て直すことはできません : {0}", + "ERROR_MULTIPLE_SHORTCUTS": "次のコマンドに複数のショートカットを割り当て直しています : {0}", + "ERROR_DUPLICATE_SHORTCUTS": "次のショートカットの複数のバインディングがあります : {0}", + "ERROR_INVALID_SHORTCUTS": "次のショートカットは無効です : {0}", "ERROR_NONEXISTENT_COMMANDS": "存在しないコマンドにショートカットを割り当てています : {0}", // Application preferences corrupt error strings From 262db70577e20b9a683db5a64d56a41f1a346a27 Mon Sep 17 00:00:00 2001 From: Randy Edmunds Date: Fri, 31 Oct 2014 11:35:57 -0700 Subject: [PATCH 125/141] alf changes for release branch --- src/nls/fr/strings.js | 10 +++++----- src/nls/ja/strings.js | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/nls/fr/strings.js b/src/nls/fr/strings.js index 8b6343e9b0f..ac922393ac8 100644 --- a/src/nls/fr/strings.js +++ b/src/nls/fr/strings.js @@ -76,13 +76,13 @@ define({ "ERROR_MIXED_DRAGDROP": "Impossible d’ouvrir un dossier en même temps que d’autres fichiers.", // User key map error strings - "ERROR_KEYMAP_TITLE": "Erreur lors de la lecture de la mappe de clé utilisateur", - "ERROR_KEYMAP_CORRUPT": "Votre fichier de mappe de clé n'est pas un fichier JSON valide. Il va s'ouvrir afin que vous puissiez corriger le format.", - "ERROR_LOADING_KEYMAP": "Votre fichier de mappe de clé n'étant pas un fichier texte codé en UTF-8 valide, il ne peut pas être chargé", + "ERROR_KEYMAP_TITLE": "Erreur lors de la lecture du mappage de touches utilisateur", + "ERROR_KEYMAP_CORRUPT": "Votre fichier de mappage de touches n’est pas un fichier JSON valide. Il va s’ouvrir afin que vous puissiez corriger le format.", + "ERROR_LOADING_KEYMAP": "Votre fichier de mappage de touches n’étant pas un fichier texte codé en UTF-8 valide, il ne peut pas être chargé.", "ERROR_RESTRICTED_COMMANDS": "Vous ne pouvez pas réaffecter de raccourcis à ces commandes : {0}", "ERROR_RESTRICTED_SHORTCUTS": "Vous ne pouvez pas réaffecter ces raccourcis : {0}", "ERROR_MULTIPLE_SHORTCUTS": "Vous réaffectez plusieurs raccourcis à ces commandes : {0}", - "ERROR_DUPLICATE_SHORTCUTS": "Vous disposez de plusieurs liaisons pour ces raccourcis : {0}", + "ERROR_DUPLICATE_SHORTCUTS": "Plusieurs liaisons ont été définies pour les raccourcis suivants : {0}", "ERROR_INVALID_SHORTCUTS": "Ces raccourcis ne sont pas valides : {0}", "ERROR_NONEXISTENT_COMMANDS": "Vous affectez des raccourcis à des commandes qui n'existent pas : {0}", @@ -422,7 +422,7 @@ define({ "CMD_TWITTER": "{TWITTER_NAME} sur Twitter", "CMD_ABOUT": "A propos de {APP_TITLE}", "CMD_OPEN_PREFERENCES": "Ouvrir le fichier de préférences", - "CMD_OPEN_KEYMAP": "Ouvrir la mappe de clé utilisateur", + "CMD_OPEN_KEYMAP": "Ouvrir le mappage de touches utilisateur", // Strings for main-view.html "EXPERIMENTAL_BUILD": "version expérimentale", diff --git a/src/nls/ja/strings.js b/src/nls/ja/strings.js index 85316338794..18b0304e272 100644 --- a/src/nls/ja/strings.js +++ b/src/nls/ja/strings.js @@ -79,11 +79,11 @@ define({ "ERROR_KEYMAP_TITLE": "ユーザーキーマップを読み込む際にエラーが発生しました", "ERROR_KEYMAP_CORRUPT": "キーマップファイルが有効な JSON ではありません。ファイルが開かれます。フォーマットを修正してください。", "ERROR_LOADING_KEYMAP": "キーマップファイルが UTF-8 でエンコードされた有効なテキストファイルではないため、読み込めません", - "ERROR_RESTRICTED_COMMANDS": "これらのコマンドにショートカットを割り当て直すことはできません : {0}", - "ERROR_RESTRICTED_SHORTCUTS": "これらのショートカットを割り当て直すことはできません : {0}", - "ERROR_MULTIPLE_SHORTCUTS": "これらのコマンドに複数のショートカットを割り当て直しています : {0}", - "ERROR_DUPLICATE_SHORTCUTS": "これらのショートカットの複数のバインディングがあります : {0}", - "ERROR_INVALID_SHORTCUTS": "これらのショートカットは無効です : {0}", + "ERROR_RESTRICTED_COMMANDS": "次のコマンドにショートカットを割り当て直すことはできません : {0}", + "ERROR_RESTRICTED_SHORTCUTS": "次のショートカットを割り当て直すことはできません : {0}", + "ERROR_MULTIPLE_SHORTCUTS": "次のコマンドに複数のショートカットを割り当て直しています : {0}", + "ERROR_DUPLICATE_SHORTCUTS": "次のショートカットの複数のバインディングがあります : {0}", + "ERROR_INVALID_SHORTCUTS": "次のショートカットは無効です : {0}", "ERROR_NONEXISTENT_COMMANDS": "存在しないコマンドにショートカットを割り当てています : {0}", // Application preferences corrupt error strings From 941aa55288ccdeb420c6f54d888cdcfc16a467b2 Mon Sep 17 00:00:00 2001 From: Marcel Gerber Date: Fri, 31 Oct 2014 13:56:01 +0100 Subject: [PATCH 126/141] Add GitHub Flavored Markdown mode, Add some more Markdown fileExtensions Note you can only ever get into GFM mode using the Language Switcher. fileExtensions source: https://github.com/github/markup#markups --- src/language/languages.json | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/language/languages.json b/src/language/languages.json index dd097be282b..a28c2bd66f5 100644 --- a/src/language/languages.json +++ b/src/language/languages.json @@ -207,7 +207,13 @@ "markdown": { "name": "Markdown", "mode": "markdown", - "fileExtensions": ["md", "markdown"], + "fileExtensions": ["md", "markdown", "mdown", "mkdn"], + "blockComment": [""] + }, + + "gfm": { + "name": "GitHub Flavored Markdown", + "mode": "gfm", "blockComment": [""] }, From 61ce50ab0a9f5a7de605bb63e520971648c9cd06 Mon Sep 17 00:00:00 2001 From: Chema Balsas Date: Sun, 2 Nov 2014 22:07:26 +0100 Subject: [PATCH 127/141] Fix some @link and @see tags --- src/document/DocumentManager.js | 2 +- src/editor/Editor.js | 11 ++++++----- src/editor/EditorManager.js | 10 +++++----- src/language/LanguageManager.js | 4 ++-- src/project/FileViewController.js | 4 ++-- src/project/ProjectModel.js | 6 +++--- src/project/WorkingSetView.js | 4 ++-- src/utils/ExtensionUtils.js | 2 +- src/view/MainViewManager.js | 4 ++-- src/view/Pane.js | 10 +++++----- 10 files changed, 29 insertions(+), 28 deletions(-) diff --git a/src/document/DocumentManager.js b/src/document/DocumentManager.js index c5409022737..55f530c58e8 100644 --- a/src/document/DocumentManager.js +++ b/src/document/DocumentManager.js @@ -115,7 +115,7 @@ define(function (require, exports, module) { /** * Returns the existing open Document for the given file, or null if the file is not open ('open' * means referenced by the UI somewhere). If you will hang onto the Document, you must addRef() - * it; see {@link getDocumentForPath()} for details. + * it; see {@link #getDocumentForPath} for details. * @param {!string} fullPath * @return {?Document} */ diff --git a/src/editor/Editor.js b/src/editor/Editor.js index c426ed7b450..2223205a201 100644 --- a/src/editor/Editor.js +++ b/src/editor/Editor.js @@ -1248,7 +1248,7 @@ define(function (require, exports, module) { * @param {boolean} center true to center the viewport * @param {number} centerOptions Option value, or 0 for no options; one of the BOUNDARY_* constants above. * @param {?string} origin An optional string that describes what other selection or edit operations this - * should be merged with for the purposes of undo. See Document.replaceRange() for more details. + * should be merged with for the purposes of undo. See {@link Document#replaceRange} for more details. */ Editor.prototype.setSelection = function (start, end, center, centerOptions, origin) { this.setSelections([{start: start, end: end || start}], center, centerOptions, origin); @@ -1267,7 +1267,7 @@ define(function (require, exports, module) { * @param {boolean} center true to center the viewport around the primary selection. * @param {number} centerOptions Option value, or 0 for no options; one of the BOUNDARY_* constants above. * @param {?string} origin An optional string that describes what other selection or edit operations this - * should be merged with for the purposes of undo. See Document.replaceRange() for more details. + * should be merged with for the purposes of undo. See {@link Document#replaceRange} for more details. */ Editor.prototype.setSelections = function (selections, center, centerOptions, origin) { var primIndex = selections.length - 1, options; @@ -2002,7 +2002,7 @@ define(function (require, exports, module) { * the start and end. * @return {?(Object|string)} Name of syntax-highlighting mode, or object containing a "name" property * naming the mode along with configuration options required by the mode. - * @see {@link LanguageManager#getLanguageForPath()} and {@link Language#getMode()}. + * @see {@link LanguageManager::#getLanguageForPath} and {@link LanguageManager::Language#getMode}. */ Editor.prototype.getModeForRange = function (start, end, knownMixed) { var outerMode = this._codeMirror.getMode(), @@ -2028,7 +2028,7 @@ define(function (require, exports, module) { * * @return {?(Object|string)} Name of syntax-highlighting mode, or object containing a "name" property * naming the mode along with configuration options required by the mode. - * @see {@link LanguageManager#getLanguageForPath()} and {@link Language#getMode()}. + * @see {@link LanguageManager::#getLanguageForPath} and {@link LanguageManager::Language#getMode}. */ Editor.prototype.getModeForSelection = function () { // Check for mixed mode info @@ -2081,7 +2081,8 @@ define(function (require, exports, module) { /** * Gets the syntax-highlighting mode for the document. * - * @return {Object|String} Object or Name of syntax-highlighting mode; see {@link LanguageManager#getLanguageForPath()} and {@link Language#getMode()}. + * @return {Object|String} Object or Name of syntax-highlighting mode + * @see {@link LanguageManager::#getLanguageForPath|LanguageManager.getLanguageForPath} and {@link LanguageManager::Language#getMode|Language.getMode}. */ Editor.prototype.getModeForDocument = function () { return this._codeMirror.getOption("mode"); diff --git a/src/editor/EditorManager.js b/src/editor/EditorManager.js index f1d575cd4a1..5667c0d6f00 100644 --- a/src/editor/EditorManager.js +++ b/src/editor/EditorManager.js @@ -81,7 +81,7 @@ define(function (require, exports, module) { /** * Registered inline-editor widget providers sorted descending by priority. - * @see {@link #registerInlineEditProvider()}. + * @see {@link #registerInlineEditProvider}. * @type {Array.<{priority:number, provider:function(...)}>} * @private */ @@ -89,7 +89,7 @@ define(function (require, exports, module) { /** * Registered inline documentation widget providers sorted descending by priority. - * @see {@link #registerInlineDocsProvider()}. + * @see {@link #registerInlineDocsProvider}. * @type {Array.<{priority:number, provider:function(...)}>} * @private */ @@ -97,7 +97,7 @@ define(function (require, exports, module) { /** * Registered jump-to-definition providers. - * @see {@link #registerJumpToDefProvider()}. + * @see {@link #registerJumpToDefProvider}. * @private * @type {Array.} */ @@ -598,7 +598,7 @@ define(function (require, exports, module) { /** * @deprecated Register a View Factory instead - * @see MainViewManager.registerViewFactory() + * @see MainViewFactory::#registerViewFactory */ function registerCustomViewer() { throw new Error("EditorManager.registerCustomViewer() has been removed."); @@ -685,7 +685,7 @@ define(function (require, exports, module) { * Returns the current active editor (full-sized OR inline editor). This editor may not * have focus at the moment, but it is visible and was the last editor that was given * focus. Returns null if no editors are active. - * @see getFocusedEditor() + * @see #getFocusedEditor * @return {?Editor} */ function getActiveEditor() { diff --git a/src/language/LanguageManager.js b/src/language/LanguageManager.js index 06ae334b45e..ecf1c9b3c1b 100644 --- a/src/language/LanguageManager.js +++ b/src/language/LanguageManager.js @@ -807,7 +807,7 @@ define(function (require, exports, module) { * Returns either a language associated with the mode or the fallback language. * Used to disambiguate modes used by multiple languages. * @param {!string} mode The mode to associate the language with - * @return {Language} This language if it uses the mode, or whatever {@link LanguageManager#_getLanguageForMode} returns + * @return {Language} This language if it uses the mode, or whatever {@link #_getLanguageForMode} returns */ Language.prototype.getLanguageForMode = function (mode) { if (mode === this._mode) { @@ -846,7 +846,7 @@ define(function (require, exports, module) { /** * Trigger the "languageModified" event if this language is registered already - * @see _triggerLanguageModified + * @see #_triggerLanguageModified * @private */ Language.prototype._wasModified = function () { diff --git a/src/project/FileViewController.js b/src/project/FileViewController.js index 733e4a33092..a0a147db6f3 100644 --- a/src/project/FileViewController.js +++ b/src/project/FileViewController.js @@ -59,7 +59,7 @@ define(function (require, exports, module) { /** * Tracks whether a "currentFileChange" notification occured due to a call to * openAndSelectDocument. - * @see FileviewController.openAndSelectDocument + * @see #openAndSelectDocument * @private */ var _curDocChangedDueToMe = false; @@ -68,7 +68,7 @@ define(function (require, exports, module) { /** * @private - * @see FileViewController.getFileSelectionFocus() + * @see #getFileSelectionFocus */ var _fileSelectionFocus = PROJECT_MANAGER; diff --git a/src/project/ProjectModel.js b/src/project/ProjectModel.js index 517f35d98ae..eba338453f5 100644 --- a/src/project/ProjectModel.js +++ b/src/project/ProjectModel.js @@ -92,7 +92,7 @@ define(function (require, exports, module) { /** * @private - * See shouldShow + * @see #shouldShow */ function _shouldShowName(name) { return !name.match(_exclusionListRegEx); @@ -244,7 +244,7 @@ define(function (require, exports, module) { * @type {string} * * Encoded URL - * @see getBaseUrl(), setBaseUrl() + * @see {@link ProjectModel#getBaseUrl}, {@link ProjectModel#setBaseUrl} */ ProjectModel.prototype._projectBaseUrl = ""; @@ -1224,7 +1224,7 @@ define(function (require, exports, module) { * Returns the full path to the welcome project, which we open on first launch. * * @param {string} sampleUrl URL for getting started project - * @param {string} initialPath Path to Brackets directory (see FileUtils.getNativeBracketsDirectoryPath()) + * @param {string} initialPath Path to Brackets directory (see {@link FileUtils::#getNativeBracketsDirectoryPath}) * @return {!string} fullPath reference */ function _getWelcomeProjectPath(sampleUrl, initialPath) { diff --git a/src/project/WorkingSetView.js b/src/project/WorkingSetView.js index 225923b99ed..8de62c1ef8f 100644 --- a/src/project/WorkingSetView.js +++ b/src/project/WorkingSetView.js @@ -57,14 +57,14 @@ define(function (require, exports, module) { /** * Icon Providers - * @see {@link WorkingSetView#addIconProvider()} + * @see {@link #addIconProvider} * @private */ var _iconProviders = []; /** * Class Providers - * @see {@link WorkingSetView#addClassProvider()} + * @see {@link #addClassProvider} * @private */ var _classProviders = []; diff --git a/src/utils/ExtensionUtils.js b/src/utils/ExtensionUtils.js index 67298d60719..62899492464 100644 --- a/src/utils/ExtensionUtils.js +++ b/src/utils/ExtensionUtils.js @@ -72,7 +72,7 @@ define(function (require, exports, module) { /** * getModuleUrl returns different urls for win platform * so that's why we need a different check here - * @see getModuleUrl() + * @see #getModuleUrl * @param {!string} pathOrUrl that should be checked if it's absolute * @return {!boolean} returns true if pathOrUrl is absolute url on win platform * or when it's absolute path on other platforms diff --git a/src/view/MainViewManager.js b/src/view/MainViewManager.js index 3b7c287a683..ea6bc8b40a6 100644 --- a/src/view/MainViewManager.js +++ b/src/view/MainViewManager.js @@ -227,7 +227,7 @@ define(function (require, exports, module) { * localized pane titles * @type {Object.}} * Localized string for first and second panes in the current orientation. - * @see {@link getPaneTitle()} for more information + * @see {@link #getPaneTitle} for more information * @private */ var _paneTitles = {}; @@ -846,7 +846,7 @@ define(function (require, exports, module) { * sorts the pane's view list * @param {!string} paneId - id of the pane to sort, ALL_PANES or ACTIVE_PANE * @param {sortFunctionCallback} compareFn - callback to determine sort order (called on each item) - * @see {@link Pane.sortViewList()} for more information + * @see {@link Pane#sortViewList} for more information * @see {@link https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/sort|Sort Array - MDN} * @private */ diff --git a/src/view/Pane.js b/src/view/Pane.js index dcbd0c46088..ac42720865d 100644 --- a/src/view/Pane.js +++ b/src/view/Pane.js @@ -170,8 +170,8 @@ define(function (require, exports, module) { * @param {boolean} requestIndex - true to request an index, false if not * @param {number} index - the index to request * @return {indexRequested:boolean, index:number} an object that can be pased to - * Pane._addToViewList to insert the item at a specific index - * @see {Pane._addToViewList} + * {@link Pane#addToViewList} to insert the item at a specific index + * @see Pane#addToViewList */ function _makeIndexRequestObject(requestIndex, index) { return {indexRequested: requestIndex, index: index}; @@ -585,7 +585,7 @@ define(function (require, exports, module) { /** * Return value from reorderItem when the Item was not found - * @see {@link reorderItem()} + * @see {@link Pane#reorderItem} * @const */ Pane.prototype.ITEM_NOT_FOUND = -1; @@ -593,7 +593,7 @@ define(function (require, exports, module) { /** * Return value from reorderItem when the Item was found at its natural index * and the workingset does not need to be resorted - * @see {@link reorderItem()} + * @see {@link Pane#reorderItem} * @const */ Pane.prototype.ITEM_FOUND_NO_SORT = 0; @@ -601,7 +601,7 @@ define(function (require, exports, module) { /** * Return value from reorderItem when the Item was found and reindexed * and the workingset needs to be resorted - * @see {@link reorderItem()} + * @see {@link Pane#reorderItem} * @const */ Pane.prototype.ITEM_FOUND_NEEDS_SORT = 1; From 43dfead896a429b19a3fd7cd6656bb5c403843e8 Mon Sep 17 00:00:00 2001 From: Kevin Dangoor Date: Sun, 2 Nov 2014 21:54:09 -0500 Subject: [PATCH 128/141] set-release to 1.1 --- package.json | 4 ++-- src/config.json | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index ce3a7d1c614..7275be0ee2b 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "Brackets", - "version": "1.0.0-0", - "apiVersion": "1.0.0", + "version": "1.1.0-0", + "apiVersion": "1.1.0", "homepage": "http://brackets.io", "issues": { "url": "http://github.com/adobe/brackets/issues" diff --git a/src/config.json b/src/config.json index f3b15a7b4cd..4a59a4887c2 100644 --- a/src/config.json +++ b/src/config.json @@ -22,8 +22,8 @@ "build_timestamp": "" }, "name": "Brackets", - "version": "1.0.0-0", - "apiVersion": "1.0.0", + "version": "1.1.0-0", + "apiVersion": "1.1.0", "homepage": "http://brackets.io", "issues": { "url": "http://github.com/adobe/brackets/issues" From 6385c6583322dd86765338437d58adadd520f936 Mon Sep 17 00:00:00 2001 From: "walf (Localization Automation)" Date: Thu, 6 Nov 2014 05:16:59 -0800 Subject: [PATCH 129/141] Updated by ALF automation. --- src/nls/fr/strings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nls/fr/strings.js b/src/nls/fr/strings.js index ac922393ac8..4662149b24b 100644 --- a/src/nls/fr/strings.js +++ b/src/nls/fr/strings.js @@ -426,7 +426,7 @@ define({ // Strings for main-view.html "EXPERIMENTAL_BUILD": "version expérimentale", - "RELEASE_BUILD": "version", + "RELEASE_BUILD": "édition", "DEVELOPMENT_BUILD": "version de développement", "RELOAD_FROM_DISK": "Recharger à partir du disque", "KEEP_CHANGES_IN_EDITOR": "Conserver les modifications dans l’éditeur", From 31e0109b611765cc503602121612754d5f828368 Mon Sep 17 00:00:00 2001 From: Ingo Richter Date: Thu, 6 Nov 2014 12:30:06 -0800 Subject: [PATCH 130/141] - fix german mispelling --- src/nls/de/strings.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/nls/de/strings.js b/src/nls/de/strings.js index 3dc92cb3e8b..f83e2458928 100644 --- a/src/nls/de/strings.js +++ b/src/nls/de/strings.js @@ -242,7 +242,7 @@ define({ "RIGHT" : "Rechts", "CMD_SPLITVIEW_NONE" : "Nicht geteilt", - "CMD_SPLITVIEW_VERTICAL" : "Vetikal geteilt", + "CMD_SPLITVIEW_VERTICAL" : "Vertikal geteilt", "CMD_SPLITVIEW_HORIZONTAL" : "Horizontal geteilt", "SPLITVIEW_MENU_TOOLTIP" : "Teilen Sie den Editor vertikal oder horizontal", "GEAR_MENU_TOOLTIP" : "Projektdateien konfigurieren", From ed1b597f2c0e72fc11c9ec42d88d35f57cd6798b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20Dvo=C5=99=C3=A1k?= Date: Fri, 7 Nov 2014 22:43:22 +0100 Subject: [PATCH 131/141] Remove unnecessary whitespace --- src/nls/root/strings.js | 56 ++++++++++++++++++++--------------------- 1 file changed, 27 insertions(+), 29 deletions(-) diff --git a/src/nls/root/strings.js b/src/nls/root/strings.js index e0e53745add..fd0b1e76350 100644 --- a/src/nls/root/strings.js +++ b/src/nls/root/strings.js @@ -25,7 +25,7 @@ /*global define */ define({ - + /** * Errors */ @@ -48,7 +48,6 @@ define({ "FILENAMES_LEDE" : "Filenames", "FILENAME" : "Filename", "DIRECTORY_NAME" : "Directory Name", - // Project error strings "ERROR_LOADING_PROJECT" : "Error Loading Project", @@ -93,7 +92,7 @@ define({ // Application error strings "ERROR_IN_BROWSER_TITLE" : "Oops! {APP_NAME} Doesn't Run in Browsers Yet.", "ERROR_IN_BROWSER" : "{APP_NAME} is built in HTML, but right now it runs as a desktop app so you can use it to edit local files. Please use the application shell in the github.com/adobe/brackets-shell repo to run {APP_NAME}.", - + // ProjectManager max files error string "ERROR_MAX_FILES_TITLE" : "Error Indexing Files", "ERROR_MAX_FILES" : "This project contains more than 30,000 files. Features that operate across multiple files may be disabled or behave as if the project is empty. Read more about working with large projects.", @@ -102,7 +101,7 @@ define({ "ERROR_LAUNCHING_BROWSER_TITLE" : "Error Launching Browser", "ERROR_CANT_FIND_CHROME" : "The Google Chrome browser could not be found. Please make sure it is installed.", "ERROR_LAUNCHING_BROWSER" : "An error occurred when launching the browser. (error {0})", - + "LIVE_DEVELOPMENT_ERROR_TITLE" : "Live Preview Error", "LIVE_DEVELOPMENT_RELAUNCH_TITLE" : "Connecting to Browser", "LIVE_DEVELOPMENT_ERROR_MESSAGE" : "In order for Live Preview to connect, Chrome needs to be relaunched with remote debugging enabled.

    Would you like to relaunch Chrome and enable remote debugging?

    ", @@ -113,7 +112,7 @@ define({ "LIVE_DEVELOPMENT_INFO_TITLE" : "Welcome to Live Preview!", "LIVE_DEVELOPMENT_INFO_MESSAGE" : "Live Preview connects {APP_NAME} to your browser. It launches a preview of your HTML file in the browser, then updates the preview instantly as you edit your code.

    In this early version of {APP_NAME}, Live Preview only works with Google Chrome and updates live as you edit CSS or HTML files. Changes to JavaScript files are automatically reloaded when you save.

    (You'll only see this message once.)", "LIVE_DEVELOPMENT_TROUBLESHOOTING" : "For more information, see Troubleshooting Live Preview connection errors.", - + "LIVE_DEV_STATUS_TIP_NOT_CONNECTED" : "Live Preview", "LIVE_DEV_STATUS_TIP_PROGRESS1" : "Live Preview: Connecting\u2026", "LIVE_DEV_STATUS_TIP_PROGRESS2" : "Live Preview: Initializing\u2026", @@ -125,7 +124,7 @@ define({ "LIVE_DEV_DETACHED_TARGET_CLOSED" : "Live Preview was cancelled because the page was closed in the browser", "LIVE_DEV_NAVIGATED_AWAY" : "Live Preview was cancelled because the browser navigated to a page that is not part of the current project", "LIVE_DEV_CLOSED_UNKNOWN_REASON" : "Live Preview was cancelled for an unknown reason ({0})", - + "SAVE_CLOSE_TITLE" : "Save Changes", "SAVE_CLOSE_MESSAGE" : "Do you want to save the changes you made in the document {0}?", "SAVE_CLOSE_MULTI_MESSAGE" : "Do you want to save your changes to the following files?", @@ -136,7 +135,7 @@ define({ "EXT_MODIFIED_WARNING" : "{0} has been modified on disk.

    Do you want to save the file and overwrite those changes?", "EXT_MODIFIED_MESSAGE" : "{0} has been modified on disk, but also has unsaved changes in {APP_NAME}.

    Which version do you want to keep?", "EXT_DELETED_MESSAGE" : "{0} has been deleted on disk, but has unsaved changes in {APP_NAME}.

    Do you want to keep your changes?", - + // Generic dialog/button labels "DONE" : "Done", "OK" : "OK", @@ -148,7 +147,7 @@ define({ "DELETE" : "Delete", "BUTTON_YES" : "Yes", "BUTTON_NO" : "No", - + // Find, Replace, Find in Files "FIND_MATCH_INDEX" : "{0} of {1}", "FIND_NO_RESULTS" : "No results", @@ -196,10 +195,10 @@ define({ "FIND_IN_FILES_EXPAND_COLLAPSE" : "Ctrl/Cmd click to expand/collapse all", "REPLACE_IN_FILES_ERRORS_TITLE" : "Replace Errors", "REPLACE_IN_FILES_ERRORS" : "The following files weren't modified because they changed after the search or couldn't be written.", - + "ERROR_FETCHING_UPDATE_INFO_TITLE" : "Error Getting Update Info", "ERROR_FETCHING_UPDATE_INFO_MSG" : "There was a problem getting the latest update information from the server. Please make sure you are connected to the internet and try again.", - + // File exclusion filters "NEW_FILE_FILTER" : "New Exclusion Set\u2026", "CLEAR_FILE_FILTER" : "Don't Exclude Files", @@ -256,7 +255,7 @@ define({ "KEYBOARD_CTRL" : "Ctrl", "KEYBOARD_SHIFT" : "Shift", "KEYBOARD_SPACE" : "Space", - + /** * StatusBar strings */ @@ -294,12 +293,11 @@ define({ "NOTHING_TO_LINT" : "Nothing to lint", "LINTER_TIMED_OUT" : "{0} has timed out after waiting for {1} ms", "LINTER_FAILED" : "{0} terminated with error: {1}", - - + /** * Command Name Constants */ - + // File menu commands "FILE_MENU" : "File", "CMD_FILE_NEW_UNTITLED" : "New", @@ -354,7 +352,7 @@ define({ "CMD_OPEN_LINE_BELOW" : "Open Line Below", "CMD_TOGGLE_CLOSE_BRACKETS" : "Auto Close Braces", "CMD_SHOW_CODE_HINTS" : "Show Code Hints", - + // Search menu commands "FIND_MENU" : "Find", "CMD_FIND" : "Find", @@ -370,7 +368,7 @@ define({ "CMD_REPLACE_IN_FILES" : "Replace in Files", "CMD_REPLACE_IN_SELECTED" : "Replace in Selected File/Folder", "CMD_REPLACE_IN_SUBTREE" : "Replace in\u2026", - + // View menu commands "VIEW_MENU" : "View", "CMD_HIDE_SIDEBAR" : "Hide Sidebar", @@ -408,7 +406,7 @@ define({ "CMD_SHOW_IN_EXPLORER" : "Show in Explorer", "CMD_SHOW_IN_FINDER" : "Show in Finder", "CMD_SHOW_IN_OS" : "Show in OS", - + // Help menu commands "HELP_MENU" : "Help", "CMD_CHECK_FOR_UPDATE" : "Check for Updates", @@ -454,7 +452,7 @@ define({ "BASEURL_ERROR_INVALID_CHAR" : "Special characters like '{0}' must be %-encoded.", "BASEURL_ERROR_UNKNOWN_ERROR" : "Unknown error parsing Base URL", "EMPTY_VIEW_HEADER" : "Open a file while this pane has focus", - + // Strings for themes-settings.html and themes-general.html "CURRENT_THEME" : "Current Theme", "USE_THEME_SCROLLBARS" : "Use Theme Scrollbars", @@ -464,7 +462,7 @@ define({ // CSS Quick Edit "BUTTON_NEW_RULE" : "New Rule", - + // Extension Management strings "INSTALL" : "Install", "UPDATE" : "Update", @@ -555,7 +553,7 @@ define({ "EXTENSIONS_AVAILABLE_TITLE" : "Available", "EXTENSIONS_THEMES_TITLE" : "Themes", "EXTENSIONS_UPDATES_TITLE" : "Updates", - + "INLINE_EDITOR_NO_MATCHES" : "No matches available.", "INLINE_EDITOR_HIDDEN_MATCHES" : "All matches are collapsed. Expand the files listed at right to view matches.", "CSS_QUICK_EDIT_NO_MATCHES" : "There are no existing CSS rules that match your selection.
    Click \"New Rule\" to create one.", @@ -563,7 +561,7 @@ define({ // Custom Viewers "IMAGE_VIEWER_LARGEST_ICON" : "largest", - + /** * Unit names */ @@ -585,20 +583,20 @@ define({ "CMD_RESTART_NODE" : "Restart Node", "CMD_SHOW_ERRORS_IN_STATUS_BAR" : "Show Errors in Status Bar", "CMD_OPEN_BRACKETS_SOURCE" : "Open Brackets Source", - + "LANGUAGE_TITLE" : "Switch Language", "LANGUAGE_MESSAGE" : "Language:", "LANGUAGE_SUBMIT" : "Reload {APP_NAME}", "LANGUAGE_CANCEL" : "Cancel", "LANGUAGE_SYSTEM_DEFAULT" : "System Default", - + // extensions/default/InlineTimingFunctionEditor "INLINE_TIMING_EDITOR_TIME" : "Time", "INLINE_TIMING_EDITOR_PROGRESSION" : "Progression", "BEZIER_EDITOR_INFO" : " Move selected point
    Shift Move by ten units
    Tab Switch points", "STEPS_EDITOR_INFO" : " Increase or decrease steps
    'Start' or 'End'", "INLINE_TIMING_EDITOR_INVALID" : "The old value {0} is not valid, so the displayed function was changed to {1}. The document will be updated with the first edit.", - + // extensions/default/InlineColorEditor "COLOR_EDITOR_CURRENT_COLOR_SWATCH_TIP" : "Current Color", "COLOR_EDITOR_ORIGINAL_COLOR_SWATCH_TIP" : "Original Color", @@ -607,23 +605,23 @@ define({ "COLOR_EDITOR_HSLA_BUTTON_TIP" : "HSLa Format", "COLOR_EDITOR_USED_COLOR_TIP_SINGULAR" : "{0} (Used {1} time)", "COLOR_EDITOR_USED_COLOR_TIP_PLURAL" : "{0} (Used {1} times)", - + // extensions/default/JavaScriptCodeHints "CMD_JUMPTO_DEFINITION" : "Jump to Definition", "CMD_SHOW_PARAMETER_HINT" : "Show Parameter Hint", "NO_ARGUMENTS" : "", "DETECTED_EXCLUSION_TITLE" : "JavaScript File Inference Problem", "DETECTED_EXCLUSION_INFO" : "Brackets ran into trouble processing {0}.

    This file will no longer be processed for code hints, Jump to Definition or Quick Edit. To reenable this file, open .brackets.json in your project and edit jscodehints.detectedExclusions.

    This is likely a Brackets bug. If you can provide a copy of this file, please file a bug with a link to the file named here.", - + // extensions/default/JSLint "JSLINT_NAME" : "JSLint", - + // extensions/default/QuickView "CMD_ENABLE_QUICK_VIEW" : "Quick View on Hover", - + // extensions/default/RecentProjects "CMD_TOGGLE_RECENT_PROJECTS" : "Recent Projects", - + // extensions/default/WebPlatformDocs "DOCS_MORE_LINK" : "Read more" }); From cd1b41d95f4fe0d1f1d370f7a9710d2e6f52b517 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20Dvo=C5=99=C3=A1k?= Date: Sat, 8 Nov 2014 00:32:17 +0100 Subject: [PATCH 132/141] Update urls.js --- src/nls/urls.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/nls/urls.js b/src/nls/urls.js index 67ec41069e3..ec0c4637813 100644 --- a/src/nls/urls.js +++ b/src/nls/urls.js @@ -25,9 +25,9 @@ /*global define */ define(function (require, exports, module) { - + "use strict"; - + // Registry for languages that have specific per-language URLs or file paths that we use // elsewhere in Brackets. // @@ -38,7 +38,7 @@ define(function (require, exports, module) { "da": true, "de": true, "es": true, - "fa-ir": true, + "fa-ir": true, "fi": true, "fr": true, "hr": true, From 2d386773c0560cf175cce9e5f33bba65128c9c18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pavel=20Dvo=C5=99=C3=A1k?= Date: Sat, 8 Nov 2014 00:33:08 +0100 Subject: [PATCH 133/141] Update strings-app.js --- src/nls/strings-app.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/nls/strings-app.js b/src/nls/strings-app.js index 92f0b7c83e7..7adad1099e6 100644 --- a/src/nls/strings-app.js +++ b/src/nls/strings-app.js @@ -25,9 +25,9 @@ /*global define */ define(function (require, exports, module) { - + "use strict"; - + // Code that needs to display user strings should call require("strings") to load // src/strings.js. This file will dynamically load strings.js for the specified brackets.locale. // From 4d71c7f092bda1af83a8377706fbe6500582f120 Mon Sep 17 00:00:00 2001 From: "walf (Localization Automation)" Date: Wed, 12 Nov 2014 21:53:36 -0800 Subject: [PATCH 134/141] Updated by ALF automation. --- src/nls/fr/strings.js | 56 +++++++++++++++++++++---------------------- src/nls/ja/strings.js | 56 +++++++++++++++++++++---------------------- 2 files changed, 54 insertions(+), 58 deletions(-) diff --git a/src/nls/fr/strings.js b/src/nls/fr/strings.js index 4662149b24b..1cdaf7eea02 100644 --- a/src/nls/fr/strings.js +++ b/src/nls/fr/strings.js @@ -25,7 +25,7 @@ /*global define */ define({ - + /** * Errors */ @@ -48,7 +48,6 @@ define({ "FILENAMES_LEDE": "noms de fichiers", "FILENAME": "Nom de fichier", "DIRECTORY_NAME": "Nom du répertoire", - // Project error strings "ERROR_LOADING_PROJECT": "Erreur lors du chargement du projet", @@ -93,7 +92,7 @@ define({ // Application error strings "ERROR_IN_BROWSER_TITLE": "Malheureusement, {APP_NAME} n’est pas encore compatible avec les navigateurs.", "ERROR_IN_BROWSER": "{APP_NAME} est défini en HTML, mais il s’exécute actuellement en tant qu’application de bureau, vous pouvez donc l’utiliser afin de modifier des fichiers locaux. Utilisez l’interpréteur de commandes d’application situé dans le référentiel github.com/adobe/brackets-shell afin d’exécuter {APP_NAME}.", - + // ProjectManager max files error string "ERROR_MAX_FILES_TITLE": "Erreur lors de l’indexation des fichiers", "ERROR_MAX_FILES": "Ce projet contient plus de 30 000 fichiers. Les fonctionnalités qui s’appliquent de manière globale à plusieurs fichiers peuvent être désactivées ou se comporter comme si le projet était vide. En savoir plus sur l’utilisation de projets volumineux.", @@ -102,7 +101,7 @@ define({ "ERROR_LAUNCHING_BROWSER_TITLE": "Erreur lors du lancement du navigateur", "ERROR_CANT_FIND_CHROME": "Le navigateur Google Chrome est introuvable. Assurez-vous qu’il est installé.", "ERROR_LAUNCHING_BROWSER": "Une erreur s’est produite lors du lancement du navigateur. (Erreur {0})", - + "LIVE_DEVELOPMENT_ERROR_TITLE": "Erreur du module Aperçu en direct", "LIVE_DEVELOPMENT_RELAUNCH_TITLE": "Connexion au navigateur", "LIVE_DEVELOPMENT_ERROR_MESSAGE": "Pour que le module Aperçu en direct puisse se connecter, vous devez relancer Chrome en activant la fonction de débogage à distance.

    Voulez-vous relancer Chrome et activer le débogage à distance ?

    ", @@ -113,7 +112,7 @@ define({ "LIVE_DEVELOPMENT_INFO_TITLE": "Bienvenue dans le module Aperçu en direct !", "LIVE_DEVELOPMENT_INFO_MESSAGE": "Le module Aperçu en direct connecte {APP_NAME} à votre navigateur. Il ouvre un aperçu de votre fichier HTML dans le navigateur, puis le met à jour instantanément dès que vous modifiez le code.

    Dans cette première version du logiciel {APP_NAME}, le module Aperçu en direct ne fonctionne qu’avec Google Chrome et affiche les mises à jour en direct, dès que vous modifiez des fichiers CSS ou HTML. Les modifications apportées aux fichiers JavaScript sont automatiquement rechargées lorsque vous enregistrez.

    (Ce message ne s’affichera qu’une seule fois.)", "LIVE_DEVELOPMENT_TROUBLESHOOTING": "Pour plus d’informations, consultez la page Résolution des erreurs de connexion à l’Aperçu en direct.", - + "LIVE_DEV_STATUS_TIP_NOT_CONNECTED": "Aperçu en direct", "LIVE_DEV_STATUS_TIP_PROGRESS1": "Aperçu en direct : Connexion\u2026", "LIVE_DEV_STATUS_TIP_PROGRESS2": "Aperçu en direct : Initialisation\u2026", @@ -125,7 +124,7 @@ define({ "LIVE_DEV_DETACHED_TARGET_CLOSED": "Aperçu en direct a été annulé car la page était fermée dans le navigateur", "LIVE_DEV_NAVIGATED_AWAY": "Aperçu en direct a été annulé car le navigateur a accédé à une page qui ne fait pas partie du projet actuel", "LIVE_DEV_CLOSED_UNKNOWN_REASON": "Aperçu en direct a été annulé pour une raison inconnue ({0})", - + "SAVE_CLOSE_TITLE": "Enregistrer les modifications", "SAVE_CLOSE_MESSAGE": "Souhaitez-vous enregistrer les modifications apportées au document {0} ?", "SAVE_CLOSE_MULTI_MESSAGE": "Souhaitez-vous enregistrer les modifications apportées aux fichiers suivants ?", @@ -136,7 +135,7 @@ define({ "EXT_MODIFIED_WARNING": "{0} a été modifié sur le disque.

    Voulez-vous enregistrer le fichier et remplacer ces modifications ?", "EXT_MODIFIED_MESSAGE": "Le fichier {0} a été modifié sur le disque mais présente également des modifications non enregistrées dans {APP_NAME}.

    Quelle version souhaitez-vous conserver ?", "EXT_DELETED_MESSAGE": "Le fichier {0} a été supprimé sur le disque mais présente des modifications non enregistrées dans {APP_NAME}.

    Souhaitez-vous conserver vos modifications ?", - + // Generic dialog/button labels "DONE": "Terminé", "OK": "OK", @@ -148,7 +147,7 @@ define({ "DELETE": "Supprimer", "BUTTON_YES": "Oui", "BUTTON_NO": "Non", - + // Find, Replace, Find in Files "FIND_MATCH_INDEX": "{0} sur {1}", "FIND_NO_RESULTS": "Aucun résultat", @@ -196,10 +195,10 @@ define({ "FIND_IN_FILES_EXPAND_COLLAPSE": "Cliquer tout en appuyant sur Ctrl/Cmd pour tout développer/tout réduire", "REPLACE_IN_FILES_ERRORS_TITLE": "Erreurs de remplacement", "REPLACE_IN_FILES_ERRORS": "Les fichiers suivants n’ont pas été traités car ils ont été modifiés après l’opération de recherche ou ne sont pas accessibles en écriture.", - + "ERROR_FETCHING_UPDATE_INFO_TITLE": "Erreur de récupération des informations de mise à jour", "ERROR_FETCHING_UPDATE_INFO_MSG": "Un problème est survenu lors de la récupération des dernières informations de mise à jour sur le serveur. Vérifiez que vous êtes connecté à Internet et réessayez.", - + // File exclusion filters "NEW_FILE_FILTER": "Nouveau jeu d’exclusion\u2026", "CLEAR_FILE_FILTER": "Ne pas exclure les fichiers", @@ -256,7 +255,7 @@ define({ "KEYBOARD_CTRL": "Ctrl", "KEYBOARD_SHIFT": "Maj", "KEYBOARD_SPACE": "Espace", - + /** * StatusBar strings */ @@ -294,12 +293,11 @@ define({ "NOTHING_TO_LINT": "Rien à analyser", "LINTER_TIMED_OUT": "Délai dépassé pour {0} après une attente de {1} ms", "LINTER_FAILED": "{0} arrêté avec l’erreur suivante : {1}", - - + /** * Command Name Constants */ - + // File menu commands "FILE_MENU": "Fichier", "CMD_FILE_NEW_UNTITLED": "Nouveau", @@ -354,7 +352,7 @@ define({ "CMD_OPEN_LINE_BELOW": "Ouvrir une ligne en dessous", "CMD_TOGGLE_CLOSE_BRACKETS": "Fermeture automatique des accolades", "CMD_SHOW_CODE_HINTS": "Afficher les indicateurs de code", - + // Search menu commands "FIND_MENU": "Rechercher", "CMD_FIND": "Rechercher", @@ -370,7 +368,7 @@ define({ "CMD_REPLACE_IN_FILES": "Remplacer dans les fichiers", "CMD_REPLACE_IN_SELECTED": "Remplacer dans le fichier/dossier sélectionné", "CMD_REPLACE_IN_SUBTREE": "Remplacer dans\u2026", - + // View menu commands "VIEW_MENU": "Affichage", "CMD_HIDE_SIDEBAR": "Masquer la barre latérale", @@ -408,7 +406,7 @@ define({ "CMD_SHOW_IN_EXPLORER": "Afficher dans l’Explorateur", "CMD_SHOW_IN_FINDER": "Afficher dans le Finder", "CMD_SHOW_IN_OS": "Afficher dans le SE", - + // Help menu commands "HELP_MENU": "Aide", "CMD_CHECK_FOR_UPDATE": "Rechercher les mises à jour", @@ -454,7 +452,7 @@ define({ "BASEURL_ERROR_INVALID_CHAR": "Les caractères spéciaux tels que '{0}' doivent être codés en %.", "BASEURL_ERROR_UNKNOWN_ERROR": "Erreur inconnue lors de l’analyse de l’URL de base", "EMPTY_VIEW_HEADER": "Ouvrir un fichier quand ce panneau est actif", - + // Strings for themes-settings.html and themes-general.html "CURRENT_THEME": "Thème actuel ", "USE_THEME_SCROLLBARS": "Utiliser les barres de défilement du thème ", @@ -464,7 +462,7 @@ define({ // CSS Quick Edit "BUTTON_NEW_RULE": "Nouvelle règle", - + // Extension Management strings "INSTALL": "Installer", "UPDATE": "Mettre à jour", @@ -555,7 +553,7 @@ define({ "EXTENSIONS_AVAILABLE_TITLE": "Disponibles", "EXTENSIONS_THEMES_TITLE": "Thèmes", "EXTENSIONS_UPDATES_TITLE": "Mises à jour", - + "INLINE_EDITOR_NO_MATCHES": "Aucun résultat.", "INLINE_EDITOR_HIDDEN_MATCHES": "Tous les résultats sont réduits. Développez les fichiers dans la liste de droite pour voir le détail.", "CSS_QUICK_EDIT_NO_MATCHES": "Aucune règle CSS existante ne correspond à votre sélection.
    Cliquez sur « Nouvelle règle » pour en créer une.", @@ -563,7 +561,7 @@ define({ // Custom Viewers "IMAGE_VIEWER_LARGEST_ICON": "maximum", - + /** * Unit names */ @@ -585,20 +583,20 @@ define({ "CMD_RESTART_NODE": "Redémarrer le nœud", "CMD_SHOW_ERRORS_IN_STATUS_BAR": "Afficher les erreurs dans la barre d’état", "CMD_OPEN_BRACKETS_SOURCE": "Ouvrir la source Brackets", - + "LANGUAGE_TITLE": "Changer de langue", "LANGUAGE_MESSAGE": "Langue :", "LANGUAGE_SUBMIT": "Recharger {APP_NAME}", "LANGUAGE_CANCEL": "Annuler", "LANGUAGE_SYSTEM_DEFAULT": "Langue par défaut du système", - + // extensions/default/InlineTimingFunctionEditor "INLINE_TIMING_EDITOR_TIME": "Temps", "INLINE_TIMING_EDITOR_PROGRESSION": "Progression", "BEZIER_EDITOR_INFO": " Déplacer le point sélectionné
    Maj Déplacer de dix unités
    Tabulation Permuter les points", "STEPS_EDITOR_INFO": " Augmenter ou réduire les pas
    'Démarrer' ou 'Arrêter'", "INLINE_TIMING_EDITOR_INVALID": "L’ancienne valeur {0} n’est pas valide et a donc été remplacée par {1} pour la fonction affichée. Le document sera mis à jour à la première modification.", - + // extensions/default/InlineColorEditor "COLOR_EDITOR_CURRENT_COLOR_SWATCH_TIP": "Couleur actuelle", "COLOR_EDITOR_ORIGINAL_COLOR_SWATCH_TIP": "Couleur d’origine", @@ -607,23 +605,23 @@ define({ "COLOR_EDITOR_HSLA_BUTTON_TIP": "Format HSLa", "COLOR_EDITOR_USED_COLOR_TIP_SINGULAR": "{0} (utilisé {1} fois)", "COLOR_EDITOR_USED_COLOR_TIP_PLURAL": "{0} (utilisé {1} fois)", - + // extensions/default/JavaScriptCodeHints "CMD_JUMPTO_DEFINITION": "Accéder à la définition", "CMD_SHOW_PARAMETER_HINT": "Afficher l’indicateur de paramètre", "NO_ARGUMENTS": "", "DETECTED_EXCLUSION_TITLE": "Problème d’inférence de fichier Javascript", "DETECTED_EXCLUSION_INFO": "Brackets a rencontré des problèmes lors du traitement du fichier {0}.

    La fonction d’accès aux définitions, les indicateurs de code et la fonction Edition rapide de ce fichier ne seront plus traités. Pour réactiver ce fichier, ouvrez .brackets.json dans votre projet et éditez la section jscodehints.detectedExclusions.

    Il s’agit vraisemblablement d’un bug au niveau de l’application Brackets. Si vous pouvez nous transmettre une copie de ce fichier, merci de consigner un bug en fournissant un lien vers le fichier en question.", - + // extensions/default/JSLint "JSLINT_NAME": "JSLint", - + // extensions/default/QuickView "CMD_ENABLE_QUICK_VIEW": "Affichage rapide au survol", - + // extensions/default/RecentProjects "CMD_TOGGLE_RECENT_PROJECTS": "Projets récents", - + // extensions/default/WebPlatformDocs "DOCS_MORE_LINK": "En savoir plus" }); diff --git a/src/nls/ja/strings.js b/src/nls/ja/strings.js index 18b0304e272..cd7fe63ad85 100644 --- a/src/nls/ja/strings.js +++ b/src/nls/ja/strings.js @@ -25,7 +25,7 @@ /*global define */ define({ - + /** * Errors */ @@ -48,7 +48,6 @@ define({ "FILENAMES_LEDE": "ファイル名", "FILENAME": "ファイル名", "DIRECTORY_NAME": "ディレクトリ名", - // Project error strings "ERROR_LOADING_PROJECT": "プロジェクトを読み込む際にエラーが発生しました。", @@ -93,7 +92,7 @@ define({ // Application error strings "ERROR_IN_BROWSER_TITLE": "{APP_NAME} は、まだブラウザー上で実行されていません。", "ERROR_IN_BROWSER": "{APP_NAME} は HTML で構築されていますが、デスクトップアプリとして実行することで、ローカルファイルを編集することができます。{APP_NAME} を実行するために、github.com/adobe/brackets-shell リポジトリのアプリケーションシェルを使用してください。", - + // ProjectManager max files error string "ERROR_MAX_FILES_TITLE": "ファイルのインデックス時にエラーが発生しました。", "ERROR_MAX_FILES": "このプロジェクトには 30,000 個以上のファイルが含まれています。複数のファイルを操作する機能が無効になるか、プロジェクトが空であるかのように動作します。大きいプロジェクトの操作方法の詳細を表示。", @@ -102,7 +101,7 @@ define({ "ERROR_LAUNCHING_BROWSER_TITLE": "ブラウザーの起動時にエラーが発生しました。", "ERROR_CANT_FIND_CHROME": "Google Chrome ブラウザーが見つかりません。インストールされていることを確認してください。", "ERROR_LAUNCHING_BROWSER": "ブラウザーの起動時にエラーが発生しました。(エラー {0})", - + "LIVE_DEVELOPMENT_ERROR_TITLE": "ライブプレビューのエラーが発生しました。", "LIVE_DEVELOPMENT_RELAUNCH_TITLE": "ブラウザーに接続しています", "LIVE_DEVELOPMENT_ERROR_MESSAGE": "ライブプレビューに接続するには、リモートデバッグを有効にして Chrome を再起動する必要があります。

    Chrome を再起動してリモートデバッグを有効にしますか?

    ", @@ -113,7 +112,7 @@ define({ "LIVE_DEVELOPMENT_INFO_TITLE": "ライブプレビューへようこそ", "LIVE_DEVELOPMENT_INFO_MESSAGE": "ライブプレビューにより {APP_NAME} がブラウザーに接続しました。ブラウザーで HTML ファイルのプレビューが起動し、コードを編集すると直ちにプレビューが更新されます。

    この初期バージョンの {APP_NAME} では、Google Chrome でのみライブプレビューが機能し、CSS または HTML ファイルの編集時にのみライブ更新が行われます。 JavaScript ファイルへの変更は、保存時に自動的にリロードされます。

    (このメッセージは一度しか表示されません。)", "LIVE_DEVELOPMENT_TROUBLESHOOTING": "詳しくは、ライブプレビューの接続エラーに関するトラブルシューティングを参照してください。", - + "LIVE_DEV_STATUS_TIP_NOT_CONNECTED": "ライブプレビュー", "LIVE_DEV_STATUS_TIP_PROGRESS1": "ライブプレビュー : 接続中\u2026", "LIVE_DEV_STATUS_TIP_PROGRESS2": "ライブプレビュー : 初期化中\u2026", @@ -125,7 +124,7 @@ define({ "LIVE_DEV_DETACHED_TARGET_CLOSED": "ブラウザーでページが閉じられたため、ライブプレビューはキャンセルされました", "LIVE_DEV_NAVIGATED_AWAY": "ブラウザーで現在のプロジェクトに含まれないページに移動したため、ライブプレビューはキャンセルされました", "LIVE_DEV_CLOSED_UNKNOWN_REASON": "不明な原因 ({0}) によってライブプレビューはキャンセルされました", - + "SAVE_CLOSE_TITLE": "変更を保存", "SAVE_CLOSE_MESSAGE": "文書 {0} に加えた変更を保存しますか?", "SAVE_CLOSE_MULTI_MESSAGE": "以下のファイルに対する変更を保存しますか?", @@ -136,7 +135,7 @@ define({ "EXT_MODIFIED_WARNING": "{0} はディスク上で変更されています。

    ファイルを保存し、これらの変更を上書きしますか。", "EXT_MODIFIED_MESSAGE": "{0} はディスク上で変更されていますが、{APP_NAME} 内にも保存されていない変更があります。

    どちらのバージョンを保持しますか?", "EXT_DELETED_MESSAGE": "{0} はディスク上で削除されていますが、{APP_NAME} 内に保存されていない変更があります。

    変更を保持しますか?", - + // Generic dialog/button labels "DONE": "完了", "OK": "OK", @@ -148,7 +147,7 @@ define({ "DELETE": "削除", "BUTTON_YES": "はい", "BUTTON_NO": "いいえ", - + // Find, Replace, Find in Files "FIND_MATCH_INDEX": "{0} / {1}", "FIND_NO_RESULTS": "該当なし", @@ -196,10 +195,10 @@ define({ "FIND_IN_FILES_EXPAND_COLLAPSE": "Ctrl / Command キーをクリックしてすべて展開 / 折りたたみ", "REPLACE_IN_FILES_ERRORS_TITLE": "置換エラー", "REPLACE_IN_FILES_ERRORS": "次のファイルは検索の後で変更されているか、書き込むことができないため、変更されていません。", - + "ERROR_FETCHING_UPDATE_INFO_TITLE": "更新情報を取得する際にエラーが発生しました。", "ERROR_FETCHING_UPDATE_INFO_MSG": "サーバーから最新の更新情報を取得する際にエラーが発生しました。インターネット接続を確認してリトライしてください。", - + // File exclusion filters "NEW_FILE_FILTER": "新規除外セット\u2026", "CLEAR_FILE_FILTER": "ファイルを除外しない", @@ -256,7 +255,7 @@ define({ "KEYBOARD_CTRL": "Ctrl", "KEYBOARD_SHIFT": "Shift", "KEYBOARD_SPACE": "Space", - + /** * StatusBar strings */ @@ -294,12 +293,11 @@ define({ "NOTHING_TO_LINT": "Lint チェックするファイルがありません", "LINTER_TIMED_OUT": "{0} は {1} ミリ秒待機した後でタイムアウトしました", "LINTER_FAILED": "{0} は次のエラーにより終了しました : {1}", - - + /** * Command Name Constants */ - + // File menu commands "FILE_MENU": "ファイル", "CMD_FILE_NEW_UNTITLED": "新規作成", @@ -354,7 +352,7 @@ define({ "CMD_OPEN_LINE_BELOW": "下の行を開く", "CMD_TOGGLE_CLOSE_BRACKETS": "自動閉じカッコ", "CMD_SHOW_CODE_HINTS": "コードヒントを表示", - + // Search menu commands "FIND_MENU": "検索", "CMD_FIND": "検索", @@ -370,7 +368,7 @@ define({ "CMD_REPLACE_IN_FILES": "ファイルを横断して置換", "CMD_REPLACE_IN_SELECTED": "選択したファイルまたはフォルダーで置換", "CMD_REPLACE_IN_SUBTREE": "置換対象\u2026", - + // View menu commands "VIEW_MENU": "表示", "CMD_HIDE_SIDEBAR": "サイドバーを隠す", @@ -408,7 +406,7 @@ define({ "CMD_SHOW_IN_EXPLORER": "エクスプローラーで表示", "CMD_SHOW_IN_FINDER": "Finder で表示", "CMD_SHOW_IN_OS": "OS で表示", - + // Help menu commands "HELP_MENU": "ヘルプ", "CMD_CHECK_FOR_UPDATE": "更新をチェックする", @@ -454,7 +452,7 @@ define({ "BASEURL_ERROR_INVALID_CHAR": "「{0}」のような特殊文字は、パーセントエンコーディングする必要があります。", "BASEURL_ERROR_UNKNOWN_ERROR": "ベース URL の解析中に不明なエラーが発生しました", "EMPTY_VIEW_HEADER": "このペインにフォーカスがあるときにファイルを開く", - + // Strings for themes-settings.html and themes-general.html "CURRENT_THEME": "現在のテーマ", "USE_THEME_SCROLLBARS": "テーマスクロールバーを使用", @@ -464,7 +462,7 @@ define({ // CSS Quick Edit "BUTTON_NEW_RULE": "新規ルール", - + // Extension Management strings "INSTALL": "インストール", "UPDATE": "更新", @@ -555,7 +553,7 @@ define({ "EXTENSIONS_AVAILABLE_TITLE": "入手可能", "EXTENSIONS_THEMES_TITLE": "テーマ", "EXTENSIONS_UPDATES_TITLE": "アップデート", - + "INLINE_EDITOR_NO_MATCHES": "一致するものがありません。", "INLINE_EDITOR_HIDDEN_MATCHES": "一致項目はすべて縮小されています。一致項目を表示するには、右側にリストされているファイルを展開してください。", "CSS_QUICK_EDIT_NO_MATCHES": "選択に一致する既存の CSS ルールがありません。
    「新規ルール」をクリックしてルールを作成してください。", @@ -563,7 +561,7 @@ define({ // Custom Viewers "IMAGE_VIEWER_LARGEST_ICON": "最大", - + /** * Unit names */ @@ -585,20 +583,20 @@ define({ "CMD_RESTART_NODE": "Node を再起動", "CMD_SHOW_ERRORS_IN_STATUS_BAR": "ステータスバーにエラーを表示", "CMD_OPEN_BRACKETS_SOURCE": "オープン Brackets ソース", - + "LANGUAGE_TITLE": "言語を切り替える", "LANGUAGE_MESSAGE": "言語 :", "LANGUAGE_SUBMIT": "{APP_NAME} をリロード", "LANGUAGE_CANCEL": "キャンセル", "LANGUAGE_SYSTEM_DEFAULT": "システムのデフォルト", - + // extensions/default/InlineTimingFunctionEditor "INLINE_TIMING_EDITOR_TIME": "時間", "INLINE_TIMING_EDITOR_PROGRESSION": "進行", "BEZIER_EDITOR_INFO": " 選択したポイントを移動
    Shift 10 単位ずつ移動
    Tab ポイントを切り替え", "STEPS_EDITOR_INFO": " 手順を増減
    「開始」または「終了」", "INLINE_TIMING_EDITOR_INVALID": "古い値 {0} が無効なため、表示されている関数は {1} に変更されました。ドキュメントは最初の編集内容で更新されます。", - + // extensions/default/InlineColorEditor "COLOR_EDITOR_CURRENT_COLOR_SWATCH_TIP": "現在の色", "COLOR_EDITOR_ORIGINAL_COLOR_SWATCH_TIP": "元の色", @@ -607,23 +605,23 @@ define({ "COLOR_EDITOR_HSLA_BUTTON_TIP": "HSLa 形式", "COLOR_EDITOR_USED_COLOR_TIP_SINGULAR": "{0} ({1} 回使用)", "COLOR_EDITOR_USED_COLOR_TIP_PLURAL": "{0} ({1} 回使用)", - + // extensions/default/JavaScriptCodeHints "CMD_JUMPTO_DEFINITION": "定義にジャンプ", "CMD_SHOW_PARAMETER_HINT": "パラメーターヒントを表示", "NO_ARGUMENTS": "<パラメーターがありません>", "DETECTED_EXCLUSION_TITLE": "JavaScript ファイルの推論問題", "DETECTED_EXCLUSION_INFO": "Brackets で {0} の処理中に問題が発生しました。

    このファイルはコードヒント、定義にジャンプ、またはクイック編集では処理されません。このファイルを再度有効にするには、プロジェクトで .brackets.json を開いて jscodehints.detectedExclusions を編集してください。

    これは、Brackets のバグである可能性があります。このファイルのコピーをご提供いただける場合は、ここで名付けたファイルへのリンクを記載してバグを登録してください。", - + // extensions/default/JSLint "JSLINT_NAME": "JSLint", - + // extensions/default/QuickView "CMD_ENABLE_QUICK_VIEW": "ホバー・クイックビュー", - + // extensions/default/RecentProjects "CMD_TOGGLE_RECENT_PROJECTS": "最近使用したプロジェクト", - + // extensions/default/WebPlatformDocs "DOCS_MORE_LINK": "詳細" }); From d7ea5389ae756895a71845073a5ed7f428a0fc0e Mon Sep 17 00:00:00 2001 From: Marcel Gerber Date: Thu, 13 Nov 2014 17:26:36 +0100 Subject: [PATCH 135/141] Change name, remove blockComment --- src/language/languages.json | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/language/languages.json b/src/language/languages.json index a28c2bd66f5..77bdfe1728c 100644 --- a/src/language/languages.json +++ b/src/language/languages.json @@ -212,9 +212,8 @@ }, "gfm": { - "name": "GitHub Flavored Markdown", - "mode": "gfm", - "blockComment": [""] + "name": "Markdown (GitHub)", + "mode": "gfm" }, "yaml": { From d0bb9fae85a31cf94f87c73d8f13e6e14ed37271 Mon Sep 17 00:00:00 2001 From: Marcel Gerber Date: Sun, 26 Oct 2014 19:22:12 +0100 Subject: [PATCH 136/141] Update Web Platform Docs --- .../default/WebPlatformDocs/InlineDocsViewer.html | 2 +- .../default/WebPlatformDocs/InlineDocsViewer.js | 8 ++------ .../default/WebPlatformDocs/WebPlatformDocs.less | 15 +++++++++++++++ src/extensions/default/WebPlatformDocs/css.json | 2 +- 4 files changed, 19 insertions(+), 8 deletions(-) diff --git a/src/extensions/default/WebPlatformDocs/InlineDocsViewer.html b/src/extensions/default/WebPlatformDocs/InlineDocsViewer.html index d2d3b15d219..27fe5a1661f 100644 --- a/src/extensions/default/WebPlatformDocs/InlineDocsViewer.html +++ b/src/extensions/default/WebPlatformDocs/InlineDocsViewer.html @@ -10,7 +10,7 @@

    {{propName}}

    {{#propValues}} -
    {{value}}
    +
    {{{value}}}
    {{{description}}}
    {{/propValues}}
    diff --git a/src/extensions/default/WebPlatformDocs/InlineDocsViewer.js b/src/extensions/default/WebPlatformDocs/InlineDocsViewer.js index aab7bcc7e33..ac3b988c5b5 100644 --- a/src/extensions/default/WebPlatformDocs/InlineDocsViewer.js +++ b/src/extensions/default/WebPlatformDocs/InlineDocsViewer.js @@ -49,19 +49,15 @@ define(function (require, exports, module) { /** * @param {!string} cssPropName - * @param {!{SUMMARY:string, URL:string, VALUES:Array.<{TITLE:string, DESCRIPTION:string}>}} cssPropDetails + * @param {!{SUMMARY:string, URL:string, VALUES:?Array.<{value:string, description:string}>}} cssPropDetails */ function InlineDocsViewer(cssPropName, cssPropDetails) { InlineWidget.call(this); - var propValues = cssPropDetails.VALUES.map(function (valueInfo) { - return { value: valueInfo.TITLE, description: valueInfo.DESCRIPTION }; - }); - var templateVars = { propName : cssPropName, summary : cssPropDetails.SUMMARY, - propValues : propValues, + propValues : cssPropDetails.VALUES || [], url : cssPropDetails.URL, Strings : Strings }; diff --git a/src/extensions/default/WebPlatformDocs/WebPlatformDocs.less b/src/extensions/default/WebPlatformDocs/WebPlatformDocs.less index 153986d6ec0..d5401dc3d2c 100644 --- a/src/extensions/default/WebPlatformDocs/WebPlatformDocs.less +++ b/src/extensions/default/WebPlatformDocs/WebPlatformDocs.less @@ -57,6 +57,15 @@ b { font-weight: @font-weight-semibold; } + + table { + width: 100%; + margin-bottom: 1em; + th, td { + border: 1px solid lighten(@bc-text-thin-quiet, 20%); + padding: 0 .15em; + } + } } /* Left-hand column */ @@ -207,5 +216,11 @@ a.more-info { color: @dark-bc-text; text-shadow: 0 1px 0 @dark-bc-highlight; } + + table { + th, td { + border-color: darken(@dark-bc-text-thin-quiet, 35%); + } + } } } diff --git a/src/extensions/default/WebPlatformDocs/css.json b/src/extensions/default/WebPlatformDocs/css.json index dda8003f9cf..b8361552bb5 100644 --- a/src/extensions/default/WebPlatformDocs/css.json +++ b/src/extensions/default/WebPlatformDocs/css.json @@ -1 +1 @@ -{"HASH":"497A85B8CC8FF3874748396CA4F3A437F400F281","PROPERTIES":{"css\/properties\/widows":{"SUMMARY":"

    Defines the minimum number of lines that can appear in the beginning of a new page. In typography, a widow is the last line of a paragraph appearing alone at the top of a page, which is considered to look awkward. Setting the widows property to an integer higher than 1 prevents this.\n<\/p>

    On a non-paged media, like screen, the widows CSS property has no effect.\nIt can have a number value or it can inherit the values from the parent element.\n<\/p>","INITIALVALUE":2,"ID":"css\/properties\/widows","ANIMATABLE":false,"COMPUTEDVALUE":"As specified","URL":"http:\/\/docs.webplatform.org\/wiki\/css\/properties\/widows","STATUS":"W3C Recommendation","VALUES":[{"DESCRIPTION":"

    Takes the same specified value as the property for the element's parent.\n<\/p>","TITLE":"inherit"},{"DESCRIPTION":"

    Denotes the minimum amount of lines that can stay alone on the top of a new page. If the value is not positive, the declaration is invalid.\n<\/p>","TITLE":"integer"}]},"css\/properties\/text-kashida-space":{"SUMMARY":"","INITIALVALUE":"0%","ID":"css\/properties\/text-kashida-space","ANIMATABLE":false,"COMPUTEDVALUE":"","URL":"http:\/\/docs.webplatform.org\/wiki\/css\/properties\/text-kashida-space","STATUS":"","VALUES":[{"DESCRIPTION":"

    An integer, followed by a %. The value is the ratio of kashida expansion to white space expansion. 100% specifies kashida expansion only, and 0% specifies white space expansion only\n<\/p>","TITLE":"percentage"}]},"css\/properties\/outline-color":{"SUMMARY":"

    The outline-color property sets the color of the outline<\/a> of an element. An outline is a line that is drawn around elements, outside the border edge, to make the element stand out.\n<\/p>","INITIALVALUE":"invert","ID":"css\/properties\/outline-color","ANIMATABLE":true,"COMPUTEDVALUE":"The computed value for ‘invert’ is ‘invert’. For <color> values, the computed value is as defined for the ‘color’ property.","URL":"http:\/\/docs.webplatform.org\/wiki\/css\/properties\/outline-color","STATUS":"W3C Working Draft","VALUES":[{"DESCRIPTION":"

    This is expected to perform a color inversion on the pixels on the screen.\n<\/p>","TITLE":"invert"},{"DESCRIPTION":"

    This is a keyword indicating that the value is inherited from their parent's element calculated value.\n<\/p>","TITLE":"inherit"},{"DESCRIPTION":"

    Specify the color to use on all outlines. This can be anywhere from one to four values representing the top, right, bottom, and left outline respectively.\n<\/p>","TITLE":""}]},"css\/properties\/left":{"SUMMARY":"

    Sets the left edge of an element\n<\/p>","INITIALVALUE":"auto","ID":"css\/properties\/left","ANIMATABLE":false,"COMPUTEDVALUE":"","URL":"http:\/\/docs.webplatform.org\/wiki\/css\/properties\/left","STATUS":"","VALUES":[{"DESCRIPTION":"

    Integer, followed by a percent sign (%). The value is a percentage of the width of the parent object.\n<\/p>","TITLE":"percentage"},{"DESCRIPTION":"

    Floating-point number, followed by an absolute units designator (cm<\/code>, mm<\/code>, in<\/code>, pt<\/code>, or pc<\/code>) or a relative units designator (em<\/code>, ex<\/code>, or px<\/code>). For more information about the supported length units, see CSS Values and Units Reference.\n<\/p>","TITLE":"length"},{"DESCRIPTION":"

    Default. Default position, according to the regular HTML layout of the page.\n<\/p>","TITLE":"auto"}]},"css\/properties\/mask-position":{"SUMMARY":"

    The \"mask-position\" property sets the initial position of a mask image. Position can be specified in terms of percentages of the distance from upper left corner (original point) or using the keywords top, left, center, right, or bottom.\n<\/p>","INITIALVALUE":"0% 0%","ID":"css\/properties\/mask-position","ANIMATABLE":true,"COMPUTEDVALUE":"A list, each item consisting of: two keywords representing the origin and two offsets from that origin, each given as an absolute length (if given a <length>), otherwise as a percentage.","URL":"http:\/\/docs.webplatform.org\/wiki\/css\/properties\/mask-position","STATUS":"","VALUES":[{"DESCRIPTION":"

    the first number represents the percentage of distance away from the left side of the page, the second number represents the percentage of distance away from the upper side of the page. With a initial value pair of 0% 0%, the mask image is be placed at the upper left corner of the page. . With a value pair of 30% 70%, the mask image is be placed at the point 30% across and 70% down the page.\n<\/p>","TITLE":""},{"DESCRIPTION":"

    equivalent to 100% for second ( vertical ) number\n<\/p>","TITLE":"bottom"},{"DESCRIPTION":"

    the first number represents the distance away from the left side of the page, the second number represents the distance away from the upper side of the page.\n<\/p>","TITLE":""},{"DESCRIPTION":"

    equivalent to 50% 50%\n<\/p>","TITLE":"center"},{"DESCRIPTION":"

    equivalent to 100% for first ( horizontal ) number\n<\/p>","TITLE":"right"},{"DESCRIPTION":"

    equivalent to 0% for second ( vertical ) number\n<\/p>","TITLE":"top"},{"DESCRIPTION":"

    equivalent to 0% for first ( horizontal ) number\n<\/p>","TITLE":"left"}]},"css\/properties\/ms-scroll-limit-yMax":{"SUMMARY":"","INITIALVALUE":0,"ID":"css\/properties\/ms-scroll-limit-yMax","ANIMATABLE":false,"COMPUTEDVALUE":"","URL":"http:\/\/docs.webplatform.org\/wiki\/css\/properties\/ms-scroll-limit-yMax","STATUS":"Non-Standard","VALUES":[{"DESCRIPTION":"

    The maximum value for the scrollTop<\/b><\/a> property.\n<\/p>","TITLE":"length"},{"DESCRIPTION":"

    The maximum value for the scrollTop<\/b><\/a> property is equal to scrollHeight<\/b><\/a>.\n<\/p>","TITLE":"auto"}]},"css\/properties\/flex-flow":{"SUMMARY":"

    The flex-flow<\/b> CSS property defines the flex container's main and cross axis. It is a shorthand property for the flex-direction<\/a> and flex-wrap<\/a> properties.\n<\/p>","INITIALVALUE":"See individual properties.","ID":"css\/properties\/flex-flow","ANIMATABLE":false,"COMPUTEDVALUE":"See individual properties.","URL":"http:\/\/docs.webplatform.org\/wiki\/css\/properties\/flex-flow","STATUS":"W3C Candidate Recommendation","VALUES":[{"DESCRIPTION":"

    The shorthand value includes the values of the following properties: \n<\/p>\n