#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
# IBM Corporation - initial implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

################################################################################
# BEGIN NO TRANSLATION
###############################################################################
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
fontNameAction_CSS_Default=arial, helvetica, sans-serif
# !! DO NOT TRANSLATE THE FOLLOWING LINE !!
fontNameAction_CSS_Default_Mozilla=arial,helvetica,sans-serif
################################################################################
# END NO TRANSLATION
################################################################################



# Font Style Names
fontStyle_normal=\u6b63\u5e38
fontStyle_sectionHeading=\u5340\u6bb5\u6a19\u984c
fontStyle_subsectionHeading=\u5b50\u5340\u6bb5\u6a19\u984c
fontStyle_subSubsectionHeading=\u6b21\u5b50\u5340\u6bb5\u6a19\u984c
fontStyle_quote=\u5f15\u865f
fontStyle_codeSample=\u7a0b\u5f0f\u78bc\u7bc4\u4f8b

# HTML Block Tags
blockTag_paragraph=\u6bb5\u843d
blockTag_heading1=\u6a19\u984c 1
blockTag_heading2=\u6a19\u984c 2
blockTag_heading3=\u6a19\u984c 3
blockTag_heading4=\u6a19\u984c 4
blockTag_heading5=\u6a19\u984c 5
blockTag_heading6=\u6a19\u984c 6
blockTag_address=\u4f4d\u5740
blockTag_preformattedText=\u9810\u5148\u683c\u5f0f\u5316\u7684\u6587\u5b57

# HTML Font Names
fontName_default=\u9810\u8a2d\u503c
fontName_arial=Arial
fontName_courierNew=Courier New
fontName_timesNewRoman=Times New Roman
fontName_verdana=Verdana

# Rich Text Editor Tool Buttons
addHorizontalBarAction_toolTipText=\u65b0\u589e\u6c34\u5e73\u8ef8
addImageAction_toolTipText=\u65b0\u589e\u5f71\u50cf
addLineAction_toolTipText=\u65b0\u589e\u6307\u4ee4\u884c
addLinkAction_toolTipText=\u65b0\u589e\u93c8\u7d50
addOrderedListAction_toolTipText=\u65b0\u589e\u6709\u5e8f\u6e05\u55ae
addTableAction_toolTipText=\u65b0\u589e\u8868\u683c
addUnorderedListAction_toolTipText=\u65b0\u589e\u7121\u5e8f\u6e05\u55ae
boldAction_toolTipText=\u7c97\u9ad4\u5b57
clearContentAction_toolTipText=\u6e05\u9664\u5167\u5bb9
copyAction_toolTipText=\u8907\u88fd
cutAction_toolTipText=\u526a\u4e0b
findReplaceAction_toolTipText=\u5c0b\u627e/\u53d6\u4ee3
indentAction_toolTipText=\u7e2e\u6392
italicAction_toolTipText=\u659c\u9ad4\u5b57
justifyCenterAction_toolTipText=\u9760\u4e2d\u5c0d\u9f4a
justifyFullAction_toolTipText=\u5de6\u53f3\u5c0d\u9f4a
justifyLeftAction_toolTipText=\u9760\u5de6\u5c0d\u9f4a
justifyRightAction_toolTipText=\u9760\u53f3\u5c0d\u9f4a
outdentAction_toolTipText=\u51f8\u6392
pasteAction_toolTipText=\u8cbc\u4e0a
pastePlainTextAction_toolTipText=\u8cbc\u6210\u7d14\u6587\u5b57
subscriptAction_toolTipText=\u4e0b\u6a19
superscriptAction_toolTipText=\u4e0a\u6a19
underlineAction_toolTipText=\u5e95\u7dda
tidy_clean_text=\u9810\u8a2d\u5168\u65b0
tidy_cleaner_text=\u5168\u65b0\u7684 MS HTML
tidy_cleanest_text=\u5168\u65b0\u7684 Word 2000 HTML
tidy_clean_toolTipText=\u5168\u65b0\u4e14 JTidy \u4f7f\u7528\u9810\u8a2d\u9078\u9805
tidy_cleaner_toolTipText=MS HTML \u7684\u5168\u65b0 HTML
tidy_cleanest_toolTipText=\u5168\u65b0\u7684 Word 2000 HTML


# Rich Text Editor Comboboxes
fontStyleAction_toolTipText=\u8a2d\u5b9a\u5b57\u578b\u6a23\u5f0f
blockTagAction_toolTipText=\u8a2d\u5b9a\u5340\u584a\u6a19\u793a
fontNameAction_toolTipText=\u8a2d\u5b9a\u5b57\u578b
fontNameAction_DefaultFontName=\u9810\u8a2d\u5b57\u578b
fontSizeAction_toolTipText=\u8a2d\u5b9a\u5b57\u578b\u5927\u5c0f

# Rich Text Editor Context Menu Items
cutAction_text=\u526a\u4e0b(&C)
copyAction_text=\u8907\u88fd(&O)
pasteAction_text=\u8cbc\u4e0a(&P)
pastePlainTextAction_text=\u8cbc\u6210\u7d14\u6587\u5b57(&A)

# Rich Text Editor Tabs
richTextTab_text=Rich \u6587\u5b57
richTextTab_toolTipText=\u7de8\u8f2f\u4f7f\u7528 Rich \u6587\u5b57\u7684\u5167\u5bb9
htmlTab_text=HTML
htmlTab_toolTipText=\u7de8\u8f2f HTML \u4e2d\u7684\u5167\u5bb9

# Add Dialogs
addImageDialog_title=\u65b0\u589e\u5f71\u50cf
addLinkDialog_title=\u65b0\u589e\u93c8\u7d50
addTableDialog_title=\u65b0\u589e\u8868\u683c
findReplaceDialog_title=\u5c0b\u627e/\u53d6\u4ee3
urlLabel_text=URL\uff1a
summaryLabel_text=\u6458\u8981\uff1a
captionLabel_text=\u6a19\u984c\uff1a
rowsLabel_text=\u5217\uff1a
columnsLabel_text=\u6b04\uff1a
widthLabel_text=\u5bec\u5ea6\uff1a
tableStyleLabel_text=\u6a23\u5f0f\uff1a
tableHeaderNone_text=\u4e0d\u542b\u6a19\u982d\u7684\u8868\u683c
tableHeaderCols_text=\u5305\u542b\u6a19\u982d\u7684\u8868\u683c
tableHeaderRows_text=\u4e0d\u542b\u5217\u6a19\u982d\u7684\u8868\u683c
tableHeaderBoth_text=\u5305\u542b\u6b04\u548c\u5217\u6a19\u982d\u7684\u8868\u683c
browseButton_text=\u700f\u89bd...

# Clear Editor Content Dialog
clearContentDialog_title=\u78ba\u8a8d\u6e05\u9664\u7de8\u8f2f\u5668\u5167\u5bb9
clearContentDialog_text=\u60a8\u771f\u7684\u8981\u6e05\u9664\u6b64 Rich Text \u7de8\u8f2f\u5668\u7684\u5167\u5bb9\u55ce\uff1f

# Find/Replace Dialog
findLabel_text=\u5c0b\u627e\uff1a
replaceLabel_text=\u53d6\u4ee3\u70ba\uff1a
optionsGroup_text=\u9078\u9805
caseSensitiveCheckbox_text=\u5340\u5206\u5927\u5c0f\u5beb
wholeWordCheckbox_text=\u5b8c\u6574\u55ae\u5b57
directionGroup_text=\u65b9\u5411
forwardRadioButton_text=\u4e0b\u4e00\u6b65
backwardRadioButton_text=\u5f80\u56de
findButton_text=\u5c0b\u627e
replaceButton_text=\u53d6\u4ee3
replaceFindButton_text=\u53d6\u4ee3/\u5c0b\u627e
replaceallButton_text=\u5168\u90e8\u53d6\u4ee3
# taken from org.eclipse.ui.workbench.texteditor
FindReplace_Status_noMatch_label=\u627e\u4e0d\u5230\u5b57\u4e32

# Preference Page
maxCharsPerLineLabel_text=\u6bcf\u884c\u5b57\u5143\u6578\u76ee\u4e0a\u9650\uff1a
indentHTMLCheckbox_text=\u7e2e\u6392 HTML \u6a19\u793a
indentSizeLabel_text=\u7e2e\u6392\u5927\u5c0f\uff1a
urlDisplayNameLabel_text=URL \u986f\u793a\u540d\u7a31\uff1a


