Wiki source code of WYSIWYG Editor

Version 16.1 by Sorin Burjan on 2010/06/14 08:50

Show last authors
1 = WYSIWYG Editor =
2
3 (% class="floatinginfobox" %)
4 (((
5 **Contents**
6
7 {{toc depth="2"/}}
8 )))
9
10 Welcome to the WYSIWYG editor user guide. This page will help you discover all the features from XWiki's GWT rich text editor.
11
12 {{info}}
13 This page describes all the features supported by the WYSIWYG editor. Not all of them are enabled in the default XWiki Enterprise distribution. See the [[configuration page>>AdminGuide.WysiwygEditor]] if you want to enable or disable any of the features presented here.
14 {{/info}}
15
16 == Pre-requisites ==
17
18 {{include document="WysiwygEditorPrerequisites"/}}
19
20 == Quick Reference ==
21
22 {{toc scope="local" start="3"/}}
23
24 === Toolbar ===
25
26 [[image:toolbar.png||style="border: 1px solid black;"]]
27
28 Not all the buttons appear in the default instalation. See the [[configuration page>>AdminGuide.WysiwygEditor]] if you want to enable or disable any of the features presented here.
29
30 |=Toolbar Item|=Function
31 |[[image:bold.gif]][[image:italic.gif]][[image:underline.gif]][[image:strikethrough.gif]][[image:tt.gif]]|Applies **bold**, //italic//, __underline__, --strikethrough-- or ##teletype## formatting to the selected text. See [[Text Styles>>#HTextStyles]].
32 |[[image:subscript.gif]][[image:superscript.gif]]|Subscript (x,,2,,) or superscript (x^^2^^) the selected text. See [[Subscript and Superscript>>#HSubscriptandSuperscript]].
33 |[[image:justifyleft.gif]][[image:justifycenter.gif]][[image:justifyright.gif]][[image:justifyfull.gif]]|Sets the text alignment: left, centered, right or justified. See [[Text Alignment>>#HTextAlignment]].
34 |[[image:ul.gif]][[image:ol.gif]]|Creates bulleted or numbered lists. See [[Creating Lists>>#HCreatingLists]].
35 |[[image:indent.gif]][[image:outdent.gif]]|Increases or decreases the indentation of a list item. See [[Creating Lists>>#HCreatingLists]].
36 |[[image:undo.gif]][[image:redo.gif]]|Undo or redo the most recent action taken. See [[Undo and Redo>>#HUndoandRedo]].
37 |[[image:format.png]]|Formats the text as heading (level 1 to 6). See [[Headings>>#HHeadings]].
38 |[[image:fontname.png]]|Changes the font used by the selected text. See [[Fonts>>#HFonts]].
39 |[[image:fontsize.png]]|Changes the font size used by the selected text. See [[Text Size>>#HTextSize]].
40 |[[image:forecolor.gif]][[image:backcolor.gif]]|Changes the text color or the background color of the selected text. See [[Colors>>#HColors]].
41 |[[image:hr.gif]]|Inserts a horizontal rule.
42 |[[image:removeformat.gif]]|Removes the formatting from the selected text. See [[Remove Formatting>>#HRemoveFormatting]].
43 |[[image:charmap.gif]]|Inserts symbols or special characters (accented characters, trademark, currency symbol etc.). See [[Inserting Symbols>>#HInsertingSymbols]].
44
45
46 === Menus ===
47
48 [[image:menu.png||style="border: 1px solid black;"]]
49
50 ==== Link ====
51
52 Insert link menu is active when the caret or selection is outside of a link.
53
54 |(% rowspan="4" %)[[image:linkinsertmenu.png||style="border: 1px solid black;"]]|1. The user can link to one of the exiting wiki pages or to a new wiki page.
55 |2. The user can link to one of the existing attachments or upload a new attachment to the edited page.
56 |3. The user can link to any web page by pasting its address.
57 |4. The user can link to an email address.
58
59 Edit link menu is active when the caret or selection is inside a link.
60
61 |(% rowspan="2" %)[[image:linkeditmenu.png||style="border: 1px solid black;"]]|1. The user can edit an existing link (i.e. change its target). A specific dialog is opened depending on the link type.
62 |2. The user can remove an existing link.
63
64 See also [[Creating and Editing Links>>#HCreatingandEditingLinks]] for a detailed description of how links can be created and edited.
65
66 ==== Image ====
67
68 Insert image menu is active when there's no image selected.
69
70 [[image:imageinsertmenu.png||style="border: 1px solid black;"]]1. The user can insert one of the attached images or upload a new image.
71
72 Edit image menu is active when there's an image selected.
73 [[image:imageeditmenu.png||style="border: 1px solid black;"]]
74 |(% rowspan="2" %)[[image:imageeditmenu.png||style="border: 1px solid black;"]]|1. The user can edit the selected image (i.e. change its source, width, height etc.).
75 |2. The user can remove the selected image.
76
77 See also [[Inserting and Editing Images>>#HInsertingandEditingImages]] for a detailed description of how images can be inserted and edited.
78
79 ==== Table ====
80
81 Insert table menu is active when the caret is not inside a table cell.
82
83 |[[image:tableinsertmenu.png||style="border: 1px solid black;"]]|1. The user can insert a table by specifying the number of rows and columns.
84
85 Edit table menu is active when the caret is inside a table cell.
86
87 |(% rowspan="7" %)[[image:tableeditmenu.png||style="border: 1px solid black;"]]|1. The user can insert an empty column before the column in which the caret or selection is.
88 |2. The user can insert an empty column after the column in which the caret or selection is.
89 |3. The user can delete the column in which the caret or selection is.
90 |4. The user can insert an empty row before the row in which the caret or selection is.
91 |5. The user can insert an empty row after the row in which the caret or selection is.
92 |6. The user can delete the row in which the caret or selection is.
93 |7. The user can delete the table in which the caret or selection is.
94
95 See also [[Creating and Editing Tables>>#HCreatingandEditingTables]] for a detailed description of how tables can be created and edited.
96
97 ==== Macro ====
98
99 Insert macro menu is active when there's no macro selected.
100
101 |(% rowspan="4" %)[[image:macroinsertmenu.png||style="border: 1px solid black;"]]|1. The user can insert a predefined macro.
102 |2. The user can force a refresh of all the macros' output. This is useful when macro output depends on the page content like in the case of the Table of Contents macro.
103 |3. The user can collapse all the macros in the edited page.
104 |4. The user can expand all the macros in the edited page.
105
106 Edit macro menu is active when there's a macro selected.
107
108 |(% rowspan="3" %)[[image:macroeditmenu.png||style="border: 1px solid black;"]]|1. The user can change the parameters or the content of the selected macro.
109 |2. The user can collapse the selected macro.
110 |3. The user can expand the selected macro.
111
112 See also [[Inserting and Editing Macros>>#HInsertingandEditingMacros]] for a detailed description of how macros can be inserted and edited.
113
114 ====Import ====
115 Import office files. See [[Importing Office Content>>#HImportingOfficeContent]].
116
117 === Tabs ===
118
119 image:tabs.png
120
121 The user can view or edit the document source code by clicking on the Source tab (for advanced users). **The source code is not necessarily HTML**. It depends on the editor configuration. Usually the source code is in wiki syntax but the editor supports any syntax that can be converted to and from HTML.
122
123 == Keyboard Shortcuts ==
124
125 Some of the editing features have keyboard shortcuts, improving the editing speed. Below you will find an alphabetical list with all of the keyboard shortcuts:
126
127 * **Ctrl+A** selects all the content inside the editing area.
128 * **Ctrl+B** or **Meta+B** formats the selected text as bold.
129 * **Ctrl+C** or **Ctrl+Insert** copies the current selection to the clipboard.
130 * **Ctrl+Down** creates an empty paragraph after the table containing the caret or the selection and places the caret in it. This is useful when you can't move the caret after a table because the page ends with it.
131 * **Ctrl+I** or **Meta+I** formats the selected text as italic.
132 * **Ctrl+U** or **Meta+U** formats the selected text as underline.
133 * **Ctrl+Up** creates an empty paragraph before the table containing the caret or the selection and places the caret in it. This is useful when you can't move the caret before a table because the page starts with it.
134 * **Ctrl+V** or **Shift+Insert** pastes the data from the clipboard
135 * **Ctrl+X** or **Shift+Delete** cuts the current selection.
136 * **Ctrl+Y** or **Meta+Y** triggers the redo function.
137 * **Ctrl+Z** or **Meta+Z** triggers the undo function.
138
139 See also [[Writing>>#HWriting]] to find out how standard keys like Enter, Backspace, Delete or Tab behave.
140
141 == Interface ==
142
143 === Editing Area ===
144
145 image:rta.png
146
147 The editing area is the place where you will type in your text and format your document. It is a rich text area because you can see, while editing, how the text will look like after it is saved. Before you start typing make sure the editing area is focused. One way to focus the text area is to click on it. This should make the blinking insertion caret appear. You can control the caret using the arrow keys. Besides typing, the editing area allows you to select a piece of text. This is useful when you want to format your text. If your content becomes larger than the available space in the editing area the scrollbars, vertical or horizontal, will appear. The scrollbars allow you to go up and down, as well as left and right through your text.
148
149 === Toolbar ===
150
151 image:toolbar.png
152
153 The toolbar is the place where you can find most of the editor features. It is placed right on top of the editing area. Each feature can be activated through a widget like a button or a list box. Features can be grouped and groups of features are separated from one another using a small vertical bar. The toolbar gets updated whenever you take an action on the editing area (like typing a character or clicking). As a consequence, some features could be disabled depending on where you place the insertion caret inside the rich text area.
154
155 image:toolbarstate.png
156
157 A toolbar button can be in one of the four states depicted in the previous image. From left to right we have: not clicked, hovering, clicked and disabled. When a button is in the not clicked state it means the associated feature hasn't been activated on the current context. By current context we mean the place where the insertion caret or the selected text is inside the editing area. When you place the mouse pointer over a toolbar button the later enters the hovering state. In this state you can see a tooltip explaining what the associated feature does. If a toolbar button is in the clicked state then it means the associated features has been activated on the current context. By clicking the button again you can usually toggle off the effect of the feature (remove the bold style, remove the right alignment etc,). A toolbar button is disabled when you are not allowed to activate its feature in the current context.
158
159 Toolbar list boxes are also updated when you take an action on the editing area. The proper value is selected depending on the current context. If no value is selected then it means that none of the list box options match the value of the associated feature for the current context (i.e. none of the predefined fonts match the font of the current text selection; the text around the insertion caret has a non standard text size).
160
161 === Menus ===
162
163 image:menu.png
164
165 The menu bar is the place where you can find the advanced editing features. It is placed right on top of the toolbar. By clicking on a top menu item you can see what entries it has. Most of the top menu items have two sets of sub entries: insert/creation related and edit related. For instance, there is an insert link menu and an edit link menu. When you place the caret inside a link the edit link menu is activated. When you move the caret outside the link the insert link menu becomes active.
166
167 image:macroinsertmenu.png
168
169 Some of the menu items have an icon to help us easily recognize them. When a menu item is disabled it means its feature cannot be activated on the current context (the currently selected text or the text around the insertion caret).
170
171 === Tabs ===
172
173 image:tabs.png
174
175 The editor provides tabs to switch to source editing for advanced users. This tabs are situated right on top of the menu bar if the editor was configured to display them.
176
177 === Dialogs ===
178
179 Some of the editing features require additional information from the user. This information is taken using dialogs. Most of the dialogs are modal: the user can't edit while the dialog is opened. The editing is prevented using a glass panel so that the user can still see the text from the editing area while the dialog is opened. If the dialog covers a fragment of text the user wants to see then he can move the dialog by dragging it over the screen. In order to speed up the dragging and to allow the user to see as much as possible from the editing area, only the title bar is visible when the dialog is dragged.
180
181 image:symbolpickerdragging.png
182
183 Simple dialogs have a title bar and a body. The title bar has an icon on the left side followed by the dialog title. At the right end of the title bar there is the close button which acts like a cancel button.
184
185 image:colorpicker.png
186
187 The color picker is a special dialog that allows us to change the color of the selected text. Unlike the other dialogs, it auto hides when you click on the editing area. The current color is displayed using a bigger square, as it is depicted in the previous image (see the red square). See [[Colors>>#HColors]].
188
189 image:symbolpicker.png
190
191 The symbol picker is a special dialog that allows us to insert a special symbol (such as accented characters, trademark, currency symbol etc.) in place of the current text selection or at the caret position. Just click on the desired symbol to insert it. See [[Inserting Symbols>>#HInsertingSymbols]].
192
193 image:link2wikistep2.png
194
195 Complex dialogs are used in wizards. Their body is made of three parts: the header, the content and the footer. The header usually contains the title of the wizard step and the next/previous buttons. The content of the dialog includes the input controls used to collect data from the user. The footer usually contains the buttons for canceling the wizard or finishing it at the current step.
196
197 == Standard Features ==
198
199 {{toc scope="local" start="3"/}}
200
201 === Writing ===
202
203 The **Enter** key (also known as the **Return** key) produces a different effect depending on the context where it is pressed:
204
205 * creates a new list item if the caret is inside a non empty list item
206 * transforms an empty list item into plain text
207 * inserts a line break if the caret is inside a table cell
208 * inserts an empty line before the current heading or paragraph if the caret is at the beginning of a heading or paragraph
209 * creates a new paragraph if the caret is inside a paragraph or a heading
210
211 You can use **Shift+Enter** to force a line break in a context where the Enter key would produce a different effect. For instance you can press Shift+Enter inside a list item to generate a line break instead of creating a new list item. Advanced users can also use the Ctrl and Meta modifiers when the caret is inside nested block-level containers (i.e. paragraph inside list item inside table cell) to force the Enter key to be handled by the nearest block-level container. For instance, if the caret is inside a level one heading ("Title 1" formatting) which is inside a list item then:
212
213 * pressing Enter will create a new list item
214 * pressing Shift+Enter will create a line break in the heading
215 * pressing **Ctrl+Enter** or **Meta+Enter** will create a new paragraph after the heading, inside the list item
216
217 The **Backspace** and **Delete** keys can be used for deleting characters, whole words or the selected text. If you press **Ctrl+Backspace** or **Ctrl+Delete** you erase the whole word that is before or after, respectively, the insertion caret. The Backspace key ca also be used to remove the empty lines before a paragraph or heading if it is pressed at the beginning of a paragraph or heading.
218
219 The **Tab** key behaves also differently depending on the context where it is pressed:
220
221 * indents a list item if the caret is at the beginning of that list item
222 * moves the caret to the next table cell, creating a new table row if the caret is inside the last table cell
223 * inserts 4 spaces if none of the previous cases apply
224
225 **Shift+Tab** has the opposite effect of the Tab key:
226
227 * outdents a list item if the caret is a the beginning of that list item
228 * moves the caret to the previous table cell
229
230 See [[Keyboard Shortcuts>>#HKeyboardShortcuts]] for a list of key combinations supported by the editor.
231
232 === Text Formatting ===
233
234 Text formatting determines how your text will look in your document.
235
236 ==== Text Styles ====
237
238 You can change the way your text looks like by choosing whether the font should be bold ([[image:bold.gif||style="vertical-align: middle;"]]), italic ([[image:italic.gif||style="vertical-align: middle;"]]), underlined ([[image:underline.gif||style="vertical-align: middle;"]]), stroked through ([[image:strikethrough.gif||style="vertical-align: middle;"]]) or teletype ([[image:tt.gif||style="vertical-align: middle;"]]). To apply any of this styles you just have to click the associated toolbar button. The chosen style affects either the selected text or, if there is just the insertion caret, the next characters you'll be writing.
239
240 (% style="border: 1px solid rgb(221, 221, 221); width: 500px;" %)
241 (((
242 **This is a text with bold style**
243
244 //This is a text with italic style//
245
246 __This is a text with underline style__
247
248 --This is a text with strike through style--
249
250 ##This is a text with teletype style##
251 )))
252
253 You can mix any of these styles. To toggle off a text style click again the associated toolbar button. If you want to remove all the styles at once see [[Remove Formatting>>#HRemoveFormatting]].
254
255 (% style="border: 1px solid rgb(221, 221, 221); width: 500px;" %)
256 (((
257 You can mix **bold** and //italic// styles: **//Hello user!//**
258
259 You can mix //italic// and __underline__ styles: //__Hello user!__//
260
261 You can mix **bold**, ##teletype## and --strike through-- styles: **##--Hello user!--##**
262 )))
263
264 See [[Keyboard Shortcuts>>#HKeyboardShortcuts]] to find out how you can change the text style using only the keyboard.
265
266 ==== Subscript and Superscript ====
267
268 Subscript and superscript are usually used for writing simple mathematical formulas. Subscript is a way to put an index to a character. The subscript has a smaller font size than the normal text. To activate subscript you must click the [[image:subscript.gif||style="vertical-align: middle;"]] button from the toolbar. The superscript works in the same way as the subscript, the only difference being that the index is placed at the top. You can use the [[image:superscript.gif||style="vertical-align: middle;"]] button from the toolbar to write simple mathematical expressions like the "x to the power 2".
269
270 (% style="border: 1px solid rgb(221, 221, 221); width: 500px;" %)
271 (((
272 ##P,,ABC,, = L,,AB,, + L,,BC,, + L,,CA,,##
273
274 ##E = mc^^2^^##
275
276 ##P(x) = x,,1,,^^a^^ + x,,2,,^^b^^##
277 )))
278
279 You can mix subscript with superscript, though the result doesn't very nice. You can also apply [[Text Styles>>#HTextStyles]] to subscript and superscript text.
280
281 ==== Text Alignment ====
282
283 A paragraph of text or a heading can have its lines aligned to either of the sides of the page, as well as centering on it. You may also force the lines to take the entire space available in the document (like aligning to both sides at the same time).
284
285 To align your text at the **left** side of the editing area, press the [[image:justifyleft.gif||style="vertical-align: middle;"]] button on the toolbar.
286
287 (% style="border-style: solid; border-color: rgb(221, 221, 221) rgb(221, 221, 221) rgb(221, 221, 221) DarkRed; border-width: 1px 1px 1px 2px; width: 500px;" %)
288 (((
289 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer venenatis egestas dignissim. Duis arcu libero, dictum at consectetur sed, varius non leo. Curabitur vitae condimentum dui. Curabitur quis tincidunt velit.
290 )))
291
292 If you want instead to have the text aligned in the **center** of the page, just press the [[image:justifycenter.gif||style="vertical-align: middle;"]] button on the toolbar.
293
294 (% style="border: 1px solid rgb(221, 221, 221); width: 500px; text-align: center;" %)
295 (((
296 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer venenatis egestas dignissim. Duis arcu libero, dictum at consectetur sed, varius non leo. Curabitur vitae condimentum dui. Curabitur quis tincidunt velit.
297 )))
298
299 In order to align your text to the **right** side of the editing area, click the [[image:justifyright.gif||style="vertical-align: middle;"]] button from your toolbar.
300
301 (% style="border-style: solid; border-color: rgb(221, 221, 221) DarkRed rgb(221, 221, 221) rgb(221, 221, 221); border-width: 1px 2px 1px 1px; width: 500px; text-align: right;" %)
302 (((
303 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer venenatis egestas dignissim. Duis arcu libero, dictum at consectetur sed, varius non leo. Curabitur vitae condimentum dui. Curabitur quis tincidunt velit.
304 )))
305
306 If you want all lines to have the same line width then click the [[image:justifyfull||style="vertical-align: middle;"]] toolbar button.
307
308 (% style="border-style: solid; border-color: rgb(221, 221, 221) DarkRed; border-width: 1px 2px; width: 500px; text-align: justify;" %)
309 (((
310 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer venenatis egestas dignissim. Duis arcu libero, dictum at consectetur sed, varius non leo. Curabitur vitae condimentum dui. Curabitur quis tincidunt velit.
311 )))
312
313 ==== Headings ====
314
315 Headings can be used to organize your text. You can split the content in **sections** and **subsections** and then specify a title for each of them. You can choose the heading level to apply from the format list box which is found on the toolbar. If you want to remove the heading style just choose "Plain text" from the format list box.
316
317 image:formatexample.png
318
319 ==== Fonts ====
320
321 image:fontname.png
322
323 Fonts determine how the letters of your text look like. "Times New Roman" and "Arial" are among the most used fonts. To use a different font you have to select one from the font list box found on the toolbar.
324
325 (% style="border: 1px solid rgb(221, 221, 221); width: 500px;" %)
326 (((
327 (% style="font-family: comic sans ms;" %)This is a Comic Sans MS font.
328
329 (% style="font-family: courier new;" %)This is a Courier New font.
330
331 (% style="font-family: times new roman;" %)This is a Times New Roman font.
332 )))
333
334 The editor detects the font used around the insertion caret or by the selected text and updates the font list box accordingly.
335
336 ==== Text Size ====
337
338 image:fontsize.png
339
340 To change your font size pick one from the font size list box found on the toolbar.
341
342 (% style="border: 1px solid rgb(221, 221, 221); width: 500px;" %)
343 (((
344 (% style="font-size: 8pt;" %)This text's size is 8pt.
345
346 (% style="font-size: 18pt;" %)This text's size is 18pt.
347
348 (% style="font-size: 24pt;" %)This text's size is 24pt.
349 )))
350
351 The editor detects the font size and updates the toolbar list box accordingly.
352
353 ==== Colors ====
354
355 The other option to make your text look different is changing the text color or its background color. If you want to change your **text color** press the [[image:forecolor.gif||style="vertical-align: middle;"]] toolbar button and pick a color from the palette by clicking on it.
356
357 image:colorpicker.png
358
359 The current color is displayed using a //bigger// square, as you can see in the previous image.
360
361 (% style="border: 1px solid rgb(221, 221, 221); width: 500px;" %)
362 (((
363 (% style="color: red;" %)
364 This text is written in red.
365
366 (% style="color: green;" %)
367 This text is written in green.
368
369 (% style="color: blue;" %)This text is written in blue.
370 )))
371
372 You may also change the **text background color** using the [[image:backcolor.gif||style="vertical-align: middle;"]] button. As with other text styles, you can mix text color with background color.
373
374 (% style="border: 1px solid rgb(221, 221, 221); width: 500px;" %)
375 (((
376 (% style="background-color: yellow;" %)This text has yellow background.
377
378 (% style="color: red; background-color: lightGray;" %)This text is written in red and has a light gray background.
379 )))
380
381 ==== Remove Formatting ====
382
383 If you wish to remove all the styles applied to a piece of text (i.e. font, color, bold, italic, etc.), select it and press the [[image:removeformat.gif||style="vertical-align: middle;"]] button.
384
385 === Creating Lists ===
386
387 You can create two kinds of lists: **numbered** (also called **ordered** because the order of the list items is important) and **bulleted** (also called **unordered** because the order of the list items is not important). The only difference between these two types of lists is the symbol (a number or a bullet) preceding the list items; they behave the same. To start a list you have to place the caret on the line that you would like to become the first list item in your new list and click the toolbar button for the type of list you wish to create: [[image:ul.gif||style="vertical-align: middle;"]] for a bulleted list or [[image:ol.gif||style="vertical-align: middle;"]] for a numbered list.
388
389 image:listcreatestep1.png
390
391 image:listcreatestep2.png
392
393 You can also quickly create a list from a couple of lines by selecting those lines and pressing the toolbar button for the type of list you wish to create.
394
395 image:listcreatestep3.png
396
397 image:listcreatestep4.png
398
399 Once you have a list you can add more list items by using the **Enter** key. Pressing Enter in the middle of a list item splits that list item in two. Pressing Enter at the end of a list item creates a new empty list item.
400
401 image:listcreatestep5.png
402
403 image:listcreatestep6.png
404
405 You can create **sublists** by **indenting** list items. To do this click the [[image:indent.gif||style="vertical-align: middle;"]] button from the toolbar. Note that you can indent just one level because a sublist must always have a parent list. You can indent multiple list items at once though, by selecting them first. The **outdent** feature, [[image:outdent.gif||style="vertical-align: middle;"]], is the opposite of indent. Unlike indent, you can outdent a list item multiple levels. Outdenting a top level list item transforms it in plain text.
406
407 image:listcreatestep7.png
408
409 image:listcreatestep8.png
410
411 You can **mix** bulleted lists with numbered lists.
412
413 image:listcreatestep9.png
414
415 image:listcreatestep10.png
416
417 After you created the list, press the toolbar button for the associated list type to go back to plain text.
418
419 === Creating and Editing Links ===
420
421 In order to **create** a link you usually select the text that you would like to become the label of the link and then choose the right option from the "Link" menu based on the type of link you wish to create. You can change the label of the link later: in the link creation process, by editing the link after it was created or directly in the editing area. Be careful though that when you change the label in the link creation process or by editing the link the label looses its formatting (see [[Text Formatting>>#HTextFormatting]]). If you don't want to loose the formatting then edit the link label directly inside the editing area. Selecting the label before choosing a type of link from the "Link" menu is not required: you'll be asked to provide a label during the link creation process and this label will be inserted at the caret position. Moreover, you can select an image as the link label.
422
423 To **edit** the link properties (not just the label) you have to use the "Edit link" menu which is active only when a link is selected. To select a link you can either place the caret inside the link label or select a piece of the link label. If the link label is an image then you have to select that image.
424
425 To **remove** a link (unlink) you have to select the link and choose "Remove link" from the "Link" menu. Note that the link label (text or image) is not deleted from the document. In case the caret is at the beginning or at the end of the link label, but inside of it (i.e. typing changes the link label), the "Remove link" menu places the caret before or after the link, respectively (i.e. typing adds characters before or after the link respectively).
426
427 **Note**: You cannot create links inside links and you cannot create a link if the selected label spans through multiple blocks of text (paragraphs, headings, lists etc.). This last constraint is due to the fact that a link has to be in-line.
428
429 ==== Link to wiki page ====
430
431 To create a link to a wiki page choose "Wiki page" from the "Link" menu.
432
433 image:link2wikistep1.png
434
435 First you have to select the wiki page you wish to link to. You can use the tree to browse the exiting wiki pages. If you want to link to a page that doesn't exist yet then select "New page..." from the tree. This doesn't create a new page but just a link to a missing wiki page.
436
437 Advanced users can use the text box below the tree to quickly search for wiki pages. You have use this syntax: **WikiName:SpaceName.PageName**. The wiki name and the space name can be omitted. The text box will offer you suggestions based on the wiki pages that match your input.
438
439 After you select the target wiki page (either by using the tree or the text box) click the "Select" button to proceed to the next step.
440
441 image:link2wikistep2.png
442
443 Now you can edit the link parameters:
444
445 * the link label
446 * the tool tip: the text to display when the mouse cursor hovers over the link
447 * if the link should be opened in a new window or not
448
449 Click "Create link" when you're done. You will comeback to this dialog when editing a link.
450
451 image:link2wikistep3.png
452
453 Your link should be visible inside the editing area at this point. Try to hover the mouse cursor over the link or to edit the link label in place.
454
455 image:link2wikistep4.png
456
457 ==== Link to attachment ====
458
459 To create a link to an attachment choose "Attached file" from the "Link" menu.
460
461 image:link2attachmentstep1.png
462
463 First you have to select the attachment you wish to link to. You can choose from the files attached to the edited page. In our example we have three images attached to the current page. If you want to attach a new file then select "Upload new file" and click "Select". In our example we wanted to create a link to an attachment from a different wiki page than the one edited. For this we clicked on the "All pages" tab. If your attachment is on the current page then just click "Select" and skip the next step.
464
465 image:link2attachmentstep2.png
466
467 Use the tree to browse the wiki pages in search for the right attachment to link to. As you can see, each page has an "Attachments" child node that holds the attached files. Notice the "Upload file..." entry which you can use to attach a new file to the corresponding page.
468
469 Advanced users can use the text box below the tree to quickly search for attached files. You have use this syntax: **WikiName:SpaceName.PageName@AttachmentFileName**. The wiki name, the space name and the page name can be omitted. The text box will offer you suggestions based on the attachment file names that match your input.
470
471 After you select the attachment (either by using the tree or the text box) click the "Select" button to proceed to the next step.
472
473 image:link2attachmentstep3.png
474
475 Now you can edit the link parameters:
476
477 * the link label
478 * the tool tip: the text to display when the mouse cursor hovers over the link
479 * if the link should be opened in a new window or not
480
481 This are the same parameters as for a link to a wiki page. Click "Create link" when you're done. You will comeback to this dialog when editing a link.
482
483 image:link2attachmentstep4.png
484
485 Your link should be visible inside the editing area at this point. You can view or download the attachment by following this link in view mode.
486
487 image:link2attachmentstep5.png
488
489 ==== Link to web page ====
490
491 To create a link to a web page is very easy. You have to choose "Web page" from the "Link" menu and then fill in the link parameters:
492
493 * the address of the web page you wish to link to (you can paste here an address copied from the web browser's address bar). If you don't specify a protocol (like we did in out example) then the default HTTP protocol is considered. So you can simply type __www.xwiki.org__ and the final address will be __http:~/~/www.xwiki.org__. Of course you can use other protocols if you want to.
494 * the link label
495 * the tool tip: the text to display when the mouse cursor hovers over the link
496 * if the link should be opened in a new window or not
497
498 Click "Create link" when you're done.
499
500 image:link2webpage.png
501
502 ==== Link to email ====
503
504 Creating a link to an email address is much line creating a link to a web page. The only difference is that you have to specify an email address instead of a web page address.
505
506 image:link2email.png
507
508 ==== Image link ====
509
510 You can use an image as the label of a link. To do this you have to select the image and then follow the steps for the type of link you wish to create. Note that you won't be able to edit the link label during the link creation process. If you want to change the label of an image link after it was created then edit the image.
511
512 === Inserting Symbols ===
513
514 In order to insert symbols or special characters (accented characters, trademark, currency symbol etc.) you have to follow this steps:
515
516 1. place the caret where you would like the symbol to be inserted //or// select the text that you would like to be replaced by the inserted symbol
517 1. press the [[image:charmap.gif||style="vertical-align: middle;"]] button on the toolbar
518 1. click on the symbol you wish to insert
519
520 image:symbolpicker.png
521
522 The symbol picker automatically closes after you choose a symbol. The caret is placed after the inserted symbol so you can open the symbol picker again if you wish to insert more symbols. Inserted symbols are like any other characters you type so you can use the Delete or Backspace keys to remove them and of course you can apply [[Text Formatting>>#HTextFormatting]].
523
524 (% style="border: 1px solid rgb(221, 221, 221); width: 500px;" %)
525 (((
526 **10£**
527
528 iTunes(% style="color: rgb(255, 153, 0);" %)®
529
530 (% style="background-color: rgb(255, 255, 0);" %)? ? ?r²
531 )))
532
533 === Inserting and Editing Images ===
534
535 To insert an image place the caret where you want the image to be inserted and choose "Insert image" from the "Image" menu. Make sure you don't have an image selected before opening the "Image" menu because otherwise you'll see the edit image menu entries and no "Insert image" entry.
536
537 image:imagestep1.png
538
539 You have three ways to specify which image to insert:
540
541 * Choose from the images already attached to the edited page. In our example there are two images already attached to the edited page: the Ubuntu logo and the Firefox logo.
542 * Choose from the images attached to the other pages. For this you have to click on the "All pages" tab and specify the page where the image you want is attached.
543 * Upload a new image to the edited page.
544
545 Whatever option you choose you have to click on the "Select" button to move to the next step.
546
547 image:imagestep2.png
548
549 In our example we choose to upload a new image. Browse through your local files and pick the image you want then click on the "Upload" button to attach the image to the edited page.
550
551 image:imagestep3.png
552
553 In the final step, before the image is inserted, you can edit the image properties. Here's what you can specify:
554
555 * the image **width** and **height** on the page (i.e. how much space does the image take on the page)
556 * an **alternative text** that is printed instead on the image when the image can't be displayed
557 * if the text should flow around the image (**horizontal alignment**) or not; if you want the image to be on the left and the text to flow on its right side then choose //Left//; if you want the image to be on the right and the text to flow on its left side then choose //Right//; if you want the image to be centered horizontally on the page then choose //Center// but note that in this case the text can't flow on the left nor on the right side of the image.
558 * how is the image aligned relative to the height of the line where it is inserted (**vertical alignment**); if you want the image to be aligned to the top of the line then choose //Top//; if you want the image to be centered vertically on the line where it is inserted then choose //Middle//; if you want the image to be aligned to the bottom of the line then choose //Bottom//.
559
560 **NOTE**: You can't set both the horizontal and the vertical alignment for an image. If you align an image horizontally then it's not part of a line anymore (i.e. multiple lines of text can flow on its left or right side) and thus setting the position of that image inside //a line// has no sense.
561
562 Click on the "Insert image" button when you're done. Note that you don't have to set all the image properties now: you can edit the image later.
563
564 image:imagestep4.png
565
566 You should see the image in the editing area. To select it simply click on it. Notice the resize handlers that appear around the image when it is selected. You can resize the image inside the editing area by dragging them. If you open the "Image" menu when an image is selected you can see the "Edit image" menu entry.
567
568 image:imagestep5.png
569
570 image:imagestep6.png
571
572 To delete an image you can select it and press the **Delete** key or choose "Remove image" from the "Image" menu.
573
574 === Creating and Editing Tables ===
575
576 To create an empty table place the caret where you would like the new table to be inserted and choose "Insert table" from the "Table" menu. Currently you cannot insert a table inside another table so, before opening the "Table" menu, make sure you don't have the caret inside a table cell.
577
578 image:tablestep1.png
579
580 In the opened dialog you can specify the number of rows and columns the new table should have and if you want a table header or not. You can leave the default number of rows and columns if you don't know how many you'll need because you can add rows and columns later. You can't add a table header later though so you must decide now if you need one or not. When you're done, click the "Insert" button.
581
582 image:tablestep2.png
583
584 You should see now the table in your editing area. Fill in the table cells. You can navigate from cell to cell using the **arrow keys**. See [[Writing>>#HWriting]] to find out how you can use the **Tab** key to navigate through table cells. See also [[Keyboard Shortcuts>>#HKeyboardShortcuts]] if you can't move the caret before or after the table.
585
586 image:tablestep3.png
587
588 If you need a new column you can insert one before or after an existing column. Just place the caret in one of the cells from the reference column and choose the appropriate option from the "Table" menu. In our example we choose to insert a new column after the "Index" column (i.e. the "Index" column was the reference column in our case). You can also delete columns in the same manner: place the caret in one of the cells from the column to be deleted and choose "Delete column" from the "Table" menu.
589
590 image:tablestep4.png
591
592 Notice how in the previous image the "Insert row before" option is disabled. This happened because we placed the caret in the table header and table rows are not allowed before the table header.
593
594 image:tablestep5.png
595
596 Inserting a new row is much like inserting a new column. First you choose a reference row by placing the caret in one of its cells and then you choose the appropriate option from the "Table" menu. In our example we opted for inserting a new row before the the first one (i.e. the first row was the reference row in our case). For this we picked "Insert row before" from the "Table" menu. You can delete table rows in the same manner: place the caret in one of the cells from the row to be deleted and choose "Delete row" from the "Table" menu.
597
598 image:tablestep6.png
599
600 As you can see the new table row is empty and ready to be filled.
601
602 image:tablestep7.png
603
604 To delete a table place the caret in any of its cells and choose "Delete table" from the "Table" menu.
605
606 === Inserting and Editing Macros ===
607
608 A macro is a piece of code that you can reuse in your pages. Macros are written by developers to do common things like displaying an information box, a table of contents or the avatar for a specific user. You don't need programming skills to use macros. Let's follow the steps to insert a table of contents to see how easy it is to work with macros.
609
610 Start by writing a few sections in the editing area then create an empty line where you want the table of contents to be inserted. In our example, we pressed Enter after "Space" in order to create the empty line. You can insert the table of contents in other places if you want. Leave the caret on the empty line and choose "Insert Macro..." from the "Macro" menu.
611
612 image:macroinsertstep1.png
613
614 You should see a dialog with all the available macros. Each macro has a short description that will give you a hint about what the macro does. Look for the ToC macro. You can browse the list of macros using the keyboard: Up/Down selects the previous/next item in the list, Home/End selects the first/last item in the list. Click "Select" once you have the ToC macro highlighted.
615
616 image:macroinsertstep2.png
617
618 Parameters control the behavior and the output of a macro. Some parameters are mandatory. You can distinguish them from the rest by their color: green. The ToC macro has only optional parameters. One special macro parameter is the macro content. The ToC macro doesn't require any content but other macros like Info use the content as the main source for their output. You can say that the ToC macro uses the entire page as its content, so you don't have to specify the content.
619
620 Change the ToC parameters if you wish but note that you can come back to this step later by editing the inserted ToC macro. We kept the default values in our example. Click "Apply" when you're done.
621
622 image:macroinsertstep3.png
623
624 At this point you should see the ToC macro inserted in your document.
625
626 image:macroinsertstep4.png
627
628 Next, we add more sections to the document and choose "Refresh" from the "Macro" menu in order to update the table of contents.
629
630 image:macroinsertstep5.png
631
632 The table of contents should be updated now.
633
634 image:macroinsertstep6.png
635
636 If you think the table of contents takes a lot of space you can collapse it. In fact you can collapse any macro. First select the macro by clicking on it and then click again to toggle between collapsed and expanded states. You can also use the "Macro" menu to collapse or expand all the inserted macros. Collapsed macros display only their name and an icon.
637
638 image:macroinsertstep7.png
639
640 === Importing Office Content ===
641
642 The editor allows you to import content from office applications like **OpenOffice Writer** or **Microsoft Word**. If you want to insert just a fragment from an office document you can copy it from the office application you use and then click the [[image:importer.gif||style="vertical-align: middle;"]] button from the editor toolbar.
643
644 image:officeimporterstep1.png
645
646 **Paste** what you've copied from the office application in the text area that you can see on the opened dialog. Notice the "//Filter styles//" check box in bottom left corner of the dialog. If you want the pasted text to look as much as possible as in your office application then leave the check box unchecked. Otherwise, if you care only about the content and not the text styles then check "Filter styles". This will result in a much cleaner document but the result may look different than in your office application. Click the "Import" button in the end.
647
648 image:officeimporterstep2.png
649
650 You should see the office content in the editing area. It was inserted at the caret position or in place of the selected text. You can edit the imported content if you want.
651
652 image:officeimporterstep3.png
653
654 In case you need to **import** an office document and not just a fragment you can use the "//File//" tab on the Office Importer dialog. **NOTE**: this feature requires special setup in order to work. Ask your system administrator to enable it.
655
656 image:officeimporterstep4.png
657
658 See also the [[Office Importer Application>>http://code.xwiki.org/xwiki/bin/view/Applications/OfficeImporterApplication]].
659
660 === Undo and Redo ===
661
662 The **undo** function is very useful in a situation where you've made a mistake and you want to correct it fast. By clicking the [[image:undo.gif||style="vertical-align: middle;"]] button on the toolbar or by using the **Ctrl+Z** shortcut key combination you can restore the state of the editing area before your last action. The editor manages to do this by keeping a history of the actions you take on the rich text area. Examples of actions that generate history entries are: typing a word, creating a new paragraph, applying a style, deleting a piece of text. The undo function allows you go back in this history. You may of course go many steps back, not just one step, and continue editing from that point.
663
664 The **redo** function is the opposite of the undo function. If you used the undo function and then for any reason decided to go back to the state before the undo you must use the redo function. To activate it press [[image:redo.gif||style="vertical-align: middle;"]] on the toolbar or use the **Ctrl+Y** shortcut key combination. As you can see, the undo and redo functions allow you to go back and forth in the history of the editing area.

Get Connected