Skip to content

Commit 5a70875

Browse files
authored
Merge pull request #1297 from wiktor-obrebski/feat/gui-notes
Feat `gui/notes`
2 parents ebb22f3 + 9fff519 commit 5a70875

7 files changed

Lines changed: 624 additions & 236 deletions

File tree

docs/gui/journal.rst

Lines changed: 30 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -8,68 +8,47 @@ gui/journal
88
The `gui/journal` interface makes it easy to take notes and document
99
important details for the fortresses.
1010

11-
With this multi-line text editor, you can keep track of your fortress's
12-
background story, goals, notable events, and both short- and long-term plans.
11+
With this multi-line text editor,
12+
you can keep track of your fortress's background story, goals, notable events,
13+
and both short-term and long-term plans.
1314

1415
This is particularly useful when you need to take a longer break from the game.
15-
Having detailed notes makes it much easier to resume your game after a few
16-
weeks or months without losing track of your progress and objectives.
16+
Having detailed notes makes it much easier to resume your game after
17+
a few weeks or months, without losing track of your progress and objectives.
1718

1819
Supported Features
1920
------------------
2021

21-
- Cursor Control: Navigate through text using arrow keys (Left, Right, Up,
22-
and Down) for precise cursor placement.
23-
- Fast Rewind: Use :kbd:`Ctrl` + :kbd:`Left` and :kbd:`Ctrl` + :kbd:`Right` to
24-
move the cursor one word back or forward.
25-
- Longest X Position Memory: The cursor remembers the longest x position when
26-
moving up or down, making vertical navigation more intuitive.
27-
- Mouse Control: Use the mouse to position the cursor within the text,
28-
providing an alternative to keyboard navigation.
29-
- New Lines: Easily insert new lines using the :kbd:`Enter` key, supporting
30-
multiline text input.
31-
- Text Wrapping: Text automatically wraps within the editor, ensuring lines fit
32-
within the display without manual adjustments.
33-
- Backspace Support: Use the backspace key to delete characters to the left of
34-
the cursor.
22+
- Cursor Control: Navigate through text using arrow keys (left, right, up, down) for precise cursor placement.
23+
- Fast Rewind: Use :kbd:`Ctrl` + :kbd:`Left` / :kbd:`Ctrl` + :kbd:`B` and :kbd:`Ctrl` + :kbd:`Right` / :kbd:`Ctrl` + :kbd:`F` to move the cursor one word back or forward.
24+
- Longest X Position Memory: The cursor remembers the longest x position when moving up or down, making vertical navigation more intuitive.
25+
- Mouse Control: Use the mouse to position the cursor within the text, providing an alternative to keyboard navigation.
26+
- New Lines: Easily insert new lines using the :kbd:`Enter` key, supporting multiline text input.
27+
- Text Wrapping: Text automatically wraps within the editor, ensuring lines fit within the display without manual adjustments.
28+
- Backspace Support: Use the backspace key to delete characters to the left of the cursor.
3529
- Delete Character: :kbd:`Delete` deletes the character under the cursor.
36-
- Line Navigation: :kbd:`Home` moves the cursor to the beginning of the current
37-
line, and :kbd:`End` moves it to the end.
38-
- Delete Current Line: :kbd:`Ctrl` + :kbd:`U` deletes the entire current line
39-
where the cursor is located.
40-
- Delete Rest of Line: :kbd:`Ctrl` + :kbd:`K` deletes text from the cursor to
41-
the end of the line.
42-
- Delete Last Word: :kbd:`Ctrl` + :kbd:`W` removes the word immediately before
43-
the cursor.
44-
- Text Selection: Select text with the mouse, with support for replacing or
45-
removing selected text.
46-
- Jump to Beginning/End: Quickly move the cursor to the beginning or end of the
47-
text using :kbd:`Ctrl` + :kbd:`Home` and :kbd:`Ctrl` + :kbd:`End`.
48-
- Select Word/Line: Use double click to select current word, or triple click to
49-
select current line
30+
- Line Navigation: :kbd:`Home` moves the cursor to the beginning of the current line, and :kbd:`End` moves it to the end.
31+
- Delete Current Line: :kbd:`Ctrl` + :kbd:`U` deletes the entire current line where the cursor is located.
32+
- Delete Rest of Line: :kbd:`Ctrl` + :kbd:`K` deletes text from the cursor to the end of the line.
33+
- Delete Last Word: :kbd:`Ctrl` + :kbd:`W` removes the word immediately before the cursor.
34+
- Text Selection: Select text with the mouse, with support for replacing or removing selected text.
35+
- Jump to Beginning/End: Quickly move the cursor to the beginning or end of the text using :kbd:`Shift` + :kbd:`Up` and :kbd:`Shift` + :kbd:`Down`.
36+
- Select Word/Line: Use double click to select current word, or triple click to select current line
5037
- Select All: Select entire text by :kbd:`Ctrl` + :kbd:`A`
51-
- Undo/Redo: Undo/Redo changes by :kbd:`Ctrl` + :kbd:`Z` / :kbd:`Ctrl` +
52-
:kbd:`Y`
53-
- Clipboard Operations: Perform OS clipboard cut, copy, and paste operations on
54-
selected text, allowing you to paste the copied content into other
55-
applications.
38+
- Undo/Redo: Undo/Redo changes by :kbd:`Ctrl` + :kbd:`Z` / :kbd:`Ctrl` + :kbd:`Y`
39+
- Clipboard Operations: Perform OS clipboard cut, copy, and paste operations on selected text, allowing you to paste the copied content into other applications.
5640
- Copy Text: Use :kbd:`Ctrl` + :kbd:`C` to copy selected text.
57-
- copy selected text, if available
58-
- If no text is selected it copy the entire current line, including the
59-
terminating newline if present.
41+
- copy selected text, if available
42+
- If no text is selected it copy the entire current line, including the terminating newline if present.
6043
- Cut Text: Use :kbd:`Ctrl` + :kbd:`X` to cut selected text.
61-
- cut selected text, if available
62-
- If no text is selected it will cut the entire current line, including the
63-
terminating newline if present
64-
- Paste Text: Use :kbd:`Ctrl` + :kbd:`V` to paste text from the clipboard into
65-
the editor.
66-
- replace selected text, if available
67-
- If no text is selected, paste text in the cursor position
44+
- cut selected text, if available
45+
- If no text is selected it will cut the entire current line, including the terminating newline if present
46+
- Paste Text: Use :kbd:`Ctrl` + :kbd:`V` to paste text from the clipboard into the editor.
47+
- replace selected text, if available
48+
- If no text is selected, paste text in the cursor position
6849
- Scrolling behaviour for long text build-in
69-
- Table of contents (:kbd:`Ctrl` + :kbd:`O`), with headers line prefixed by
70-
``#``, e.g. ``# Fort history``, ``## Year 1``
71-
- Table of contents navigation: jump to previous/next section by :kbd:`Ctrl` +
72-
:kbd:`Up` / :kbd:`Ctrl` + :kbd:`Down`
50+
- Table of contents (:kbd:`Ctrl` + :kbd:`O`), with headers line prefixed by '#', e.g. '# Fort history', '## Year 1'
51+
- Table of contents navigation: jump to previous/next section by :kbd:`Ctrl` + :kbd:`Up` / :kbd:`Ctrl` + :kbd:`Down`
7352

7453
Usage
7554
-----

docs/gui/notes.rst

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
gui/notes
2+
=========
3+
4+
.. dfhack-tool::
5+
:summary: Interactive panel for managing map-specific notes.
6+
:tags: fort interface map
7+
8+
The `gui/notes` tool provides a comprehensive interface for interacting
9+
with map-specific notes. It is designed to streamline the process
10+
of note management in Dwarf Fortress, making it simpler
11+
and more intuitive to keep track of important map-specific information.
12+
13+
This tool builds upon the functionality of the `notes` tool,
14+
enhancing it by providing a user-friendly panel for easier management
15+
and visibility of notes across the Dwarf Fortress game map.
16+
17+
Usage
18+
-----
19+
20+
::
21+
22+
gui/notes
23+
24+
Launch the notes management panel.
25+
26+
Supported Features
27+
------------------
28+
29+
- Interactive Panel: Manage all aspects of notes through a centralized graphical interface.
30+
- Search (:kbd:`Alt` + :kbd:`S`): Quickly find notes
31+
- Direct Map Interaction (:kbd:`Alt` + :kbd:`N`): Add new notes by clicking on the map.
32+
- Edit (:kbd:`Alt` + :kbd:`U`): Easily modify existing notes.
33+
- Delete (:kbd:`Alt` + :kbd:`D`): Easily remove existing notes.

docs/notes.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ Creating a Note
2929
1. Use the keyboard cursor to select the desired map tile where you want to place a note.
3030
2. Execute ``notes add`` via the DFHack console.
3131
3. In the pop-up dialog, fill in the note's title and detailed comment.
32-
4. Press :kbd:`Alt` + :kbd:`S` to create the note.
32+
4. Press :kbd:`Ctrl` + :kbd:`Enter` to create the note.
3333

3434
Editing or Deleting a Note
3535
--------------------------

0 commit comments

Comments
 (0)