diff --git a/administrator/components/com_admin/script.php b/administrator/components/com_admin/script.php
index f868e4cbf47f9..9dca887b02a79 100644
--- a/administrator/components/com_admin/script.php
+++ b/administrator/components/com_admin/script.php
@@ -1082,6 +1082,8 @@ public function deleteUnexistingFiles()
'/libraries/joomla/registry/format/json.php',
'/libraries/joomla/registry/format/php.php',
'/libraries/joomla/registry/format/xml.php',
+ // Joomla 3.3.1
+ '/administrator/templates/isis/html/message.php',
// Joomla! 3.4
'/administrator/components/com_tags/helpers/html/index.html',
'/administrator/components/com_tags/models/fields/index.html',
diff --git a/administrator/components/com_config/model/application.php b/administrator/components/com_config/model/application.php
index 1a676a00d07f8..b5cc9cda94017 100644
--- a/administrator/components/com_config/model/application.php
+++ b/administrator/components/com_config/model/application.php
@@ -97,6 +97,27 @@ public function save($data)
{
$app = JFactory::getApplication();
+ // Check that we aren't setting wrong database configuration
+ $options = array(
+ 'driver' => $data['dbtype'],
+ 'host' => $data['host'],
+ 'user' => $data['user'],
+ 'password' => JFactory::getConfig()->get('password'),
+ 'database' => $data['db'],
+ 'prefix' => $data['dbprefix']
+ );
+
+ try
+ {
+ $dbc = JDatabaseDriver::getInstance($options)->getVersion();
+ }
+ catch (Exception $e)
+ {
+ $app->enqueueMessage(JText::_('JLIB_DATABASE_ERROR_DATABASE_CONNECT'), 'error');
+
+ return false;
+ }
+
// Save the rules
if (isset($data['rules']))
{
diff --git a/administrator/components/com_content/models/article.php b/administrator/components/com_content/models/article.php
index d47bf4fa7f71c..3658cdfa6aaa3 100644
--- a/administrator/components/com_content/models/article.php
+++ b/administrator/components/com_content/models/article.php
@@ -444,6 +444,12 @@ protected function loadFormData()
}
}
+ // If there are params fieldsets in the form it will fail with a registry object
+ if (isset($data->params) && $data->params instanceof Registry)
+ {
+ $data->params = $data->params->toArray();
+ }
+
$this->preprocessData('com_content.article', $data);
return $data;
diff --git a/administrator/components/com_installer/views/database/tmpl/default.php b/administrator/components/com_installer/views/database/tmpl/default.php
index 00b7cb61795f0..dfb0bfcfec2c8 100644
--- a/administrator/components/com_installer/views/database/tmpl/default.php
+++ b/administrator/components/com_installer/views/database/tmpl/default.php
@@ -37,7 +37,7 @@
+
diff --git a/administrator/components/com_installer/views/install/tmpl/default.php b/administrator/components/com_installer/views/install/tmpl/default.php
index faa9fe04c80ef..cac0da70dd0a5 100644
--- a/administrator/components/com_installer/views/install/tmpl/default.php
+++ b/administrator/components/com_installer/views/install/tmpl/default.php
@@ -12,6 +12,10 @@
// MooTools is loaded for B/C for extensions generating JavaScript in their install scripts, this call will be removed at 4.0
JHtml::_('behavior.framework', true);
JHtml::_('bootstrap.tooltip');
+
+JText::script('COM_INSTALLER_MSG_INSTALL_PLEASE_SELECT_A_PACKAGE');
+JText::script('COM_INSTALLER_MSG_INSTALL_PLEASE_SELECT_A_DIRECTORY');
+JText::script('COM_INSTALLER_MSG_INSTALL_ENTER_A_URL');
?>
+
+trigger('onContentAfterDisplay', array('com_media.file', &$this->_tmp_video, &$params));
diff --git a/administrator/components/com_media/views/medialist/view.html.php b/administrator/components/com_media/views/medialist/view.html.php
index ae8f3cbcaa447..2e0bcf16d75bb 100644
--- a/administrator/components/com_media/views/medialist/view.html.php
+++ b/administrator/components/com_media/views/medialist/view.html.php
@@ -37,26 +37,11 @@ public function display($tpl = null)
// Do not allow cache
$app->allowCache(false);
- JHtml::_('behavior.framework', true);
-
- JFactory::getDocument()->addScriptDeclaration("
- window.addEvent('domready', function()
- {
- window.parent.document.updateUploader();
- $$('a.img-preview').each(function(el)
- {
- el.addEvent('click', function(e)
- {
- window.top.document.preview.fromElement(el);
- return false;
- });
- });
- });");
-
- $images = $this->get('images');
+ $images = $this->get('images');
$documents = $this->get('documents');
- $folders = $this->get('folders');
- $state = $this->get('state');
+ $folders = $this->get('folders');
+ $videos = $this->get('videos');
+ $state = $this->get('state');
// Check for invalid folder name
if (empty($state->folder))
@@ -70,11 +55,12 @@ public function display($tpl = null)
}
}
- $this->baseURL = JUri::root();
- $this->images = &$images;
+ $this->baseURL = JUri::root();
+ $this->images = &$images;
$this->documents = &$documents;
- $this->folders = &$folders;
- $this->state = &$state;
+ $this->folders = &$folders;
+ $this->state = &$state;
+ $this->videos = &$videos;
parent::display($tpl);
}
@@ -141,4 +127,25 @@ public function setDoc($index = 0)
$this->_tmp_doc = new JObject;
}
}
+
+ /**
+ * Set the active video
+ *
+ * @param integer $index Doc position
+ *
+ * @return void
+ *
+ * @since 1.0
+ */
+ public function setVideo($index = 0)
+ {
+ if (isset($this->videos[$index]))
+ {
+ $this->_tmp_video = &$this->videos[$index];
+ }
+ else
+ {
+ $this->_tmp_video = new JObject;
+ }
+ }
}
diff --git a/administrator/components/com_tags/views/tag/view.html.php b/administrator/components/com_tags/views/tag/view.html.php
index 9b0458a4061f6..1bad651f90c5f 100644
--- a/administrator/components/com_tags/views/tag/view.html.php
+++ b/administrator/components/com_tags/views/tag/view.html.php
@@ -81,8 +81,12 @@ protected function addToolbar()
$canDo = $this->canDo;
$title = JText::_('COM_TAGS_BASE_' . ($isNew ? 'ADD' : 'EDIT') . '_TITLE');
- // Prepare the toolbar.
- JToolbarHelper::title($title, 'tag tag-' . ($isNew ? 'add' : 'edit') . ($isNew ? 'add' : 'edit'));
+ /**
+ * Prepare the toolbar.
+ * If it is new we get: `tag tag-add add`
+ * else we get `tag tag-edit edit`
+ */
+ JToolbarHelper::title($title, 'tag tag-' . ($isNew ? 'add add' : 'edit edit'));
// For new records, check the create permission.
if ($isNew)
diff --git a/administrator/language/en-GB/en-GB.com_media.ini b/administrator/language/en-GB/en-GB.com_media.ini
index 90d134b69ec91..1c72927507742 100644
--- a/administrator/language/en-GB/en-GB.com_media.ini
+++ b/administrator/language/en-GB/en-GB.com_media.ini
@@ -74,8 +74,9 @@ COM_MEDIA_FOLDER="Folder"
COM_MEDIA_FOLDERS="Media Folders"
COM_MEDIA_FOLDERS_PATH_LABEL="Warning! Path Folder Changing the default 'Path to files folder' to another folder other than default 'images' may break your links. The 'Path to images' folder has to be the same or a subfolder of 'Path to files'."
COM_MEDIA_IMAGE_DESCRIPTION="Image Description"
-COM_MEDIA_IMAGE_TITLE="%1$s - %2$s"
COM_MEDIA_IMAGE_DIMENSIONS="%1$s x %2$s"
+COM_MEDIA_IMAGE_PREVIEW="Image preview"
+COM_MEDIA_IMAGE_TITLE="%1$s - %2$s"
COM_MEDIA_IMAGE_URL="Image URL"
COM_MEDIA_INSERT_IMAGE="Insert Image"
COM_MEDIA_INSERT="Insert"
@@ -96,5 +97,6 @@ COM_MEDIA_UPLOAD_FILE="Upload file"
COM_MEDIA_UPLOAD_SUCCESSFUL="Upload Successful"
COM_MEDIA_UPLOAD="Upload"
COM_MEDIA_UP="Up"
+COM_MEDIA_VIDEO_PREVIEW="Video Preview"
COM_MEDIA_XML_DESCRIPTION="Component for managing site media"
JLIB_RULES_SETTING_NOTES="1. Changes apply to this component only. Inherited - a Global Configuration setting or higher level setting is applied. Denied always wins - whatever is set at the Global or higher level and applies to all child elements. Allowed will enable the action for this component unless it is overruled by a Global Configuration setting.
2. Select Save to refresh the calculated settings."
\ No newline at end of file
diff --git a/administrator/language/en-GB/en-GB.lib_joomla.ini b/administrator/language/en-GB/en-GB.lib_joomla.ini
index e4f78b42fa1f3..b7929aa2d9d93 100644
--- a/administrator/language/en-GB/en-GB.lib_joomla.ini
+++ b/administrator/language/en-GB/en-GB.lib_joomla.ini
@@ -114,7 +114,7 @@ JLIB_CLIENT_ERROR_JFTP_STORE_BAD_RESPONSE_TRANSFER="JFTP: :store: Transfer Faile
JLIB_CLIENT_ERROR_JFTP_WRITE_PASSIVE="JFTP: :write: Unable to use passive mode."
JLIB_CLIENT_ERROR_JFTP_WRITE_BAD_RESPONSE="JFTP: :write: Bad response."
JLIB_CLIENT_ERROR_JFTP_WRITE_BAD_RESPONSE_STOR="JFTP: :write: Bad response. Server response: %1$s [Expected: 150 or 125]. Path sent: %2$s"
-JLIB_CLIENT_ERROR_JFTP_WRITE_DATA_PORT="JFTP: :write: Unable to write to data port socket"
+JLIB_CLIENT_ERROR_JFTP_WRITE_DATA_PORT="JFTP: :write: Unable to write to data port socket."
JLIB_CLIENT_ERROR_JFTP_WRITE_BAD_RESPONSE_TRANSFER="JFTP: :write: Transfer Failed. Server response: %1$s [Expected: 226]. Path sent: %2$s"
JLIB_CLIENT_ERROR_JFTP_LISTNAMES_PASSIVE="JFTP: :listNames: Unable to use passive mode."
JLIB_CLIENT_ERROR_JFTP_LISTNAMES_BAD_RESPONSE="JFTP: :listNames: Bad response."
@@ -135,7 +135,7 @@ JLIB_CLIENT_ERROR_JFTP_PASSIVE_IP_VALID="JFTP: :_passive: IP and port for data t
JLIB_CLIENT_ERROR_JFTP_PASSIVE_CONNECT="JFTP: :_passive: Could not connect to host %1$s on port %2$s. Socket error number: %3$s and error message: %4$s"
JLIB_CLIENT_ERROR_JFTP_MODE_BINARY="JFTP: :_mode: Bad response. Server response: %s [Expected: 200]. Mode sent: Binary."
JLIB_CLIENT_ERROR_JFTP_MODE_ASCII="JFTP: :_mode: Bad response. Server response: %s [Expected: 200]. Mode sent: Ascii."
-JLIB_CLIENT_ERROR_HELPER_SETCREDENTIALSFROMREQUEST_FAILED="Looks like User's credentials are no good ..."
+JLIB_CLIENT_ERROR_HELPER_SETCREDENTIALSFROMREQUEST_FAILED="Looks like User's credentials are no good."
JLIB_CLIENT_ERROR_LDAP_ADDRESS_NOT_AVAILABLE="Address not available."
JLIB_DATABASE_ERROR_ADAPTER_MYSQL="The MySQL adapter 'mysql' is not available."
@@ -276,16 +276,16 @@ JLIB_FILESYSTEM_ERROR_PATH_IS_NOT_A_FOLDER_FOLDER="JFolder: :folder: Path is not
JLIB_FILESYSTEM_ERROR_STREAMS_FILE_SIZE="Failed to get file size. This may not work for all streams!"
JLIB_FILESYSTEM_ERROR_STREAMS_FILE_NOT_OPEN="File not open."
JLIB_FILESYSTEM_ERROR_STREAMS_FILENAME="File name not set."
-JLIB_FILESYSTEM_ERROR_NO_DATA_WRITTEN="Warning: No data written"
+JLIB_FILESYSTEM_ERROR_NO_DATA_WRITTEN="Warning: No data written."
JLIB_FILESYSTEM_ERROR_STREAMS_FAILED_TO_OPEN_WRITER="Failed to open writer: %s"
JLIB_FILESYSTEM_ERROR_STREAMS_FAILED_TO_OPEN_READER="Failed to open reader: %s"
JLIB_FILESYSTEM_ERROR_STREAMS_NOT_UPLOADED_FILE="Not an uploaded file!"
JLIB_FORM_BUTTON_CLEAR="Clear"
JLIB_FORM_BUTTON_SELECT="Select"
-JLIB_FORM_CHANGE_IMAGE="Change image"
-JLIB_FORM_CHANGE_IMAGE_BUTTON="Change Image Button."
-JLIB_FORM_CHANGE_USER="Select User."
+JLIB_FORM_CHANGE_IMAGE="Change Image"
+JLIB_FORM_CHANGE_IMAGE_BUTTON="Change Image Button"
+JLIB_FORM_CHANGE_USER="Select User"
JLIB_FORM_ERROR_FIELDS_CATEGORY_ERROR_EXTENSION_EMPTY="Extension attribute is empty in the category field."
JLIB_FORM_ERROR_FIELDS_GROUPEDLIST_ELEMENT_NAME="Unknown element type: %s"
JLIB_FORM_ERROR_NO_DATA="No data."
@@ -356,7 +356,7 @@ JLIB_HTML_BEHAVIOR_DISPLAY_S_FIRST="Display %s first"
JLIB_HTML_BEHAVIOR_DRAG_TO_MOVE="Drag to move."
JLIB_HTML_BEHAVIOR_GO_TODAY="Go to today"
JLIB_HTML_BEHAVIOR_GREEN="Green"
-JLIB_HTML_BEHAVIOR_HOLD_MOUSE="- Hold mouse button on any of the above buttons for faster selection."
+JLIB_HTML_BEHAVIOR_HOLD_MOUSE="- Hold mouse button on any of the buttons above for faster selection."
JLIB_HTML_BEHAVIOR_MONTH_SELECT="- Use the < and > buttons to select month\n"
JLIB_HTML_BEHAVIOR_NEXT_MONTH_HOLD_FOR_MENU="Select to move to the next month. Select and hold for a list of the months."
JLIB_HTML_BEHAVIOR_NEXT_YEAR_HOLD_FOR_MENU="Select to move to the next year. Select and hold for a list of years."
@@ -393,7 +393,7 @@ JLIB_HTML_EDIT_MENU_ITEM="Edit menu item."
JLIB_HTML_EDIT_MENU_ITEM_ID="Item ID: %s"
JLIB_HTML_EDIT_MODULE="Edit module"
JLIB_HTML_EDIT_MODULE_IN_POSITION="Position: %s"
-JLIB_HTML_EDITOR_CANNOT_LOAD="Can't load the editor"
+JLIB_HTML_EDITOR_CANNOT_LOAD="Can't load the editor."
JLIB_HTML_END="End"
JLIB_HTML_ERROR_FUNCTION_NOT_SUPPORTED="Function not supported."
JLIB_HTML_ERROR_NOTFOUNDINFILE="%s: :%s not found in file."
@@ -404,7 +404,7 @@ JLIB_HTML_MOVE_UP="Move Up"
JLIB_HTML_NO_PARAMETERS_FOR_THIS_ITEM="There are no parameters for this item."
JLIB_HTML_NO_RECORDS_FOUND="No records found."
JLIB_HTML_PAGE_CURRENT_OF_TOTAL="Page %s of %s"
-JLIB_HTML_PLEASE_MAKE_A_SELECTION_FROM_THE_LIST="Please first make a selection from the list"
+JLIB_HTML_PLEASE_MAKE_A_SELECTION_FROM_THE_LIST="Please first make a selection from the list."
JLIB_HTML_PUBLISH_ITEM="Publish Item"
JLIB_HTML_PUBLISHED_EXPIRED_ITEM="Published, but has Expired."
JLIB_HTML_PUBLISHED_FINISHED="Finish: %s"
@@ -412,7 +412,7 @@ JLIB_HTML_PUBLISHED_ITEM="Published and is Current."
JLIB_HTML_PUBLISHED_PENDING_ITEM="Published, but is Pending."
JLIB_HTML_PUBLISHED_START="Start: %s"
JLIB_HTML_RESULTS_OF="Results %s - %s of %s"
-JLIB_HTML_SAVE_ORDER="Save Order."
+JLIB_HTML_SAVE_ORDER="Save Order"
JLIB_HTML_SELECT_STATE="Select State"
JLIB_HTML_START="Start"
JLIB_HTML_UNPUBLISH_ITEM="Unpublish Item"
@@ -429,14 +429,14 @@ JLIB_INSTALLER_ABORT_COMP_COPY_SETUP="Component %1$s: Could not copy setup file.
JLIB_INSTALLER_ABORT_COMP_FAIL_ADMIN_FILES="Component %s: Failed to copy administrator files."
JLIB_INSTALLER_ABORT_COMP_FAIL_SITE_FILES="Component %s: Failed to copy site files."
JLIB_INSTALLER_ABORT_COMP_INSTALL_COPY_SETUP="Component Install: Could not copy setup file."
-JLIB_INSTALLER_ABORT_COMP_INSTALL_CUSTOM_INSTALL_FAILURE="Component Install: Custom install routine failure"
+JLIB_INSTALLER_ABORT_COMP_INSTALL_CUSTOM_INSTALL_FAILURE="Component Install: Custom install routine failure."
JLIB_INSTALLER_ABORT_COMP_INSTALL_MANIFEST="Component Install: Could not copy PHP manifest file."
JLIB_INSTALLER_ABORT_COMP_INSTALL_PHP_INSTALL="Component Install: Could not copy PHP install file."
JLIB_INSTALLER_ABORT_COMP_INSTALL_PHP_UNINSTALL="Component Install: Could not copy PHP uninstall file."
JLIB_INSTALLER_ABORT_COMP_INSTALL_ROLLBACK="Component Install: %s"
JLIB_INSTALLER_ABORT_COMP_INSTALL_SQL_ERROR="Component Install: SQL error file %s"
JLIB_INSTALLER_ABORT_COMP_UPDATESITEMENUS_FAILED="Component Install: Failed to update menu items."
-JLIB_INSTALLER_ABORT_COMP_UPDATE_ADMIN_ELEMENT="Component Update: The XML file did not contain an administration element"
+JLIB_INSTALLER_ABORT_COMP_UPDATE_ADMIN_ELEMENT="Component Update: The XML file did not contain an administration element."
JLIB_INSTALLER_ABORT_COMP_UPDATE_COPY_SETUP="Component Update: Could not copy setup file."
JLIB_INSTALLER_ABORT_COMP_UPDATE_MANIFEST="Component Update: Could not copy PHP manifest file."
JLIB_INSTALLER_ABORT_COMP_UPDATE_PHP_INSTALL="Component Update: Could not copy PHP install file."
@@ -447,9 +447,9 @@ JLIB_INSTALLER_ABORT_CREATE_DIRECTORY="Extension %1$s: Failed to create folder:
JLIB_INSTALLER_ABORT_DEBUG="Installation unexpectedly terminated:"
JLIB_INSTALLER_ABORT_DETECTMANIFEST="Unable to detect manifest file."
JLIB_INSTALLER_ABORT_DIRECTORY="Extension %1$s: Another %2$s is already using the named folder: %3$s. Are you trying to install the same extension again?"
-JLIB_INSTALLER_ABORT_EXTENSIONNOTVALID="Extension is not valid"
+JLIB_INSTALLER_ABORT_EXTENSIONNOTVALID="Extension is not valid."
JLIB_INSTALLER_ABORT_FILE_INSTALL_COPY_SETUP="Files Install: Could not copy setup file."
-JLIB_INSTALLER_ABORT_FILE_INSTALL_CUSTOM_INSTALL_FAILURE="Files Install: Custom install routine failure"
+JLIB_INSTALLER_ABORT_FILE_INSTALL_CUSTOM_INSTALL_FAILURE="Files Install: Custom install routine failure."
JLIB_INSTALLER_ABORT_FILE_INSTALL_FAIL_SOURCE_DIRECTORY="Files Install: Failed to find source folder: %s"
JLIB_INSTALLER_ABORT_FILE_INSTALL_ROLLBACK="Files Install: %s"
JLIB_INSTALLER_ABORT_FILE_INSTALL_SQL_ERROR="Files %1$s: SQL error file %2$s"
@@ -463,7 +463,7 @@ JLIB_INSTALLER_ABORT_LIB_INSTALL_COPY_SETUP="Library Install: Could not copy set
JLIB_INSTALLER_ABORT_LIB_INSTALL_FAILED_TO_CREATE_DIRECTORY="Library Install: Failed to create folder: %s"
JLIB_INSTALLER_ABORT_LIB_INSTALL_NOFILE="Library Install: No library file specified."
JLIB_INSTALLER_ABORT_LIB_INSTALL_ROLLBACK="Library Install: %s"
-JLIB_INSTALLER_ABORT_LOAD_DETAILS="Failed to load extension details"
+JLIB_INSTALLER_ABORT_LOAD_DETAILS="Failed to load extension details."
JLIB_INSTALLER_ABORT_MANIFEST="Extension %1$s: Could not copy PHP manifest file."
JLIB_INSTALLER_ABORT_METHODNOTSUPPORTED="Method not supported for this extension type."
JLIB_INSTALLER_ABORT_METHODNOTSUPPORTED_TYPE="Method not supported for this extension type: %s"
@@ -479,10 +479,10 @@ JLIB_INSTALLER_ABORT_MOD_ROLLBACK="Module %1$s: %2$s"
JLIB_INSTALLER_ABORT_MOD_UNINSTALL_UNKNOWN_CLIENT="Module Uninstall: Unknown client type [%s]"
JLIB_INSTALLER_ABORT_MOD_UNKNOWN_CLIENT="Module %1$s: Unknown client type [%2$s]"
JLIB_INSTALLER_ABORT_NOINSTALLPATH="Install path does not exist."
-JLIB_INSTALLER_ABORT_NOUPDATEPATH="Update path does not exist"
+JLIB_INSTALLER_ABORT_NOUPDATEPATH="Update path does not exist."
JLIB_INSTALLER_ABORT_PACK_INSTALL_COPY_SETUP="Package Install: Could not copy setup file."
-JLIB_INSTALLER_ABORT_PACK_INSTALL_CREATE_DIRECTORY="Package Install: Failed to create folder:%s "
-JLIB_INSTALLER_ABORT_PACKAGE_INSTALL_CUSTOM_INSTALL_FAILURE="Package Install: Custom install routine failure"
+JLIB_INSTALLER_ABORT_PACK_INSTALL_CREATE_DIRECTORY="Package Install: Failed to create folder:%s."
+JLIB_INSTALLER_ABORT_PACKAGE_INSTALL_CUSTOM_INSTALL_FAILURE="Package Install: Custom install routine failure."
JLIB_INSTALLER_ABORT_PACKAGE_INSTALL_MANIFEST="Installation failed: Could not copy PHP manifest file."
JLIB_INSTALLER_ABORT_PACK_INSTALL_ERROR_EXTENSION="Package %1$s: There was an error installing an extension: %2$s"
JLIB_INSTALLER_ABORT_PACK_INSTALL_NO_FILES="Package %s: There were no files to install!"
@@ -492,7 +492,7 @@ JLIB_INSTALLER_ABORT_PLG_COPY_FILES="Plugin %s: Could not copy files from the so
JLIB_INSTALLER_ABORT_PLG_INSTALL_ALLREADY_EXISTS="Plugin %1$s: Plugin %2$s already exists."
JLIB_INSTALLER_ABORT_PLG_INSTALL_COPY_SETUP="Plugin %s: Could not copy setup file."
JLIB_INSTALLER_ABORT_PLG_INSTALL_CREATE_DIRECTORY="Plugin %1$s: Failed to create folder: %2$s"
-JLIB_INSTALLER_ABORT_PLG_INSTALL_CUSTOM_INSTALL_FAILURE="Plugin Install: Custom install routine failure"
+JLIB_INSTALLER_ABORT_PLG_INSTALL_CUSTOM_INSTALL_FAILURE="Plugin Install: Custom install routine failure."
JLIB_INSTALLER_ABORT_PLG_INSTALL_DIRECTORY="Plugin %1$s: Another plugin is already using folder: %2$s"
JLIB_INSTALLER_ABORT_PLG_INSTALL_MANIFEST="Plugin %s: Could not copy PHP manifest file."
JLIB_INSTALLER_ABORT_PLG_INSTALL_NO_FILE="Plugin %s: No plugin file specified."
@@ -517,7 +517,7 @@ JLIB_INSTALLER_DEFAULT_STYLE="%s - Default"
JLIB_INSTALLER_DISCOVER="Discover"
JLIB_INSTALLER_ERROR_COMP_DISCOVER_STORE_DETAILS="Component Discover install: Failed to store component details."
JLIB_INSTALLER_ERROR_COMP_FAILED_TO_CREATE_DIRECTORY="Component %1$s: Failed to create folder: %2$s."
-JLIB_INSTALLER_ERROR_COMP_INSTALL_ADMIN_ELEMENT="Component Install: The XML file did not contain an administration element"
+JLIB_INSTALLER_ERROR_COMP_INSTALL_ADMIN_ELEMENT="Component Install: The XML file did not contain an administration element."
JLIB_INSTALLER_ERROR_COMP_INSTALL_DIR_ADMIN="Component Install: Another component is already using folder: %s"
JLIB_INSTALLER_ERROR_COMP_INSTALL_DIR_SITE="Component Install: Another component is already using folder: %s"
JLIB_INSTALLER_ERROR_COMP_INSTALL_FAILED_TO_CREATE_DIRECTORY_ADMIN="Component Install: Failed to create administrator folder: %s"
@@ -614,7 +614,7 @@ JLIB_INSTALLER_UPDATE_LOG_QUERY="Ran query from file %1$s. Query text: %2$s."
JLIB_MAIL_FUNCTION_DISABLED="The mail() function has been disabled and the mail can't be sent."
JLIB_MAIL_FUNCTION_OFFLINE="The mail function has been temporarily disabled on this site, please try again later."
-JLIB_MAIL_INVALID_EMAIL_SENDER="JMail: : Invalid email Sender: %s, JMail: :setSender(%s)"
+JLIB_MAIL_INVALID_EMAIL_SENDER="JMail: : Invalid email Sender: %s, JMail: :setSender(%s)."
JLIB_MEDIA_ERROR_UPLOAD_INPUT="Unable to upload file."
JLIB_MEDIA_ERROR_WARNFILENAME="File name must only contain alphanumeric characters and no spaces."
diff --git a/administrator/language/en-GB/en-GB.plg_authentication_ldap.ini b/administrator/language/en-GB/en-GB.plg_authentication_ldap.ini
index dc35f9a9e30a5..86c33ba1fee56 100644
--- a/administrator/language/en-GB/en-GB.plg_authentication_ldap.ini
+++ b/administrator/language/en-GB/en-GB.plg_authentication_ldap.ini
@@ -24,7 +24,7 @@ PLG_LDAP_FIELD_REFERRALS_DESC="This option sets the value of the LDAP_OPT_REFERR
PLG_LDAP_FIELD_REFERRALS_LABEL="Follow Referrals"
PLG_LDAP_FIELD_SEARCHSTRING_DESC="A query string used to search for a given User. The [search] keyword is dynamically replaced by the User-provided login. An example string is: uid=[search]. Several strings can be used separated by semicolons. Only used when searching."
PLG_LDAP_FIELD_SEARCHSTRING_LABEL="Search String"
-PLG_LDAP_FIELD_UID_DESC="LDAP Attribute which contains the User's Login ID. For Active Folder this is sAMAccountName."
+PLG_LDAP_FIELD_UID_DESC="LDAP Attribute which contains the User's Login ID. For Active Directory this is sAMAccountName."
PLG_LDAP_FIELD_UID_LABEL="Map: User ID"
PLG_LDAP_FIELD_USERNAME_DESC="The Connect Username and Connect Password define connection parameters for the DN lookup phase. Two options are available:- Anonymous DN lookup (leave both fields blank); Administrative connection: Connect Username is the username of an administrative account, for example Administrator. Connect password is the actual password of your administrative account."
PLG_LDAP_FIELD_USERNAME_LABEL="Connect Username"
diff --git a/administrator/manifests/files/joomla.xml b/administrator/manifests/files/joomla.xml
index 22debd2a3d515..c706d84cd2d44 100644
--- a/administrator/manifests/files/joomla.xml
+++ b/administrator/manifests/files/joomla.xml
@@ -6,8 +6,8 @@
www.joomla.org(C) 2005 - 2015 Open Source Matters. All rights reservedGNU General Public License version 2 or later; see LICENSE.txt
- 3.4.4-dev
- June 2015
+ 3.4.5-dev
+ September 2015FILES_JOOMLA_XML_DESCRIPTIONadministrator/components/com_admin/script.php
diff --git a/components/com_content/views/form/tmpl/edit.php b/components/com_content/views/form/tmpl/edit.php
index 8a8f7871674b1..d83bdef7df074 100644
--- a/components/com_content/views/form/tmpl/edit.php
+++ b/components/com_content/views/form/tmpl/edit.php
@@ -21,6 +21,7 @@
// This checks if the editor config options have ever been saved. If they haven't they will fall back to the original settings.
$editoroptions = isset($params->show_publishing_options);
+
if (!$editoroptions)
{
$params->show_urls_images_frontend = '0';
@@ -70,6 +71,9 @@
get('show_urls_images_frontend') ) : ?>
+ form->getFieldsets('params') as $name => $fieldSet) : ?>
+
form->renderField('catid'); ?>
form->renderField('tags'); ?>
diff --git a/components/com_finder/views/search/tmpl/default_results.php b/components/com_finder/views/search/tmpl/default_results.php
index 549f6f2ea185f..26b425cf1fecb 100644
--- a/components/com_finder/views/search/tmpl/default_results.php
+++ b/components/com_finder/views/search/tmpl/default_results.php
@@ -72,7 +72,7 @@
// Prepare the pagination string. Results X - Y of Z
$start = (int) $this->pagination->get('limitstart') + 1;
$total = (int) $this->pagination->get('total');
- $limit = (int) $this->pagination->get('limit') * $this->pagination->pagesTotal;
+ $limit = (int) $this->pagination->get('limit') * $this->pagination->get('pages.current');
$limit = (int) ($limit > $total ? $total : $limit);
echo JText::sprintf('COM_FINDER_SEARCH_RESULTS_OF', $start, $limit, $total);
diff --git a/components/com_users/controllers/user.php b/components/com_users/controllers/user.php
index 97efa15de1164..df04d9686374e 100644
--- a/components/com_users/controllers/user.php
+++ b/components/com_users/controllers/user.php
@@ -146,7 +146,17 @@ public function register()
// Get the model and validate the data.
$model = $this->getModel('Registration', 'UsersModel');
- $return = $model->validate($data);
+
+ $form = $model->getForm();
+
+ if (!$form)
+ {
+ JError::raiseError(500, $model->getError());
+
+ return false;
+ }
+
+ $return = $model->validate($form, $data);
// Check for errors.
if ($return === false)
diff --git a/installation/language/af-ZA/af-ZA.ini b/installation/language/af-ZA/af-ZA.ini
index e01c72d91437e..1f0c692627d7b 100644
--- a/installation/language/af-ZA/af-ZA.ini
+++ b/installation/language/af-ZA/af-ZA.ini
@@ -1,10 +1,16 @@
; Joomla! Project
; Copyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
-; License http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL, see LICENSE.php
+; License GNU General Public License version 2 or later; see LICENSE.txt
; Note : All ini files need to be saved as UTF-8
-
;Stepbar
+INSTL_STEP_COMPLETE_LABEL="Voltooi"
+INSTL_STEP_DATABASE_LABEL="Databasis"
+INSTL_STEP_FTP_LABEL="FTP"
+INSTL_STEP_SITE_LABEL="Konfigurasie"
+INSTL_STEP_SUMMARY_LABEL="Oorsig"
+INSTL_STEP_DEFAULTLANGUAGE_LABEL="Kies die verstek taal"
+INSTL_STEP_LANGUAGES_LABEL="Installeer Tale"
;Language view
INSTL_SITE_NAME_LABEL="Webwerf Naam"
@@ -18,9 +24,10 @@ INSTL_PRECHECK_RECOMMENDED_SETTINGS_TITLE="Aanbevole instellings:"
INSTL_PRECHECK_DIRECTIVE="Riglyn"
INSTL_PRECHECK_RECOMMENDED="Aanbeveel"
INSTL_PRECHECK_RECOMMENDED_SETTINGS_DESC="Hierdie instellings is vir PHP aanbeveel om volle versoenbaarheid met Joomla! te verseker. Joomla! sal nietemin nog steeds werk indien jou instellings nie heeltemal aan hierdie aanbeveelings voldoen nie."
-INSTL_PRECHECK_DESC="Indien enige van hierdie items nie ondersteun is nie (aangedui met Nee), dan voldoen jou stelsel nie aan die minimum vereistes nie. Maak asb. die foute reg, anders sal jou Joomla!-installasie nie behoorlik werk nie."
+INSTL_PRECHECK_DESC="Indien enige van hierdie items nie ondersteun is nie (aangedui met Nee), dan voldoen jou stelsel nie aan die minimum vereistes nie. Maak asb. die foute reg, anders sal jou Joomla!-installasie nie behoorlik werk nie."
; Database view
+INSTL_DATABASE="Databasis Konfigurasie"
INSTL_DATABASE_EMPTY_NAME=""
INSTL_DATABASE_NAME_LABEL="Databasis Naam"
INSTL_DATABASE_PASSWORD_LABEL="Wagwoord"
@@ -37,7 +44,6 @@ INSTL_DATABASE_INVALID_TYPE="Kies asseblief die databasis tipe"
INSTL_DATABASE_NAME_INVALID_CHAR="'n MySQL term mag nie 'n NUL ASCII(0x00) bevat nie."
INSTL_DATABASE_FIX_TOO_LONG="Die MySQL tabel voorvoegsel mag slegs 'n maksimum of 15 karakters hê."
INSTL_DATABASE_HOST_DESC="Hierdie is gewoonlik "localhost""
-INSTL_DATABASE="Databasis Konfigurasie"
INSTL_DATABASE_COULD_NOT_CONNECT="Kon nie met die databasis verbind nie. Die verbinding gee fout nommer %s terug"
INSTL_DATABASE_ERROR_BACKINGUP="Daar was 'n paar foute toe die databasis gerugsteun is."
INSTL_DATABASE_ERROR_DELETE="Daar was 'n paar foute toe die databasis geskrap is."
@@ -45,29 +51,19 @@ INSTL_DATABASE_INVALID_DB_DETAILS="Die databasis gegewens is òf foutief òf lee
INSTL_DATABASE_INVALID_MYSQL_VERSION="Jy benodig MySQL 5.0.4 of hoër om met die installeering verder te kan gaan. Jou versie is: %s"
INSTL_DATABASE_INVALID_NAME="Die versies van MySQL voor 5.1.6 bevat punte of ander spesiale karakters in die naam. Jou versie is: %s"
INSTL_DATABASE_ERROR_CREATE="Daar was 'n fout tydens die skep van die databasis %s. Die gebruiker het moontliks nie die nodige toegangsregte om 'n databasis te kan skep. Die databasis moet dalk apart geskep word voordat jy Joomla! kan installeer."
-INSTL_DATABASE_USER_DESC="Gewoonlik iets soos "root" of 'n gebruikernaam wat jou bediener-administrateur aan jou gegee het"
+INSTL_DATABASE_USER_DESC="Gewoonlik is dit iets soos "root" of 'n gebruikernaam wat jou bediener-administrateur aan jou gegee het, spesifiek vir die databasis."
INSTL_DATABASE_NAME_DESC="Party bedieners laat net 'n beperkte aantal databasisse op 'n rekening toe. As dit die geval is, gebruik die Tabel-Voorvoegsel opsie in die Gevorderde Parameters afdeling sodat jy meer as een Joomla! webwerf op jou bediener kan huisves."
INSTL_DATABASE_NAME_INVALID_SPACES="MySQL databasis name en tabelname mag nie met spasies begin of eindig nie."
INSTL_DATABASE_NAME_TOO_LONG="Die MySQL databasis naam mag 'n maksimum van 64 karakters hê."
INSTL_DATABASE_OLD_PROCESS_DESC="Enige bestaande, gerugsteunde tabelle van vorige Joomla! installasies sal oorskryf word"
-INSTL_DATABASE_PASSWORD_DESC="Ter wille van jou werf se sekuriteit is 'n wagwoord vir die MySQL-rekening vereis."
-INSTL_DATABASE_PREFIX_DESC="Kies 'n databasis voorvoegsel of gebruik die willekeurig-gegenereerde voorvoegsel. Die ideale voorvoegsel is drie of vier karakters lank, bevat slegs alfanumeriese karakters, en MOET met 'n onderstrepie eindig. Maak seker dat die gekose voervoegel nie reeds deur ander tabelle gebruik is nie."
+INSTL_DATABASE_PASSWORD_DESC="Vir jou werf se sekuriteit is 'n wagwoord vir die MySQL-rekening vereis."
+INSTL_DATABASE_PREFIX_DESC="Kies 'n databasis voorvoegsel of gebruik die willekeurig-genereerde voorvoegsel. Die ideale voorvoegsel is drie of vier karakters lank, bevat slegs alfanumeriese karakters, en MOET met 'n onderstrepie eindig. Maak asb. seker dat die gekose voervoegel nie reeds deur ander tabelle in die databasis gebruik is nie."
INSTL_DATABASE_COULD_NOT_REFRESH_MANIFEST_CACHE="Kon nie die manifes-kas vervars nie vir ektensie: %s"
INSTL_DATABASE_PREFIX_MSG="Die tabel-voorvoegsel moet met 'n letter begin, en moet dan deur 'n optionele alfanumeriese karakter en 'n onderstrepie gevolg word"
INSTL_DATABASE_SUPPORT="Databasis Ondersteuning:"
-;Filesystem view
-INSTL_FTP_DESC="
Vir party bedieners moet jy 'n FTP gebruikernaam en wagwoord aangee om die installeering te voltooi. Indien dit 'n probleem is, vra jou bediener administrateur of dit enigsins nodig is.
Vir sekuriteitsredes is dit die beste om 'n aparte FTP gebruiker-rekening te skep wat slegs toegang tot die Joomla! installeer-lêergids het. Jou bediener-administrateur sal jou hiermee kan help.
Let op: Indien jy op 'n Windows bedryfstelsel installeer, dan is die FTP koppelvlak nie nodig nie.
"
-INSTL_FTP_NODIRECTORYLISTING="Kon nie die gidslys van die FTP bediener kry nie."
-INSTL_FTP_NOROOT="Kon nie toegang tot die gegewe FTP lêergids kry nie."
-INSTL_FTP_PASSWORD_DESC="Waarskuwing! Dit word aanbeveel om hierdie blanko te laat en jou FTP wagwoord elke keer in te tik wanneer jy lêërs oordra."
-INSTL_FTP_USER_DESC="Waarskuwing! Dit word aanbeveel om hierdie blanko te laat en jou FTP gebruikernaam elke keer in te tik wanneer jy lêërs oordra."
-INSTL_FTP_INVALIDROOT="Die FTP lêergids wat jy aangegee het is nie die wortelgids van hierdie Joomla! installasie nie."
-INSTL_FTP_NOLOGIN="Kon nie by die FTP-bediener inteken nie."
-INSTL_FTP_NOCONNECT="Kon nie 'n verbinding met die FTP-bediener maak nie"
-INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Kon nie die FTP wortelgids bepaal nie."
-
+;FTP view
INSTL_AUTOFIND_FTP_PATH="Outo-vind FTP Gidspad"
INSTL_FTP_PORT_LABEL="FTP Poort"
INSTL_FTP_HOST_LABEL="FTP Bediener"
@@ -79,6 +75,18 @@ INSTL_FTP_ENABLE_LABEL="Ontsper FTP Koppelvlak"
INSTL_FTP_SAVE_LABEL="Stoor FTP Wagwoord"
INSTL_FTP_SETTINGS_CORRECT="Instellings korrek"
+
+;Filesystem view
+INSTL_FTP_DESC="
Vir party bedieners moet jy 'n FTP gebruikernaam en wagwoord aangee om die installeering te voltooi. Indien dit 'n probleem is, vra jou bediener administrateur of dit enigsins nodig is.
Vir sekuriteitsredes is dit die beste om 'n aparte FTP gebruiker-rekening te skep wat slegs toegang tot die Joomla! installeer-lêergids het. Jou bediener-administrateur sal jou hiermee kan help.
Let op: Indien jy op 'n Windows bedryfstelsel installeer, dan is die FTP koppelvlak nie nodig nie.
"
+INSTL_FTP_NODIRECTORYLISTING="Kon nie die gidslys van die FTP bediener kry nie."
+INSTL_FTP_NOROOT="Kon nie toegang tot die gegewe FTP lêergids kry nie."
+INSTL_FTP_PASSWORD_DESC="Waarskuwing! Dit word aanbeveel om hierdie blanko te laat en jou FTP wagwoord elke keer in te tik wanneer jy lêërs oordra."
+INSTL_FTP_USER_DESC="Waarskuwing! Dit word aanbeveel om hierdie blanko te laat en jou FTP gebruikernaam elke keer in te tik wanneer jy lêërs oordra."
+INSTL_FTP_INVALIDROOT="Die FTP lêergids wat jy aangegee het is nie die wortelgids van hierdie Joomla! installasie nie."
+INSTL_FTP_NOLOGIN="Kon nie by die FTP-bediener inteken nie."
+INSTL_FTP_NOCONNECT="Kon nie 'n verbinding met die FTP-bediener maak nie"
+INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Kon nie die FTP wortelgids bepaal nie."
+
INSTL_FTP_NODELE="Die FTP kommando "DELE" het gefaal."
INSTL_FTP_NOLIST="Die FTP kommando "LIST" het gefaal."
INSTL_FTP_NOMKD="Die FTP kommando "MKD" het gefaal."
@@ -91,8 +99,8 @@ INSTL_FTP_NOSYST="Die FTP kommando "SYST" het gefaal."
;Site View
INSTL_ADMIN_EMAIL_LABEL="Jou E-posadres"
-INSTL_ADMIN_PASSWORD2_LABEL="Bevestig Admin Wagwoord"
-INSTL_ADMIN_PASSWORD_LABEL="Admin Wagwoord"
+INSTL_ADMIN_PASSWORD2_LABEL="Bevestig Administrateur Wagwoord"
+INSTL_ADMIN_PASSWORD_LABEL="Administrateur Wagwoord"
INSTL_DISPLAY_ERRORS="Vertoon Foute"
INSTL_WRITABLE="Skryfbaar"
INSTL_SAFE_MODE="Veilige Modus"
@@ -109,13 +117,12 @@ INSTL_SITE_INSTALL_SAMPLE_LABEL="Installeer Voorbeeld-Data"
INSTL_SITE_OFFLINE_LABEL="Werf is Geaflyn"
INSTL_SITE_OFFLINE_TITLE_LABEL="Stel die werf voorkant van lyn af wanneer die installeering voltooi is. Die werf kan later weer aan lyn gestel word deur middel van die Globale Konfigurasie."
-
INSTL_MB_LANGUAGE_IS_DEFAULT="MB Taal is Verstek"
INSTL_VERIFY_FTP_SETTINGS="Verifiëer FTP Instellings"
INSTL_PARSE_INI_FILE_AVAILABLE="INI Parseerder Ondersteuning"
-INSTL_SAMPLE_DATA_SET="Verstek English (GB) Voorbeeld-Data"
+INSTL_SAMPLE_DATA_SET="Verstek Engelse (GB) Voorbeeld-Data"
INSTL_ZLIB_COMPRESSION_SUPPORT="Zlib Kompressie Ondersteuning"
-INSTL_ADMIN_USER_LABEL="Admin Gebruikernaam"
+INSTL_ADMIN_USER_LABEL="Administrateur Gebruikernaam"
INSTL_HEADER_ERROR="Fout"
INSTL_GNU_GPL_LICENSE="GNU Algemene Publieke Lisensie"
INSTL_PHP_VERSION="PHP Versie"
@@ -130,26 +137,22 @@ INSTL_MAGIC_QUOTES_RUNTIME="Ontsnap Aanhalingstekens (Magic Quotes)"
INSTL_ERROR_CONNECT_DB="Kon nie met die databasis verbind nie. Verbinding gee fout nommer %s terug"
INSTL_ERROR_DB="Daar was 'n paar foute toe die databasis gelaai word: %s"
INSTL_STD_OFFLINE_MSG="Die werf is van lyn af vir onderhoud. Kom kuier asseblief binnekort weer."
-INSTL_SITE_INSTALL_SAMPLE_DESC="Dit word aan beginners sterkstens aangeraai om hierdie opsie te installeer. Dit sal verstek voorbeeld-data uit hierdie Joomla! installasie paket installeer."
-INSTL_NOTICEYOUCANSTILLINSTALL=" Jy kan nog steeds met jou installasie voortgaan omdat die konfigurasie op die einde weer vertoon sal word. Dan kan jy die inhoud daarvan in 'n nuwe PHP lêer knip-en-plak en dié na die webwerf se wortelgids oplaai."
+INSTL_SITE_INSTALL_SAMPLE_DESC="Dit word aan beginners sterkstens aangeraai om een van hierdie opsies te kies sodat voorbeeld-data geïnstalleer kan word."
+INSTL_NOTICEYOUCANSTILLINSTALL=" Jy kan nog steeds met jou installasie voortgaan omdat die konfigurasie op die einde weer vertoon sal word. Dan kan jy die inhoud daarvan per hand in 'n nuwe PHP lêer knip-en-plak en dié na die webwerf se wortelgids oplaai."
INSTL_SITE_NAME_DESC="Tik die naam van jou Joomla! webwerf hier in."
INSTL_SITE_METADESC_TITLE_LABEL="Tik 'n beskrywing in vir die algemene webwerf, vir gebruik deur soek enjins. Oor die algemeen is 20 woorde optimaal."
INSTL_MAGIC_QUOTES_GPC="Magic Quotes GPC"
INSTL_ZIP_SUPPORT_AVAILABLE="Oorspronklike ZIP ondersteuning"
-
;Complete view
-INSTL_COMPLETE_LANGUAGE_1="Joomla! in jou eie taal en/of outomatiese veeltalige webwerf"
+INSTL_COMPLETE_LANGUAGE_1="Joomla! in Afrikaans of 'n outomatiese veeltalige webwerf"
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Administrasie Aanteken Gegewens"
-INSTL_COMPLETE_REMOVE_INSTALLATION="ONTHOU ASB. OM DIE INSTALLASIE (nl. installation) LÊERGIDS HEELTEMAL TE VERWYDER Dit is nie moontlik om by hierdie punt verby te gaan voordat jy dit gedoen het nie. Dit is 'n sekuriteits-funksie van Joomla!"
-INSTL_COMPLETE_REMOVE_FOLDER="Verwyder installeerings-vouer"
-INSTL_COMPLETE_FOLDER_REMOVED="Installeerings-vouer suksesvol verwyder"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Die installeerings-vouer is reeds verwyder."
+INSTL_COMPLETE_REMOVE_INSTALLATION="ONTHOU ASB. OM DIE installation-LÊERGIDS HEELTEMAL TE VERWYDER Dit is nie moontlik om by hierdie punt verby te gaan voordat jy dit gedoen het nie. Dit is 'n sekuriteits-vereising van Joomla!"
+INSTL_COMPLETE_REMOVE_FOLDER="Verwyder die installation-lëergids"
+INSTL_COMPLETE_FOLDER_REMOVED="Die installation-lêergids is suksesvol verwyder"
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Die installation-lëergids is reeds verwyder."
INSTL_COMPLETE_TITLE="Veels Geluk! Joomla! is nou geïnstalleer."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Installeerings-vouer kon nie verwyder word nie. Skrap die vouer asseblief per hand."
-
-;others
-
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="Die installation-vouer kon nie verwyder word nie. Skrap die vouer asseblief per hand."
;Global strings
JGLOBAL_LANGUAGE_VERSION_NOT_PLATFORM="Hierdie Taalpaket stem nie met die weergawe van Joomla ooreen nie. Daar sal moontliks stringe wees wat ontbreek."
@@ -173,13 +176,6 @@ JNONE="Geen"
JEMAIL="E-Pos"
JLIB_DATABASE_ERROR_DATABASE="Daar was 'n Databasis fout."
JNOTICE="Nota"
-MYSQL="MySQL"
-MYSQLI="MySQLi"
-ORACLE="Oracle"
-POSTGRESQL="PostgreSQL"
-SQLAZURE="Microsoft SQL Azure"
-SQLITE="SQLite"
-SQLSRV="Microsoft SQL Server"
JLIB_FILESYSTEM_ERROR_PATH_IS_NOT_A_FOLDER_FILES="JFolder: :files: Gidspad is nie 'n vouer nie. Gidspad: %s"
JLIB_FORM_FIELD_INVALID="Ongeldige veld: "
JDEBUG_LANGUAGE_FILES_IN_ERROR="Parseerings-foute in taal lêërs"
@@ -193,19 +189,10 @@ JLIB_FORM_VALIDATE_FIELD_REQUIRED="Veld vereis: %s"
JLIB_FORM_VALIDATE_FIELD_INVALID="Ongeldige veld: %s"
JLIB_UTIL_ERROR_CONNECT_DATABASE="JDatabase: :getInstance: Kon nie met databasis verbind nie joomla.library: %1$s - %2$s"
-;Necessary for errors
-ADMIN_EMAIL="Admin e-posadres"
-ADMIN_PASSWORD="Admin Wagwoord"
-ADMIN_PASSWORD2="Bevestig Admin Wagwoord"
-SITE_NAME="Werf Naam"
-
-; 2.5.2
INSTL_DATABASE_NO_SCHEMA="Daar bestaan nie 'n databasis skema vir hierdie databasis-tipe nie."
-; 2.5.4
-INSTL_SAMPLE_BLOG_SET="Blog Engelse (GB) Voorbeeld Data"
-INSTL_SAMPLE_BROCHURE_SET="Brosjure Engelse (GB) Voorbeeld Data"
+INSTL_SAMPLE_BLOG_SET="Blog: Engelse (GB) Voorbeeld Data"
+INSTL_SAMPLE_BROCHURE_SET="Brosjure: Engelse (GB) Voorbeeld Data"
INSTL_PROCESS_BUSY="Proses is besig. Wag asseblief..."
-; 2.5.5
INSTL_DATABASE_INVALID_MYSQLI_VERSION="Jy benodig MySQL 5.0.4 of hoër om met die installeering verder te kan gaan. Jou versie is: %s"
INSTL_DATABASE_INVALID_SQLSRV_VERSION="Jy benodig SQL Server 2008 R2 (10.50.1600.1) of hoër om met die installeering verder te kan gaan. Jou versie is: %s"
INSTL_DATABASE_INVALID_SQLZURE_VERSION="Jy benodig SQL Server 2008 R2 (10.50.1600.1) of hoër om met die installeering verder te kan gaan. Jou versie is: %s"
@@ -216,29 +203,24 @@ INSTL_EMAIL_HEADING="Hieronder kan jy die konfigurasie-instellings vir 'n nuwe J
INSTL_EMAIL_NOT_SENT="E-pos kon nie getuur word nie."
INSTL_EMAIL_SUBJECT="Konfigurasie Besonderhede: %s"
INSTL_FINALISATION="Finaliseering"
-INSTL_INSTALLING="Besig om te installeer..."
-INSTL_INSTALLING_CONFIG="Skep konfigurasie lêer"
-INSTL_INSTALLING_DATABASE="Skep databasis tabelle"
+INSTL_INSTALLING="Besig om te installeer ..."
+INSTL_INSTALLING_CONFIG="Skep konfigurasie-lêer"
+INSTL_INSTALLING_DATABASE="Skep nuwe databasis tabelle"
INSTL_INSTALLING_DATABASE_BACKUP="Rugsteun ou databasis tabelle"
INSTL_INSTALLING_DATABASE_REMOVE="Verwyder ou databasis tabelle"
INSTL_INSTALLING_EMAIL="Stuur e-pos aan %s"
INSTL_INSTALLING_SAMPLE="Laai voorbeeld-data"
-INSTL_SAMPLE_LEARN_SET="Leer omtrent die Joomla Engelse (GB) Voorbeeld Data"
+INSTL_SAMPLE_LEARN_SET="Leer omtrent Joomla: Engelse (GB) Voorbeeld Data"
INSTL_SAMPLE_TESTING_SET="Toets Engelse (GB) Voorbeeld Data"
INSTL_SITE_INSTALL_SAMPLE_NONE="Geen (Is nodig vir 'n basiese veeltalige webwerf)"
-INSTL_STEP_COMPLETE_LABEL="Voltooi"
-INSTL_STEP_DATABASE_LABEL="Databasis"
-INSTL_STEP_FTP_LABEL="FTP"
-INSTL_STEP_SITE_LABEL="Konfigurasie"
-INSTL_STEP_SUMMARY_LABEL="Oorsig"
INSTL_SUMMARY_EMAIL_DESC="Kies om konfigurasie instellings hieronder aan %s per e-pos te stuur na installeering."
INSTL_SUMMARY_EMAIL_LABEL="E-Pos Konfigurasie"
-INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Waarskuwing! Dit word aanbeveel om nie wagwoorde in e-pos te stuur nie."
+INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Waarskuwing! Dit word aanbeveel om nie wagwoorde per e-pos te stuur nie."
INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Sluit Wagwoorde in e-pos in"
INSTL_SUMMARY_INSTALL="Installeer"
-INSTL_COMPLETE_INSTALL_LANGUAGES="Ekstra Stappe: Installeer tale"
-INSTL_COMPLETE_LANGUAGE_DESC="Voordat jy die installleer vouer verwyder, het jy nog die moontlikheid on verdere tale te installeer. Kliek die volgende knoppie as jy dit wil doen."
-INSTL_COMPLETE_LANGUAGE_DESC2="Let op: Jy het 'n Internet verbinding nodig sodat Joomla nuwe tale kan aflaai en installeer. Sekere bediener-konfigurasies laat nie Joomla toe om tale te installeer nie. In daardie geval is dit moontlik om verdere tale op 'n latere stadium as Administrateur te installeer."
+INSTL_COMPLETE_INSTALL_LANGUAGES="Ekstra Stappe: Installeer verdere tale"
+INSTL_COMPLETE_LANGUAGE_DESC="Voordat jy die installation-vouer verwyder, het jy nog die moontlikheid om verdere tale te installeer. Kliek die knoppie hieronder as jy dit wil doen."
+INSTL_COMPLETE_LANGUAGE_DESC2="Let op: Jy het 'n Internet verbinding nodig sodat Joomla nuwe tale kan aflaai en installeer. Sekere bediener-konfigurasies laat nie Joomla toe om tale te installeer nie. In daardie geval is dit moontlik om verdere tale op 'n latere stadium deur die Joomla! Administrateur koppelvlak te installeer."
INSTL_DEFAULTLANGUAGE_ADMIN_COULDNT_SET_DEFAULT="Joomla kon nie hierdie as verstek taal stel nie. Engels sal as die verstek taal vir die agterkant Administrateur koppelvlak gebruik word."
INSTL_DEFAULTLANGUAGE_ADMINISTRATOR="Verstek Administrateur taal"
INSTL_DEFAULTLANGUAGE_ADMIN_SET_DEFAULT="Joomla het %s as jou verstek ADMINISTRATEUR taal gestel."
@@ -253,24 +235,25 @@ INSTL_DEFAULTLANGUAGE_FRONTEND_COULDNT_SET_DEFAULT="Joomla kon nie hierdie as ve
INSTL_DEFAULTLANGUAGE_FRONTEND_SET_DEFAULT="Joomla het %s as jou verstek WEBWERF taal gestel."
INSTL_DEFAULTLANGUAGE_TRY_LATER="Jy sal dit later kan installeer d.m.v. die Joomla Administrateur-koppelvlak."
INSTL_ERROR_INITIALISE_SCHEMA="Kan nie die databasis-skema instantiëer nie"
+
+;Languages view
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_LANGUAGES="Taal Pakette"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Taal"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Weergawe"
INSTL_LANGUAGES_DESC="Die Joomla-koppelvlak is beskikbaar in 'n verskeidenheid van tale. Kies jou gekose tale deur die merkboksies te kliek en installeer hulle dan deur op die Volgende-knoppie te kliek. Let op: Hierdie operasie sal omtrent 10 sekondes per taal duur. Moet dus nie meer as 3 tale op 'n slag installeer nie."
-INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Hierdie operasie sal tot 10 sekondes per taal duur om te voltooi. Wag asb terwyl ons die tale aflaai en installeer..."
+INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Hierdie operasie sal tot 10 sekondes lank per taal duur om te voltooi. Wag asb terwyl ons die tale aflaai en installeer..."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Kies 'n taal asb. As jy nie 'n verdere taal hoef te installeer nie, kliek die Vorige-knoppie."
-INSTL_LANGUAGES_WARNING_BACK_BUTTON="Gaan terug na vorige installateerings-stap"
-INSTL_LANGUAGES_WARNING_NO_INTERNET="Joomla kon nie met die taal-bediener vebind nie. Voltooi asb die installasie proses."
+INSTL_LANGUAGES_WARNING_BACK_BUTTON="Gaan terug na die vorige installateerings-stap"
+INSTL_LANGUAGES_WARNING_NO_INTERNET="Joomla kon nie met die taal-bediener vebind nie. Voltooi asb. die installasie proses per hand."
INSTL_LANGUAGES_WARNING_NO_INTERNET2="Let op: Jy kan tale op 'n latere stadium installeer deur die Joomla administrateur-koppelvlak."
-INSTL_STEP_DEFAULTLANGUAGE_LABEL="Kies verstek taal"
-INSTL_STEP_LANGUAGES_LABEL="Installeer Tale"
INSTL_SAMPLE_BLOG_SET_DESC="Installeer Joomla met 'n paar artikels en blog-verwandte modules soos bv. 'Older Posts', 'Blog Roll', 'Most Read Posts'."
INSTL_SAMPLE_BROCHURE_SET_DESC="Installeer Joomla met net 'n paar bladsye ('n menu met 'n bladsy vir Tuiste, Aangaande, Nuus, Kontak) en modules soos Soektog, Pasgemaakte HTML, Inlog Vorm."
INSTL_SAMPLE_DATA_SET_DESC="Installeer Joomla met net een bladsy ('n menu met net een webskakel) en modules soos Onlangse Artikel en Inlog Vorm."
INSTL_SAMPLE_LEARN_SET_DESC="Installeer Joomla met voorbeeld artikels wat verduidelik hoe Joomla werk."
INSTL_SAMPLE_TESTING_SET_DESC="Installeer Joomla met al die moontlike menu items om te help met die toets van Joomla."
INSTL_SITE_INSTALL_SAMPLE_NONE_DESC="Installeer Joomla met net een menu en 'n inlog vorm, sonder enige inhoud."
-INSTL_DEFAULTLANGUAGE_ACTIVATE_LANGUAGE_CODE_PLUGIN="Aktifeer die taal-kode inprop-program"
+INSTL_DEFAULTLANGUAGE_ACTIVATE_LANGUAGE_CODE_PLUGIN="Aktiveer die taal-kode inprop-program"
INSTL_DEFAULTLANGUAGE_ACTIVATE_LANGUAGE_CODE_PLUGIN_DESC="Indien aktief. sal die taal-kode inprop-program ontsper word wat dit dan moontlik maak om die taal-kode in die gegenereerde HTML-kode te kan verander om die SEO verder te optimiseer."
INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE="Aktifeer die veeltalige funksie"
INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE_DESC="Indien aktief, sal jou webwerf die veeltalige funksie hê en gelokaliseerde menus vir elke taal kan ondersteun."
@@ -278,7 +261,7 @@ INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_ARTICLE="Joomla kon nie outomaties die %s
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_CATEGORY="Joomla kon nie outomaties %s inhouds=kategorie genereer nie"
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_CONTENT_LANGUAGE="Joomla kon nie outomaties die %s inhouds-taal genereer nie"
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_MENU="Joomla kon nie outomaties die %s menu genereer nie"
-INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_MENU_ITEM="Joomla kon nie outomaties die %s tuis menu item genereer nie"
+INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_MENU_ITEM="Joomla kon nie outomaties die %s tuis menu-item genereer nie"
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_MENU_MODULE="Joomla kon nie outomaties die %s menu module genereer nie"
INSTL_DEFAULTLANGUAGE_COULD_NOT_ENABLE_MODULESWHITCHER_LANGUAGECODE="Joomla kon nie outomaties die %s taal skakelaar module genereer nie"
INSTL_DEFAULTLANGUAGE_COULD_NOT_ENABLE_PLG_LANGUAGECODE="Joomla kon nie outomaties die taal-kode inprop-programme ontsper nie"
@@ -286,11 +269,31 @@ INSTL_DEFAULTLANGUAGE_COULD_NOT_ENABLE_PLG_LANGUAGEFILTER="Joomla kon nie outoma
INSTL_DEFAULTLANGUAGE_COULD_NOT_PUBLISH_MOD_MULTILANGSTATUS="Joomla kon nie outomaties die taal-status module publiseer nie"
INSTL_DEFAULTLANGUAGE_COULD_NOT_UNPUBLISH_MOD_DEFAULTMENU="Joomla kon nie outomaties die verstek menu ontpubliseer nie"
INSTL_DEFAULTLANGUAGE_INSTALL_LOCALISED_CONTENT="Installeer gelokaliseerde inhoud"
-INSTL_DEFAULTLANGUAGE_INSTALL_LOCALISED_CONTENT_DESC="Indie aktief sal Joomla outomaties 'n inhouds-kategorie vir elke geinstalleerde taal skep. Joomla sal boonop 'n leë kollig-artikel in elke kategorie skep."
+INSTL_DEFAULTLANGUAGE_INSTALL_LOCALISED_CONTENT_DESC="Indien aktief sal Joomla outomaties 'n inhouds-kategorie vir elke geinstalleerde taal skep. Joomla sal boonop 'n leë kollig-artikel in elke kategorie skep."
INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_DESC="In hierdie seksie kan jy outomaties Joomla se veeltalge funksie ontsper"
INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_TITLE="Veeltalig"
INSTL_DEFAULTLANGUAGE_NATIVE_LANGUAGE_NAME="Afrikaans"
JLIB_FILESYSTEM_ERROR_COPY_FAILED="Kopieer het gefaal"
-JLIB_INSTALLER_ERROR_FAIL_COPY_FILE="JInstaller: :Install: Kon nie lêer kopieer nie %1 to %2."
+JLIB_INSTALLER_ERROR_FAIL_COPY_FILE="JInstaller: :Install: Kon nie die lêer van %1$s na %2$s kopieer nie."
INSTL_LANGUAGES_MORE_LANGUAGES="Druk die 'Vorige' knoppie as jy verdere tale wil installeer."
-JLIB_INSTALLER_NOT_ERROR="As die fout aan die installeer van TinyMCE taal lêërs verbonde is sal dit nie installeer van tale affekteer nie. Sekere taal pakette wat voor Joomla 3.2.0 geskep is probeer om aparte TinyMCE taal lêërs te installeer. Noudat hulle in die kern is, hoef hulle nie geinstalleer te word nie."
+JLIB_INSTALLER_NOT_ERROR="As die fout aan die installeering van TinyMCE se taal lêërs verbonde is, sal dit nie installeer van tale affekteer nie. Sekere taal pakette wat voor Joomla 3.2.0 geskep is probeer om aparte TinyMCE taal lêërs te installeer. Noudat hulle in die kern is, hoef hulle nie geinstalleer te word nie."
+INSTL_DATABASE_COULD_NOT_CREATE_DATABASE="Die installeerder kon nie met die aangegewe databasis verbind nie en kon ook nie die databasis skep nie. Verfiëer asb. jou instellings en indien nodig skep self die databasis per hand."
+INSTL_DATABASE_INVALID_PDOMYSQL_VERSION="Jy benodig MySQL 5.0.4 of hoër om met die installeering verder te gaan. Jou versie is: %s"
+INSTL_DATABASE_INVALID_POSTGRESQL_VERSION="Jy benodig PostgreSQL 8.3.18 of hoër om met die installeering verder te gaan. Jou versie is: %s"
+INSTL_PHP_VERSION_NEWER="PHP Versie >= %s"
+
+; Necessary for errors
+ADMIN_EMAIL="Administrateur e-posadres"
+ADMIN_PASSWORD="Administrateur Wagwoord"
+ADMIN_PASSWORD2="Bevestig Administrateur Wagwoord"
+SITE_NAME="Werf Naam"
+
+; Database types (allows for a more descriptive label than the internal name)
+PDOMYSQL="MySQL (PDO)"
+MYSQL="MySQL"
+MYSQLI="MySQLi"
+ORACLE="Oracle"
+POSTGRESQL="PostgreSQL"
+SQLAZURE="Microsoft SQL Azure"
+SQLITE="SQLite"
+SQLSRV="Microsoft SQL Server"
diff --git a/installation/language/af-ZA/af-ZA.xml b/installation/language/af-ZA/af-ZA.xml
index e228ef04a7018..82a2f7603d7a2 100644
--- a/installation/language/af-ZA/af-ZA.xml
+++ b/installation/language/af-ZA/af-ZA.xml
@@ -1,10 +1,10 @@
Afrikaans (Suid-Afrika)
- 3.2.0
- 09 FEB 2013
+ 3.4.4
+ August 2015Joomla4Africa ProjectCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
diff --git a/installation/language/ar-AA/ar-AA.ini b/installation/language/ar-AA/ar-AA.ini
index 56c096c9dd191..47feba35ddb51 100644
--- a/installation/language/ar-AA/ar-AA.ini
+++ b/installation/language/ar-AA/ar-AA.ini
@@ -71,8 +71,8 @@ INSTL_ADMIN_EMAIL_DESC="أدخل بريدك الالكتروني. سيكون ه
INSTL_ADMIN_PASSWORD_LABEL="كلمة مرور مدير الموقع"
INSTL_ADMIN_PASSWORD_DESC="أدخل كلمة المرور لحساب "المدير العام" وتأكيد ذلك في الحقل أدناه."
INSTL_ADMIN_PASSWORD2_LABEL="تأكيد كلمة مرور مدبر الموقع"
-INSTL_ADMIN_USER_LABEL="اسم مستخدم المدير"
-INSTL_ADMIN_USER_DESC="يمكنك تغيير اسم المدير العام الافتراضي admin."
+INSTL_ADMIN_USER_LABEL="اسم المدير العام"
+INSTL_ADMIN_USER_DESC="ادخل اسم المدير العام."
INSTL_SITE_NAME_LABEL="اسم الموقع"
INSTL_SITE_NAME_DESC="أدخل اسم الموقع الخاص بك المبني بجوملا!."
INSTL_SITE_METADESC_LABEL="البيانات الوصفية"
@@ -83,10 +83,10 @@ INSTL_SITE_INSTALL_SAMPLE_LABEL="تنصيب البيانات النموذجية"
INSTL_SITE_INSTALL_SAMPLE_DESC="تنصيب البيانات النموذجية ينصح به بشدة للمبتدئين. هذا سوف يقوم بتنصيب المحتويات النموذجية والذي تم تضمينه في حزمة تنصيب جوملا! (أي الأقسام والمجموعات والصفحات والقوائم والروابط والصور.. الخ)."
INSTL_SITE_INSTALL_SAMPLE_NONE="بدون"
INSTL_SITE_INSTALL_SAMPLE_NONE_DESC="تنصيب جوملا! مع وجود عنصر قائمة واحد و نموذج تسجيل الدخول فقط, بدون محتوى."
-INSTL_SAMPLE_DATA_SET="البيانات النموذجية باللغة العربية"
-INSTL_SAMPLE_BLOG_SET="البيانات النوذجية لمدونة باللغة العربية"
-INSTL_SAMPLE_BROCHURE_SET="البيانات النوذجية لنشرة باللغة العربية"
-INSTL_SAMPLE_LEARN_SET="البيانات النموذجية (GB) لتعلم جوملا! بالإنكليزية"
+INSTL_SAMPLE_DATA_SET="البيانات النموذجية باللغة بالإنكليزية (GB)"
+INSTL_SAMPLE_BLOG_SET="البيانات النوذجية لمدونة باللغة بالإنكليزية (GB)"
+INSTL_SAMPLE_BROCHURE_SET="البيانات النوذجية لنشرة باللغة بالإنكليزية (GB)"
+INSTL_SAMPLE_LEARN_SET="البيانات النموذجية لتعلم جوملا! باللغة الإنكليزية (GB)"
INSTL_SAMPLE_TESTING_SET="البيانات النموذجية لتفحص جوملا! باللغة الانجليزية (GB)"
INSTL_SAMPLE_BLOG_SET_DESC="تنصيب جوملا مع البعض من المقالات على شكل مدونة مرتبطة ببعضها عبر بعض الموديولات مثل موديول المقالات الأقدم, موديول لروابط المدونات المرتبطة, موديول أكثر المقالات قراءةً."
INSTL_SAMPLE_BROCHURE_SET_DESC="تنصيب جوملا! مع البعض من الصفحات (القائمة تحتوي على روابط للصفحات الرئيسية, من نحن, الأخبار, الاتصال بنا) و المديولات مثل البحث, موديول HTML مخصص, نموذج تسجيل الدخول."
diff --git a/installation/language/ar-AA/ar-AA.xml b/installation/language/ar-AA/ar-AA.xml
index c99715bcf6c74..7192a4b38d600 100644
--- a/installation/language/ar-AA/ar-AA.xml
+++ b/installation/language/ar-AA/ar-AA.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Arabic Unitag (العربية الموحدة)
- 3.4.2
- September 2012
+ 3.4.4
+ August 2015Joomla! Arabic Unitag Translation teamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/be-BY/be-BY.ini b/installation/language/be-BY/be-BY.ini
index 3cb2f90c2951e..2d3171d38550b 100644
--- a/installation/language/be-BY/be-BY.ini
+++ b/installation/language/be-BY/be-BY.ini
@@ -3,8 +3,6 @@
; License GNU General Public License version 2 or later; see LICENSE.txt
; Note : All ini files need to be saved as UTF-8
-
-
;Stepbar
INSTL_STEP_COMPLETE_LABEL="Завяршэнне ўсталёўкі"
INSTL_STEP_DATABASE_LABEL="Канфігурацыя БД"
@@ -103,7 +101,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Уключыць паролі ў e-ma
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Увага! Па меркаваннях бяспекі не рэкамендуецца адпраўляць / захоўваць паролі ў e-mail."
;Installing view
-INSTL_INSTALLING="Усталёўка..."
+INSTL_INSTALLING="Усталёўка ..."
INSTL_INSTALLING_DATABASE_BACKUP="Стварэнне рэзервовай копіі табліц базы дадзеных"
INSTL_INSTALLING_DATABASE_REMOVE="Выдаленне старых табліц базы дадзеных"
INSTL_INSTALLING_DATABASE="Стварэнне табліц базы дадзеных"
@@ -118,13 +116,19 @@ INSTL_EMAIL_NOT_SENT="Памылка адпраўкі e-mail."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Дадзеныя Уваходу Адміністратара"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Папка ўсталёўкі 'installation' ўжо выдалена."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_DELETE="Папка ўсталёўкі 'installation' не можа быць выдаленая. Калі ласка, самастойна выдаліце папку."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_FOLDER_REMOVED="Папка ўсталёўкі 'installation' паспяхова выдалена"
INSTL_COMPLETE_LANGUAGE_1="Joomla! на Вашай мове?"
-INSTL_COMPLETE_LANGUAGE_DESC="Перад выдаленнем папкі ўсталёўкі вы можаце ўсталяваць дадатковыя мовы. Калі вы хочаце дадаць дадатковыя мовы, для вашага Joomla! сайта націсніце наступную кнопку."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="Перад выдаленнем папкі 'installation' вы можаце ўсталяваць дадатковыя мовы. Калі вы хочаце дадаць дадатковыя мовы, для вашага Joomla! сайта націсніце наступную кнопку."
INSTL_COMPLETE_LANGUAGE_DESC2="Заўвага: вам будзе патрэбен доступ у Інтэрнэт, каб Joomla! магла спампаваць і ўсталяваць новыя мовы. Некаторыя канфігурацыі сервера не дазволяць Joomla! усталяваць мовы. Калі гэта ваш выпадак, не турбуйцеся, вы зможаце ўсталяваць іх пазней з дапамогай Панэлі Кіравання."
-INSTL_COMPLETE_REMOVE_FOLDER="Выдаліць папку ўсталёўкі"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_FOLDER="Выдаліць папку 'installation'"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_INSTALLATION="НЕ ЗАБУДЗЬЦЕСЯ ЦАЛКАМ ВЫДАЛІЦЬ КАТАЛОГ ЎСТАЛЁЎКІ «INSTALLATION». Вы не зможаце перайсці за гэты крок, пакуль каталог устаноўкі не будзе выдалены. Гэта функцыя бяспекі Joomla!."
INSTL_COMPLETE_TITLE="Віншуем! Joomla! усталяваная."
INSTL_COMPLETE_INSTALL_LANGUAGES="Дадатковыя дзеянні: Усталяваць мовы"
@@ -180,6 +184,7 @@ INSTL_DEFAULTLANGUAGE_NATIVE_LANGUAGE_NAME="Беларуская"
;Database Model
INSTL_DATABASE_COULD_NOT_CONNECT="Не ўдаецца падключыцца да базы дадзеных. Каннектар вярнуўся: %s"
+INSTL_DATABASE_COULD_NOT_CREATE_DATABASE="Усталёўшчык не можа падлучыцца да названай базы дадзеных і не можа стварыць базу дадзеных. Калі ласка, праверце налады і пры неабходнасці ўручную стварыце базу дадзеных."
INSTL_DATABASE_COULD_NOT_REFRESH_MANIFEST_CACHE="Не атрымалася абнавіць кэш маніфеста для пашырэння: %s"
INSTL_DATABASE_EMPTY_NAME=""
INSTL_DATABASE_ERROR_BACKINGUP="Некаторыя памылкі адбыліся пры стварэнні рэзервовай копіі базы дадзеных."
@@ -191,6 +196,8 @@ INSTL_DATABASE_FIX_TOO_LONG="Прэфікс табліц MySQL павінен м
INSTL_DATABASE_INVALID_DB_DETAILS="Звесткі базы дадзеных з'яўляюцца няправільнымі і/ці пустымі."
INSTL_DATABASE_INVALID_MYSQL_VERSION="Вам патрэбна MySQL 5.0.4 або вышэй, каб працягнуць устаноўку. Ваша версія: %s"
INSTL_DATABASE_INVALID_MYSQLI_VERSION="Вам патрэбна MySQL 5.0.4 або вышэй, каб працягнуць устаноўку. Ваша версія: %s"
+INSTL_DATABASE_INVALID_PDOMYSQL_VERSION="Вам патрэбна MySQL 5.0.4 або вышэй, каб працягнуць устаноўку. Ваша версія: %s"
+INSTL_DATABASE_INVALID_POSTGRESQL_VERSION="Вам патрэбна PostgreSQL 8.3.18 або вышэй, каб працягнуць устаноўку. Ваша версія: %s"
INSTL_DATABASE_INVALID_SQLSRV_VERSION="Вам патрэбна SQL Server 2008 R2 (10.50.1600.1) або вышэй, каб працягнуць устаноўку. Ваша версія: %s"
INSTL_DATABASE_INVALID_SQLZURE_VERSION="Вам патрэбна SQL Server 2008 R2 (10.50.1600.1) або вышэй, каб працягнуць устаноўку. Ваша версія: %s"
INSTL_DATABASE_INVALID_TYPE="Калі ласка, выберыце тып базы дадзеных"
@@ -247,6 +254,7 @@ INSTL_NOTICEYOUCANSTILLINSTALL=" Вы можаце працягваць у
INSTL_OUTPUT_BUFFERING="Output Buffering"
INSTL_PARSE_INI_FILE_AVAILABLE="Падтрымка INI Parser"
INSTL_PHP_VERSION="Версія PHP"
+INSTL_PHP_VERSION_NEWER="Версія PHP >= %s"
INSTL_REGISTER_GLOBALS="Register Globals"
INSTL_SAFE_MODE="Safe Mode"
INSTL_SESSION_AUTO_START="Session Auto Start"
@@ -306,6 +314,7 @@ SITE_NAME="Назва сайта"
MYSQL="MySQL"
MYSQLI="MySQLi"
ORACLE="Oracle"
+PDOMYSQL="MySQL (PDO)"
POSTGRESQL="PostgreSQL"
SQLAZURE="Microsoft SQL Azure"
SQLITE="SQLite"
diff --git a/installation/language/be-BY/be-BY.xml b/installation/language/be-BY/be-BY.xml
index df4e52a34d50f..db67049681e5f 100644
--- a/installation/language/be-BY/be-BY.xml
+++ b/installation/language/be-BY/be-BY.xml
@@ -1,10 +1,10 @@
Belarusian (Belarus)
- 3.2.0
- January 2013
+ 3.4.4
+ August 2015Dennis HermatskiCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/bg-BG/bg-BG.ini b/installation/language/bg-BG/bg-BG.ini
index 76de44deea6c3..97273780ddc36 100644
--- a/installation/language/bg-BG/bg-BG.ini
+++ b/installation/language/bg-BG/bg-BG.ini
@@ -68,7 +68,7 @@ INSTL_FTP_PASSWORD_DESC="ВНИМАНИЕ! Препоръчително е да
;Site View
INSTL_SITE="Основни настройки"
-INSTL_ADMIN_EMAIL_LABEL="Вашият е-мейл"
+INSTL_ADMIN_EMAIL_LABEL="Е-мейл на администратора"
INSTL_ADMIN_EMAIL_DESC="Въведете е-мейл адреса си. Ще бъде използван като е-мейл на супер администратора на сайта."
INSTL_ADMIN_PASSWORD_LABEL="Парола на администратора"
INSTL_ADMIN_PASSWORD_DESC="Въведете парола на супер администраторския профил и я повторете в полето отдолу."
@@ -113,14 +113,14 @@ INSTL_EMAIL_NOT_SENT="Е-мейлът не може да бъде изпрате
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Данни на администратора за вход"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Инсталационната папка вече е изтрита."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Инсталационната папка не може да бъде изтрита. Моля изтрийте ръчно тази папка."
-INSTL_COMPLETE_FOLDER_REMOVED="Инсталационната папка е изтрита успешно"
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Папка installation вече е изтрита."
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="Папка installation не може да бъде изтрита. Моля изтрийте ръчно тази папка."
+INSTL_COMPLETE_FOLDER_REMOVED="Папка installation е изтрита успешно"
INSTL_COMPLETE_LANGUAGE_1="Джумла! на Вашия език и/или автоматично създаване на мултиезичен сайт"
-INSTL_COMPLETE_LANGUAGE_DESC="Преди да премахнете инсталационната папка може да инсталирате допълнителни езици. Ако желаете да го направите натиснете бутона."
+INSTL_COMPLETE_LANGUAGE_DESC="Преди да премахнете папка installation може да инсталирате допълнителни езици. Ако желаете да го направите натиснете бутона."
INSTL_COMPLETE_LANGUAGE_DESC2="Внимание: ще е нужна връзка с интернет, за да свалите и инсталирате новите езици. Някои сървърни конфигурации не позволяват този тип инсталиране на файлове. Ако това е вашият случай, не се притеснявайте. Може да инсталирате допълнителни езици по всяко време използвайки инсталатора на Джумла!"
-INSTL_COMPLETE_REMOVE_FOLDER="Изтрийте инсталационната папка"
-INSTL_COMPLETE_REMOVE_INSTALLATION="МОЛЯ ИЗТРИЙТЕ ИЛИ ПРЕИМЕНУВАЙТЕ ИНСТАЛАЦИОННАТА ПАПКА. Няма да може да продължите напред, докато папката "_QQ_"installation"_QQ_" съществува. Това е от съображения за сигурност в Джумла!"
+INSTL_COMPLETE_REMOVE_FOLDER="Изтрийте папка installation"
+INSTL_COMPLETE_REMOVE_INSTALLATION="МОЛЯ ИЗТРИЙТЕ ИЛИ ПРЕИМЕНУВАЙТЕ ПАПКА installation. Няма да може да продължите напред, докато папката "_QQ_"installation"_QQ_" съществува. Това е от съображения за сигурност в Джумла!"
INSTL_COMPLETE_TITLE="Поздравления, Джумла! вече е инсталирана."
INSTL_COMPLETE_INSTALL_LANGUAGES="Допълнителни стъпки: Инсталиране на езици"
diff --git a/installation/language/bg-BG/bg-BG.xml b/installation/language/bg-BG/bg-BG.xml
index 054dd5df8d446..92a5b5d7076fb 100644
--- a/installation/language/bg-BG/bg-BG.xml
+++ b/installation/language/bg-BG/bg-BG.xml
@@ -1,10 +1,10 @@
Bulgarian (Български)
- 3.2.0
- August 2011
+ 3.4.4
+ August 2015Yuriy BoevCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/bs-BA/bs-BA.ini b/installation/language/bs-BA/bs-BA.ini
index 8a54dc1000894..31a0008b96527 100644
--- a/installation/language/bs-BA/bs-BA.ini
+++ b/installation/language/bs-BA/bs-BA.ini
@@ -72,7 +72,7 @@ INSTL_ADMIN_EMAIL_DESC="Unesite adresu el. pošte super administratora portala."
INSTL_ADMIN_PASSWORD_LABEL="Administratorska šifra"
INSTL_ADMIN_PASSWORD_DESC="Unesite šifru super administratora i potvrdite je u polju ispod."
INSTL_ADMIN_PASSWORD2_LABEL="Potvrda administratorske šifre"
-INSTL_ADMIN_USER_LABEL="Admin korisničko ime"
+INSTL_ADMIN_USER_LABEL="Korisničko ime administratora"
INSTL_ADMIN_USER_DESC="Podesite korisničko ime za Super administratora."
INSTL_SITE_NAME_DESC="Unesite ime vašeg Joomla! portala."
INSTL_SITE_METADESC_LABEL="Opis"
@@ -103,7 +103,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Pošalji i šifru u el. pošti"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Upozorenje! Nije preporučljivo da čuvate vaše šifre u el. pošti."
;Installing view
-INSTL_INSTALLING="Instalacija..."
+INSTL_INSTALLING="Instalacija ..."
INSTL_INSTALLING_DATABASE_BACKUP="Rezervna kopija starih tabela baze"
INSTL_INSTALLING_DATABASE_REMOVE="Obriši stare tabele baze"
INSTL_INSTALLING_DATABASE="Kreiranje tabela baze"
@@ -125,7 +125,7 @@ INSTL_COMPLETE_LANGUAGE_1="Joomla! na vašem jeziku?"
INSTL_COMPLETE_LANGUAGE_DESC="Prije nego što obrišete instalacioni direktorij možete instalirati dodatne jezike. Ako želite da dodate jezik za vaš portal kliknite na dugme."
INSTL_COMPLETE_LANGUAGE_DESC2="Napomena: da bi Joomla! preuzela i instalirala novi jezik, potreban vam je pristup internetu. Neke konfiguracije servera neće dozvoliti Joomla! instalaciju jezika. Ako je to i kod vas slučaj, ne brinite, kasnije možete instalirati jezik na standardni način iz administrskog dijela."
INSTL_COMPLETE_REMOVE_FOLDER="Izbrišite instalacijski direktorij"
-INSTL_COMPLETE_REMOVE_INSTALLATION="MOLIM DA NE ZABORAVITE OBRISATI INSTALACIJSKI DIREKTORIJ Nećete moći raditi dalje dok se ne ukloni instalacijski direktorij. Ovo je sigurnosna mogućnost Joomla!-e."
+INSTL_COMPLETE_REMOVE_INSTALLATION="MOLIM DA NE ZABORAVITE OBRISATI INSTALACIJSKI DIREKTORIJ Nećete moći raditi dalje dok se ne ukloni instalacijsku mapu. Ovo je sigurnosna mogućnost Joomla!-e."
INSTL_COMPLETE_TITLE="Čestitamo! Joomla! je instalirana!"
INSTL_COMPLETE_INSTALL_LANGUAGES="Dodatni koraci: Instaliranje jezika"
@@ -134,7 +134,7 @@ INSTL_LANGUAGES_MORE_LANGUAGES="Pritisnite 'Prethodno' tipku ako želite da inst
INSTL_LANGUAGES="Instalacija jezičkog paketa"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Jezik"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Verzija"
-INSTL_LANGUAGES_DESC="Joomla interfejs je dostupan na nekoliko jezika. Izaberite jezik i instalirajte ga jednim klikom na dugme Napomena: ova operacija traje oko 5 sekundi za preuzimanje i instaliranje svakog jezika. Nemojte izabrati više od 3 jezika za istovremenu instalaciju, da zbog previše duge instalacije ne bi došlo do prekida programa."
+INSTL_LANGUAGES_DESC="Joomla interfejs je dostupan na nekoliko jezika. Izaberite jezik i instalirajte ga klikom na 'Dalje'. Napomena: ova operacija traje oko 10 sekundi za preuzimanje i instaliranje svakog jezika. Nemojte izabrati više od 3 jezika za istovremenu instalaciju, da zbog previše duge instalacije ne bi došlo do prekida programa."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Ova operacija traje oko 10 sekundi po jeziku Molim sačekajte da Joomla preuzme i instalira jezik..."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Nijedan jezik nije odabran za instaliranje. Ako želite da instalirate više jezika kliknite na dugme 'Prethodno' i odaberite željeni jezik iz liste"
INSTL_LANGUAGES_WARNING_NO_INTERNET="Joomla! ne može da se prijavi na server sa jezicima. Završite instalacioni proces."
@@ -215,10 +215,10 @@ INSTL_ERROR_CONNECT_DB="Nije moguće povezati se na bazu. Povezivanje vraća gre
INSTL_STD_OFFLINE_MSG="Stranica je trenutno u izradi . Molim posjetite nas ponovo uskoro."
;FTP model
-INSTL_FTP_INVALIDROOT="Uneseni FTP direktorij nije direktorij Joomla! instalacije"
+INSTL_FTP_INVALIDROOT="Unesena FTP mapa nije mapa Joomla! instalacije"
INSTL_FTP_NOCONNECT="Nije moguće povezati se na FTP server"
INSTL_FTP_NODELE="Funkcija "_QQ_"DELE"_QQ_" nije uspjela."
-INSTL_FTP_NODIRECTORYLISTING="Nije moguće dobiti popis direktorija sa FTP servera"
+INSTL_FTP_NODIRECTORYLISTING="Nije moguće dobiti popis mapa sa FTP servera."
INSTL_FTP_NOLIST="Funkcija "_QQ_"LIST"_QQ_" nije uspjela."
INSTL_FTP_NOLOGIN="Nije moguća prijava na FTP server."
INSTL_FTP_NOMKD="Funkcija "_QQ_"MKD"_QQ_" nije uspjela."
@@ -226,14 +226,14 @@ INSTL_FTP_NONLST="Funkcija "_QQ_"NLST"_QQ_" nije uspjela."
INSTL_FTP_NOPWD="Funkcija "_QQ_"PWD"_QQ_" nije uspjela."
INSTL_FTP_NORETR="Funkcija "_QQ_"RETR"_QQ_" nije uspjela."
INSTL_FTP_NORMD="Funkcija "_QQ_"RMD"_QQ_" nije uspjela."
-INSTL_FTP_NOROOT="Nije moguće pristupiti traženom FTP direktoriju"
+INSTL_FTP_NOROOT="Nije moguće pristupiti traženoj FTP mapi"
INSTL_FTP_NOSTOR="Funkcija "_QQ_"STOR"_QQ_" nije uspjela."
INSTL_FTP_NOSYST="Funkcija "_QQ_"SYST"_QQ_" nije uspjela."
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Nije moguće automatsko prepoznavanje osnovnog FTP direktorija"
;others
INSTL_BASIC_SETTINGS="Osnovne postavke"
-INSTL_CONFPROBLEM="Vaša konfiguracijska datoteka ili direktorij nemaju prava za zapisivanje ili je došlo do problema prilikom izrade konfiguracijske datoteke. Morati ćete ručno učitati slijedeći kod. Kliknite na prostor za tekst za odabir cijelog teksta koda, zatim ga kopirajte i dodajte u novu datoteku imena 'configuration.php', te datoteku prenesite u osnovni direktorij vašeg portala."
+INSTL_CONFPROBLEM="Vaša konfiguracijska datoteka ili mapa nemaju prava za zapisivanje ili je došlo do problema prilikom izrade konfiguracijske datoteke. Morati ćete ručno učitati slijedeći kod. Kliknite u prostor za tekst za odabir cijelog teksta koda, zatim ga kopirajte i dodajte u novu datoteku imena 'configuration.php', te datoteku prenesite u osnovni direktorij vašeg portala."
INSTL_DATABASE_SUPPORT="Podrška baze:"
INSTL_DISPLAY_ERRORS="Prikaz grešaka"
INSTL_ERROR_DB="Postoje greške prilikom punjenja baze: %s"
diff --git a/installation/language/bs-BA/bs-BA.xml b/installation/language/bs-BA/bs-BA.xml
index 53f4f972237d1..abdd5d98c9f50 100644
--- a/installation/language/bs-BA/bs-BA.xml
+++ b/installation/language/bs-BA/bs-BA.xml
@@ -3,7 +3,7 @@
version="3.4"
client="installation">
Bosanski (BA)
- 3.4.0
+ 3.4.4September 2012Bosnian Translation TeamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
diff --git a/installation/language/ca-ES/ca-ES.ini b/installation/language/ca-ES/ca-ES.ini
index 7521188f7ae6a..ea307c0b5974d 100644
--- a/installation/language/ca-ES/ca-ES.ini
+++ b/installation/language/ca-ES/ca-ES.ini
@@ -3,8 +3,6 @@
; License GNU General Public License version 2 or later; see LICENSE.txt
; Note : All ini files need to be saved as UTF-8
-
-
;Stepbar
INSTL_STEP_COMPLETE_LABEL="Finalitzar"
INSTL_STEP_DATABASE_LABEL="Base de dades"
@@ -21,7 +19,7 @@ INSTL_WARNJSON="La teva instal·lació de PHP necessita tenir activat JSON per J
;Preinstall view
INSTL_PRECHECK_TITLE="Comprovació d'abans de la instal·lació"
-INSTL_PRECHECK_DESC="Si algun d'aquests elements no és compatible (marcat com No), has de prendre mesures per corregir-los. No es pot instal·lar Joomla! fins que la teva configuració compleixi amb els requisits demanats."
+INSTL_PRECHECK_DESC="Si algun d'aquests elements no és compatible (marcat com No), has de prendre mesures per corregir-los. No es pot instal·lar Joomla! fins que la teva configuració compleixi amb els requisits demanats."
INSTL_PRECHECK_RECOMMENDED_SETTINGS_TITLE="Configuracions recomanades:"
INSTL_PRECHECK_RECOMMENDED_SETTINGS_DESC="Aquesta configuració es recomana per PHP per tal de garantir la plena compatibilitat amb Joomla. Però Joomla! encara funcionarà si la configuració no s'ajusta exactament amb la configuració recomanada."
INSTL_PRECHECK_DIRECTIVE="Directiva"
@@ -44,7 +42,7 @@ INSTL_DATABASE_PREFIX_LABEL="Prefix de taula"
INSTL_DATABASE_PREFIX_MSG="El prefix de taula ha de començar amb una lletra, seguit d'opcionals caràcters alfanumèrics i un caràcter de subratllat"
INSTL_DATABASE_TYPE_DESC="Aquesta és probablement "_QQ_"MySQLi"_QQ_""
INSTL_DATABASE_TYPE_LABEL="Tipus de base de dades"
-INSTL_DATABASE_USER_DESC="O alguna cosa com "_QQ_"root"_QQ_" o un nom d'usuari donat per l'hostatjament"
+INSTL_DATABASE_USER_DESC="O alguna cosa com "_QQ_"root"_QQ_" o un nom d'usuari/a donat per l'hostatjament"
INSTL_DATABASE_USER_LABEL="Nom d'usuari"
;FTP view
@@ -57,11 +55,11 @@ INSTL_FTP_PASSWORD_LABEL="Contrasenya"
INSTL_FTP_PORT_LABEL="Port"
INSTL_FTP_ROOT_LABEL="Ruta d'accés a l'arrel de l'FTP"
INSTL_FTP_SAVE_LABEL="Guardar contrasenya de l'FTP"
-INSTL_FTP_TITLE="Configuració FTP (Opcional - La majoria dels usuaris poden saltar-se aquest pas - Prem Següent per ometre'l) "
-INSTL_FTP_USER_LABEL="usuari"
+INSTL_FTP_TITLE="Configuració FTP (Opcional - La majoria dels usuaris/es poden saltar-se aquest pas - Prem Següent per ometre'l) "
+INSTL_FTP_USER_LABEL="Usuari/a"
INSTL_VERIFY_FTP_SETTINGS="Comprovar els valors de FTP"
INSTL_FTP_SETTINGS_CORRECT="Ajustaments correctes"
-INSTL_FTP_USER_DESC="Avís! Es recomana deixar aquest espai en blanc i introdueix el nom d'usuari FTP cada vegada que transfereixis arxius."
+INSTL_FTP_USER_DESC="Avís! Es recomana deixar aquest espai en blanc i introdueix el nom d'usuari/a FTP cada vegada que transfereixis arxius."
INSTL_FTP_PASSWORD_DESC="Avís! Es recomana deixar aquest espai en blanc i introdueix la contrasenya FTP cada vegada que transfereixis arxius."
;Site View
@@ -118,16 +116,22 @@ INSTL_EMAIL_NOT_SENT="El correu electrònic no s'ha pogut enviar."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Informació sobre l'entrada a l'administració"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="La carpeta d'instal·lació ja s'ha eliminat."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="La carpeta d'instal·lació no s'ha pogut eliminar. Si us plau, elimina-la manualment. "
-INSTL_COMPLETE_FOLDER_REMOVED="Carpeta d'instal·lació eliminada correctament"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="La carpeta installation ja s'ha eliminat."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="La carpeta installation no s'ha pogut eliminar. Si us plau, elimina-la manualment. "
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_FOLDER_REMOVED="Carpeta installation eliminada correctament"
INSTL_COMPLETE_LANGUAGE_1="Joomla! en el teu propi idioma?"
-INSTL_COMPLETE_LANGUAGE_DESC="Abans que esborris el directori d'instal·lació pots instal·lar altres idiomes a la teva web Joomla clicant el següent botó."
-INSTL_COMPLETE_LANGUAGE_DESC2="Nota: necessites connexió a internet per permetre que Joomla! descarregui i instal·li els nous idiomes. Algunes configuracions de servidors no permetran que Joomla ho faci.Si aquest és el teu cas, ho podràs fer a través de l'administració de Joomla!"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="Abans que esborris el directori installation pots instal·lar altres idiomes a la teva web Joomla clicant el següent botó."
+INSTL_COMPLETE_LANGUAGE_DESC2="Nota: necessites connexió a internet per permetre que Joomla! baixa i instal·la els nous idiomes. Algunes configuracions de servidors no permetran que Joomla ho faci.Si aquest és el teu cas, ho podràs fer a través de l'administració de Joomla!"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_FOLDER="Esborrar la carpeta d'instal·lació"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_INSTALLATION="SI US PLAU RECORDA ESBORRAR EL DIRECTORI D'INSTAL·LACIÓ. No podràs continuar fins que esborris el directori d'instal·lació. Aquesta és una característica de seguretat de Joomla."
INSTL_COMPLETE_TITLE="Felicitats! Joomla! està instal·lat."
-INSTL_COMPLETE_INSTALL_LANGUAGES="Passos Extra: Instal·la idiomes"
+INSTL_COMPLETE_INSTALL_LANGUAGES="Passos Extra: Instal·lar idiomes"
;Languages view
INSTL_LANGUAGES="Instal·lació dels paquets d'idioma "
@@ -141,7 +145,7 @@ INSTL_LANGUAGES_WARNING_NO_INTERNET="Joomla! no ha estat capaç de connectar amb
INSTL_LANGUAGES_WARNING_NO_INTERNET2="Nota: podràs instal·lar més idiomes més endavant des de l'administració de Joomla!"
INSTL_LANGUAGES_WARNING_BACK_BUTTON="Tornar a la darrera etapa de la instal·lació"
-;Defaultlanguage view
+;Default language view
INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE="Activar el multilingüisme"
INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE_DESC="Si és actiu el teu lloc Joomla tindrà el multilingüisme activat, amb menús localitzats per cada idioma instal·lat"
INSTL_DEFAULTLANGUAGE_ACTIVATE_LANGUAGE_CODE_PLUGIN="Habilitar el complement de codi d'idioma"
@@ -155,7 +159,7 @@ INSTL_DEFAULTLANGUAGE_COLUMN_HEADER_TAG="Etiqueta"
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_CONTENT_LANGUAGE="Joomla no ha pogut crear automàticament el contingut de l'idioma %s"
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_MENU="Joomla no ha pogut crear automàticament el menú %s"
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_MENU_ITEM="Joomla no ha pogut crear automàticament l'ítem %s d'inici del menú"
-INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_MENU_MODULE="Joomla no ha pogut crear automàticament el menú del mòdul %s"
+INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_MENU_MODULE="Joomla no ha pogut crear automàticament el menú del mòdul %s"
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_CATEGORY="Joomla no ha pogut crear automàticament la categoria de contingut %s"
INSTL_DEFAULTLANGUAGE_COULD_NOT_CREATE_ARTICLE="Joomla no ha pogut crear automàticament l'article localitzat %s"
INSTL_DEFAULTLANGUAGE_COULD_NOT_ENABLE_MODULESWHITCHER_LANGUAGECODE="Joomla no ha pogut publicar automàticament el mòdul de canvi d'idioma"
@@ -179,11 +183,12 @@ INSTL_DEFAULTLANGUAGE_TRY_LATER="Podràs instal·lar més idiomes més endavant
INSTL_DEFAULTLANGUAGE_NATIVE_LANGUAGE_NAME="Català (ES)"
;Database Model
-INSTL_DATABASE_COULD_NOT_CONNECT="No s'ha pogut connectar a la base de dades. Complement retornat número : %s"
+INSTL_DATABASE_COULD_NOT_CONNECT="No s'ha pogut connectar a la base de dades. Connector retornat número : %s"
+INSTL_DATABASE_COULD_NOT_CREATE_DATABASE="L'instal·lador no pot connectar a la base de dades especificada i no ha pogut crear la base de dades. Comprova la configuració i si és necessari crea manualment la base de dades."
INSTL_DATABASE_COULD_NOT_REFRESH_MANIFEST_CACHE="No s'ha pogut actualitzar la memòria cau per l'extensió: %s"
-INSTL_DATABASE_EMPTY_NAME=""
+INSTL_DATABASE_EMPTY_NAME=" "
INSTL_DATABASE_ERROR_BACKINGUP="Ha hagut alguns errors en la còpia de seguretat de la base de dades."
-INSTL_DATABASE_ERROR_CREATE="S'ha produït un error en intentar crear la base de dades %s. L'usuari no té suficients privilegis per crear una base de dades. La base de dades requerida pot ser necessari crear-la per separat abans de poder instal·lar Joomla."
+INSTL_DATABASE_ERROR_CREATE="S'ha produït un error en intentar crear la base de dades %s. L'usuari/a no té suficients privilegis per crear una base de dades. La base de dades requerida pot ser necessari crear-la per separat abans de poder instal·lar Joomla."
INSTL_DATABASE_ERROR_DELETE="Ha hagut alguns errors esborrant la base de dades."
INSTL_DATABASE_FIELD_VALUE_REMOVE="Eliminar"
INSTL_DATABASE_FIELD_VALUE_BACKUP="Còpia de seguretat"
@@ -191,6 +196,8 @@ INSTL_DATABASE_FIX_TOO_LONG="El prefix de taula MySQL ha de tenir un màxim de 1
INSTL_DATABASE_INVALID_DB_DETAILS="Els detalls de la base de dades proporcionades són incorrectes o inexistents."
INSTL_DATABASE_INVALID_MYSQL_VERSION="Necessites MySQL 5.0.4 o superior per continuar la instal·lació. La teva versió és: %s"
INSTL_DATABASE_INVALID_MYSQLI_VERSION="Necessites MySQL 5.0.4 o superior per continuar la instal·lació. La teva versió és: %s"
+INSTL_DATABASE_INVALID_PDOMYSQL_VERSION="Necessites MySQL 5.0.4 o superior per continuar la instal·lació. La teva versió és: %s"
+INSTL_DATABASE_INVALID_POSTGRESQL_VERSION="Necessites PostgreSQL 8.3.18 o superior per continuar la instal·lació. La teva versió és: %s"
INSTL_DATABASE_INVALID_SQLSRV_VERSION="Necessites SQL Server 2008 R2 (10.50.1600.1) o superior per continuar la instal·lació. La teva versió és: %s"
INSTL_DATABASE_INVALID_SQLZURE_VERSION="Necessites SQL Server 2008 R2 (10.50.1600.1) o superior per continuar la instal·lació. La teva versió és: %s"
INSTL_DATABASE_INVALID_TYPE="Tria el tipus de base de dades"
@@ -208,7 +215,7 @@ INSTL_HEADER_ERROR="Error"
INSTL_PAGE_TITLE="Instal·lador Web Joomla!"
;Configuration model
-INSTL_ERROR_CONNECT_DB="No s'ha pogut connectar a la base de dades. Complement retornat número : %s"
+INSTL_ERROR_CONNECT_DB="No s'ha pogut connectar a la base de dades. Connector retornat número : %s"
INSTL_STD_OFFLINE_MSG="El lloc està desactivat per manteniment. Torna més tard."
;FTP model
@@ -243,10 +250,11 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="Idioma MB és l'idioma per defecte"
INSTL_MB_STRING_OVERLOAD_OFF="Sobrecàrrega Cadena MB deshabilitat"
INSTL_NOTICEMBLANGNOTDEFAULT="La cadena de Llenguatge PHP mbstring no s'ajusta a la posició neutral. Això es pot establir a nivell local mitjançant la introducció de mbstring.language php_value neutral al teu arxiu .htaccess ."
INSTL_NOTICEMBSTRINGOVERLOAD="La sobrecàrrega de la funció PHP mbstring està quantificada.això és pot deshabilitar escrivint php_value mbstring.func_overload 0 al teu arxiu .htaccess."
-INSTL_NOTICEYOUCANSTILLINSTALL=" Pots continuar la instal·lació amb la configuració que se't mostrarà al final.Hauràs de pujar manualment el codi.Clica a l'àrea del text per seleccionar-la i copiar-la en un nou arxiu de text.Anomena'l 'configuration.php' i puja'l al directori arrel del teu lloc."
+INSTL_NOTICEYOUCANSTILLINSTALL=" Pots continuar la instal·lació amb la configuració que se't mostrarà al final.Hauràs de pujar manualment el codi.Clica a l'àrea del text per seleccionar-la i copiar-la en un nou arxiu de text.Anomena'l 'configuration.php' i puja'l al directori arrel del teu lloc."
INSTL_OUTPUT_BUFFERING="Flux de sortida"
INSTL_PARSE_INI_FILE_AVAILABLE="Suport Parser INI"
INSTL_PHP_VERSION="Versió PHP"
+INSTL_PHP_VERSION_NEWER="Versió de PHP >= %s"
INSTL_REGISTER_GLOBALS="Register Globals deshabilitat"
INSTL_SAFE_MODE="Mode segur"
INSTL_SESSION_AUTO_START="Autoinici de sessió"
@@ -257,11 +265,11 @@ INSTL_ZLIB_COMPRESSION_SUPPORT="Suport a compressió Zlib"
INSTL_PROCESS_BUSY="Procés realitzant-se.Si us plau espera..."
;Global strings
-JADMINISTRATOR="administrador"
+JADMINISTRATOR="Administrador/a"
JCHECK_AGAIN="Comprovar-ho un altre cop"
JERROR="Error"
JEMAIL="Correu-e"
-JGLOBAL_ISFREESOFTWARE="%s és programari lliure sota %s."
+JGLOBAL_ISFREESOFTWARE="%s és programari lliure sota %s."
JGLOBAL_LANGUAGE_VERSION_NOT_PLATFORM="Aquest paquet d'idioma no és d'aquesta versió.Algunes cadenes no es mostraran o no ho faran correctament."
JGLOBAL_SELECT_AN_OPTION="Tria una opció"
JGLOBAL_SELECT_NO_RESULTS_MATCH="No s'han trobat resultatsque coincideixin amb la teva cerca"
@@ -306,16 +314,9 @@ SITE_NAME="Nom del lloc"
MYSQL="MySQL"
MYSQLI="MySQLi"
ORACLE="Oracle"
+PDOMYSQL="MySQL (DOP)"
POSTGRESQL="PostgreSQL"
SQLAZURE="Microsoft SQL Azure"
SQLITE="SQLite"
SQLSRV="Microsoft SQL Server"
-;Database Model
-INSTL_DATABASE_COULD_NOT_CREATE_DATABASE="L'instal·lador no ha pogut connectar amb la base de dades especificada i no l'ha pogut crear.Comprova la teva configuració i si és necessari fes-ho tu manualment."
-INSTL_DATABASE_INVALID_PDOMYSQL_VERSION="Necessites MySQL 5.0.4 o superior per continuar amb la instal·lació. La teva versió és: %s"
-INSTL_DATABASE_INVALID_POSTGRESQL_VERSION="Necessites PostgreSQL 8.3.18 o superior per continuar amb la instal·lació. La teva versió és: %s"
-
-;Database types (allows for a more descriptive label than the internal name)
-
-PDOMYSQL="MySQL (PDO)"
diff --git a/installation/language/ca-ES/ca-ES.xml b/installation/language/ca-ES/ca-ES.xml
index 2c3583a4a32d1..d2c6d1b05292d 100644
--- a/installation/language/ca-ES/ca-ES.xml
+++ b/installation/language/ca-ES/ca-ES.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Catalan (ES)
- 3.4.0
- 2011-12-16
+ 3.4.4
+ August 2015Catalan Translation TeamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/da-DK/da-DK.ini b/installation/language/da-DK/da-DK.ini
index 5457dc123a994..cc23803956558 100644
--- a/installation/language/da-DK/da-DK.ini
+++ b/installation/language/da-DK/da-DK.ini
@@ -59,12 +59,12 @@ INSTL_FTP_USER_DESC="Advarsel! Det anbefales at lade dette felt være tomt og is
INSTL_FTP_PASSWORD_DESC="Advarsel! Det anbefales at lade dette felt være tomt og istedet indtaste din FTP-adgangkode hver gang du overfører filer."
; Site View
INSTL_SITE="Generel konfiguration"
-INSTL_ADMIN_EMAIL_LABEL="Admin e-mail"
+INSTL_ADMIN_EMAIL_LABEL="Administrator e-mail"
INSTL_ADMIN_EMAIL_DESC="Angiv din emailadresse. Dette bliver email adressen for webstedets superbruger."
-INSTL_ADMIN_PASSWORD_LABEL="Admin adgangskode"
+INSTL_ADMIN_PASSWORD_LABEL="Administrator adgangskode"
INSTL_ADMIN_PASSWORD_DESC="Sæt adgangskoden for din superbruger konto og bekræft den i feltet nedenunder."
-INSTL_ADMIN_PASSWORD2_LABEL="Bekræft admin adgangskode"
-INSTL_ADMIN_USER_LABEL="Admin brugernavn"
+INSTL_ADMIN_PASSWORD2_LABEL="Bekræft administrator adgangskode"
+INSTL_ADMIN_USER_LABEL="Administrator brugernavn"
INSTL_ADMIN_USER_DESC="Sæt brugernavnet for din Superbruger konto."
INSTL_SITE_NAME_LABEL="Webstedets navn"
INSTL_SITE_NAME_DESC="Indtast navnet på dit Joomla! websted."
@@ -94,7 +94,7 @@ INSTL_SUMMARY_EMAIL_DESC="Vælg om du vil emaile nedenstående konfigurationsind
INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Inkluder adgangskoder i email"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Advarsel! Det anbefales ikke at sende og gemme dine adgangskoder i emails."
; Installing view
-INSTL_INSTALLING="Installerer..."
+INSTL_INSTALLING="Installerer ..."
INSTL_INSTALLING_DATABASE_BACKUP="Laver backup af gamle database tabeller"
INSTL_INSTALLING_DATABASE_REMOVE="Fjerner gamle databasetabeller"
INSTL_INSTALLING_DATABASE="Opretter databasetabeller"
@@ -107,21 +107,27 @@ INSTL_EMAIL_HEADING="Nedenfor finder du konfigurationsindstillingerne for et nyl
INSTL_EMAIL_NOT_SENT="Email kunne ikke sendes."
; Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Log ind detaljer for administration"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Installationsmappen er allerede blevet fjernet."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Installationsmappen kunne ikke slettes. Slet venligst mappen manuelt."
-INSTL_COMPLETE_FOLDER_REMOVED="Installationsmappen fjernet med succes."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Mappen installation er allerede blevet fjernet."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="Mappen installation kunne ikke slettes. Slet venligst mappen manuelt."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_FOLDER_REMOVED="Mappen installation blev fjernet."
INSTL_COMPLETE_LANGUAGE_1="Joomla! på dit eget sprog og/eller automatisk grundlæggende nativ multisprogs webstedsoprettelse?"
-INSTL_COMPLETE_LANGUAGE_DESC="Inden du fjerner installationsmappen kan du installere ekstra sprog. Hvis du ønsker at tilføje ekstra sprog til din Joomla! applikation, så klik på knappen herunder."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="Inden du fjerner mappen installation, kan du installere ekstra sprog. Hvis du ønsker at tilføje ekstra sprog til din Joomla! applikation, så tryk på knappen herunder."
INSTL_COMPLETE_LANGUAGE_DESC2="Bemærk: du skal bruge internetadgang for at give Joomla! mulighed for at downloade de nye sprog. Nogle serveres konfiguration vil ikke tillade Joomla! at installere sprogene. Hvis dette er tilfældet, så kan du installere dem senere ved at anvende Joomla! administratordelen."
-INSTL_COMPLETE_REMOVE_FOLDER="Fjern installationsmappen"
-INSTL_COMPLETE_REMOVE_INSTALLATION="HUSK VENLIGST AT FJERNE INSTALLATIONSMAPPEN FULDSTÆNDIGT Du kan ikke fortsætte før du har fjernet installationsmappen. Dette er en sikkerhedsfunktion i Joomla!"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_FOLDER="Fjern mappen installation"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_INSTALLATION="HUSK VENLIGST AT FJERNE MAPPEN 'INSTALLATION' FULDSTÆNDIGT Du kan ikke fortsætte før du har fjernet mappen 'installation'. Dette er en sikkerhedsfunktion i Joomla!"
INSTL_COMPLETE_TITLE="Tillykke! Joomla! er nu installeret."
INSTL_COMPLETE_INSTALL_LANGUAGES="Ekstra skridt: Installer sprog"
; Languages view
INSTL_LANGUAGES="Installer sprogpakker"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Sprog"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Version"
-INSTL_LANGUAGES_DESC="Joomla interfacet er tilgængeligt på forskellige sprog. Vælg dine foretrukne sprog ved at klikke i afkrydsningsboksene og installer dem ved at klikke på knappen Næste. Bemærk: denne handling tager omkring 10 sekunder for download og installation for hvert sprog. Vælg venligst ikke flere end 3 sprog til installation for at undgå timeout."
+INSTL_LANGUAGES_DESC="Joomla interfacet er tilgængeligt på forskellige sprog. Vælg dine foretrukne sprog ved at trykke i afkrydsningsboksene og installer dem ved at trykke på knappen Næste. Bemærk: denne handling tager omkring 10 sekunder for download og installation for hvert sprog. Vælg venligst ikke flere end 3 sprog til installation for at undgå timeout."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Denne handling vil tage op til 10 sekunder per sprog Vent venligst i mens vi downloader og installere sprogene ..."
INSTL_LANGUAGES_MORE_LANGUAGES="Tryk på knappen 'Forrige' hvis du ønsker at installere flere sprog."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Der er ikke valgt nogen sprog til installation. Hvis du har brug for at installere flere sprog, så tryk venligst på knappen 'Forrige' og vælg det ønskede sprog fra listen."
@@ -199,7 +205,7 @@ INSTL_STD_OFFLINE_MSG="Dette websted opdateres i øjeblikket. Prøv venligs
INSTL_FTP_INVALIDROOT="Den angivne FTP-mappe er ikke mappen for denne Joomla! installation"
INSTL_FTP_NOCONNECT="Kunne ikke forbinde til FTP-serveren"
INSTL_FTP_NODELE="Funktionen "DELE" fejlede."
-INSTL_FTP_NODIRECTORYLISTING="Kunne ikke hente en mappe-liste fra FTP-serveren"
+INSTL_FTP_NODIRECTORYLISTING="Kunne ikke hente en mappe-liste fra FTP-serveren."
INSTL_FTP_NOLIST="Funktionen "LIST" fejlede."
INSTL_FTP_NOLOGIN="Kunne ikke logge ind på FTP-serveren."
INSTL_FTP_NOMKD="Funktionen "MKD" fejlede."
@@ -207,12 +213,12 @@ INSTL_FTP_NONLST="Funktionen "NLST" fejlede."
INSTL_FTP_NOPWD="Funktionen "PWD" fejlede."
INSTL_FTP_NORETR="Funktionen "RETR" fejlede."
INSTL_FTP_NORMD="Funktionen "RMD" fejlede."
-INSTL_FTP_NOROOT="Kunne ikke tilgå den angivne FTP-mappe"
+INSTL_FTP_NOROOT="Kunne ikke tilgå den angivne FTP-mappe."
INSTL_FTP_NOSTOR="Funktionen "STOR" fejlede."
INSTL_FTP_NOSYST="Funktionen "SYST" fejlede."
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Kunne ikke autodetekte FTP-rodmappen"
; others
-INSTL_CONFPROBLEM="Din konfigurationsfil eller mappe er ikke skrivbar, eller der opstod et problem med at oprette konfigurationsfilen. Du er nødt til at uploade den følgende kode manuelt. Klik i tekstfeltet for at markere hele koden, for derefter at kopiere og indsætte den i en ny fil, navngivet:configuration.php. Upload derefter filen til din rodmappe på dit websted."
+INSTL_CONFPROBLEM="Din konfigurationsfil eller mappe er ikke skrivbar, eller der opstod et problem med at oprette konfigurationsfilen. Du er nødt til at uploade den følgende kode manuelt. Tryk i tekstfeltet for at markere hele koden, for derefter at kopiere og indsætte den i en ny fil, navngivet:configuration.php. Upload derefter filen til din rodmappe på dit websted."
INSTL_DATABASE_SUPPORT="Database understøttelse:"
INSTL_DISPLAY_ERRORS="Fejlvisning"
INSTL_ERROR_DB="Nogle fejl opstod under overførsel til databasen: %s"
@@ -226,7 +232,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="MB sprog er standard"
INSTL_MB_STRING_OVERLOAD_OFF="MB strenge overload off"
INSTL_NOTICEMBLANGNOTDEFAULT="PHP mbstring sprog er ikke sat til neutral. Dette kan indstilles lokalt ved at indtaste php_value mbstring.language neutral i .htaccess"
INSTL_NOTICEMBSTRINGOVERLOAD="PHP mbstring function overload er indstillet. Dette kan deaktiveres lokalt ved at indtaste php_value mbstring.func_overload 0 i .htaccess."
-INSTL_NOTICEYOUCANSTILLINSTALL=" Du kan stadig fortsætte installationen da konfigurationsindstillingerne vil blive vist ved afslutningen. Du skal så manuelt uploade koden. Klik i tekstområdet for at markere al koden og indsæt så i en ny tekstfil. Navngiv denne fil 'configuration.php' og upload den til dit websteds rodmappe."
+INSTL_NOTICEYOUCANSTILLINSTALL=" Du kan stadig fortsætte installationen da konfigurationsindstillingerne vil blive vist ved afslutningen. Du skal så manuelt uploade koden. Tryk i tekstområdet for at markere al koden og indsæt så i en ny tekstfil. Navngiv denne fil 'configuration.php' og upload den til dit websteds rodmappe."
INSTL_OUTPUT_BUFFERING="Output buffering"
INSTL_PARSE_INI_FILE_AVAILABLE="INI Parser understøttelse"
INSTL_PHP_VERSION="PHP version"
@@ -277,9 +283,9 @@ JDEBUG_LANGUAGE_FILES_IN_ERROR="Parser fejl i sprogfiler"
JDEBUG_LANGUAGE_UNTRANSLATED_STRING="Ikke oversatte strenge"
JNONE="Ingen"
; Necessary for errors
-ADMIN_EMAIL="Admin e-mail"
-ADMIN_PASSWORD="Admin adgangskode"
-ADMIN_PASSWORD2="Bekræft admin adgangskode"
+ADMIN_EMAIL="Administrator e-mail"
+ADMIN_PASSWORD="Administrator adgangskode"
+ADMIN_PASSWORD2="Bekræft administrator adgangskode"
SITE_NAME="Webstedets navn"
; Database types (allows for a more descriptive label than the internal name)
MYSQL="MySQL"
diff --git a/installation/language/da-DK/da-DK.xml b/installation/language/da-DK/da-DK.xml
index 09e12b8117ac7..54ad92c3564c3 100644
--- a/installation/language/da-DK/da-DK.xml
+++ b/installation/language/da-DK/da-DK.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Danish (DK)
- 3.4.2
- 2012-09-15
+ 3.4.4
+ August 2015Danish Translation projectwww.joomla.orgCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
diff --git a/installation/language/de-DE/de-DE.ini b/installation/language/de-DE/de-DE.ini
index c2b0d7ad0a2ca..d68ee018fc7c3 100644
--- a/installation/language/de-DE/de-DE.ini
+++ b/installation/language/de-DE/de-DE.ini
@@ -65,12 +65,12 @@ INSTL_FTP_PASSWORD_DESC="Warnung! Es ist empfohlen das Feld leer zu lassen und e
; Site View
INSTL_SITE="Hauptkonfiguration"
-INSTL_ADMIN_EMAIL_LABEL="Admin-E-Mail"
+INSTL_ADMIN_EMAIL_LABEL="Administrator-E-Mail"
INSTL_ADMIN_EMAIL_DESC="Bitte eine E-Mail-Adresse eingeben, die für den Super Administrator der Website genutzt werden soll."
-INSTL_ADMIN_PASSWORD_LABEL="Admin-Passwort"
+INSTL_ADMIN_PASSWORD_LABEL="Administrator-Passwort"
INSTL_ADMIN_PASSWORD_DESC="Das Passwort für das Super Administrator Konto eingeben. Im Feld darunter bitte die Passworteingabe wiederholen."
-INSTL_ADMIN_PASSWORD2_LABEL="Admin-Passwort bestätigen"
-INSTL_ADMIN_USER_LABEL="Admin-Benutzername"
+INSTL_ADMIN_PASSWORD2_LABEL="Administrator-Passwort bestätigen"
+INSTL_ADMIN_USER_LABEL="Administrator-Benutzername"
INSTL_ADMIN_USER_DESC="Den Benutzernamen für das Konto des Super Administrators eingeben."
INSTL_SITE_NAME_LABEL="Name der Website"
INSTL_SITE_NAME_DESC="Den Namen der Joomla!-Website eingeben."
@@ -104,7 +104,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Passwörter in E-Mail einschließen"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Warnung: Es wird nicht empfohlen Passwörter via E-Mail zu senden oder zu speichern."
; Installing view
-INSTL_INSTALLING="Joomla!-Installation läuft..."
+INSTL_INSTALLING="Joomla!-Installation läuft ..."
INSTL_INSTALLING_DATABASE_BACKUP="Alte Datenbanktabellen sichern"
INSTL_INSTALLING_DATABASE_REMOVE="Alte Datenbanktabellen löschen"
INSTL_INSTALLING_DATABASE="Neue Datenbanktabellen erstellen"
@@ -119,13 +119,19 @@ INSTL_EMAIL_NOT_SENT="Die E-Mail konnte nicht gesendet werden!"
; Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Anmeldeinformation für die Administration"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Das Installationsverzeichnis wurde bereits gelöscht."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Das Installationsverzeichnis konnte nicht gelöscht werden. Bitte das Verzeichnis manuell löschen."
-INSTL_COMPLETE_FOLDER_REMOVED="Installationsverzeichnis gelöscht!"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Das Verzeichnis „installation“ wurde bereits gelöscht."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="Das Verzeichnis „installation“ konnte nicht gelöscht werden. Bitte das Verzeichnis manuell löschen."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_FOLDER_REMOVED="Das Verzeichnis „installation“ wurde gelöscht!"
INSTL_COMPLETE_LANGUAGE_1="Joomla! in der eigenen Sprache und/oder eine automatisch standardmäßig eingerichtete multilinguale Webseitenerstellung"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_LANGUAGE_DESC="Bevor das Installationsverzeichnis gelöscht werden sollte, können noch weitere Sprachen für Joomla! installiert werden. Dazu genügt ein Klick auf den folgenden Button."
INSTL_COMPLETE_LANGUAGE_DESC2="Hinweis: Es wird eine offene Verbindung zum Internet benötigt, damit Joomla! die zusätzliche Sprache herunterladen und installieren kann. Einige Server-Konfigurationen lassen die Installation von zustätzlicher Sprachen über diesen Weg nicht zu. Sollte dies hier der Fall sein, so können diese Sprachen auch später noch in der Administration von Joomla! installiert werden."
-INSTL_COMPLETE_REMOVE_FOLDER="Installationsverzeichnis löschen"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_FOLDER="Verzeichnis „installation“ löschen"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_INSTALLATION="BITTE DARAN DENKEN, DAS VERZEICHNIS „installation“ VOLLSTÄNDIG ZU LÖSCHEN!
Es kann nicht fortgefahren werden, wenn dieses Verzeichnis nicht gelöscht wird! Dieses ist ein Sicherheitsmerkmal von Joomla!.
"
INSTL_COMPLETE_TITLE="Glückwunsch! Joomla! ist vollständig installiert!"
INSTL_COMPLETE_INSTALL_LANGUAGES="Extra Schritt: Sprachen installieren"
@@ -135,7 +141,7 @@ INSTL_LANGUAGES="Sprachpakete installieren"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Sprache"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Version"
INSTL_LANGUAGES_DESC="Die Oberfläche von Joomla! ist in vielen Sprachen verfügbar. Um eine Sprache zu installieren, muss nur die Checkbox vor dem gewünschten Eintrag durch einen Klick markiert werden und anschließend wird die Sprache durch einen Klick auf „Weiter“ installiert. Hinweis: Diese Operation braucht ca. 10 Sekunden für den Download und die Installation der Sprachen. Daher sollten nicht mehr als 3 Sprachen gleichzeitig ausgewählt werden, um Zeitüberschreitungen zu verhindern."
-INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Diese Operation kann bis zu 10 Sekunden pro Sprache in Anspruch nehmen. Bitte warten, bis die Sprachen heruntergeladen und installiert sind..."
+INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Diese Operation kann bis zu 10 Sekunden pro Sprache in Anspruch nehmen. Bitte warten, bis die Sprachen heruntergeladen und installiert sind ..."
INSTL_LANGUAGES_MORE_LANGUAGES="Auf den „Zurück“-Button klicken, wenn noch weitere Sprachen installiert werden sollen."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Es wurden keine Sprachen zur Installation ausgewählt. Wenn weitere Sprachen installiert werden sollen, auf „Zurück“ klicken und die gewünschten Sprachen aus der Liste auswählen."
INSTL_LANGUAGES_WARNING_NO_INTERNET="Joomla! war es nicht möglich eine Verbindung zum Übersetzungsserver aufzubauen. Bitte die Installation normal abschließen."
@@ -259,7 +265,7 @@ INSTL_WRITABLE="%s: nicht schreibgeschützt"
INSTL_XML_SUPPORT="XML-Unterstützung"
INSTL_ZIP_SUPPORT_AVAILABLE="Standard ZIP-Unterstützung"
INSTL_ZLIB_COMPRESSION_SUPPORT="Zlib-Kompressionsunterstützung"
-INSTL_PROCESS_BUSY="Vorgang wird bearbeitet. Bitte warten..."
+INSTL_PROCESS_BUSY="Vorgang wird bearbeitet. Bitte warten ..."
; Global strings
JADMINISTRATOR="Administrator"
@@ -302,7 +308,7 @@ JDEBUG_LANGUAGE_UNTRANSLATED_STRING="Nicht übersetzter Text"
JNONE="Nichts"
; Necessary for errors
-ADMIN_EMAIL="Admin-E-Mail"
+ADMIN_EMAIL="Administrator-E-Mail"
ADMIN_PASSWORD="Administrator-Passwort"
ADMIN_PASSWORD2="Administrator-Passwort bestätigen"
SITE_NAME="Site-Name"
diff --git a/installation/language/de-DE/de-DE.xml b/installation/language/de-DE/de-DE.xml
index 7894dbe9c4abd..8f6686136631f 100644
--- a/installation/language/de-DE/de-DE.xml
+++ b/installation/language/de-DE/de-DE.xml
@@ -1,10 +1,8 @@
-
+German (Germany-Switzerland-Austria)
- 3.4.2
- July 2014
+ 3.4.4
+ September 2015J!GermanCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/en-GB/en-GB.xml b/installation/language/en-GB/en-GB.xml
index 010c38b11237a..a8433b642de50 100644
--- a/installation/language/en-GB/en-GB.xml
+++ b/installation/language/en-GB/en-GB.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
English (United Kingdom)
- 3.4.2
- September 2012
+ 3.4.4
+ August 2015Joomla! Projectadmin@joomla.orgwww.joomla.org
diff --git a/installation/language/fa-IR/fa-IR.ini b/installation/language/fa-IR/fa-IR.ini
index 0e8b1c7e525bb..2cf6fe1f19f15 100644
--- a/installation/language/fa-IR/fa-IR.ini
+++ b/installation/language/fa-IR/fa-IR.ini
@@ -66,12 +66,12 @@ INSTL_VERIFY_FTP_SETTINGS="تایید تنظیمات FTP"
;Site View
INSTL_SITE="تنظیمات اصلی "
INSTL_SITE_NAME_LABEL="نام سایت"
-INSTL_ADMIN_EMAIL_LABEL="ایمیل مدیر"
+INSTL_ADMIN_EMAIL_LABEL="ایمیل مدیر ارشد"
INSTL_ADMIN_EMAIL_DESC="آدرس ایمیل خود را وارد نمایید ، این ایمیل به عنوان ایمیل مدیر می باشد."
-INSTL_ADMIN_PASSWORD_LABEL="رمز عبور مدیر"
+INSTL_ADMIN_PASSWORD_LABEL="رمز عبور مدیر ارشد"
INSTL_ADMIN_PASSWORD_DESC="رمز عبور مدیر را وارد نمایید."
-INSTL_ADMIN_PASSWORD2_LABEL="تکرار رمز عبور مدیر"
-INSTL_ADMIN_USER_LABEL="نام کاربری مدیر"
+INSTL_ADMIN_PASSWORD2_LABEL="تکرار رمز عبور مدیر ارشد"
+INSTL_ADMIN_USER_LABEL="نام کاربری مدیر ارشد"
INSTL_ADMIN_USER_DESC="نام کاربری مدیر ارشد را وارد کنید."
INSTL_SITE_NAME_DESC="لطفا نام سایت جوملایی خود را وارد نمایید."
INSTL_SITE_METADESC_LABEL="توضیحات متا"
@@ -128,11 +128,11 @@ INSTL_EMAIL_NOT_SENT="ایمیل ارسال نشد."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="اطلاعات ورود مدیر "
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="پوشه ی نصب پیش از این حذف شده است."
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="پوشه ی installation حذف شده است."
INSTL_COMPLETE_ERROR_FOLDER_DELETE="پوشه ی installation قابل حذف کردن نیست. لطفا به صورت دستی این پوشه را حذف کنید."
-INSTL_COMPLETE_FOLDER_REMOVED="حذف پوشه نصب جوملا بدرستی انجام گردید."
+INSTL_COMPLETE_FOLDER_REMOVED="پوشه Installation بدرستی حذف شده است."
INSTL_COMPLETE_LANGUAGE_1="جوملا به زبان شما و/یا بصورت خودکار ایجاد یک سایت چند زبانه را میسر می سازد"
-INSTL_COMPLETE_LANGUAGE_DESC="قبل از حذف پوشه نصب شما می توانید زبان های جدیدی را نصب کنید. اگر شما می خواهید زبان های جدیدی روی جوملا! نصب کنید روی دکمه زیر کلیک کنید."
+INSTL_COMPLETE_LANGUAGE_DESC="قبل از حذف پوشه installation شما می توانید زبان های جدیدی را نصب کنید. اگر شما می خواهید زبان های جدیدی روی جوملا! نصب کنید دکمه زیر را انتخاب کنید."
INSTL_COMPLETE_LANGUAGE_DESC2="توجه: شما برای دانلود و نصب زبان های جدید نیاز دارید تا به اینترنت دسترسی داشته باشید. تنظیمات برخی از سرورها اجازه دسترسی به سایت جوملا برای نصب زبان را نمی دهد. نگران این موضوع نباشید زیرا می توانید پس از نصب جوملا در مدیریت جوملا زبان های جدید را نصب کنید."
INSTL_COMPLETE_REMOVE_FOLDER="حذف پوشه نصب جوملا"
INSTL_COMPLETE_REMOVE_INSTALLATION="لطفا دقت داشته باشید که پوشه Installation را حذف کنید. شما نمی توانید تا زمانی که پوشه Installation را حذف نكرده اید، از این مرحله جلو تر بروید. این یک عمل امنیتی برای جوملا است!."
@@ -253,7 +253,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="زبان اصلی موجود می باشد"
INSTL_MB_STRING_OVERLOAD_OFF="میزان سر ریزی رشته با حسب مگابایت خاموش است"
INSTL_NOTICEMBLANGNOTDEFAULT="زبان متغییر MB پی اچ پی نظیم نشده است . این می تواند به صورت محلی با وارد کردن php_value متغییر MB تنظیم شود.زبان خنثی.htaccess در فایل."
INSTL_NOTICEMBSTRINGOVERLOAD="تابع متغییر MBپی اچ پی اضافی تنظیم شده است. این می تواند بطور محلی خاموش شود با وارد کردن php_value mbstring.func_overload 0.htaccessدر فایل ."
-INSTL_NOTICEYOUCANSTILLINSTALL=" شما هنوز می توانید نصب را ادامه دهید بطوریکه تنظیمات پیکربندی در پایان نمایش داده خواهد شد. شما بایستی بصورت دستی کد های داده شده در مرحله نهایی را آپلود کنید. شما بایستی یک فایل configuration.php در انتهای مرحله نصب ایجاد کرده و کد هایی که در انتهای نصب به شما داده می شود را درون آن قرار داده و سپس در پوشه ای که جوملا در ان نصب است ، آپلود کنید."
+INSTL_NOTICEYOUCANSTILLINSTALL=" شما هنوز می توانید نصب را ادامه دهید بطوریکه تنظیمات پیکربندی در پایان نمایش داده خواهد شد. شما بایستی بصورت دستی کد های داده شده در مرحله نهایی را آپلود کنید. شما بایستی یک فایل configuration.php در انتهای مرحله نصب ایجاد کرده و کد هایی که در انتهای نصب به شما داده می شود را درون آن قرار داده و سپس در پوشه ای که جوملا در آن نصب است ، آپلود کنید."
INSTL_OUTPUT_BUFFERING="میانگیری خروجی"
INSTL_PARSE_INI_FILE_AVAILABLE="پشتیبانی از فشرده سازی"
INSTL_PHP_VERSION="نسخه php"
@@ -305,9 +305,9 @@ JLIB_UTIL_ERROR_CONNECT_DATABASE="JDatabase: :getInstance: امکان اتصال
JDEBUG_LANGUAGE_FILES_IN_ERROR="مشکل در فایل های زبان"
JDEBUG_LANGUAGE_UNTRANSLATED_STRING="رشته های ترجمه نشده"
JNONE="هیچ"
-ADMIN_EMAIL="ایمیل مدیر"
-ADMIN_PASSWORD="رمز عبور مدیر"
-ADMIN_PASSWORD2="تایید رمز عبور مدیر"
+ADMIN_EMAIL="ایمیل مدیر ارشد"
+ADMIN_PASSWORD="رمز عبور مدیر ارشد"
+ADMIN_PASSWORD2="تایید رمز عبور مدیر ارشد"
SITE_NAME="نام سایت"
; Database types (allows for a more descriptive label than the internal name)
diff --git a/installation/language/fa-IR/fa-IR.xml b/installation/language/fa-IR/fa-IR.xml
index 41233dece985c..7d8c0a14e76c4 100644
--- a/installation/language/fa-IR/fa-IR.xml
+++ b/installation/language/fa-IR/fa-IR.xml
@@ -1,9 +1,9 @@
Persian (پارسی)
- 3.2.0
+ 3.4.42012-09-24Joomla Farsi TeamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
diff --git a/installation/language/hr-HR/hr-HR.ini b/installation/language/hr-HR/hr-HR.ini
index 377498f5920c5..a31773f70d774 100644
--- a/installation/language/hr-HR/hr-HR.ini
+++ b/installation/language/hr-HR/hr-HR.ini
@@ -64,12 +64,12 @@ INSTL_FTP_PASSWORD_DESC="Upozorenje! Preporučljivo je da ovo ostavite prazno i
;Site View
INSTL_SITE="Glavna konfiguracija"
-INSTL_ADMIN_EMAIL_LABEL="Admin e-mail adresa"
+INSTL_ADMIN_EMAIL_LABEL="E-mail administratora"
INSTL_ADMIN_EMAIL_DESC="Upišite e-mail adresu. Ovo će biti e-mail adresa Super administratora web stranice."
-INSTL_ADMIN_PASSWORD_LABEL="Admin lozinka"
+INSTL_ADMIN_PASSWORD_LABEL="Lozinka administratora"
INSTL_ADMIN_PASSWORD_DESC="Postavite lozinku za vaš Super Administrator korisnički račun i potvrdite je u polju ispod."
-INSTL_ADMIN_PASSWORD2_LABEL="Potvrda Admin lozinke"
-INSTL_ADMIN_USER_LABEL="Admin korisničko ime"
+INSTL_ADMIN_PASSWORD2_LABEL="Potvrda lozinke administratora"
+INSTL_ADMIN_USER_LABEL="Korisničko ime administratora"
INSTL_ADMIN_USER_DESC="Postavite korisničko ime za vaš Super Administrator korisnički račun."
INSTL_SITE_NAME_LABEL="Naziv stranice"
INSTL_SITE_NAME_DESC="Upišite naziv vaše Joomla! stranice."
@@ -101,7 +101,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Prikaži lozinke u e-mailu"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Upozorenje! Nije preporučeno slati i spremati lozinke u emailovima."
;Installing view
-INSTL_INSTALLING="Instalacija u tijeku..."
+INSTL_INSTALLING="Instalacija u tijeku ..."
INSTL_INSTALLING_DATABASE_BACKUP="Spremanje starih tablica baze podataka"
INSTL_INSTALLING_DATABASE_REMOVE="Uklanjanje starih tablica baze podataka"
INSTL_INSTALLING_DATABASE="Kreiranje tablica baze podataka"
@@ -116,14 +116,20 @@ INSTL_EMAIL_NOT_SENT="Email se nije mogao poslati."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Detalji administratorske prijave"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Instalacijski direktorij je već izbrisan."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Instalacijski direktorij ne može biti obrisan. Molim, obrišite ga ručno."
-INSTL_COMPLETE_FOLDER_REMOVED="Instalacijski direktorij je uspješno izbrisan"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Installation direktorij je već izbrisan."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="Installation direktorij ne može biti obrisan. Molim, obrišite ga ručno."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_FOLDER_REMOVED="Installation direktorij je uspješno izbrisan"
INSTL_COMPLETE_LANGUAGE_1="Joomla! na vašem jeziku?"
-INSTL_COMPLETE_LANGUAGE_DESC="Prije brisanja instalacijskog direktorija možete instalirati dodatne jezike. Ako želite instalirati dodatne jezike u vašu Joomlu kliknite sljedeću tipku"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="Prije brisanja installation direktorija možete instalirati dodatne jezike. Ako želite instalirati dodatne jezike u vašu Joomlu odaberite sljedeću tipku"
INSTL_COMPLETE_LANGUAGE_DESC2="Opaska: trebat će vam pristup internetu kako bi mogli skinuti i instalirati nove jezike. Neke konfiguracije servera neće dozvoliti Joomli da instalira jezike. U tom slučaju ne brinite, moći ćete ih instalirati kasnije koristeći Joomla administratorsko sučelje."
-INSTL_COMPLETE_REMOVE_FOLDER="Izbrišite instalacijski direktorij"
-INSTL_COMPLETE_REMOVE_INSTALLATION="MOLIM DA NE ZABORAVITE OBRISATI INSTALACIJSKI DIREKTORIJ. Nećete moći raditi dalje dok se ne ukloni instalacijski direktorij. Ovo je sigurnosna mogućnost Joomle."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_FOLDER="Izbrišite installation direktorij"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_INSTALLATION="MOLIM DA NE ZABORAVITE OBRISATI INSTALLATION DIREKTORIJ. Nećete moći raditi dalje dok se ne ukloni instalacijski direktorij. Ovo je sigurnosna mogućnost Joomle."
INSTL_COMPLETE_TITLE="Čestitamo! Joomla! je instalirana!"
INSTL_COMPLETE_INSTALL_LANGUAGES="Dodatni koraci: Instalacija jezika"
@@ -131,7 +137,7 @@ INSTL_COMPLETE_INSTALL_LANGUAGES="Dodatni koraci: Instalacija jezika"
INSTL_LANGUAGES="Instalacija jezičnih paketa"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Jezik"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Verzija"
-INSTL_LANGUAGES_DESC="Joomla sučelje dostupno je na više jezika. Odaberite jezik po želji klikom na kućice i instalirajte ih klikom na tipku Dalje. Opaska: ova operacija trajati će oko 5 sekundi za preuzimanje i instalaciju svakog jezika. Molimo da ne odabirete više od 3 jezika za instalaciju kako bi izbjegli vremenska ograničenja."
+INSTL_LANGUAGES_DESC="Joomla sučelje dostupno je na više jezika. Odaberite jezik po želji odabirom kućica i instalirajte ih odabirom tipke Dalje. Opaska: ova operacija trajati će oko 5 sekundi za preuzimanje i instalaciju svakog jezika. Molimo da ne odabirete više od 3 jezika za instalaciju kako bi izbjegli vremenska ograničenja."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Ova operacija trajati će do 10 sekundi po jeziku Molimo pričekajte dok preuzmemo i instaliramo jezike..."
INSTL_LANGUAGES_MORE_LANGUAGES="Pritisnite gumb 'Prethodno' ako želite instalirati više jezika."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Nije odabran niti jedan jezik za instalaciju. Ako trebate instalirati još jezika, odaberite tipku 'Prethodno' i željene jezike s popisa."
@@ -213,10 +219,10 @@ INSTL_ERROR_CONNECT_DB="Nije moguće povezati se na bazu. Povezivanje vraća gre
INSTL_STD_OFFLINE_MSG="Stranica je trenutno u izradi . Molim posjetite nas ponovo uskoro."
;FTP model
-INSTL_FTP_INVALIDROOT="Uneseni FTP direktorij nije direktorij Joomla! instalacije"
+INSTL_FTP_INVALIDROOT="Uneseni FTP direktorij nije direktorij ove Joomla! instalacije"
INSTL_FTP_NOCONNECT="Nije moguće povezati se na FTP server"
INSTL_FTP_NODELE="Funkcija "_QQ_"DELE"_QQ_" nije uspjela."
-INSTL_FTP_NODIRECTORYLISTING="Nije moguće dobiti popis direktorija sa FTP servera"
+INSTL_FTP_NODIRECTORYLISTING="Nije moguće dohvatiti popis direktorija s FTP servera"
INSTL_FTP_NOLIST="Funkcija "_QQ_"LIST"_QQ_" nije uspjela."
INSTL_FTP_NOLOGIN="Nije moguća prijava na FTP server."
INSTL_FTP_NOMKD="Funkcija "_QQ_"MKD"_QQ_" nije uspjela."
@@ -230,7 +236,7 @@ INSTL_FTP_NOSYST="Funkcija "_QQ_"SYST"_QQ_" nije uspjela."
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Nije moguće automatsko prepoznavanje osnovnog FTP direktorija"
;others
-INSTL_CONFPROBLEM="Vaša konfiguracijska datoteka ili direktorij nemaju prava za zapisivanje ili je došlo do problema prilikom izrade konfiguracijske datoteke. Morati ćete ručno učitati sljedeći kod. Kliknite na prostor za tekst za odabir cijelog teksta kôda, zatim ga kopirajte i dodajte u novu datoteku imena 'configuration.php', te datoteku prenesite u osnovni direktorij vaše stranice."
+INSTL_CONFPROBLEM="Vaša konfiguracijska datoteka ili direktorij nemaju prava za zapisivanje ili je došlo do problema prilikom izrade konfiguracijske datoteke. Morati ćete ručno učitati sljedeći kod. Označite cijeli tekst kôda u prostoru za tekst, zatim ga kopirajte i dodajte u novu datoteku imena 'configuration.php', te datoteku prenesite u osnovni direktorij vaše stranice."
INSTL_DATABASE_SUPPORT="Podrška baze podataka:"
INSTL_DISPLAY_ERRORS="Prikaz grešaka"
INSTL_ERROR_DB="Postoje greške prilikom punjenja baze: %s"
@@ -244,7 +250,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="MB jezik je osnovni"
INSTL_MB_STRING_OVERLOAD_OFF="MB String Overload isključen"
INSTL_NOTICEMBLANGNOTDEFAULT="PHP mbstring jezik nije neutralan. Ovo možete namjestiti lokalno unošenjem php_value mbstring.language neutral u .htaccess."
INSTL_NOTICEMBSTRINGOVERLOAD="PHP mbstring function overload je uključen. Ovo može biti isključeno lokalno unošenjem php_value mbstring.func_overload 0 u .htaccess."
-INSTL_NOTICEYOUCANSTILLINSTALL=" Još uvijek možete nastaviti instalaciju, konfiguracijska podešavanja će biti prikazana na kraju. Morati ćete ručno kopirati kôd. Kliknite na tekst i odaberite ga, a zatim kopirajte u novu tekstualnu datoteku. Datoteku nazovite 'configuration.php' i kopirajte u osnovni direktorij stranice (root direktorij)."
+INSTL_NOTICEYOUCANSTILLINSTALL=" Još uvijek možete nastaviti instalaciju, konfiguracijska podešavanja će biti prikazana na kraju. Morati ćete ručno kopirati kôd. Označite cijeli tekst kôda, a zatim kopirajte u novu tekstualnu datoteku. Datoteku nazovite 'configuration.php' i kopirajte u osnovni direktorij stranice (root direktorij)."
INSTL_OUTPUT_BUFFERING="Izlazna međumemorija"
INSTL_PARSE_INI_FILE_AVAILABLE="INI Parser podrška"
INSTL_PHP_VERSION="PHP verzija"
@@ -299,9 +305,9 @@ JDEBUG_LANGUAGE_UNTRANSLATED_STRING="Neprevedeni nizovi"
JNONE="Ništa"
; Necessary for errors
-ADMIN_EMAIL="Admin e-mail adresa"
-ADMIN_PASSWORD="Admin lozinka"
-ADMIN_PASSWORD2="Potvrda Admin lozinke"
+ADMIN_EMAIL="E-mail administratora"
+ADMIN_PASSWORD="Lozinka administratora"
+ADMIN_PASSWORD2="Potvrda lozinke administratora"
SITE_NAME="Naziv stranice"
; Database types (allows for a more descriptive label than the internal name)
diff --git a/installation/language/hr-HR/hr-HR.xml b/installation/language/hr-HR/hr-HR.xml
index 10e7d80a80764..01189a65b3b46 100644
--- a/installation/language/hr-HR/hr-HR.xml
+++ b/installation/language/hr-HR/hr-HR.xml
@@ -2,8 +2,8 @@
Croatian (Hrvatski)
- 3.4.2
- 2012-09-18
+ 3.4.4
+ August 2015Joomla! Hrvatska teamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/it-IT/it-IT.ini b/installation/language/it-IT/it-IT.ini
index 2fba0abcea371..1e940cefc5675 100644
--- a/installation/language/it-IT/it-IT.ini
+++ b/installation/language/it-IT/it-IT.ini
@@ -101,7 +101,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Includi le Password nell'Email"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Attenzione! E' raccomandato non spedire e conservare le proprie password nelle email."
;Installing view
-INSTL_INSTALLING="Installazione in corso..."
+INSTL_INSTALLING="Installazione in corso ..."
INSTL_INSTALLING_DATABASE_BACKUP="Back up delle vecchie tabelle del database in corso"
INSTL_INSTALLING_DATABASE_REMOVE="Rimozione delle vecchie tabelle del database"
INSTL_INSTALLING_DATABASE="Creazione delle tabelle del database"
@@ -116,13 +116,19 @@ INSTL_EMAIL_NOT_SENT="Non è stato possibile inviare l'email."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Dettagli Login Amministratore"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="La cartella installation è già stata eliminata."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_DELETE="Non è stato possibile eliminare la cartella installation. Elimina la cartella manualmente."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_FOLDER_REMOVED="Cartella installation eliminata correttamente"
INSTL_COMPLETE_LANGUAGE_1="Joomla!® nella tua lingua e/o creazione automatica di un sito base in multilingua"
-INSTL_COMPLETE_LANGUAGE_DESC="Prima di eliminare la cartella installation puoi installare altre lingue. Se vuoi aggiungere altre lingue alla tua applicazione Joomla!® clicca sul seguente pulsante."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="Prima di eliminare la cartella installation puoi installare altre lingue. Se vuoi aggiungere altre lingue alla tua applicazione Joomla!® seleziona il seguente pulsante."
INSTL_COMPLETE_LANGUAGE_DESC2="Nota: avrai bisogno dell'accesso a Internet per consentire a Joomla!® di scaricare e installare le nuove lingue. Alcune configurazioni di server non consentiranno a Joomla!® di installare le lingue. Se è il tuo caso, non ti preoccupare, le potrai installare successivamente da amministrazione di Joomla!®."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_FOLDER="Elimina la cartella installation"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_INSTALLATION="RICORDATI DI RIMUOVERE COMPLETAMENTE LA CARTELLA INSTALLATION Non potrai procedere oltre questo punto se prima non avrai rimosso la cartella installation. Questa è una misura di sicurezza di Joomla!®."
INSTL_COMPLETE_TITLE="Congratulazioni, Joomla!® è stato installato correttamente."
INSTL_COMPLETE_INSTALL_LANGUAGES="Fasi opzionali: Installazione lingue"
diff --git a/installation/language/it-IT/it-IT.xml b/installation/language/it-IT/it-IT.xml
index 39adf5f17d60c..4dca8cd3250b2 100644
--- a/installation/language/it-IT/it-IT.xml
+++ b/installation/language/it-IT/it-IT.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Italian -Italy
- 3.4.2
- March 2009
+ 3.4.4
+ August 2015Italian Translation teamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/ja-JP/ja-JP.ini b/installation/language/ja-JP/ja-JP.ini
index 8379279d22969..889b497b36a65 100644
--- a/installation/language/ja-JP/ja-JP.ini
+++ b/installation/language/ja-JP/ja-JP.ini
@@ -116,14 +116,20 @@ INSTL_EMAIL_NOT_SENT="メール送信できませんでした。"
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="管理者ログイン情報"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="installationディレクトリはすでに削除されています。"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_DELETE="installationディレクトリを削除することができませんでした。手動でフォルダを削除してください。"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_FOLDER_REMOVED="installationディレクトリを正常に削除しました"
INSTL_COMPLETE_LANGUAGE_1="その他言語の追加、多言語サイトの サンプル自動作成"
-INSTL_COMPLETE_LANGUAGE_DESC="installation フォルダを削除する前に、他の言語を追加することができます。Joomla!にその他の言語を追加したい場合は、次のボタンをクリックしてください。"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="installation フォルダを削除する前に、他の言語を追加することができます。Joomla!にその他の言語を追加したい場合は、次のボタンを選択してください。"
INSTL_COMPLETE_LANGUAGE_DESC2="(注)言語のダウンロードとインストールにはインターネット環境が必要です。 一部のサーバ構成ではJoomla!での言語インストールを許可していない場合があります。その場合は、後ほどJoomla!の管理画面から行えますので心配いりません。"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_FOLDER="installationディレクトリを削除"
-INSTL_COMPLETE_REMOVE_INSTALLATION="必ずinstallationディレクトリを削除してください。 installationディレクトリを削除するまではシステムを利用できません。"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_INSTALLATION="必ずinstallationディレクトリを削除してください。 installationフォルダを削除するまではシステムを利用できません。"
INSTL_COMPLETE_TITLE="Joomla! は無事にインストールされました。"
INSTL_COMPLETE_INSTALL_LANGUAGES="言語の追加インストール"
@@ -131,7 +137,7 @@ INSTL_COMPLETE_INSTALL_LANGUAGES="言語の追加インストール"
INSTL_LANGUAGES="言語パッケージのインストール"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="言語"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="バージョン"
-INSTL_LANGUAGES_DESC="Joomla!のインターフェイスは、いくつかの言語で提供されています。チェックボックスをクリックしてお好みの言語を選択し、「次へ」ボタンをクリックしてインストールします。 (注)各言語のダウンロードしてインストールするには10秒ほどかかります。タイムアウトを回避するには、インストールする言語は3つ以内にしてください。"
+INSTL_LANGUAGES_DESC="Joomla!のインターフェイスは、いくつかの言語で提供されています。チェックボックスから選んでお好みの言語を選択し、「次へ」ボタンを選択してインストールします。 (注)各言語のダウンロードしてインストールするには10秒ほどかかります。タイムアウトを回避するには、インストールする言語は3つ以内にしてください。"
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="完了までに言語ごとに最大10秒かかります。 言語をダウンロードしてインストールが完了するまで、しばらくお待ちください..."
INSTL_LANGUAGES_MORE_LANGUAGES="もっと多くの言語をインストールするには「前へ」ボタンを押してください。"
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="インストールする言語を選択してください。さらに言語を追加する場合は、「前へ」ボタンを押して一覧から言語を選んでください。"
@@ -213,10 +219,10 @@ INSTL_ERROR_CONNECT_DB="データベースに接続できませんでした。
INSTL_STD_OFFLINE_MSG="このサイトはメンテナンスのためサービスを一時停止しています。 しばらくしてから再度ご確認ください。"
;FTP model
-INSTL_FTP_INVALIDROOT="指定したFTPディレクトリはこのJoomla!インストールのディレクトリではありません"
+INSTL_FTP_INVALIDROOT="指定したFTPフォルダはこのJoomla!インストールのフォルダではありません"
INSTL_FTP_NOCONNECT="FTPサーバに接続できませんでした"
INSTL_FTP_NODELE=""_QQ_"DELE"_QQ_" 失敗しました。"
-INSTL_FTP_NODIRECTORYLISTING="FTPサーバからディレクトリ一覧を取得できませんでした。"
+INSTL_FTP_NODIRECTORYLISTING="FTPサーバからフォルダ一覧を取得できませんでした。"
INSTL_FTP_NOLIST=""_QQ_"LIST"_QQ_" 失敗しました。"
INSTL_FTP_NOLOGIN="FTPサーバにログインできませんでした。"
INSTL_FTP_NOMKD=""_QQ_"MKD"_QQ_" 失敗しました。"
@@ -224,13 +230,13 @@ INSTL_FTP_NONLST=""_QQ_"NLST"_QQ_" 失敗しました。"
INSTL_FTP_NOPWD=""_QQ_"PWD"_QQ_" 失敗しました。"
INSTL_FTP_NORETR=""_QQ_"RETR"_QQ_" 失敗しました。"
INSTL_FTP_NORMD=""_QQ_"RMD"_QQ_" 失敗しました。"
-INSTL_FTP_NOROOT="指定したFTPディレクトリにアクセスできませんでした。"
+INSTL_FTP_NOROOT="指定したFTPフォルダにアクセスできませんでした。"
INSTL_FTP_NOSTOR=""_QQ_"STOR"_QQ_" 失敗しました。"
INSTL_FTP_NOSYST=""_QQ_"SYST"_QQ_" 失敗しました。"
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="FTPルートフォルダを自動検出できません。"
;others
-INSTL_CONFPROBLEM="設定ファイルの生成中に問題が発生しました。設定ファイルあるいはディレクトリが書き込み可能でないため、手動で次のコードをアップロードする必要があります。テキストエリアをクリックしてすべてのコードを選択状態にしてコピーし、新規テキストファイルに貼り付けて、ファイル名を「configuration.php」とし、サイトのルートフォルダにアップロードしてください。"
+INSTL_CONFPROBLEM="設定ファイルの生成中に問題が発生しました。設定ファイルまたはフォルダが書き込み可能でないため、手動で次のコードをアップロードする必要があります。テキストエリアを選択してすべてのコードを選択状態にしてコピーし、新規テキストファイルに貼り付けて、ファイル名を「configuration.php」とし、サイトのルートフォルダにアップロードしてください。"
INSTL_DATABASE_SUPPORT="Database Support:"
INSTL_DISPLAY_ERRORS="Display Errors"
INSTL_ERROR_DB="データベース %s の作成中にいくつかのエラーが発生しました"
@@ -244,7 +250,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="MB Language is Default"
INSTL_MB_STRING_OVERLOAD_OFF="MB String Overload Off"
INSTL_NOTICEMBLANGNOTDEFAULT="PHP mbstring language がneutralに設定されていません。これはローカルで .htaccess ファイルに php_value mbstring.language neutral を入力追加して設定できます。"
INSTL_NOTICEMBSTRINGOVERLOAD="PHP mbstring function overload が有効になっています。これはローカルで .htaccessファイルに php_value mbstring.func_overload 0 と入力追加してオフにできます。"
-INSTL_NOTICEYOUCANSTILLINSTALL=" このままインストールを続行すると最後に設定内容が表示されます。手動でコードをアップロードする必要があります。テキストエリアをクリックしてすべてのコードを選択状態にし、新規テキストファイルに貼り付けます。このファイル名を「configuration.php」とし、サイトのルートフォルダにアップロードします。"
+INSTL_NOTICEYOUCANSTILLINSTALL=" このままインストールを続行すると最後に設定内容が表示されます。手動でコードをアップロードする必要があります。テキストエリアを選択してすべてのコードを選択状態にし、新規テキストファイルに貼り付けます。このファイル名を「configuration.php」とし、サイトのルートフォルダにアップロードします。"
INSTL_OUTPUT_BUFFERING="Output Buffering"
INSTL_PARSE_INI_FILE_AVAILABLE="INI Parser Support"
INSTL_PHP_VERSION="PHPのバージョン"
diff --git a/installation/language/ja-JP/ja-JP.xml b/installation/language/ja-JP/ja-JP.xml
index 316ccc787a82b..5c1fcbba97fc2 100644
--- a/installation/language/ja-JP/ja-JP.xml
+++ b/installation/language/ja-JP/ja-JP.xml
@@ -1,11 +1,12 @@
+ version="3.4" client="installation">
Japanese 日本語 (Japan)
- 3.4.2
- 2012-09-24
- Japanese Translation Team
+ 3.4.4
+ 2015-09-07
+ JOOMLA.JP
+ admin@joomla.org
+ www.joomla.orgCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/km-KH/km-KH.ini b/installation/language/km-KH/km-KH.ini
index 98ea43c60938e..a65baadf7388e 100644
--- a/installation/language/km-KH/km-KH.ini
+++ b/installation/language/km-KH/km-KH.ini
@@ -2,8 +2,8 @@
; Copyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
; License GNU General Public License version 2 or later; see LICENSE.txt
; Note : All ini files need to be saved as UTF-8
-; Stepbar
+; Stepbar
INSTL_STEP_COMPLETE_LABEL="បញ្ចប់"
INSTL_STEP_DATABASE_LABEL="ឃ្លាំងទិន្នន័យ"
INSTL_STEP_DEFAULTLANGUAGE_LABEL="ជ្រើសភាសាលំនាំដើម"
@@ -107,21 +107,27 @@ INSTL_EMAIL_HEADING="ខាងក្រោមនេះអ្នកអ
INSTL_EMAIL_NOT_SENT="អ៊ីមែលពុំអាចផ្ញើចេញ ។"
; Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="សេចក្ដីលម្អិតកំណត់ត្រាចូលអ្នកគ្រប់គ្រង"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="ថតឯកសារដំឡើងបានលុបចេញរួចហើយ ។"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_DELETE="ថតឯកសារដំឡើងពុំអាចលុបបាន ។ សូមលុបថតឯកសារនេះចេញដោយដៃ ។"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_FOLDER_REMOVED="ថតឯកសារដំឡើងលុបចេញបានដោយជោគជ័យ ។"
INSTL_COMPLETE_LANGUAGE_1="Joomla! ក្នុងភាសាផ្ទាល់ខ្លួនអ្នក និង/ឬ ការបង្កើតស្ថានបណ្ដាញពហុភាសាកំណើតមូលដ្ឋាន"
-INSTL_COMPLETE_LANGUAGE_DESC="មុននឹងលុបថតដំឡើងចេញ អ្នកអាចដំឡើងភាសាបន្ថែមបាន។ ប្រសិនបើអ្នកចង់បន្ថែមភាសាផ្សេងចូលក្នុងកម្មវិធី Joomla! សូមចុចប៊ូតុងខាងក្រោម ។"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="មុននឹងលុបថតដំឡើងចេញ អ្នកអាចដំឡើងភាសាបន្ថែមបាន។ ប្រសិនបើអ្នកចង់បន្ថែមភាសាផ្សេងចូលក្នុងកម្មវិធី Joomla! សូមជ្រើសរើសប៊ូតុងខាងក្រោម ។"
INSTL_COMPLETE_LANGUAGE_DESC2="ចំណាំ៖ អ្នកត្រូវការចូលដំណើរការអ៊ីនធឺណិតសម្រាប់ Joomla! ទាញយក និងដំឡើងភាសាថ្មីៗ។ ការកំណត់រចនាសម្ព័ន្ធរបស់ម៉ាស៊ីនបម្រើមួយចំនួនពុំអនុញ្ញាត Joomla! ឲ្យដំឡើងភាសាបានឡើយ។ ប្រសិនបើ អ្នកស្ថិតក្នុងករណីនេះ ពុំបារម្ភអ្វី អ្នកនឹងអាចដំឡើងភាសាទាំងនោះ ក្រោយប្រើប្រាស់កម្មវិធីគ្រប់គ្រង Joomla! ឆាកក្រោយ ។"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_FOLDER="លុបថតដំឡើង"
-INSTL_COMPLETE_REMOVE_INSTALLATION="សូមចងចាំថាត្រូវលុបថតឯកសារដំឡើង (installation) ចេញ។ អ្នកនឹងពុំអាចបន្តផុតពីចំណុចនេះទេ លុះត្រាតែថតដំឡើងនេះត្រូវបានលុបចេញ ។ នេះជាមុខងារសុវត្ថិភាពរបស់ Joomla! ។"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_INSTALLATION="សូមចាំថាត្រូវលុបថតឯកសារដំឡើង (installation) ចេញ ។ អ្នកនឹងពុំអាចបន្តផុតពីចំណុចនេះទេ លុះត្រាតែថតដំឡើង installation នេះត្រូវបានលុបចេញ ។ នេះជាមុខងារសុវត្ថិភាពរបស់ Joomla! ។"
INSTL_COMPLETE_TITLE="អបអរសាទរលោកអ្នក! ឥឡូវនេះ Joomla! បានដំឡើងរួចរាល់ហើយ ។"
INSTL_COMPLETE_INSTALL_LANGUAGES="ជំហានបន្ថែម៖ ដំឡើងភាសា"
; Languages view
INSTL_LANGUAGES="ដំឡើងកញ្ចប់ភាសា"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="ភាសា"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="កំណែ"
-INSTL_LANGUAGES_DESC="ចំណុចប្រទាក់ Joomla មានជាច្រើនភាសា។ សូមជ្រើសភាសាអ្នកពេញចិត្តដោយចុចក្នុងប្រអប់ធីក រួចដំឡើងភាសាទាំងនោះដោយចុចលើប៊ូតុង 'បន្ទាប់' ។ ចំណាំ៖ ប្រតិបត្តិការនេះនឹងចំណាយពេលប្រហែល១០នាទីដើម្បីទាញយក និងដំឡើងភាសានីមួយៗ ។ ដើម្បីជៀសវាងអស់ពេល សូមជ្រើសដំឡើងកុំឲ្យលើសពី៣ភាសា ។"
+INSTL_LANGUAGES_DESC="ចំណុចប្រទាក់ Joomla មានជាច្រើនភាសា។ សូមជ្រើសភាសាអ្នកពេញចិត្តដោយជ្រើសរើសបណ្ដាប្រអប់ធីក រួចដំឡើងភាសាទាំងនោះដោយជ្រើសប៊ូតុង 'បន្ទាប់' ។ ចំណាំ៖ ប្រតិបត្តិការនេះនឹងចំណាយពេលប្រហែល១០នាទីដើម្បីទាញយក និងដំឡើងភាសានីមួយៗ ។ ដើម្បីជៀសវាងអស់ពេល សូមជ្រើសដំឡើងកុំឲ្យលើសពី៣ភាសា ។"
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="ប្រតិបត្តិការនេះអាចចំណាយពេលដល់ទៅ១០នាទីក្នុងភាសានីមួយៗ ដើម្បីបញ្ចប់ សូមរង់ចាំ ពេលយើងទាញយក និងដំឡើងភាសា..."
INSTL_LANGUAGES_MORE_LANGUAGES="ចុចប៊ូតុង 'មុន' ប្រសិនបើ អ្នកចង់ដំឡើងភាសាផ្សេងទៀត ។"
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="ពុំទាន់បានជ្រើសភាសាណាមួយដើម្បីដំឡើងនៅឡើយ ។ ប្រសិនបើ អ្នកត្រូវការដំឡើងភាសាផ្សេងទៀត សូមចុចប៊ូតុង 'មុន' រួចជ្រើសភាសាចង់បានពីបញ្ជីនោះ ។"
@@ -212,7 +218,7 @@ INSTL_FTP_NOSTOR="អនុគមន៍ "STOR" បានបរា
INSTL_FTP_NOSYST="អនុគមន៍ "SYST" បានបរាជ័យ ។"
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="ពុំអាចរកឃើញដោយស្វ័យប្រវត្តិនូវថតឫស FTP ។"
; others
-INSTL_CONFPROBLEM="ឯកសាររចនាសម្ព័ន្ធ ឬថតឯកសាររបស់អ្នកមិនអាចសរសេរបានទេ ឬមានកំហុសពេលបង្កើតឯកសាររចនាសម្ព័ន្ធនេះ ។ អ្នកត្រូវផ្ទុកឡើងនូវកូដខាងក្រោមដោយដៃ។ ចុចក្នុងតំបន់អត្ថបទដើម្បីជ្រើសយកកូដទាំងអស់ហើយបិទភ្ជាប់ទៅក្នុងឯកសារអត្ថបទថ្មីមួយ។ ដាក់ឈ្មោះឯកសារនេះជា 'configuration.php' រួចផ្ទុកវាឡើងទៅកាន់ថតឫសតំបន់បណ្ដាញរបស់អ្នក ។"
+INSTL_CONFPROBLEM="ឯកសារ ឬ ថតឯកសាររចនាសម្ព័ន្ធរបស់អ្នកមិនអាចសរសេរបានទេ ឬ មានកំហុសពេលបង្កើតឯកសាររចនាសម្ព័ន្ធនេះ ។ អ្នកត្រូវផ្ទុកឡើងនូវកូដខាងក្រោមដោយដៃ ។ ជ្រើសក្នុងតំបន់អត្ថបទ ដើម្បីជ្រើសយកកូដទាំងអស់ រួចបិទភ្ជាប់ទៅក្នុងឯកសារអត្ថបទថ្មីមួយ ។ ដាក់ឈ្មោះឯកសារនេះជា 'configuration.php' រួចផ្ទុកវាឡើងទៅកាន់ថតឫសនៃតំបន់បណ្ដាញរបស់អ្នក ។"
INSTL_DATABASE_SUPPORT="គាំទ្រឃ្លាំងទិន្នន័យ៖"
INSTL_DISPLAY_ERRORS="បង្ហាញកំហុស"
INSTL_ERROR_DB="មានកំហុសពេលជំរឿនឃ្លាំងទិន្នន័យ៖ %s"
@@ -226,7 +232,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="MB ពហុបៃភាសា ជាលំ
INSTL_MB_STRING_OVERLOAD_OFF="MB ពហុបៃខ្សែអក្សរ ផ្ទុកលើសបិទ"
INSTL_NOTICEMBLANGNOTDEFAULT="ភាសា PHP mbstring កុំកំណត់ជាអព្យាក្រឹត 'neutral' ។ នេះអាចកំណត់បានក្នុងមូលដ្ឋានដោយបញ្ចូល php_value mbstring.language neutralក្នុងឯកសារ .htaccess របស់អ្នក ។"
INSTL_NOTICEMBSTRINGOVERLOAD="អនុគមន៍ PHP mbstring ផ្ទុកលើសបានកំណត់យក ។ នេះអាចបិទក្នុងមូលដ្ឋានបានដោយបញ្ចូលphp_value mbstring.func_overload 0 ទៅក្នុងឯកសារ .htaccess របស់អ្នក ។"
-INSTL_NOTICEYOUCANSTILLINSTALL=" អ្នកនៅតែអាចបន្តដំឡើងដោយការកំណត់រចនាសម្ព័ន្ធនឹងបង្ហាញនៅចុងបញ្ចប់ ។ អ្នកត្រូវផ្ទុកកូដឡើងដោយដៃ ។ ចុចក្នុងតំបន់អត្ថបទ ដើម្បីបន្លិចកូដទាំងអស់រួចបិទភ្ជាប់ចូលក្នុងឯកសារអត្ថបទថ្មីមួយ ។ ដាក់ឈ្មោះឯកសារជា 'configuration.php' រួចផ្ទុកវាឡើងទៅថតឫសរបស់បណ្ដាញអ្នក ។"
+INSTL_NOTICEYOUCANSTILLINSTALL=" អ្នកនៅតែអាចបន្តដំឡើងដោយការកំណត់រចនាសម្ព័ន្ធនឹងបង្ហាញនៅចុងបញ្ចប់ ។ អ្នកត្រូវផ្ទុកកូដឡើងដោយដៃ ។ ជ្រើសតំបន់អត្ថបទ ដើម្បីបន្លិចកូដទាំងអស់រួចបិទភ្ជាប់ចូលក្នុងឯកសារអត្ថបទថ្មីមួយ ។ ដាក់ឈ្មោះឯកសារជា 'configuration.php' រួចផ្ទុកវាឡើងទៅថតឫសរបស់បណ្ដាញអ្នក ។"
INSTL_OUTPUT_BUFFERING="បញ្ចេញទ្រនាប់"
INSTL_PARSE_INI_FILE_AVAILABLE="គាំទ្រប្រដាប់វិភាគ INI"
INSTL_PHP_VERSION="កំណែ PHP"
diff --git a/installation/language/km-KH/km-KH.xml b/installation/language/km-KH/km-KH.xml
index 27d5ed1cfa96b..d02bdf8173675 100644
--- a/installation/language/km-KH/km-KH.xml
+++ b/installation/language/km-KH/km-KH.xml
@@ -1,8 +1,8 @@
Khmer ភាសាខ្មែរ (Cambodia)
- 3.4.2
- July 2015
+ 3.4.4
+ August 2015Khmer Translation Teaminfo@km-kh.orgwww.km-kh.org
diff --git a/installation/language/ko-KR/ko-KR.ini b/installation/language/ko-KR/ko-KR.ini
index 7fe1af1c39d59..c047cd79844b9 100644
--- a/installation/language/ko-KR/ko-KR.ini
+++ b/installation/language/ko-KR/ko-KR.ini
@@ -66,12 +66,12 @@ INSTL_FTP_PASSWORD_DESC="주의! 이 칸을 비워두고 파일을 전송할때
;Site View
INSTL_SITE="메인 설정"
-INSTL_ADMIN_EMAIL_LABEL="Admin Email"
+INSTL_ADMIN_EMAIL_LABEL="관리자 이메일"
INSTL_ADMIN_EMAIL_DESC="당신의 이메일 주소를 입력하세요. 이것은 웹사이트의 슈퍼 관리자의 메일 주소가 될 것입니다."
-INSTL_ADMIN_PASSWORD_LABEL="Admin 패스워드"
+INSTL_ADMIN_PASSWORD_LABEL="관리자 비밀번호"
INSTL_ADMIN_PASSWORD_DESC="아래 필드에 슈퍼관리자 계정을 설정을 위한 비밀번호를 설정하고 확인해주시기 바랍니다."
-INSTL_ADMIN_PASSWORD2_LABEL="Admin 패스워드 확인"
-INSTL_ADMIN_USER_LABEL="Admin 사용자이름"
+INSTL_ADMIN_PASSWORD2_LABEL="관리자 비밀번호 확인"
+INSTL_ADMIN_USER_LABEL="관리자 사용자이름"
INSTL_ADMIN_USER_DESC="기본 사용자이름 admin은 변경할 수도 있습니다."
INSTL_SITE_NAME_LABEL="사이트 이름"
INSTL_SITE_NAME_DESC="Joomla!사이트의 이름을 입력하세요."
@@ -103,7 +103,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="이메일에 비밀번호를 포함"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="주의! 이메일에 당신의 비밀번호를 저장하고 전송하는 것을 권장하지 않습니다."
;Installing view
-INSTL_INSTALLING="설치..."
+INSTL_INSTALLING="설치 ..."
INSTL_INSTALLING_DATABASE_BACKUP="구(舊) 데이터베이스 테이블의 백업"
INSTL_INSTALLING_DATABASE_REMOVE="구(舊) 데이터베이스 테이블의 제거"
INSTL_INSTALLING_DATABASE="데이터베이스 테이블의 생성"
@@ -118,14 +118,20 @@ INSTL_EMAIL_NOT_SENT="이메일을 전송할 수 없습니다."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Administration 로그인 세부항목"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="설치(installation)폴더가 이미 삭제되었습니다."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_DELETE="설치(Installation)폴더를 삭제할 수 없습니다. 수동으로 폴더를 삭제하십시오."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_FOLDER_REMOVED="설치(Installation)폴더가 성공적으로 제거되었습니다."
INSTL_COMPLETE_LANGUAGE_1="당신의 사이트에 필요한 Joomla! 언어팩을 찾으세요?"
-INSTL_COMPLETE_LANGUAGE_DESC="설치 폴더를 삭제하기 전에 다른 언어들을 설치할 수 있습니다. 다른 언어를 추가하시려면, 다음 버튼을 클릭하세요."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="설치 폴더를 삭제하기 전에 다른 언어들을 설치할 수 있습니다. 다른 언어를 추가하시려면, 다음 버튼을 선택하세요."
INSTL_COMPLETE_LANGUAGE_DESC2="알림: Joomla!에게 새로운 언어의 다운로드와 설치를 허용하려면 인터넷 접속이 필요합니다. 어떤 서버는 Joomla!의 언어 설치를 허용하지 않도록 설정되어 있습니다. 만약 서버설정이 그렇게 되어있다면, 차후에 Joomla!관리자를 사용하여 설치할 수 있으니 걱정하지 마세요."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_FOLDER="설치(installation)폴더 삭제"
-INSTL_COMPLETE_REMOVE_INSTALLATION="완벽하게 설치(INSTALLATION)폴더를 삭제해 주시기 바랍니다. 설치(installation)디렉토리가 제거되기 전까는 이 시점 이후로 진행할 수 없을 것입니다. 이것은 Joomla!의 보안기능 입니다."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_INSTALLATION="설치(INSTALLATION) 폴더를 완전히 삭제해 주세요. 설치 폴더가 제거되지 않으면 이후를 진행할 수 없습니다. 이것은 Joomla!의 보안기능 입니다."
INSTL_COMPLETE_TITLE="축하합니다! Joomla!가 설치되었습니다."
INSTL_COMPLETE_INSTALL_LANGUAGES="추가 단계: 언어 설치"
@@ -133,7 +139,7 @@ INSTL_COMPLETE_INSTALL_LANGUAGES="추가 단계: 언어 설치"
INSTL_LANGUAGES="언어 패키지 설치"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="언어"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="버전"
-INSTL_LANGUAGES_DESC="Joomla 인터페이스는 여러가지 언어로 사용할 수 있습니다. 체크박스에서 당신에게 적합한 언어를 클릭하여 고르세요. 그리고 다음 버튼을 클릭하여 설치합니다. 알림: 이 과정(operation)은 모든 언어의 다운로드와 설치를 위해 약 5초가 소요될 것입니다. 설치시 시간초과를 피하기 위해 3가지 이상의 언어를 선택하지 마시기 바랍니다."
+INSTL_LANGUAGES_DESC="Joomla 인터페이스는 여러가지 언어로 사용할 수 있습니다. 체크박스에서 당신에게 적합한 언어를 선택하여 고르세요. 그리고 다음 버튼을 선택하여 설치합니다. 알림: 이 과정(operation)은 모든 언어의 다운로드와 설치를 위해 약 5초가 소요될 것입니다. 설치시 시간초과를 피하기 위해 3가지 이상의 언어를 선택하지 마시기 바랍니다."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="이 과정(operation)은 하나의 언어설치가 완료되는데 약 10초 정도 소요될 것입니다. 언어를 다운로드하고 설치하는 동안 기다려주시기 바랍니다...."
INSTL_LANGUAGES_MORE_LANGUAGES="더 많은 언어들을 설치하려면 '이전'버튼을 누르세요."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="언어를 선택해 주세요. 다른 언어들을 설치할 필요가 없다면 '이전'버튼을 클릭해 주시기 바랍니다."
@@ -212,10 +218,10 @@ INSTL_ERROR_CONNECT_DB="데이터베이스에 접속할 수 없습니다. 연결
INSTL_STD_OFFLINE_MSG="이 사이트는 유지보수를 위해 접속되지 않습니다. 잠시후에 다시 확인해 주시기 바랍니다."
;FTP model
-INSTL_FTP_INVALIDROOT="특정 FTP 디렉토리가 Joomla! 설치 디렉토리가 아닙니다."
+INSTL_FTP_INVALIDROOT="지정된 FTP 폴더는 Joomla! 설치 디렉토리가 아닙니다."
INSTL_FTP_NOCONNECT="FTP 서버에 접속할 수 없습니다."
INSTL_FTP_NODELE=""_QQ_"DELE"_QQ_" 기능 실패"
-INSTL_FTP_NODIRECTORYLISTING="FTP서버로 부터 디렉토리 목록을 검색할 수 없습니다."
+INSTL_FTP_NODIRECTORYLISTING="FTP서버로 부터 폴더 목록을 검색할 수 없습니다."
INSTL_FTP_NOLIST=""_QQ_"LIST"_QQ_" 기능 실패"
INSTL_FTP_NOLOGIN="FTP 서버에 로그인 할수 없습니다."
INSTL_FTP_NOMKD=""_QQ_"MKD"_QQ_" 기능 실패"
@@ -229,7 +235,7 @@ INSTL_FTP_NOSYST=""_QQ_"SYST"_QQ_" 기능 실패"
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="FTP root 폴더를 자동 탐색 할 수 없습니다."
;others
-INSTL_CONFPROBLEM="설정 파일이나 디렉토리에 쓰기 권한이 없습니다. 또는 설정 파일을 만드는데 문제가 발생했습니다. 당신은 손으로 직접 다음의 코드를 업로드 해야합니다. 모든 코드를 강조 텍스트영역에서 클릭한 다음 새 텍스트 파일에 붙여넣습니다. 이 파일 'configuration.php'를 이름과 사이트 루트 폴더에 업로드 하십시오."
+INSTL_CONFPROBLEM="설정 파일이나 폴더에 쓰기 권한이 없습니다. 또는 설정 파일을 만드는데 문제가 발생했습니다. 당신은 손으로 직접 다음의 코드를 업로드 해야합니다. 모든 코드를 강조 텍스트영역에서 클릭한 다음 새 텍스트 파일에 붙여넣습니다. 이 파일 'configuration.php'를 이름과 사이트 루트 폴더에 업로드 하십시오."
INSTL_DATABASE_SUPPORT="데이터베이스 지원:"
INSTL_DISPLAY_ERRORS="표시 오류"
INSTL_ERROR_DB="데이터베이스를 채우는 동안 몇몇 오류가 발생했습니다.: %s"
@@ -243,7 +249,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="MB 언어가 기본값입니다."
INSTL_MB_STRING_OVERLOAD_OFF="MB String Overload 꺼짐"
INSTL_NOTICEMBLANGNOTDEFAULT="PHP mbstring 언어는 중립으로 설정되지 않습니다. 이것은 .htaccess파일에 php_value mbstring.language neutral을 입력하여 로컬로 설정할 수 있습니다."
INSTL_NOTICEMBSTRINGOVERLOAD="PHP mbstring 기능 과부하가 설정됩니다. 이것은 .htaccess파일에 php_value mbstring.language neutral을 입력하여 로컬로 기능을 정지시킬 수 있습니다."
-INSTL_NOTICEYOUCANSTILLINSTALL=" 마지막에 표시되는 구성설정으로서의 설정을 계속할 수 있습니다. 당신은 수동으로 코드를 업로드해야 할 것입니다. 모든 코드를 강조 텍스트 영역에서 클릭한 다음 새 텍스트 파일에 붙여넣으십시오. 이 파일 'configuration.php'를 이름과 사이트 루트 폴더에 업로드 하십시오."
+INSTL_NOTICEYOUCANSTILLINSTALL=" 마지막에 표시되는 구성설정으로서의 설정을 계속할 수 있습니다. 당신은 수동으로 코드를 업로드해야 할 것입니다. 모든 코드를 강조 텍스트 영역에서 선택한 다음 새 텍스트 파일에 붙여넣으십시오. 이 파일 'configuration.php'를 이름과 사이트 루트 폴더에 업로드 하십시오."
INSTL_OUTPUT_BUFFERING="Output Buffering"
INSTL_PARSE_INI_FILE_AVAILABLE="INI Parser 지원"
INSTL_PHP_VERSION="PHP 버전"
@@ -297,9 +303,9 @@ JDEBUG_LANGUAGE_UNTRANSLATED_STRING="번역되지 않은 문자열"
JNONE="없음"
;Necessary for errors
-ADMIN_EMAIL="Admin 이메일"
-ADMIN_PASSWORD="Admin 비밀번호"
-ADMIN_PASSWORD2="Admin 비밀번호 확인"
+ADMIN_EMAIL="관리자 이메일"
+ADMIN_PASSWORD="관리자 비밀번호"
+ADMIN_PASSWORD2="관리자 비밀번호 확인"
SITE_NAME="사이트 이름"
;Database types (allows for a more descriptive label than the internal name)
diff --git a/installation/language/ko-KR/ko-KR.xml b/installation/language/ko-KR/ko-KR.xml
index 86140ec9c2f5f..67d7cd2e7a387 100644
--- a/installation/language/ko-KR/ko-KR.xml
+++ b/installation/language/ko-KR/ko-KR.xml
@@ -1,11 +1,11 @@
Korean (Republic of Korea)
- 3.2.0
- SEPTEMBER 2012
- kangc
+ 3.4.4
+ August 2015
+ Korean translation teamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
@@ -18,5 +18,4 @@
0
-
-
+
\ No newline at end of file
diff --git a/installation/language/lv-LV/lv-LV.ini b/installation/language/lv-LV/lv-LV.ini
index 5956a63cac87e..92883b88ab240 100644
--- a/installation/language/lv-LV/lv-LV.ini
+++ b/installation/language/lv-LV/lv-LV.ini
@@ -102,7 +102,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Iekļaut paroles e-pasta vēstulē"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Uzmanību! Nav ieteicams sūtīt vai glabāt paroles e-pasta vēstulēs."
;Installing view
-INSTL_INSTALLING="Notiek instalācija..."
+INSTL_INSTALLING="Notiek instalācija ..."
INSTL_INSTALLING_DATABASE_BACKUP="Veco datu bāzes tabulu pārsaukšana"
INSTL_INSTALLING_DATABASE_REMOVE="Veco datu bāzes tabulu dzēšana"
INSTL_INSTALLING_DATABASE="Datu bāzes tabulu izveide"
@@ -121,7 +121,7 @@ INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Instalācijas mape jau ir izdzēsta
INSTL_COMPLETE_ERROR_FOLDER_DELETE="Instalācijas mapi nav iespējams izdzēst. Jums ir jāizdzēš tā pašam."
INSTL_COMPLETE_FOLDER_REMOVED="Instalācijas mape ir izdzēsta."
INSTL_COMPLETE_LANGUAGE_1="Joomla tulkojuma pakotne latviešu valodā, vai automātiska daudzvalodu vietnes izveide"
-INSTL_COMPLETE_LANGUAGE_DESC="Pirms instalācijas direktorijas izdzēšanas ir iespējams instalēt nepieciešamās tulkojuma pakotnes. Ja vēlaties pievienot kādu tulkojumu, klikšķiniet uz pogas."
+INSTL_COMPLETE_LANGUAGE_DESC="Pirms instalācijas direktorijas izdzēšanas ir iespējams instalēt nepieciešamās tulkojuma pakotnes. Ja vēlaties pievienot kādu tulkojumu, izvēlieties sekojošo pogu."
INSTL_COMPLETE_LANGUAGE_DESC2="Ievērojiet: lai būtu iespējams ielādēt papildus tulkojuma pakotnes ir nepieciešamas Internet savienojums. Dažos servera konfigurācijas gadījumos nav iespējams instalācijas laikā instalēt papildus tulkojumus,tomēr uztraukumam nav pamata, jo to varēs izdarīt arī vēlāk administrācijas panelī."
INSTL_COMPLETE_REMOVE_FOLDER="Dzēst instalācijas mapi"
INSTL_COMPLETE_REMOVE_INSTALLATION="IEVĒROJIET, PĒC INSTALĀCIJAS JĀIZDZĒŠ "_QQ_"install"_QQ_" DIREKTORIJA. Vietne nebūs pieejama, kamēr instalācijas direktorija netiks dzēsta. Šī ir Joomla drošības funkcija."
@@ -231,7 +231,7 @@ INSTL_FTP_NOSYST="Komandas "_QQ_"SYST"_QQ_" izpilde neizdevās."
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Nevar automātiski noteikt FTP saknes direktoriju"
;others
-INSTL_CONFPROBLEM="Nav rakstīšanas tiesību konfigurācijas failā vai nav tiesību rakstīt direktorijā, kur atrodas konfigurācijas fails. Jums vajadzēs uzlādēt sekojošo kodu pašrocīgi. Ieklikšķiniet teksta laukumā lai iezīmētu visu tekstu.Pēc tam saglabājiet to failā configuration.php un ielādējiet šo failu vietnes saknes direktorijā."
+INSTL_CONFPROBLEM="Nav rakstīšanas tiesību konfigurācijas failā vai nav tiesību rakstīt direktorijā, kur atrodas konfigurācijas fails. Jums vajadzēs uzlādēt sekojošo kodu pašrocīgi. Iezīmējiet tekstu laukumā, pēc tam saglabājiet to failā configuration.php un ielādējiet šo failu vietnes saknes direktorijā."
INSTL_DATABASE_SUPPORT="Datu bāzu atbalsts:"
INSTL_DISPLAY_ERRORS="Rādīt kļūdu paziņojumus"
INSTL_ERROR_DB="Kļūda(s) pievienojot informāciju datu bāzei: %s"
@@ -245,7 +245,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="Daudz bitu kodējums ir noklusētais"
INSTL_MB_STRING_OVERLOAD_OFF="Daudz bitu virkņu pārlādēšana atslēgta"
INSTL_NOTICEMBLANGNOTDEFAULT="PHP mbstring valoda nav iestatīta kā 'neutral'. To var iestatīt ierakstot 'php_value mbstring.language neutral' .htaccess failā, kas atrodas vietnes saknes direktorijā."
INSTL_NOTICEMBSTRINGOVERLOAD="PHP mbstring valoda ir ieslēgta. To var atslēgt ierakstot 'php_value mbstring.func_overload 0' .htaccess failā, kas atrodas vietnes saknes direktorijā."
-INSTL_NOTICEYOUCANSTILLINSTALL=" Jūs variet turpināt instalāciju un tās beigās tiks parādīts konfigurācijas faila saturs. Šis kods būs jāielādē uz servera. Klikšķiniet teksta laukumā, lai iezīmētu visu tekstu. Nokopējiet to un saglabājiet failā 'configuration.php' un ielādējiet vietnes saknes direktorijā."
+INSTL_NOTICEYOUCANSTILLINSTALL=" Jūs variet turpināt instalāciju un tās beigās tiks parādīts konfigurācijas faila saturs. Šis kods būs jāielādē uz servera. Izvēlieties tekstu laukumā, lai iezīmētu visu tekstu. Nokopējiet to un saglabājiet failā 'configuration.php' un ielādējiet vietnes saknes direktorijā."
INSTL_OUTPUT_BUFFERING="Izvades buferis"
INSTL_PARSE_INI_FILE_AVAILABLE="INI parsētāja atbalsts"
INSTL_PHP_VERSION="PHP versija"
diff --git a/installation/language/lv-LV/lv-LV.xml b/installation/language/lv-LV/lv-LV.xml
index 39bf420b8de73..8588bf758938c 100644
--- a/installation/language/lv-LV/lv-LV.xml
+++ b/installation/language/lv-LV/lv-LV.xml
@@ -1,10 +1,10 @@
Latvian (LV)
- 3.2.0
- 16.09.2012
+ 3.4.4
+ August 2015Latvian Translation TeamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/mk-MK/mk-MK.ini b/installation/language/mk-MK/mk-MK.ini
index d8a7ab272ff18..238472f660eeb 100644
--- a/installation/language/mk-MK/mk-MK.ini
+++ b/installation/language/mk-MK/mk-MK.ini
@@ -17,11 +17,14 @@ INSTL_SELECT_LANGUAGE_TITLE="Одберете јазик"
INSTL_WARNJAVASCRIPT="Внимание! JavaScript мора да е дозволено за правилна инсталација на Joomla!"
INSTL_WARNJSON="На вашата PHP инсталација треба да е вклучен JSON за да може да биде инсталирана Joomla!"
+
;Preinstall view
INSTL_PRECHECK_TITLE="Проверка пред инсталација"
INSTL_PRECHECK_DESC="Ако нешто од ова не е поддржано (означено со Не) направете нешто за да го корегирате тоа. Не можете да ја инсталирате вашата Joomla! додека не се задоволат условите подолу."
+
INSTL_PRECHECK_RECOMMENDED_SETTINGS_TITLE="Препорачани поставки:"
INSTL_PRECHECK_RECOMMENDED_SETTINGS_DESC="Овие поставки се препорачани за PHP за да се обезбеди целосна компатибилност со Joomla. Како и да е, Joomla! сепак ќе функционира и ако вашите поставки не се совпаѓаат со препорачаниве."
+
INSTL_PRECHECK_DIRECTIVE="Директива"
INSTL_PRECHECK_RECOMMENDED="Препорачано"
INSTL_PRECHECK_ACTUAL="Моментно"
@@ -31,24 +34,31 @@ INSTL_DATABASE="Поставки за базата на податоци (DB)"
INSTL_DATABASE_HOST_DESC="Ова е најчесто "localhost""
INSTL_DATABASE_HOST_LABEL="Име на домаќин"
INSTL_DATABASE_NAME_DESC="Некои домаќини дозволуваат само одредени имиња за DB по сајт. Во таков случај користете префикс на табелата за да го разликувате Joomla! сајтот."
+
INSTL_DATABASE_NAME_LABEL="Име на базата на податоци"
INSTL_DATABASE_NO_SCHEMA="Не постои шема на база на податоци за овој тип на база."
+
INSTL_DATABASE_OLD_PROCESS_DESC="Сите постојни табели од поранешни инсталации на Joomla! ќе бидат заменети"
INSTL_DATABASE_OLD_PROCESS_LABEL="Стари бази на податоци"
INSTL_DATABASE_PASSWORD_DESC="Заради безбедност на сајтот користењето шифра за базата на податоци е задолжително"
+
INSTL_DATABASE_PASSWORD_LABEL="Шифра"
INSTL_DATABASE_PREFIX_DESC="Одберете префикс за табелите во базата на податоци или користете случајно генериран. Идеално, три или четири карактери долг, содржи само латинични алфанумерички карактери, и МОРА да завршува со долна црта.Бидете сигурни дека одбраниот префикс не се користи од други табели."
+
INSTL_DATABASE_PREFIX_LABEL="Префикс на табели"
INSTL_DATABASE_PREFIX_MSG="Префиксот за табелите во базата на податоци мора да започнува со буква, која ќе биде следена од алфанумерички карактери и со долна црта"
+
INSTL_DATABASE_TYPE_DESC="Ова е веројатно "MySQLi""
INSTL_DATABASE_TYPE_LABEL="Тип на база на податоци"
INSTL_DATABASE_USER_DESC="Нешто како "_QQ_"root"_QQ_" или корисничко име дадено до вашиот домаќин"
+
INSTL_DATABASE_USER_LABEL="Корисничко име"
;FTP view
INSTL_AUTOFIND_FTP_PATH="Автоматско барање FTP патека"
INSTL_FTP="FTP конфигурација"
INSTL_FTP_DESC="
На некои сервери можеби ќе треба да побарате FTP дозволи пред да можете да ја завршите инсталацијата. Ако имате проблеми при инсталацијата без овие дозволи, проверете кај вашиот домаќин дали овие дозволи се неопходни.
Заради безбедносни причини, најдобро е да се направи посебна FTP корисничка сметка со пристап единствено до Joomla! папките а не и до целиот веб-сервер. Вашиот домаќин може да ви помогне околу ова.
Забелешка: Ако инсталирате на оперативниот систем Windows, користењето FTP не е пожелно.
"
+
INSTL_FTP_ENABLE_LABEL="Вклучи FTP"
INSTL_FTP_HOST_LABEL="FTP домаќин"
INSTL_FTP_PASSWORD_DESC="Внимание! Препорачливо е тука да оставите празно и да ја внесувате вашата FTP шифра при секој трансфер на датотеки."
@@ -62,6 +72,9 @@ INSTL_FTP_USER_LABEL="FTP корисничко име"
INSTL_FTP_USER_DESC="Внимание! Препорачливо е тука да оставите празно и да го внесувате вашето FTP корисничко име при секој трансфер на датотеки."
INSTL_VERIFY_FTP_SETTINGS="Верификација на FTP поставките"
+
+
+
;Site View
INSTL_ADMIN_EMAIL_LABEL="Администраторска е-пошта"
INSTL_ADMIN_EMAIL_DESC="Внесете администраторска е-пошта. Оваа е-пошта ќе биде е-пошта на супер-администраторот на веб сајтот."
@@ -97,9 +110,11 @@ INSTL_FINALISATION="Финализација"
INSTL_SUMMARY_INSTALL="Инсталација"
INSTL_SUMMARY_EMAIL_LABEL="Конфигурација по е-порака"
INSTL_SUMMARY_EMAIL_DESC="Одберете за да се пратат во е-порака конфигурациските поставки %s по инсталирањето."
+
INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Вметни шифри во е-порака"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Внимание! Не е препорачано да ги праќате и чувате вашите шифри во е-пораки."
+
;Installing view
INSTL_INSTALLING="Инсталирање..."
INSTL_INSTALLING_DATABASE_BACKUP="Бекапирање на старите табели од базата"
@@ -112,33 +127,45 @@ INSTL_INSTALLING_EMAIL="Испраќање е-порака до %s"
;Email
INSTL_EMAIL_SUBJECT="Конфигурациски детали: %s"
INSTL_EMAIL_HEADING="Подолу ги имате конфигурациските детали за штотуку создадениот Joomla! сајт:"
+
INSTL_EMAIL_NOT_SENT="Е-пораката не може да биде пратена."
;Complete view
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Детали за администраторска најава"
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Папката installation е веќе избришана."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Инсталациската папка не може да биде избришана. Избришете ја папката рачно."
-INSTL_COMPLETE_FOLDER_REMOVED="Инсталациската папка е успешно избришана."
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="Папка installation не може да биде избришана. Избришете ја папката рачно."
+
+INSTL_COMPLETE_FOLDER_REMOVED="Папката installation е успешно избришана."
INSTL_COMPLETE_LANGUAGE_1="Joomla! на вашиот јазик и/или автоматско создавање на основен повеќејазичен сајт"
-INSTL_COMPLETE_LANGUAGE_DESC="Пред да ја избришете инсталациската папка можете да инсталирате дополнителни јазици. Ако сакате да додадете екстра јазици во вашата Joomla! кликнете го следното копче."
+INSTL_COMPLETE_LANGUAGE_DESC="Пред да ја избришете папката installation можете да инсталирате дополнителни јазици. Ако сакате да додадете екстра јазици во вашата Joomla! одберете го следното копче."
INSTL_COMPLETE_LANGUAGE_DESC2="Забелешка: ќе ви треба интернет пристап за да може Joomla! да симне и инсталира кој и да е нов јазик. Некои сервери нема да дозволат Joomla! да инсталира јазици. Во тој случај, не грижете се, ќе можете да ги инсталирате подоцна преку Joomla! администрацијата."
-INSTL_COMPLETE_REMOVE_FOLDER="Избриши ја инсталациската папка"
-INSTL_COMPLETE_REMOVE_INSTALLATION="ЗАПОМНЕТЕ ДЕКА ИНСТАЛАЦИСКАТА ПАПКА МОРА ДА БИДЕ ЦЕЛОСНО ИЗБРИШАНА. Нема да може да продолжите понатаму додека не биде избришана инсталациската папка. Ова е безбедносна заштита на Joomla!."
+
+
+
+INSTL_COMPLETE_REMOVE_FOLDER="Избриши ја папката installation"
+INSTL_COMPLETE_REMOVE_INSTALLATION="ЗАПОМНЕТЕ ДЕКА ПАПКАТА installation МОРА ДА БИДЕ ЦЕЛОСНО ИЗБРИШАНА. Нема да може да продолжите понатаму додека не биде избришана папката installation. Ова е безбедносна заштита на Joomla!."
INSTL_COMPLETE_TITLE="Честитки! Инсталирана е Joomla!."
+
+
INSTL_COMPLETE_INSTALL_LANGUAGES="Екстра чекор: Инсталирај јазици"
;Languages view
INSTL_LANGUAGES="Инсталирај јазични пакети"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Јазик"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Верзија"
-INSTL_LANGUAGES_DESC="Joomla! е достапна во повеќе јазици. Штиклирајте ги јазиците кои ви се потребни и инсталирајте ги со клик на копчето Понатаму. Забелешка: за ова ќе е потребно околу 10 секунди по јазик за симнување и инсталирање. Затоа одберете не повеќе од 3 јазици одеднаш за да одбегнете можен истек на време на чекање од серверот."
+INSTL_LANGUAGES_DESC="Joomla! е достапна во повеќе јазици. Штиклирајте ги јазиците кои ви се потребни и инсталирајте ги со одбирање на копчето Понатаму. Забелешка: за ова ќе е потребно околу 10 секунди по јазик за симнување и инсталирање. Затоа одберете не повеќе од 3 јазици одеднаш за да одбегнете можен истек на време на чекање од серверот."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Потребно ќе е околу 10 секунди по јазик. Причекајте додека се преземаат и инсталираат јазиците..."
INSTL_LANGUAGES_MORE_LANGUAGES="Кликнете го копчето 'Претходно' ако сакате да инсталирате повеќе јазици."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Немате одбрано јазици за инсталирање. Ако сакате да инсталирате други јазици кликнете на копчето Претходно."
INSTL_LANGUAGES_WARNING_NO_INTERNET="Joomla! не може да конектира со јазичниот сервер. Завршете го инсталацискиот процес."
+
+
+
+
+
INSTL_LANGUAGES_WARNING_NO_INTERNET2="Забелешка: Ќе можете подоцна да ги инсталирате јазиците преку Joomla! администрацијата."
INSTL_LANGUAGES_WARNING_BACK_BUTTON="Назад кон последниот инсталациски чекор."
-
;Defaultlanguage view
INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE="Активирај повеќејазичност"
INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE_DESC="Ако е активно, вашиот Joomla сајт ќе има активирана повеќејазичност со локализирани менија за секој инсталиран јазик"
@@ -173,20 +200,57 @@ INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_TITLE="Повеќејазичност"
INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_DESC="Овој дел ви овозможува автоматски да ја активирате повеќејазичноста во вашата Joomla!"
INSTL_DEFAULTLANGUAGE_TRY_LATER="Ќе можете подоцна да инсталирате преку администрацијата на Joomla!"
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
; IMPORTANT NOTE FOR TRANSLATORS: Do not literally translate this line, instead add the localised name of the language. For example Spanish will be Español
INSTL_DEFAULTLANGUAGE_NATIVE_LANGUAGE_NAME="Македонски"
;Database Model
INSTL_DATABASE_COULD_NOT_CONNECT="Неможна конекција со базата на податоци. Конекцијата враќа број: %s"
INSTL_DATABASE_COULD_NOT_CREATE_DATABASE="Неможна конекција со посочената база и неможно креирање на базата. Проверете ги вашите поставки и ако е потребно рачно креирајте ја базата."
+
INSTL_DATABASE_COULD_NOT_REFRESH_MANIFEST_CACHE="Неможно освежување на манифест-кешот за надградбата: %s"
INSTL_DATABASE_EMPTY_NAME=""
INSTL_DATABASE_ERROR_BACKINGUP="Се појави грешка при правење резервна копија на базата на податоци."
INSTL_DATABASE_ERROR_CREATE="Се појави грешка при обидот за создавање база на податоци %s. Можеби корисникот нема доволно привилегии за создавање база на податоци. Потребната база на податоци можеби ќе треба да биде создадена посебно пред да може да се продолжи со инсталација на Joomla!."
+
INSTL_DATABASE_ERROR_DELETE="Се појави грешка при бришење на базата на податоци."
INSTL_DATABASE_FIELD_VALUE_REMOVE="Избриши"
INSTL_DATABASE_FIELD_VALUE_BACKUP="Копија"
INSTL_DATABASE_FIX_TOO_LONG="Префиксот на MySQL табелата мора да е најмногу до 15 карактери."
+
INSTL_DATABASE_INVALID_DB_DETAILS="Деталите понудени за базата на податоци се некоректни и/или празни."
INSTL_DATABASE_INVALID_MYSQL_VERSION="Ви треба MySQL 5.0.4 или понова верзија за да продолжите со инсталацијата. Вашата верзија е: %s"
INSTL_DATABASE_INVALID_MYSQLI_VERSION="Ви треба MySQL 5.0.4 или понова верзија за да продолжите со инсталацијата. Вашата верзија е: %s"
@@ -197,12 +261,14 @@ INSTL_DATABASE_INVALID_SQLZURE_VERSION="Ви треба SQL Server 2008 R2 (10.5
INSTL_DATABASE_INVALID_TYPE="Одберете тип на база на податоци"
INSTL_DATABASE_NAME_TOO_LONG="Името на MySQL базата на податоци мора да е до најмногу 64 карактери."
INSTL_DATABASE_INVALID_NAME="MySQL верзиите пред 5.1.6 не може да содржат празни места или други "_QQ_"специјални"_QQ_" карактери во името. Вашата верзија е: %s"
+
INSTL_DATABASE_NAME_INVALID_SPACES="Имињата на MySQL базата на податоци и табелата не смеат да почнуваат или завршуваат со празно место."
INSTL_DATABASE_NAME_INVALID_CHAR="Ниеден MySQL идентификатор не смее да содржи NULL ASCII(0x00)."
INSTL_DATABASE_FILE_DOES_NOT_EXIST="Датотеката %s не постои"
;controllers
INSTL_COOKIES_NOT_ENABLED="Колачињата изгледа не се дозволени во вашиот прелистувач. Нема да можете да продолжите со инсталацијата ако оваа опција не е овозможена. Алтернативно, можеби има проблем и со session.save_path на серверот. Ако е ова случај, контактирајте го вашиот домаќин ако не знаете самите како да проверите и поправите."
+
INSTL_HEADER_ERROR="Грешка"
;Helpers
@@ -212,28 +278,37 @@ INSTL_PAGE_TITLE="Joomla! веб инсталација"
INSTL_ERROR_CONNECT_DB="Неможна конекција со базата на податоци. Конекцијата враќа број: %s"
INSTL_STD_OFFLINE_MSG="Сајтот е недостапен поради одржување. Ве молиме наскоро проверете пак."
+
+
;FTP model
INSTL_FTP_INVALIDROOT="Посочената FTP папка не е папка од оваа инсталација на Joomla!."
+
INSTL_FTP_NOCONNECT="Неможна конекција со FTP серверот"
INSTL_FTP_NODELE="Функцијата "_QQ_"DELE"_QQ_" не успеа."
INSTL_FTP_NODIRECTORYLISTING="Неможно да се добие листа на папки од FTP серверот."
INSTL_FTP_NOLIST="Функцијата "_QQ_"LIST"_QQ_" не успеа."
INSTL_FTP_NOLOGIN="Неможно најавување на FTP серверот."
INSTL_FTP_NOMKD="Функцијата "_QQ_"MKD"_QQ_" не успеа."
+
INSTL_FTP_NONLST="Функцијата "_QQ_"NLST"_QQ_" не успеа."
INSTL_FTP_NOPWD="Функцијата "_QQ_"PWD"_QQ_" не успеа."
+
INSTL_FTP_NORETR="Функцијата "_QQ_"RETR"_QQ_" не успеа."
INSTL_FTP_NORMD="Функцијата "_QQ_"RMD"_QQ_" не успеа."
INSTL_FTP_NOROOT="Неможен пристап до посочената FTP папка."
+
+
INSTL_FTP_NOSTOR="Функцијата "_QQ_"STOR"_QQ_" не успеа."
INSTL_FTP_NOSYST="Функцијата "_QQ_"SYST"_QQ_" не успеа."
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Неможна автоматска детекција на FTP основната папка."
;others
-INSTL_CONFPROBLEM="Вашиот конфигурациски документ или папка се невпишливи или има проблем при создавањето на конфигурацискиот документ. Ќе треба следниот код да го внесете рачно. Кликнете во полето за текст за да го селектирате целиот код и потоа ископирајте го во нов текстуален документ. Тој документ потоа наречете го 'configuration.php' и качете го во основната папка на вашиот сајт."
+INSTL_CONFPROBLEM="Вашиот конфигурациски документ или папка се невпишливи или има проблем при создавањето на конфигурацискиот документ. Ќе треба следниот код да го внесете рачно. Одберете во полето за текст за да го селектирате целиот код и потоа ископирајте го во нов текстуален документ. Тој документ потоа наречете го 'configuration.php' и качете го во основната папка на вашиот сајт."
+
INSTL_DATABASE_SUPPORT="Поддршка за база на податоци:"
INSTL_DISPLAY_ERRORS="Прикажи грешки"
INSTL_ERROR_DB="Се појавија некои грешки при пополнување на базата: %s"
+
INSTL_ERROR_INITIALISE_SCHEMA="Неможно покренување шема на базата"
INSTL_FILE_UPLOADS="Качување документи"
INSTL_GNU_GPL_LICENSE="ГНУ Генерална јавна лиценца"
@@ -244,7 +319,8 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="MB Language е поставено"
INSTL_MB_STRING_OVERLOAD_OFF="MB String Overload исклучено"
INSTL_NOTICEMBLANGNOTDEFAULT="PHP mbstring јазикот не е поставен на neutral. Ова може да биде поставено и локално со внесување на php_value mbstring.language neutral во вашиот .htaccess документ."
INSTL_NOTICEMBSTRINGOVERLOAD="PHP mbstring функцијата overload е поставена. Ова може да биде исклучено и локално со внесување на php_value mbstring.func_overload 0 во вашиот .htaccess документ."
-INSTL_NOTICEYOUCANSTILLINSTALL=" Уште можете да продолжите со инсталацијата а конфигурациските поставки да бидат прикажани на крајот. Ќе треба самите да го внесете кодот. Кликнете во полето за текст за да го селектирате целиот код и потоа ископирајте го во нов текстуален документ. Тој документ потоа наречете го 'configuration.php' и качете го во основната папка на вашиот сајт."
+INSTL_NOTICEYOUCANSTILLINSTALL=" Уште можете да продолжите со инсталацијата а конфигурациските поставки да бидат прикажани на крајот. Ќе треба самите да го внесете кодот. Одберете во полето за текст за да го селектирате целиот код и потоа ископирајте го во нов текстуален документ. Тој документ потоа наречете го 'configuration.php' и качете го во основната папка на вашиот сајт."
+
INSTL_OUTPUT_BUFFERING="Output Buffering"
INSTL_PARSE_INI_FILE_AVAILABLE="INI Parser поддршка"
INSTL_PHP_VERSION="PHP верзија"
@@ -258,6 +334,7 @@ INSTL_ZIP_SUPPORT_AVAILABLE="Природна поддршка за ZIP (пре
INSTL_ZLIB_COMPRESSION_SUPPORT="Поддршка за Zlib компресија"
INSTL_PROCESS_BUSY="Процесот е во тек. Бидете трпеливи..."
+
;Global strings
JADMINISTRATOR="Администратор"
JCHECK_AGAIN="Провери пак"
@@ -265,10 +342,12 @@ JERROR="Грешка"
JEMAIL="Е-адреса"
JGLOBAL_ISFREESOFTWARE="%s е слободен софтвер објавен под %s."
JGLOBAL_LANGUAGE_VERSION_NOT_PLATFORM="Јазичниот пакет не се совпаѓа со оваа верзија на Joomla!. Некои делови може да недостасуваат."
+
JGLOBAL_SELECT_AN_OPTION="Одберете опција"
JGLOBAL_SELECT_NO_RESULTS_MATCH="Нема соодветни резултати"
JGLOBAL_SELECT_SOME_OPTIONS="Одберете опции"
JINVALID_TOKEN="Последното барање е одбиено бидејќи содржи невалиден безбедносен клуч. Превчитајте ја страницата и обидете се повторно."
+
JNEXT="Понатаму"
JNO="Не"
JNOTICE="Забелешка"
@@ -291,6 +370,7 @@ JLIB_FORM_VALIDATE_FIELD_INVALID="Погрешно поле: %s"
JLIB_FORM_VALIDATE_FIELD_REQUIRED="Потребно е полето: %s"
JLIB_INSTALLER_ERROR_FAIL_COPY_FILE="JInstaller: :Install: Неуспешно копирање на документот %1$s во %2$s."
JLIB_INSTALLER_NOT_ERROR="Ако грешката се однесува на инсталирањето на TinyMCE јазичните документи тоа нема да влијае на инсталирањето на јазикот(ците). Некои јазични пакети креирани пред Joomla! 3.2.0 може да се обидат да инсталираат посебни TinyMCE јазични документи. Бидејќи тие се веќе вклучени во јадрото, тие веќе нема потреба да бидат инсталирани."
+
JLIB_UTIL_ERROR_CONNECT_DATABASE="JDatabase: :getInstance: Неможна конекција со базата на податоци joomla.library: %1$s - %2$s"
;Strings for the language debugger
diff --git a/installation/language/mk-MK/mk-MK.xml b/installation/language/mk-MK/mk-MK.xml
index 0e9630cfb15b2..be8d542fc19e5 100644
--- a/installation/language/mk-MK/mk-MK.xml
+++ b/installation/language/mk-MK/mk-MK.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Macedonian Македонски (MК)
- 3.4.2
- 15.09.2012
+ 3.4.4
+ August 2015Macedonian Translation TeamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/nb-NO/nb-NO.ini b/installation/language/nb-NO/nb-NO.ini
index 0cd7f30117051..5944a4e9de87a 100644
--- a/installation/language/nb-NO/nb-NO.ini
+++ b/installation/language/nb-NO/nb-NO.ini
@@ -116,13 +116,19 @@ INSTL_EMAIL_NOT_SENT="E-post kunne ikke sendes."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Innloggingsdetaljer for administrasjonspanelet"
+; The word 'installation' should not be translated as it is a physical folder. Wtf do you know ...
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Installasjonsmappen er allerede slettet."
+; The word 'installation' should not be translated as it is a physical folder. Wtf do you know ...
INSTL_COMPLETE_ERROR_FOLDER_DELETE="Installasjonsmappen kunne ikke slettes, du må slette denne manuelt."
+; The word 'installation' should not be translated as it is a physical folder. Wtf do you know ...
INSTL_COMPLETE_FOLDER_REMOVED="Installasjonsmappen ble slettet"
INSTL_COMPLETE_LANGUAGE_1="Joomla! i ditt eget språk?"
+; The word 'installation' should not be translated as it is a physical folder. Wtf do you know ...
INSTL_COMPLETE_LANGUAGE_DESC="Før du sletter installasjonsmappen kan du installere ekstra språk. Klikk følgende knapp dersom du ønsker å legge til ekstra språk for Joomla-installasjonen."
INSTL_COMPLETE_LANGUAGE_DESC2="Merk: Installasjonsskriptet vil behøve tilgang til Internett for å kunne laste ned og installere flere språk. Noen serverkonfigurasjoner sperrer dessverre for dette. Dersom dette er tilfellet for deg er det ingen fare, du vil kunne installere flere språk senere via administrasjonspanelet."
+; The word 'installation' should not be translated as it is a physical folder. Wtf do you know ...
INSTL_COMPLETE_REMOVE_FOLDER="Slett installasjonsmappen"
+; The word 'installation' should not be translated as it is a physical folder. Wtf do you know ...
INSTL_COMPLETE_REMOVE_INSTALLATION="HUSK Å SLETTE INSTALLASJONSMAPPEN Du vil ikke kunne bruke nettstedet før installasjonsmappen er slettet. Dette er en sikkerhetsfunksjon for Joomla!."
INSTL_COMPLETE_TITLE="Gratulerer! Joomla! er nå installert."
INSTL_COMPLETE_INSTALL_LANGUAGES="Ekstra steg: Installer språk"
@@ -312,4 +318,4 @@ PDOMYSQL="MySQL (PDO)"
POSTGRESQL="PostgreSQL"
SQLAZURE="Microsoft SQL Azure"
SQLITE="SQLite"
-SQLSRV="Microsoft SQL Server"
\ No newline at end of file
+SQLSRV="Microsoft SQL Server"
diff --git a/installation/language/nb-NO/nb-NO.xml b/installation/language/nb-NO/nb-NO.xml
index e26fc51fa0d17..92a41c91a724e 100644
--- a/installation/language/nb-NO/nb-NO.xml
+++ b/installation/language/nb-NO/nb-NO.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Norwegian bokmål (nb-NO)
- 3.4.2
- 2012-09-27
+ 3.4.4
+ August 2015Norsk Joomla!Copyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/nl-NL/nl-NL.ini b/installation/language/nl-NL/nl-NL.ini
index a7e26128e8d49..9f158766f53b2 100644
--- a/installation/language/nl-NL/nl-NL.ini
+++ b/installation/language/nl-NL/nl-NL.ini
@@ -118,13 +118,19 @@ INSTL_EMAIL_NOT_SENT="E-mail kan niet worden verzonden."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Inloggegevens beheergedeelte"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="De installatiemap is al verwijderd."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="De installatiemap kan niet verwijderd worden. Verwijder de map handmatig."
-INSTL_COMPLETE_FOLDER_REMOVED="Installatiemap verwijderen geslaagd"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="De map installation is al verwijderd."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="De map installation kan niet verwijderd worden. Verwijder de map handmatig."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_FOLDER_REMOVED="Verwijderen map installation geslaagd"
INSTL_COMPLETE_LANGUAGE_1="Joomla! in uw eigen taal en/of automatisch een basis voor een meertalige website maken"
-INSTL_COMPLETE_LANGUAGE_DESC="Voordat de installatiemap wordt verwijderd kunnen extra taalpakketten geïnstalleerd worden. Klik op de volgende knop wanneer extra talen aan deze Joomla! applicatie toegevoegd moeten worden."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="Voordat de map installation wordt verwijderd kunnen extra taalpakketten geïnstalleerd worden. Klik op de volgende knop wanneer extra talen aan deze Joomla! applicatie toegevoegd moeten worden."
INSTL_COMPLETE_LANGUAGE_DESC2="Let op: Er is een internetverbinding nodig voor het downloaden en installeren van de nieuwe taalpakketten. Sommige serverinstellingen beletten Joomla! mogelijk om taalpakketten te installeren. Maakt u zich geen zorgen indien dit het geval is, de talen kunnen later vanaf het beheergedeelte geïnstalleerd worden."
-INSTL_COMPLETE_REMOVE_FOLDER="Verwijder de installatiemap"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_FOLDER="Verwijder de map installation"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_INSTALLATION="VERWIJDER NU DE VOLLEDIGE MAP INSTALLATION VAN DE SERVER. U kunt niet verdergaan als deze installatiemap niet is verwijderd. Dit is een veiligheidsinstelling van Joomla!."
INSTL_COMPLETE_TITLE="Gefeliciteerd! Joomla! is nu geïnstalleerd."
INSTL_COMPLETE_INSTALL_LANGUAGES="Extra stappen: Installeer talen"
diff --git a/installation/language/nl-NL/nl-NL.xml b/installation/language/nl-NL/nl-NL.xml
index 56ddd12bd6c81..8a8ee39a814a4 100644
--- a/installation/language/nl-NL/nl-NL.xml
+++ b/installation/language/nl-NL/nl-NL.xml
@@ -3,7 +3,7 @@
version="3.4"
client="installation">
Dutch nl-NL
- 3.4.2
+ 3.4.4September 2012Dutch Translation TeamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
diff --git a/installation/language/pt-BR/pt-BR.ini b/installation/language/pt-BR/pt-BR.ini
index 3a66da4322977..ff2920e2dd10b 100644
--- a/installation/language/pt-BR/pt-BR.ini
+++ b/installation/language/pt-BR/pt-BR.ini
@@ -82,7 +82,7 @@ INSTL_SITE_INSTALL_SAMPLE_DESC="Instalar o conteúdo de exemplo é altamente rec
INSTL_SITE_INSTALL_SAMPLE_NONE="Nenhum (Obrigatório para a criação básica de site multi-idiomas)"
INSTL_SAMPLE_BLOG_SET="Conteúdo de exemplo Blog, em inglês (GB)"
INSTL_SAMPLE_BROCHURE_SET="Conteúdo de exemplo Boletim, em inglês (GB)"
-INSTL_SAMPLE_DATA_SET="Conteúdo de exemplo pardrão, em inglês (GB)"
+INSTL_SAMPLE_DATA_SET="Conteúdo de exemplo padrão, em inglês (GB)"
INSTL_SAMPLE_LEARN_SET="Conteúdo de exemplo Aprenda Joomla, em inglês (GB)"
INSTL_SAMPLE_TESTING_SET="Conteúdo de exemplo Teste, em inglês (GB)"
INSTL_SITE_INSTALL_SAMPLE_NONE_DESC="Instale o Joomla com apenas um menu e um formulário de acesso, sem qualquer conteúdo."
@@ -116,14 +116,14 @@ INSTL_EMAIL_NOT_SENT="O email não pôde ser enviado."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Detalhes de Acesso ao Administrador"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="O diretório INSTALLATION já foi removido."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="O diretório INSTALLATION não pôde ser removido. Remova-o manualmente."
-INSTL_COMPLETE_FOLDER_REMOVED="Diretório INSTALLATION removida com sucesso."
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="O diretório installation já foi removido."
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="O diretório installation não pôde ser removido. Remova-o manualmente."
+INSTL_COMPLETE_FOLDER_REMOVED="Diretório installation removida com sucesso."
INSTL_COMPLETE_LANGUAGE_1="Joomla! em seu idioma e/ou criação básica de um site multi-idioma"
-INSTL_COMPLETE_LANGUAGE_DESC="Antes de remover o diretório INSTALLATION, você pode instalar outros idiomas. Se deseja adicionar outros idiomas em seu aplicativo Joomla!, clique no botão a seguir."
+INSTL_COMPLETE_LANGUAGE_DESC="Antes de remover o diretório installation, você pode instalar outros idiomas. Se deseja adicionar outros idiomas em seu aplicativo Joomla!, clique no botão a seguir."
INSTL_COMPLETE_LANGUAGE_DESC2="Obs.: você precisará de acesso à internet para que o Joomla! baixe e instale novas idiomas. Algumas configurações de servidor não vão permitir que o Joomla! instale os idiomas. Se este for seu caso, não se preocupe, você poderá instalá-los depois pelo Administrador."
-INSTL_COMPLETE_REMOVE_FOLDER="Remover o diretório INSTALLATION"
-INSTL_COMPLETE_REMOVE_INSTALLATION="LEMBRE DE REMOVER O DIRETÓRIO INSTALLATION.< br / > Não será possível prosseguir até que o diretório INSTALLATION seja removido. Este é um recurso de segurança do Joomla!"
+INSTL_COMPLETE_REMOVE_FOLDER="Remover o diretório installation"
+INSTL_COMPLETE_REMOVE_INSTALLATION="LEMBRE DE REMOVER O DIRETÓRIO installation. Não será possível prosseguir até que o diretório installation seja removido. Este é um recurso de segurança do Joomla!"
INSTL_COMPLETE_TITLE="Parabéns! O Joomla foi instalado com sucesso."
INSTL_COMPLETE_INSTALL_LANGUAGES="Etapas extras: instalar idiomas"
@@ -263,7 +263,7 @@ JADMINISTRATOR="Administrador"
JCHECK_AGAIN="Verificar Novamente"
JERROR="Erro"
JEMAIL="Email"
-JGLOBAL_ISFREESOFTWARE="%s é um software livre distribuído sob a %s."
+JGLOBAL_ISFREESOFTWARE="%s é um software gratuito distribuído sob a %s."
JGLOBAL_LANGUAGE_VERSION_NOT_PLATFORM="O pacote de idioma não coincide com a versão do Joomla!. Algumas strings podem estar faltando."
JGLOBAL_SELECT_AN_OPTION="Selecione uma opção"
JGLOBAL_SELECT_NO_RESULTS_MATCH="Nenhum resultado correspondente "
diff --git a/installation/language/pt-BR/pt-BR.xml b/installation/language/pt-BR/pt-BR.xml
index d621817ec0054..385dd828bf596 100644
--- a/installation/language/pt-BR/pt-BR.xml
+++ b/installation/language/pt-BR/pt-BR.xml
@@ -3,12 +3,12 @@
version="3.4"
client="installation">
Português Brasileiro (pt-BR)
- 3.4.2
+ 3.4.4Junho 2015Equipe de Tradução Português BrasileiroCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
- Português Brasileiro (pt-BR) 3.4.2
+ Português Brasileiro (pt-BR) 3.4.4pt-BR.ini
diff --git a/installation/language/sk-SK/sk-SK.ini b/installation/language/sk-SK/sk-SK.ini
index 3422c76a3c880..5d837bdd40def 100644
--- a/installation/language/sk-SK/sk-SK.ini
+++ b/installation/language/sk-SK/sk-SK.ini
@@ -102,7 +102,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Vložiť do e-mailu aj heslá"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Pozor! Neodporúčame posielať a ukladať heslá v e-mailoch."
;Installing view
-INSTL_INSTALLING="Inštalujem..."
+INSTL_INSTALLING="Inštalujem ..."
INSTL_INSTALLING_DATABASE_BACKUP="Zálohujem staré tabuľky v databáze"
INSTL_INSTALLING_DATABASE_REMOVE="Odstraňujem staré tabuľky z databázy"
INSTL_INSTALLING_DATABASE="Vytváram tabuľky v databáze"
@@ -117,14 +117,14 @@ INSTL_EMAIL_NOT_SENT="E-mail nemohol byť poslaný."
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Prihlasovacie údaje do správcovského rozhrania"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Inštalačný adresár už bol vymazaný."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Inštalačný adresár nemôže byť vymazaný. Vymažte ho ručne, prosím."
-INSTL_COMPLETE_FOLDER_REMOVED="Inštalačný adresár bol úspešne odstránený"
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Adresár install už bol vymazaný."
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="Adresár install nemôže byť vymazaný. Vymažte ho ručne, prosím."
+INSTL_COMPLETE_FOLDER_REMOVED="Adresár install bol úspešne odstránený"
INSTL_COMPLETE_LANGUAGE_1="Joomla! vo vašom jazyku a/alebo automatické vytvorenie základného viacjazyčného webu"
-INSTL_COMPLETE_LANGUAGE_DESC="Pred ostránením inštalačného adresára ešte môžete pridať ďalšie jazykové mutácie. Ak chcete pridať do Vašej inštalácie systému Joomla! ďalšie jazyky, kliknite na tlačidlo nižšie."
+INSTL_COMPLETE_LANGUAGE_DESC="Pred ostránením adresára install ešte môžete pridať ďalšie jazykové mutácie. Ak chcete pridať do Vašej inštalácie systému Joomla! ďalšie jazyky použite tlačidlo nižšie."
INSTL_COMPLETE_LANGUAGE_DESC2="Pozn.: pre inštaláciu nových jazykov potrebujete mať funkčné internetové pripojenie. Niektoré nastavenia serverov neumožňujú inštaláciu jazykov do Joomla!. Ak je toto váš prípad, nerobte si z toho ťažkú hlavu, možnosť inštalácie jazykov je v správcovskom rozhraní systému Joomla!"
-INSTL_COMPLETE_REMOVE_FOLDER="Odstráňte inštalačný adresár"
-INSTL_COMPLETE_REMOVE_INSTALLATION="NEZABUDNITE ÚPLNE ODSTRÁNIŤ INŠTALAČNÝ ADRESÁR. Nebudete môcť pokračovať ďalej pokiaľ neodstránite inštalačný adresár. Je to jedna z bezpečnostných vlastností redakčného systému Joomla!."
+INSTL_COMPLETE_REMOVE_FOLDER="Odstráňte adresár install"
+INSTL_COMPLETE_REMOVE_INSTALLATION="NEZABUDNITE ÚPLNE ODSTRÁNIŤ ADRESÁR INSTALL. Nebudete môcť pokračovať ďalej pokiaľ neodstránite priečinok install. Je to jedna z bezpečnostných vlastností redakčného systému Joomla!."
INSTL_COMPLETE_TITLE="Blahoželáme! Joomla! je nainštalovaná."
INSTL_COMPLETE_INSTALL_LANGUAGES="Doplnkový krok: Inštalácia jazykov"
@@ -132,7 +132,7 @@ INSTL_COMPLETE_INSTALL_LANGUAGES="Doplnkový krok: Inštalácia jazykov"
INSTL_LANGUAGES="Inštalácia jazykových balíčkov"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Jazyk"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Verzia"
-INSTL_LANGUAGES_DESC="Rozhranie systému Joomla je dostupné v množstve jazykov. Vyberte si požadované jazyky kliknutím na zaškrtávacie polia a nainštalujte ich kliknutím na tlačidlo Ďalej. Pozn.: táto operácia zaberie približne 10 sekúnd na stiahnutie a inštaláciu každého z jazykov. Prosím, nevyberajte viac než 3 jazyky pre predídenie 'zamrznutiu'."
+INSTL_LANGUAGES_DESC="Rozhranie systému Joomla je dostupné v množstve jazykov. Vyberte si požadované jazyky zaškrtnutím príslušných polí a nainštalujte ich kliknutím na tlačidlo Ďalej. Pozn.: táto operácia zaberie približne 10 sekúnd na stiahnutie a inštaláciu každého z jazykov. Prosím, nevyberajte viac než 3 jazyky pre predídenie 'zamrznutiu'."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Dokončenie tejto operácie zaberie približne 10 sekúnd na jeden jazyk. Prosím, počkajte kým sa jazyky stiahnu a nainštalujú..."
INSTL_LANGUAGES_MORE_LANGUAGES="Ak chcete nainštalovať viac jazykov, kliknite na tlačidlo 'Späť'."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Nebol nainštalovaný žiadny jazyk. Ak potrebujete nainštalovať viac jazykov, kliknite na tlačidlo 'Späť' a zo zoznamu vyberte požadované jazyky."
@@ -214,7 +214,7 @@ INSTL_ERROR_CONNECT_DB="Nemôžem sa pripojiť k databáze. Konektor vrátil chy
INSTL_STD_OFFLINE_MSG="Webové stránky sú z dôvodu údržby vypnuté. Navštívte nás o čosi neskôr."
;FTP model
-INSTL_FTP_INVALIDROOT="Zadaný adresár FTP nie je adresárom s touto inštaláciou systému Joomla!"
+INSTL_FTP_INVALIDROOT="Zadaný priečinok FTP nie je adresárom s touto inštaláciou systému Joomla!"
INSTL_FTP_NOCONNECT="Nemôžem sa pripojiť k FTP serveru"
INSTL_FTP_NODELE="Zlyhala funkcia "_QQ_"DELE"_QQ_"."
INSTL_FTP_NODIRECTORYLISTING="Nemôžem získať výpis adresárovej štruktúry z FTP servera."
diff --git a/installation/language/sk-SK/sk-SK.xml b/installation/language/sk-SK/sk-SK.xml
index 03e068bc330dd..572773e0c5393 100644
--- a/installation/language/sk-SK/sk-SK.xml
+++ b/installation/language/sk-SK/sk-SK.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Slovak (Slovenčina)
- 3.4.2
- September 2012
+ 3.4.4
+ August 2015Joomla! Projectwww.joomla.orgCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.
diff --git a/installation/language/sw-KE/sw-KE.ini b/installation/language/sw-KE/sw-KE.ini
index c50b533bf37db..6605e25063cbf 100644
--- a/installation/language/sw-KE/sw-KE.ini
+++ b/installation/language/sw-KE/sw-KE.ini
@@ -69,7 +69,7 @@ INSTL_ADMIN_EMAIL_DESC="Weka anwani ya barua pepe yako. Hii itakuwa ni barua pep
INSTL_ADMIN_PASSWORD_LABEL="Nenosiri la msimamizi"
INSTL_ADMIN_PASSWORD_DESC="Weka nenosiri kwa akaunti yako ya msimamizi mkubwa na hakikisha ndani ya eneo hapo juu."
INSTL_ADMIN_PASSWORD2_LABEL="Hakikisha nenosiri la msimamizi"
-INSTL_ADMIN_USER_LABEL="Jina la msimamizi"
+INSTL_ADMIN_USER_LABEL="Jina la mtumiaji wa msimamizi"
INSTL_ADMIN_USER_DESC="Weka jina la mtumiaji kwa akaunti yako ya msimamizi mkuu."
INSTL_SITE_NAME_LABEL="Jina la tovuti"
INSTL_SITE_NAME_DESC="Andika jina la tovuti lako kwa Joomla!."
@@ -101,7 +101,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="Peana maelezo pamoja na manenosiri ndani ya
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="Onyo! Unashauriwa usitume na usihifadhi manenosiri yako ndani ya barua pepe."
;Mtazamo wa kusakinisha
-INSTL_INSTALLING="Inasakinisha..."
+INSTL_INSTALLING="Inasakinisha ..."
INSTL_INSTALLING_DATABASE_BACKUP="Inafanya backup kwa jedwali ya zamani ya hifadhidata"
INSTL_INSTALLING_DATABASE_REMOVE="Inatoa jedwali ya zamani kwa hifadhidata"
INSTL_INSTALLING_DATABASE="Inatengeza jedwali za hifadhidata"
@@ -116,14 +116,20 @@ INSTL_EMAIL_NOT_SENT="Barua pepe haikuweza kutumika."
;Mtazamo kamili
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Maelezo ya Msimamizi kwa kuingia"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Folda ya kusakinisha tayari imefutwa."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Folda ya kusakinisha haiwezi kufutwa. Tafadhali futa folda kwa mkono."
-INSTL_COMPLETE_FOLDER_REMOVED="Folda ya kusakinisha imetolewa vizuri"
+; neno 'installation' halitafsiriwi kwa sababu ni folda ya kimwili.
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Folda ya installation tayari imefutwa."
+; neno 'installation' halitafsiriwi kwa sababu ni folda ya kimwili.
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="Folda ya installation haiwezi kufutwa. Tafadhali futa folda kwa mkono."
+; neno 'installation' halitafsiriwi kwa sababu ni folda ya kimwili.
+INSTL_COMPLETE_FOLDER_REMOVED="Folda ya installation imetolewa vizuri"
INSTL_COMPLETE_LANGUAGE_1="Joomla! kwa lugha yako au/ama kujitengezea tovuti ya kawaida ya lugha nyingi za asili"
-INSTL_COMPLETE_LANGUAGE_DESC="Kabla ya kutoa folda ya kusakinisha, unaweza kusakinisha lugha zingine. Ikiwa unataka kuongeza lugha zingine kwa maombi yako ya Joomla!, bofya kibonyezo kinachofwata."
+; neno 'installation' halitafsiriwi kwa sababu ni folda ya kimwili.
+INSTL_COMPLETE_LANGUAGE_DESC="Kabla ya kutoa folda ya installation, unaweza kusakinisha lugha zingine. Ikiwa unataka kuongeza lugha zingine kwa maombi yako ya Joomla!, chagua kibonyezo kinachofwata."
INSTL_COMPLETE_LANGUAGE_DESC2="Kumbuka: Itakupasa uwe na online kwa kuruhusu Joomla! kwa kushusha na kusakinisha lugha mpya. Baadhi ya usanidi wa seva hautaruhusu Joomla! kusakinisha lugha. Ikiwa matokeo yako ni hayo, usijali. Utaweza kusakinisha baadaye kwa kutumia msimamizi wa Joomla!"
+; neno 'installation' halitafsiriwi kwa sababu ni folda ya kimwili.
INSTL_COMPLETE_REMOVE_FOLDER="Ondoa folda ya kusakinisha"
-INSTL_COMPLETE_REMOVE_INSTALLATION="TAFADHALI KUMBUKA KUTOA KABISA KISADUKU CHA KUSAKINISHA. Hautaweza kuendelea zaidi ya hatua hii mpaka uondoe saraka ya kusakinisha. Huu ni muhimu wa usalama wa Joomla!"
+; neno 'installation' halitafsiriwi kwa sababu ni folda ya kimwili.
+INSTL_COMPLETE_REMOVE_INSTALLATION="TAFADHALI KUMBUKA KUTOA KABISA FOLDA YA INSTALLATION. Hautaweza kuendelea zaidi ya hatua hii mpaka uondoe folda ya installation. Huu ni muhimu wa usalama wa Joomla!"
INSTL_COMPLETE_TITLE="Pongezi! Joomla! imeshasakinishwa vizuri."
INSTL_COMPLETE_INSTALL_LANGUAGES="Hatua za ziada: Kusakinisha lugha"
@@ -131,7 +137,7 @@ INSTL_COMPLETE_INSTALL_LANGUAGES="Hatua za ziada: Kusakinisha lugha"
INSTL_LANGUAGES="Sakinisha paketi za lugha"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Lugha"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Toleo"
-INSTL_LANGUAGES_DESC="Kusano la Joomla linapatikana katika lugha tofauti. Chagua lugha yako unayopendelea kwa kubofya vijisanduku vya tiki na sakinisha kwa kubofya kibonyezo 'Ifuatayo'. Kumbuka: Uendeshaji huu utachukua muda wa sekunde kumi kwa kushusha na kusakinisha kila lugha. Kwa kutopoteza muda ulionao, tafadhali usichague lugha zaidi ya tatu kwa kusakinisha."
+INSTL_LANGUAGES_DESC="Kusano la Joomla linapatikana katika lugha tofauti. Chagua lugha yako unayopendelea kwa kuchagua vijisanduku vya tiki na sakinisha kwa kuchagua kibonyezo 'Ifuatayo'. Kumbuka: Uendeshaji huu utachukua muda wa sekunde kumi kwa kushusha na kusakinisha kila lugha. Kwa kutopoteza muda ulionao, tafadhali usichague lugha zaidi ya tatu kwa kusakinisha."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Uendeshaji huu utachukua muda wa sekunde kumi kwa kumaliza kila lugha. Tafadhali ngojea wakati inashusha na kunasakinisha lugha..."
INSTL_LANGUAGES_MORE_LANGUAGES="Bofya kibonyezo 'Iliopita' ikiwa unataka kusakinisha lugha nyingi"
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Hakuna lugha zilizochaguliwa kwa kusakinisha. Ikiwa unataka kusakinisha lugha nyingi, bofya kibonyezo 'Iliopita' na chagua lugha unayopenda kutoka kwa orodha."
@@ -213,10 +219,10 @@ INSTL_ERROR_CONNECT_DB="Haikuweza kuunganishwa na hifadhidata. Uungaji umeregesh
INSTL_STD_OFFLINE_MSG="Tovuti hii iko chini kwa ajili yamatengezo. Tafadhali angalia tena karibuni. "
;Modeli wa FTP
-INSTL_FTP_INVALIDROOT="Saraka ya FTP iliyotajwa haiko ndani ya saraka ya usakinishaji huu wa Joomla!"
+INSTL_FTP_INVALIDROOT="Folda ya FTP iliyotajwa haiko ndani ya folda ya usakinishaji huu wa Joomla!"
INSTL_FTP_NOCONNECT="Haikuweza kuunganishwa na seva ya FTP"
INSTL_FTP_NODELE="Imekataa jukumu la "_QQ_"DELE"_QQ_"."
-INSTL_FTP_NODIRECTORYLISTING="Haikuweza kuepua maingizo ndani ya saraka kutoka kwa seva ya FTP."
+INSTL_FTP_NODIRECTORYLISTING="Haikuweza kuepua maingizo ndani ya folda kutoka kwa seva ya FTP."
INSTL_FTP_NOLIST="Imekataa jukumu la "_QQ_"LIST"_QQ_"."
INSTL_FTP_NOLOGIN="Haikuweza kuingia kwa seva ya FTP."
INSTL_FTP_NOMKD="Imekataa jukumu la "_QQ_"MKD"_QQ_"."
@@ -224,13 +230,13 @@ INSTL_FTP_NONLST="Imekataa jukumu la "_QQ_"NLST"_QQ_"."
INSTL_FTP_NOPWD="Imekataa jukumu la "_QQ_"PWD"_QQ_"."
INSTL_FTP_NORETR="Imekataa jukumu la "_QQ_"RETR"_QQ_"."
INSTL_FTP_NORMD="Imekataa jukumu la "_QQ_"RMD"_QQ_""
-INSTL_FTP_NOROOT="Haikuweza kuingia kwa saraka ya FTP iliotajwa."
+INSTL_FTP_NOROOT="Haikuweza kuingia kwa folda ya FTP iliotajwa."
INSTL_FTP_NOSTOR="Imekataa jukumu la "_QQ_"STOR"_QQ_"."
INSTL_FTP_NOSYST="Imekataa jukumu la "_QQ_"SYST"_QQ_"."
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Haiwezi kujigundua kwa folda ya enzi ya FTP."
;Wengineo
-INSTL_CONFPROBLEM="Faili au orodha yako ya usanidi haiandikiki au kulikuwa na matatizo katika kutengeza faili ya usanidi. Itakubidi upakie kodi ifwatayo kwa mkono. Bofya ndani ya eneo la maandishi kwa kualamisha kodi zote, na ubandike ndani ya faili mpya ya maandishi. Ipatie jina faili hii 'configuration.php' na pakia katika folda ya enzi ya tovuti yako."
+INSTL_CONFPROBLEM="Faili au folda yako ya usanidi haiandikiki au kulikuwa na matatizo katika kutengeza faili ya usanidi. Itakubidi upakie kodi ifuatayo kwa mkono. Chagua ndani ya eneo la maandishi kwa kualamisha kodi zote, na ubandike ndani ya faili mpya ya maandishi. Ipatie jina faili hii 'configuration.php' na pakia katika folda ya enzi ya tovuti yako."
INSTL_DATABASE_SUPPORT="Usaidizi wa hifadhidata:"
INSTL_DISPLAY_ERRORS="Onyesha makosa"
INSTL_ERROR_DB="Baadhi ya makosa yalitokea wakati wa kuweka data ndani ya hifadhidata: %s"
@@ -244,7 +250,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="Lugha ya MB ni difoti"
INSTL_MB_STRING_OVERLOAD_OFF="MB String Overload zima"
INSTL_NOTICEMBLANGNOTDEFAULT="PHP mbstring language haijawekwa upande wowote. Yaweza kuwekwa kwa kawaida kwa kuingiza php_value mbstring.language neutral ndani ya faili yako .htaccess."
INSTL_NOTICEMBSTRINGOVERLOAD="PHP mbstring function overload imewekwa. Yaweza kuzimwa kwa kawaida kwa kuingiza php_value mbstring.func_overload 0 ndani ya faili yako .htaccess."
-INSTL_NOTICEYOUCANSTILLINSTALL=" Unaweza kuendelea na usakinishaji kama matayarisho ya usanidi yataonyeshwa mwishoni. Itakubidi upakie kodi ifwatayo kwa mkono. Bofya ndani ya eneo la maandishi kwa kualamisha kodi zote, na ubandike ndani ya faili mpya ya maandishi. Ipatie jina faili hii 'configuration.php' na pakia katika folda ya enzi kwa tovuti yako."
+INSTL_NOTICEYOUCANSTILLINSTALL=" Unaweza kuendelea na usakinishaji kama matayarisho ya usanidi yataonyeshwa mwishoni. Itakubidi upakie kodi ifwatayo kwa mkono. Chagua ndani ya eneo la maandishi kwa kualamisha kodi zote, na ubandike ndani ya faili mpya ya maandishi. Ipatie jina faili hii 'configuration.php' na pakia katika folda ya enzi kwa tovuti yako."
INSTL_OUTPUT_BUFFERING="Kinga ya pato"
INSTL_PARSE_INI_FILE_AVAILABLE="Usaidizi wa uchanganuaji wa INI"
INSTL_PHP_VERSION="Toleo la PHP"
diff --git a/installation/language/sw-KE/sw-KE.xml b/installation/language/sw-KE/sw-KE.xml
index 312117d0a1d4d..af6590a55d2f9 100644
--- a/installation/language/sw-KE/sw-KE.xml
+++ b/installation/language/sw-KE/sw-KE.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Swahili (East Africa)
- 3.4.2
- November 2012
+ 3.4.4
+ August 2015Hassan AbdallaCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/ta-IN/ta-IN.ini b/installation/language/ta-IN/ta-IN.ini
index 48762a9d953e4..e1228df03e03e 100644
--- a/installation/language/ta-IN/ta-IN.ini
+++ b/installation/language/ta-IN/ta-IN.ini
@@ -118,14 +118,20 @@ INSTL_EMAIL_NOT_SENT="மின்-அஞ்சல் அனுப்ப மு
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="நிர்வாகப் புகுபதிகை விவரங்கள்"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="installation என்று பெயரிட்ட கோப்பகம் ஏற்கனவே நீக்கப்பட்டுள்ளது."
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="Installation என்று பெயரிட்ட கோப்பகத்தை நீக்க முடியவில்லை. தயவுசெய்து இக்கோப்பகத்தைக் கைமுறையால் நீக்குக."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="installation என்று பெயரிட்ட கோப்பகத்தை நீக்க முடியவில்லை. தயவுசெய்து இக்கோப்பகத்தைக் கைமுறையால் நீக்குக."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_FOLDER_REMOVED="installation என்று பெயரிட்ட கோப்பகம் வெற்றிகரமாக நீக்கப்பட்டது"
INSTL_COMPLETE_LANGUAGE_1="Joomla! தாங்கள் விரும்பும் மொழியில் மற்றும்/அல்லது தன்னியக்க அடிப்படை பன்மொழித் தள உருவாக்கம்"
-INSTL_COMPLETE_LANGUAGE_DESC="installation என்று பெயரிட்ட கோப்பகத்தை நீக்குவதற்கு முன், தாங்கள் கூடுதல் மொழிகளை நிறுவலாம். தங்கள் Joomla! செயலிக்கு (Application) கூடுதல் மொழிகளை தாங்கள் சேர்க்க விரும்பினால் பின்வரும் பொத்தானைச் சொடுக்குக."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="installation என்று பெயரிட்ட கோப்பகத்தை நீக்குவதற்கு முன், தாங்கள் கூடுதல் மொழிகளை நிறுவலாம். தங்கள் Joomla! செயலிக்கு (Application) கூடுதல் மொழிகளை தாங்கள் சேர்க்க விரும்பினால் பின்வரும் பொத்தானைத் தேர்வுசெய்க."
INSTL_COMPLETE_LANGUAGE_DESC2="குறிப்பு: புதிய மொழிகளை பதிவிறக்கம் செய்து நிறுவ, Joomla!-வுக்கு இணைய இணைப்பு மிக அவசியம். சில சேவையக உருவாக்கங்கள் (server configurations), மொழிகளை நிறுவ Joomla!-வை அனுமதிக்காது. தங்களுக்கு இவ்வாறு இடையூறு ஏற்பட்டால், கவலைப்பட வேண்டாம்; Joomla! நிர்வாகியைப் பயன்படுத்தி, பின்னர், தாங்கள் மொழிகளை நிறுவலாம்."
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_FOLDER="installation என்று பெயரிட்ட கோப்பகத்தை நீக்குக"
-INSTL_COMPLETE_REMOVE_INSTALLATION="தயவுசெய்து நினைவில் கொள்க: installation என்று பெயரிட்ட கோப்பகத்தை (Directory) முற்றிலும் நீக்குக. installation என்று பெயரிட்ட கோப்பகத்தை நீக்காதவரை தாங்கள் இதற்கு மேல் தொடர முடியாது. இது Joomla!-வின் ஒரு பாதுகாப்பு அம்சம்."
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_INSTALLATION="தயவுசெய்து நினைவில் கொள்க: installation என்று பெயரிட்ட கோப்பகத்தை (folder) முற்றிலும் நீக்குக. installation என்று பெயரிட்ட கோப்பகத்தை நீக்காதவரை தாங்கள் இதற்கு மேல் தொடர முடியாது. இது Joomla!-வின் ஒரு பாதுகாப்பு அம்சம்."
INSTL_COMPLETE_TITLE="வாழ்த்துகள்! Joomla! தற்போது நிறுவப்பட்டுள்ளது."
INSTL_COMPLETE_INSTALL_LANGUAGES="கூடுதல் கட்டங்கள்: மொழிகளை நிறுவுக"
@@ -133,7 +139,7 @@ INSTL_COMPLETE_INSTALL_LANGUAGES="கூடுதல் கட்டங்கள
INSTL_LANGUAGES="மொழித் தொகுப்புகளை நிறுவுக"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="மொழி"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="பதிப்பு"
-INSTL_LANGUAGES_DESC="Joomla! இடைமுகமானது பல்வேறு மொழிகளில் கிடைக்கிறது. தாங்கள் விரும்பும் மொழிகளை, முதலில், அவற்றின் தெரிவுப்பெட்டிகளில் சொடுக்கி தேர்வுசெய்க; பின்னர், அவற்றை நிறுவ 'அடுத்த' பொத்தானை அமுக்குக. குறிப்பு: இந்த செயல்பாடானது (பதிவிறக்கம் மற்றும் நிறுவல்) ஒவ்வொரு மொழிக்கும் சுமார் 10 வினாடிகள் எடுத்துக்கொள்ளும். எனவே, நேரம் முடிதலைத் (timeout) தவிர்க்க, தயவுசெய்து 3 மொழிகளுக்கு மிகாமல் தேர்வுசெய்க."
+INSTL_LANGUAGES_DESC="Joomla! இடைமுகமானது பல்வேறு மொழிகளில் கிடைக்கிறது. தாங்கள் விரும்பும் மொழிகளை, முதலில், அவற்றின் தெரிவுப்பெட்டிகளில் தேர்வுசெய்க; பின்னர், அவற்றை நிறுவ 'அடுத்த' பொத்தானைத் தேர்வுசெய்க. குறிப்பு: இந்த செயல்பாடானது (பதிவிறக்கம் மற்றும் நிறுவல்) ஒவ்வொரு மொழிக்கும் சுமார் 10 வினாடிகள் எடுத்துக்கொள்ளும். எனவே, நேரம் முடிதலைத் (timeout) தவிர்க்க, தயவுசெய்து 3 மொழிகளுக்கு மிகாமல் தேர்வுசெய்க."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="இந்த செயல்பாடானது ஒவ்வொரு மொழிக்கும் சுமார் 10 வினாடிகள் எடுத்துக்கொள்ளும். தயவுசெய்து மொழிகள் பதிவிறக்கம் செய்து நிறுவும் வரை காத்திருக்கவும் ..."
INSTL_LANGUAGES_MORE_LANGUAGES="தாங்கள் மேலும் பல மொழிகளை நிறுவ விரும்பினால் 'முந்தைய' பொத்தானை அமுக்குக."
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="நிறுவதற்கு எந்த மொழியும் தேர்வுசெய்யப்படவில்லை. தங்களுக்கு பிற மொழிகளை நிறுவ வேண்டுமென்றால் 'முந்தைய' பொத்தானை அமுக்குக மற்றும் பட்டியலிலிருந்து விரும்பும் மொழிகளைத் தேர்வுசெய்க."
@@ -232,7 +238,7 @@ INSTL_FTP_NOSYST="செயற்கூறு "_QQ_"SYST"_QQ_" தோல்வ
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="FTP வேர்க் கோப்பகத்தைத் தன்னியக்கமாகக் கண்டுபிடிக்க முடியவில்லை."
;others
-INSTL_CONFPROBLEM="தங்கள் உருவாக்கக் (configuration) கோப்பு அல்லது கோப்பகம் எழுத முடியாதது அல்லது கோப்பை எழுதுவதில் பிரச்சினை உள்ளது. தாங்கள் கீழ்க்காணும் குறிமுறையைக் கையால் பதிவேற்ற வேண்டும். அனைத்துக் குறிமுறைகளையும் தேர்வுசெய்ய உரைப் பிரதேசத்தில் சொடுக்குக. பிறகு, புதிய உரைக் கோப்பில் தேர்வுசெய்தக் குறிமுறையை ஒட்டுக. இந்த உரைக் கோப்பை "configuration.php" எனப் பெயரிட்டு அதனைத் தங்கள் தளத்தின் வேர்க் கோப்பகத்தில் பதிவேற்றுக."
+INSTL_CONFPROBLEM="தங்கள் உருவாக்கக் (configuration) கோப்பு அல்லது கோப்பகம் எழுத முடியாதது அல்லது கோப்பை எழுதுவதில் பிரச்சினை உள்ளது. தாங்கள் கீழ்க்காணும் குறிமுறையைக் கையால் பதிவேற்ற வேண்டும். அனைத்துக் குறிமுறைகளையும் உரைப் பிரதேசத்தில் தேர்வுசெய்க. பிறகு, புதிய உரைக் கோப்பில் தேர்வுசெய்தக் குறிமுறையை ஒட்டுக. இந்த உரைக் கோப்பை "configuration.php" எனப் பெயரிட்டு அதனைத் தங்கள் தளத்தின் வேர்க் கோப்பகத்தில் பதிவேற்றுக."
INSTL_DATABASE_SUPPORT="தரவுத்தள ஆதரவு:"
INSTL_DISPLAY_ERRORS="Display Errors"
INSTL_ERROR_DB="தரவுத்தளம் "%s"ஐ நிரப்ப முயற்சிக்கும்போது சில பிழைகள் ஏற்பட்டுள்ளன"
@@ -246,7 +252,7 @@ INSTL_MB_LANGUAGE_IS_DEFAULT="MB Language is Default"
INSTL_MB_STRING_OVERLOAD_OFF="MB String Overload Off"
INSTL_NOTICEMBLANGNOTDEFAULT="PHP mbstring language நடு நிலையாக (neutral) அமைக்கப்படவில்லை. இதனைத் தங்கள் தளத்தில் php_value mbstring.language neutral என்ற சொற்றொடரைத் தங்கள் .htaccess கோப்பில் எழுதுவதின் மூலம் அமைக்க (locally set) முடியும்."
INSTL_NOTICEMBSTRINGOVERLOAD="PHP mbstring function overload அமைக்கப்பட்டுள்ளது. இதனைத் தங்கள் தளத்தில் php_value mbstring.func_overload 0 என்ற சொற்றொடரைத் தங்கள் .htaccess கோப்பில் எழுதுவதின் மூலம் நிறுத்த முடியும் (turned off locally)."
-INSTL_NOTICEYOUCANSTILLINSTALL=" உருவாக்க அமைப்புகள் (Configuration Settings) இறுதியில் காட்டப்படுமாதலால், தாங்கள் நிறுவலைத் தொடரலாம். தாங்கள் குறிமுறையைத் (code) தாங்களாகவே மேலேற்ற வேண்டும். உரைப் பிரதேசத்தில் சொடுக்கி அனைத்துக் குறிமுறைகளையும் தேர்வுசெய்து, புதிய உரைக் கோப்பில் தேர்வுசெய்தக் குறிமுறையை ஒட்டுக. இந்த உரைக் கோப்பை "configuration.php" எனப் பெயரிட்டு அதனைத் தங்கள் தள வேர்க் (root) கோப்பகத்தில் பதிவேற்றுக."
+INSTL_NOTICEYOUCANSTILLINSTALL=" உருவாக்க அமைப்புகள் (Configuration Settings) இறுதியில் காட்டப்படுமாதலால், தாங்கள் நிறுவலைத் தொடரலாம். தாங்கள் குறிமுறையைத் (code) தாங்களாகவே மேலேற்ற வேண்டும். உரைப் பிரதேசத்தில் அனைத்துக் குறிமுறைகளையும் தேர்வுசெய்து, புதிய உரைக் கோப்பில் தேர்வுசெய்தக் குறிமுறையை ஒட்டுக. இந்த உரைக் கோப்பை "configuration.php" எனப் பெயரிட்டு அதனைத் தங்கள் தள வேர்க் (root) கோப்பகத்தில் பதிவேற்றுக."
INSTL_OUTPUT_BUFFERING="Output Buffering"
INSTL_PARSE_INI_FILE_AVAILABLE="INI Parser Support"
INSTL_PHP_VERSION="PHP Version"
diff --git a/installation/language/ta-IN/ta-IN.xml b/installation/language/ta-IN/ta-IN.xml
index ccfebfd7354f2..f8dad1e14ac00 100644
--- a/installation/language/ta-IN/ta-IN.xml
+++ b/installation/language/ta-IN/ta-IN.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Tamil (INDIA)
- 3.4.2
- 2012-09-15
+ 3.4.4
+ August 2015Ilagnayeru 'MIG' Manickam, Elango Samy ManimCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/th-TH/th-TH.ini b/installation/language/th-TH/th-TH.ini
index b3d08c1085d97..f133feae636df 100644
--- a/installation/language/th-TH/th-TH.ini
+++ b/installation/language/th-TH/th-TH.ini
@@ -101,7 +101,7 @@ INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="รหัสผ่านในอีเม
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="คำเตือน! เราแนะนำว่าอย่าส่งอีเมล และอย่าเก็บรหัสผ่านของคุณเอาไว้ในอีเมล"
;Installing view
-INSTL_INSTALLING="กำลังติดตั้ง..."
+INSTL_INSTALLING="กำลังติดตั้ง ..."
INSTL_INSTALLING_DATABASE_BACKUP="สำรองตารางฐานข้อมูลเก่า"
INSTL_INSTALLING_DATABASE_REMOVE="ลบตารางฐานข้อมูลเก่า"
INSTL_INSTALLING_DATABASE="สร้างตารางฐานข้อมูล"
@@ -116,13 +116,19 @@ INSTL_EMAIL_NOT_SENT="ไม่สามารถส่งอีเมลได
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="ข้อมูลสำหรับผู้ดูแล"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="โฟลเดอร์ installation ถูกลบแล้ว"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_ERROR_FOLDER_DELETE="โฟลเดอร์ installation ไม่สามารถลบได้ กรุณาไปลบโฟลเดอร์ INSTALLATION ออกเอง"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_FOLDER_REMOVED="โฟลเดอร์ installation ถูกลบแล้ว"
INSTL_COMPLETE_LANGUAGE_1="คุณต้องการหาภาษาอื่นๆ มาติดตั้งลงในเว็บของคุณ เพื่อทำให้เว็บไซต์แสดงหลายภาษาได้หรือเปล่า?"
-INSTL_COMPLETE_LANGUAGE_DESC="ก่อนที่คุณจะลบโฟลเดอร์ installation คุณยังสามารถทำการติดตั้งภาษาได้ในขั้นตอนพิเศษ ถ้าคุณต้องการที่จะติดตั้งภาษาลงไปในเว็บของคุณ สามารถคลิกที่ปุ่มถัดไปจากนี้"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="ก่อนที่คุณจะลบโฟลเดอร์ installation คุณยังสามารถทำการติดตั้งภาษาได้ในขั้นตอนพิเศษ ถ้าคุณต้องการที่จะติดตั้งภาษาลงไปในเว็บของคุณ สามารถเลือกเพิ่มเติมได้หลังจากคลิกที่ปุ่มถัดไป"
INSTL_COMPLETE_LANGUAGE_DESC2="หมายเหตุ: คุณจะต้องต่ออินเทอร์เน็ตก่อน จูมล่าจึงจะสามารถดาวน์โหลดและติดตั้งภาษาใหม่ได้ บางเซิร์ฟเวอร์จะมีการตั้งค่าบางอย่างเอาไว้ ทำให้จูมล่าไม่สามารถทำการติดตั้งภาษาได้ ถ้าคุณเจอกรณีแบบนี้ ก็ไม่เป็นไร, คุณสามารถที่จะติดตั้งภาษาได้ในภายหลัง โดยเข้าไปติดตั้งผ่านด้านผู้ดูแลของจูมล่า"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_FOLDER="ลบโฟลเดอร์ installation"
+; The word 'installation' should not be translated as it is a physical folder.
INSTL_COMPLETE_REMOVE_INSTALLATION="สำคัญ! เพื่อให้การติดตั้งสำเร็จ อย่าลืมลบโฟลเดอร์ INSTALLATION ออก หากคุณไม่ลบออก ระบบจะไม่ยอมให้คุณทำงานต่อ การลบโฟลเดอร์ INSTALLATION ออก เพื่อความปลอดภัยของเว็บคุณ"
INSTL_COMPLETE_TITLE="ขอแสดงความยินดี ตอนนี้คุณได้ติดตั้งจูมล่าสำเร็จแล้ว"
INSTL_COMPLETE_INSTALL_LANGUAGES="ขั้นตอนพิเศษ: ติดตั้งภาษา"
@@ -213,10 +219,10 @@ INSTL_ERROR_CONNECT_DB="ไม่สามารถติดต่อฐาน
INSTL_STD_OFFLINE_MSG="ขออภัยกำลังปรับปรุงเว็บ กรุณากลับมาอีกครั้ง"
;FTP model
-INSTL_FTP_INVALIDROOT="ไดเรกทอรีที่ระบุใน FTP ไม่ใช่ไดเรกทอรีที่ติดตั้งจูมล่า"
+INSTL_FTP_INVALIDROOT="โฟลเดอร์ FTP ที่ระบุ ไม่ใช่โฟลเดอร์ที่ติดตั้งจูมล่าเอาไว้"
INSTL_FTP_NOCONNECT="ไม่สามารถเชื่อมต่อไปยังเซิร์ฟเวอร์ FTP"
INSTL_FTP_NODELE="ฟังก์ชัน "_QQ_"DELE"_QQ_" ล้มเหลว"
-INSTL_FTP_NODIRECTORYLISTING="ไม่สามารถเรียกคืนรายการไดเรกทอรีจากเซิร์ฟเวอร์ FTP"
+INSTL_FTP_NODIRECTORYLISTING="ไม่สามารถเรียกคืนรายการโฟลเดอร์จากเซิร์ฟเวอร์ FTP"
INSTL_FTP_NOLIST="ฟังก์ชัน "_QQ_"LIST"_QQ_" ล้มเหลว"
INSTL_FTP_NOLOGIN="ไม่สามารถเข้าสู่เซิร์ฟเวอร์ FTP"
INSTL_FTP_NOMKD="ฟังก์ชัน "_QQ_"MKD"_QQ_" ล้มเหลว"
@@ -224,13 +230,13 @@ INSTL_FTP_NONLST="ฟังก์ชัน "_QQ_"NLST"_QQ_" ล้มเหล
INSTL_FTP_NOPWD="ฟังก์ชัน "_QQ_"PWD"_QQ_" ล้มเหลว"
INSTL_FTP_NORETR="ฟังก์ชัน "_QQ_"RETR"_QQ_" ล้มเหลว"
INSTL_FTP_NORMD="ฟังก์ชัน "_QQ_"RMD"_QQ_" ล้มเหลว"
-INSTL_FTP_NOROOT="ไม่สามารถเข้าถึงไดเรกทอรีที่ระบุได้"
+INSTL_FTP_NOROOT="ไม่สามารถเข้าถึงโฟลเดอร์ FTP ที่ระบุได้"
INSTL_FTP_NOSTOR="ฟังก์ชัน "_QQ_"STOR"_QQ_" ล้มเหลว"
INSTL_FTP_NOSYST="ฟังก์ชัน "_QQ_"SYST"_QQ_" ล้มเหลว"
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="ไม่สามารถตรวจจับอัตโนมัติโฟลเดอร์หลักได้"
;others
-INSTL_CONFPROBLEM="ไฟล์หรือไดเรกทอรีของคุณไม่สามารถเขียนได้หรือมีปัญหาในการสร้างไฟล์การกำหนดค่า คุณจะต้องอัปโหลด Code ต่อไปนี้ด้วยตัวเอง คลิกในพื้นที่ข้อความเพื่อไฮไลต์ Code ทั้งหมดแล้ววางลงในโปรแกรม Text Edittor แล้วบันทึกเป็น ชื่อ 'configuration.php' และอัปโหลดไปยังโฟลเดอร์ที่ติดตั้งจูมล่า"
+INSTL_CONFPROBLEM="ไฟล์ configuration หรือโฟลเดอร์ของคุณไม่สามารถเขียนได้ หรือมีปัญหาในการสร้างไฟล์ configuration คุณจะต้องอัปโหลด Code ต่อไปนี้ด้วยตัวเอง คลิกในพื้นที่ข้อความเพื่อไฮไลต์ Code ทั้งหมดแล้ววางลงในโปรแกรม Text Edittor แล้วบันทึกเป็น ชื่อ 'configuration.php' และอัปโหลดไปยังโฟลเดอร์ที่ติดตั้งจูมล่า"
INSTL_DATABASE_SUPPORT="สนับสนุนฐานข้อมูล:"
INSTL_DISPLAY_ERRORS="Display Errors"
INSTL_ERROR_DB="เกิดข้อผิดพลาดเรื่องขนาดฐานข้อมูล: %s"
diff --git a/installation/language/th-TH/th-TH.xml b/installation/language/th-TH/th-TH.xml
index 62a15588ee541..67048422e4296 100644
--- a/installation/language/th-TH/th-TH.xml
+++ b/installation/language/th-TH/th-TH.xml
@@ -3,8 +3,8 @@
version="3.4"
client="installation">
Thai ไทย (ภาษาไทย)
- 3.4.2
- February 2015
+ 3.4.4
+ August 2015Thai Translation TeamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/vi-VN/vi-VN.ini b/installation/language/vi-VN/vi-VN.ini
index 04a77f1887f81..e486062806780 100644
--- a/installation/language/vi-VN/vi-VN.ini
+++ b/installation/language/vi-VN/vi-VN.ini
@@ -10,24 +10,17 @@ INSTL_STEP_COMPLETE_LABEL="Kết thúc"
INSTL_STEP_DATABASE_LABEL="Cơ sở dữ liệu"
INSTL_STEP_DEFAULTLANGUAGE_LABEL="Chọn ngôn ngữ mặc định"
INSTL_STEP_FTP_LABEL="FTP"
-INSTL_STEP_LANGUAGE_LABEL="Ngôn ngữ"
INSTL_STEP_LANGUAGES_LABEL="Cài đặt ngôn ngữ"
-INSTL_STEP_LICENSE_LABEL="Giấy phép"
-INSTL_STEP_PREINSTALL_LABEL="Kiểm tra trước khi cài đặt"
INSTL_STEP_SITE_LABEL="Cấu hình"
INSTL_STEP_SUMMARY_LABEL="Tổng quan"
-INSTL_STEPS_TITLE="Các bước"
;Language view
INSTL_LANGUAGE_TITLE="Lựa chọn ngôn ngữ"
-INSTL_SELECT_LANGUAGE_DESC="Hãy lựa chọn ngôn ngữ sử dụng trong suốt quá trình cài đặt Joomla!:"
-INSTL_SELECT_LANGUAGE_TITLE="Lựa chọn ngôn ngữ"
INSTL_WARNJAVASCRIPT="Chú ý! JavaScript cần được kích hoạt cho quá trình cài đặt Joomla!"
INSTL_WARNJSON="Hệ thống PHP của bạn cần có JSON được kích hoạt để cài đặt Joomla!"
;Preinstall view
INSTL_PRECHECK_TITLE="Kiểm tra trước khi cài đặt"
-INSTL_PRECHECK_FOR_VERSION="Kiểm tra trước khi cài đặt cho %s"
INSTL_PRECHECK_DESC="Nếu một trong các thành phần sau không được hỗ trợ (hiển thị bằng Không), xin hãy điều chỉnh lại. Bạn không thể cài đặt Joomla nếu các thiết lập của bạn chưa phù hợp với các yêu cầu dưới đây"
INSTL_PRECHECK_RECOMMENDED_SETTINGS_TITLE="Những điều chỉnh khuyên dùng:"
INSTL_PRECHECK_RECOMMENDED_SETTINGS_DESC="Những điều chỉnh này được khuyên dùng cho PHP để đảm bảo tính tương thích với Joomla. Tuy vậy, Joomla! sẽ vẫn hoạt động nếu những điều chỉnh của bạn không giống hoàn toàn với điều chỉnh khuyên dùng. "
@@ -53,8 +46,6 @@ INSTL_DATABASE_TYPE_DESC="Nên là "_QQ_"MySQLi"_QQ_""
INSTL_DATABASE_TYPE_LABEL="Loại cơ sở dữ liệu"
INSTL_DATABASE_USER_DESC="Điền "_QQ_"root"_QQ_" hoặc tên đăng nhập bất kỳ được cung cấp bởi máy chủ"
INSTL_DATABASE_USER_LABEL="Tên đăng nhập"
-INSTL_DATABASE_TITLE="Những điều chỉnh kết nối"
-INSTL_DATABASE_DESC="
Một trang Joomla! chứa toàn bộ dữ liệu trong cơ sở dữ liệu của nó. Trang này cung cấp thông tin cần thiết cho chương trình cài đặt để tạo cơ sở dữ liệu đó.
\n
Nếu bạn đang cài đặt Joomla! lên trang máy chủ từ xa, bạn sẽ cần lấy thông tin này từ nhà cung cấp máy chủ.
Một vài dịch vụ cung cấp máy chủ cho trang web, yêu cầu bạn tạo cơ sở dữ liệu trước khi cài đặt Joomla. Nếu bạn nhận được thông điệp "_QQ_"Không thể kết nối đến cơ sở dữ liệu"_QQ_", kiểm tra độ chính xác của mật khẩu và tên đăng nhập. Nếu thông điệp này vẫn xuất hiện, kiểm tra với nhà cung cấp máy chủ xem có cần phải tạo cơ sở dữ liệu trước khi cài đặt Joomla hay không.
"
;FTP view
INSTL_AUTOFIND_FTP_PATH="Tự động tìm đường dẫn FTP"
@@ -68,7 +59,6 @@ INSTL_FTP_ROOT_LABEL="Đường dẫn FTP Root"
INSTL_FTP_SAVE_LABEL="Ghi nhớ mật khẩu FTP"
INSTL_FTP_TITLE="Cài đặt cấu hình FTP (Tùy chọn - Người dùng có thể bỏ qua bước này - Ấn Tiếp Theo để bỏ qua)"
INSTL_FTP_USER_LABEL="Tên đăng nhập FTP"
-INSTL_SITE_NAME_LABEL="Tên trang"
INSTL_VERIFY_FTP_SETTINGS="Xác minh những điều chỉnh FTP"
INSTL_FTP_SETTINGS_CORRECT="Điều chỉnh chính xác"
INSTL_FTP_USER_DESC="Lưu ý! Nên để trống vị trí này và nhập tên đăng nhập FTP mỗi lần truyền tập tin."
@@ -127,11 +117,7 @@ INSTL_EMAIL_HEADING="Dưới đây bạn có thể tìm thấy các thiết lậ
INSTL_EMAIL_NOT_SENT="Email không thể được gửi."
;Complete view
-INSTL_COMPLETE="Kết thúc"
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="Chi tiết đăng nhập tài khoản quản trị"
-INSTL_COMPLETE_DESC1="Ấn nút Trang để xem trang Joomla! của bạn hoặc nút Quản trị để đưa bạn về trang quản trị. "
-INSTL_COMPLETE_DESC2="Trên trang Cộng Đồng Joomla! , bạn sẽ tìm thấy danh sách các đường dẫn đến các gói ngôn ngữ hoặc những nguồn liên quan ngôn ngữ trên trang joomla.org."
-INSTL_COMPLETE_DESC3="Nhấp vào nút bên phải để mở trang web của cộng đồng Joomla! trên cửa sổ mới."
INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="Thư mục cài đặt đã được xóa bỏ."
INSTL_COMPLETE_ERROR_FOLDER_DELETE="Không thể tự động xóa bỏ thư mục cài đặt. Xin hãy xóa thư mục này bằng tay."
INSTL_COMPLETE_FOLDER_REMOVED="Thư mục cài đặt đã được gỡ bỏ thành công."
@@ -149,6 +135,7 @@ INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="Ngôn ngữ"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="Phiên bản"
INSTL_LANGUAGES_DESC="Giao diện Joomla là có sẵn cho một số ngôn ngữ. Chọn ngôn ngữ ưa thích của bạn bằng cách nhấp vào ô lựa chọn và cài đặt chúng bằng cách nhấp vào nút Tiếp theo. Lưu ý: hoạt động này sẽ mất khoảng 10 giây để tải về và cài đặt mỗi ngôn ngữ. Để tránh hết thời gian vui lòng chọn không quá 3 ngôn ngữ để cài đặt."
INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="Hoạt động này sẽ mất đến 10 giây cho mỗi ngôn ngữ để hoàn thành Xin vui lòng chờ trong khi chúng tôi tải về và cài đặt các ngôn ngữ ..."
+INSTL_LANGUAGES_MORE_LANGUAGES="Nhấn nút 'Trước' nếu bạn muốn cài thêm ngôn ngữ"
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="Xin vui lòng chọn một ngôn ngữ. Nếu bạn không cần phải cài đặt các ngôn ngữ khác nhấn nút 'Trước'"
INSTL_LANGUAGES_WARNING_NO_INTERNET="Joomla! không thể kết nối đến máy chủ ngôn ngữ. Xin hãy kết thúc quá trình cài đặt."
INSTL_LANGUAGES_WARNING_NO_INTERNET2="Lưu ý: Bạn sẽ có thể cài đặt các ngôn ngữ sau này bằng cách sử dụng tài khoản quản trị Joomla!"
@@ -186,8 +173,6 @@ INSTL_DEFAULTLANGUAGE_INSTALL_LOCALISED_CONTENT="Cài đặt nội dung ngôn ng
INSTL_DEFAULTLANGUAGE_INSTALL_LOCALISED_CONTENT_DESC="Nếu kích hoạt, Joomla sẽ tự động tạo ra một danh mục nội dung cho mỗi ngôn ngữ được cài đặt. Đồng thời, một bài viết tiêu biểu chứa nội dung hình thức sẽ được tạo ra ở mỗi danh mục"
INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_TITLE="Đa ngôn ngữ"
INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_DESC="Phần này cho phép bạn tự động kích hoạt chức năng Đa ngôn ngữ của Joomla!"
-INSTL_DEFAULTLANGUAGE_NOTE="Lưu ý: khi bạn nhấn nút Tiếp, bạn sẽ nhận được trở lại cuối của quá trình cài đặt, nơi bạn sẽ được yêu cầu để xóa các thư mục cài đặt."
-INSTL_DEFAULTLANGUAGE_TABLE_HEADER="Chọn ngôn ngữ mặc định của bạn"
INSTL_DEFAULTLANGUAGE_TRY_LATER="Bạn sẽ có thể cài đặt nó sau bằng cách sử dụng Joomla! Quản trị viên"
; IMPORTANT NOTE FOR TRANSLATORS: Do not literally translate this line, instead add the localised name of the language. For example Spanish will be Español
@@ -195,6 +180,7 @@ INSTL_DEFAULTLANGUAGE_NATIVE_LANGUAGE_NAME="Tiếng Việt"
;Database Model
INSTL_DATABASE_COULD_NOT_CONNECT="Không thể kết nối đến cơ sở dữ liệu. Kết nối trả về lỗi số: %s"
+INSTL_DATABASE_COULD_NOT_CREATE_DATABASE="Trình cài đặt không thể kết nối tới Cơ sở dữ liệu chỉ định và không thể tạo mới Cơ sở dữ liệu. Xin hãy kiểm tra lại thiết lập và tự tạo mới Cơ sở dữ liệu nếu cần thiết."
INSTL_DATABASE_COULD_NOT_REFRESH_MANIFEST_CACHE="Không thể làm mới cache cho phần mở rộng: %s"
INSTL_DATABASE_EMPTY_NAME=""
INSTL_DATABASE_ERROR_BACKINGUP="Một vài lỗi xuất hiện trong quá trình sao lưu cơ sở dữ liệu."
@@ -246,8 +232,6 @@ INSTL_FTP_NOSYST="Chức năng "_QQ_"SYST"_QQ_" thất bại."
INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="Không thể tự động nhận danh mục FTP root."
;others
-INSTL_ADVANCED_SETTINGS="Điều chỉnh nâng cao."
-INSTL_BASIC_SETTINGS="Điều chỉnh cơ bản."
INSTL_CONFPROBLEM="Tập tin hoặc thư mục cấu hình không được phép ghi hoặc có vấn đề trong quá trình tạo tập tin cấu hình. Bạn có thể phải đưa mã sau lên bằng tay. Nhấp vào vùng chữ và bôi chọn tất cả mã sau đó chèn vào một tập tin văn bản mới. Đặt tên tập này là 'configuration.php' và tải lên danh mục root của trang web."
INSTL_DATABASE_SUPPORT="Hỗ trợ cơ sở dữ liệu:"
INSTL_DISPLAY_ERRORS="Hiển thị lỗi"
@@ -255,9 +239,7 @@ INSTL_ERROR_DB="Một vài lỗi xảy ra trong quá trình tạo cơ sở dữ
INSTL_ERROR_INITIALISE_SCHEMA="Không thể khởi tạo database schema"
INSTL_FILE_UPLOADS="Đưa tập tin lên"
INSTL_GNU_GPL_LICENSE="Giấy phép GNU General Public"
-INSTL_INSTALLATION="Cài đặt"
INSTL_JSON_SUPPORT_AVAILABLE="Hỗ trợ JSON"
-INSTL_LICENSE="Giấy phép"
INSTL_MAGIC_QUOTES_GPC="Magic Quotes GPC Of"
INSTL_MAGIC_QUOTES_RUNTIME="Thời gian thi hành Magic Quotes"
INSTL_MB_LANGUAGE_IS_DEFAULT="MB language là mặc định"
@@ -268,6 +250,7 @@ INSTL_NOTICEYOUCANSTILLINSTALL=" Bạn vẫn có thể tiếp tục cài đ
INSTL_OUTPUT_BUFFERING="Output Buffering"
INSTL_PARSE_INI_FILE_AVAILABLE="Hỗ trợ phân tích INI"
INSTL_PHP_VERSION="Phiên bản PHP"
+INSTL_PHP_VERSION_NEWER="Phiên bản PHP >= %s"
INSTL_REGISTER_GLOBALS="Register Globals Off"
INSTL_SAFE_MODE="Safe Mode"
INSTL_SESSION_AUTO_START="Session Auto Start"
@@ -279,7 +262,6 @@ INSTL_PROCESS_BUSY="Tiến trình đang tiến hành...Hãy đợi..."
;Global strings
JADMINISTRATOR="Người quản trị"
-JADVANCED="Nâng cao"
JCHECK_AGAIN="Kiểm tra lại"
JERROR="Lỗi"
JEMAIL="Email"
@@ -300,16 +282,17 @@ JUSERNAME="Tên đăng nhập"
JYES="Đồng ý"
; Framework strings necessary when no lang pack is available
-JLIB_DATABASE_ERROR_DATABASE="Có lỗi của Cơ sở Dữ liệu."
JLIB_DATABASE_ERROR_CONNECT_MYSQL="Không thể kết nối với MySQL"
+JLIB_DATABASE_ERROR_DATABASE="Có lỗi xảy ra với Cơ sở dữ liệu."
JLIB_DATABASE_ERROR_LOAD_DATABASE_DRIVER="Không thể tải driver cơ sở dữ liệu: %s"
JLIB_ENVIRONMENT_SESSION_EXPIRED="Phiên làm việc của bạn đã bị quá hạn, hãy tải lại trang."
JLIB_FILESYSTEM_ERROR_COPY_FAILED="Sao chép thất bại"
JLIB_FILESYSTEM_ERROR_PATH_IS_NOT_A_FOLDER_FILES="JFolder: :files: Đường dẫn không phải đến thư mục. Đường dẫn: %s"
JLIB_FORM_FIELD_INVALID="Field không hợp lệ: "
-JLIB_FORM_VALIDATE_FIELD_REQUIRED="Field yêu cầu: %s"
JLIB_FORM_VALIDATE_FIELD_INVALID="Field không hợp lệ: %s"
+JLIB_FORM_VALIDATE_FIELD_REQUIRED="Field yêu cầu: %s"
JLIB_INSTALLER_ERROR_FAIL_COPY_FILE="JInstaller: :Install: Thất bại khi sao chép file %1$s sang %2$s."
+LIB_INSTALLER_NOT_ERROR="Nếu lỗi xảy ra liên quan tới việc cài đặt file ngôn ngữ TinyMCE thì nó không ảnh hưởng đến việc cài đặt các ngôn ngữ. Một vài gói ngôn ngữ được tạo ra trước cho Joomla! 3.2.0 có thể cố gắng cài các file ngôn ngữ TinyMCE riêng lẻ. Vì chúng giờ đã được chứa trong core nên chúng không cần được cài đặt nữa."
JLIB_UTIL_ERROR_CONNECT_DATABASE="JDatabase: :getInstance: Không thể kết nối cơ sở dữ liệu joomla.library: %1$s - %2$s"
; Strings for the language debugger
@@ -327,7 +310,8 @@ SITE_NAME="Tên trang"
MYSQL="MySQL"
MYSQLI="MySQLi"
ORACLE="Oracle"
+PDOMYSQL="MySQL (PDO)"
POSTGRESQL="PostgreSQL"
SQLAZURE="Microsoft SQL Azure"
SQLITE="SQLite"
-SQLSRV="Microsoft SQL Server"
\ No newline at end of file
+SQLSRV="Microsoft SQL Server"
diff --git a/installation/language/vi-VN/vi-VN.xml b/installation/language/vi-VN/vi-VN.xml
index 3e7d55bf1f524..17ea2866fba17 100644
--- a/installation/language/vi-VN/vi-VN.xml
+++ b/installation/language/vi-VN/vi-VN.xml
@@ -1,8 +1,8 @@
-
+Vietnamese (Vietnam)
- 3.2.0
- September 2012
+ 3.4.4
+ August 2015Joomla Viet Nam Translation TeamCopyright (C) 2005 - 2015 Open Source Matters. All rights reserved.GNU General Public License version 2 or later; see LICENSE.txt
diff --git a/installation/language/zh-TW/zh-TW.ini b/installation/language/zh-TW/zh-TW.ini
index a4d9defb300de..1594796e0924e 100644
--- a/installation/language/zh-TW/zh-TW.ini
+++ b/installation/language/zh-TW/zh-TW.ini
@@ -3,8 +3,6 @@
; License GNU General Public License version 2 or later; see LICENSE.txt
; Note : All ini files need to be saved as UTF-8
-
-
;Stepbar
INSTL_STEP_COMPLETE_LABEL="完成"
INSTL_STEP_DATABASE_LABEL="資料庫"
@@ -21,9 +19,9 @@ INSTL_WARNJSON="你的PHP環境需要啟用JSON支援才能進行Joomla!安裝"
;Preinstall view
INSTL_PRECHECK_TITLE="安裝前檢查"
-INSTL_PRECHECK_DESC="如果以下這些項目目前有不支援的情況 (被標記為否),請先進行校正他們。 如果無法符合以下的系統需求,你的Joomla!安裝程式將可能無法安裝。"
-INSTL_PRECHECK_RECOMMENDED_SETTINGS_TITLE="建議的設定值:"
-INSTL_PRECHECK_RECOMMENDED_SETTINGS_DESC="這些建議的PHP設定值是為了確保能完整相容於Joomla!。 雖然,Joomla!仍然可以在不完全符合這些建議設定值時執行。"
+INSTL_PRECHECK_DESC="如果以下這些項目目前是不支援的狀態 (被標記為否),請先調整環境來校正它們。 如果無法符合這些的系統需求,你的Joomla!安裝程式將有可能無法順利地安裝。"
+INSTL_PRECHECK_RECOMMENDED_SETTINGS_TITLE="建議的設定"
+INSTL_PRECHECK_RECOMMENDED_SETTINGS_DESC="這些建議的PHP設定值,是為了確保能完全相容於Joomla!。 不過,Joomla!仍然可以在不完全符合這些建議設定值時正常執行。"
INSTL_PRECHECK_DIRECTIVE="指令"
INSTL_PRECHECK_RECOMMENDED="建議"
INSTL_PRECHECK_ACTUAL="目前"
@@ -32,19 +30,19 @@ INSTL_PRECHECK_ACTUAL="目前"
INSTL_DATABASE="資料庫設定"
INSTL_DATABASE_HOST_DESC="這通常都是使用 "localhost""
INSTL_DATABASE_HOST_LABEL="主機名稱"
-INSTL_DATABASE_NAME_DESC="某些主機只允許一個網站使用一個資料庫名稱。在這種情況下,可以使用資料表前綴字來區分不同Joomla!網站。"
+INSTL_DATABASE_NAME_DESC="某些主機會限制一個網站只能使用一個資料庫名稱。你可以使用資料表前綴字來區分多個不同的Joomla!網站。"
INSTL_DATABASE_NAME_LABEL="資料庫名稱"
INSTL_DATABASE_NO_SCHEMA="沒有針對這個資料庫類型的資料庫綱要(schema)。"
-INSTL_DATABASE_OLD_PROCESS_DESC="所有已存在的Joomla!安裝程式的備份資料表會被取代掉"
-INSTL_DATABASE_OLD_PROCESS_LABEL="舊資料庫程序"
-INSTL_DATABASE_PASSWORD_DESC="為了網站的安全起見,用有使用密碼的資料庫帳號是必需的"
+INSTL_DATABASE_OLD_PROCESS_DESC="所有之前Joomla!安裝程式所建立的備份資料表將會被取代"
+INSTL_DATABASE_OLD_PROCESS_LABEL="舊的資料庫處理方式"
+INSTL_DATABASE_PASSWORD_DESC="為了確保網站的安全,使用有密碼保護的資料庫帳號是必要的"
INSTL_DATABASE_PASSWORD_LABEL="密碼"
-INSTL_DATABASE_PREFIX_DESC="選擇一個資料庫前綴字或使用隨機產生。三或四個字元長度是理想的,只能包含英文字元符號,最後要加入底線。確保要選擇的前綴字沒有被其他資料表使用到。"
+INSTL_DATABASE_PREFIX_DESC="填入一個你想要的資料庫前綴字或使用這裡系統隨機產生的。使用三或四個字元長度是較為理想的名稱,注意只能使用英文字元與數字,而且結尾要加入底線。一定要確保你要使用的前綴字,沒有被其他資料表使用到。"
INSTL_DATABASE_PREFIX_LABEL="資料表前綴字"
-INSTL_DATABASE_PREFIX_MSG="資料表前綴字只能以字元開頭,只能包含英文字元符號和底線符號。"
-INSTL_DATABASE_TYPE_DESC="這大概會是 "MySQLi""
+INSTL_DATABASE_PREFIX_MSG="資料表前綴字只能以字元開頭,而且只能包含英文字元、數字與底線符號。"
+INSTL_DATABASE_TYPE_DESC="這可能會是 "MySQLi""
INSTL_DATABASE_TYPE_LABEL="資料庫類型"
-INSTL_DATABASE_USER_DESC="這可能是"_QQ_"root"_QQ_"或主機商給的帳號"
+INSTL_DATABASE_USER_DESC="這可能會是"_QQ_"root"_QQ_",或主機商給的一組帳號"
INSTL_DATABASE_USER_LABEL="帳號"
;FTP view
@@ -61,32 +59,32 @@ INSTL_FTP_TITLE="FTP設定(可選擇的 - 大部
INSTL_FTP_USER_LABEL="FTP 帳號"
INSTL_VERIFY_FTP_SETTINGS="驗証FTP設定"
INSTL_FTP_SETTINGS_CORRECT="設定正確"
-INSTL_FTP_USER_DESC="警告!建議保留空白以及每次當要傳輸檔案時都輸入你的FTP帳號。"
-INSTL_FTP_PASSWORD_DESC="警告!建議保留空白以及每次當要傳輸檔案時都輸入你的FTP密碼。"
+INSTL_FTP_USER_DESC="警告!建議保留空白,之後每次當要傳輸檔案時都輸入你的FTP帳號。"
+INSTL_FTP_PASSWORD_DESC="警告!建議保留空白,之後每次當要傳輸檔案時都輸入你的FTP密碼。"
;Site View
INSTL_SITE="主要設定"
INSTL_ADMIN_EMAIL_LABEL="管理區Email"
INSTL_ADMIN_EMAIL_DESC="輸入一個email住址。這將是網站超級管理員的email住址。"
INSTL_ADMIN_PASSWORD_LABEL="管理區密碼"
-INSTL_ADMIN_PASSWORD_DESC="設定你的超級管理員帳號的密碼,以及在下面的欄位再次輸入來確認它。"
-INSTL_ADMIN_PASSWORD2_LABEL="管理區確認密碼"
+INSTL_ADMIN_PASSWORD_DESC="設定你的超級管理員帳號的密碼,然後在下面的欄位再輸入一次來確認它。"
+INSTL_ADMIN_PASSWORD2_LABEL="管理區密碼確認"
INSTL_ADMIN_USER_LABEL="管理帳號"
INSTL_ADMIN_USER_DESC="設定超級管理員的帳號。"
INSTL_SITE_NAME_LABEL="網站名稱"
INSTL_SITE_NAME_DESC="輸入你的Joomla!網站名稱"
INSTL_SITE_METADESC_LABEL="敘述"
-INSTL_SITE_METADESC_TITLE_LABEL="輸入可以一段足以描述整個網站架構或宗旨的說明文字,以供搜尋引擎參考。這段內容最好可以在 20 個字以內。"
+INSTL_SITE_METADESC_TITLE_LABEL="輸入一段可以描述整個網站架構或宗旨的說明文字,可以提供搜尋引擎參考。這一段內容最好可以在 20 個字以內。"
INSTL_SITE_OFFLINE_LABEL="網站離線"
-INSTL_SITE_OFFLINE_TITLE_LABEL="設定當安裝完成後要讓網站前台離線(關閉)。網站可以之後在全站設定中重新開放。"
+INSTL_SITE_OFFLINE_TITLE_LABEL="設定是否在安裝完成後,讓網站前台離線(關閉)。你可以之後在全站設定中重新開放網站。"
INSTL_SITE_INSTALL_SAMPLE_LABEL="安裝範例資料"
INSTL_SITE_INSTALL_SAMPLE_DESC="強烈建議初次使用Joomla!的使用者安裝範例資料。 這將會安裝在Joomla!安裝包中的範例內容。"
-INSTL_SITE_INSTALL_SAMPLE_NONE="不使用 (建立一個原本就包含多國語言功能的簡單網站,使用這個選項是必需的)"
-INSTL_SAMPLE_BLOG_SET="部落格英文(GB)範例資料"
-INSTL_SAMPLE_BROCHURE_SET="小冊子英文(GB)範例資料"
-INSTL_SAMPLE_DATA_SET="預設英文(GB)範例資料"
-INSTL_SAMPLE_LEARN_SET="學習Joomla英文(GB)範例資料"
-INSTL_SAMPLE_TESTING_SET="測試用英文(GB)範例資料"
+INSTL_SITE_INSTALL_SAMPLE_NONE="不使用 (建立一個包含多國語言功能的簡單網站)"
+INSTL_SAMPLE_BLOG_SET="部落格(英文)範例資料"
+INSTL_SAMPLE_BROCHURE_SET="小冊子(英文)範例資料"
+INSTL_SAMPLE_DATA_SET="預設(英文)範例資料"
+INSTL_SAMPLE_LEARN_SET="學習Joomla(英文)範例資料"
+INSTL_SAMPLE_TESTING_SET="測試用(英文)範例資料"
INSTL_SITE_INSTALL_SAMPLE_NONE_DESC="安裝Joomla,加上一個選單和登入表單,但不加入任何的內容。"
INSTL_SAMPLE_BLOG_SET_DESC="安裝Joomla,加入一些文章和部落格相關模組,例如較舊的文章、部落格摘要、最多閱讀的文章。"
INSTL_SAMPLE_BROCHURE_SET_DESC="安裝Joomla,加入一些頁面(一個包含首頁、關於我們、新聞、聯絡我們的選單),以及模組例如搜尋、自訂HTML、登入表單。"
@@ -98,15 +96,15 @@ INSTL_SAMPLE_TESTING_SET_DESC="安裝Joomla,加入所以可能的選單項目
INSTL_FINALISATION="最終確認"
INSTL_SUMMARY_INSTALL="安裝"
INSTL_SUMMARY_EMAIL_LABEL="Email設定"
-INSTL_SUMMARY_EMAIL_DESC="在安裝完成後以email寄送設定值到 %s "
+INSTL_SUMMARY_EMAIL_DESC="在安裝完成後是否以email寄送設定值到 %s "
INSTL_SUMMARY_EMAIL_PASSWORDS_LABEL="在Email中包含密碼"
INSTL_SUMMARY_EMAIL_PASSWORDS_DESC="警告!建議不要用Email寄送或在Email中儲存你的密碼"
;Installing view
-INSTL_INSTALLING="安裝中..."
+INSTL_INSTALLING="安裝中 ..."
INSTL_INSTALLING_DATABASE_BACKUP="備份舊的資料表"
INSTL_INSTALLING_DATABASE_REMOVE="移除舊的資料表"
-INSTL_INSTALLING_DATABASE="建議資料表"
+INSTL_INSTALLING_DATABASE="建立資料表"
INSTL_INSTALLING_SAMPLE="安裝範例資料"
INSTL_INSTALLING_CONFIG="建立設定檔案"
INSTL_INSTALLING_EMAIL="寄送email到 %s"
@@ -118,14 +116,20 @@ INSTL_EMAIL_NOT_SENT="無法寄送Email"
;Complete view
INSTL_COMPLETE_ADMINISTRATION_LOGIN_DETAILS="管理區登入詳細資訊"
-INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="安裝資料夾已被刪除。"
-INSTL_COMPLETE_ERROR_FOLDER_DELETE="安裝資料夾無法被刪除。請手動刪除這個資料夾。"
-INSTL_COMPLETE_FOLDER_REMOVED="安裝資料夾已成功刪除"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_ALREADY_REMOVED="installation資料夾已被刪除。"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_ERROR_FOLDER_DELETE="installation資料夾無法被刪除。請手動刪除這個資料夾。"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_FOLDER_REMOVED="installation資料夾已成功刪除"
INSTL_COMPLETE_LANGUAGE_1="在Joomla!中使用你的語言,或是自動建立一個簡單的多國語言網站。"
-INSTL_COMPLETE_LANGUAGE_DESC="在移除安裝資料夾之前,你可以另外再安裝語言。如果你想要另外新增語言到Joomla!應用程式中,請點按接下來的按鈕。"
-INSTL_COMPLETE_LANGUAGE_DESC2="註: 你將需要網路連線,讓Joomla!可以下載和安裝新的語言。 有些伺服器設定不能讓Joomla!直接安裝語言。如果是這個情況,不用擔心,你可以在之後用Joomla!管理區來安裝它們。"
-INSTL_COMPLETE_REMOVE_FOLDER="移除安裝資料夾"
-INSTL_COMPLETE_REMOVE_INSTALLATION="請記得要完整的移除安裝(installation)目錄。 你需要先移除安裝目錄才能再繼續執行其他工作(觀看網站之類)。 這是一個Joomla!安全性的機制。"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_LANGUAGE_DESC="在移除installation資料夾前,你可以額外再安裝語言包。如果你想要額外新增語言到Joomla!中,請點按下面的按鈕。"
+INSTL_COMPLETE_LANGUAGE_DESC2="注意:你將會需要連上網路,讓Joomla!可以下載與安裝新的語言。 某些伺服器設定不能讓Joomla!直接安裝語言包。如果發生這種情況時,不需要太擔心,你可以之後在Joomla!管理區裡來安裝它們。"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_FOLDER="移除installation資料夾"
+; The word 'installation' should not be translated as it is a physical folder.
+INSTL_COMPLETE_REMOVE_INSTALLATION="請記得要完整的移除INSTALLATION資料夾 你需要先移除installation資料夾才能再繼續執行其他工作。這是一個Joomla!安全上的機制。"
INSTL_COMPLETE_TITLE="恭喜!Joomla!現在已經安裝好了。"
INSTL_COMPLETE_INSTALL_LANGUAGES="額外步驟: 安裝語言"
@@ -133,21 +137,19 @@ INSTL_COMPLETE_INSTALL_LANGUAGES="額外步驟: 安裝語言"
INSTL_LANGUAGES="安裝語言包"
INSTL_LANGUAGES_COLUMN_HEADER_LANGUAGE="語言"
INSTL_LANGUAGES_COLUMN_HEADER_VERSION="版本"
-INSTL_LANGUAGES_DESC="Joomla操作介面目前有提供許多語言。點按勾選盒來選擇你想要用的語言,然後點按下一步按鈕安裝它們。 註: 每個語言將會花費約10秒鐘進行下載和安裝的程序。為避免造成下載超時,請不要選擇超過3種語言。"
-INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="每個語言將會花費超過10秒完成程序 請稍等一下,現在將進行下載和安裝語言..."
+INSTL_LANGUAGES_DESC="Joomla操作介面目前提供了許多種語言。勾選你想要使用的語言,然後點按下一步按鈕來安裝它們。 注意: 每個語言將會花費約10秒鐘進行下載與安裝的程序。為避免造成下載超時,請不要勾選超過3種語言。"
+INSTL_LANGUAGES_MESSAGE_PLEASE_WAIT="每個語言將會需要超過10秒來完成程序 請稍等一下,現在將進行下載與安裝語言..."
INSTL_LANGUAGES_MORE_LANGUAGES="如果你想要安裝更多語言,請按下 '上一步' "
-INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="請選擇一個語言。如果你不需要安裝其他語言,請點按'上一步'按鈕"
INSTL_LANGUAGES_NO_LANGUAGE_SELECTED="沒有選擇任何一個要安裝的語言。如果你要安裝更多語言,請按下 '上一步'按鈕,然後在清單中選擇所需的語言。"
-
INSTL_LANGUAGES_WARNING_NO_INTERNET="Joomla!無法連線到語言伺服器。請先結束安裝步驟。"
INSTL_LANGUAGES_WARNING_NO_INTERNET2="註:你之後可以用Joomla!管理區安裝語言"
-INSTL_LANGUAGES_WARNING_BACK_BUTTON="回到最後一個安裝步驟"
+INSTL_LANGUAGES_WARNING_BACK_BUTTON="返回到最後一個安裝步驟"
-;Defaultlanguage view
+;Default language view
INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE="啟用多國語言功能"
-INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE_DESC="如果啟用的話,你的Joomla!網站將會具有多國語言能力,包含有對應每個安裝語言的本地化選單"
+INSTL_DEFAULTLANGUAGE_ACTIVATE_MULTILANGUAGE_DESC="如果啟用的話,你的Joomla!網站將會具有多國語言能力,系統會協助建立對應每個安裝語言的本地化選單"
INSTL_DEFAULTLANGUAGE_ACTIVATE_LANGUAGE_CODE_PLUGIN="啟用語言代碼外掛"
-INSTL_DEFAULTLANGUAGE_ACTIVATE_LANGUAGE_CODE_PLUGIN_DESC="如果啟用的話,語言代碼外掛將會啟用,加入可以改變產生的HTML文件中的語言代碼的能力,用以改善SEO。"
+INSTL_DEFAULTLANGUAGE_ACTIVATE_LANGUAGE_CODE_PLUGIN_DESC="如果啟用的話,將會啟用語言代碼外掛,這會加入可以改變產生出來HTML文件中的語言代碼的能力,用於改善SEO。"
INSTL_DEFAULTLANGUAGE_ADMINISTRATOR="預設管理區(後台)語言"
INSTL_DEFAULTLANGUAGE_ADMIN_COULDNT_SET_DEFAULT="Joomla無法設定這個語言為預設語言。英文將會是管理區後台的預設語言。"
INSTL_DEFAULTLANGUAGE_ADMIN_SET_DEFAULT="Joomla已經設定 %s 為你的預設管理區語言。"
@@ -166,15 +168,15 @@ INSTL_DEFAULTLANGUAGE_COULD_NOT_ENABLE_PLG_LANGUAGEFILTER="Joomla無法自動地
INSTL_DEFAULTLANGUAGE_COULD_NOT_INSTALL_LANGUAGE="Joomla無法安裝 %s 語言"
INSTL_DEFAULTLANGUAGE_COULD_NOT_PUBLISH_MOD_MULTILANGSTATUS="Joomla無法自動地發佈語言狀態模組"
INSTL_DEFAULTLANGUAGE_COULD_NOT_UNPUBLISH_MOD_DEFAULTMENU="Joomla無法自動地停止發佈預設選單"
-INSTL_DEFAULTLANGUAGE_DESC="Joomla已經安裝以下的語言。請選擇你想要的Joomla管理區預設語言。"
-INSTL_DEFAULTLANGUAGE_DESC_FRONTEND="Joomla已經安裝以下的語言。請選擇你想要的Joomla前台預設語言。"
+INSTL_DEFAULTLANGUAGE_DESC="Joomla!已安裝以下的語言。請選擇你想要的Joomla!管理區預設語言。"
+INSTL_DEFAULTLANGUAGE_DESC_FRONTEND="Joomla!已安裝以下的語言。請選擇你想要的Joomla!前台預設語言。"
INSTL_DEFAULTLANGUAGE_FRONTEND="預設網站(前台)語言"
INSTL_DEFAULTLANGUAGE_FRONTEND_COULDNT_SET_DEFAULT="Joomla無法設定這個語言為預設語言。英文將會是網站前台的預設語言。"
INSTL_DEFAULTLANGUAGE_FRONTEND_SET_DEFAULT="Joomla已經設定 %s 為你的預設網站語言。"
INSTL_DEFAULTLANGUAGE_INSTALL_LOCALISED_CONTENT="安裝本地化內容"
-INSTL_DEFAULTLANGUAGE_INSTALL_LOCALISED_CONTENT_DESC="如果啟用的話,Joomla將會自動地為每一個安裝的語言建立一個內容分類。此外也會在每個分類中建立一個精選範例文章。"
+INSTL_DEFAULTLANGUAGE_INSTALL_LOCALISED_CONTENT_DESC="如果啟用的話,Joomla將會自動為每一個安裝的語言建立一個文章分類。另外也會在每個分類中建立一個精選的範例文章。"
INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_TITLE="多國語言"
-INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_DESC="這個區域允許你自動地啟用Joomla!的多國語言功能"
+INSTL_DEFAULTLANGUAGE_MULTILANGUAGE_DESC="這裡可以讓你自動啟用Joomla!的多國語言功能"
INSTL_DEFAULTLANGUAGE_TRY_LATER="你之後可以用Joomla!管理區安裝它"
; IMPORTANT NOTE FOR TRANSLATORS: Do not literally translate this line, instead add the localised name of the language. For example Spanish will be Espa簽ol
@@ -182,6 +184,7 @@ INSTL_DEFAULTLANGUAGE_NATIVE_LANGUAGE_NAME="中文(台灣.繁體)"
;Database Model
INSTL_DATABASE_COULD_NOT_CONNECT="無法連接到資料庫。連接器回傳編號: %s"
+INSTL_DATABASE_COULD_NOT_CREATE_DATABASE="安裝程式無法連接到指定的資料庫,因此無法建立資料庫。請再次確認你的設定值,有可能需要手動建立你的資料庫。"
INSTL_DATABASE_COULD_NOT_REFRESH_MANIFEST_CACHE="無法重新整理這個擴充套件的manifest快取: %s"
INSTL_DATABASE_EMPTY_NAME=""
INSTL_DATABASE_ERROR_BACKINGUP="備份資料庫時發生錯誤。"
@@ -193,6 +196,8 @@ INSTL_DATABASE_FIX_TOO_LONG="MySQL資料表前綴字最大長度為15字元。"
INSTL_DATABASE_INVALID_DB_DETAILS="所提供的資料庫資訊是不正確或空白。"
INSTL_DATABASE_INVALID_MYSQL_VERSION="你需要MySQL 5.0.4 或更高版本才能繼續安裝。你目前的版本是: %s"
INSTL_DATABASE_INVALID_MYSQLI_VERSION="你需要MySQL 5.0.4 或更高版本才能繼續安裝。你目前的版本是: %s"
+INSTL_DATABASE_INVALID_PDOMYSQL_VERSION="你需要MySQL 5.0.4 或更高版本才能繼續安裝。你目前的版本是: %s"
+INSTL_DATABASE_INVALID_POSTGRESQL_VERSION="你需要PostgreSQL 8.3.18 或更高版本才能繼續安裝。你目前的版本是: %s"
INSTL_DATABASE_INVALID_SQLSRV_VERSION="你需要SQL Server 2008 R2 (10.50.1600.1) 或更高版本才能繼續安裝。你目前的版本是: %s"
INSTL_DATABASE_INVALID_SQLZURE_VERSION="你需要SQL Server 2008 R2 (10.50.1600.1) 或更高版本才能繼續安裝。你目前的版本是: %s"
INSTL_DATABASE_INVALID_TYPE="請選擇資料庫類型"
@@ -214,21 +219,21 @@ INSTL_ERROR_CONNECT_DB="無法連接到資料庫。連結器回傳編號: %s"
INSTL_STD_OFFLINE_MSG="這個網站目前關閉進行維護中。 請之後再回來觀看。"
;FTP model
-INSTL_FTP_INVALIDROOT="指定的FTP目錄不是Joomla!所安裝的目錄"
+INSTL_FTP_INVALIDROOT="指定的FTP資料夾不是Joomla!所安裝的資料夾"
INSTL_FTP_NOCONNECT="無法連結FTP伺服器"
-INSTL_FTP_NODELE="指令 "_QQ_"DELE"_QQ_" 執行失敗。"
-INSTL_FTP_NODIRECTORYLISTING="無法傳回FTP伺服器中的目錄列表。"
-INSTL_FTP_NOLIST="指令 "_QQ_"LIST"_QQ_" 執行失敗。"
+INSTL_FTP_NODELE="指令 "DELE" 執行失敗。"
+INSTL_FTP_NODIRECTORYLISTING="無法傳回FTP伺服器中的資料夾列表。"
+INSTL_FTP_NOLIST="指令 "LIST" 執行失敗。"
INSTL_FTP_NOLOGIN="無法登入到FTP伺服器。"
-INSTL_FTP_NOMKD="指令 "_QQ_"MKD"_QQ_" 執行失敗。"
-INSTL_FTP_NONLST="指令 "_QQ_"NLST"_QQ_" 執行失敗。"
-INSTL_FTP_NOPWD="指令 "_QQ_"PWD"_QQ_" 執行失敗。"
-INSTL_FTP_NORETR="指令 "_QQ_"RETR"_QQ_" 執行失敗。"
-INSTL_FTP_NORMD="指令 "_QQ_"RMD"_QQ_" 執行失敗。"
-INSTL_FTP_NOROOT="無法存取指定的FTP目錄。"
-INSTL_FTP_NOSTOR="指令 "_QQ_"STOR"_QQ_" 執行失敗。"
-INSTL_FTP_NOSYST="指令 "_QQ_"SYST"_QQ_" 執行失敗。"
-INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="無法自動偵測FTP根目錄。"
+INSTL_FTP_NOMKD="指令 "MKD" 執行失敗。"
+INSTL_FTP_NONLST="指令 "NLST" 執行失敗。"
+INSTL_FTP_NOPWD="指令 "PWD" 執行失敗。"
+INSTL_FTP_NORETR="指令 "RETR" 執行失敗。"
+INSTL_FTP_NORMD="指令 "RMD" 執行失敗。"
+INSTL_FTP_NOROOT="無法存取指定的FTP資料夾。"
+INSTL_FTP_NOSTOR="指令 "STOR" 執行失敗。"
+INSTL_FTP_NOSYST="指令 "SYST" 執行失敗。"
+INSTL_FTP_UNABLE_DETECT_ROOT_FOLDER="無法自動偵測FTP根資料夾。"
;others
INSTL_CONFPROBLEM="你的設定檔案或目錄目前是無法寫入的,或是建立設定檔案時發生問題。你將需要手動上傳以下的程式碼。 點一下文字區域來選擇所有的程式碼,然後貼到一個新的文字檔案。命名這個檔案為'configuration.php',然後上傳到你的網站根目錄中。"
@@ -249,6 +254,7 @@ INSTL_NOTICEYOUCANSTILLINSTALL=" 你仍然可以繼續安裝,設定檔的
INSTL_OUTPUT_BUFFERING="輸出緩衝"
INSTL_PARSE_INI_FILE_AVAILABLE="INI Parser支援"
INSTL_PHP_VERSION="PHP 版本"
+INSTL_PHP_VERSION_NEWER="PHP 版本 >= %s"
INSTL_REGISTER_GLOBALS="Register Globals關閉"
INSTL_SAFE_MODE="安全模式"
INSTL_SESSION_AUTO_START="Session 自動啟用"
@@ -308,7 +314,8 @@ SITE_NAME="網站名稱"
MYSQL="MySQL"
MYSQLI="MySQLi"
ORACLE="Oracle"
+PDOMYSQL="MySQL (PDO)"
POSTGRESQL="PostgreSQL"
SQLAZURE="Microsoft SQL Azure"
SQLITE="SQLite"
-SQLSRV="Microsoft SQL 伺服器"
+SQLSRV="Microsoft SQL Server"
diff --git a/installation/language/zh-TW/zh-TW.xml b/installation/language/zh-TW/zh-TW.xml
index ce39e258cca12..94f34246f799f 100644
--- a/installation/language/zh-TW/zh-TW.xml
+++ b/installation/language/zh-TW/zh-TW.xml
@@ -1,10 +1,10 @@
Chinese Traditional (Taiwan)
- 3.2.0
- 2010-12-15
+ 3.4.4
+ August 2015Joomla! Taiwanadmin@joomla.orgwww.joomla.org
@@ -15,7 +15,7 @@
zh-TW.ini
- Chinese Traditional (Taiwan)
+ Chinese Traditional (繁體中文 台灣)zh-TW0
diff --git a/language/en-GB/en-GB.lib_joomla.ini b/language/en-GB/en-GB.lib_joomla.ini
index d84b7e6947c43..b7929aa2d9d93 100644
--- a/language/en-GB/en-GB.lib_joomla.ini
+++ b/language/en-GB/en-GB.lib_joomla.ini
@@ -10,7 +10,7 @@
; Keep this string on top
JERROR_PARSING_LANGUAGE_FILE=" : error(s) in line(s) %s"
-JLIB_APPLICATION_ERROR_ACCESS_FORBIDDEN="Access forbidden"
+JLIB_APPLICATION_ERROR_ACCESS_FORBIDDEN="Access forbidden."
JLIB_APPLICATION_ERROR_APPLICATION_GET_NAME="JApplication: :getName() : Can't get or parse class name."
JLIB_APPLICATION_ERROR_APPLICATION_LOAD="Unable to load application: %s"
JLIB_APPLICATION_ERROR_BATCH_CANNOT_CREATE="You are not allowed to create new items in this category."
@@ -181,7 +181,7 @@ JLIB_DATABASE_ERROR_MENU_CANNOT_UNSET_DEFAULT_DEFAULT="At least one menu item ha
JLIB_DATABASE_ERROR_MENU_UNPUBLISH_DEFAULT_HOME="Can't unpublish default home."
JLIB_DATABASE_ERROR_MENU_DEFAULT_CHECKIN_USER_MISMATCH="The current home menu for this language is checked out."
JLIB_DATABASE_ERROR_MENU_UNIQUE_ALIAS="Another menu item with the same parent has this alias (remember it may be a trashed item)."
-JLIB_DATABASE_ERROR_MENU_UNIQUE_ALIAS_ROOT="Another menu item has the same alias in Root (remember it may be a trashed item). Root is the top level parent"
+JLIB_DATABASE_ERROR_MENU_UNIQUE_ALIAS_ROOT="Another menu item has the same alias in Root (remember it may be a trashed item). Root is the top level parent."
JLIB_DATABASE_ERROR_MENU_HOME_NOT_COMPONENT="The home menu item must be a component."
JLIB_DATABASE_ERROR_MENU_HOME_NOT_UNIQUE_IN_MENU="A menu should contain only one Default home."
JLIB_DATABASE_ERROR_MENU_ROOT_ALIAS_COMPONENT="A first level menu item alias can't be 'component'."
@@ -231,10 +231,10 @@ JLIB_FILESYSTEM_GZIP_NOT_SUPPORTED="GZlib Not Supported."
JLIB_FILESYSTEM_GZIP_UNABLE_TO_READ="Unable to read archive (gz)."
JLIB_FILESYSTEM_GZIP_UNABLE_TO_WRITE="Unable to write archive (gz)."
JLIB_FILESYSTEM_GZIP_UNABLE_TO_WRITE_FILE="Unable to write file (gz)."
-JLIB_FILESYSTEM_GZIP_UNABLE_TO_DECOMPRESS="Unable to decompress data"
+JLIB_FILESYSTEM_GZIP_UNABLE_TO_DECOMPRESS="Unable to decompress data."
JLIB_FILESYSTEM_TAR_UNABLE_TO_READ="Unable to read archive (tar)."
-JLIB_FILESYSTEM_TAR_UNABLE_TO_DECOMPRESS="Unable to decompress data"
-JLIB_FILESYSTEM_TAR_UNABLE_TO_CREATE_DESTINATION="Unable to create destination"
+JLIB_FILESYSTEM_TAR_UNABLE_TO_DECOMPRESS="Unable to decompress data."
+JLIB_FILESYSTEM_TAR_UNABLE_TO_CREATE_DESTINATION="Unable to create destination."
JLIB_FILESYSTEM_TAR_UNABLE_TO_WRITE_ENTRY="Unable to write entry."
JLIB_FILESYSTEM_ZIP_NOT_SUPPORTED="Zlib Not Supported."
JLIB_FILESYSTEM_ZIP_UNABLE_TO_READ="Unable to read archive (zip)."
@@ -253,7 +253,7 @@ JLIB_FILESYSTEM_ERROR_COPY_FAILED="Copy failed."
JLIB_FILESYSTEM_DELETE_FAILED="Failed deleting %s"
JLIB_FILESYSTEM_CANNOT_FIND_SOURCE_FILE="Can't find source file."
JLIB_FILESYSTEM_ERROR_JFILE_MOVE_STREAMS="JFile: :move: %s"
-JLIB_FILESYSTEM_ERROR_RENAME_FILE="Rename failed"
+JLIB_FILESYSTEM_ERROR_RENAME_FILE="Rename failed."
JLIB_FILESYSTEM_ERROR_READ_UNABLE_TO_OPEN_FILE="JFile: :read: Unable to open file: %s"
JLIB_FILESYSTEM_ERROR_WRITE_STREAMS="JFile: :write(%1$s): %2$s"
JLIB_FILESYSTEM_ERROR_UPLOAD="JFile: :upload: %s"
@@ -288,8 +288,8 @@ JLIB_FORM_CHANGE_IMAGE_BUTTON="Change Image Button"
JLIB_FORM_CHANGE_USER="Select User"
JLIB_FORM_ERROR_FIELDS_CATEGORY_ERROR_EXTENSION_EMPTY="Extension attribute is empty in the category field."
JLIB_FORM_ERROR_FIELDS_GROUPEDLIST_ELEMENT_NAME="Unknown element type: %s"
-JLIB_FORM_ERROR_NO_DATA="No data"
-JLIB_FORM_ERROR_VALIDATE_FIELD="Invalid xml field"
+JLIB_FORM_ERROR_NO_DATA="No data."
+JLIB_FORM_ERROR_VALIDATE_FIELD="Invalid xml field."
JLIB_FORM_ERROR_XML_FILE_DID_NOT_LOAD="XML file did not load."
JLIB_FORM_FIELD_INVALID="Invalid field: "
JLIB_FORM_INPUTMODE="latin"
@@ -299,7 +299,7 @@ JLIB_FORM_MEDIA_PREVIEW_ALT="Selected image."
JLIB_FORM_MEDIA_PREVIEW_EMPTY="No image selected."
JLIB_FORM_MEDIA_PREVIEW_SELECTED_IMAGE="Selected image."
JLIB_FORM_MEDIA_PREVIEW_TIP_TITLE="Preview"
-JLIB_FORM_SELECT_USER="Select a User"
+JLIB_FORM_SELECT_USER="Select a User."
JLIB_FORM_VALIDATE_FIELD_INVALID="Invalid field: %s"
JLIB_FORM_VALIDATE_FIELD_REQUIRED="Field required: %s"
JLIB_FORM_VALIDATE_FIELD_RULE_MISSING="Validation Rule missing: %s"
@@ -328,9 +328,9 @@ JLIB_HTML_ACCESS_MODIFY_DESC_CAPTION_ACL="ACL"
JLIB_HTML_ACCESS_MODIFY_DESC_CAPTION_TABLE="Table"
JLIB_HTML_ACCESS_SUMMARY_DESC_CAPTION="ACL Summary Table"
JLIB_HTML_ACCESS_SUMMARY_DESC="Shown below is an overview of the permission settings for this article. Select the tabs above to customise these settings by action."
-JLIB_HTML_ACCESS_SUMMARY="Summary"
-JLIB_HTML_ADD_TO_ROOT="Add to root"
-JLIB_HTML_ADD_TO_THIS_MENU="Add to this menu"
+JLIB_HTML_ACCESS_SUMMARY="Summary."
+JLIB_HTML_ADD_TO_ROOT="Add to root."
+JLIB_HTML_ADD_TO_THIS_MENU="Add to this menu."
JLIB_HTML_BATCH_ACCESS_LABEL="Set Access Level"
JLIB_HTML_BATCH_ACCESS_LABEL_DESC="Not making a selection will keep the original access levels when processing."
JLIB_HTML_BATCH_COPY="Copy"
@@ -339,19 +339,21 @@ JLIB_HTML_BATCH_LANGUAGE_LABEL_DESC="Not making a selection will keep the origin
JLIB_HTML_BATCH_LANGUAGE_NOCHANGE="- Keep original Language -"
JLIB_HTML_BATCH_MENU_LABEL="To Move or Copy your selection please select a Category."
JLIB_HTML_BATCH_MOVE="Move"
+JLIB_HTML_BATCH_MOVE_QUESTION="Do you want to move the items or make a copy of them?"
+JLIB_HTML_BATCH_NO_CATEGORY="- Don't move or copy -"
JLIB_HTML_BATCH_NOCHANGE="- Keep original Access Levels -"
JLIB_HTML_BATCH_TAG_LABEL="Add Tag"
JLIB_HTML_BATCH_TAG_LABEL_DESC="Add a tag to selected items."
JLIB_HTML_BATCH_TAG_NOCHANGE="- Keep original Tags -"
-JLIB_HTML_BATCH_USER_LABEL="Set User"
+JLIB_HTML_BATCH_USER_LABEL="Set User."
JLIB_HTML_BATCH_USER_LABEL_DESC="Not making a selection will keep the original user when processing."
JLIB_HTML_BATCH_USER_NOCHANGE="- Keep original User -"
-JLIB_HTML_BATCH_USER_NOUSER="No User"
+JLIB_HTML_BATCH_USER_NOUSER="No User."
JLIB_HTML_BEHAVIOR_ABOUT_THE_CALENDAR="About the Calendar"
JLIB_HTML_BEHAVIOR_CLOSE="Close"
JLIB_HTML_BEHAVIOR_DATE_SELECTION="Date selection:\n"
JLIB_HTML_BEHAVIOR_DISPLAY_S_FIRST="Display %s first"
-JLIB_HTML_BEHAVIOR_DRAG_TO_MOVE="Drag to move"
+JLIB_HTML_BEHAVIOR_DRAG_TO_MOVE="Drag to move."
JLIB_HTML_BEHAVIOR_GO_TODAY="Go to today"
JLIB_HTML_BEHAVIOR_GREEN="Green"
JLIB_HTML_BEHAVIOR_HOLD_MOUSE="- Hold mouse button on any of the buttons above for faster selection."
@@ -371,23 +373,23 @@ JLIB_HTML_BUTTON_BASE_CLASS="Could not load button base class."
JLIB_HTML_BUTTON_NO_LOAD="Could not load button %s (%s);"
JLIB_HTML_BUTTON_NOT_DEFINED="Button not defined for type = %s"
JLIB_HTML_CALENDAR="Calendar"
-JLIB_HTML_CHECKED_OUT="Checked out"
+JLIB_HTML_CHECKED_OUT="Checked out."
JLIB_HTML_CHECKIN="Check-in"
JLIB_HTML_CLOAKING="This email address is being protected from spambots. You need JavaScript enabled to view it."
-JLIB_HTML_DATE_RELATIVE_DAYS="%s days ago"
-JLIB_HTML_DATE_RELATIVE_DAYS_1="%s day ago"
-JLIB_HTML_DATE_RELATIVE_DAYS_0="%s days ago"
-JLIB_HTML_DATE_RELATIVE_HOURS="%s hours ago"
-JLIB_HTML_DATE_RELATIVE_HOURS_1="%s hour ago"
-JLIB_HTML_DATE_RELATIVE_HOURS_0="%s hours ago"
+JLIB_HTML_DATE_RELATIVE_DAYS="%s days ago."
+JLIB_HTML_DATE_RELATIVE_DAYS_1="%s day ago."
+JLIB_HTML_DATE_RELATIVE_DAYS_0="%s days ago."
+JLIB_HTML_DATE_RELATIVE_HOURS="%s hours ago."
+JLIB_HTML_DATE_RELATIVE_HOURS_1="%s hour ago."
+JLIB_HTML_DATE_RELATIVE_HOURS_0="%s hours ago."
JLIB_HTML_DATE_RELATIVE_LESSTHANAMINUTE="Less than a minute ago."
-JLIB_HTML_DATE_RELATIVE_MINUTES="%s minutes ago"
-JLIB_HTML_DATE_RELATIVE_MINUTES_1="%s minute ago"
-JLIB_HTML_DATE_RELATIVE_MINUTES_0="%s minutes ago"
-JLIB_HTML_DATE_RELATIVE_WEEKS="%s weeks ago"
-JLIB_HTML_DATE_RELATIVE_WEEKS_1="%s week ago"
-JLIB_HTML_DATE_RELATIVE_WEEKS_0="%s weeks ago"
-JLIB_HTML_EDIT_MENU_ITEM="Edit menu item"
+JLIB_HTML_DATE_RELATIVE_MINUTES="%s minutes ago."
+JLIB_HTML_DATE_RELATIVE_MINUTES_1="%s minute ago."
+JLIB_HTML_DATE_RELATIVE_MINUTES_0="%s minutes ago."
+JLIB_HTML_DATE_RELATIVE_WEEKS="%s weeks ago."
+JLIB_HTML_DATE_RELATIVE_WEEKS_1="%s week ago."
+JLIB_HTML_DATE_RELATIVE_WEEKS_0="%s weeks ago."
+JLIB_HTML_EDIT_MENU_ITEM="Edit menu item."
JLIB_HTML_EDIT_MENU_ITEM_ID="Item ID: %s"
JLIB_HTML_EDIT_MODULE="Edit module"
JLIB_HTML_EDIT_MODULE_IN_POSITION="Position: %s"
@@ -590,7 +592,7 @@ JLIB_INSTALLER_ERROR_PLG_UNINSTALL_LOAD_MANIFEST="Plugin Uninstall: Could not lo
JLIB_INSTALLER_ERROR_PLG_UNINSTALL_WARNCOREPLUGIN="Plugin Uninstall: Trying to uninstall a core plugin: %s"
JLIB_INSTALLER_ERROR_SQL_ERROR="JInstaller: :Install: Error SQL %s"
JLIB_INSTALLER_ERROR_SQL_FILENOTFOUND="JInstaller: :Install: SQL File not found %s"
-JLIB_INSTALLER_ERROR_SQL_READBUFFER="JInstaller: :Install: SQL File Buffer Read Error"
+JLIB_INSTALLER_ERROR_SQL_READBUFFER="JInstaller: :Install: SQL File Buffer Read Error."
JLIB_INSTALLER_ERROR_TPL_DISCOVER_STORE_DETAILS="Template Discover install: Failed to store template details."
JLIB_INSTALLER_ERROR_TPL_UNINSTALL_ERRORUNKOWNEXTENSION="Template Uninstall: Unknown Extension."
JLIB_INSTALLER_ERROR_TPL_UNINSTALL_INVALID_CLIENT="Template Uninstall: Invalid client."
@@ -628,7 +630,7 @@ JLIB_REGISTRY_EXCEPTION_LOAD_FORMAT_CLASS="Unable to load format class."
JLIB_RULES_ACTION="Action"
JLIB_RULES_ALLOWED="Allowed"
-JLIB_RULES_ALLOWED_ADMIN="Allowed (Super User)."
+JLIB_RULES_ALLOWED_ADMIN="Allowed (Super User)"
JLIB_RULES_CALCULATED_SETTING="Calculated Setting 2"
JLIB_RULES_CONFLICT="Conflict"
JLIB_RULES_DENIED="Denied"
@@ -636,9 +638,9 @@ JLIB_RULES_GROUP="%s"
JLIB_RULES_GROUPS="Groups"
JLIB_RULES_INHERIT="Inherit"
JLIB_RULES_INHERITED="Inherited"
-JLIB_RULES_NOT_ALLOWED="Not Allowed"
+JLIB_RULES_NOT_ALLOWED="Not Allowed."
JLIB_RULES_NOT_ALLOWED_ADMIN_CONFLICT="Conflict"
-JLIB_RULES_NOT_ALLOWED_LOCKED="Not Allowed (Locked)."
+JLIB_RULES_NOT_ALLOWED_LOCKED="Not Allowed (Locked)"
JLIB_RULES_NOT_SET="Not Set"
JLIB_RULES_SELECT_ALLOW_DENY_GROUP="Allow or deny %s for users in the %s group."
JLIB_RULES_SELECT_SETTING="Select New Setting 1"
diff --git a/libraries/cms/html/jgrid.php b/libraries/cms/html/jgrid.php
index 6a5dcc9873e99..94ada807fdf2c 100644
--- a/libraries/cms/html/jgrid.php
+++ b/libraries/cms/html/jgrid.php
@@ -96,7 +96,7 @@ public static function action($i, $task, $prefix = '', $text = '', $active_title
* Returns a state on a grid
*
* @param array $states array of value/state. Each state is an array of the form
- * (task, text, title,html active class, HTML inactive class)
+ * (task, text, active title, inactive title, tip (boolean), HTML active class, HTML inactive class)
* or ('task'=>task, 'text'=>text, 'active_title'=>active title,
* 'inactive_title'=>inactive title, 'tip'=>boolean, 'active_class'=>html active class,
* 'inactive_class'=>html inactive class)
diff --git a/libraries/cms/installer/adapter/component.php b/libraries/cms/installer/adapter/component.php
index 6d64806d749cd..8bc35f967c4dd 100644
--- a/libraries/cms/installer/adapter/component.php
+++ b/libraries/cms/installer/adapter/component.php
@@ -630,6 +630,7 @@ protected function storeExtension($deleteExisting = false)
$this->extension->access = 0;
$this->extension->client_id = 1;
$this->extension->params = $this->parent->getParams();
+ $this->extension->custom_data = '';
}
$this->extension->manifest_cache = $this->parent->generateManifestCache();
@@ -951,6 +952,8 @@ protected function _buildAdminMenus($component_id = null)
$data['component_id'] = $component_id;
$data['img'] = ((string) $menuElement->attributes()->img) ? (string) $menuElement->attributes()->img : 'class:component';
$data['home'] = 0;
+ $data['path'] = '';
+ $data['params'] = '';
}
else
{
@@ -967,6 +970,8 @@ protected function _buildAdminMenus($component_id = null)
$data['component_id'] = $component_id;
$data['img'] = 'class:component';
$data['home'] = 0;
+ $data['path'] = '';
+ $data['params'] = '';
}
// Try to create the menu item in the database
@@ -1128,12 +1133,12 @@ protected function _updateSiteMenus($component_id = null)
// Update all menu items which contain 'index.php?option=com_extension' or 'index.php?option=com_extension&...'
// to use the new component id.
$query = $db->getQuery(true)
- ->update('#__menu AS m')
- ->set('m.component_id = ' . $db->quote($component_id))
- ->where("m.type = " . $db->quote('component'))
- ->where('m.client_id = 0')
- ->where('m.link LIKE ' . $db->quote('index.php?option=' . $option)
- . " OR m.link LIKE '" . $db->escape('index.php?option=' . $option . '&') . "%'");
+ ->update('#__menu')
+ ->set('component_id = ' . $db->quote($component_id))
+ ->where("type = " . $db->quote('component'))
+ ->where('client_id = 0')
+ ->where('link LIKE ' . $db->quote('index.php?option=' . $option)
+ . " OR link LIKE '" . $db->escape('index.php?option=' . $option . '&') . "%'");
$db->setQuery($query);
diff --git a/libraries/cms/installer/adapter/file.php b/libraries/cms/installer/adapter/file.php
index aadebfe40d8af..cc1af545431ac 100644
--- a/libraries/cms/installer/adapter/file.php
+++ b/libraries/cms/installer/adapter/file.php
@@ -259,6 +259,7 @@ protected function storeExtension()
$this->extension->params = '';
$this->extension->system_data = '';
$this->extension->manifest_cache = $this->parent->generateManifestCache();
+ $this->extension->custom_data = '';
if (!$this->extension->store())
{
diff --git a/libraries/cms/version/version.php b/libraries/cms/version/version.php
index 5ac874d07ce75..991966e8f88ef 100644
--- a/libraries/cms/version/version.php
+++ b/libraries/cms/version/version.php
@@ -23,10 +23,10 @@ final class JVersion
public $RELEASE = '3.4';
/** @var string Maintenance version. */
- public $DEV_LEVEL = '4-dev';
+ public $DEV_LEVEL = '5';
/** @var string Development STATUS. */
- public $DEV_STATUS = 'development';
+ public $DEV_STATUS = 'Development';
/** @var string Build number. */
public $BUILD = '';
@@ -35,10 +35,10 @@ final class JVersion
public $CODENAME = 'Ember';
/** @var string Release date. */
- public $RELDATE = '2-July-2015';
+ public $RELDATE = '8-September-2015';
/** @var string Release time. */
- public $RELTIME = '16:00';
+ public $RELTIME = '21:30';
/** @var string Release timezone. */
public $RELTZ = 'GMT';
diff --git a/libraries/joomla/filter/input.php b/libraries/joomla/filter/input.php
index 821055051d22a..0f13365663c15 100644
--- a/libraries/joomla/filter/input.php
+++ b/libraries/joomla/filter/input.php
@@ -439,7 +439,7 @@ public static function isSafeFile($file, $options = array())
if (!empty($options['forbidden_extensions']))
{
$explodedName = explode('.', $intendedName);
- array_reverse($explodedName);
+ $explodedName = array_reverse($explodedName);
array_pop($explodedName);
array_map('strtolower', $explodedName);
diff --git a/libraries/joomla/form/form.php b/libraries/joomla/form/form.php
index de0f13c31116a..45c0d67ed93db 100644
--- a/libraries/joomla/form/form.php
+++ b/libraries/joomla/form/form.php
@@ -136,8 +136,8 @@ public function bind($data)
}
elseif ($data instanceof JObject)
{
- // Handle a JObject.
- $data = $data->getProperties();
+ // Handle a JObject. Getting just the properties won't work. We need to convert any nested JObject too.
+ $data = JArrayHelper::fromObject($data);
}
else
{
@@ -242,16 +242,6 @@ public function filter($data, $group = null)
{
$output->set($key, $this->filterField($field, $input->get($key, (string) $field['default'])));
}
-
- // Get the JFormField object for this field, only it knows if it is supposed to be multiple.
- $jfield = $this->getField($name, $group);
-
- // Fields supporting multiple values must be stored as empty arrays when no values are selected.
- // If not, they will appear to be unset and then revert to their default value.
- if ($jfield && $jfield->multiple && !$output->exists($key))
- {
- $output->set($key, array());
- }
}
return $output->toArray();
diff --git a/libraries/joomla/table/asset.php b/libraries/joomla/table/asset.php
index 37b8ddca433f5..01910f862badb 100644
--- a/libraries/joomla/table/asset.php
+++ b/libraries/joomla/table/asset.php
@@ -99,6 +99,10 @@ public function check()
{
$this->parent_id = (int) $this->parent_id;
+ if (empty($this->rules))
+ {
+ $this->rules = '{}';
+ }
// JTableNested does not allow parent_id = 0, override this.
if ($this->parent_id > 0)
{
@@ -118,10 +122,7 @@ public function check()
$this->setError('Invalid Parent ID');
return false;
- }
- if (empty($this->rules))
- {
- $this->rules = '{}';
+
}
}
diff --git a/libraries/legacy/table/category.php b/libraries/legacy/table/category.php
index be8a1e36cb4d1..506a6e0ad9204 100644
--- a/libraries/legacy/table/category.php
+++ b/libraries/legacy/table/category.php
@@ -227,7 +227,7 @@ public function store($updateNulls = false)
// Verify that the alias is unique
$table = JTable::getInstance('Category', 'JTable', array('dbo' => $this->getDbo()));
- if ($table->load(array('alias' => $this->alias, 'parent_id' => $this->parent_id, 'extension' => $this->extension))
+ if ($table->load(array('alias' => $this->alias, 'parent_id' => (int) $this->parent_id, 'extension' => $this->extension))
&& ($table->id != $this->id || $this->id == 0))
{
$this->setError(JText::_('JLIB_DATABASE_ERROR_CATEGORY_UNIQUE_ALIAS'));
diff --git a/libraries/legacy/table/menu.php b/libraries/legacy/table/menu.php
index 238cae7e8f3a3..747ca19aeb598 100644
--- a/libraries/legacy/table/menu.php
+++ b/libraries/legacy/table/menu.php
@@ -111,6 +111,22 @@ public function check()
$this->alias = $this->title;
}
+ // Check for a path.
+ if (trim($this->path) == '')
+ {
+ $this->path = $this->alias;
+ }
+ // Check for params.
+ if (trim($this->params) == '')
+ {
+ $this->params = '{}';
+ }
+ // Check for img.
+ if (trim($this->img) == '')
+ {
+ $this->img = ' ';
+ }
+
// Make the alias URL safe.
$this->alias = JApplication::stringURLSafe($this->alias);
diff --git a/media/editors/codemirror/addon/display/autorefresh.js b/media/editors/codemirror/addon/display/autorefresh.js
new file mode 100644
index 0000000000000..1e0e850469c73
--- /dev/null
+++ b/media/editors/codemirror/addon/display/autorefresh.js
@@ -0,0 +1,47 @@
+// CodeMirror, copyright (c) by Marijn Haverbeke and others
+// Distributed under an MIT license: http://codemirror.net/LICENSE
+
+(function(mod) {
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
+ mod(require("../../lib/codemirror"))
+ else if (typeof define == "function" && define.amd) // AMD
+ define(["../../lib/codemirror"], mod)
+ else // Plain browser env
+ mod(CodeMirror)
+})(function(CodeMirror) {
+ "use strict"
+
+ CodeMirror.defineOption("autoRefresh", false, function(cm, val) {
+ if (cm.state.autoRefresh) {
+ stopListening(cm, cm.state.autoRefresh)
+ cm.state.autoRefresh = null
+ }
+ if (val && cm.display.wrapper.offsetHeight == 0)
+ startListening(cm, cm.state.autoRefresh = {delay: val.delay || 250})
+ })
+
+ function startListening(cm, state) {
+ function check() {
+ if (cm.display.wrapper.offsetHeight) {
+ stopListening(cm, state)
+ if (cm.display.lastWrapHeight != cm.display.wrapper.clientHeight)
+ cm.refresh()
+ } else {
+ state.timeout = setTimeout(check, state.delay)
+ }
+ }
+ state.timeout = setTimeout(check, state.delay)
+ state.hurry = function() {
+ clearTimeout(state.timeout)
+ state.timeout = setTimeout(check, 50)
+ }
+ CodeMirror.on(window, "mouseup", state.hurry)
+ CodeMirror.on(window, "keyup", state.hurry)
+ }
+
+ function stopListening(_cm, state) {
+ clearTimeout(state.timeout)
+ CodeMirror.off(window, "mouseup", state.hurry)
+ CodeMirror.off(window, "keyup", state.hurry)
+ }
+});
diff --git a/media/editors/codemirror/addon/display/autorefresh.min.js b/media/editors/codemirror/addon/display/autorefresh.min.js
new file mode 100644
index 0000000000000..c72c06b19cace
--- /dev/null
+++ b/media/editors/codemirror/addon/display/autorefresh.min.js
@@ -0,0 +1 @@
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(b,d){function e(){b.display.wrapper.offsetHeight?(c(b,d),b.display.lastWrapHeight!=b.display.wrapper.clientHeight&&b.refresh()):d.timeout=setTimeout(e,d.delay)}d.timeout=setTimeout(e,d.delay),d.hurry=function(){clearTimeout(d.timeout),d.timeout=setTimeout(e,50)},a.on(window,"mouseup",d.hurry),a.on(window,"keyup",d.hurry)}function c(b,c){clearTimeout(c.timeout),a.off(window,"mouseup",c.hurry),a.off(window,"keyup",c.hurry)}a.defineOption("autoRefresh",!1,function(a,d){a.state.autoRefresh&&(c(a,a.state.autoRefresh),a.state.autoRefresh=null),d&&0==a.display.wrapper.offsetHeight&&b(a,a.state.autoRefresh={delay:d.delay||250})})});
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/edit/closetag.js b/media/editors/codemirror/addon/edit/closetag.js
index e68d52d9dcd76..a518da3ec12aa 100644
--- a/media/editors/codemirror/addon/edit/closetag.js
+++ b/media/editors/codemirror/addon/edit/closetag.js
@@ -108,19 +108,22 @@
// when completing in JS/CSS snippet in htmlmixed mode. Does not
// work for other XML embedded languages (there is no general
// way to go from a mixed mode to its current XML state).
+ var replacement;
if (inner.mode.name != "xml") {
if (cm.getMode().name == "htmlmixed" && inner.mode.name == "javascript")
- replacements[i] = head + "script>";
+ replacement = head + "script";
else if (cm.getMode().name == "htmlmixed" && inner.mode.name == "css")
- replacements[i] = head + "style>";
+ replacement = head + "style";
else
return CodeMirror.Pass;
} else {
if (!state.context || !state.context.tagName ||
closingTagExists(cm, state.context.tagName, pos, state))
return CodeMirror.Pass;
- replacements[i] = head + state.context.tagName + ">";
+ replacement = head + state.context.tagName;
}
+ if (cm.getLine(pos.line).charAt(tok.end) != ">") replacement += ">";
+ replacements[i] = replacement;
}
cm.replaceSelections(replacements);
ranges = cm.listSelections();
diff --git a/media/editors/codemirror/addon/edit/closetag.min.js b/media/editors/codemirror/addon/edit/closetag.min.js
index cd71a90cb341e..53441849e3aca 100644
--- a/media/editors/codemirror/addon/edit/closetag.min.js
+++ b/media/editors/codemirror/addon/edit/closetag.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("../fold/xml-fold")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../fold/xml-fold"],a):a(CodeMirror)}(function(a){function b(b){if(b.getOption("disableInput"))return a.Pass;for(var c=b.listSelections(),d=[],i=0;ij.ch&&(r=r.slice(0,r.length-k.end+j.ch));var s=r.toLowerCase();if(!r||"string"==k.type&&(k.end!=j.ch||!/[\"\']/.test(k.string.charAt(k.string.length-1))||1==k.string.length)||"tag"==k.type&&"closeTag"==m.type||k.string.indexOf("/")==k.string.length-1||p&&e(p,s)>-1||f(b,r,j,m,!0))return a.Pass;var t=q&&e(q,s)>-1;d[i]={indent:t,text:">"+(t?"\n\n":"")+""+r+">",newPos:t?a.Pos(j.line+1,0):a.Pos(j.line,j.ch+1)}}for(var i=c.length-1;i>=0;i--){var u=d[i];b.replaceRange(u.text,c[i].head,c[i].anchor,"+insert");var v=b.listSelections().slice(0);v[i]={head:u.newPos,anchor:u.newPos},b.setSelections(v),u.indent&&(b.indentLine(u.newPos.line,null,!0),b.indentLine(u.newPos.line+1,null,!0))}}function c(b,c){for(var d=b.listSelections(),e=[],g=c?"/":"",h=0;h";else{if("htmlmixed"!=b.getMode().name||"css"!=k.mode.name)return a.Pass;e[h]=g+"style>"}else{if(!l.context||!l.context.tagName||f(b,l.context.tagName,i,l))return a.Pass;e[h]=g+l.context.tagName+">"}}b.replaceSelections(e),d=b.listSelections();for(var h=0;hc;++c)if(a[c]==b)return c;return-1}function f(b,c,d,e,f){if(!a.scanForClosingTag)return!1;var g=Math.min(b.lastLine()+1,d.line+500),h=a.scanForClosingTag(b,d,null,g);if(!h||h.tag!=c)return!1;for(var i=e.context,j=f?1:0;i&&i.tagName==c;i=i.prev)++j;d=h.to;for(var k=1;j>k;k++){var l=a.scanForClosingTag(b,d,null,g);if(!l||l.tag!=c)return!1;d=l.to}return!0}a.defineOption("autoCloseTags",!1,function(c,e,f){if(f!=a.Init&&f&&c.removeKeyMap("autoCloseTags"),e){var g={name:"autoCloseTags"};("object"!=typeof e||e.whenClosing)&&(g["'/'"]=function(a){return d(a)}),("object"!=typeof e||e.whenOpening)&&(g["'>'"]=function(a){return b(a)}),c.addKeyMap(g)}});var g=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],h=["applet","blockquote","body","button","div","dl","fieldset","form","frameset","h1","h2","h3","h4","h5","h6","head","html","iframe","layer","legend","object","ol","p","select","table","ul"];a.commands.closeTag=function(a){return c(a)}});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("../fold/xml-fold")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../fold/xml-fold"],a):a(CodeMirror)}(function(a){function b(b){if(b.getOption("disableInput"))return a.Pass;for(var c=b.listSelections(),d=[],i=0;ij.ch&&(r=r.slice(0,r.length-k.end+j.ch));var s=r.toLowerCase();if(!r||"string"==k.type&&(k.end!=j.ch||!/[\"\']/.test(k.string.charAt(k.string.length-1))||1==k.string.length)||"tag"==k.type&&"closeTag"==m.type||k.string.indexOf("/")==k.string.length-1||p&&e(p,s)>-1||f(b,r,j,m,!0))return a.Pass;var t=q&&e(q,s)>-1;d[i]={indent:t,text:">"+(t?"\n\n":"")+""+r+">",newPos:t?a.Pos(j.line+1,0):a.Pos(j.line,j.ch+1)}}for(var i=c.length-1;i>=0;i--){var u=d[i];b.replaceRange(u.text,c[i].head,c[i].anchor,"+insert");var v=b.listSelections().slice(0);v[i]={head:u.newPos,anchor:u.newPos},b.setSelections(v),u.indent&&(b.indentLine(u.newPos.line,null,!0),b.indentLine(u.newPos.line+1,null,!0))}}function c(b,c){for(var d=b.listSelections(),e=[],g=c?"/":"",h=0;h"!=b.getLine(i.line).charAt(j.end)&&(m+=">"),e[h]=m}b.replaceSelections(e),d=b.listSelections();for(var h=0;hc;++c)if(a[c]==b)return c;return-1}function f(b,c,d,e,f){if(!a.scanForClosingTag)return!1;var g=Math.min(b.lastLine()+1,d.line+500),h=a.scanForClosingTag(b,d,null,g);if(!h||h.tag!=c)return!1;for(var i=e.context,j=f?1:0;i&&i.tagName==c;i=i.prev)++j;d=h.to;for(var k=1;j>k;k++){var l=a.scanForClosingTag(b,d,null,g);if(!l||l.tag!=c)return!1;d=l.to}return!0}a.defineOption("autoCloseTags",!1,function(c,e,f){if(f!=a.Init&&f&&c.removeKeyMap("autoCloseTags"),e){var g={name:"autoCloseTags"};("object"!=typeof e||e.whenClosing)&&(g["'/'"]=function(a){return d(a)}),("object"!=typeof e||e.whenOpening)&&(g["'>'"]=function(a){return b(a)}),c.addKeyMap(g)}});var g=["area","base","br","col","command","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"],h=["applet","blockquote","body","button","div","dl","fieldset","form","frameset","h1","h2","h3","h4","h5","h6","head","html","iframe","layer","legend","object","ol","p","select","table","ul"];a.commands.closeTag=function(a){return c(a)}});
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/edit/continuelist.js b/media/editors/codemirror/addon/edit/continuelist.js
index 86de49c53842a..df5179fe47be0 100644
--- a/media/editors/codemirror/addon/edit/continuelist.js
+++ b/media/editors/codemirror/addon/edit/continuelist.js
@@ -11,8 +11,8 @@
})(function(CodeMirror) {
"use strict";
- var listRE = /^(\s*)(>[> ]*|[*+-]\s|(\d+)\.)(\s*)/,
- emptyListRE = /^(\s*)(>[> ]*|[*+-]|(\d+)\.)(\s*)$/,
+ var listRE = /^(\s*)(>[> ]*|[*+-]\s|(\d+)([.)]))(\s*)/,
+ emptyListRE = /^(\s*)(>[> ]*|[*+-]|(\d+)[.)])(\s*)$/,
unorderedListRE = /[*+-]\s/;
CodeMirror.commands.newlineAndIndentContinueMarkdownList = function(cm) {
@@ -37,10 +37,10 @@
});
replacements[i] = "\n";
} else {
- var indent = match[1], after = match[4];
+ var indent = match[1], after = match[5];
var bullet = unorderedListRE.test(match[2]) || match[2].indexOf(">") >= 0
? match[2]
- : (parseInt(match[3], 10) + 1) + ".";
+ : (parseInt(match[3], 10) + 1) + match[4];
replacements[i] = "\n" + indent + bullet + after;
}
diff --git a/media/editors/codemirror/addon/edit/continuelist.min.js b/media/editors/codemirror/addon/edit/continuelist.min.js
index 95c28fa7fda92..7d4f518d0b183 100644
--- a/media/editors/codemirror/addon/edit/continuelist.min.js
+++ b/media/editors/codemirror/addon/edit/continuelist.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";var b=/^(\s*)(>[> ]*|[*+-]\s|(\d+)\.)(\s*)/,c=/^(\s*)(>[> ]*|[*+-]|(\d+)\.)(\s*)$/,d=/[*+-]\s/;a.commands.newlineAndIndentContinueMarkdownList=function(e){if(e.getOption("disableInput"))return a.Pass;for(var f=e.listSelections(),g=[],h=0;h")>=0?n[2]:parseInt(n[3],10)+1+".";g[h]="\n"+o+q+p}}e.replaceSelections(g)}});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";var b=/^(\s*)(>[> ]*|[*+-]\s|(\d+)([.)]))(\s*)/,c=/^(\s*)(>[> ]*|[*+-]|(\d+)[.)])(\s*)$/,d=/[*+-]\s/;a.commands.newlineAndIndentContinueMarkdownList=function(e){if(e.getOption("disableInput"))return a.Pass;for(var f=e.listSelections(),g=[],h=0;h")>=0?n[2]:parseInt(n[3],10)+1+n[4];g[h]="\n"+o+q+p}}e.replaceSelections(g)}});
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/hint/anyword-hint.js b/media/editors/codemirror/addon/hint/anyword-hint.js
index 8e74a92080477..dae78e2efbfbf 100644
--- a/media/editors/codemirror/addon/hint/anyword-hint.js
+++ b/media/editors/codemirror/addon/hint/anyword-hint.js
@@ -21,7 +21,7 @@
while (start && word.test(curLine.charAt(start - 1))) --start;
var curWord = start != end && curLine.slice(start, end);
- var list = [], seen = {};
+ var list = options && options.list || [], seen = {};
var re = new RegExp(word.source, "g");
for (var dir = -1; dir <= 1; dir += 2) {
var line = cur.line, endLine = Math.min(Math.max(line + dir * range, editor.firstLine()), editor.lastLine()) + dir;
diff --git a/media/editors/codemirror/addon/hint/anyword-hint.min.js b/media/editors/codemirror/addon/hint/anyword-hint.min.js
index 0d99cedd46105..a5fc719d491da 100644
--- a/media/editors/codemirror/addon/hint/anyword-hint.min.js
+++ b/media/editors/codemirror/addon/hint/anyword-hint.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";var b=/[\w$]+/,c=500;a.registerHelper("hint","anyword",function(d,e){for(var f=e&&e.word||b,g=e&&e.range||c,h=d.getCursor(),i=d.getLine(h.line),j=h.ch,k=j;k&&f.test(i.charAt(k-1));)--k;for(var l=k!=j&&i.slice(k,j),m=[],n={},o=new RegExp(f.source,"g"),p=-1;1>=p;p+=2)for(var q=h.line,r=Math.min(Math.max(q+p*g,d.firstLine()),d.lastLine())+p;q!=r;q+=p)for(var s,t=d.getLine(q);s=o.exec(t);)(q!=h.line||s[0]!==l)&&(l&&0!=s[0].lastIndexOf(l,0)||Object.prototype.hasOwnProperty.call(n,s[0])||(n[s[0]]=!0,m.push(s[0])));return{list:m,from:a.Pos(h.line,k),to:a.Pos(h.line,j)}})});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";var b=/[\w$]+/,c=500;a.registerHelper("hint","anyword",function(d,e){for(var f=e&&e.word||b,g=e&&e.range||c,h=d.getCursor(),i=d.getLine(h.line),j=h.ch,k=j;k&&f.test(i.charAt(k-1));)--k;for(var l=k!=j&&i.slice(k,j),m=e&&e.list||[],n={},o=new RegExp(f.source,"g"),p=-1;1>=p;p+=2)for(var q=h.line,r=Math.min(Math.max(q+p*g,d.firstLine()),d.lastLine())+p;q!=r;q+=p)for(var s,t=d.getLine(q);s=o.exec(t);)(q!=h.line||s[0]!==l)&&(l&&0!=s[0].lastIndexOf(l,0)||Object.prototype.hasOwnProperty.call(n,s[0])||(n[s[0]]=!0,m.push(s[0])));return{list:m,from:a.Pos(h.line,k),to:a.Pos(h.line,j)}})});
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/hint/show-hint.js b/media/editors/codemirror/addon/hint/show-hint.js
index d228fc88909cb..980da5235d4c0 100644
--- a/media/editors/codemirror/addon/hint/show-hint.js
+++ b/media/editors/codemirror/addon/hint/show-hint.js
@@ -99,7 +99,6 @@
update: function(first) {
if (this.tick == null) return;
- if (this.data) CodeMirror.signal(this.data, "update");
if (!this.options.hint.async) {
this.finishUpdate(this.options.hint(this.cm, this.options), first);
} else {
@@ -111,6 +110,8 @@
},
finishUpdate: function(data, first) {
+ if (this.data) CodeMirror.signal(this.data, "update");
+ if (data && this.data && CodeMirror.cmpPos(data.from, this.data.from)) data = null;
this.data = data;
var picked = (this.widget && this.widget.picked) || (first && this.options.completeSingle);
@@ -351,18 +352,20 @@
CodeMirror.registerHelper("hint", "fromList", function(cm, options) {
var cur = cm.getCursor(), token = cm.getTokenAt(cur);
+ var to = CodeMirror.Pos(cur.line, token.end);
+ if (token.string && /\w/.test(token.string[token.string.length - 1])) {
+ var term = token.string, from = CodeMirror.Pos(cur.line, token.start);
+ } else {
+ var term = "", from = to;
+ }
var found = [];
for (var i = 0; i < options.words.length; i++) {
var word = options.words[i];
- if (word.slice(0, token.string.length) == token.string)
+ if (word.slice(0, term.length) == term)
found.push(word);
}
- if (found.length) return {
- list: found,
- from: CodeMirror.Pos(cur.line, token.start),
- to: CodeMirror.Pos(cur.line, token.end)
- };
+ if (found.length) return {list: found, from: from, to: to};
});
CodeMirror.commands.autocomplete = CodeMirror.showHint;
diff --git a/media/editors/codemirror/addon/hint/show-hint.min.js b/media/editors/codemirror/addon/hint/show-hint.min.js
index c92ce65b3dfd1..330f3bcf00fde 100644
--- a/media/editors/codemirror/addon/hint/show-hint.min.js
+++ b/media/editors/codemirror/addon/hint/show-hint.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b){this.cm=a,this.options=this.buildOptions(b),this.widget=null,this.debounce=0,this.tick=0,this.startPos=this.cm.getCursor(),this.startLen=this.cm.getLine(this.startPos.line).length;var c=this;a.on("cursorActivity",this.activityFunc=function(){c.cursorActivity()})}function c(a){return"string"==typeof a?a:a.text}function d(a,b){function c(a,c){var e;e="string"!=typeof c?function(a){return c(a,b)}:d.hasOwnProperty(c)?d[c]:c,f[a]=e}var d={Up:function(){b.moveFocus(-1)},Down:function(){b.moveFocus(1)},PageUp:function(){b.moveFocus(-b.menuSize()+1,!0)},PageDown:function(){b.moveFocus(b.menuSize()-1,!0)},Home:function(){b.setFocus(0)},End:function(){b.setFocus(b.length-1)},Enter:b.pick,Tab:b.pick,Esc:b.close},e=a.options.customKeys,f=e?{}:d;if(e)for(var g in e)e.hasOwnProperty(g)&&c(g,e[g]);var h=a.options.extraKeys;if(h)for(var g in h)h.hasOwnProperty(g)&&c(g,h[g]);return f}function e(a,b){for(;b&&b!=a;){if("LI"===b.nodeName.toUpperCase()&&b.parentNode==a)return b;b=b.parentNode}}function f(b,f){this.completion=b,this.data=f,this.picked=!1;var i=this,j=b.cm,k=this.hints=document.createElement("ul");k.className="CodeMirror-hints",this.selectedHint=f.selectedHint||0;for(var l=f.list,m=0;m0){var y=w.bottom-w.top,z=q.top-(q.bottom-w.top);if(z-y>0)k.style.top=(s=q.top-y)+"px",t=!1;else if(y>v){k.style.height=v-5+"px",k.style.top=(s=q.bottom-w.top)+"px";var A=j.getCursor();f.from.ch!=A.ch&&(q=j.cursorCoords(A),k.style.left=(r=q.left)+"px",w=k.getBoundingClientRect())}}var B=w.right-u;if(B>0&&(w.right-w.left>u&&(k.style.width=u-5+"px",B-=w.right-w.left-u),k.style.left=(r=q.left-B)+"px"),j.addKeyMap(this.keyMap=d(b,{moveFocus:function(a,b){i.changeActive(i.selectedHint+a,b)},setFocus:function(a){i.changeActive(a)},menuSize:function(){return i.screenAmount()},length:l.length,close:function(){b.close()},pick:function(){i.pick()},data:f})),b.options.closeOnUnfocus){var C;j.on("blur",this.onBlur=function(){C=setTimeout(function(){b.close()},100)}),j.on("focus",this.onFocus=function(){clearTimeout(C)})}var D=j.getScrollInfo();return j.on("scroll",this.onScroll=function(){var a=j.getScrollInfo(),c=j.getWrapperElement().getBoundingClientRect(),d=s+D.top-a.top,e=d-(window.pageYOffset||(document.documentElement||document.body).scrollTop);return t||(e+=k.offsetHeight),e<=c.top||e>=c.bottom?b.close():(k.style.top=d+"px",void(k.style.left=r+D.left-a.left+"px"))}),a.on(k,"dblclick",function(a){var b=e(k,a.target||a.srcElement);b&&null!=b.hintId&&(i.changeActive(b.hintId),i.pick())}),a.on(k,"click",function(a){var c=e(k,a.target||a.srcElement);c&&null!=c.hintId&&(i.changeActive(c.hintId),b.options.completeOnSingleClick&&i.pick())}),a.on(k,"mousedown",function(){setTimeout(function(){j.focus()},20)}),a.signal(f,"select",l[0],k.firstChild),!0}var g="CodeMirror-hint",h="CodeMirror-hint-active";a.showHint=function(a,b,c){if(!b)return a.showHint(c);c&&c.async&&(b.async=!0);var d={hint:b};if(c)for(var e in c)d[e]=c[e];return a.showHint(d)},a.defineExtension("showHint",function(c){if(!(this.listSelections().length>1||this.somethingSelected())){this.state.completionActive&&this.state.completionActive.close();var d=this.state.completionActive=new b(this,c);d.options.hint&&(a.signal(this,"startCompletion",this),d.update(!0))}});var i=window.requestAnimationFrame||function(a){return setTimeout(a,1e3/60)},j=window.cancelAnimationFrame||clearTimeout;b.prototype={close:function(){this.active()&&(this.cm.state.completionActive=null,this.tick=null,this.cm.off("cursorActivity",this.activityFunc),this.widget&&this.data&&a.signal(this.data,"close"),this.widget&&this.widget.close(),a.signal(this.cm,"endCompletion",this.cm))},active:function(){return this.cm.state.completionActive==this},pick:function(b,d){var e=b.list[d];e.hint?e.hint(this.cm,b,e):this.cm.replaceRange(c(e),e.from||b.from,e.to||b.to,"complete"),a.signal(b,"pick",e),this.close()},cursorActivity:function(){this.debounce&&(j(this.debounce),this.debounce=0);var a=this.cm.getCursor(),b=this.cm.getLine(a.line);if(a.line!=this.startPos.line||b.length-a.ch!=this.startLen-this.startPos.ch||a.ch=this.data.list.length?b=c?this.data.list.length-1:0:0>b&&(b=c?0:this.data.list.length-1),this.selectedHint!=b){var d=this.hints.childNodes[this.selectedHint];d.className=d.className.replace(" "+h,""),d=this.hints.childNodes[this.selectedHint=b],d.className+=" "+h,d.offsetTopthis.hints.scrollTop+this.hints.clientHeight&&(this.hints.scrollTop=d.offsetTop+d.offsetHeight-this.hints.clientHeight+3),a.signal(this.data,"select",this.data.list[this.selectedHint],d)}},screenAmount:function(){return Math.floor(this.hints.clientHeight/this.hints.firstChild.offsetHeight)||1}},a.registerHelper("hint","auto",function(b,c){var d,e=b.getHelpers(b.getCursor(),"hint");if(e.length)for(var f=0;f,]/,closeOnUnfocus:!0,completeOnSingleClick:!1,container:null,customKeys:null,extraKeys:null};a.defineOption("hintOptions",null)});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b){this.cm=a,this.options=this.buildOptions(b),this.widget=null,this.debounce=0,this.tick=0,this.startPos=this.cm.getCursor(),this.startLen=this.cm.getLine(this.startPos.line).length;var c=this;a.on("cursorActivity",this.activityFunc=function(){c.cursorActivity()})}function c(a){return"string"==typeof a?a:a.text}function d(a,b){function c(a,c){var e;e="string"!=typeof c?function(a){return c(a,b)}:d.hasOwnProperty(c)?d[c]:c,f[a]=e}var d={Up:function(){b.moveFocus(-1)},Down:function(){b.moveFocus(1)},PageUp:function(){b.moveFocus(-b.menuSize()+1,!0)},PageDown:function(){b.moveFocus(b.menuSize()-1,!0)},Home:function(){b.setFocus(0)},End:function(){b.setFocus(b.length-1)},Enter:b.pick,Tab:b.pick,Esc:b.close},e=a.options.customKeys,f=e?{}:d;if(e)for(var g in e)e.hasOwnProperty(g)&&c(g,e[g]);var h=a.options.extraKeys;if(h)for(var g in h)h.hasOwnProperty(g)&&c(g,h[g]);return f}function e(a,b){for(;b&&b!=a;){if("LI"===b.nodeName.toUpperCase()&&b.parentNode==a)return b;b=b.parentNode}}function f(b,f){this.completion=b,this.data=f,this.picked=!1;var i=this,j=b.cm,k=this.hints=document.createElement("ul");k.className="CodeMirror-hints",this.selectedHint=f.selectedHint||0;for(var l=f.list,m=0;m0){var y=w.bottom-w.top,z=q.top-(q.bottom-w.top);if(z-y>0)k.style.top=(s=q.top-y)+"px",t=!1;else if(y>v){k.style.height=v-5+"px",k.style.top=(s=q.bottom-w.top)+"px";var A=j.getCursor();f.from.ch!=A.ch&&(q=j.cursorCoords(A),k.style.left=(r=q.left)+"px",w=k.getBoundingClientRect())}}var B=w.right-u;if(B>0&&(w.right-w.left>u&&(k.style.width=u-5+"px",B-=w.right-w.left-u),k.style.left=(r=q.left-B)+"px"),j.addKeyMap(this.keyMap=d(b,{moveFocus:function(a,b){i.changeActive(i.selectedHint+a,b)},setFocus:function(a){i.changeActive(a)},menuSize:function(){return i.screenAmount()},length:l.length,close:function(){b.close()},pick:function(){i.pick()},data:f})),b.options.closeOnUnfocus){var C;j.on("blur",this.onBlur=function(){C=setTimeout(function(){b.close()},100)}),j.on("focus",this.onFocus=function(){clearTimeout(C)})}var D=j.getScrollInfo();return j.on("scroll",this.onScroll=function(){var a=j.getScrollInfo(),c=j.getWrapperElement().getBoundingClientRect(),d=s+D.top-a.top,e=d-(window.pageYOffset||(document.documentElement||document.body).scrollTop);return t||(e+=k.offsetHeight),e<=c.top||e>=c.bottom?b.close():(k.style.top=d+"px",void(k.style.left=r+D.left-a.left+"px"))}),a.on(k,"dblclick",function(a){var b=e(k,a.target||a.srcElement);b&&null!=b.hintId&&(i.changeActive(b.hintId),i.pick())}),a.on(k,"click",function(a){var c=e(k,a.target||a.srcElement);c&&null!=c.hintId&&(i.changeActive(c.hintId),b.options.completeOnSingleClick&&i.pick())}),a.on(k,"mousedown",function(){setTimeout(function(){j.focus()},20)}),a.signal(f,"select",l[0],k.firstChild),!0}var g="CodeMirror-hint",h="CodeMirror-hint-active";a.showHint=function(a,b,c){if(!b)return a.showHint(c);c&&c.async&&(b.async=!0);var d={hint:b};if(c)for(var e in c)d[e]=c[e];return a.showHint(d)},a.defineExtension("showHint",function(c){if(!(this.listSelections().length>1||this.somethingSelected())){this.state.completionActive&&this.state.completionActive.close();var d=this.state.completionActive=new b(this,c);d.options.hint&&(a.signal(this,"startCompletion",this),d.update(!0))}});var i=window.requestAnimationFrame||function(a){return setTimeout(a,1e3/60)},j=window.cancelAnimationFrame||clearTimeout;b.prototype={close:function(){this.active()&&(this.cm.state.completionActive=null,this.tick=null,this.cm.off("cursorActivity",this.activityFunc),this.widget&&this.data&&a.signal(this.data,"close"),this.widget&&this.widget.close(),a.signal(this.cm,"endCompletion",this.cm))},active:function(){return this.cm.state.completionActive==this},pick:function(b,d){var e=b.list[d];e.hint?e.hint(this.cm,b,e):this.cm.replaceRange(c(e),e.from||b.from,e.to||b.to,"complete"),a.signal(b,"pick",e),this.close()},cursorActivity:function(){this.debounce&&(j(this.debounce),this.debounce=0);var a=this.cm.getCursor(),b=this.cm.getLine(a.line);if(a.line!=this.startPos.line||b.length-a.ch!=this.startLen-this.startPos.ch||a.ch=this.data.list.length?b=c?this.data.list.length-1:0:0>b&&(b=c?0:this.data.list.length-1),this.selectedHint!=b){var d=this.hints.childNodes[this.selectedHint];d.className=d.className.replace(" "+h,""),d=this.hints.childNodes[this.selectedHint=b],d.className+=" "+h,d.offsetTopthis.hints.scrollTop+this.hints.clientHeight&&(this.hints.scrollTop=d.offsetTop+d.offsetHeight-this.hints.clientHeight+3),a.signal(this.data,"select",this.data.list[this.selectedHint],d)}},screenAmount:function(){return Math.floor(this.hints.clientHeight/this.hints.firstChild.offsetHeight)||1}},a.registerHelper("hint","auto",function(b,c){var d,e=b.getHelpers(b.getCursor(),"hint");if(e.length)for(var f=0;f,]/,closeOnUnfocus:!0,completeOnSingleClick:!1,container:null,customKeys:null,extraKeys:null};a.defineOption("hintOptions",null)});
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/hint/sql-hint.js b/media/editors/codemirror/addon/hint/sql-hint.js
index 08051ce74f01d..22124b58f7945 100644
--- a/media/editors/codemirror/addon/hint/sql-hint.js
+++ b/media/editors/codemirror/addon/hint/sql-hint.js
@@ -127,13 +127,13 @@
if (columns) {
addMatches(result, string, columns, function(w) {
+ var tableInsert = table;
+ if (alias == true) tableInsert = aliasTable;
if (typeof w == "string") {
- var tableInsert = table;
- if (alias == true) tableInsert = aliasTable;
w = tableInsert + "." + w;
} else {
w = shallowClone(w);
- w.text = table + "." + w.text;
+ w.text = tableInsert + "." + w.text;
}
return useBacktick ? insertBackticks(w) : w;
});
diff --git a/media/editors/codemirror/addon/hint/sql-hint.min.js b/media/editors/codemirror/addon/hint/sql-hint.min.js
index 12f3828754ab5..ea5118d76acce 100644
--- a/media/editors/codemirror/addon/hint/sql-hint.min.js
+++ b/media/editors/codemirror/addon/hint/sql-hint.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("../../mode/sql/sql")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../../mode/sql/sql"],a):a(CodeMirror)}(function(a){"use strict";function b(b){var c=b.doc.modeOption;return"sql"===c&&(c="text/x-sql"),a.resolveMode(c).keywords}function c(a){return"string"==typeof a?a:a.text}function d(a,b){if(!a.slice)return a[b];for(var d=a.length-1;d>=0;d--)if(c(a[d])==b)return a[d]}function e(a){var b={};for(var c in a)a.hasOwnProperty(c)&&(b[c]=a[c]);return b}function f(a,b){var d=a.length,e=c(b).substr(0,d);return a.toUpperCase()===e.toUpperCase()}function g(a,b,c,d){for(var e in c)c.hasOwnProperty(e)&&(c.slice&&(e=c[e]),f(b,e)&&a.push(d(e)))}function h(a){return"."==a.charAt(0)&&(a=a.substr(1)),a.replace(/`/g,"")}function i(a){for(var b=c(a).split("."),d=0;dp&&u>=q){j={start:m(p),end:m(u)};break}p=u}for(var v=c.getRange(j.start,j.end,!1),t=0;tl.ch&&(r.end=l.ch,r.string=r.string.slice(0,l.ch-r.start)),r.string.match(/^[.`\w@]\w*$/)?(k=r.string,h=r.start,i=r.end):(h=i=l.ch,k=""),"."==k.charAt(0)||"`"==k.charAt(0)?h=j(l,r,m,a):(g(m,k,o,function(a){return a}),g(m,k,p,function(a){return a}),f||g(m,k,q,function(a){return a.toUpperCase()})),{list:m,from:s(l.line,h),to:s(l.line,i)}})});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("../../mode/sql/sql")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","../../mode/sql/sql"],a):a(CodeMirror)}(function(a){"use strict";function b(b){var c=b.doc.modeOption;return"sql"===c&&(c="text/x-sql"),a.resolveMode(c).keywords}function c(a){return"string"==typeof a?a:a.text}function d(a,b){if(!a.slice)return a[b];for(var d=a.length-1;d>=0;d--)if(c(a[d])==b)return a[d]}function e(a){var b={};for(var c in a)a.hasOwnProperty(c)&&(b[c]=a[c]);return b}function f(a,b){var d=a.length,e=c(b).substr(0,d);return a.toUpperCase()===e.toUpperCase()}function g(a,b,c,d){for(var e in c)c.hasOwnProperty(e)&&(c.slice&&(e=c[e]),f(b,e)&&a.push(d(e)))}function h(a){return"."==a.charAt(0)&&(a=a.substr(1)),a.replace(/`/g,"")}function i(a){for(var b=c(a).split("."),d=0;dp&&u>=q){j={start:m(p),end:m(u)};break}p=u}for(var v=c.getRange(j.start,j.end,!1),t=0;tl.ch&&(r.end=l.ch,r.string=r.string.slice(0,l.ch-r.start)),r.string.match(/^[.`\w@]\w*$/)?(k=r.string,h=r.start,i=r.end):(h=i=l.ch,k=""),"."==k.charAt(0)||"`"==k.charAt(0)?h=j(l,r,m,a):(g(m,k,o,function(a){return a}),g(m,k,p,function(a){return a}),f||g(m,k,q,function(a){return a.toUpperCase()})),{list:m,from:s(l.line,h),to:s(l.line,i)}})});
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/lint/html-lint.js b/media/editors/codemirror/addon/lint/html-lint.js
new file mode 100644
index 0000000000000..1e8417098d0c2
--- /dev/null
+++ b/media/editors/codemirror/addon/lint/html-lint.js
@@ -0,0 +1,46 @@
+// CodeMirror, copyright (c) by Marijn Haverbeke and others
+// Distributed under an MIT license: http://codemirror.net/LICENSE
+
+// Depends on htmlhint.js from http://htmlhint.com/js/htmlhint.js
+
+// declare global: HTMLHint
+
+(function(mod) {
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
+ mod(require("../../lib/codemirror"), require("htmlhint"));
+ else if (typeof define == "function" && define.amd) // AMD
+ define(["../../lib/codemirror", "htmlhint"], mod);
+ else // Plain browser env
+ mod(CodeMirror);
+})(function(CodeMirror) {
+ "use strict";
+
+ var defaultRules = {
+ "tagname-lowercase": true,
+ "attr-lowercase": true,
+ "attr-value-double-quotes": true,
+ "doctype-first": false,
+ "tag-pair": true,
+ "spec-char-escape": true,
+ "id-unique": true,
+ "src-not-empty": true,
+ "attr-no-duplication": true
+ };
+
+ CodeMirror.registerHelper("lint", "html", function(text, options) {
+ var found = [];
+ if (!window.HTMLHint) return found;
+ var messages = HTMLHint.verify(text, options && options.rules || defaultRules);
+ for (var i = 0; i < messages.length; i++) {
+ var message = messages[i];
+ var startLine = message.line - 1, endLine = message.line - 1, startCol = message.col - 1, endCol = message.col;
+ found.push({
+ from: CodeMirror.Pos(startLine, startCol),
+ to: CodeMirror.Pos(endLine, endCol),
+ message: message.message,
+ severity : message.type
+ });
+ }
+ return found;
+ });
+});
diff --git a/media/editors/codemirror/addon/lint/html-lint.min.js b/media/editors/codemirror/addon/lint/html-lint.min.js
new file mode 100644
index 0000000000000..93a2c3eabc936
--- /dev/null
+++ b/media/editors/codemirror/addon/lint/html-lint.min.js
@@ -0,0 +1 @@
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("htmlhint")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","htmlhint"],a):a(CodeMirror)}(function(a){"use strict";var b={"tagname-lowercase":!0,"attr-lowercase":!0,"attr-value-double-quotes":!0,"doctype-first":!1,"tag-pair":!0,"spec-char-escape":!0,"id-unique":!0,"src-not-empty":!0,"attr-no-duplication":!0};a.registerHelper("lint","html",function(c,d){var e=[];if(!window.HTMLHint)return e;for(var f=HTMLHint.verify(c,d&&d.rules||b),g=0;g1,c.options.tooltips))}}d.onUpdateLinting&&d.onUpdateLinting(b,e,a)}function o(a){var b=a.state.lint;b&&(clearTimeout(b.timeout),b.timeout=setTimeout(function(){m(a)},b.options.delay||500))}function p(a,b){var c=b.target||b.srcElement;e(b,l(a),c)}function q(a,b){var c=b.target||b.srcElement;if(/\bCodeMirror-lint-mark-/.test(c.className))for(var d=c.getBoundingClientRect(),e=(d.left+d.right)/2,f=(d.top+d.bottom)/2,g=a.findMarksAt(a.coordsChar({left:e,top:f},"client")),h=0;h1,c.options.tooltips))}}d.onUpdateLinting&&d.onUpdateLinting(b,e,a)}function o(a){var b=a.state.lint;b&&(clearTimeout(b.timeout),b.timeout=setTimeout(function(){m(a)},b.options.delay||500))}function p(a,b){var c=b.target||b.srcElement;e(b,l(a),c)}function q(a,b){var c=b.target||b.srcElement;if(/\bCodeMirror-lint-mark-/.test(c.className))for(var d=c.getBoundingClientRect(),e=(d.left+d.right)/2,f=(d.top+d.bottom)/2,g=a.findMarksAt(a.coordsChar({left:e,top:f},"client")),h=0;he)return!1;var f=c.getScrollInfo();if("align"==a.mv.options.connect)q=f.top;else{var g,i,j=.5*f.clientHeight,k=f.top+j,l=c.lineAtHeight(k,"local"),m=A(a.chunks,l,b==DIFF_INSERT),n=h(c,b==DIFF_INSERT?m.edit:m.orig),o=h(d,b==DIFF_INSERT?m.orig:m.edit),p=(k-n.top)/(n.bot-n.top),q=o.top-j+p*(o.bot-o.top);if(q>f.top&&(i=f.top/j)<1)q=q*i+f.top*(1-i);else if((g=f.height-f.clientHeight-f.top)g&&(i=g/j)<1&&(q=q*i+(r.height-r.clientHeight-g)*(1-i))}}return d.scrollTo(f.left,q),d.state.scrollSetAt=e,d.state.scrollSetBy=a,!0}function h(a,b){var c=b.after;return null==c&&(c=a.lastLine()+1),{top:a.heightAtLine(b.before||0,"local"),bot:a.heightAtLine(c,"local")}}function i(a,b,c){a.lockScroll=b,b&&0!=c&&g(a,DIFF_INSERT)&&m(a),a.lockButton.innerHTML=b?"⇛⇚":"⇛ ⇚"}function j(b,c,d){for(var e=0;e20||c.from-f.to>20?(j(a,c.marked,e),l(a,b,d,c.marked,f.from,f.to,e),c.from=f.from,c.to=f.to):(f.fromc.to&&(l(a,b,d,c.marked,c.to,f.to,e),c.to=f.to))})}function l(a,b,c,d,e,f,g){function h(b,c){for(var h=Math.max(e,b),i=Math.min(f,c),j=h;i>j;++j){var k=a.addLineClass(j,"background",g.chunk);j==b&&a.addLineClass(k,"background",g.start),j==c-1&&a.addLineClass(k,"background",g.end),d.push(k)}b==c&&h==c&&i==c&&(h?d.push(a.addLineClass(h-1,"background",g.end)):d.push(a.addLineClass(h,"background",g.start)))}for(var i=Q(0,0),j=Q(e,0),k=a.clipPos(Q(f-1)),l=c==DIFF_DELETE?g.del:g.insert,m=0,n=0;nr&&(n&&h(m,r),m=s)}else if(p==c){var t=J(i,q,!0),u=L(j,i),v=K(k,t);M(u,v)||d.push(a.markText(u,v,{className:l})),i=t}}m<=i.line&&h(m,i.line+1)}function m(a){if(a.showDifferences){if(a.svg){G(a.svg);var b=a.gap.offsetWidth;H(a.svg,"width",b,"height",a.gap.offsetHeight)}a.copyButtons&&G(a.copyButtons);for(var c=a.edit.getViewport(),d=a.orig.getViewport(),e=a.edit.getScrollInfo().top,f=a.orig.getScrollInfo().top,g=0;g=c.from&&h.origFrom<=d.to&&h.origTo>=d.from&&s(a,h,f,e,b)}}}function n(a,b){for(var c=0,d=0,e=0;ea&&f.editFrom<=a)return null;if(f.editFrom>a)break;c=f.editTo,d=f.origTo}return d+(a-c)}function o(a,b){for(var c=[],d=0;de.editTo)break}f>-1&&c.splice(f-1,0,[n(e.editTo,a.chunks),e.editTo,e.origTo])}return c}function p(a,b){if(a.dealigned||b){if(!a.orig.curOp)return a.orig.operation(function(){p(a,b)});a.dealigned=!1;var c=a.mv.left==a?a.mv.right:a.mv.left;c&&(d(c),c.dealigned=!1);for(var e=o(a,c),f=a.mv.aligners,g=0;g1&&c.push(r(a[f],b[f],h))}}function r(a,b,c){var d=!0;b>a.lastLine()&&(b--,d=!1);var e=document.createElement("div");return e.className="CodeMirror-merge-spacer",e.style.height=c+"px",e.style.minWidth="1px",a.addLineWidget(b,e,{height:c,above:d})}function s(a,b,c,d,e){var f="left"==a.type,g=a.orig.heightAtLine(b.origFrom,"local")-c;if(a.svg){var h=g,i=a.edit.heightAtLine(b.editFrom,"local")-d;if(f){var j=h;h=i,i=j}var k=a.orig.heightAtLine(b.origTo,"local")-c,l=a.edit.heightAtLine(b.editTo,"local")-d;if(f){var j=k;k=l,l=j}var m=" C "+e/2+" "+i+" "+e/2+" "+h+" "+(e+2)+" "+h,n=" C "+e/2+" "+k+" "+e/2+" "+l+" -1 "+l;H(a.svg.appendChild(document.createElementNS(R,"path")),"d","M -1 "+i+m+" L "+(e+2)+" "+k+n+" z","class",a.classes.connect)}if(a.copyButtons){var o=a.copyButtons.appendChild(F("div","left"==a.type?"⇝":"⇜","CodeMirror-merge-copy")),p=a.mv.options.allowEditingOriginals;if(o.title=p?"Push to left":"Revert chunk",o.chunk=b,o.style.top=g+"px",p){var q=a.orig.heightAtLine(b.editFrom,"local")-d,r=a.copyButtons.appendChild(F("div","right"==a.type?"⇝":"⇜","CodeMirror-merge-copy-reverse"));r.title="Push to right",r.chunk={editFrom:b.origFrom,editTo:b.origTo,origFrom:b.editFrom,origTo:b.editTo},r.style.top=q+"px","right"==a.type?r.style.left="2px":r.style.right="2px"}}}function t(a,b,c,d){a.diffOutOfDate||b.replaceRange(c.getRange(Q(d.origFrom,0),Q(d.origTo,0)),Q(d.editFrom,0),Q(d.editTo,0))}function u(b){var c=b.lockButton=F("div",null,"CodeMirror-merge-scrolllock");c.title="Toggle locked scrolling";var d=F("div",[c],"CodeMirror-merge-scrolllock-wrap");a.on(c,"click",function(){i(b,!b.lockScroll)});var e=[d];if(b.mv.options.revertButtons!==!1&&(b.copyButtons=F("div",null,"CodeMirror-merge-copybuttons-"+b.type),a.on(b.copyButtons,"click",function(a){var c=a.target||a.srcElement;if(c.chunk)return"CodeMirror-merge-copy-reverse"==c.className?void t(b,b.orig,b.edit,c.chunk):void t(b,b.edit,b.orig,c.chunk)}),e.unshift(b.copyButtons)),"align"!=b.mv.options.connect){var f=document.createElementNS&&document.createElementNS(R,"svg");f&&!f.createSVGRect&&(f=null),b.svg=f,f&&e.push(f)}return b.gap=F("div",e,"CodeMirror-merge-gap")}function v(a){return"string"==typeof a?a:a.getValue()}function w(a,b){var c=U.diff_main(a,b);U.diff_cleanupSemantic(c);for(var d=0;dk&&(g&&b.push({origFrom:d,origTo:l,editFrom:c,editTo:k}),c=n,d=o)}else J(i==DIFF_INSERT?e:f,h[1])}return(c<=e.line||d<=f.line)&&b.push({origFrom:d,origTo:f.line+1,editFrom:c,editTo:e.line+1}),b}function y(a,b){if(b==a.length-1)return!0;var c=a[b+1][1];return 1==c.length||10!=c.charCodeAt(0)?!1:b==a.length-2?!0:(c=a[b+2][1],c.length>1&&10==c.charCodeAt(0))}function z(a,b){if(0==b)return!0;var c=a[b-1][1];return 10!=c.charCodeAt(c.length-1)?!1:1==b?!0:(c=a[b-2][1],10==c.charCodeAt(c.length-1))}function A(a,b,c){for(var d,e,f,g,h=0;hb?(e=i.editFrom,g=i.origFrom):k>b&&(e=i.editTo,g=i.origTo)),b>=k?(d=i.editTo,f=i.origTo):b>=j&&(d=i.editFrom,f=i.origFrom)}return{edit:{before:d,after:e},orig:{before:f,after:g}}}function B(a,b,c){function d(){f.clear(),a.removeLineClass(b,"wrap","CodeMirror-merge-collapsed-line")}a.addLineClass(b,"wrap","CodeMirror-merge-collapsed-line");var e=document.createElement("span");e.className="CodeMirror-merge-collapsed-widget",e.title="Identical text collapsed. Click to expand.";var f=a.markText(Q(b,0),Q(c-1),{inclusiveLeft:!0,inclusiveRight:!0,replacedWith:e,clearOnEnter:!0});return e.addEventListener("click",d),{mark:f,clear:d}}function C(a,b){function c(){for(var a=0;a=0&&h=f;f++)c.push(!0);a.left&&D(a.left,b,e,c),a.right&&D(a.right,b,e,c);for(var h=0;hb){var k=[{line:i,cm:d}];a.left&&k.push({line:n(i,a.left.chunks),cm:a.left.orig}),a.right&&k.push({line:n(i,a.right.chunks),cm:a.right.orig});var l=C(j,k);a.options.onCollapse&&a.options.onCollapse(a,i,j,l)}}}function F(a,b,c,d){var e=document.createElement(a);if(c&&(e.className=c),d&&(e.style.cssText=d),"string"==typeof b)e.appendChild(document.createTextNode(b));else if(b)for(var f=0;f0;--b)a.removeChild(a.firstChild)}function H(a){for(var b=1;b0?a:b}function M(a,b){return a.line==b.line&&a.ch==b.ch}function N(a,b,c){for(var d=a.length-1;d>=0;d--){var e=a[d],f=(c?e.origTo:e.editTo)-1;if(b>f)return f}}function O(a,b,c){for(var d=0;db)return f}}function P(b,c){var e=null,f=b.state.diffViews,g=b.getCursor().line;if(f)for(var h=0;hc?N(i.chunks,g,j):O(i.chunks,g,j);null==k||null!=e&&!(0>c?k>e:e>k)||(e=k)}return null==e?a.Pass:void b.setCursor(e,0)}var Q=a.Pos,R="http://www.w3.org/2000/svg";c.prototype={constructor:c,init:function(b,c,d){this.edit=this.mv.edit,(this.edit.state.diffViews||(this.edit.state.diffViews=[])).push(this),this.orig=a(b,I({value:c,readOnly:!this.mv.options.allowEditingOriginals},I(d))),this.orig.state.diffViews=[this],this.diff=w(v(c),v(d.value)),this.chunks=x(this.diff),this.diffOutOfDate=this.dealigned=!1,this.showDifferences=d.showDifferences!==!1,this.forceUpdate=e(this),i(this,!0,!1),f(this)},setShowDifferences:function(a){a=a!==!1,a!=this.showDifferences&&(this.showDifferences=a,this.forceUpdate("full"))}};var S=!1,T=a.MergeView=function(b,d){if(!(this instanceof T))return new T(b,d);this.options=d;var e=d.origLeft,f=null==d.origRight?d.orig:d.origRight,g=null!=e,h=null!=f,i=1+(g?1:0)+(h?1:0),j=[],k=this.left=null,l=this.right=null,n=this;if(g){k=this.left=new c(this,"left");var o=F("div",null,"CodeMirror-merge-pane");j.push(o),j.push(u(k))}var q=F("div",null,"CodeMirror-merge-pane");if(j.push(q),h){l=this.right=new c(this,"right"),j.push(u(l));var r=F("div",null,"CodeMirror-merge-pane");j.push(r)}(h?r:q).className+=" CodeMirror-merge-pane-rightmost",j.push(F("div",null,null,"height: 0; clear: both;"));var s=this.wrap=b.appendChild(F("div",j,"CodeMirror-merge CodeMirror-merge-"+i+"pane"));this.edit=a(q,I(d)),k&&k.init(o,e,d),l&&l.init(r,f,d),d.collapseIdentical&&(S=!0,this.editor().operation(function(){E(n,d.collapseIdentical)}),S=!1),"align"==d.connect&&(this.aligners=[],p(this.left||this.right,!0));var t=function(){k&&m(k),l&&m(l)};a.on(window,"resize",t);var v=setInterval(function(){for(var b=s.parentNode;b&&b!=document.body;b=b.parentNode);b||(clearInterval(v),a.off(window,"resize",t))},5e3)};T.prototype={constuctor:T,editor:function(){return this.edit},rightOriginal:function(){return this.right&&this.right.orig},leftOriginal:function(){return this.left&&this.left.orig},setShowDifferences:function(a){this.right&&this.right.setShowDifferences(a),this.left&&this.left.setShowDifferences(a)},rightChunks:function(){return this.right?(d(this.right),this.right.chunks):void 0},leftChunks:function(){return this.left?(d(this.left),this.left.chunks):void 0}};var U=new b;a.commands.goNextDiff=function(a){return P(a,1)},a.commands.goPrevDiff=function(a){return P(a,-1)}});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("diff_match_patch")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","diff_match_patch"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b){this.mv=a,this.type=b,this.classes="left"==b?{chunk:"CodeMirror-merge-l-chunk",start:"CodeMirror-merge-l-chunk-start",end:"CodeMirror-merge-l-chunk-end",insert:"CodeMirror-merge-l-inserted",del:"CodeMirror-merge-l-deleted",connect:"CodeMirror-merge-l-connect"}:{chunk:"CodeMirror-merge-r-chunk",start:"CodeMirror-merge-r-chunk-start",end:"CodeMirror-merge-r-chunk-end",insert:"CodeMirror-merge-r-inserted",del:"CodeMirror-merge-r-deleted",connect:"CodeMirror-merge-r-connect"}}function c(b){b.diffOutOfDate&&(b.diff=v(b.orig.getValue(),b.edit.getValue()),b.chunks=w(b.diff),b.diffOutOfDate=!1,a.signal(b.edit,"updateDiff",b.diff))}function d(a){function b(b){R=!0,m=!1,"full"==b&&(a.svg&&F(a.svg),a.copyButtons&&F(a.copyButtons),i(a.edit,h.marked,a.classes),i(a.orig,k.marked,a.classes),h.from=h.to=k.from=k.to=0),c(a),a.showDifferences&&(j(a.edit,a.diff,h,DIFF_INSERT,a.classes),j(a.orig,a.diff,k,DIFF_DELETE,a.classes)),l(a),"align"==a.mv.options.connect&&o(a),R=!1}function d(b){R||(a.dealigned=!0,e(b))}function e(a){R||m||(clearTimeout(g),a===!0&&(m=!0),g=setTimeout(b,a===!0?20:250))}function f(b,c){a.diffOutOfDate||(a.diffOutOfDate=!0,h.from=h.to=k.from=k.to=0),d(c.text.length-1!=c.to.line-c.from.line)}var g,h={from:0,to:0,marked:[]},k={from:0,to:0,marked:[]},m=!1;return a.edit.on("change",f),a.orig.on("change",f),a.edit.on("markerAdded",d),a.edit.on("markerCleared",d),a.orig.on("markerAdded",d),a.orig.on("markerCleared",d),a.edit.on("viewportChange",function(){e(!1)}),a.orig.on("viewportChange",function(){e(!1)}),b(),b}function e(a){a.edit.on("scroll",function(){f(a,DIFF_INSERT)&&l(a)}),a.orig.on("scroll",function(){f(a,DIFF_DELETE)&&l(a)})}function f(a,b){if(a.diffOutOfDate)return!1;if(!a.lockScroll)return!0;var c,d,e=+new Date;if(b==DIFF_INSERT?(c=a.edit,d=a.orig):(c=a.orig,d=a.edit),c.state.scrollSetBy==a&&(c.state.scrollSetAt||0)+50>e)return!1;var f=c.getScrollInfo();if("align"==a.mv.options.connect)q=f.top;else{var h,i,j=.5*f.clientHeight,k=f.top+j,l=c.lineAtHeight(k,"local"),m=z(a.chunks,l,b==DIFF_INSERT),n=g(c,b==DIFF_INSERT?m.edit:m.orig),o=g(d,b==DIFF_INSERT?m.orig:m.edit),p=(k-n.top)/(n.bot-n.top),q=o.top-j+p*(o.bot-o.top);if(q>f.top&&(i=f.top/j)<1)q=q*i+f.top*(1-i);else if((h=f.height-f.clientHeight-f.top)h&&(i=h/j)<1&&(q=q*i+(r.height-r.clientHeight-h)*(1-i))}}return d.scrollTo(f.left,q),d.state.scrollSetAt=e,d.state.scrollSetBy=a,!0}function g(a,b){var c=b.after;return null==c&&(c=a.lastLine()+1),{top:a.heightAtLine(b.before||0,"local"),bot:a.heightAtLine(c,"local")}}function h(a,b,c){a.lockScroll=b,b&&0!=c&&f(a,DIFF_INSERT)&&l(a),a.lockButton.innerHTML=b?"⇛⇚":"⇛ ⇚"}function i(b,c,d){for(var e=0;e20||c.from-f.to>20?(i(a,c.marked,e),k(a,b,d,c.marked,f.from,f.to,e),c.from=f.from,c.to=f.to):(f.fromc.to&&(k(a,b,d,c.marked,c.to,f.to,e),c.to=f.to))})}function k(a,b,c,d,e,f,g){function h(b,c){for(var h=Math.max(e,b),i=Math.min(f,c),j=h;i>j;++j){var k=a.addLineClass(j,"background",g.chunk);j==b&&a.addLineClass(k,"background",g.start),j==c-1&&a.addLineClass(k,"background",g.end),d.push(k)}b==c&&h==c&&i==c&&(h?d.push(a.addLineClass(h-1,"background",g.end)):d.push(a.addLineClass(h,"background",g.start)))}for(var i=P(0,0),j=P(e,0),k=a.clipPos(P(f-1)),l=c==DIFF_DELETE?g.del:g.insert,m=0,n=0;nr&&(n&&h(m,r),m=s)}else if(p==c){var t=I(i,q,!0),u=K(j,i),v=J(k,t);L(u,v)||d.push(a.markText(u,v,{className:l})),i=t}}m<=i.line&&h(m,i.line+1)}function l(a){if(a.showDifferences){if(a.svg){F(a.svg);var b=a.gap.offsetWidth;G(a.svg,"width",b,"height",a.gap.offsetHeight)}a.copyButtons&&F(a.copyButtons);for(var c=a.edit.getViewport(),d=a.orig.getViewport(),e=a.edit.getScrollInfo().top,f=a.orig.getScrollInfo().top,g=0;g=c.from&&h.origFrom<=d.to&&h.origTo>=d.from&&r(a,h,f,e,b)}}}function m(a,b){for(var c=0,d=0,e=0;ea&&f.editFrom<=a)return null;if(f.editFrom>a)break;c=f.editTo,d=f.origTo}return d+(a-c)}function n(a,b){for(var c=[],d=0;de.editTo)break}f>-1&&c.splice(f-1,0,[m(e.editTo,a.chunks),e.editTo,e.origTo])}return c}function o(a,b){if(a.dealigned||b){if(!a.orig.curOp)return a.orig.operation(function(){o(a,b)});a.dealigned=!1;var d=a.mv.left==a?a.mv.right:a.mv.left;d&&(c(d),d.dealigned=!1);for(var e=n(a,d),f=a.mv.aligners,g=0;g1&&c.push(q(a[f],b[f],h))}}function q(a,b,c){var d=!0;b>a.lastLine()&&(b--,d=!1);var e=document.createElement("div");return e.className="CodeMirror-merge-spacer",e.style.height=c+"px",e.style.minWidth="1px",a.addLineWidget(b,e,{height:c,above:d})}function r(a,b,c,d,e){var f="left"==a.type,g=a.orig.heightAtLine(b.origFrom,"local")-c;if(a.svg){var h=g,i=a.edit.heightAtLine(b.editFrom,"local")-d;if(f){var j=h;h=i,i=j}var k=a.orig.heightAtLine(b.origTo,"local")-c,l=a.edit.heightAtLine(b.editTo,"local")-d;if(f){var j=k;k=l,l=j}var m=" C "+e/2+" "+i+" "+e/2+" "+h+" "+(e+2)+" "+h,n=" C "+e/2+" "+k+" "+e/2+" "+l+" -1 "+l;G(a.svg.appendChild(document.createElementNS(Q,"path")),"d","M -1 "+i+m+" L "+(e+2)+" "+k+n+" z","class",a.classes.connect)}if(a.copyButtons){var o=a.copyButtons.appendChild(E("div","left"==a.type?"⇝":"⇜","CodeMirror-merge-copy")),p=a.mv.options.allowEditingOriginals;if(o.title=p?"Push to left":"Revert chunk",o.chunk=b,o.style.top=g+"px",p){var q=a.orig.heightAtLine(b.editFrom,"local")-d,r=a.copyButtons.appendChild(E("div","right"==a.type?"⇝":"⇜","CodeMirror-merge-copy-reverse"));r.title="Push to right",r.chunk={editFrom:b.origFrom,editTo:b.origTo,origFrom:b.editFrom,origTo:b.editTo},r.style.top=q+"px","right"==a.type?r.style.left="2px":r.style.right="2px"}}}function s(a,b,c,d){a.diffOutOfDate||b.replaceRange(c.getRange(P(d.origFrom,0),P(d.origTo,0)),P(d.editFrom,0),P(d.editTo,0))}function t(b){var c=b.lockButton=E("div",null,"CodeMirror-merge-scrolllock");c.title="Toggle locked scrolling";var d=E("div",[c],"CodeMirror-merge-scrolllock-wrap");a.on(c,"click",function(){h(b,!b.lockScroll)});var e=[d];if(b.mv.options.revertButtons!==!1&&(b.copyButtons=E("div",null,"CodeMirror-merge-copybuttons-"+b.type),a.on(b.copyButtons,"click",function(a){var c=a.target||a.srcElement;if(c.chunk)return"CodeMirror-merge-copy-reverse"==c.className?void s(b,b.orig,b.edit,c.chunk):void s(b,b.edit,b.orig,c.chunk)}),e.unshift(b.copyButtons)),"align"!=b.mv.options.connect){var f=document.createElementNS&&document.createElementNS(Q,"svg");f&&!f.createSVGRect&&(f=null),b.svg=f,f&&e.push(f)}return b.gap=E("div",e,"CodeMirror-merge-gap")}function u(a){return"string"==typeof a?a:a.getValue()}function v(a,b){var c=T.diff_main(a,b);T.diff_cleanupSemantic(c);for(var d=0;dk&&(g&&b.push({origFrom:d,origTo:l,editFrom:c,editTo:k}),c=n,d=o)}else I(i==DIFF_INSERT?e:f,h[1])}return(c<=e.line||d<=f.line)&&b.push({origFrom:d,origTo:f.line+1,editFrom:c,editTo:e.line+1}),b}function x(a,b){if(b==a.length-1)return!0;var c=a[b+1][1];return 1==c.length||10!=c.charCodeAt(0)?!1:b==a.length-2?!0:(c=a[b+2][1],c.length>1&&10==c.charCodeAt(0))}function y(a,b){if(0==b)return!0;var c=a[b-1][1];return 10!=c.charCodeAt(c.length-1)?!1:1==b?!0:(c=a[b-2][1],10==c.charCodeAt(c.length-1))}function z(a,b,c){for(var d,e,f,g,h=0;hb?(e=i.editFrom,g=i.origFrom):k>b&&(e=i.editTo,g=i.origTo)),b>=k?(d=i.editTo,f=i.origTo):b>=j&&(d=i.editFrom,f=i.origFrom)}return{edit:{before:d,after:e},orig:{before:f,after:g}}}function A(a,b,c){function d(){f.clear(),a.removeLineClass(b,"wrap","CodeMirror-merge-collapsed-line")}a.addLineClass(b,"wrap","CodeMirror-merge-collapsed-line");var e=document.createElement("span");e.className="CodeMirror-merge-collapsed-widget",e.title="Identical text collapsed. Click to expand.";var f=a.markText(P(b,0),P(c-1),{inclusiveLeft:!0,inclusiveRight:!0,replacedWith:e,clearOnEnter:!0});return e.addEventListener("click",d),{mark:f,clear:d}}function B(a,b){function c(){for(var a=0;a=0&&h=f;f++)c.push(!0);a.left&&C(a.left,b,e,c),a.right&&C(a.right,b,e,c);for(var h=0;hb){var k=[{line:i,cm:d}];a.left&&k.push({line:m(i,a.left.chunks),cm:a.left.orig}),a.right&&k.push({line:m(i,a.right.chunks),cm:a.right.orig});var l=B(j,k);a.options.onCollapse&&a.options.onCollapse(a,i,j,l)}}}function E(a,b,c,d){var e=document.createElement(a);if(c&&(e.className=c),d&&(e.style.cssText=d),"string"==typeof b)e.appendChild(document.createTextNode(b));else if(b)for(var f=0;f0;--b)a.removeChild(a.firstChild)}function G(a){for(var b=1;b0?a:b}function L(a,b){return a.line==b.line&&a.ch==b.ch}function M(a,b,c){for(var d=a.length-1;d>=0;d--){var e=a[d],f=(c?e.origTo:e.editTo)-1;if(b>f)return f}}function N(a,b,c){for(var d=0;db)return f}}function O(b,d){var e=null,f=b.state.diffViews,g=b.getCursor().line;if(f)for(var h=0;hd?M(i.chunks,g,j):N(i.chunks,g,j);null==k||null!=e&&!(0>d?k>e:e>k)||(e=k)}return null==e?a.Pass:void b.setCursor(e,0)}var P=a.Pos,Q="http://www.w3.org/2000/svg";b.prototype={constructor:b,init:function(b,c,f){this.edit=this.mv.edit,(this.edit.state.diffViews||(this.edit.state.diffViews=[])).push(this),this.orig=a(b,H({value:c,readOnly:!this.mv.options.allowEditingOriginals},H(f))),this.orig.state.diffViews=[this],this.diff=v(u(c),u(f.value)),this.chunks=w(this.diff),this.diffOutOfDate=this.dealigned=!1,this.showDifferences=f.showDifferences!==!1,this.forceUpdate=d(this),h(this,!0,!1),e(this)},setShowDifferences:function(a){a=a!==!1,a!=this.showDifferences&&(this.showDifferences=a,this.forceUpdate("full"))}};var R=!1,S=a.MergeView=function(c,d){if(!(this instanceof S))return new S(c,d);this.options=d;var e=d.origLeft,f=null==d.origRight?d.orig:d.origRight,g=null!=e,h=null!=f,i=1+(g?1:0)+(h?1:0),j=[],k=this.left=null,m=this.right=null,n=this;if(g){k=this.left=new b(this,"left");var p=E("div",null,"CodeMirror-merge-pane");j.push(p),j.push(t(k))}var q=E("div",null,"CodeMirror-merge-pane");if(j.push(q),h){m=this.right=new b(this,"right"),j.push(t(m));var r=E("div",null,"CodeMirror-merge-pane");j.push(r)}(h?r:q).className+=" CodeMirror-merge-pane-rightmost",j.push(E("div",null,null,"height: 0; clear: both;"));var s=this.wrap=c.appendChild(E("div",j,"CodeMirror-merge CodeMirror-merge-"+i+"pane"));this.edit=a(q,H(d)),k&&k.init(p,e,d),m&&m.init(r,f,d),d.collapseIdentical&&(R=!0,this.editor().operation(function(){D(n,d.collapseIdentical)}),R=!1),"align"==d.connect&&(this.aligners=[],o(this.left||this.right,!0));var u=function(){k&&l(k),m&&l(m)};a.on(window,"resize",u);var v=setInterval(function(){for(var b=s.parentNode;b&&b!=document.body;b=b.parentNode);b||(clearInterval(v),a.off(window,"resize",u))},5e3)};S.prototype={constuctor:S,editor:function(){return this.edit},rightOriginal:function(){return this.right&&this.right.orig},leftOriginal:function(){return this.left&&this.left.orig},setShowDifferences:function(a){this.right&&this.right.setShowDifferences(a),this.left&&this.left.setShowDifferences(a)},rightChunks:function(){return this.right?(c(this.right),this.right.chunks):void 0},leftChunks:function(){return this.left?(c(this.left),this.left.chunks):void 0}};var T=new diff_match_patch;a.commands.goNextDiff=function(a){return O(a,1)},a.commands.goPrevDiff=function(a){return O(a,-1)}});
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/runmode/runmode.min.js b/media/editors/codemirror/addon/runmode/runmode.min.js
index f6f7917e577cd..dda11879c969f 100644
--- a/media/editors/codemirror/addon/runmode/runmode.min.js
+++ b/media/editors/codemirror/addon/runmode/runmode.min.js
@@ -1 +1 @@
-function splitLines(a){return a.split(/\r?\n|\r/)}function StringStream(a){this.pos=this.start=0,this.string=a,this.lineStart=0}!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";a.runMode=function(b,c,d,e){var f=a.getMode(a.defaults,c),g=/MSIE \d/.test(navigator.userAgent),h=g&&(null==document.documentMode||document.documentMode<9);if(1==d.nodeType){var i=e&&e.tabSize||a.defaults.tabSize,j=d,k=0;j.innerHTML="",d=function(a,b){if("\n"==a)return j.appendChild(document.createTextNode(h?"\r":a)),void(k=0);for(var c="",d=0;;){var e=a.indexOf(" ",d);if(-1==e){c+=a.slice(d),k+=a.length-d;break}k+=e-d,c+=a.slice(d,e);var f=i-k%i;k+=f;for(var g=0;f>g;++g)c+=" ";d=e+1}if(b){var l=j.appendChild(document.createElement("span"));l.className="cm-"+b.replace(/ +/g," cm-"),l.appendChild(document.createTextNode(c))}else j.appendChild(document.createTextNode(c))}}for(var l=a.splitLines(b),m=e&&e.state||a.startState(f),n=0,o=l.length;o>n;++n){n&&d("\n");var p=new a.StringStream(l[n]);for(!p.string&&f.blankLine&&f.blankLine(m);!p.eol();){var q=f.token(p,m);d(p.current(),q,n,p.start,m),p.start=p.pos}}}}),StringStream.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return 0==this.pos},peek:function(){return this.string.charAt(this.pos)||null},next:function(){return this.posb},eatSpace:function(){for(var a=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>a},skipToEnd:function(){this.pos=this.string.length},skipTo:function(a){var b=this.string.indexOf(a,this.pos);return b>-1?(this.pos=b,!0):void 0},backUp:function(a){this.pos-=a},column:function(){return this.start-this.lineStart},indentation:function(){return 0},match:function(a,b,c){if("string"!=typeof a){var d=this.string.slice(this.pos).match(a);return d&&d.index>0?null:(d&&b!==!1&&(this.pos+=d[0].length),d)}var e=function(a){return c?a.toLowerCase():a},f=this.string.substr(this.pos,a.length);return e(f)==e(a)?(b!==!1&&(this.pos+=a.length),!0):void 0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(a,b){this.lineStart+=a;try{return b()}finally{this.lineStart-=a}}},exports.StringStream=StringStream,exports.startState=function(a,b,c){return a.startState?a.startState(b,c):!0};var modes=exports.modes={},mimeModes=exports.mimeModes={};exports.defineMode=function(a,b){arguments.length>2&&(b.dependencies=Array.prototype.slice.call(arguments,2)),modes[a]=b},exports.defineMIME=function(a,b){mimeModes[a]=b},exports.defineMode("null",function(){return{token:function(a){a.skipToEnd()}}}),exports.defineMIME("text/plain","null"),exports.resolveMode=function(a){return"string"==typeof a&&mimeModes.hasOwnProperty(a)?a=mimeModes[a]:a&&"string"==typeof a.name&&mimeModes.hasOwnProperty(a.name)&&(a=mimeModes[a.name]),"string"==typeof a?{name:a}:a||{name:"null"}},exports.getMode=function(a,b){b=exports.resolveMode(b);var c=modes[b.name];if(!c)throw new Error("Unknown mode: "+b);return c(a,b)},exports.registerHelper=exports.registerGlobalHelper=Math.min,exports.runMode=function(a,b,c,d){for(var e=exports.getMode({indentUnit:2},b),f=splitLines(a),g=d&&d.state||exports.startState(e),h=0,i=f.length;i>h;++h){h&&c("\n");var j=new exports.StringStream(f[h]);for(!j.string&&e.blankLine&&e.blankLine(g);!j.eol();){var k=e.token(j,g);c(j.current(),k,h,j.start,g),j.start=j.pos}}},require.cache[require.resolve("../../lib/codemirror")]=require.cache[require.resolve("./runmode.node")];
\ No newline at end of file
+function splitLines(a){return a.split(/\r\n?|\n/)}function StringStream(a,b){this.pos=this.start=0,this.string=a,this.tabSize=b||8,this.lastColumnPos=this.lastColumnValue=0,this.lineStart=0}function copyObj(a,b,c){b||(b={});for(var d in a)!a.hasOwnProperty(d)||c===!1&&b.hasOwnProperty(d)||(b[d]=a[d]);return b}!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";a.runMode=function(b,c,d,e){var f=a.getMode(a.defaults,c),g=/MSIE \d/.test(navigator.userAgent),h=g&&(null==document.documentMode||document.documentMode<9);if(1==d.nodeType){var i=e&&e.tabSize||a.defaults.tabSize,j=d,k=0;j.innerHTML="",d=function(a,b){if("\n"==a)return j.appendChild(document.createTextNode(h?"\r":a)),void(k=0);for(var c="",d=0;;){var e=a.indexOf(" ",d);if(-1==e){c+=a.slice(d),k+=a.length-d;break}k+=e-d,c+=a.slice(d,e);var f=i-k%i;k+=f;for(var g=0;f>g;++g)c+=" ";d=e+1}if(b){var l=j.appendChild(document.createElement("span"));l.className="cm-"+b.replace(/ +/g," cm-"),l.appendChild(document.createTextNode(c))}else j.appendChild(document.createTextNode(c))}}for(var l=a.splitLines(b),m=e&&e.state||a.startState(f),n=0,o=l.length;o>n;++n){n&&d("\n");var p=new a.StringStream(l[n]);for(!p.string&&f.blankLine&&f.blankLine(m);!p.eol();){var q=f.token(p,m);d(p.current(),q,n,p.start,m),p.start=p.pos}}}});var countColumn=function(a,b,c,d,e){null==b&&(b=a.search(/[^\s\u00a0]/),-1==b&&(b=a.length));for(var f=d||0,g=e||0;;){var h=a.indexOf(" ",f);if(0>h||h>=b)return g+(b-f);g+=h-f,g+=c-g%c,f=h+1}};StringStream.prototype={eol:function(){return this.pos>=this.string.length},sol:function(){return this.pos==this.lineStart},peek:function(){return this.string.charAt(this.pos)||void 0},next:function(){return this.posb},eatSpace:function(){for(var a=this.pos;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>a},skipToEnd:function(){this.pos=this.string.length},skipTo:function(a){var b=this.string.indexOf(a,this.pos);return b>-1?(this.pos=b,!0):void 0},backUp:function(a){this.pos-=a},column:function(){return this.lastColumnPos0?null:(d&&b!==!1&&(this.pos+=d[0].length),d)}var e=function(a){return c?a.toLowerCase():a},f=this.string.substr(this.pos,a.length);return e(f)==e(a)?(b!==!1&&(this.pos+=a.length),!0):void 0},current:function(){return this.string.slice(this.start,this.pos)},hideFirstChars:function(a,b){this.lineStart+=a;try{return b()}finally{this.lineStart-=a}}},exports.StringStream=StringStream,exports.startState=function(a,b,c){return a.startState?a.startState(b,c):!0};var modes=exports.modes={},mimeModes=exports.mimeModes={};exports.defineMode=function(a,b){arguments.length>2&&(b.dependencies=Array.prototype.slice.call(arguments,2)),modes[a]=b},exports.defineMIME=function(a,b){mimeModes[a]=b},exports.defineMode("null",function(){return{token:function(a){a.skipToEnd()}}}),exports.defineMIME("text/plain","null"),exports.resolveMode=function(a){return"string"==typeof a&&mimeModes.hasOwnProperty(a)?a=mimeModes[a]:a&&"string"==typeof a.name&&mimeModes.hasOwnProperty(a.name)&&(a=mimeModes[a.name]),"string"==typeof a?{name:a}:a||{name:"null"}};var modeExtensions=exports.modeExtensions={};exports.extendMode=function(a,b){var c=modeExtensions.hasOwnProperty(a)?modeExtensions[a]:modeExtensions[a]={};copyObj(b,c)},exports.getMode=function(a,b){var b=exports.resolveMode(b),c=modes[b.name];if(!c)return exports.getMode(a,"text/plain");var d=c(a,b);if(modeExtensions.hasOwnProperty(b.name)){var e=modeExtensions[b.name];for(var f in e)e.hasOwnProperty(f)&&(d.hasOwnProperty(f)&&(d["_"+f]=d[f]),d[f]=e[f])}if(d.name=b.name,b.helperType&&(d.helperType=b.helperType),b.modeProps)for(var f in b.modeProps)d[f]=b.modeProps[f];return d},exports.registerHelper=exports.registerGlobalHelper=Math.min,exports.runMode=function(a,b,c,d){for(var e=exports.getMode({indentUnit:2},b),f=splitLines(a),g=d&&d.state||exports.startState(e),h=0,i=f.length;i>h;++h){h&&c("\n");var j=new exports.StringStream(f[h]);for(!j.string&&e.blankLine&&e.blankLine(g);!j.eol();){var k=e.token(j,g);c(j.current(),k,h,j.start,g),j.start=j.pos}}},require.cache[require.resolve("../../lib/codemirror")]=require.cache[require.resolve("./runmode.node")];
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/runmode/runmode.node.js b/media/editors/codemirror/addon/runmode/runmode.node.js
index 8b8140b4c1ae4..8f345a32c75ec 100644
--- a/media/editors/codemirror/addon/runmode/runmode.node.js
+++ b/media/editors/codemirror/addon/runmode/runmode.node.js
@@ -3,19 +3,37 @@
/* Just enough of CodeMirror to run runMode under node.js */
-// declare global: StringStream
+function splitLines(string){return string.split(/\r\n?|\n/);};
-function splitLines(string){ return string.split(/\r?\n|\r/); };
+// Counts the column offset in a string, taking tabs into account.
+// Used mostly to find indentation.
+var countColumn = function(string, end, tabSize, startIndex, startValue) {
+ if (end == null) {
+ end = string.search(/[^\s\u00a0]/);
+ if (end == -1) end = string.length;
+ }
+ for (var i = startIndex || 0, n = startValue || 0;;) {
+ var nextTab = string.indexOf("\t", i);
+ if (nextTab < 0 || nextTab >= end)
+ return n + (end - i);
+ n += nextTab - i;
+ n += tabSize - (n % tabSize);
+ i = nextTab + 1;
+ }
+};
-function StringStream(string) {
+function StringStream(string, tabSize) {
this.pos = this.start = 0;
this.string = string;
+ this.tabSize = tabSize || 8;
+ this.lastColumnPos = this.lastColumnValue = 0;
this.lineStart = 0;
-}
+};
+
StringStream.prototype = {
eol: function() {return this.pos >= this.string.length;},
- sol: function() {return this.pos == 0;},
- peek: function() {return this.string.charAt(this.pos) || null;},
+ sol: function() {return this.pos == this.lineStart;},
+ peek: function() {return this.string.charAt(this.pos) || undefined;},
next: function() {
if (this.pos < this.string.length)
return this.string.charAt(this.pos++);
@@ -42,8 +60,17 @@ StringStream.prototype = {
if (found > -1) {this.pos = found; return true;}
},
backUp: function(n) {this.pos -= n;},
- column: function() {return this.start - this.lineStart;},
- indentation: function() {return 0;},
+ column: function() {
+ if (this.lastColumnPos < this.start) {
+ this.lastColumnValue = countColumn(this.string, this.start, this.tabSize, this.lastColumnPos, this.lastColumnValue);
+ this.lastColumnPos = this.start;
+ }
+ return this.lastColumnValue - (this.lineStart ? countColumn(this.string, this.lineStart, this.tabSize) : 0);
+ },
+ indentation: function() {
+ return countColumn(this.string, null, this.tabSize) -
+ (this.lineStart ? countColumn(this.string, this.lineStart, this.tabSize) : 0);
+ },
match: function(pattern, consume, caseInsensitive) {
if (typeof pattern == "string") {
var cased = function(str) {return caseInsensitive ? str.toLowerCase() : str;};
@@ -94,11 +121,42 @@ exports.resolveMode = function(spec) {
if (typeof spec == "string") return {name: spec};
else return spec || {name: "null"};
};
+
+function copyObj(obj, target, overwrite) {
+ if (!target) target = {};
+ for (var prop in obj)
+ if (obj.hasOwnProperty(prop) && (overwrite !== false || !target.hasOwnProperty(prop)))
+ target[prop] = obj[prop];
+ return target;
+}
+
+// This can be used to attach properties to mode objects from
+// outside the actual mode definition.
+var modeExtensions = exports.modeExtensions = {};
+exports.extendMode = function(mode, properties) {
+ var exts = modeExtensions.hasOwnProperty(mode) ? modeExtensions[mode] : (modeExtensions[mode] = {});
+ copyObj(properties, exts);
+};
+
exports.getMode = function(options, spec) {
- spec = exports.resolveMode(spec);
+ var spec = exports.resolveMode(spec);
var mfactory = modes[spec.name];
- if (!mfactory) throw new Error("Unknown mode: " + spec);
- return mfactory(options, spec);
+ if (!mfactory) return exports.getMode(options, "text/plain");
+ var modeObj = mfactory(options, spec);
+ if (modeExtensions.hasOwnProperty(spec.name)) {
+ var exts = modeExtensions[spec.name];
+ for (var prop in exts) {
+ if (!exts.hasOwnProperty(prop)) continue;
+ if (modeObj.hasOwnProperty(prop)) modeObj["_" + prop] = modeObj[prop];
+ modeObj[prop] = exts[prop];
+ }
+ }
+ modeObj.name = spec.name;
+ if (spec.helperType) modeObj.helperType = spec.helperType;
+ if (spec.modeProps) for (var prop in spec.modeProps)
+ modeObj[prop] = spec.modeProps[prop];
+
+ return modeObj;
};
exports.registerHelper = exports.registerGlobalHelper = Math.min;
diff --git a/media/editors/codemirror/addon/search/search.js b/media/editors/codemirror/addon/search/search.js
index 761cb9492e649..5ec6ed6fb1c1b 100644
--- a/media/editors/codemirror/addon/search/search.js
+++ b/media/editors/codemirror/addon/search/search.js
@@ -18,6 +18,7 @@
mod(CodeMirror);
})(function(CodeMirror) {
"use strict";
+
function searchOverlay(query, caseInsensitive) {
if (typeof query == "string")
query = new RegExp(query.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g, "\\$&"), caseInsensitive ? "gi" : "g");
@@ -42,56 +43,97 @@
this.posFrom = this.posTo = this.lastQuery = this.query = null;
this.overlay = null;
}
+
function getSearchState(cm) {
return cm.state.search || (cm.state.search = new SearchState());
}
+
function queryCaseInsensitive(query) {
return typeof query == "string" && query == query.toLowerCase();
}
+
function getSearchCursor(cm, query, pos) {
// Heuristic: if the query string is all lowercase, do a case insensitive search.
return cm.getSearchCursor(query, pos, queryCaseInsensitive(query));
}
+
+ function persistentDialog(cm, text, deflt, f) {
+ cm.openDialog(text, f, {
+ value: deflt,
+ selectValueOnOpen: true,
+ closeOnEnter: false,
+ onClose: function() { clearSearch(cm); }
+ });
+ }
+
function dialog(cm, text, shortText, deflt, f) {
if (cm.openDialog) cm.openDialog(text, f, {value: deflt, selectValueOnOpen: true});
else f(prompt(shortText, deflt));
}
+
function confirmDialog(cm, text, shortText, fs) {
if (cm.openConfirm) cm.openConfirm(text, fs);
else if (confirm(shortText)) fs[0]();
}
+
+ function parseString(string) {
+ return string.replace(/\\(.)/g, function(_, ch) {
+ if (ch == "n") return "\n"
+ if (ch == "r") return "\r"
+ return ch
+ })
+ }
+
function parseQuery(query) {
var isRE = query.match(/^\/(.*)\/([a-z]*)$/);
if (isRE) {
try { query = new RegExp(isRE[1], isRE[2].indexOf("i") == -1 ? "" : "i"); }
catch(e) {} // Not a regular expression after all, do a string search
+ } else {
+ query = parseString(query)
}
if (typeof query == "string" ? query == "" : query.test(""))
query = /x^/;
return query;
}
+
var queryDialog =
'Search: (Use /re/ syntax for regexp search)';
- function doSearch(cm, rev) {
+
+ function startSearch(cm, state, query) {
+ state.queryText = query;
+ state.query = parseQuery(query);
+ cm.removeOverlay(state.overlay, queryCaseInsensitive(state.query));
+ state.overlay = searchOverlay(state.query, queryCaseInsensitive(state.query));
+ cm.addOverlay(state.overlay);
+ if (cm.showMatchesOnScrollbar) {
+ if (state.annotate) { state.annotate.clear(); state.annotate = null; }
+ state.annotate = cm.showMatchesOnScrollbar(state.query, queryCaseInsensitive(state.query));
+ }
+ }
+
+ function doSearch(cm, rev, persistent) {
var state = getSearchState(cm);
if (state.query) return findNext(cm, rev);
var q = cm.getSelection() || state.lastQuery;
- dialog(cm, queryDialog, "Search for:", q, function(query) {
- cm.operation(function() {
- if (!query || state.query) return;
- state.query = parseQuery(query);
- cm.removeOverlay(state.overlay, queryCaseInsensitive(state.query));
- state.overlay = searchOverlay(state.query, queryCaseInsensitive(state.query));
- cm.addOverlay(state.overlay);
- if (cm.showMatchesOnScrollbar) {
- if (state.annotate) { state.annotate.clear(); state.annotate = null; }
- state.annotate = cm.showMatchesOnScrollbar(state.query, queryCaseInsensitive(state.query));
- }
- state.posFrom = state.posTo = cm.getCursor();
- findNext(cm, rev);
+ if (persistent && cm.openDialog) {
+ persistentDialog(cm, queryDialog, q, function(query, event) {
+ CodeMirror.e_stop(event);
+ if (!query) return;
+ if (query != state.queryText) startSearch(cm, state, query);
+ findNext(cm, event.shiftKey);
});
- });
+ } else {
+ dialog(cm, queryDialog, "Search for:", q, function(query) {
+ if (query && !state.query) cm.operation(function() {
+ startSearch(cm, state, query);
+ state.posFrom = state.posTo = cm.getCursor();
+ findNext(cm, rev);
+ });
+ });
+ }
}
+
function findNext(cm, rev) {cm.operation(function() {
var state = getSearchState(cm);
var cursor = getSearchCursor(cm, state.query, rev ? state.posFrom : state.posTo);
@@ -100,14 +142,15 @@
if (!cursor.find(rev)) return;
}
cm.setSelection(cursor.from(), cursor.to());
- cm.scrollIntoView({from: cursor.from(), to: cursor.to()});
+ cm.scrollIntoView({from: cursor.from(), to: cursor.to()}, 20);
state.posFrom = cursor.from(); state.posTo = cursor.to();
});}
+
function clearSearch(cm) {cm.operation(function() {
var state = getSearchState(cm);
state.lastQuery = state.query;
if (!state.query) return;
- state.query = null;
+ state.query = state.queryText = null;
cm.removeOverlay(state.overlay);
if (state.annotate) { state.annotate.clear(); state.annotate = null; }
});}
@@ -116,6 +159,7 @@
'Replace: (Use /re/ syntax for regexp search)';
var replacementQueryDialog = 'With: ';
var doReplaceConfirm = "Replace? ";
+
function replace(cm, all) {
if (cm.getOption("readOnly")) return;
var query = cm.getSelection() || getSearchState(cm).lastQuery;
@@ -123,6 +167,7 @@
if (!query) return;
query = parseQuery(query);
dialog(cm, replacementQueryDialog, "Replace with:", "", function(text) {
+ text = parseString(text)
if (all) {
cm.operation(function() {
for (var cursor = getSearchCursor(cm, query); cursor.findNext();) {
@@ -159,6 +204,7 @@
}
CodeMirror.commands.find = function(cm) {clearSearch(cm); doSearch(cm);};
+ CodeMirror.commands.findPersistent = function(cm) {clearSearch(cm); doSearch(cm, false, true);};
CodeMirror.commands.findNext = doSearch;
CodeMirror.commands.findPrev = function(cm) {doSearch(cm, true);};
CodeMirror.commands.clearSearch = clearSearch;
diff --git a/media/editors/codemirror/addon/search/search.min.js b/media/editors/codemirror/addon/search/search.min.js
index 6c6e0148a7eb7..433d697342d57 100644
--- a/media/editors/codemirror/addon/search/search.min.js
+++ b/media/editors/codemirror/addon/search/search.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("./searchcursor"),require("../dialog/dialog")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","./searchcursor","../dialog/dialog"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b){return"string"==typeof a?a=new RegExp(a.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),b?"gi":"g"):a.global||(a=new RegExp(a.source,a.ignoreCase?"gi":"g")),{token:function(b){a.lastIndex=b.pos;var c=a.exec(b.string);return c&&c.index==b.pos?(b.pos+=c[0].length,"searching"):void(c?b.pos=c.index:b.skipToEnd())}}}function c(){this.posFrom=this.posTo=this.lastQuery=this.query=null,this.overlay=null}function d(a){return a.state.search||(a.state.search=new c)}function e(a){return"string"==typeof a&&a==a.toLowerCase()}function f(a,b,c){return a.getSearchCursor(b,c,e(b))}function g(a,b,c,d,e){a.openDialog?a.openDialog(b,e,{value:d,selectValueOnOpen:!0}):e(prompt(c,d))}function h(a,b,c,d){a.openConfirm?a.openConfirm(b,d):confirm(c)&&d[0]()}function i(a){var b=a.match(/^\/(.*)\/([a-z]*)$/);if(b)try{a=new RegExp(b[1],-1==b[2].indexOf("i")?"":"i")}catch(c){}return("string"==typeof a?""==a:a.test(""))&&(a=/x^/),a}function j(a,c){var f=d(a);if(f.query)return k(a,c);var h=a.getSelection()||f.lastQuery;g(a,n,"Search for:",h,function(d){a.operation(function(){d&&!f.query&&(f.query=i(d),a.removeOverlay(f.overlay,e(f.query)),f.overlay=b(f.query,e(f.query)),a.addOverlay(f.overlay),a.showMatchesOnScrollbar&&(f.annotate&&(f.annotate.clear(),f.annotate=null),f.annotate=a.showMatchesOnScrollbar(f.query,e(f.query))),f.posFrom=f.posTo=a.getCursor(),k(a,c))})})}function k(b,c){b.operation(function(){var e=d(b),g=f(b,e.query,c?e.posFrom:e.posTo);(g.find(c)||(g=f(b,e.query,c?a.Pos(b.lastLine()):a.Pos(b.firstLine(),0)),g.find(c)))&&(b.setSelection(g.from(),g.to()),b.scrollIntoView({from:g.from(),to:g.to()}),e.posFrom=g.from(),e.posTo=g.to())})}function l(a){a.operation(function(){var b=d(a);b.lastQuery=b.query,b.query&&(b.query=null,a.removeOverlay(b.overlay),b.annotate&&(b.annotate.clear(),b.annotate=null))})}function m(a,b){if(!a.getOption("readOnly")){var c=a.getSelection()||d(a).lastQuery;g(a,o,"Replace:",c,function(c){c&&(c=i(c),g(a,p,"Replace with:","",function(d){if(b)a.operation(function(){for(var b=f(a,c);b.findNext();)if("string"!=typeof c){var e=a.getRange(b.from(),b.to()).match(c);b.replace(d.replace(/\$(\d)/g,function(a,b){return e[b]}))}else b.replace(d)});else{l(a);var e=f(a,c,a.getCursor()),g=function(){var b,d=e.from();!(b=e.findNext())&&(e=f(a,c),!(b=e.findNext())||d&&e.from().line==d.line&&e.from().ch==d.ch)||(a.setSelection(e.from(),e.to()),a.scrollIntoView({from:e.from(),to:e.to()}),h(a,q,"Replace?",[function(){i(b)},g]))},i=function(a){e.replace("string"==typeof c?d:d.replace(/\$(\d)/g,function(b,c){return a[c]})),g()};g()}}))})}}var n='Search: (Use /re/ syntax for regexp search)',o='Replace: (Use /re/ syntax for regexp search)',p='With: ',q="Replace? ";a.commands.find=function(a){l(a),j(a)},a.commands.findNext=j,a.commands.findPrev=function(a){j(a,!0)},a.commands.clearSearch=l,a.commands.replace=m,a.commands.replaceAll=function(a){m(a,!0)}});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror"),require("./searchcursor"),require("../dialog/dialog")):"function"==typeof define&&define.amd?define(["../../lib/codemirror","./searchcursor","../dialog/dialog"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b){return"string"==typeof a?a=new RegExp(a.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&"),b?"gi":"g"):a.global||(a=new RegExp(a.source,a.ignoreCase?"gi":"g")),{token:function(b){a.lastIndex=b.pos;var c=a.exec(b.string);return c&&c.index==b.pos?(b.pos+=c[0].length,"searching"):void(c?b.pos=c.index:b.skipToEnd())}}}function c(){this.posFrom=this.posTo=this.lastQuery=this.query=null,this.overlay=null}function d(a){return a.state.search||(a.state.search=new c)}function e(a){return"string"==typeof a&&a==a.toLowerCase()}function f(a,b,c){return a.getSearchCursor(b,c,e(b))}function g(a,b,c,d){a.openDialog(b,d,{value:c,selectValueOnOpen:!0,closeOnEnter:!1,onClose:function(){o(a)}})}function h(a,b,c,d,e){a.openDialog?a.openDialog(b,e,{value:d,selectValueOnOpen:!0}):e(prompt(c,d))}function i(a,b,c,d){a.openConfirm?a.openConfirm(b,d):confirm(c)&&d[0]()}function j(a){return a.replace(/\\(.)/g,function(a,b){return"n"==b?"\n":"r"==b?"\r":b})}function k(a){var b=a.match(/^\/(.*)\/([a-z]*)$/);if(b)try{a=new RegExp(b[1],-1==b[2].indexOf("i")?"":"i")}catch(c){}else a=j(a);return("string"==typeof a?""==a:a.test(""))&&(a=/x^/),a}function l(a,c,d){c.queryText=d,c.query=k(d),a.removeOverlay(c.overlay,e(c.query)),c.overlay=b(c.query,e(c.query)),a.addOverlay(c.overlay),a.showMatchesOnScrollbar&&(c.annotate&&(c.annotate.clear(),c.annotate=null),c.annotate=a.showMatchesOnScrollbar(c.query,e(c.query)))}function m(b,c,e){var f=d(b);if(f.query)return n(b,c);var i=b.getSelection()||f.lastQuery;e&&b.openDialog?g(b,q,i,function(c,d){a.e_stop(d),c&&(c!=f.queryText&&l(b,f,c),n(b,d.shiftKey))}):h(b,q,"Search for:",i,function(a){a&&!f.query&&b.operation(function(){l(b,f,a),f.posFrom=f.posTo=b.getCursor(),n(b,c)})})}function n(b,c){b.operation(function(){var e=d(b),g=f(b,e.query,c?e.posFrom:e.posTo);(g.find(c)||(g=f(b,e.query,c?a.Pos(b.lastLine()):a.Pos(b.firstLine(),0)),g.find(c)))&&(b.setSelection(g.from(),g.to()),b.scrollIntoView({from:g.from(),to:g.to()},20),e.posFrom=g.from(),e.posTo=g.to())})}function o(a){a.operation(function(){var b=d(a);b.lastQuery=b.query,b.query&&(b.query=b.queryText=null,a.removeOverlay(b.overlay),b.annotate&&(b.annotate.clear(),b.annotate=null))})}function p(a,b){if(!a.getOption("readOnly")){var c=a.getSelection()||d(a).lastQuery;h(a,r,"Replace:",c,function(c){c&&(c=k(c),h(a,s,"Replace with:","",function(d){if(d=j(d),b)a.operation(function(){for(var b=f(a,c);b.findNext();)if("string"!=typeof c){var e=a.getRange(b.from(),b.to()).match(c);b.replace(d.replace(/\$(\d)/g,function(a,b){return e[b]}))}else b.replace(d)});else{o(a);var e=f(a,c,a.getCursor()),g=function(){var b,d=e.from();!(b=e.findNext())&&(e=f(a,c),!(b=e.findNext())||d&&e.from().line==d.line&&e.from().ch==d.ch)||(a.setSelection(e.from(),e.to()),a.scrollIntoView({from:e.from(),to:e.to()}),i(a,t,"Replace?",[function(){h(b)},g]))},h=function(a){e.replace("string"==typeof c?d:d.replace(/\$(\d)/g,function(b,c){return a[c]})),g()};g()}}))})}}var q='Search: (Use /re/ syntax for regexp search)',r='Replace: (Use /re/ syntax for regexp search)',s='With: ',t="Replace? ";a.commands.find=function(a){o(a),m(a)},a.commands.findPersistent=function(a){o(a),m(a,!1,!0)},a.commands.findNext=m,a.commands.findPrev=function(a){m(a,!0)},a.commands.clearSearch=o,a.commands.replace=p,a.commands.replaceAll=function(a){p(a,!0)}});
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/tern/tern.css b/media/editors/codemirror/addon/tern/tern.css
index 76fba33d4a774..c4b8a2f77e983 100644
--- a/media/editors/codemirror/addon/tern/tern.css
+++ b/media/editors/codemirror/addon/tern/tern.css
@@ -1,6 +1,7 @@
.CodeMirror-Tern-completion {
padding-left: 22px;
position: relative;
+ line-height: 1.5;
}
.CodeMirror-Tern-completion:before {
position: absolute;
diff --git a/media/editors/codemirror/addon/tern/tern.js b/media/editors/codemirror/addon/tern/tern.js
index 99b8a64682f78..3ff2d53e5f5b1 100644
--- a/media/editors/codemirror/addon/tern/tern.js
+++ b/media/editors/codemirror/addon/tern/tern.js
@@ -59,6 +59,7 @@
this.options = options || {};
var plugins = this.options.plugins || (this.options.plugins = {});
if (!plugins.doc_comment) plugins.doc_comment = true;
+ this.docs = Object.create(null);
if (this.options.useWorker) {
this.server = new WorkerServer(this);
} else {
@@ -69,7 +70,6 @@
plugins: plugins
});
}
- this.docs = Object.create(null);
this.trackChange = function(doc, change) { trackChange(self, doc, change); };
this.cachedArgHints = null;
@@ -124,6 +124,8 @@
var self = this;
var doc = findDoc(this, cm.getDoc());
var request = buildRequest(this, doc, query, pos);
+ var extraOptions = request.query && this.options.queryOptions && this.options.queryOptions[request.query.type]
+ if (extraOptions) for (var prop in extraOptions) request.query[prop] = extraOptions[prop];
this.server.request(request, function (error, data) {
if (!error && self.options.responseFilter)
@@ -214,7 +216,7 @@
var completion = data.completions[i], className = typeToIcon(completion.type);
if (data.guess) className += " " + cls + "guess";
completions.push({text: completion.name + after,
- displayText: completion.name,
+ displayText: completion.displayName || completion.name,
className: className,
data: completion});
}
@@ -264,7 +266,7 @@
child.target = "_blank";
}
}
- tempTooltip(cm, tip);
+ tempTooltip(cm, tip, ts);
if (c) c();
}, pos);
}
@@ -442,7 +444,7 @@
function atInterestingExpression(cm) {
var pos = cm.getCursor("end"), tok = cm.getTokenAt(pos);
- if (tok.start < pos.ch && (tok.type == "comment" || tok.type == "string")) return false;
+ if (tok.start < pos.ch && tok.type == "comment") return false;
return /[\w)\]]/.test(cm.getLine(pos.line).slice(Math.max(pos.ch - 1, 0), pos.ch + 1));
}
@@ -464,11 +466,12 @@
ts.request(cm, {type: "refs"}, function(error, data) {
if (error) return showError(ts, cm, error);
var ranges = [], cur = 0;
+ var curPos = cm.getCursor();
for (var i = 0; i < data.refs.length; i++) {
var ref = data.refs[i];
if (ref.file == name) {
ranges.push({anchor: ref.start, head: ref.end});
- if (cmpPos(cur, ref.start) >= 0 && cmpPos(cur, ref.end) <= 0)
+ if (cmpPos(curPos, ref.start) >= 0 && cmpPos(curPos, ref.end) <= 0)
cur = ranges.length - 1;
}
}
@@ -590,7 +593,7 @@
// Tooltips
- function tempTooltip(cm, content) {
+ function tempTooltip(cm, content, ts) {
if (cm.state.ternTooltip) remove(cm.state.ternTooltip);
var where = cm.cursorCoords();
var tip = cm.state.ternTooltip = makeTooltip(where.right + 1, where.bottom, content);
@@ -614,7 +617,7 @@
else mouseOnTip = false;
}
});
- setTimeout(maybeClear, 1700);
+ setTimeout(maybeClear, ts.options.hintDelay ? ts.options.hintDelay : 1700);
cm.on("cursorActivity", clear);
cm.on('blur', clear);
cm.on('scroll', clear);
@@ -642,7 +645,7 @@
if (ts.options.showError)
ts.options.showError(cm, msg);
else
- tempTooltip(cm, String(msg));
+ tempTooltip(cm, String(msg), ts);
}
function closeArgHints(ts) {
diff --git a/media/editors/codemirror/addon/tern/tern.min.css b/media/editors/codemirror/addon/tern/tern.min.css
index f4ae8b49e0bfa..c377ab176b8ad 100644
--- a/media/editors/codemirror/addon/tern/tern.min.css
+++ b/media/editors/codemirror/addon/tern/tern.min.css
@@ -1 +1 @@
-.CodeMirror-Tern-completion{padding-left:22px;position:relative}.CodeMirror-Tern-completion:before{position:absolute;left:2px;bottom:2px;border-radius:50%;font-size:12px;font-weight:700;height:15px;width:15px;line-height:16px;text-align:center;color:#fff;-moz-box-sizing:border-box;box-sizing:border-box}.CodeMirror-Tern-completion-unknown:before{content:"?";background:#4bb}.CodeMirror-Tern-completion-object:before{content:"O";background:#77c}.CodeMirror-Tern-completion-fn:before{content:"F";background:#7c7}.CodeMirror-Tern-completion-array:before{content:"A";background:#c66}.CodeMirror-Tern-completion-number:before{content:"1";background:#999}.CodeMirror-Tern-completion-string:before{content:"S";background:#999}.CodeMirror-Tern-completion-bool:before{content:"B";background:#999}.CodeMirror-Tern-completion-guess{color:#999}.CodeMirror-Tern-tooltip{border:1px solid silver;border-radius:3px;color:#444;padding:2px 5px;font-size:90%;font-family:monospace;background-color:#fff;white-space:pre-wrap;max-width:40em;position:absolute;z-index:10;-webkit-box-shadow:2px 3px 5px rgba(0,0,0,.2);-moz-box-shadow:2px 3px 5px rgba(0,0,0,.2);box-shadow:2px 3px 5px rgba(0,0,0,.2);transition:opacity 1s;-moz-transition:opacity 1s;-webkit-transition:opacity 1s;-o-transition:opacity 1s;-ms-transition:opacity 1s}.CodeMirror-Tern-hint-doc{max-width:25em;margin-top:-3px}.CodeMirror-Tern-fname{color:#000}.CodeMirror-Tern-farg{color:#70a}.CodeMirror-Tern-farg-current{text-decoration:underline}.CodeMirror-Tern-type{color:#07c}.CodeMirror-Tern-fhint-guess{opacity:.7}
\ No newline at end of file
+.CodeMirror-Tern-completion{padding-left:22px;position:relative;line-height:1.5}.CodeMirror-Tern-completion:before{position:absolute;left:2px;bottom:2px;border-radius:50%;font-size:12px;font-weight:700;height:15px;width:15px;line-height:16px;text-align:center;color:#fff;-moz-box-sizing:border-box;box-sizing:border-box}.CodeMirror-Tern-completion-unknown:before{content:"?";background:#4bb}.CodeMirror-Tern-completion-object:before{content:"O";background:#77c}.CodeMirror-Tern-completion-fn:before{content:"F";background:#7c7}.CodeMirror-Tern-completion-array:before{content:"A";background:#c66}.CodeMirror-Tern-completion-number:before{content:"1";background:#999}.CodeMirror-Tern-completion-string:before{content:"S";background:#999}.CodeMirror-Tern-completion-bool:before{content:"B";background:#999}.CodeMirror-Tern-completion-guess{color:#999}.CodeMirror-Tern-tooltip{border:1px solid silver;border-radius:3px;color:#444;padding:2px 5px;font-size:90%;font-family:monospace;background-color:#fff;white-space:pre-wrap;max-width:40em;position:absolute;z-index:10;-webkit-box-shadow:2px 3px 5px rgba(0,0,0,.2);-moz-box-shadow:2px 3px 5px rgba(0,0,0,.2);box-shadow:2px 3px 5px rgba(0,0,0,.2);transition:opacity 1s;-moz-transition:opacity 1s;-webkit-transition:opacity 1s;-o-transition:opacity 1s;-ms-transition:opacity 1s}.CodeMirror-Tern-hint-doc{max-width:25em;margin-top:-3px}.CodeMirror-Tern-fname{color:#000}.CodeMirror-Tern-farg{color:#70a}.CodeMirror-Tern-farg-current{text-decoration:underline}.CodeMirror-Tern-type{color:#07c}.CodeMirror-Tern-fhint-guess{opacity:.7}
\ No newline at end of file
diff --git a/media/editors/codemirror/addon/tern/tern.min.js b/media/editors/codemirror/addon/tern/tern.min.js
index 154b8739e241d..a628170dce4cc 100644
--- a/media/editors/codemirror/addon/tern/tern.min.js
+++ b/media/editors/codemirror/addon/tern/tern.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b,c){var d=a.docs[b];d?c(E(a,d)):a.options.getFile?a.options.getFile(b,c):c(null)}function c(a,b,c){for(var d in a.docs){var e=a.docs[d];if(e.doc==b)return e}if(!c)for(var f=0;;++f)if(d="[doc"+(f||"")+"]",!a.docs[d]){c=d;break}return a.addDoc(c,b)}function d(b,d){return"string"==typeof d?b.docs[d]:(d instanceof a&&(d=d.getDoc()),d instanceof a.Doc?c(b,d):void 0)}function e(a,b,d){var e=c(a,b),g=a.cachedArgHints;g&&g.doc==b&&K(g.start,d.to)<=0&&(a.cachedArgHints=null);var h=e.changed;null==h&&(e.changed=h={from:d.from.line,to:d.from.line});var i=d.from.line+(d.text.length-1);d.from.line=h.to&&(h.to=i+1),h.from>d.from.line&&(h.from=d.from.line),b.lineCount()>I&&d.to-h.from>100&&setTimeout(function(){e.changed&&e.changed.to-e.changed.from>100&&f(a,e)},200)}function f(a,b){a.server.request({files:[{type:"full",name:b.name,text:E(a,b)}]},function(a){a?window.console.error(a):b.changed=null})}function g(b,c,d){b.request(c,{type:"completions",types:!0,docs:!0,urls:!0},function(e,f){if(e)return C(b,c,e);var g=[],i="",j=f.start,k=f.end;'["'==c.getRange(G(j.line,j.ch-2),j)&&'"]'!=c.getRange(k,G(k.line,k.ch+2))&&(i='"]');for(var l=0;l=m;--j){for(var o=c.getLine(j),p=0,q=0;;){var r=o.indexOf(" ",q);if(-1==r)break;p+=i-(r+p)%i-1,q=r+1}if(g=f.column-p,"("==o.charAt(g)){n=!0;break}}if(n){var s=G(j,g),t=b.cachedArgHints;return t&&t.doc==c.getDoc()&&0==K(s,t.start)?k(b,c,h):void b.request(c,{type:"type",preferFunction:!0,end:s},function(a,d){!a&&d.type&&/^fn\(/.test(d.type)&&(b.cachedArgHints={start:q,type:l(d.type),name:d.exprName||d.name||"fn",guess:d.guess,doc:c.getDoc()},k(b,c,h))})}}}}}function k(a,b,c){D(a);for(var d=a.cachedArgHints,e=d.type,f=w("span",d.guess?H+"fhint-guess":null,w("span",H+"fname",d.name),"("),g=0;g ":")")),e.rettype&&f.appendChild(w("span",H+"type",e.rettype));var i=b.cursorCoords(null,"page");a.activeArgHints=z(i.right+1,i.bottom,f)}function l(a){function b(b){for(var c=0,e=d;;){var f=a.charAt(d);if(b.test(f)&&!c)return a.slice(e,d);/[{\[\(]/.test(f)?++c:/[}\]\)]/.test(f)&&--c,++d}}var c=[],d=3;if(")"!=a.charAt(d))for(;;){var e=a.slice(d).match(/^([^, \(\[\{]+): /);if(e&&(d+=e[0].length,e=e[1]),c.push({name:e,type:b(/[\),]/)}),")"==a.charAt(d))break;d+=2}var f=a.slice(d).match(/^\) -> (.*)$/);return{args:c,rettype:f&&f[1]}}function m(a,b){function d(d){var e={type:"definition",variable:d||null},f=c(a,b.getDoc());a.server.request(u(a,f,e),function(c,d){if(c)return C(a,b,c);if(!d.file&&d.url)return void window.open(d.url);if(d.file){var e,g=a.docs[d.file];if(g&&(e=p(g.doc,d)))return a.jumpStack.push({file:f.name,start:b.getCursor("from"),end:b.getCursor("to")}),void o(a,f,g,e.start,e.end)}C(a,b,"Could not find a definition.")})}q(b)?d():x(b,"Jump to variable",function(a){a&&d(a)})}function n(a,b){var d=a.jumpStack.pop(),e=d&&a.docs[d.file];e&&o(a,c(a,b.getDoc()),e,d.start,d.end)}function o(a,b,c,d,e){c.doc.setSelection(d,e),b!=c&&a.options.switchToDoc&&(D(a),a.options.switchToDoc(c.name,c.doc))}function p(a,b){for(var c=b.context.slice(0,b.contextOffset).split("\n"),d=b.start.line-(c.length-1),e=G(d,(1==c.length?b.start.ch:a.getLine(d).length)-c[0].length),f=a.getLine(d).slice(e.ch),g=d+1;gl&&(h=k,j=l)}if(!h)return null;if(1==c.length?h.ch+=c[0].length:h=G(h.line+(c.length-1),c[c.length-1].length),b.start.line==b.end.line)var m=G(h.line,h.ch+(b.end.ch-b.start.ch));else var m=G(h.line+(b.end.line-b.start.line),b.end.ch);return{start:h,end:m}}function q(a){var b=a.getCursor("end"),c=a.getTokenAt(b);return c.start=0&&K(g,i.end)<=0&&(g=f.length-1))}b.setSelections(f,g)})}function t(a,b){for(var c=Object.create(null),d=0;dI&&g!==!1&&b.changed.to-b.changed.from<100&&b.changed.from<=h.line&&b.changed.to>c.end.line){e.push(v(b,h,c.end)),c.file="#0";var f=e[0].offsetLines;null!=c.start&&(c.start=G(c.start.line- -f,c.start.ch)),c.end=G(c.end.line-f,c.end.ch)}else e.push({type:"full",name:b.name,text:E(a,b)}),c.file=b.name,b.changed=null;else c.file=b.name;for(var i in a.docs){var j=a.docs[i];j.changed&&j!=b&&(e.push({type:"full",name:j.name,text:E(a,j)}),j.changed=null)}return{query:c,files:e}}function v(b,c,d){for(var e,f=b.doc,g=null,h=null,i=4,j=c.line-1,k=Math.max(0,j-50);j>=k;--j){var l=f.getLine(j),m=l.search(/\bfunction\b/);if(!(0>m)){var n=a.countColumn(l,null,i);null!=g&&n>=g||(g=n,h=j)}}null==h&&(h=k);var o=Math.min(f.lastLine(),d.line+20);if(null==g||g==a.countColumn(f.getLine(c.line),null,i))e=o;else for(e=d.line+1;o>e;++e){var n=a.countColumn(f.getLine(e),null,i);if(g>=n)break}var p=G(h,0);return{type:"part",name:b.name,offsetLines:p.line,text:f.getRange(p,G(e,0))}}function w(a,b){var c=document.createElement(a);b&&(c.className=b);for(var d=2;d",c):c(prompt(b,""))}function y(b,c){function d(){i=!0,h||e()}function e(){b.state.ternTooltip=null,g.parentNode&&(b.off("cursorActivity",e),b.off("blur",e),b.off("scroll",e),B(g))}b.state.ternTooltip&&A(b.state.ternTooltip);var f=b.cursorCoords(),g=b.state.ternTooltip=z(f.right+1,f.bottom,c),h=!1,i=!1;a.on(g,"mousemove",function(){h=!0}),a.on(g,"mouseout",function(b){a.contains(g,b.relatedTarget||b.toElement)||(i?e():h=!1)}),setTimeout(d,1700),b.on("cursorActivity",e),b.on("blur",e),b.on("scroll",e)}function z(a,b,c){var d=w("div",H+"tooltip",c);return d.style.left=a+"px",d.style.top=b+"px",document.body.appendChild(d),d}function A(a){var b=a&&a.parentNode;b&&b.removeChild(a)}function B(a){a.style.opacity="0",setTimeout(function(){A(a)},1100)}function C(a,b,c){a.options.showError?a.options.showError(b,c):y(b,String(c))}function D(a){a.activeArgHints&&(A(a.activeArgHints),a.activeArgHints=null)}function E(a,b){var c=b.doc.getValue();return a.options.fileFilter&&(c=a.options.fileFilter(c,b.name,b.doc)),c}function F(a){function c(a,b){b&&(a.id=++e,f[e]=b),d.postMessage(a)}var d=a.worker=new Worker(a.options.workerScript);d.postMessage({type:"init",defs:a.options.defs,plugins:a.options.plugins,scripts:a.options.workerDeps});var e=0,f={};d.onmessage=function(d){var e=d.data;"getFile"==e.type?b(a,e.name,function(a,b){c({type:"getFile",err:String(a),text:b,id:e.id})}):"debug"==e.type?window.console.log(e.message):e.id&&f[e.id]&&(f[e.id](e.err,e.body),delete f[e.id])},d.onerror=function(a){for(var b in f)f[b](a);f={}},this.addFile=function(a,b){c({type:"add",name:a,text:b})},this.delFile=function(a){c({type:"del",name:a})},this.request=function(a,b){c({type:"req",body:a},b)}}a.TernServer=function(a){var c=this;this.options=a||{};var d=this.options.plugins||(this.options.plugins={});d.doc_comment||(d.doc_comment=!0),this.options.useWorker?this.server=new F(this):this.server=new tern.Server({getFile:function(a,d){return b(c,a,d)},async:!0,defs:this.options.defs||[],plugins:d}),this.docs=Object.create(null),this.trackChange=function(a,b){e(c,a,b)},this.cachedArgHints=null,this.activeArgHints=null,this.jumpStack=[],this.getHint=function(a,b){return g(c,a,b)},this.getHint.async=!0},a.TernServer.prototype={addDoc:function(b,c){var d={doc:c,name:b,changed:null};return this.server.addFile(b,E(this,d)),a.on(c,"change",this.trackChange),this.docs[b]=d},delDoc:function(b){var c=d(this,b);c&&(a.off(c.doc,"change",this.trackChange),delete this.docs[c.name],this.server.delFile(c.name))},hideDoc:function(a){D(this);var b=d(this,a);b&&b.changed&&f(this,b)},complete:function(a){a.showHint({hint:this.getHint})},showType:function(a,b,c){i(this,a,b,"type",c)},showDocs:function(a,b,c){i(this,a,b,"documentation",c)},updateArgHints:function(a){j(this,a)},jumpToDef:function(a){m(this,a)},jumpBack:function(a){n(this,a)},rename:function(a){r(this,a)},selectName:function(a){s(this,a)},request:function(a,b,d,e){var f=this,g=c(this,a.getDoc()),h=u(this,g,b,e);this.server.request(h,function(a,c){!a&&f.options.responseFilter&&(c=f.options.responseFilter(g,b,h,a,c)),d(a,c)})},destroy:function(){this.worker&&(this.worker.terminate(),this.worker=null)}};var G=a.Pos,H="CodeMirror-Tern-",I=250,J=0,K=a.cmpPos});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../../lib/codemirror")):"function"==typeof define&&define.amd?define(["../../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b,c){var d=a.docs[b];d?c(E(a,d)):a.options.getFile?a.options.getFile(b,c):c(null)}function c(a,b,c){for(var d in a.docs){var e=a.docs[d];if(e.doc==b)return e}if(!c)for(var f=0;;++f)if(d="[doc"+(f||"")+"]",!a.docs[d]){c=d;break}return a.addDoc(c,b)}function d(b,d){return"string"==typeof d?b.docs[d]:(d instanceof a&&(d=d.getDoc()),d instanceof a.Doc?c(b,d):void 0)}function e(a,b,d){var e=c(a,b),g=a.cachedArgHints;g&&g.doc==b&&K(g.start,d.to)<=0&&(a.cachedArgHints=null);var h=e.changed;null==h&&(e.changed=h={from:d.from.line,to:d.from.line});var i=d.from.line+(d.text.length-1);d.from.line=h.to&&(h.to=i+1),h.from>d.from.line&&(h.from=d.from.line),b.lineCount()>I&&d.to-h.from>100&&setTimeout(function(){e.changed&&e.changed.to-e.changed.from>100&&f(a,e)},200)}function f(a,b){a.server.request({files:[{type:"full",name:b.name,text:E(a,b)}]},function(a){a?window.console.error(a):b.changed=null})}function g(b,c,d){b.request(c,{type:"completions",types:!0,docs:!0,urls:!0},function(e,f){if(e)return C(b,c,e);var g=[],i="",j=f.start,k=f.end;'["'==c.getRange(G(j.line,j.ch-2),j)&&'"]'!=c.getRange(k,G(k.line,k.ch+2))&&(i='"]');for(var l=0;l=m;--j){for(var o=c.getLine(j),p=0,q=0;;){var r=o.indexOf(" ",q);if(-1==r)break;p+=i-(r+p)%i-1,q=r+1}if(g=f.column-p,"("==o.charAt(g)){n=!0;break}}if(n){var s=G(j,g),t=b.cachedArgHints;return t&&t.doc==c.getDoc()&&0==K(s,t.start)?k(b,c,h):void b.request(c,{type:"type",preferFunction:!0,end:s},function(a,d){!a&&d.type&&/^fn\(/.test(d.type)&&(b.cachedArgHints={start:q,type:l(d.type),name:d.exprName||d.name||"fn",guess:d.guess,doc:c.getDoc()},k(b,c,h))})}}}}}function k(a,b,c){D(a);for(var d=a.cachedArgHints,e=d.type,f=w("span",d.guess?H+"fhint-guess":null,w("span",H+"fname",d.name),"("),g=0;g ":")")),e.rettype&&f.appendChild(w("span",H+"type",e.rettype));var i=b.cursorCoords(null,"page");a.activeArgHints=z(i.right+1,i.bottom,f)}function l(a){function b(b){for(var c=0,e=d;;){var f=a.charAt(d);if(b.test(f)&&!c)return a.slice(e,d);/[{\[\(]/.test(f)?++c:/[}\]\)]/.test(f)&&--c,++d}}var c=[],d=3;if(")"!=a.charAt(d))for(;;){var e=a.slice(d).match(/^([^, \(\[\{]+): /);if(e&&(d+=e[0].length,e=e[1]),c.push({name:e,type:b(/[\),]/)}),")"==a.charAt(d))break;d+=2}var f=a.slice(d).match(/^\) -> (.*)$/);return{args:c,rettype:f&&f[1]}}function m(a,b){function d(d){var e={type:"definition",variable:d||null},f=c(a,b.getDoc());a.server.request(u(a,f,e),function(c,d){if(c)return C(a,b,c);if(!d.file&&d.url)return void window.open(d.url);if(d.file){var e,g=a.docs[d.file];if(g&&(e=p(g.doc,d)))return a.jumpStack.push({file:f.name,start:b.getCursor("from"),end:b.getCursor("to")}),void o(a,f,g,e.start,e.end)}C(a,b,"Could not find a definition.")})}q(b)?d():x(b,"Jump to variable",function(a){a&&d(a)})}function n(a,b){var d=a.jumpStack.pop(),e=d&&a.docs[d.file];e&&o(a,c(a,b.getDoc()),e,d.start,d.end)}function o(a,b,c,d,e){c.doc.setSelection(d,e),b!=c&&a.options.switchToDoc&&(D(a),a.options.switchToDoc(c.name,c.doc))}function p(a,b){for(var c=b.context.slice(0,b.contextOffset).split("\n"),d=b.start.line-(c.length-1),e=G(d,(1==c.length?b.start.ch:a.getLine(d).length)-c[0].length),f=a.getLine(d).slice(e.ch),g=d+1;gl&&(h=k,j=l)}if(!h)return null;if(1==c.length?h.ch+=c[0].length:h=G(h.line+(c.length-1),c[c.length-1].length),b.start.line==b.end.line)var m=G(h.line,h.ch+(b.end.ch-b.start.ch));else var m=G(h.line+(b.end.line-b.start.line),b.end.ch);return{start:h,end:m}}function q(a){var b=a.getCursor("end"),c=a.getTokenAt(b);return c.start=0&&K(h,j.end)<=0&&(g=f.length-1))}b.setSelections(f,g)})}function t(a,b){for(var c=Object.create(null),d=0;dI&&g!==!1&&b.changed.to-b.changed.from<100&&b.changed.from<=h.line&&b.changed.to>c.end.line){e.push(v(b,h,c.end)),c.file="#0";var f=e[0].offsetLines;null!=c.start&&(c.start=G(c.start.line- -f,c.start.ch)),c.end=G(c.end.line-f,c.end.ch)}else e.push({type:"full",name:b.name,text:E(a,b)}),c.file=b.name,b.changed=null;else c.file=b.name;for(var i in a.docs){var j=a.docs[i];j.changed&&j!=b&&(e.push({type:"full",name:j.name,text:E(a,j)}),j.changed=null)}return{query:c,files:e}}function v(b,c,d){for(var e,f=b.doc,g=null,h=null,i=4,j=c.line-1,k=Math.max(0,j-50);j>=k;--j){var l=f.getLine(j),m=l.search(/\bfunction\b/);if(!(0>m)){var n=a.countColumn(l,null,i);null!=g&&n>=g||(g=n,h=j)}}null==h&&(h=k);var o=Math.min(f.lastLine(),d.line+20);if(null==g||g==a.countColumn(f.getLine(c.line),null,i))e=o;else for(e=d.line+1;o>e;++e){var n=a.countColumn(f.getLine(e),null,i);if(g>=n)break}var p=G(h,0);return{type:"part",name:b.name,offsetLines:p.line,text:f.getRange(p,G(e,0))}}function w(a,b){var c=document.createElement(a);b&&(c.className=b);for(var d=2;d",c):c(prompt(b,""))}function y(b,c,d){function e(){j=!0,i||f()}function f(){b.state.ternTooltip=null,h.parentNode&&(b.off("cursorActivity",f),b.off("blur",f),b.off("scroll",f),B(h))}b.state.ternTooltip&&A(b.state.ternTooltip);var g=b.cursorCoords(),h=b.state.ternTooltip=z(g.right+1,g.bottom,c),i=!1,j=!1;a.on(h,"mousemove",function(){i=!0}),a.on(h,"mouseout",function(b){a.contains(h,b.relatedTarget||b.toElement)||(j?f():i=!1)}),setTimeout(e,d.options.hintDelay?d.options.hintDelay:1700),b.on("cursorActivity",f),b.on("blur",f),b.on("scroll",f)}function z(a,b,c){var d=w("div",H+"tooltip",c);return d.style.left=a+"px",d.style.top=b+"px",document.body.appendChild(d),d}function A(a){var b=a&&a.parentNode;b&&b.removeChild(a)}function B(a){a.style.opacity="0",setTimeout(function(){A(a)},1100)}function C(a,b,c){a.options.showError?a.options.showError(b,c):y(b,String(c),a)}function D(a){a.activeArgHints&&(A(a.activeArgHints),a.activeArgHints=null)}function E(a,b){var c=b.doc.getValue();return a.options.fileFilter&&(c=a.options.fileFilter(c,b.name,b.doc)),c}function F(a){function c(a,b){b&&(a.id=++e,f[e]=b),d.postMessage(a)}var d=a.worker=new Worker(a.options.workerScript);d.postMessage({type:"init",defs:a.options.defs,plugins:a.options.plugins,scripts:a.options.workerDeps});var e=0,f={};d.onmessage=function(d){var e=d.data;"getFile"==e.type?b(a,e.name,function(a,b){c({type:"getFile",err:String(a),text:b,id:e.id})}):"debug"==e.type?window.console.log(e.message):e.id&&f[e.id]&&(f[e.id](e.err,e.body),delete f[e.id])},d.onerror=function(a){for(var b in f)f[b](a);f={}},this.addFile=function(a,b){c({type:"add",name:a,text:b})},this.delFile=function(a){c({type:"del",name:a})},this.request=function(a,b){c({type:"req",body:a},b)}}a.TernServer=function(a){var c=this;this.options=a||{};var d=this.options.plugins||(this.options.plugins={});d.doc_comment||(d.doc_comment=!0),this.docs=Object.create(null),this.options.useWorker?this.server=new F(this):this.server=new tern.Server({getFile:function(a,d){return b(c,a,d)},async:!0,defs:this.options.defs||[],plugins:d}),this.trackChange=function(a,b){e(c,a,b)},this.cachedArgHints=null,this.activeArgHints=null,this.jumpStack=[],this.getHint=function(a,b){return g(c,a,b)},this.getHint.async=!0},a.TernServer.prototype={addDoc:function(b,c){var d={doc:c,name:b,changed:null};return this.server.addFile(b,E(this,d)),a.on(c,"change",this.trackChange),this.docs[b]=d},delDoc:function(b){var c=d(this,b);c&&(a.off(c.doc,"change",this.trackChange),delete this.docs[c.name],this.server.delFile(c.name))},hideDoc:function(a){D(this);var b=d(this,a);b&&b.changed&&f(this,b)},complete:function(a){a.showHint({hint:this.getHint})},showType:function(a,b,c){i(this,a,b,"type",c)},showDocs:function(a,b,c){i(this,a,b,"documentation",c)},updateArgHints:function(a){j(this,a)},jumpToDef:function(a){m(this,a)},jumpBack:function(a){n(this,a)},rename:function(a){r(this,a)},selectName:function(a){s(this,a)},request:function(a,b,d,e){var f=this,g=c(this,a.getDoc()),h=u(this,g,b,e),i=h.query&&this.options.queryOptions&&this.options.queryOptions[h.query.type];if(i)for(var j in i)h.query[j]=i[j];this.server.request(h,function(a,c){!a&&f.options.responseFilter&&(c=f.options.responseFilter(g,b,h,a,c)),d(a,c)})},destroy:function(){this.worker&&(this.worker.terminate(),this.worker=null)}};var G=a.Pos,H="CodeMirror-Tern-",I=250,J=0,K=a.cmpPos});
\ No newline at end of file
diff --git a/media/editors/codemirror/keymap/emacs.js b/media/editors/codemirror/keymap/emacs.js
index c4135237e1910..3eec1e57622c3 100644
--- a/media/editors/codemirror/keymap/emacs.js
+++ b/media/editors/codemirror/keymap/emacs.js
@@ -377,7 +377,7 @@
getInput(cm, "Goto line", function(str) {
var num;
- if (str && !isNaN(num = Number(str)) && num == num|0 && num > 0)
+ if (str && !isNaN(num = Number(str)) && num == (num|0) && num > 0)
cm.setCursor(num - 1);
});
},
diff --git a/media/editors/codemirror/keymap/emacs.min.js b/media/editors/codemirror/keymap/emacs.min.js
index 90356b950eff3..3082942a36590 100644
--- a/media/editors/codemirror/keymap/emacs.min.js
+++ b/media/editors/codemirror/keymap/emacs.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../lib/codemirror")):"function"==typeof define&&define.amd?define(["../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b){return a.line==b.line&&a.ch==b.ch}function c(a){I.push(a),I.length>50&&I.shift()}function d(a){return I.length?void(I[I.length-1]+=a):c(a)}function e(a){return I[I.length-(a?Math.min(a,1):1)]||""}function f(){return I.length>1&&I.pop(),e()}function g(a,e,f,g,h){null==h&&(h=a.getRange(e,f)),g&&J&&J.cm==a&&b(e,J.pos)&&a.isClean(J.gen)?d(h):c(h),a.replaceRange("",e,f,"+delete"),J=g?{cm:a,pos:e,gen:a.changeGeneration()}:null}function h(a,b,c){return a.findPosH(b,c,"char",!0)}function i(a,b,c){return a.findPosH(b,c,"word",!0)}function j(a,b,c){return a.findPosV(b,c,"line",a.doc.sel.goalColumn)}function k(a,b,c){return a.findPosV(b,c,"page",a.doc.sel.goalColumn)}function l(a,b,c){for(var d=b.line,e=a.getLine(d),f=/\S/.test(0>c?e.slice(0,b.ch):e.slice(b.ch)),g=a.firstLine(),h=a.lastLine();;){if(d+=c,g>d||d>h)return a.clipPos(H(d-c,0>c?0:null));e=a.getLine(d);var i=/\S/.test(e);if(i)f=!0;else if(f)return H(d,0)}}function m(a,b,c){for(var d=b.line,e=b.ch,f=a.getLine(b.line),g=!1;;){var h=f.charAt(e+(0>c?-1:0));if(h){if(g&&/[!?.]/.test(h))return H(d,e+(c>0?1:0));g||(g=/\w/.test(h)),e+=c}else{if(d==(0>c?a.firstLine():a.lastLine()))return H(d,e);if(f=a.getLine(d+c),!/\S/.test(f))return H(d,e);d+=c,e=0>c?f.length:0}}}function n(a,c,d){var e;if(a.findMatchingBracket&&(e=a.findMatchingBracket(c,!0))&&e.match&&(e.forward?1:-1)==d)return d>0?H(e.to.line,e.to.ch+1):e.to;for(var f=!0;;f=!1){var g=a.getTokenAt(c),h=H(c.line,0>d?g.start:g.end);if(!(f&&d>0&&g.end==c.ch)&&/\w/.test(g.string))return h;var i=a.findPosH(h,d,"char");if(b(h,i))return c;c=i}}function o(a,b){var c=a.state.emacsPrefix;return c?(w(a),"-"==c?-1:Number(c)):b?null:1}function p(a){var b="string"==typeof a?function(b){b.execCommand(a)}:a;return function(a){var c=o(a);b(a);for(var d=1;c>d;++d)b(a)}}function q(a,c,d,e){var f=o(a);0>f&&(e=-e,f=-f);for(var g=0;f>g;++g){var h=d(a,c,e);if(b(h,c))break;c=h}return c}function r(a,b){var c=function(c){c.extendSelection(q(c,c.getCursor(),a,b))};return c.motion=!0,c}function s(a,b,c){for(var d,e=a.listSelections(),f=e.length;f--;)d=e[f].head,g(a,d,q(a,d,b,c),!0)}function t(a){if(a.somethingSelected()){for(var b,c=a.listSelections(),d=c.length;d--;)b=c[d],g(a,b.anchor,b.head);return!0}}function u(a,b){return a.state.emacsPrefix?void("-"!=b&&(a.state.emacsPrefix+=b)):(a.state.emacsPrefix=b,a.on("keyHandled",v),void a.on("inputRead",x))}function v(a,b){a.state.emacsPrefixMap||K.hasOwnProperty(b)||w(a)}function w(a){a.state.emacsPrefix=null,a.off("keyHandled",v),a.off("inputRead",x)}function x(a,b){var c=o(a);if(c>1&&"+input"==b.origin){for(var d=b.text.join("\n"),e="",f=1;c>f;++f)e+=d;a.replaceSelection(e)}}function y(a){a.state.emacsPrefixMap=!0,a.addKeyMap(M),a.on("keyHandled",z),a.on("inputRead",z)}function z(a,b){("string"!=typeof b||!/^\d$/.test(b)&&"Ctrl-U"!=b)&&(a.removeKeyMap(M),a.state.emacsPrefixMap=!1,a.off("keyHandled",z),a.off("inputRead",z))}function A(a){a.setCursor(a.getCursor()),a.setExtending(!a.getExtending()),a.on("change",function(){a.setExtending(!1)})}function B(a){a.setExtending(!1),a.setCursor(a.getCursor())}function C(a,b,c){a.openDialog?a.openDialog(b+': ',c,{bottom:!0}):c(prompt(b,""))}function D(a,b){var c=a.getCursor(),d=a.findPosH(c,1,"word");a.replaceRange(b(a.getRange(c,d)),c,d),a.setCursor(d)}function E(a){for(var b=a.getCursor(),c=b.line,d=b.ch,e=[];c>=a.firstLine();){for(var f=a.getLine(c),g=null==d?f.length:d;g>0;){var d=f.charAt(--g);if(")"==d)e.push("(");else if("]"==d)e.push("[");else if("}"==d)e.push("{");else if(/[\(\{\[]/.test(d)&&(!e.length||e.pop()!=d))return a.extendSelection(H(c,g))}--c,d=null}}function F(a){a.execCommand("clearSearch"),B(a)}function G(a){M[a]=function(b){u(b,a)},L["Ctrl-"+a]=function(b){u(b,a)},K["Ctrl-"+a]=!0}for(var H=a.Pos,I=[],J=null,K={"Alt-G":!0,"Ctrl-X":!0,"Ctrl-Q":!0,"Ctrl-U":!0},L=a.keyMap.emacs=a.normalizeKeyMap({"Ctrl-W":function(a){g(a,a.getCursor("start"),a.getCursor("end"))},"Ctrl-K":p(function(a){var b=a.getCursor(),c=a.clipPos(H(b.line)),d=a.getRange(b,c);/\S/.test(d)||(d+="\n",c=H(b.line+1,0)),g(a,b,c,!0,d)}),"Alt-W":function(a){c(a.getSelection()),B(a)},"Ctrl-Y":function(a){var b=a.getCursor();a.replaceRange(e(o(a)),b,b,"paste"),a.setSelection(b,a.getCursor())},"Alt-Y":function(a){a.replaceSelection(f(),"around","paste")},"Ctrl-Space":A,"Ctrl-Shift-2":A,"Ctrl-F":r(h,1),"Ctrl-B":r(h,-1),Right:r(h,1),Left:r(h,-1),"Ctrl-D":function(a){s(a,h,1)},Delete:function(a){t(a)||s(a,h,1)},"Ctrl-H":function(a){s(a,h,-1)},Backspace:function(a){t(a)||s(a,h,-1)},"Alt-F":r(i,1),"Alt-B":r(i,-1),"Alt-D":function(a){s(a,i,1)},"Alt-Backspace":function(a){s(a,i,-1)},"Ctrl-N":r(j,1),"Ctrl-P":r(j,-1),Down:r(j,1),Up:r(j,-1),"Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd",End:"goLineEnd",Home:"goLineStart","Alt-V":r(k,-1),"Ctrl-V":r(k,1),PageUp:r(k,-1),PageDown:r(k,1),"Ctrl-Up":r(l,-1),"Ctrl-Down":r(l,1),"Alt-A":r(m,-1),"Alt-E":r(m,1),"Alt-K":function(a){s(a,m,1)},"Ctrl-Alt-K":function(a){s(a,n,1)},"Ctrl-Alt-Backspace":function(a){s(a,n,-1)},"Ctrl-Alt-F":r(n,1),"Ctrl-Alt-B":r(n,-1),"Shift-Ctrl-Alt-2":function(a){var b=a.getCursor();a.setSelection(q(a,b,n,1),b)},"Ctrl-Alt-T":function(a){var b=n(a,a.getCursor(),-1),c=n(a,b,1),d=n(a,c,1),e=n(a,d,-1);a.replaceRange(a.getRange(e,d)+a.getRange(c,e)+a.getRange(b,c),b,d)},"Ctrl-Alt-U":p(E),"Alt-Space":function(a){for(var b=a.getCursor(),c=b.ch,d=b.ch,e=a.getLine(b.line);c&&/\s/.test(e.charAt(c-1));)--c;for(;d0?a.setCursor(b-1):void C(a,"Goto line",function(b){var c;b&&!isNaN(c=Number(b))&&c==c|0&&c>0&&a.setCursor(c-1)})},"Ctrl-X Tab":function(a){a.indentSelection(o(a,!0)||a.getOption("indentUnit"))},"Ctrl-X Ctrl-X":function(a){a.setSelection(a.getCursor("head"),a.getCursor("anchor"))},"Ctrl-X Ctrl-S":"save","Ctrl-X Ctrl-W":"save","Ctrl-X S":"saveAll","Ctrl-X F":"open","Ctrl-X U":p("undo"),"Ctrl-X K":"close","Ctrl-X Delete":function(a){g(a,a.getCursor(),m(a,a.getCursor(),1),!0)},"Ctrl-X H":"selectAll","Ctrl-Q Tab":p("insertTab"),"Ctrl-U":y}),M={"Ctrl-G":w},N=0;10>N;++N)G(String(N));G("-")});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../lib/codemirror")):"function"==typeof define&&define.amd?define(["../lib/codemirror"],a):a(CodeMirror)}(function(a){"use strict";function b(a,b){return a.line==b.line&&a.ch==b.ch}function c(a){I.push(a),I.length>50&&I.shift()}function d(a){return I.length?void(I[I.length-1]+=a):c(a)}function e(a){return I[I.length-(a?Math.min(a,1):1)]||""}function f(){return I.length>1&&I.pop(),e()}function g(a,e,f,g,h){null==h&&(h=a.getRange(e,f)),g&&J&&J.cm==a&&b(e,J.pos)&&a.isClean(J.gen)?d(h):c(h),a.replaceRange("",e,f,"+delete"),J=g?{cm:a,pos:e,gen:a.changeGeneration()}:null}function h(a,b,c){return a.findPosH(b,c,"char",!0)}function i(a,b,c){return a.findPosH(b,c,"word",!0)}function j(a,b,c){return a.findPosV(b,c,"line",a.doc.sel.goalColumn)}function k(a,b,c){return a.findPosV(b,c,"page",a.doc.sel.goalColumn)}function l(a,b,c){for(var d=b.line,e=a.getLine(d),f=/\S/.test(0>c?e.slice(0,b.ch):e.slice(b.ch)),g=a.firstLine(),h=a.lastLine();;){if(d+=c,g>d||d>h)return a.clipPos(H(d-c,0>c?0:null));e=a.getLine(d);var i=/\S/.test(e);if(i)f=!0;else if(f)return H(d,0)}}function m(a,b,c){for(var d=b.line,e=b.ch,f=a.getLine(b.line),g=!1;;){var h=f.charAt(e+(0>c?-1:0));if(h){if(g&&/[!?.]/.test(h))return H(d,e+(c>0?1:0));g||(g=/\w/.test(h)),e+=c}else{if(d==(0>c?a.firstLine():a.lastLine()))return H(d,e);if(f=a.getLine(d+c),!/\S/.test(f))return H(d,e);d+=c,e=0>c?f.length:0}}}function n(a,c,d){var e;if(a.findMatchingBracket&&(e=a.findMatchingBracket(c,!0))&&e.match&&(e.forward?1:-1)==d)return d>0?H(e.to.line,e.to.ch+1):e.to;for(var f=!0;;f=!1){var g=a.getTokenAt(c),h=H(c.line,0>d?g.start:g.end);if(!(f&&d>0&&g.end==c.ch)&&/\w/.test(g.string))return h;var i=a.findPosH(h,d,"char");if(b(h,i))return c;c=i}}function o(a,b){var c=a.state.emacsPrefix;return c?(w(a),"-"==c?-1:Number(c)):b?null:1}function p(a){var b="string"==typeof a?function(b){b.execCommand(a)}:a;return function(a){var c=o(a);b(a);for(var d=1;c>d;++d)b(a)}}function q(a,c,d,e){var f=o(a);0>f&&(e=-e,f=-f);for(var g=0;f>g;++g){var h=d(a,c,e);if(b(h,c))break;c=h}return c}function r(a,b){var c=function(c){c.extendSelection(q(c,c.getCursor(),a,b))};return c.motion=!0,c}function s(a,b,c){for(var d,e=a.listSelections(),f=e.length;f--;)d=e[f].head,g(a,d,q(a,d,b,c),!0)}function t(a){if(a.somethingSelected()){for(var b,c=a.listSelections(),d=c.length;d--;)b=c[d],g(a,b.anchor,b.head);return!0}}function u(a,b){return a.state.emacsPrefix?void("-"!=b&&(a.state.emacsPrefix+=b)):(a.state.emacsPrefix=b,a.on("keyHandled",v),void a.on("inputRead",x))}function v(a,b){a.state.emacsPrefixMap||K.hasOwnProperty(b)||w(a)}function w(a){a.state.emacsPrefix=null,a.off("keyHandled",v),a.off("inputRead",x)}function x(a,b){var c=o(a);if(c>1&&"+input"==b.origin){for(var d=b.text.join("\n"),e="",f=1;c>f;++f)e+=d;a.replaceSelection(e)}}function y(a){a.state.emacsPrefixMap=!0,a.addKeyMap(M),a.on("keyHandled",z),a.on("inputRead",z)}function z(a,b){("string"!=typeof b||!/^\d$/.test(b)&&"Ctrl-U"!=b)&&(a.removeKeyMap(M),a.state.emacsPrefixMap=!1,a.off("keyHandled",z),a.off("inputRead",z))}function A(a){a.setCursor(a.getCursor()),a.setExtending(!a.getExtending()),a.on("change",function(){a.setExtending(!1)})}function B(a){a.setExtending(!1),a.setCursor(a.getCursor())}function C(a,b,c){a.openDialog?a.openDialog(b+': ',c,{bottom:!0}):c(prompt(b,""))}function D(a,b){var c=a.getCursor(),d=a.findPosH(c,1,"word");a.replaceRange(b(a.getRange(c,d)),c,d),a.setCursor(d)}function E(a){for(var b=a.getCursor(),c=b.line,d=b.ch,e=[];c>=a.firstLine();){for(var f=a.getLine(c),g=null==d?f.length:d;g>0;){var d=f.charAt(--g);if(")"==d)e.push("(");else if("]"==d)e.push("[");else if("}"==d)e.push("{");else if(/[\(\{\[]/.test(d)&&(!e.length||e.pop()!=d))return a.extendSelection(H(c,g))}--c,d=null}}function F(a){a.execCommand("clearSearch"),B(a)}function G(a){M[a]=function(b){u(b,a)},L["Ctrl-"+a]=function(b){u(b,a)},K["Ctrl-"+a]=!0}for(var H=a.Pos,I=[],J=null,K={"Alt-G":!0,"Ctrl-X":!0,"Ctrl-Q":!0,"Ctrl-U":!0},L=a.keyMap.emacs=a.normalizeKeyMap({"Ctrl-W":function(a){g(a,a.getCursor("start"),a.getCursor("end"))},"Ctrl-K":p(function(a){var b=a.getCursor(),c=a.clipPos(H(b.line)),d=a.getRange(b,c);/\S/.test(d)||(d+="\n",c=H(b.line+1,0)),g(a,b,c,!0,d)}),"Alt-W":function(a){c(a.getSelection()),B(a)},"Ctrl-Y":function(a){var b=a.getCursor();a.replaceRange(e(o(a)),b,b,"paste"),a.setSelection(b,a.getCursor())},"Alt-Y":function(a){a.replaceSelection(f(),"around","paste")},"Ctrl-Space":A,"Ctrl-Shift-2":A,"Ctrl-F":r(h,1),"Ctrl-B":r(h,-1),Right:r(h,1),Left:r(h,-1),"Ctrl-D":function(a){s(a,h,1)},Delete:function(a){t(a)||s(a,h,1)},"Ctrl-H":function(a){s(a,h,-1)},Backspace:function(a){t(a)||s(a,h,-1)},"Alt-F":r(i,1),"Alt-B":r(i,-1),"Alt-D":function(a){s(a,i,1)},"Alt-Backspace":function(a){s(a,i,-1)},"Ctrl-N":r(j,1),"Ctrl-P":r(j,-1),Down:r(j,1),Up:r(j,-1),"Ctrl-A":"goLineStart","Ctrl-E":"goLineEnd",End:"goLineEnd",Home:"goLineStart","Alt-V":r(k,-1),"Ctrl-V":r(k,1),PageUp:r(k,-1),PageDown:r(k,1),"Ctrl-Up":r(l,-1),"Ctrl-Down":r(l,1),"Alt-A":r(m,-1),"Alt-E":r(m,1),"Alt-K":function(a){s(a,m,1)},"Ctrl-Alt-K":function(a){s(a,n,1)},"Ctrl-Alt-Backspace":function(a){s(a,n,-1)},"Ctrl-Alt-F":r(n,1),"Ctrl-Alt-B":r(n,-1),"Shift-Ctrl-Alt-2":function(a){var b=a.getCursor();a.setSelection(q(a,b,n,1),b)},"Ctrl-Alt-T":function(a){var b=n(a,a.getCursor(),-1),c=n(a,b,1),d=n(a,c,1),e=n(a,d,-1);a.replaceRange(a.getRange(e,d)+a.getRange(c,e)+a.getRange(b,c),b,d)},"Ctrl-Alt-U":p(E),"Alt-Space":function(a){for(var b=a.getCursor(),c=b.ch,d=b.ch,e=a.getLine(b.line);c&&/\s/.test(e.charAt(c-1));)--c;for(;d0?a.setCursor(b-1):void C(a,"Goto line",function(b){var c;b&&!isNaN(c=Number(b))&&c==(0|c)&&c>0&&a.setCursor(c-1)})},"Ctrl-X Tab":function(a){a.indentSelection(o(a,!0)||a.getOption("indentUnit"))},"Ctrl-X Ctrl-X":function(a){a.setSelection(a.getCursor("head"),a.getCursor("anchor"))},"Ctrl-X Ctrl-S":"save","Ctrl-X Ctrl-W":"save","Ctrl-X S":"saveAll","Ctrl-X F":"open","Ctrl-X U":p("undo"),"Ctrl-X K":"close","Ctrl-X Delete":function(a){g(a,a.getCursor(),m(a,a.getCursor(),1),!0)},"Ctrl-X H":"selectAll","Ctrl-Q Tab":p("insertTab"),"Ctrl-U":y}),M={"Ctrl-G":w},N=0;10>N;++N)G(String(N));G("-")});
\ No newline at end of file
diff --git a/media/editors/codemirror/keymap/sublime.js b/media/editors/codemirror/keymap/sublime.js
index 441456f58c65b..1d9a9d8ef640b 100644
--- a/media/editors/codemirror/keymap/sublime.js
+++ b/media/editors/codemirror/keymap/sublime.js
@@ -55,7 +55,9 @@
cmds[map["Alt-Left"] = "goSubwordLeft"] = function(cm) { moveSubword(cm, -1); };
cmds[map["Alt-Right"] = "goSubwordRight"] = function(cm) { moveSubword(cm, 1); };
- cmds[map[ctrl + "Up"] = "scrollLineUp"] = function(cm) {
+ var scrollLineCombo = mac ? "Ctrl-Alt-" : "Ctrl-";
+
+ cmds[map[scrollLineCombo + "Up"] = "scrollLineUp"] = function(cm) {
var info = cm.getScrollInfo();
if (!cm.somethingSelected()) {
var visibleBottomLine = cm.lineAtHeight(info.top + info.clientHeight, "local");
@@ -64,7 +66,7 @@
}
cm.scrollTo(null, info.top - cm.defaultTextHeight());
};
- cmds[map[ctrl + "Down"] = "scrollLineDown"] = function(cm) {
+ cmds[map[scrollLineCombo + "Down"] = "scrollLineDown"] = function(cm) {
var info = cm.getScrollInfo();
if (!cm.somethingSelected()) {
var visibleTopLine = cm.lineAtHeight(info.top, "local")+1;
diff --git a/media/editors/codemirror/keymap/sublime.min.js b/media/editors/codemirror/keymap/sublime.min.js
index 27dc0d1fcdaf2..240aed017fc3f 100644
--- a/media/editors/codemirror/keymap/sublime.min.js
+++ b/media/editors/codemirror/keymap/sublime.min.js
@@ -1 +1 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../lib/codemirror"),require("../addon/search/searchcursor"),require("../addon/edit/matchbrackets")):"function"==typeof define&&define.amd?define(["../lib/codemirror","../addon/search/searchcursor","../addon/edit/matchbrackets"],a):a(CodeMirror)}(function(a){"use strict";function b(b,c,d){if(0>d&&0==c.ch)return b.clipPos(m(c.line-1));var e=b.getLine(c.line);if(d>0&&c.ch>=e.length)return b.clipPos(m(c.line+1,0));for(var f,g="start",h=c.ch,i=0>d?0:e.length,j=0;h!=i;h+=d,j++){var k=e.charAt(0>d?h-1:h),l="_"!=k&&a.isWordChar(k)?"w":"o";if("w"==l&&k.toUpperCase()==k&&(l="W"),"start"==g)"o"!=l&&(g="in",f=l);else if("in"==g&&f!=l){if("w"==f&&"W"==l&&0>d&&h--,"W"==f&&"w"==l&&d>0){f="w";continue}break}}return m(c.line,h)}function c(a,c){a.extendSelectionsBy(function(d){return a.display.shift||a.doc.extend||d.empty()?b(a.doc,d.head,c):0>c?d.from():d.to()})}function d(a,b){a.operation(function(){for(var c=a.listSelections().length,d=[],e=-1,f=0;c>f;f++){var g=a.listSelections()[f].head;if(!(g.line<=e)){var h=m(g.line+(b?0:1),0);a.replaceRange("\n",h,null,"+insertLine"),a.indentLine(h.line,null,!0),d.push({head:h,anchor:h}),e=g.line+1}}a.setSelections(d)})}function e(b,c){for(var d=c.ch,e=d,f=b.getLine(c.line);d&&a.isWordChar(f.charAt(d-1));)--d;for(;ea?-1:a==b?0:1}),a.replaceRange(k,i,j),c&&d.push({anchor:i,head:j})}c&&a.setSelections(d,0)})}function h(b,c){b.operation(function(){for(var d=b.listSelections(),f=[],g=[],h=0;h=0;h--){var i=d[f[h]];if(!(j&&a.cmpPos(i.head,j)>0)){var k=e(b,i.head);j=k.from,b.replaceRange(c(k.word),k.from,k.to)}}})}function i(b){var c=b.getCursor("from"),d=b.getCursor("to");if(0==a.cmpPos(c,d)){var f=e(b,c);if(!f.word)return;c=f.from,d=f.to}return{from:c,to:d,query:b.getRange(c,d),word:f}}function j(a,b){var c=i(a);if(c){var d=c.query,e=a.getSearchCursor(d,b?c.to:c.from);(b?e.findNext():e.findPrevious())?a.setSelection(e.from(),e.to()):(e=a.getSearchCursor(d,b?m(a.firstLine(),0):a.clipPos(m(a.lastLine()))),(b?e.findNext():e.findPrevious())?a.setSelection(e.from(),e.to()):c.word&&a.setSelection(c.from,c.to))}}var k=a.keyMap.sublime={fallthrough:"default"},l=a.commands,m=a.Pos,n=a.keyMap["default"]==a.keyMap.macDefault,o=n?"Cmd-":"Ctrl-";l[k["Alt-Left"]="goSubwordLeft"]=function(a){c(a,-1)},l[k["Alt-Right"]="goSubwordRight"]=function(a){c(a,1)},l[k[o+"Up"]="scrollLineUp"]=function(a){var b=a.getScrollInfo();if(!a.somethingSelected()){var c=a.lineAtHeight(b.top+b.clientHeight,"local");a.getCursor().line>=c&&a.execCommand("goLineUp")}a.scrollTo(null,b.top-a.defaultTextHeight())},l[k[o+"Down"]="scrollLineDown"]=function(a){var b=a.getScrollInfo();if(!a.somethingSelected()){var c=a.lineAtHeight(b.top,"local")+1;a.getCursor().line<=c&&a.execCommand("goLineDown")}a.scrollTo(null,b.top+a.defaultTextHeight())},l[k["Shift-"+o+"L"]="splitSelectionByLine"]=function(a){for(var b=a.listSelections(),c=[],d=0;de.line&&g==f.line&&0==f.ch||c.push({anchor:g==e.line?e:m(g,0),head:g==f.line?f:m(g)});a.setSelections(c,0)},k["Shift-Tab"]="indentLess",l[k.Esc="singleSelectionTop"]=function(a){var b=a.listSelections()[0];a.setSelection(b.anchor,b.head,{scroll:!1})},l[k[o+"L"]="selectLine"]=function(a){for(var b=a.listSelections(),c=[],d=0;dd?c.push(h,i):c.length&&(c[c.length-1]=i),d=i}a.operation(function(){for(var b=0;ba.lastLine()?a.replaceRange("\n"+g,m(a.lastLine()),null,"+swapLine"):a.replaceRange(g+"\n",m(f,0),null,"+swapLine")}a.setSelections(e),a.scrollIntoView()})},l[k[q+"Down"]="swapLineDown"]=function(a){for(var b=a.listSelections(),c=[],d=a.lastLine()+1,e=b.length-1;e>=0;e--){var f=b[e],g=f.to().line+1,h=f.from().line;0!=f.to().ch||f.empty()||g--,d>g?c.push(g,h):c.length&&(c[c.length-1]=h),d=h}a.operation(function(){for(var b=c.length-2;b>=0;b-=2){var d=c[b],e=c[b+1],f=a.getLine(d);d==a.lastLine()?a.replaceRange("",m(d-1),m(d),"+swapLine"):a.replaceRange("",m(d,0),m(d+1,0),"+swapLine"),a.replaceRange(f+"\n",m(e,0),null,"+swapLine")}a.scrollIntoView()})},k[o+"/"]="toggleComment",l[k[o+"J"]="joinLines"]=function(a){for(var b=a.listSelections(),c=[],d=0;dc;c++){var d=a.listSelections()[c];d.empty()?a.replaceRange(a.getLine(d.head.line)+"\n",m(d.head.line,0)):a.replaceRange(a.getRange(d.from(),d.to()),d.from())}a.scrollIntoView()})},k[o+"T"]="transposeChars",l[k.F9="sortLines"]=function(a){g(a,!0)},l[k[o+"F9"]="sortLinesInsensitive"]=function(a){g(a,!1)},l[k.F2="nextBookmark"]=function(a){var b=a.state.sublimeBookmarks;if(b)for(;b.length;){var c=b.shift(),d=c.find();if(d)return b.push(c),a.setSelection(d.from,d.to)}},l[k["Shift-F2"]="prevBookmark"]=function(a){var b=a.state.sublimeBookmarks;if(b)for(;b.length;){b.unshift(b.pop());var c=b[b.length-1].find();if(c)return a.setSelection(c.from,c.to);b.pop()}},l[k[o+"F2"]="toggleBookmark"]=function(a){for(var b=a.listSelections(),c=a.state.sublimeBookmarks||(a.state.sublimeBookmarks=[]),d=0;d=0;c--)a.replaceRange("",b[c].anchor,m(b[c].to().line),"+delete");a.scrollIntoView()})},l[k[r+o+"U"]="upcaseAtCursor"]=function(a){h(a,function(a){return a.toUpperCase()})},l[k[r+o+"L"]="downcaseAtCursor"]=function(a){h(a,function(a){return a.toLowerCase()})},l[k[r+o+"Space"]="setSublimeMark"]=function(a){a.state.sublimeMark&&a.state.sublimeMark.clear(),a.state.sublimeMark=a.setBookmark(a.getCursor())},l[k[r+o+"A"]="selectToSublimeMark"]=function(a){var b=a.state.sublimeMark&&a.state.sublimeMark.find();b&&a.setSelection(a.getCursor(),b)},l[k[r+o+"W"]="deleteToSublimeMark"]=function(b){var c=b.state.sublimeMark&&b.state.sublimeMark.find();if(c){var d=b.getCursor(),e=c;if(a.cmpPos(d,e)>0){var f=e;e=d,d=f}b.state.sublimeKilled=b.getRange(d,e),b.replaceRange("",d,e)}},l[k[r+o+"X"]="swapWithSublimeMark"]=function(a){var b=a.state.sublimeMark&&a.state.sublimeMark.find();b&&(a.state.sublimeMark.clear(),a.state.sublimeMark=a.setBookmark(a.getCursor()),a.setCursor(b))},l[k[r+o+"Y"]="sublimeYank"]=function(a){null!=a.state.sublimeKilled&&a.replaceSelection(a.state.sublimeKilled,null,"paste")},k[r+o+"G"]="clearBookmarks",l[k[r+o+"C"]="showInCenter"]=function(a){var b=a.cursorCoords(null,"local");a.scrollTo(null,(b.top+b.bottom)/2-a.getScrollInfo().clientHeight/2)},l[k["Shift-Alt-Up"]="selectLinesUpward"]=function(a){a.operation(function(){for(var b=a.listSelections(),c=0;ca.firstLine()&&a.addSelection(m(d.head.line-1,d.head.ch))}})},l[k["Shift-Alt-Down"]="selectLinesDownward"]=function(a){a.operation(function(){for(var b=a.listSelections(),c=0;cd&&0==c.ch)return b.clipPos(m(c.line-1));var e=b.getLine(c.line);if(d>0&&c.ch>=e.length)return b.clipPos(m(c.line+1,0));for(var f,g="start",h=c.ch,i=0>d?0:e.length,j=0;h!=i;h+=d,j++){var k=e.charAt(0>d?h-1:h),l="_"!=k&&a.isWordChar(k)?"w":"o";if("w"==l&&k.toUpperCase()==k&&(l="W"),"start"==g)"o"!=l&&(g="in",f=l);else if("in"==g&&f!=l){if("w"==f&&"W"==l&&0>d&&h--,"W"==f&&"w"==l&&d>0){f="w";continue}break}}return m(c.line,h)}function c(a,c){a.extendSelectionsBy(function(d){return a.display.shift||a.doc.extend||d.empty()?b(a.doc,d.head,c):0>c?d.from():d.to()})}function d(a,b){a.operation(function(){for(var c=a.listSelections().length,d=[],e=-1,f=0;c>f;f++){var g=a.listSelections()[f].head;if(!(g.line<=e)){var h=m(g.line+(b?0:1),0);a.replaceRange("\n",h,null,"+insertLine"),a.indentLine(h.line,null,!0),d.push({head:h,anchor:h}),e=g.line+1}}a.setSelections(d)})}function e(b,c){for(var d=c.ch,e=d,f=b.getLine(c.line);d&&a.isWordChar(f.charAt(d-1));)--d;for(;ea?-1:a==b?0:1}),a.replaceRange(k,i,j),c&&d.push({anchor:i,head:j})}c&&a.setSelections(d,0)})}function h(b,c){b.operation(function(){for(var d=b.listSelections(),f=[],g=[],h=0;h=0;h--){var i=d[f[h]];if(!(j&&a.cmpPos(i.head,j)>0)){var k=e(b,i.head);j=k.from,b.replaceRange(c(k.word),k.from,k.to)}}})}function i(b){var c=b.getCursor("from"),d=b.getCursor("to");if(0==a.cmpPos(c,d)){var f=e(b,c);if(!f.word)return;c=f.from,d=f.to}return{from:c,to:d,query:b.getRange(c,d),word:f}}function j(a,b){var c=i(a);if(c){var d=c.query,e=a.getSearchCursor(d,b?c.to:c.from);(b?e.findNext():e.findPrevious())?a.setSelection(e.from(),e.to()):(e=a.getSearchCursor(d,b?m(a.firstLine(),0):a.clipPos(m(a.lastLine()))),(b?e.findNext():e.findPrevious())?a.setSelection(e.from(),e.to()):c.word&&a.setSelection(c.from,c.to))}}var k=a.keyMap.sublime={fallthrough:"default"},l=a.commands,m=a.Pos,n=a.keyMap["default"]==a.keyMap.macDefault,o=n?"Cmd-":"Ctrl-";l[k["Alt-Left"]="goSubwordLeft"]=function(a){c(a,-1)},l[k["Alt-Right"]="goSubwordRight"]=function(a){c(a,1)};var p=n?"Ctrl-Alt-":"Ctrl-";l[k[p+"Up"]="scrollLineUp"]=function(a){var b=a.getScrollInfo();if(!a.somethingSelected()){var c=a.lineAtHeight(b.top+b.clientHeight,"local");a.getCursor().line>=c&&a.execCommand("goLineUp")}a.scrollTo(null,b.top-a.defaultTextHeight())},l[k[p+"Down"]="scrollLineDown"]=function(a){var b=a.getScrollInfo();if(!a.somethingSelected()){var c=a.lineAtHeight(b.top,"local")+1;a.getCursor().line<=c&&a.execCommand("goLineDown")}a.scrollTo(null,b.top+a.defaultTextHeight())},l[k["Shift-"+o+"L"]="splitSelectionByLine"]=function(a){for(var b=a.listSelections(),c=[],d=0;de.line&&g==f.line&&0==f.ch||c.push({anchor:g==e.line?e:m(g,0),head:g==f.line?f:m(g)});a.setSelections(c,0)},k["Shift-Tab"]="indentLess",l[k.Esc="singleSelectionTop"]=function(a){var b=a.listSelections()[0];a.setSelection(b.anchor,b.head,{scroll:!1})},l[k[o+"L"]="selectLine"]=function(a){for(var b=a.listSelections(),c=[],d=0;dd?c.push(h,i):c.length&&(c[c.length-1]=i),d=i}a.operation(function(){for(var b=0;ba.lastLine()?a.replaceRange("\n"+g,m(a.lastLine()),null,"+swapLine"):a.replaceRange(g+"\n",m(f,0),null,"+swapLine")}a.setSelections(e),a.scrollIntoView()})},l[k[r+"Down"]="swapLineDown"]=function(a){for(var b=a.listSelections(),c=[],d=a.lastLine()+1,e=b.length-1;e>=0;e--){var f=b[e],g=f.to().line+1,h=f.from().line;0!=f.to().ch||f.empty()||g--,d>g?c.push(g,h):c.length&&(c[c.length-1]=h),d=h}a.operation(function(){for(var b=c.length-2;b>=0;b-=2){var d=c[b],e=c[b+1],f=a.getLine(d);d==a.lastLine()?a.replaceRange("",m(d-1),m(d),"+swapLine"):a.replaceRange("",m(d,0),m(d+1,0),"+swapLine"),a.replaceRange(f+"\n",m(e,0),null,"+swapLine")}a.scrollIntoView()})},k[o+"/"]="toggleComment",l[k[o+"J"]="joinLines"]=function(a){for(var b=a.listSelections(),c=[],d=0;dc;c++){var d=a.listSelections()[c];d.empty()?a.replaceRange(a.getLine(d.head.line)+"\n",m(d.head.line,0)):a.replaceRange(a.getRange(d.from(),d.to()),d.from())}a.scrollIntoView()})},k[o+"T"]="transposeChars",l[k.F9="sortLines"]=function(a){g(a,!0)},l[k[o+"F9"]="sortLinesInsensitive"]=function(a){g(a,!1)},l[k.F2="nextBookmark"]=function(a){var b=a.state.sublimeBookmarks;if(b)for(;b.length;){var c=b.shift(),d=c.find();if(d)return b.push(c),a.setSelection(d.from,d.to)}},l[k["Shift-F2"]="prevBookmark"]=function(a){var b=a.state.sublimeBookmarks;if(b)for(;b.length;){b.unshift(b.pop());var c=b[b.length-1].find();if(c)return a.setSelection(c.from,c.to);b.pop()}},l[k[o+"F2"]="toggleBookmark"]=function(a){for(var b=a.listSelections(),c=a.state.sublimeBookmarks||(a.state.sublimeBookmarks=[]),d=0;d=0;c--)a.replaceRange("",b[c].anchor,m(b[c].to().line),"+delete");a.scrollIntoView()})},l[k[s+o+"U"]="upcaseAtCursor"]=function(a){h(a,function(a){return a.toUpperCase()})},l[k[s+o+"L"]="downcaseAtCursor"]=function(a){h(a,function(a){return a.toLowerCase()})},l[k[s+o+"Space"]="setSublimeMark"]=function(a){a.state.sublimeMark&&a.state.sublimeMark.clear(),a.state.sublimeMark=a.setBookmark(a.getCursor())},l[k[s+o+"A"]="selectToSublimeMark"]=function(a){var b=a.state.sublimeMark&&a.state.sublimeMark.find();b&&a.setSelection(a.getCursor(),b)},l[k[s+o+"W"]="deleteToSublimeMark"]=function(b){var c=b.state.sublimeMark&&b.state.sublimeMark.find();if(c){var d=b.getCursor(),e=c;if(a.cmpPos(d,e)>0){var f=e;e=d,d=f}b.state.sublimeKilled=b.getRange(d,e),b.replaceRange("",d,e)}},l[k[s+o+"X"]="swapWithSublimeMark"]=function(a){var b=a.state.sublimeMark&&a.state.sublimeMark.find();b&&(a.state.sublimeMark.clear(),a.state.sublimeMark=a.setBookmark(a.getCursor()),a.setCursor(b))},l[k[s+o+"Y"]="sublimeYank"]=function(a){null!=a.state.sublimeKilled&&a.replaceSelection(a.state.sublimeKilled,null,"paste")},k[s+o+"G"]="clearBookmarks",l[k[s+o+"C"]="showInCenter"]=function(a){var b=a.cursorCoords(null,"local");a.scrollTo(null,(b.top+b.bottom)/2-a.getScrollInfo().clientHeight/2)},l[k["Shift-Alt-Up"]="selectLinesUpward"]=function(a){a.operation(function(){for(var b=a.listSelections(),c=0;ca.firstLine()&&a.addSelection(m(d.head.line-1,d.head.ch))}})},l[k["Shift-Alt-Down"]="selectLinesDownward"]=function(a){a.operation(function(){for(var b=a.listSelections(),c=0;c 1) { return 'Invalid arguments'; }
number = decimal && 'decimal' || hex && 'hex' || octal && 'octal';
}
- if (args.eatSpace() && args.match(/\/.*\//)) { 'patterns not supported'; }
+ if (args.match(/\/.*\//)) { return 'patterns not supported'; }
}
}
var err = parseArgs();
@@ -4726,7 +4747,7 @@
}
function _mapCommand(command) {
- defaultKeymap.push(command);
+ defaultKeymap.unshift(command);
}
function mapCommand(keys, type, name, args, extra) {
@@ -4815,7 +4836,7 @@
if (macroModeState.isPlaying) { return; }
var registerName = macroModeState.latestRegister;
var register = vimGlobalState.registerController.getRegister(registerName);
- if (register) {
+ if (register && register.pushInsertModeChanges) {
register.pushInsertModeChanges(macroModeState.lastInsertModeChanges);
}
}
@@ -4824,7 +4845,7 @@
if (macroModeState.isPlaying) { return; }
var registerName = macroModeState.latestRegister;
var register = vimGlobalState.registerController.getRegister(registerName);
- if (register) {
+ if (register && register.pushSearchQuery) {
register.pushSearchQuery(query);
}
}
diff --git a/media/editors/codemirror/keymap/vim.min.js b/media/editors/codemirror/keymap/vim.min.js
index 17b916028432f..0d063092099ff 100644
--- a/media/editors/codemirror/keymap/vim.min.js
+++ b/media/editors/codemirror/keymap/vim.min.js
@@ -1,3 +1,3 @@
-!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../lib/codemirror"),require("../addon/search/searchcursor"),require("../addon/dialog/dialog"),require("../addon/edit/matchbrackets.js")):"function"==typeof define&&define.amd?define(["../lib/codemirror","../addon/search/searchcursor","../addon/dialog/dialog","../addon/edit/matchbrackets"],a):a(CodeMirror)}(function(a){"use strict";var b=[{keys:"",type:"keyToKey",toKeys:"h"},{keys:"",type:"keyToKey",toKeys:"l"},{keys:"",type:"keyToKey",toKeys:"k"},{keys:"",type:"keyToKey",toKeys:"j"},{keys:"",type:"keyToKey",toKeys:"l"},{keys:"",type:"keyToKey",toKeys:"h",context:"normal"},{keys:"",type:"keyToKey",toKeys:"W"},{keys:"",type:"keyToKey",toKeys:"B",context:"normal"},{keys:"",type:"keyToKey",toKeys:"w"},{keys:"",type:"keyToKey",toKeys:"b",context:"normal"},{keys:"",type:"keyToKey",toKeys:"j"},{keys:"",type:"keyToKey",toKeys:"k"},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:"",context:"insert"},{keys:"",type:"keyToKey",toKeys:"",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"xi",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"dcc",context:"visual"},{keys:"",type:"keyToKey",toKeys:"0"},{keys:"",type:"keyToKey",toKeys:"$"},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r",type:"action",action:"replace",isEdit:!0},{keys:"@",type:"action",action:"replayMacro"},{keys:"q",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0}},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"",type:"action",action:"redo"},{keys:"m",type:"action",action:"setMark"},{keys:'"',type:"action",action:"setRegister"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"a",type:"motion",motion:"textObjectManipulation"},{keys:"i",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],c=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"unmap"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"nohlsearch",shortName:"noh"},{name:"delmarks",shortName:"delm"},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"global",shortName:"g"}],d=a.Pos,e=function(){function e(b){b.setOption("disableInput",!0),b.setOption("showCursorWhenSelecting",!1),a.signal(b,"vim-mode-change",{mode:"normal"}),b.on("cursorActivity",_a),x(b),a.on(b.getInputField(),"paste",k(b))}function f(b){b.setOption("disableInput",!1),b.off("cursorActivity",_a),a.off(b.getInputField(),"paste",k(b)),b.state.vim=null}function g(b,c){this==a.keyMap.vim&&a.rmClass(b.getWrapperElement(),"cm-fat-cursor"),c&&c.attach==h||f(b,!1)}function h(b,c){this==a.keyMap.vim&&a.addClass(b.getWrapperElement(),"cm-fat-cursor"),c&&c.attach==h||e(b)}function i(b,c){if(!c)return void 0;var d=j(b);if(!d)return!1;var e=a.Vim.findKey(c,d);return"function"==typeof e&&a.signal(c,"vim-keypress",d),e}function j(a){if("'"==a.charAt(0))return a.charAt(1);var b=a.split("-");/-$/.test(a)&&b.splice(-2,2,"-");var c=b[b.length-1];if(1==b.length&&1==b[0].length)return!1;if(2==b.length&&"Shift"==b[0]&&1==c.length)return!1;for(var d=!1,e=0;e"):!1}function k(a){var b=a.state.vim;return b.onPasteFn||(b.onPasteFn=function(){b.insertMode||(a.setCursor(K(a.getCursor(),0,1)),zb.enterInsertMode(a,{},b))}),b.onPasteFn}function l(a,b){for(var c=[],d=a;a+b>d;d++)c.push(String.fromCharCode(d));return c}function m(a,b){return b>=a.firstLine()&&b<=a.lastLine()}function n(a){return/^[a-z]$/.test(a)}function o(a){return-1!="()[]{}".indexOf(a)}function p(a){return ib.test(a)}function q(a){return/^[A-Z]$/.test(a)}function r(a){return/^\s*$/.test(a)}function s(a,b){for(var c=0;cd;d++)c.push(a);return c}function G(a,b){yb[a]=b}function H(a,b){zb[a]=b}function I(a,b,c){var e=Math.min(Math.max(a.firstLine(),b.line),a.lastLine()),f=W(a,e)-1;f=c?f+1:f;var g=Math.min(Math.max(0,b.ch),f);return d(e,g)}function J(a){var b={};for(var c in a)a.hasOwnProperty(c)&&(b[c]=a[c]);return b}function K(a,b,c){return"object"==typeof b&&(c=b.ch,b=b.line),d(a.line+b,a.ch+c)}function L(a,b){return{line:b.line-a.line,ch:b.line-a.line}}function M(a,b,c,d){for(var e,f=[],g=[],h=0;h"==b.slice(-11)){var c=b.length-11,d=a.slice(0,c),e=b.slice(0,c);return d==e&&a.length>c?"full":0==e.indexOf(d)?"partial":!1}return a==b?"full":0==b.indexOf(a)?"partial":!1}function O(a){var b=/^.*(<[\w\-]+>)$/.exec(a),c=b?b[1]:a.slice(-1);if(c.length>1)switch(c){case"":c="\n";break;case"":c=" "}return c}function P(a,b,c){return function(){for(var d=0;c>d;d++)b(a)}}function Q(a){return d(a.line,a.ch)}function R(a,b){return a.ch==b.ch&&a.line==b.line}function S(a,b){return a.line2&&(b=T.apply(void 0,Array.prototype.slice.call(arguments,1))),S(a,b)?a:b}function U(a,b){return arguments.length>2&&(b=U.apply(void 0,Array.prototype.slice.call(arguments,1))),S(a,b)?b:a}function V(a,b,c){var d=S(a,b),e=S(b,c);return d&&e}function W(a,b){return a.getLine(b).length}function X(a){return a.trim?a.trim():a.replace(/^\s+|\s+$/g,"")}function Y(a){return a.replace(/([.?*+$\[\]\/\\(){}|\-])/g,"\\$1")}function Z(a,b,c){var e=W(a,b),f=new Array(c-e+1).join(" ");a.setCursor(d(b,e)),a.replaceRange(f,a.getCursor())}function $(a,b){var c=[],e=a.listSelections(),f=Q(a.clipPos(b)),g=!R(b,f),h=a.getCursor("head"),i=aa(e,h),j=R(e[i].head,e[i].anchor),k=e.length-1,l=k-i>i?k:0,m=e[l].anchor,n=Math.min(m.line,f.line),o=Math.max(m.line,f.line),p=m.ch,q=f.ch,r=e[l].head.ch-p,s=q-p;r>0&&0>=s?(p++,g||q--):0>r&&s>=0?(p--,j||q++):0>r&&-1==s&&(p--,q++);for(var t=n;o>=t;t++){var u={anchor:new d(t,p),head:new d(t,q)};c.push(u)}return i=f.line==o?c.length-1:0,a.setSelections(c),b.ch=q,m.ch=p,m}function _(a,b,c){for(var d=[],e=0;c>e;e++){var f=K(b,e,0);d.push({anchor:f,head:f})}a.setSelections(d,0)}function aa(a,b,c){for(var d=0;dj&&(f.line=j),f.ch=W(a,f.line)}return{ranges:[{anchor:g,head:f}],primary:0}}if("block"==c){for(var k=Math.min(g.line,f.line),l=Math.min(g.ch,f.ch),m=Math.max(g.line,f.line),n=Math.max(g.ch,f.ch)+1,o=m-k+1,p=f.line==k?0:o-1,q=[],r=0;o>r;r++)q.push({anchor:d(k+r,l),head:d(k+r,n)});return{ranges:q,primary:p}}}function ga(a){var b=a.getCursor("head");return 1==a.getSelection().length&&(b=T(b,a.getCursor("anchor"))),b}function ha(b,c){var d=b.state.vim;c!==!1&&b.setCursor(I(b,d.sel.head)),ca(b,d),d.visualMode=!1,d.visualLine=!1,d.visualBlock=!1,a.signal(b,"vim-mode-change",{mode:"normal"}),d.fakeCursor&&d.fakeCursor.clear()}function ia(a,b,c){var d=a.getRange(b,c);if(/\n\s*$/.test(d)){var e=d.split("\n");e.pop();for(var f,f=e.pop();e.length>0&&f&&r(f);f=e.pop())c.line--,c.ch=0;f?(c.line--,c.ch=W(a,c.line)):c.ch=0}}function ja(a,b,c){b.ch=0,c.ch=0,c.line++}function ka(a){if(!a)return 0;var b=a.search(/\S/);return-1==b?a.length:b}function la(a,b,c,e,f){for(var g=ga(a),h=a.getLine(g.line),i=g.ch,j=f?jb[0]:kb[0];!j(h.charAt(i));)if(i++,i>=h.length)return null;e?j=kb[0]:(j=jb[0],j(h.charAt(i))||(j=jb[1]));for(var k=i,l=i;j(h.charAt(k))&&k=0;)l--;if(l++,b){for(var m=k;/\s/.test(h.charAt(k))&&k0;)l--;l||(l=n)}}return{start:d(g.line,l),end:d(g.line,k)}}function ma(a,b,c){R(b,c)||tb.jumpList.add(a,b,c)}function na(a,b){tb.lastChararacterSearch.increment=a,tb.lastChararacterSearch.forward=b.forward,tb.lastChararacterSearch.selectedCharacter=b.selectedCharacter}function oa(a,b,c,e){var f=Q(a.getCursor()),g=c?1:-1,h=c?a.lineCount():-1,i=f.ch,j=f.line,k=a.getLine(j),l={lineText:k,nextCh:k.charAt(i),lastCh:null,index:i,symb:e,reverseSymb:(c?{")":"(","}":"{"}:{"(":")","{":"}"})[e],forward:c,depth:0,curMoveThrough:!1},m=Ab[e];if(!m)return f;var n=Bb[m].init,o=Bb[m].isComplete;for(n&&n(l);j!==h&&b;){if(l.index+=g,l.nextCh=l.lineText.charAt(l.index),!l.nextCh){if(j+=g,l.lineText=a.getLine(j)||"",g>0)l.index=0;else{var p=l.lineText.length;l.index=p>0?p-1:0}l.nextCh=l.lineText.charAt(l.index)}o(l)&&(f.line=j,f.ch=l.index,b--)}return l.nextCh||l.curMoveThrough?d(j,l.index):f}function pa(a,b,c,d,e){var f=b.line,g=b.ch,h=a.getLine(f),i=c?1:-1,j=d?kb:jb;if(e&&""==h){if(f+=i,h=a.getLine(f),!m(a,f))return null;g=c?0:h.length}for(;;){if(e&&""==h)return{from:0,to:0,line:f};for(var k=i>0?h.length:-1,l=k,n=k;g!=k;){for(var o=!1,p=0;p0?0:h.length}throw new Error("The impossible happened.")}function qa(a,b,c,e,f,g){var h=Q(b),i=[];(e&&!f||!e&&f)&&c++;for(var j=!(e&&f),k=0;c>k;k++){var l=pa(a,b,e,g,j);if(!l){var m=W(a,a.lastLine());i.push(e?{line:a.lastLine(),from:m,to:m}:{line:0,from:0,to:0});break}i.push(l),b=d(l.line,e?l.to-1:l.from)}var n=i.length!=c,o=i[0],p=i.pop();return e&&!f?(n||o.from==h.ch&&o.line==h.line||(p=i.pop()),d(p.line,p.from)):e&&f?d(p.line,p.to-1):!e&&f?(n||o.to==h.ch&&o.line==h.line||(p=i.pop()),d(p.line,p.to)):d(p.line,p.from)}function ra(a,b,c,e){for(var f,g=a.getCursor(),h=g.ch,i=0;b>i;i++){var j=a.getLine(g.line);if(f=ua(h,j,e,c,!0),-1==f)return null;h=f}return d(a.getCursor().line,f)}function sa(a,b){var c=a.getCursor().line;return I(a,d(c,b-1))}function ta(a,b,c,d){s(c,ob)&&(b.marks[c]&&b.marks[c].clear(),b.marks[c]=a.setBookmark(d))}function ua(a,b,c,d,e){var f;return d?(f=b.indexOf(c,a+1),-1==f||e||(f-=1)):(f=b.lastIndexOf(c,a-1),-1==f||e||(f+=1)),f}function va(a,b,c,e,f){function g(b){return!a.getLine(b)}function h(a,b,c){return c?g(a)!=g(a+b):!g(a)&&g(a+b)}var i,j,k=b.line,l=a.firstLine(),m=a.lastLine(),n=k;if(e){for(;n>=l&&m>=n&&c>0;)h(n,e)&&c--,n+=e;return new d(n,0)}var o=a.state.vim;if(o.visualLine&&h(k,1,!0)){var p=o.sel.anchor;h(p.line,-1,!0)&&(f&&p.line==k||(k+=1))}var q=g(k);for(n=k;m>=n&&c;n++)h(n,1,!0)&&(f&&g(n)==q||c--);for(j=new d(n,0),n>m&&!q?q=!0:f=!1,n=k;n>l&&(f&&g(n)!=q&&n!=k||!h(n,-1,!0));n--);return i=new d(n,0),{start:i,end:j}}function wa(a,b,c,e){var f,g,h=b,i={"(":/[()]/,")":/[()]/,"[":/[[\]]/,"]":/[[\]]/,"{":/[{}]/,"}":/[{}]/}[c],j={"(":"(",")":"(","[":"[","]":"[","{":"{","}":"{"}[c],k=a.getLine(h.line).charAt(h.ch),l=k===j?1:0;if(f=a.scanForBracket(d(h.line,h.ch+l),-1,null,{bracketRegex:i}),g=a.scanForBracket(d(h.line,h.ch+l),1,null,{bracketRegex:i}),!f||!g)return{start:h,end:h};if(f=f.pos,g=g.pos,f.line==g.line&&f.ch>g.ch||f.line>g.line){var m=f;f=g,g=m}return e?g.ch+=1:f.ch+=1,{start:f,end:g}}function xa(a,b,c,e){var f,g,h,i,j=Q(b),k=a.getLine(j.line),l=k.split(""),m=l.indexOf(c);if(j.ch-1&&!f;h--)l[h]==c&&(f=h+1);else f=j.ch+1;if(f&&!g)for(h=f,i=l.length;i>h&&!g;h++)l[h]==c&&(g=h);return f&&g?(e&&(--f,++g),{start:d(j.line,f),end:d(j.line,g)}):{start:j,end:j}}function ya(){}function za(a){var b=a.state.vim;return b.searchState_||(b.searchState_=new ya)}function Aa(a,b,c,d,e){a.openDialog?a.openDialog(b,d,{bottom:!0,value:e.value,onKeyDown:e.onKeyDown,onKeyUp:e.onKeyUp,selectValueOnOpen:!1}):d(prompt(c,""))}function Ba(a){var b=Ca(a)||[];if(!b.length)return[];var c=[];if(0===b[0]){for(var d=0;d'+b+"",{bottom:!0,duration:5e3}):alert(b)}function Ia(a,b){var c="";return a&&(c+=''+a+""),c+=' ',b&&(c+='',c+=b,c+=""),c}function Ja(a,b){var c=(b.prefix||"")+" "+(b.desc||""),d=Ia(b.prefix,b.desc);Aa(a,d,c,b.onClose,b)}function Ka(a,b){if(a instanceof RegExp&&b instanceof RegExp){for(var c=["global","multiline","ignoreCase","source"],d=0;dh;h++){var i=g.find(b);if(0==h&&i&&R(g.from(),f)&&(i=g.find(b)),!i&&(g=a.getSearchCursor(c,b?d(a.lastLine()):d(a.firstLine(),0)),!g.find(b)))return}return g.from()})}function Pa(a){var b=za(a);a.removeOverlay(za(a).getOverlay()),b.setOverlay(null),b.getScrollbarAnnotate()&&(b.getScrollbarAnnotate().clear(),b.setScrollbarAnnotate(null))}function Qa(a,b,c){return"number"!=typeof a&&(a=a.line),b instanceof Array?s(a,b):c?a>=b&&c>=a:a==b}function Ra(a){var b=a.getScrollInfo(),c=6,d=10,e=a.coordsChar({left:0,top:c+b.top},"local"),f=b.clientHeight-d+b.top,g=a.coordsChar({left:0,top:f},"local");return{top:e.line,bottom:g.line}}function Sa(b,c,d,e,f,g,h,i,j){function k(){b.operation(function(){for(;!p;)l(),m();n()})}function l(){var a=b.getRange(g.from(),g.to()),c=a.replace(h,i);g.replace(c)}function m(){for(;g.findNext()&&Qa(g.from(),e,f);)if(d||!q||g.from().line!=q.line)return b.scrollIntoView(g.from(),30),b.setSelection(g.from(),g.to()),q=g.from(),void(p=!1);p=!0}function n(a){if(a&&a(),b.focus(),q){b.setCursor(q);var c=b.state.vim;c.exMode=!1,c.lastHPos=c.lastHSPos=q.ch}j&&j()}function o(c,d,e){a.e_stop(c);var f=a.keyName(c);switch(f){case"Y":l(),m();break;case"N":m();break;case"A":var g=j;j=void 0,b.operation(k),j=g;break;case"L":l();case"Q":case"Esc":case"Ctrl-C":case"Ctrl-[":n(e)}return p&&n(e),!0}b.state.vim.exMode=!0;var p=!1,q=g.from();return m(),p?void Ha(b,"No matches for "+h.source):c?void Ja(b,{prefix:"replace with "+i+" (y/n/a/q/l)",onKeyDown:o}):(k(),void(j&&j()))}function Ta(b){var c=b.state.vim,d=tb.macroModeState,e=tb.registerController.getRegister("."),f=d.isPlaying,g=d.lastInsertModeChanges,h=[];if(!f){for(var i=g.inVisualBlock?c.lastSelection.visualBlock.height:1,j=g.changes,h=[],k=0;k1&&(eb(b,c,c.insertModeRepeat-1,!0),c.lastEditInputState.repeatOverride=c.insertModeRepeat),delete c.insertModeRepeat,c.insertMode=!1,b.setCursor(b.getCursor().line,b.getCursor().ch-1),b.setOption("keyMap","vim"),b.setOption("disableInput",!0),b.toggleOverwrite(!1),e.setText(g.changes.join("")),a.signal(b,"vim-mode-change",{mode:"normal"}),d.isRecording&&Ya(d)}function Ua(a){b.push(a)}function Va(a,b,c,d,e){var f={keys:a,type:b};f[b]=c,f[b+"Args"]=d;for(var g in e)f[g]=e[g];Ua(f)}function Wa(b,c,d,e){var f=tb.registerController.getRegister(e);if(":"==e)return f.keyBuffer[0]&&Hb.processCommand(b,f.keyBuffer[0]),void(d.isPlaying=!1);var g=f.keyBuffer,h=0;d.isPlaying=!0,d.replaySearchQueries=f.searchQueries.slice(0);for(var i=0;i|<\w+>|./.exec(l),k=j[0],l=l.substring(j.index+k.length),a.Vim.handleKey(b,k,"macro"),c.insertMode){var m=f.insertModeChanges[h++].changes;tb.macroModeState.lastInsertModeChanges.changes=m,fb(b,m,1),Ta(b)}d.isPlaying=!1}function Xa(a,b){if(!a.isPlaying){var c=a.latestRegister,d=tb.registerController.getRegister(c);d&&d.pushText(b)}}function Ya(a){if(!a.isPlaying){
-var b=a.latestRegister,c=tb.registerController.getRegister(b);c&&c.pushInsertModeChanges(a.lastInsertModeChanges)}}function Za(a,b){if(!a.isPlaying){var c=a.latestRegister,d=tb.registerController.getRegister(c);d&&d.pushSearchQuery(b)}}function $a(a,b){var c=tb.macroModeState,d=c.lastInsertModeChanges;if(!c.isPlaying)for(;b;){if(d.expectCursorActivityForChange=!0,"+input"==b.origin||"paste"==b.origin||void 0===b.origin){var e=b.text.join("\n");d.changes.push(e)}b=b.next}}function _a(a){var b=a.state.vim;if(b.insertMode){var c=tb.macroModeState;if(c.isPlaying)return;var d=c.lastInsertModeChanges;d.expectCursorActivityForChange?d.expectCursorActivityForChange=!1:d.changes=[]}else a.curOp.isVimOp||bb(a,b);b.visualMode&&ab(a)}function ab(a){var b=a.state.vim,c=I(a,Q(b.sel.head)),d=K(c,0,1);b.fakeCursor&&b.fakeCursor.clear(),b.fakeCursor=a.markText(c,d,{className:"cm-animate-fat-cursor"})}function bb(b,c){var d=b.getCursor("anchor"),e=b.getCursor("head");if(c.visualMode&&!b.somethingSelected()?ha(b,!1):c.visualMode||c.insertMode||!b.somethingSelected()||(c.visualMode=!0,c.visualLine=!1,a.signal(b,"vim-mode-change",{mode:"visual"})),c.visualMode){var f=S(e,d)?0:-1,g=S(e,d)?-1:0;e=K(e,0,f),d=K(d,0,g),c.sel={anchor:d,head:e},ta(b,c,"<",T(e,d)),ta(b,c,">",U(e,d))}else c.insertMode||(c.lastHPos=b.getCursor().ch)}function cb(a){this.keyName=a}function db(b){function c(){return e.changes.push(new cb(f)),!0}var d=tb.macroModeState,e=d.lastInsertModeChanges,f=a.keyName(b);f&&(-1!=f.indexOf("Delete")||-1!=f.indexOf("Backspace"))&&a.lookupKey(f,"vim-insert",c)}function eb(a,b,c,d){function e(){h?wb.processAction(a,b,b.lastEditActionCommand):wb.evalInput(a,b)}function f(c){if(g.lastInsertModeChanges.changes.length>0){c=b.lastEditActionCommand?c:1;var d=g.lastInsertModeChanges;fb(a,d.changes,c)}}var g=tb.macroModeState;g.isPlaying=!0;var h=!!b.lastEditActionCommand,i=b.inputState;if(b.inputState=b.lastEditInputState,h&&b.lastEditActionCommand.interlaceInsertRepeat)for(var j=0;c>j;j++)e(),f(1);else d||e(),f(c);b.inputState=i,b.insertMode&&!d&&Ta(a),g.isPlaying=!1}function fb(b,c,d){function e(c){return"string"==typeof c?a.commands[c](b):c(b),!0}var f=b.getCursor("head"),g=tb.macroModeState.lastInsertModeChanges.inVisualBlock;if(g){var h=b.state.vim,i=h.lastSelection,j=L(i.anchor,i.head);_(b,f,j.line+1),d=b.listSelections().length,b.setCursor(f)}for(var k=0;d>k;k++){g&&b.setCursor(K(f,k,0));for(var l=0;l"]),pb=[].concat(lb,mb,nb,["-",'"',".",":","/"]),qb={};t("filetype",void 0,"string",["ft"],function(a,b){if(void 0!==b){if(void 0===a){var c=b.getOption("mode");return"null"==c?"":c}var c=""==a?"null":a;b.setOption("mode",c)}});var rb=function(){function a(a,b,h){function i(b){var e=++d%c,f=g[e];f&&f.clear(),g[e]=a.setBookmark(b)}var j=d%c,k=g[j];if(k){var l=k.find();l&&!R(l,b)&&i(b)}else i(b);i(h),e=d,f=d-c+1,0>f&&(f=0)}function b(a,b){d+=b,d>e?d=e:f>d&&(d=f);var h=g[(c+d)%c];if(h&&!h.find()){var i,j=b>0?1:-1,k=a.getCursor();do if(d+=j,h=g[(c+d)%c],h&&(i=h.find())&&!R(k,i))break;while(e>d&&d>f)}return h}var c=100,d=-1,e=0,f=0,g=new Array(c);return{cachedCursor:void 0,add:a,move:b}},sb=function(a){return a?{changes:a.changes,expectCursorActivityForChange:a.expectCursorActivityForChange}:{changes:[],expectCursorActivityForChange:!1}};w.prototype={exitMacroRecordMode:function(){var a=tb.macroModeState;a.onRecordingDone&&a.onRecordingDone(),a.onRecordingDone=void 0,a.isRecording=!1},enterMacroRecordMode:function(a,b){var c=tb.registerController.getRegister(b);c&&(c.clear(),this.latestRegister=b,a.openDialog&&(this.onRecordingDone=a.openDialog("(recording)["+b+"]",null,{bottom:!0})),this.isRecording=!0)}};var tb,ub,vb={buildKeyMap:function(){},getRegisterController:function(){return tb.registerController},resetVimGlobalState_:y,getVimGlobalState_:function(){return tb},maybeInitVimState_:x,suppressErrorLogging:!1,InsertModeKey:cb,map:function(a,b,c){Hb.map(a,b,c)},setOption:u,getOption:v,defineOption:t,defineEx:function(a,b,c){if(b){if(0!==a.indexOf(b))throw new Error('(Vim.defineEx) "'+b+'" is not a prefix of "'+a+'", command not registered')}else b=a;Gb[a]=c,Hb.commandMap_[b]={name:a,shortName:b,type:"api"}},handleKey:function(a,b,c){var d=this.findKey(a,b,c);return"function"==typeof d?d():void 0},findKey:function(c,d,e){function f(){var a=tb.macroModeState;if(a.isRecording){if("q"==d)return a.exitMacroRecordMode(),A(c),!0;"mapping"!=e&&Xa(a,d)}}function g(){return""==d?(A(c),l.visualMode?ha(c):l.insertMode&&Ta(c),!0):void 0}function h(b){for(var e;b;)e=/<\w+-.+?>|<\w+>|./.exec(b),d=e[0],b=b.substring(e.index+d.length),a.Vim.handleKey(c,d,"mapping")}function i(){if(g())return!0;for(var a=l.inputState.keyBuffer=l.inputState.keyBuffer+d,e=1==d.length,f=wb.matchCommand(a,b,l.inputState,"insert");a.length>1&&"full"!=f.type;){var a=l.inputState.keyBuffer=a.slice(1),h=wb.matchCommand(a,b,l.inputState,"insert");"none"!=h.type&&(f=h)}if("none"==f.type)return A(c),!1;if("partial"==f.type)return ub&&window.clearTimeout(ub),ub=window.setTimeout(function(){l.insertMode&&l.inputState.keyBuffer&&A(c)},v("insertModeEscKeysTimeout")),!e;if(ub&&window.clearTimeout(ub),e){var i=c.getCursor();c.replaceRange("",K(i,0,-(a.length-1)),i,"+input")}return A(c),f.command}function j(){if(f()||g())return!0;var a=l.inputState.keyBuffer=l.inputState.keyBuffer+d;if(/^[1-9]\d*$/.test(a))return!0;var e=/^(\d*)(.*)$/.exec(a);if(!e)return A(c),!1;var h=l.visualMode?"visual":"normal",i=wb.matchCommand(e[2]||e[1],b,l.inputState,h);if("none"==i.type)return A(c),!1;if("partial"==i.type)return!0;l.inputState.keyBuffer="";var e=/^(\d*)(.*)$/.exec(a);return e[1]&&"0"!=e[1]&&l.inputState.pushRepeatDigit(e[1]),i.command}var k,l=x(c);return k=l.insertMode?i():j(),k===!1?void 0:k===!0?function(){}:function(){return c.operation(function(){c.curOp.isVimOp=!0;try{"keyToKey"==k.type?h(k.toKeys):wb.processCommand(c,l,k)}catch(b){throw c.state.vim=void 0,x(c),a.Vim.suppressErrorLogging||console.log(b),b}return!0})}},handleEx:function(a,b){Hb.processCommand(a,b)},defineMotion:E,defineAction:H,defineOperator:G,mapCommand:Va,_mapCommand:Ua,exitVisualMode:ha,exitInsertMode:Ta};z.prototype.pushRepeatDigit=function(a){this.operator?this.motionRepeat=this.motionRepeat.concat(a):this.prefixRepeat=this.prefixRepeat.concat(a)},z.prototype.getRepeat=function(){var a=0;return(this.prefixRepeat.length>0||this.motionRepeat.length>0)&&(a=1,this.prefixRepeat.length>0&&(a*=parseInt(this.prefixRepeat.join(""),10)),this.motionRepeat.length>0&&(a*=parseInt(this.motionRepeat.join(""),10))),a},B.prototype={setText:function(a,b,c){this.keyBuffer=[a||""],this.linewise=!!b,this.blockwise=!!c},pushText:function(a,b){b&&(this.linewise||this.keyBuffer.push("\n"),this.linewise=!0),this.keyBuffer.push(a)},pushInsertModeChanges:function(a){this.insertModeChanges.push(sb(a))},pushSearchQuery:function(a){this.searchQueries.push(a)},clear:function(){this.keyBuffer=[],this.insertModeChanges=[],this.searchQueries=[],this.linewise=!1},toString:function(){return this.keyBuffer.join("")}},C.prototype={pushText:function(a,b,c,d,e){d&&"\n"==c.charAt(0)&&(c=c.slice(1)+"\n"),d&&"\n"!==c.charAt(c.length-1)&&(c+="\n");var f=this.isValidRegister(a)?this.getRegister(a):null;if(!f){switch(b){case"yank":this.registers[0]=new B(c,d,e);break;case"delete":case"change":-1==c.indexOf("\n")?this.registers["-"]=new B(c,d):(this.shiftNumericRegisters_(),this.registers[1]=new B(c,d))}return void this.unnamedRegister.setText(c,d,e)}var g=q(a);g?f.pushText(c,d):f.setText(c,d,e),this.unnamedRegister.setText(f.toString(),d)},getRegister:function(a){return this.isValidRegister(a)?(a=a.toLowerCase(),this.registers[a]||(this.registers[a]=new B),this.registers[a]):this.unnamedRegister},isValidRegister:function(a){return a&&s(a,pb)},shiftNumericRegisters_:function(){for(var a=9;a>=2;a--)this.registers[a]=this.getRegister(""+(a-1))}},D.prototype={nextMatch:function(a,b){var c=this.historyBuffer,d=b?-1:1;null===this.initialPrefix&&(this.initialPrefix=a);for(var e=this.iterator+d;b?e>=0:e=c.length?(this.iterator=c.length,this.initialPrefix):0>e?a:void 0},pushInput:function(a){var b=this.historyBuffer.indexOf(a);b>-1&&this.historyBuffer.splice(b,1),a.length&&this.historyBuffer.push(a)},reset:function(){this.initialPrefix=null,this.iterator=this.historyBuffer.length}};var wb={matchCommand:function(a,b,c,d){var e=M(a,b,d,c);if(!e.full&&!e.partial)return{type:"none"};if(!e.full&&e.partial)return{type:"partial"};for(var f,g=0;g"==f.keys.slice(-11)&&(c.selectedCharacter=O(a)),{type:"full",command:f}},processCommand:function(a,b,c){switch(b.inputState.repeatOverride=c.repeatOverride,c.type){case"motion":this.processMotion(a,b,c);break;case"operator":this.processOperator(a,b,c);break;case"operatorMotion":this.processOperatorMotion(a,b,c);break;case"action":this.processAction(a,b,c);break;case"search":this.processSearch(a,b,c);break;case"ex":case"keyToEx":this.processEx(a,b,c)}},processMotion:function(a,b,c){b.inputState.motion=c.motion,b.inputState.motionArgs=J(c.motionArgs),this.evalInput(a,b)},processOperator:function(a,b,c){var d=b.inputState;if(d.operator){if(d.operator==c.operator)return d.motion="expandToLine",d.motionArgs={linewise:!0},void this.evalInput(a,b);A(a)}d.operator=c.operator,d.operatorArgs=J(c.operatorArgs),b.visualMode&&this.evalInput(a,b)},processOperatorMotion:function(a,b,c){var d=b.visualMode,e=J(c.operatorMotionArgs);e&&d&&e.visualLine&&(b.visualLine=!0),this.processOperator(a,b,c),d||this.processMotion(a,b,c)},processAction:function(a,b,c){var d=b.inputState,e=d.getRepeat(),f=!!e,g=J(c.actionArgs)||{};d.selectedCharacter&&(g.selectedCharacter=d.selectedCharacter),c.operator&&this.processOperator(a,b,c),c.motion&&this.processMotion(a,b,c),(c.motion||c.operator)&&this.evalInput(a,b),g.repeat=e||1,g.repeatIsExplicit=f,g.registerName=d.registerName,A(a),b.lastMotion=null,c.isEdit&&this.recordLastEdit(b,d,c),zb[c.action](a,g,b)},processSearch:function(b,c,d){function e(a,e,f){tb.searchHistoryController.pushInput(a),tb.searchHistoryController.reset();try{La(b,a,e,f)}catch(g){return Ha(b,"Invalid regex: "+a),void A(b)}wb.processMotion(b,c,{type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:d.searchArgs.toJumplist}})}function f(a){b.scrollTo(m.left,m.top),e(a,!0,!0);var c=tb.macroModeState;c.isRecording&&Za(c,a)}function g(c,d,e){var f,g=a.keyName(c);"Up"==g||"Down"==g?(f="Up"==g?!0:!1,d=tb.searchHistoryController.nextMatch(d,f)||"",e(d)):"Left"!=g&&"Right"!=g&&"Ctrl"!=g&&"Alt"!=g&&"Shift"!=g&&tb.searchHistoryController.reset();var h;try{h=La(b,d,!0,!0)}catch(c){}h?b.scrollIntoView(Oa(b,!i,h),30):(Pa(b),b.scrollTo(m.left,m.top))}function h(c,d,e){var f=a.keyName(c);"Esc"==f||"Ctrl-C"==f||"Ctrl-["==f||"Backspace"==f&&""==d?(tb.searchHistoryController.pushInput(d),tb.searchHistoryController.reset(),La(b,l),Pa(b),b.scrollTo(m.left,m.top),a.e_stop(c),A(b),e(),b.focus()):"Ctrl-U"==f&&(a.e_stop(c),e(""))}if(b.getSearchCursor){var i=d.searchArgs.forward,j=d.searchArgs.wholeWordOnly;za(b).setReversed(!i);var k=i?"/":"?",l=za(b).getQuery(),m=b.getScrollInfo();switch(d.searchArgs.querySrc){case"prompt":var n=tb.macroModeState;if(n.isPlaying){var o=n.replaySearchQueries.shift();e(o,!0,!1)}else Ja(b,{onClose:f,prefix:k,desc:Eb,onKeyUp:g,onKeyDown:h});break;case"wordUnderCursor":var p=la(b,!1,!0,!1,!0),q=!0;if(p||(p=la(b,!1,!0,!1,!1),q=!1),!p)return;var o=b.getLine(p.start.line).substring(p.start.ch,p.end.ch);o=q&&j?"\\b"+o+"\\b":Y(o),tb.jumpList.cachedCursor=b.getCursor(),b.setCursor(p.start),e(o,!0,!1)}}},processEx:function(b,c,d){function e(a){tb.exCommandHistoryController.pushInput(a),tb.exCommandHistoryController.reset(),Hb.processCommand(b,a)}function f(c,d,e){var f,g=a.keyName(c);("Esc"==g||"Ctrl-C"==g||"Ctrl-["==g||"Backspace"==g&&""==d)&&(tb.exCommandHistoryController.pushInput(d),tb.exCommandHistoryController.reset(),a.e_stop(c),A(b),e(),b.focus()),"Up"==g||"Down"==g?(f="Up"==g?!0:!1,d=tb.exCommandHistoryController.nextMatch(d,f)||"",e(d)):"Ctrl-U"==g?(a.e_stop(c),e("")):"Left"!=g&&"Right"!=g&&"Ctrl"!=g&&"Alt"!=g&&"Shift"!=g&&tb.exCommandHistoryController.reset()}"keyToEx"==d.type?Hb.processCommand(b,d.exArgs.input):c.visualMode?Ja(b,{onClose:e,prefix:":",value:"'<,'>",onKeyDown:f}):Ja(b,{onClose:e,prefix:":",onKeyDown:f})},evalInput:function(a,b){var c,e,f,g=b.inputState,h=g.motion,i=g.motionArgs||{},j=g.operator,k=g.operatorArgs||{},l=g.registerName,m=b.sel,n=Q(b.visualMode?I(a,m.head):a.getCursor("head")),o=Q(b.visualMode?I(a,m.anchor):a.getCursor("anchor")),p=Q(n),q=Q(o);if(j&&this.recordLastEdit(b,g),f=void 0!==g.repeatOverride?g.repeatOverride:g.getRepeat(),f>0&&i.explicitRepeat?i.repeatIsExplicit=!0:(i.noRepeat||!i.explicitRepeat&&0===f)&&(f=1,i.repeatIsExplicit=!1),g.selectedCharacter&&(i.selectedCharacter=k.selectedCharacter=g.selectedCharacter),i.repeat=f,A(a),h){var r=xb[h](a,n,i,b);if(b.lastMotion=xb[h],!r)return;if(i.toJumplist){var s=tb.jumpList,t=s.cachedCursor;t?(ma(a,t,r),delete s.cachedCursor):ma(a,n,r)}r instanceof Array?(e=r[0],c=r[1]):c=r,c||(c=Q(n)),b.visualMode?(b.visualBlock&&c.ch===1/0||(c=I(a,c,b.visualBlock)),e&&(e=I(a,e,!0)),e=e||q,m.anchor=e,m.head=c,ea(a),ta(a,b,"<",S(e,c)?e:c),ta(a,b,">",S(e,c)?c:e)):j||(c=I(a,c),a.setCursor(c.line,c.ch))}if(j){if(k.lastSel){e=q;var u=k.lastSel,v=Math.abs(u.head.line-u.anchor.line),w=Math.abs(u.head.ch-u.anchor.ch);c=u.visualLine?d(q.line+v,q.ch):u.visualBlock?d(q.line+v,q.ch+w):u.head.line==u.anchor.line?d(q.line,q.ch+w):d(q.line+v,q.ch),b.visualMode=!0,b.visualLine=u.visualLine,b.visualBlock=u.visualBlock,m=b.sel={anchor:e,head:c},ea(a)}else b.visualMode&&(k.lastSel={anchor:Q(m.anchor),head:Q(m.head),visualBlock:b.visualBlock,visualLine:b.visualLine});var x,y,z,B,C;if(b.visualMode){if(x=T(m.head,m.anchor),y=U(m.head,m.anchor),z=b.visualLine||k.linewise,B=b.visualBlock?"block":z?"line":"char",C=fa(a,{anchor:x,head:y},B),z){var D=C.ranges;if("block"==B)for(var E=0;Ei&&f.line==j||i>k&&f.line==k?void 0:(c.toFirstChar&&(g=ka(a.getLine(i)),e.lastHPos=g),e.lastHSPos=a.charCoords(d(i,g),"div").left,d(i,g))},moveByDisplayLines:function(a,b,c,e){var f=b;switch(e.lastMotion){case this.moveByDisplayLines:case this.moveByScroll:case this.moveByLines:case this.moveToColumn:case this.moveToEol:break;default:e.lastHSPos=a.charCoords(f,"div").left}var g=c.repeat,h=a.findPosV(f,c.forward?g:-g,"line",e.lastHSPos);if(h.hitSide)if(c.forward)var i=a.charCoords(h,"div"),j={top:i.top+8,left:e.lastHSPos},h=a.coordsChar(j,"div");else{var k=a.charCoords(d(a.firstLine(),0),"div");k.left=e.lastHSPos,h=a.coordsChar(k,"div")}return e.lastHPos=h.ch,h},moveByPage:function(a,b,c){var d=b,e=c.repeat;return a.findPosV(d,c.forward?e:-e,"page")},moveByParagraph:function(a,b,c){var d=c.forward?1:-1;return va(a,b,c.repeat,d)},moveByScroll:function(a,b,c,d){var e=a.getScrollInfo(),f=null,g=c.repeat;g||(g=e.clientHeight/(2*a.defaultTextHeight()));var h=a.charCoords(b,"local");c.repeat=g;var f=xb.moveByDisplayLines(a,b,c,d);if(!f)return null;var i=a.charCoords(f,"local");return a.scrollTo(null,e.top+i.top-h.top),f},moveByWords:function(a,b,c){return qa(a,b,c.repeat,!!c.forward,!!c.wordEnd,!!c.bigWord)},moveTillCharacter:function(a,b,c){var d=c.repeat,e=ra(a,d,c.forward,c.selectedCharacter),f=c.forward?-1:1;return na(f,c),e?(e.ch+=f,e):null},moveToCharacter:function(a,b,c){var d=c.repeat;return na(0,c),ra(a,d,c.forward,c.selectedCharacter)||b},moveToSymbol:function(a,b,c){var d=c.repeat;return oa(a,d,c.forward,c.selectedCharacter)||b},moveToColumn:function(a,b,c,d){var e=c.repeat;return d.lastHPos=e-1,d.lastHSPos=a.charCoords(b,"div").left,sa(a,e)},moveToEol:function(a,b,c,e){var f=b;e.lastHPos=1/0;var g=d(f.line+c.repeat-1,1/0),h=a.clipPos(g);return h.ch--,e.lastHSPos=a.charCoords(h,"div").left,g},moveToFirstNonWhiteSpaceCharacter:function(a,b){var c=b;return d(c.line,ka(a.getLine(c.line)))},moveToMatchedSymbol:function(a,b){var c,e=b,f=e.line,g=e.ch,h=a.getLine(f);do if(c=h.charAt(g++),c&&o(c)){var i=a.getTokenTypeAt(d(f,g));if("string"!==i&&"comment"!==i)break}while(c);if(c){var j=a.findMatchingBracket(d(f,g));return j.to}return e},moveToStartOfLine:function(a,b){return d(b.line,0)},moveToLineOrEdgeOfDocument:function(a,b,c){var e=c.forward?a.lastLine():a.firstLine();return c.repeatIsExplicit&&(e=c.repeat-a.getOption("firstLineNumber")),d(e,ka(a.getLine(e)))},textObjectManipulation:function(a,b,c,d){var e={"(":")",")":"(","{":"}","}":"{","[":"]","]":"["},f={"'":!0,'"':!0},g=c.selectedCharacter;"b"==g?g="(":"B"==g&&(g="{");var h,i=!c.textObjectInner;if(e[g])h=wa(a,b,g,i);else if(f[g])h=xa(a,b,g,i);else if("W"===g)h=la(a,i,!0,!0);else if("w"===g)h=la(a,i,!0,!1);else{if("p"!==g)return null;if(h=va(a,b,c.repeat,0,i),c.linewise=!0,d.visualMode)d.visualLine||(d.visualLine=!0);else{var j=d.inputState.operatorArgs;j&&(j.linewise=!0),h.end.line--}}return a.state.vim.visualMode?da(a,h.start,h.end):[h.start,h.end]},repeatLastCharacterSearch:function(a,b,c){var d=tb.lastChararacterSearch,e=c.repeat,f=c.forward===d.forward,g=(d.increment?1:0)*(f?-1:1);a.moveH(-g,"char"),c.inclusive=f?!0:!1;var h=ra(a,e,f,d.selectedCharacter);return h?(h.ch+=g,h):(a.moveH(g,"char"),b)}},yb={change:function(b,c,d){var e,f,g=b.state.vim;if(tb.macroModeState.lastInsertModeChanges.inVisualBlock=g.visualBlock,g.visualMode){f=b.getSelection();var h=F("",d.length);b.replaceSelections(h),e=T(d[0].head,d[0].anchor)}else{var i=d[0].anchor,j=d[0].head;f=b.getRange(i,j);var k=g.lastEditInputState||{};if("moveByWords"==k.motion&&!r(f)){var l=/\s+$/.exec(f);l&&k.motionArgs&&k.motionArgs.forward&&(j=K(j,0,-l[0].length),f=f.slice(0,-l[0].length))}var m=j.line-1==b.lastLine();b.replaceRange("",i,j),c.linewise&&!m&&(a.commands.newlineAndIndent(b),i.ch=null),e=i}tb.registerController.pushText(c.registerName,"change",f,c.linewise,d.length>1),zb.enterInsertMode(b,{head:e},b.state.vim)},"delete":function(a,b,c){var e,f,g=a.state.vim;if(g.visualBlock){f=a.getSelection();var h=F("",c.length);a.replaceSelections(h),e=c[0].anchor}else{var i=c[0].anchor,j=c[0].head;b.linewise&&j.line!=a.firstLine()&&i.line==a.lastLine()&&i.line==j.line-1&&(i.line==a.firstLine()?i.ch=0:i=d(i.line-1,W(a,i.line-1))),f=a.getRange(i,j),a.replaceRange("",i,j),e=i,b.linewise&&(e=xb.moveToFirstNonWhiteSpaceCharacter(a,i))}return tb.registerController.pushText(b.registerName,"delete",f,b.linewise,g.visualBlock),I(a,e)},indent:function(a,b,c){var d=a.state.vim,e=c[0].anchor.line,f=d.visualBlock?c[c.length-1].anchor.line:c[0].head.line,g=d.visualMode?b.repeat:1;b.linewise&&f--;for(var h=e;f>=h;h++)for(var i=0;g>i;i++)a.indentLine(h,b.indentRight);return xb.moveToFirstNonWhiteSpaceCharacter(a,c[0].anchor)},changeCase:function(a,b,c,d,e){for(var f=a.getSelections(),g=[],h=b.toLower,i=0;ij.top?(i.line+=(h-j.top)/e,i.line=Math.ceil(i.line),a.setCursor(i),j=a.charCoords(i,"local"),a.scrollTo(null,j.top)):a.scrollTo(null,h);else{var k=h+a.getScrollInfo().clientHeight;k=g.anchor.line?K(g.head,0,1):d(g.anchor.line,0);else if("inplace"==f&&e.visualMode)return;b.setOption("keyMap","vim-insert"),b.setOption("disableInput",!1),c&&c.replace?(b.toggleOverwrite(!0),b.setOption("keyMap","vim-replace"),a.signal(b,"vim-mode-change",{mode:"replace"})):(b.setOption("keyMap","vim-insert"),a.signal(b,"vim-mode-change",{mode:"insert"})),tb.macroModeState.isPlaying||(b.on("change",$a),a.on(b.getInputField(),"keydown",db)),e.visualMode&&ha(b),_(b,h,i)}},toggleVisualMode:function(b,c,e){var f,g=c.repeat,h=b.getCursor();e.visualMode?e.visualLine^c.linewise||e.visualBlock^c.blockwise?(e.visualLine=!!c.linewise,e.visualBlock=!!c.blockwise,a.signal(b,"vim-mode-change",{mode:"visual",subMode:e.visualLine?"linewise":e.visualBlock?"blockwise":""}),ea(b)):ha(b):(e.visualMode=!0,e.visualLine=!!c.linewise,e.visualBlock=!!c.blockwise,f=I(b,d(h.line,h.ch+g-1),!0),e.sel={anchor:h,head:f},a.signal(b,"vim-mode-change",{mode:"visual",subMode:e.visualLine?"linewise":e.visualBlock?"blockwise":""}),ea(b),ta(b,e,"<",T(h,f)),ta(b,e,">",U(h,f)))},reselectLastSelection:function(b,c,d){var e=d.lastSelection;if(d.visualMode&&ca(b,d),e){var f=e.anchorMark.find(),g=e.headMark.find();if(!f||!g)return;d.sel={anchor:f,head:g},d.visualMode=!0,d.visualLine=e.visualLine,d.visualBlock=e.visualBlock,ea(b),ta(b,d,"<",T(f,g)),ta(b,d,">",U(f,g)),a.signal(b,"vim-mode-change",{mode:"visual",subMode:d.visualLine?"linewise":d.visualBlock?"blockwise":""})}},joinLines:function(a,b,c){var e,f;if(c.visualMode){if(e=a.getCursor("anchor"),f=a.getCursor("head"),S(f,e)){var g=f;f=e,e=g}f.ch=W(a,f.line)-1}else{var h=Math.max(b.repeat,2);e=a.getCursor(),f=I(a,d(e.line+h-1,1/0))}for(var i=0,j=e.line;jc)return"";if(a.getOption("indentWithTabs")){var d=Math.floor(c/h);return Array(d+1).join(" ")}return Array(c+1).join(" ")});g+=m?"\n":""}if(b.repeat>1)var g=Array(b.repeat+1).join(g);var o=f.linewise,p=f.blockwise;if(o)c.visualMode?g=c.visualLine?g.slice(0,-1):"\n"+g.slice(0,g.length-1)+"\n":b.after?(g="\n"+g.slice(0,g.length-1),e.ch=W(a,e.line)):e.ch=0;else{if(p){g=g.split("\n");for(var q=0;qa.lastLine()&&a.replaceRange("\n",d(A,0));var B=W(a,A);Bk.length&&(f=k.length),g=d(i.line,f)}if("\n"==h)e.visualMode||b.replaceRange("",i,g),(a.commands.newlineAndIndentContinueComment||a.commands.newlineAndIndent)(b);else{var l=b.getRange(i,g);if(l=l.replace(/[^\n]/g,h),e.visualBlock){var m=new Array(b.getOption("tabSize")+1).join(" ");l=b.getSelection(),l=l.replace(/\t/g,m).replace(/[^\n]/g,h).split("\n"),b.replaceSelections(l)}else b.replaceRange(l,i,g);e.visualMode?(i=S(j[0].anchor,j[0].head)?j[0].anchor:j[0].head,b.setCursor(i),ha(b,!1)):b.setCursor(K(g,0,-1))}},incrementNumberToken:function(a,b){for(var c,e,f,g,h,i=a.getCursor(),j=a.getLine(i.line),k=/-?\d+/g;null!==(c=k.exec(j))&&(h=c[0],e=c.index,f=e+h.length,!(i.ch=1)return!0}else a.nextCh===a.reverseSymb&&a.depth--;return!1}},section:{init:function(a){a.curMoveThrough=!0,a.symb=(a.forward?"]":"[")===a.symb?"{":"}"},isComplete:function(a){return 0===a.index&&a.nextCh===a.symb}},comment:{isComplete:function(a){var b="*"===a.lastCh&&"/"===a.nextCh;return a.lastCh=a.nextCh,b}},method:{init:function(a){a.symb="m"===a.symb?"{":"}",a.reverseSymb="{"===a.symb?"}":"{"},isComplete:function(a){return a.nextCh===a.symb?!0:!1}},preprocess:{init:function(a){a.index=0},isComplete:function(a){if("#"===a.nextCh){var b=a.lineText.match(/#(\w+)/)[1];if("endif"===b){if(a.forward&&0===a.depth)return!0;a.depth++}else if("if"===b){if(!a.forward&&0===a.depth)return!0;a.depth--}if("else"===b&&0===a.depth)return!0}return!1}}};t("pcre",!0,"boolean"),ya.prototype={getQuery:function(){return tb.query},setQuery:function(a){tb.query=a},getOverlay:function(){return this.searchOverlay},setOverlay:function(a){this.searchOverlay=a},isReversed:function(){return tb.isReversed},setReversed:function(a){tb.isReversed=a},getScrollbarAnnotate:function(){return this.annotate},setScrollbarAnnotate:function(a){this.annotate=a}};var Cb={"\\n":"\n","\\r":"\r","\\t":" "},Db={"\\/":"/","\\\\":"\\","\\n":"\n","\\r":"\r","\\t":" "},Eb="(Javascript regexp)",Fb=function(){this.buildCommandMap_()};Fb.prototype={processCommand:function(a,b,c){var d=this;a.operation(function(){a.curOp.isVimOp=!0,d._processCommand(a,b,c)})},_processCommand:function(b,c,d){var e=b.state.vim,f=tb.registerController.getRegister(":"),g=f.toString();e.visualMode&&ha(b);var h=new a.StringStream(c);f.setText(c);var i=d||{};i.input=c;try{this.parseInput_(b,h,i)}catch(j){throw Ha(b,j),j}var k,l;if(i.commandName){if(k=this.matchCommand_(i.commandName)){
-if(l=k.name,k.excludeFromCommandHistory&&f.setText(g),this.parseCommandArgs_(h,i,k),"exToKey"==k.type){for(var m=0;m0;b--){var c=a.substring(0,b);if(this.commandMap_[c]){var d=this.commandMap_[c];if(0===d.name.indexOf(a))return d}}return null},buildCommandMap_:function(){this.commandMap_={};for(var a=0;a ";if(c){var f;c=c.join("");for(var g=0;g"}}else for(var f in d){var i=d[f].toString();i.length&&(e+='"'+f+" "+i+" ")}Ha(a,e)},sort:function(b,c){function e(){if(c.argString){var b=new a.StringStream(c.argString);if(b.eat("!")&&(g=!0),b.eol())return;if(!b.eatSpace())return"Invalid arguments";var d=b.match(/[a-z]+/);if(d){d=d[0],h=-1!=d.indexOf("i"),i=-1!=d.indexOf("u");var e=-1!=d.indexOf("d")&&1,f=-1!=d.indexOf("x")&&1,k=-1!=d.indexOf("o")&&1;if(e+f+k>1)return"Invalid arguments";j=e&&"decimal"||f&&"hex"||k&&"octal"}b.eatSpace()&&b.match(/\/.*\//)}}function f(a,b){if(g){var c;c=a,a=b,b=c}h&&(a=a.toLowerCase(),b=b.toLowerCase());var d=j&&q.exec(a),e=j&&q.exec(b);return d?(d=parseInt((d[1]+d[2]).toLowerCase(),r),e=parseInt((e[1]+e[2]).toLowerCase(),r),d-e):b>a?-1:1}var g,h,i,j,k=e();if(k)return void Ha(b,k+": "+c.argString);var l=c.line||b.firstLine(),m=c.lineEnd||c.line||b.lastLine();if(l!=m){var n=d(l,0),o=d(m,W(b,m)),p=b.getRange(n,o).split("\n"),q="decimal"==j?/(-?)([\d]+)/:"hex"==j?/(-?)(?:0x)?([0-9a-f]+)/i:"octal"==j?/([0-7]+)/:null,r="decimal"==j?10:"hex"==j?16:"octal"==j?8:null,s=[],t=[];if(j)for(var u=0;u=m;m++){var n=j.test(a.getLine(m));n&&(k.push(m+1),l+=a.getLine(m)+" ")}if(!d)return void Ha(a,l);var o=0,p=function(){if(o=k)return void Ha(b,"Invalid argument: "+c.argString.substring(f));for(var l=0;k-j>=l;l++){var m=String.fromCharCode(j+l);delete d.marks[m]}}else delete d.marks[g]}}},Hb=new Fb;return a.keyMap.vim={attach:h,detach:g,call:i},t("insertModeEscKeysTimeout",200,"number"),a.keyMap["vim-insert"]={"Ctrl-N":"autocomplete","Ctrl-P":"autocomplete",Enter:function(b){var c=a.commands.newlineAndIndentContinueComment||a.commands.newlineAndIndent;c(b)},fallthrough:["default"],attach:h,detach:g,call:i},a.keyMap["vim-replace"]={Backspace:"goCharLeft",fallthrough:["vim-insert"],attach:h,detach:g,call:i},y(),vb};a.Vim=e()});
\ No newline at end of file
+!function(a){"object"==typeof exports&&"object"==typeof module?a(require("../lib/codemirror"),require("../addon/search/searchcursor"),require("../addon/dialog/dialog"),require("../addon/edit/matchbrackets.js")):"function"==typeof define&&define.amd?define(["../lib/codemirror","../addon/search/searchcursor","../addon/dialog/dialog","../addon/edit/matchbrackets"],a):a(CodeMirror)}(function(a){"use strict";var b=[{keys:"",type:"keyToKey",toKeys:"h"},{keys:"",type:"keyToKey",toKeys:"l"},{keys:"",type:"keyToKey",toKeys:"k"},{keys:"",type:"keyToKey",toKeys:"j"},{keys:"",type:"keyToKey",toKeys:"l"},{keys:"",type:"keyToKey",toKeys:"h",context:"normal"},{keys:"",type:"keyToKey",toKeys:"W"},{keys:"",type:"keyToKey",toKeys:"B",context:"normal"},{keys:"",type:"keyToKey",toKeys:"w"},{keys:"",type:"keyToKey",toKeys:"b",context:"normal"},{keys:"",type:"keyToKey",toKeys:"j"},{keys:"",type:"keyToKey",toKeys:"k"},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:"",context:"insert"},{keys:"",type:"keyToKey",toKeys:"",context:"insert"},{keys:"s",type:"keyToKey",toKeys:"cl",context:"normal"},{keys:"s",type:"keyToKey",toKeys:"xi",context:"visual"},{keys:"S",type:"keyToKey",toKeys:"cc",context:"normal"},{keys:"S",type:"keyToKey",toKeys:"dcc",context:"visual"},{keys:"",type:"keyToKey",toKeys:"0"},{keys:"",type:"keyToKey",toKeys:"$"},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:""},{keys:"",type:"keyToKey",toKeys:"j^",context:"normal"},{keys:"H",type:"motion",motion:"moveToTopLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"M",type:"motion",motion:"moveToMiddleLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"L",type:"motion",motion:"moveToBottomLine",motionArgs:{linewise:!0,toJumplist:!0}},{keys:"h",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!1}},{keys:"l",type:"motion",motion:"moveByCharacters",motionArgs:{forward:!0}},{keys:"j",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,linewise:!0}},{keys:"k",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,linewise:!0}},{keys:"gj",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!0}},{keys:"gk",type:"motion",motion:"moveByDisplayLines",motionArgs:{forward:!1}},{keys:"w",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1}},{keys:"W",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!1,bigWord:!0}},{keys:"e",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,inclusive:!0}},{keys:"E",type:"motion",motion:"moveByWords",motionArgs:{forward:!0,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"b",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1}},{keys:"B",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1,bigWord:!0}},{keys:"ge",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,inclusive:!0}},{keys:"gE",type:"motion",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!0,bigWord:!0,inclusive:!0}},{keys:"{",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!1,toJumplist:!0}},{keys:"}",type:"motion",motion:"moveByParagraph",motionArgs:{forward:!0,toJumplist:!0}},{keys:"",type:"motion",motion:"moveByPage",motionArgs:{forward:!0}},{keys:"",type:"motion",motion:"moveByPage",motionArgs:{forward:!1}},{keys:"",type:"motion",motion:"moveByScroll",motionArgs:{forward:!0,explicitRepeat:!0}},{keys:"",type:"motion",motion:"moveByScroll",motionArgs:{forward:!1,explicitRepeat:!0}},{keys:"gg",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!1,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"G",type:"motion",motion:"moveToLineOrEdgeOfDocument",motionArgs:{forward:!0,explicitRepeat:!0,linewise:!0,toJumplist:!0}},{keys:"0",type:"motion",motion:"moveToStartOfLine"},{keys:"^",type:"motion",motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"+",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0}},{keys:"-",type:"motion",motion:"moveByLines",motionArgs:{forward:!1,toFirstChar:!0}},{keys:"_",type:"motion",motion:"moveByLines",motionArgs:{forward:!0,toFirstChar:!0,repeatOffset:-1}},{keys:"$",type:"motion",motion:"moveToEol",motionArgs:{inclusive:!0}},{keys:"%",type:"motion",motion:"moveToMatchedSymbol",motionArgs:{inclusive:!0,toJumplist:!0}},{keys:"f",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"F",type:"motion",motion:"moveToCharacter",motionArgs:{forward:!1}},{keys:"t",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!0,inclusive:!0}},{keys:"T",type:"motion",motion:"moveTillCharacter",motionArgs:{forward:!1}},{keys:";",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!0}},{keys:",",type:"motion",motion:"repeatLastCharacterSearch",motionArgs:{forward:!1}},{keys:"'",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0,linewise:!0}},{keys:"`",type:"motion",motion:"goToMark",motionArgs:{toJumplist:!0}},{keys:"]`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0}},{keys:"[`",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1}},{keys:"]'",type:"motion",motion:"jumpToMark",motionArgs:{forward:!0,linewise:!0}},{keys:"['",type:"motion",motion:"jumpToMark",motionArgs:{forward:!1,linewise:!0}},{keys:"]p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0,matchIndent:!0}},{keys:"[p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0,matchIndent:!0}},{keys:"]",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!0,toJumplist:!0}},{keys:"[",type:"motion",motion:"moveToSymbol",motionArgs:{forward:!1,toJumplist:!0}},{keys:"|",type:"motion",motion:"moveToColumn"},{keys:"o",type:"motion",motion:"moveToOtherHighlightedEnd",context:"visual"},{keys:"O",type:"motion",motion:"moveToOtherHighlightedEnd",motionArgs:{sameLine:!0},context:"visual"},{keys:"d",type:"operator",operator:"delete"},{keys:"y",type:"operator",operator:"yank"},{keys:"c",type:"operator",operator:"change"},{keys:">",type:"operator",operator:"indent",operatorArgs:{indentRight:!0}},{keys:"<",type:"operator",operator:"indent",operatorArgs:{indentRight:!1}},{keys:"g~",type:"operator",operator:"changeCase"},{keys:"gu",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},isEdit:!0},{keys:"gU",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},isEdit:!0},{keys:"n",type:"motion",motion:"findNext",motionArgs:{forward:!0,toJumplist:!0}},{keys:"N",type:"motion",motion:"findNext",motionArgs:{forward:!1,toJumplist:!0}},{keys:"x",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!0},operatorMotionArgs:{visualLine:!1}},{keys:"X",type:"operatorMotion",operator:"delete",motion:"moveByCharacters",motionArgs:{forward:!1},operatorMotionArgs:{visualLine:!0}},{keys:"D",type:"operatorMotion",operator:"delete",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"D",type:"operator",operator:"delete",operatorArgs:{linewise:!0},context:"visual"},{keys:"Y",type:"operatorMotion",operator:"yank",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"Y",type:"operator",operator:"yank",operatorArgs:{linewise:!0},context:"visual"},{keys:"C",type:"operatorMotion",operator:"change",motion:"moveToEol",motionArgs:{inclusive:!0},context:"normal"},{keys:"C",type:"operator",operator:"change",operatorArgs:{linewise:!0},context:"visual"},{keys:"~",type:"operatorMotion",operator:"changeCase",motion:"moveByCharacters",motionArgs:{forward:!0},operatorArgs:{shouldMoveCursor:!0},context:"normal"},{keys:"~",type:"operator",operator:"changeCase",context:"visual"},{keys:"",type:"operatorMotion",operator:"delete",motion:"moveByWords",motionArgs:{forward:!1,wordEnd:!1},context:"insert"},{keys:"",type:"action",action:"jumpListWalk",actionArgs:{forward:!0}},{keys:"",type:"action",action:"jumpListWalk",actionArgs:{forward:!1}},{keys:"",type:"action",action:"scroll",actionArgs:{forward:!0,linewise:!0}},{keys:"",type:"action",action:"scroll",actionArgs:{forward:!1,linewise:!0}},{keys:"a",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"charAfter"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"eol"},context:"normal"},{keys:"A",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"endOfSelectedArea"},context:"visual"},{keys:"i",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"inplace"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"firstNonBlank"},context:"normal"},{keys:"I",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{insertAt:"startOfSelectedArea"},context:"visual"},{keys:"o",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!0},context:"normal"},{keys:"O",type:"action",action:"newLineAndEnterInsertMode",isEdit:!0,interlaceInsertRepeat:!0,actionArgs:{after:!1},context:"normal"},{keys:"v",type:"action",action:"toggleVisualMode"},{keys:"V",type:"action",action:"toggleVisualMode",actionArgs:{linewise:!0}},{keys:"",type:"action",action:"toggleVisualMode",actionArgs:{blockwise:!0}},{keys:"gv",type:"action",action:"reselectLastSelection"},{keys:"J",type:"action",action:"joinLines",isEdit:!0},{keys:"p",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!0,isEdit:!0}},{keys:"P",type:"action",action:"paste",isEdit:!0,actionArgs:{after:!1,isEdit:!0}},{keys:"r",type:"action",action:"replace",isEdit:!0},{keys:"@",type:"action",action:"replayMacro"},{keys:"q",type:"action",action:"enterMacroRecordMode"},{keys:"R",type:"action",action:"enterInsertMode",isEdit:!0,actionArgs:{replace:!0}},{keys:"u",type:"action",action:"undo",context:"normal"},{keys:"u",type:"operator",operator:"changeCase",operatorArgs:{toLower:!0},context:"visual",isEdit:!0},{keys:"U",type:"operator",operator:"changeCase",operatorArgs:{toLower:!1},context:"visual",isEdit:!0},{keys:"",type:"action",action:"redo"},{keys:"m",type:"action",action:"setMark"},{keys:'"',type:"action",action:"setRegister"},{keys:"zz",type:"action",action:"scrollToCursor",actionArgs:{position:"center"}},{keys:"z.",type:"action",action:"scrollToCursor",actionArgs:{position:"center"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"zt",type:"action",action:"scrollToCursor",actionArgs:{position:"top"}},{keys:"z",type:"action",action:"scrollToCursor",actionArgs:{position:"top"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:"z-",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"}},{keys:"zb",type:"action",action:"scrollToCursor",actionArgs:{position:"bottom"},motion:"moveToFirstNonWhiteSpaceCharacter"},{keys:".",type:"action",action:"repeatLastEdit"},{keys:"",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!0,backtrack:!1}},{keys:"",type:"action",action:"incrementNumberToken",isEdit:!0,actionArgs:{increase:!1,backtrack:!1}},{keys:"a",type:"motion",motion:"textObjectManipulation"},{keys:"i",type:"motion",motion:"textObjectManipulation",motionArgs:{textObjectInner:!0}},{keys:"/",type:"search",searchArgs:{forward:!0,querySrc:"prompt",toJumplist:!0}},{keys:"?",type:"search",searchArgs:{forward:!1,querySrc:"prompt",toJumplist:!0}},{keys:"*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",wholeWordOnly:!0,toJumplist:!0}},{keys:"g*",type:"search",searchArgs:{forward:!0,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:"g#",type:"search",searchArgs:{forward:!1,querySrc:"wordUnderCursor",toJumplist:!0}},{keys:":",type:"ex"}],c=[{name:"colorscheme",shortName:"colo"},{name:"map"},{name:"imap",shortName:"im"},{name:"nmap",shortName:"nm"},{name:"vmap",shortName:"vm"},{name:"unmap"},{name:"write",shortName:"w"},{name:"undo",shortName:"u"},{name:"redo",shortName:"red"},{name:"set",shortName:"se"},{name:"set",shortName:"se"},{name:"setlocal",shortName:"setl"},{name:"setglobal",shortName:"setg"},{name:"sort",shortName:"sor"},{name:"substitute",shortName:"s",possiblyAsync:!0},{name:"nohlsearch",shortName:"noh"},{name:"delmarks",shortName:"delm"},{name:"registers",shortName:"reg",excludeFromCommandHistory:!0},{name:"global",shortName:"g"}],d=a.Pos,e=function(){function e(b){b.setOption("disableInput",!0),b.setOption("showCursorWhenSelecting",!1),a.signal(b,"vim-mode-change",{mode:"normal"}),b.on("cursorActivity",ab),x(b),a.on(b.getInputField(),"paste",k(b))}function f(b){b.setOption("disableInput",!1),b.off("cursorActivity",ab),a.off(b.getInputField(),"paste",k(b)),b.state.vim=null}function g(b,c){this==a.keyMap.vim&&a.rmClass(b.getWrapperElement(),"cm-fat-cursor"),c&&c.attach==h||f(b,!1)}function h(b,c){this==a.keyMap.vim&&a.addClass(b.getWrapperElement(),"cm-fat-cursor"),c&&c.attach==h||e(b)}function i(b,c){if(!c)return void 0;var d=j(b);if(!d)return!1;var e=a.Vim.findKey(c,d);return"function"==typeof e&&a.signal(c,"vim-keypress",d),e}function j(a){if("'"==a.charAt(0))return a.charAt(1);var b=a.split("-");/-$/.test(a)&&b.splice(-2,2,"-");var c=b[b.length-1];if(1==b.length&&1==b[0].length)return!1;if(2==b.length&&"Shift"==b[0]&&1==c.length)return!1;for(var d=!1,e=0;e"):!1}function k(a){var b=a.state.vim;return b.onPasteFn||(b.onPasteFn=function(){b.insertMode||(a.setCursor(L(a.getCursor(),0,1)),Ab.enterInsertMode(a,{},b))}),b.onPasteFn}function l(a,b){for(var c=[],d=a;a+b>d;d++)c.push(String.fromCharCode(d));return c}function m(a,b){return b>=a.firstLine()&&b<=a.lastLine()}function n(a){return/^[a-z]$/.test(a)}function o(a){return-1!="()[]{}".indexOf(a)}function p(a){return jb.test(a)}function q(a){return/^[A-Z]$/.test(a)}function r(a){return/^\s*$/.test(a)}function s(a,b){for(var c=0;c