Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add detail to documentation #1380

Merged
merged 11 commits into from
Feb 18, 2024
14 changes: 13 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ https://github.com/talonhub/community/blob/main/core/text/text.talon#L8

### Mouse commands

See https://github.com/talonhub/community/blob/main/plugin/mouse/mouse.talon
See https://github.com/talonhub/community/blob/main/plugin/mouse/mouse.talon for commands to click, drag, scroll, and use an eye tracker. To use a grid to click at a certain location on the screen, see [mouse_grid](https://github.com/talonhub/community/tree/main/core/mouse_grid).

### Generic editing commands

Expand Down Expand Up @@ -245,6 +245,8 @@ tag(): user.tabs

For instance, kubectl commands (kubernetes) aren't relevant to everyone.

Note also that while some of the command sets associated with these tags are defined in talon files within [tags](https://github.com/talonhub/community/tree/main/tags), others, like git, are defined within [apps](https://github.com/talonhub/community/tree/main/apps). Additionally, the commands for tabs are defined in [tabs.talon](https://github.com/talonhub/community/blob/main/core/windows_and_tabs/tabs.talon).

### Unix utilities

If you have a Unix (e.g. OSX) or Linux computer, you can enable support for a number of
Expand All @@ -264,6 +266,16 @@ with community enabled.
For Jetbrains commands to work you must install https://plugins.jetbrains.com/plugin/10504-voice-code-idea
into each editor.

## Additional commands

There are other commands not described fully within this file. As an overview:

- The apps folder has command sets for use within different applications
- The core folder has various commands described [here](https://github.com/talonhub/community/blob/main/core/README.md)
- The lang folder has commands for writing [programming languages](https://github.com/talonhub/community?tab=readme-ov-file#programming-languages)
- The plugin folder has various commands described [here](https://github.com/talonhub/community/blob/main/plugin/README.md)
- The tags folder has various other commands, such as using a browser, navigating a filesystem in terminal, and managing multiple cursors

## Settings

Several options are configurable via a [single settings file](settings.talon) out of the box. Any setting can be made context specific as needed (e.g., per-OS, per-app, etc).
Expand Down
20 changes: 20 additions & 0 deletions core/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# core

This folder contains `edit_settings.talon`, which has a command to open various [settings](https://github.com/talonhub/community?tab=readme-ov-file#settings) files. As an overview of what commands the subfolders contain:

- `abbreviate` has a command for the use of abbreviations
- `app_switcher` does not have commands but has the implementation of functions that allow for switching between applications
- `edit` has commands for navigating and editing text with copy, paste, etc., as well as commands for zooming in and out
- `file_extension` has a command for simpler spoken forms of file and website name extensions
- `help` has commands to open various help menus, as described in the top level [README](https://github.com/talonhub/community?tab=readme-ov-file#getting-started-with-talon)
- `homophones` has commands to replace words with their homophones
- `keys` has commands for [pressing keys](https://github.com/talonhub/community?tab=readme-ov-file#keys)
- `modes` has commands for switching between dictation, command, and sleep mode, as well as for forcing a certain [programming language](https://github.com/talonhub/community?tab=readme-ov-file#programming-languages) mode
- `mouse_grid` has commands to use a grid on the screen to click at a specific location
- `numbers` has the command for writing a number
- `screens` has a command for talon to show the index associated with each of your computer screens for the sake of moving windows to different screens
- `snippets` has commands for inserting snippets of code for various languages
- `text` has commands for inserting and reformatting text
- `vocabulary` has commands for adding new words to be recognized and for having certain words automatically by replaced by others
- `websites_and_search_engines` has commands for opening websites, following links, and making browser searches
- `windows_and_tabs` has commands for tab and [window management](https://github.com/talonhub/community?tab=readme-ov-file#window-management), launching and switching between different applications, and snapping application windows to different locations on the screen
21 changes: 21 additions & 0 deletions plugin/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# plugin

The plugin folder has several other subfolders containing various commands:

- `cancel` contains commands to make talon ignore a command
- `command_history` has commands to see previous commands
- `datetimeinsert` has commands to automatically write the current date and time
- `desktops` has commands to navigate between the different computer desktops
- `draft_editor` has some of the commands to open and use a built-in pop-up text editor
- `dropdown` has commands to select an option from a dropdown menu
- `macro` has commands to use macros
- `media` has commands for video and volume control
- `microphone_selection` has commands for selecting a microphone to use
- `mode_indicator` does not have commands, but has settings for enabling a graphical mode indicator
- `mouse` has commands to click, drag, scroll, and use an eye tracker
- `repeater` has commands for repeating other commands, described briefly in the top level [README](https://github.com/talonhub/community?tab=readme-ov-file#repeating-commands)
- `screenshot` has commands for taking screenshots
- `symbols` has commands for inserting certain symbols, like pairs of parentheses or quotation marks
- `talon_draft_window` has the rest of the commands for using the draft editor window
- `talon_helpers` has commands helpful for debugging, opening the talon directory, and getting updates
- `text_navigation` has commands for navigating the cursor in text
1 change: 1 addition & 0 deletions plugin/mouse/mouse.talon
Original file line number Diff line number Diff line change
Expand Up @@ -131,5 +131,6 @@ curse no:
# Command added 2021-12-13, can remove after 2022-06-01
app.notify("Please activate the user.mouse_cursor_commands_enable tag to enable this command")

# To scroll with a hiss sound, set mouse_enable_hiss_scroll to true in settings.talon
mouse hiss up: user.hiss_scroll_up()
mouse hiss down: user.hiss_scroll_down()
16 changes: 16 additions & 0 deletions tags/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# tags

The tags folder has several other subfolders containing various commands:

- `browser` has generic web browser commands, such as for changing the current webpage and bookmarking pages
- `chapters` has commands for navigating between chapters in a reader application
- `debugger` has commands for use within debuggers such as GDB and WinDbg
- `emoji` has commands for using emojis, emoticons, and kaomoji. In this repository, the tags activating them are only present within the Discord and Slack `.talon` files
- `file_manager` has commands for navigating files and folders within a file explorer or terminal, as described in the top level [README](https://github.com/talonhub/community?tab=readme-ov-file#file-manager-commands)
- `find_and_replace` has commands for finding, selecting, and replacing text
- `line_commands` has commands for navigating to and modifying the numbered lines of text within a text editor or IDE
- `messaging` has commands for navigating multi-channel messaging applications
- `multiple_cursors` has commands for managing multiple cursors in a text editor or IDE
- `pages` has commands for navigating between pages within a document reader application
- `splits` has commands for splitting tabs between different regions of an application window
- `terminal` has generic terminal commands and a command to use Unix terminal tools