=========================== Basic Editing Functionality =========================== ------------------------------- Overview of the document viewer ------------------------------- Documents are viewed and edited in the document viewer: .. image:: _static/document-viewer.png On the top of the screen, the breadcrumbs are used to navigate back to the workspace, or between a :term:`Variant` and the parent document. On the left, the document navigation menu and navigation column offer a number of functions related to navigating the document. See the `Left-hand Navigation Column`_ section for more information. The right-hand column is used for general function buttons: :guilabel:`Save`, :guilabel:`Share`, :guilabel:`Add Comment` etc. The lower half of this column displays any available version or :term:`Variant` of the document, together with any actions to perform on them, such as accepting or rejecting a variant, or merging it into the parent document. This column is also used to edit individual comments. .. figure:: _static/document-metadata.png :align: right :figwidth: 400px | The centre of the window is used to display the document. This is a tabbed window: the main document is always behind the :guilabel:`BASELINE` tab. The document meta data is visible behind the :guilabel:`METADATA` tab. This can not be edited at present. | | A :guilabel:`MERGE VARIANT` tab is also activated (when a variant is merged) as part of the document editing workflow. See below and the :ref:`Editing Workflows <06-specification-drafting-workflow:editing workflows>` section for more information. | .. tip:: Remember to save your work regularly. The browser tab will show an indication of any unsaved changes in the document being edited. .. tip:: Display multiple documents by opening each document in a new browser window or tab. When you log out of NWM from one tab, you log out from all tabs. However you are warned of unsaved changes in other open tabs. ---------- PDF Export ---------- To export a document click on the :guilabel:`Export PDF` button (see |red-one|). The PDF Export function formats the document automatically, depending on the type of document (e.g. ETSI or 3GPP specification or other document types). .. image:: _static/export-to-pdf.png .. tip:: Any user may at any time export the document to PDF, and then open the PDF file in a recent version of Word. .. attention:: Importing PDF to Word is convenient, but doesn't always give the best results. Here are some alternatives: #. Adobe PDF converter: either with full Acrobat installed if you have it, or online at https://www.adobe.com/acrobat/online/pdf-to-word.html (may require creating an Adobe account for free). Not the best conversion result. #. https://pdf2docx.com/. Free online conversion tool (there are many, this one seems to produce better results than other tools but it has not been heavily tested. USE WITH CAUTION – we have no idea who is behind this tool. Do not use for anything confidential. #. Upload the PDF to Google Drive. Open it in Google Docs. Download as a Word file from Google Docs (File/Download/Microsoft Word). This is a bit more cumbersome but probably safer than the previous solution. Gives good results. For the best Word document result, consider combining output from each of these tools. A better way of generating Word files is being studied. --------------------------- Left-hand Navigation Column --------------------------- The Navigation Column on the left of the document viewer window offer a number of ways to navigate the document. Mouse-over each icon on the top menu to find its function. .. image:: _static/left-pane.png .. rubric:: |toc-icon| Table of Contents View and browse the structure of the document. To insert and edit headings, see `Headings`_ below. .. rubric:: |comments-icon| Comments View and navigate the list of comments in the document. A comment is also known as a :term:`Discussion Thread`. .. rubric:: |errors-icon| Errors *This feature is activated for documents which must obey specific drafting rules.* View and navigate the list of errors detected in the document. Paragraphs with errors are marked with a red background. .. rubric:: |search-icon| Search Search for text in the document. ------- Toolbar ------- The editing toolbar becomes visible when a document is in editing mode. .. image:: _static/editing-toolbar.png Use this toolbar to change text to bold, underline or italics, to insert a `heading `_, insert an `ordered (numbered) `_ or `unordered (bulleted) list `_, insert a `table `_ or a `figure `_. You can also indent or outdent to decrease or increase heading levels or increase or decrease list indentation. .. figure:: _static/undo-redo-buttons.png :align: right .. figure:: _static/dropdown-editing-menu1.png :align: right :figwidth: 200px | | Further functions are available in the toolbar behind the :guilabel:`...` buttons. | | A first set of functions will enable the insertion of code blocks, notes, formulas, examples, annexes, abbreviation lists and a tabular message. | | *At present, the Formula and Note function is available.* | | .. figure:: _static/dropdown-editing-menu2.png :align: right :figwidth: 200px | | A further set of functions operate on selected text: strikethrough, superscript and subscript. Other functions, not yet available, will allow you to designate selected text an abbreviation, insert a reference and insert a comment (same function as the :guilabel:`Add Comment` button in the right-hand column). | -------------------- Indicative Scrollbar -------------------- With the support of large documents comes an indicative scrollbar. **Navigation with the scrollbar** - The scrollbar increases its width on hover, and the knob gets a darker color. - Now you can click on the knob, and the indicator box displays the current location (see |red-one|). - As you drag the knob, the indicator box displays where you will ‘land’ when you release the click. .. image:: _static/indicator-box.png :scale: 65 % **Document size** The size of the knob indicates the size of the document: Small knob -> large document Large knob -> small document .. attention:: The scrollbar provides approximative information about the document's location and size. This is because of the 'large document algorithm', which displays only portions of a document. ---------- Paragraphs ---------- A newly created document contains an empty paragraph. This is the starting point for you to edit the document (e.g. to insert a heading or to start typing text). A paragraph can be inserted after a heading by putting the cursor at the end of the heading and pressing the Enter key. A paragraph can also be inserted after a figure, table or feedback form. Place the cursor in the caption of any of the beforementioned objects and press the Enter key. A new paragraph will be created after the current object, and you can continue to edit. The following formatting is available: - Bold - Italic - Underline - Strikethrough - Superscript - Subscript .. Tip:: The shortcuts Ctrl+B (Bold), Ctrl+U (Underline) and Ctrl+I (Italic) are available. -------- Headings -------- To insert a heading, place the insertion point (cursor) anywhere in a paragraph or heading and click the :guilabel:`Heading` button on the editing toolbar. .. image:: _static/editing-toolbar-heading.png The following insertion behaviour is available: - Insert a heading via the toolbar - Cursor anywhere in a heading -> A new heading is inserted after the current heading - Cursor anywhere in a paragraph -> A new heading is inserted at the current cursor position (Inserting a heading in the middle of the text of a paragraph will cause the paragraph to split) - Insert a heading via the Enter key - Cursor at the start of a heading -> A new heading is inserted before the current heading - Cursor in the middle of a heading -> The current Heading is split into two headings - Cursor at the end of a heading -> A new paragraph is inserted after the heading The following deletion behaviour is available: - To delete a heading, use the Backspace or Delete key Headings are automatically numbered. .. rubric:: Heading levels: :name: heading-levels - Typically, a newly inserted heading will have the same heading level as the heading of the current clause. However, inserting a heading in a clause which has a sub-clause will result in a heading level of the sub-clause. - To lower the heading level, use the :guilabel:`Indent` button on the toolbar. To increase the heading level, use the :guilabel:`Outdent` button. - Sub-headings are indented/outdented with their parent-headings .. Tip:: Shortcuts Tab/Shift+tab for indenting/outdenting Headings are available. The shortcuts work only when the cursor is placed at the start of the text. .. Tip:: In order to insert a heading after a Feedback Form, figure or table, place the cursor in the caption field and press :kbd:`Enter`. A new paragraph will be created after the current object, and you may insert a heading in this paragraph. ----- Lists ----- Ordered (numbered) and unordered (symbol) lists can be inserted anywhere in a document. .. rubric:: Unordered Lists :name: unordered-lists To insert an unordered list, use the :guilabel:`Unordered List` toolbar button: .. image:: _static/editing-toolbar-unordered.png Alternatively, starting a new paragraph with the :kbd:`dash` or :kbd:`minus` (:kbd:`-`) character will convert the paragraph to an unordered list. .. rubric:: Ordered Lists :name: ordered-lists To insert an ordered list, use the :guilabel:`Ordered List` toolbar button: .. image:: _static/editing-toolbar-ordered.png Alternatively, starting a new paragraph with the :kbd:`plus` (:kbd:`+`) character will convert the paragraph to an ordered list. Convert an ordered list to an unordered list, or the opposite, using these two buttons. .. rubric:: List Indentation :name: list-indentation Increase the indentation of a list item using the :guilabel:`Indent` toolbar button: .. image:: _static/editing-toolbar-indent.png Decrease the indentation of a list item using the :guilabel:`Outdent` toolbar button. .. image:: _static/editing-toolbar-outdent.png Increasing or decreasing the indentation level of a list item will also increase or decrease the indentation level of child items (i.e. items of a lower indentation level). .. Tip:: Shortcuts Tab/Shift+tab for indenting/outdenting List items are available. The formatting and numbering of lists is as follows, and is fixed: .. centered:: |unordered list| |ordered list| .. centered:: Unordered and Ordered Lists .. rubric:: More on Lists To insert a second line in a list item, press :kbd:`Enter` at the end of a list item. This will insert a new list item of the same level immediately below. Then delete the number/icon of the new list item. Pressing :kbd:`Enter` with the cursor in the middle of a list item will split that item and create a new list item at the same level with the remaining text. Pressing :kbd:`Enter` with the cursor at the start of a list item will insert a new item at the same level immediately above the current item. To turn a list item to normal text, outdent it until it becomes aligned with other normal text paragraphs. To split or to leave a list, press :kbd:`Enter` twice. To join two list items, put the cursor at the end of the first list item and press twice DELETE. Alternatively, put the cursor at the start of the second list item and press twice BACKSPACE. To insert a list item inside a table cell, use the shortcuts :kbd:`-` or :kbd:`+`. .. attention:: Multiple List items cannot be selected and indented. Inserting a Heading, Figure, Table or Feedback Form within a List creates an error. You cannot insert a List when the cursor is in a Heading. The cursor needs to be in a paragraph. ------- Figures ------- To insert a figure after the current paragraph, use the :guilabel:`Figure` toolbar button: .. image:: _static/editing-toolbar-figure.png A figure placeholder is inserted. Use this to drag/drop or browse for an image file to insert as the figure. Most typical image file types are supported. .. image:: _static/edit-figure.png The figure title can be directly edited at the bottom of the figure placeholder. Figure editing buttons and fuctions become available when a document is in edit mode (e.g. when editing a new document or a new :term:`Variant`). Click inside the figure placeholder to make the buttons appear: .. image:: _static/figure-3-buttons.png :align: center To change a figure, use the :guilabel:`Select Image` button in the top right-hand corner of the figure placeholder and select a new image file to insert, replacing the previous one. To delete a figure, use the :guilabel:`Delete Figure` button in the top right-hand corner of the figure placeholder. This deletes the entire Figure placeholder, any image it contained, the figure note and title. A figure note can also be inserted using the :guilabel:`Figure Note` button at the top right-hand corner of the figure placeholder. .. note:: Modifying the image layout, border, size and position is not yet possible. .. note:: Figure numbering can be set to be continuous throughout a document, based on the current clause number, or based on the top-level clause number. In future this will be configurable by a document owner or the Technical Officer. At present it is not user-configurable. The selected numbering scheme can be seen as part of the document meta data. ------ Tables ------ To insert a table after the current paragraph, use the :guilabel:`Table` toolbar button: .. image:: _static/editing-toolbar-table.png Next, choose the number of rows and columns required. Rows or columns can also be added or deleted later. .. image:: _static/table-insert-table.png When in editing mode, a table is enclosed in a blue border. To edit a table (in a document which is in edit mode), click inside the table to make the blue border appear. A :guilabel:`Delete Table` button also appears on the top right when in table editing mode. Edit the cell contents directly. Use :kbd:`Tab` or :kbd:`Shift-Tab` to move from cell to cell. Multiple paragraphs can be placed in a cell, and text formatting can also be used. At present, a figure cannot be placed in a table cell. Operations can be performed on rows, columns or selected cells: when in table edit mode, use the arrow buttons above each column or to the left of each row (see example below) to view the available choices. In order to apply an alignment only to one cell, you need to select the cell, and then apply the alignment action via the arrow button. The table title can be edited directly, in the field below the table. .. image:: _static/table-editing-mode-v1.png While table size, layout and formatting controls are not yet available and will depend on the stylesheet of the document type being edited, rows or columns can be marked as headers, with the following effect: .. image:: _static/table-header-row.png .. attention:: Selecting and merging cells will delete the contents of all the cells being merged. Merge cells before adding contents to them. ----- Notes ----- To insert a note, use the :guilabel:`Note` toolbar button: .. image:: _static/editing-toolbar-note.png :scale: 80 % Notes are auto-numbered with local scope. Each clause resets the note counter. ----------------------- Copy & Paste inside NWM ----------------------- You can copy or cut NWM elements such as table, figure, feedback form, formula etc. and paste it at another location of your NWM document. 1. mouse-over the element -> the element gets a blue frame 2. click on the element -> the element opens 3. use the keyboard short cuts ctrl+c or ctrl+x -> the element is in the copy buffer 4. paste with the keyboard shortcut ctrl+v in any location .. attention:: To select a table, click in the whitespace between the blue frame and the table cells. Do not click inside a table cell. ------------------------------ Pasting Large Content into NWM ------------------------------ Pasting data from external sources requires converting the data to the NWM format, which is computation-intensive. A notification banner is displayed while converting: .. image:: _static/banner-paste-normal.png :scale: 65 % Another notification banner is displayed while converting large data: .. image:: _static/banner-paste-large.png :scale: 65 % .. attention:: The conversion process does not paste images; it only creates empty figure elements, which you need to fill with the images. See the chapter below :ref:`Pasting Images<04-basic-editing:Pasting Images>` to understand how to do this. Pasting Images ^^^^^^^^^^^^^^ You can copy&paste images from an external document (such as WORD etc.) into your NWM document: * Select the required image in the external source. * Copy the image. * Either paste the image * anywhere in the text of your NWM document, or * into a figure element. Click on the figure element in which you want to add the image and paste the image. .. attention:: Only the formats png and jpg are supported. WORD Drawing Canvas/Shapes etc. are not supported. --------------------------- Drag & Drop Images into NWM --------------------------- You can drag an image file from your file explorer and drop it into your NWM document. * Either drop the image * anywhere in the text of your NWM document, or * into a figure element. .. attention:: Only the formats png and jpg are supported. WORD Drawing Canvas/Shapes etc. are not supported. ---------------- Full Screen Mode ---------------- You can click on the full screen icon (see |red-one|), to obtain a display which covers the full screen. .. image:: _static/full-screen-mode.png ------------------- Wide viewing window ------------------- Make the viewing window wider using the two blue arrows at the bottom of the screen. .. image:: _static/make-viewing-range_wider.gif :scale: 50 % When the sidebar is collapsed, in order to expand the sidebar again (making the viewing window smaller), you can click on the blue arrow, but you can also simply click into the sidebar itself. .. image:: _static/make-viewing-range_smaller.gif :scale: 50 % .. Tip:: The shortcuts CTRL + ALT + -> / <- can be used to open/close the side panes. ------------------ In-document Search ------------------ Overview ^^^^^^^^ Click on the search icon to search for text in a document. .. image:: _static/search-icon.png :scale: 65 % All search results are listed in the left pane and are highlighted in grey inside the document (see |red-one|). Search results are grouped by document clause (see |red-two|). Search is case-insensitive and all formatting is ignored when searching. .. image:: _static/search-items-grey.png :scale: 65 % When a search result is selected in the left pane, the editor opens the corresponding location in the document and highlights the result in yellow (see |red-three|). Alternatively, use the Previous and Next element buttons for navigation (see |red-four|). .. image:: _static/search-items-yellow.png :scale: 65 % If there are more matching items than can be shown in the left pane (see |red-five|), then a 'Load more' button is displayed (see |red-six|). .. image:: _static/show-more-search-items.png :scale: 65 % .. Tip:: The shortcut :guilabel:`CTRL+F` can be used to enter the search mode. .. Attention:: Pressing :guilabel:`CTRL+F` twice opens the browser search. How to search in a table? ^^^^^^^^^^^^^^^^^^^^^^^^^ The search covers table titles. In order to see search results inside the table, follow these steps: - Scroll at least once to the table - The search results from inside the table will be added automatically to the left hand pane - Search inside the table will continue to work even when you scroll to another location .. Note:: Scrolling to an object in order to search inside it, is common practice for web browsers. However, in a future release it won't be necessary to scroll to a table in order to see the search results. How to search in a figure? ^^^^^^^^^^^^^^^^^^^^^^^^^^ The search covers figure titles. - Text search inside figures or images is not supported. How to search in a Feedback Form? ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ The search covers the titles of Feedback Forms. In order to search inside a Feedback Form, first expand the feedback form at least once: - Expand the feedback form - The search results from inside the feedback form will be added automatically to the left hand pane (see |red-one|) - When selected, the matching item inside the feedback form is highlighted in yellow (see |red-two|) - Search inside the feedback form will continue to work even when you scroll to another location .. Note:: In a future release it won't be necessary to expand the feedback form in order to see the inside search results. .. image:: _static/search-feedback-form.png :scale: 65 % .. |search-icon| image:: _static/tool-icon-search.png .. |toc-icon| image:: _static/tool-icon-toc.png .. |figures-icon| image:: _static/tool-icon-figures.png .. |tables-icon| image:: _static/tool-icon-tables.png .. |requirements-icon| image:: _static/tool-icon-requirements.png .. |comments-icon| image:: _static/tool-icon-comments.png .. |abbreviations-icon| image:: _static/tool-icon-abbreviations.png .. |references-icon| image:: _static/tool-icon-references.png .. |errors-icon| image:: _static/tool-icon-errors.png .. |unordered list| image:: _static/list-levels-unordered.png .. |ordered list| image:: _static/list-levels-ordered.png .. |figure-3-buttons| image:: _static/figure-3-buttons.png .. |red-one| image:: _static/red-one.png :height: 25 .. |red-two| image:: _static/red-two.png :height: 25 .. |red-three| image:: _static/red-three.png :height: 25 .. |red-four| image:: _static/red-four.png :height: 25 .. |red-five| image:: _static/red-five.png :height: 25 .. |red-six| image:: _static/red-six.png :height: 25