Locking translated tags or blocks of code
In most cases, you want a translator to change the markup so that Adobe Dreamweaver can display it, but you want to save the original markup, not the changes. For such cases, Adobe Dreamweaver provides special XML tags in which to wrap translated content and to refer to the original code.
When you use these XML tags, the contents of the original attributes are duplicated in Code view. If the file is saved, the original, untranslated markup is written to the file. The untranslated content is what Adobe Dreamweaver displays in Code view.
The syntax of the XML tags is shown in the following example:
<MM:BeginLock translatorClass="translatorClass" ¬type="tagNameOrType" depFiles="dependentFilesList" ¬orig="encodedOrignalMarkup">Translated content<MM:EndLock>
The italicized values in this example have the following significance:
- The
translatorClassvalue is the unique identifier for the translator; it is the first string in the array that thegetTranslatorInfo()function returns. - The
tagNameOrTypevalue is a string that identifies the type of markup (or the tag name that is associated with the markup) that is contained in the lock. The string can contain only alphanumeric, hyphen (-), or underscore (_) characters. You can check this value in thecanInspectSelection()function of a custom Property inspector to determine whether the Property inspector is the right one for the content. For more information, see Creating Property inspectors for locked content. Locked content cannot be inspected by the Adobe Dreamweaver built-in Property inspectors. For example, specifyingtype="IMG"does not make the Image panel appear. - The
dependentFilesListvalue is a string that contains a comma-separated list of files on which the locked markup depends. Files are referenced as URLs, relative to the user's document. If the user updates one of the files named in thedependentFilesListstring, Adobe Dreamweaver automatically retranslates the content in the document that contains the list. - The
encodedOriginalMarkupvalue is a string that contains the original, untranslated markup, encoded using a small subset of URL encoding (use%22 for ", %3C for <, %3E for >, and %25 for %). The quickest way to URL-encode a string is to use theescape()method. For example, ifmyStringequals'<img src="foo.gif">',escape(myString)returns%3Cimg%20src=%22foo.gif%22%3E.
The following example shows the locked portion of code that might be generated from the translation of the server-side include <!--#include virtual="/footer.html" -->:
<MM:BeginLock translatorClass="MM_SSI" type="ssi" ¬depFiles="C:\sites\webdev\footer.html" orig="%3C!--#include ¬virtual=%22/footer.html%22%20--%3E"><!-- begin footer --><CENTER><HR SIZE=1 NOSHADE WIDTH=100%><BR>[<A TARGET="_top" HREF="/">home</A>][<A TARGET="_top" HREF="/products/">products</A>][<A TARGET="_top" HREF="/services/">services</A>][<A TARGET="_top" HREF="/support/">support</A>][<A TARGET="_top" HREF="/company/">about us</A>][<A TARGET="_top" HREF="/help/">help</A>] </CENTER><!-- end footer --><MM:EndLock>