<?xml version="1.0" encoding="UTF-8"?>


<!--***********************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 ***********************************************************-->


	
<helpdocument version="1.0">
<meta>
<topic id="textswritermain0000xml" indexer="include" status="PUBLISH">
<title id="tit" xml-lang="en-US">Welcome to the $[officename] Writer Help</title>
<filename>/text/swriter/main0000.xhp</filename>
</topic>
<history>
<created date="2003-10-31T00:00:00">Sun Microsystems, Inc.</created>
<lastedited date="2004-09-28T16:41:17">converted from old format - fpe</lastedited>
</history>
</meta>
<body>
<bookmark xml-lang="en-US" branch="hid/SW_HID_EDIT_WIN" id="bm_id3147244" localize="false"/>
<bookmark xml-lang="en-US" branch="hid/HID_GLOBAL_FALLBACK" id="bm_id3147247" localize="false"/>
<paragraph role="heading" id="hd_id3147233" xml-lang="en-US" level="1" l10n="CHG" oldref="1">%PRODUCTNAME Writer Help</paragraph>
<paragraph role="heading" id="hd_id3147258" xml-lang="en-US" level="3" l10n="U" oldref="3">Working With %PRODUCTNAME Writer</paragraph>
<embed href="text/swriter/main0503.xhp#main0503"/>
<embed href="text/swriter/guide/main.xhp#main"/>
<embed href="text/schart/main0000.xhp#chart_main"/>
<embed href="text/shared/explorer/database/main.xhp#base"/>
<paragraph role="heading" id="hd_id3149131" xml-lang="en-US" level="3" l10n="U" oldref="5">Menus, Toolbars, and Keys</paragraph>
<embed href="text/swriter/main0100.xhp#main0100"/>
<embed href="text/swriter/main0200.xhp#main0200"/>
<embed href="text/swriter/04/01020000.xhp#text_keys"/>
<paragraph role="heading" id="hd_id3149183" xml-lang="en-US" level="3" l10n="U" oldref="4">Getting Help</paragraph>
<embed href="text/shared/05/00000100.xhp#neuehilfe"/>
<embed href="text/shared/05/00000110.xhp#00000110"/>
<embed href="text/shared/05/00000120.xhp#00000120"/>
<embed href="text/shared/05/00000130.xhp#00000130"/>
<embed href="text/shared/05/00000140.xhp#00000140"/>
<embed href="text/shared/05/00000150.xhp#doc_title"/>
<embed href="text/shared/05/00000160.xhp#doc_title"/>
<embed href="text/shared/05/00000001.xhp#00000001"/>
</body>
</helpdocument>
