Skip to content

Commit

Permalink
README: update the other references too
Browse files Browse the repository at this point in the history
  • Loading branch information
phillco committed Jul 13, 2023
1 parent f97208a commit c358bd7
Showing 1 changed file with 31 additions and 29 deletions.
60 changes: 31 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
# community

Community-maintained [Talon](https://talonvoice.com/) command grammar. _(Note: originally called `knausj_talon`, after [its creator](https://github.com/knausj85))_
Community-maintained [Talon](https://talonvoice.com/) command grammar.

_(Note: originally called `knausj_talon`, after [its creator](https://github.com/knausj85). You might see the reference to the original name in places.)_

Can be used on its own, but shines when combined with:

Expand All @@ -21,30 +23,30 @@ Can be used on its own, but shines when combined with:

### Linux & Mac

It is recommended to install `knausj_talon` using [`git`](https://git-scm.com/).
It is recommended to install `community` using [`git`](https://git-scm.com/).

1. Install [`git`](https://git-scm.com/)
2. Open a terminal ([Mac](https://support.apple.com/en-gb/guide/terminal/apd5265185d-f365-44cb-8b09-71a064a42125/mac) / [Ubuntu](https://ubuntu.com/tutorials/command-line-for-beginners#3-opening-a-terminal))
3. Paste the following into the terminal and hit `enter`:

```bash
cd ~/.talon/user
git clone https://github.com/knausj85/knausj_talon knausj_talon
git clone https://github.com/talonhub/community.git community
```

Note that it is also possible to install knausj by [downloading and extracting a zip file](#alternate-installation-method-zip-file), but this approach is discouraged because it makes it more difficult to keep track of any changes you may make to your copy of the files.

### Windows

It is recommended to install `knausj_talon` using [`git`](https://git-scm.com/).
It is recommended to install `community` using [`git`](https://git-scm.com/).

1. Install [`git`](https://git-scm.com/)
2. Open a [terminal](https://www.wikihow.com/Open-the-Command-Prompt-in-Windows)
3. Paste the following into the terminal and hit `enter`:

```
cd %AppData%\Talon\user
git clone https://github.com/knausj85/knausj_talon knausj_talon
git clone https://github.com/talonhub/community.git community
```

Note that it is also possible to install knausj by [downloading and extracting a zip file](#alternate-installation-method-zip-file), but this approach is discouraged because it makes it more difficult to keep track of any changes you may make to your copy of the files.
Expand All @@ -54,13 +56,13 @@ Note that it is also possible to install knausj by [downloading and extracting a
1. `help active` will display the available commands for the active application.
- Available commands can change with the application, or even window title that has focus.
- You may navigate help using the displayed numbers. e.g., `help one one` or `help eleven` to open the 11th item in the help list.
- Note that all help-related commands are defined in [`core/help/help.talon`](https://github.com/knausj85/knausj_talon/blob/main/core/help/help.talon) and [`core/help/help_open.talon`](https://github.com/knausj85/knausj_talon/blob/main/core/help/help_open.talon)
- Note that all help-related commands are defined in [`core/help/help.talon`](https://github.com/talonhub/community.git/blob/main/core/help/help.talon) and [`core/help/help_open.talon`](https://github.com/talonhub/community.git/blob/main/core/help/help_open.talon)
2. You can also search for commands by saying `help search <phrase>`. For example, `help search tab` displays all tab-related commands, and `help search help` displays all help-related commands.
3. You can also jump immediately into a particular help context display by recalling the name displayed in help window (based on the name of the .talon file) e.g. `help symbols` or `help visual studio`
4. `help alphabet` will display the alphabet
5. `command history` will toggle a display of the recent commands
6. `help format` will display the available formatters with examples.
7. Many useful, basic commands are defined in https://github.com/knausj85/knausj_talon/blob/main/core/edit/standard.talon
7. Many useful, basic commands are defined in https://github.com/talonhub/community.git/blob/main/core/edit/standard.talon
- `undo that` and `redo that` are the default undo/redo commands.
- `paste that`, `copy that`, and `cut that` for pasting/copy/cutting, respectively.
8. For community-generated documentation on Talon itself, please visit https://talon.wiki/
Expand All @@ -76,17 +78,17 @@ If you use vim, just start with the numbers and alphabet, otherwise look at gene
### Alphabet
The alphabet is defined here
https://github.com/knausj85/knausj_talon/blob/main/core/keys/keys.py#L3
https://github.com/talonhub/community.git/blob/main/core/keys/keys.py#L3
`help alphabet` will open a window that displays the alphabet. `help close` to hide the window.
Try saying e.g. `air bat cap` to insert abc.
### Keys
Keys are defined in keys.py. The alphabet is used for A-Z. For the rest, search for `modifier_keys` and then keep scrolling through the file, eg. roughly https://github.com/knausj85/knausj_talon/blob/main/core/keys/keys.py#L111
Keys are defined in keys.py. The alphabet is used for A-Z. For the rest, search for `modifier_keys` and then keep scrolling through the file, eg. roughly https://github.com/talonhub/community.git/blob/main/core/keys/keys.py#L111
All key commands are defined in [keys.talon](https://github.com/knausj85/knausj_talon/blob/main/core/keys/keys.talon). For example, say `shift air` to press `shift-a`, which types a capital `A`.
All key commands are defined in [keys.talon](https://github.com/talonhub/community.git/blob/main/core/keys/keys.talon). For example, say `shift air` to press `shift-a`, which types a capital `A`.
On Windows, try commands such as
Expand All @@ -105,9 +107,9 @@ Any combination of the modifiers, symbols, alphabet, numbers and function keys c
### Symbols

Some symbols are defined in keys.py, so you can say e.g. `control colon` to press those keys.
https://github.com/knausj85/knausj_talon/blob/main/core/keys/keys.py#L140
https://github.com/talonhub/community.git/blob/main/core/keys/keys.py#L140

Some other symbols are defined here: https://github.com/knausj85/knausj_talon/blob/main/plugin/symbols/symbols.talon
Some other symbols are defined here: https://github.com/talonhub/community.git/blob/main/plugin/symbols/symbols.talon

### Formatters

Expand All @@ -118,55 +120,55 @@ Try using formatters by saying e.g. `snake hello world`, which will insert hello
Multiple formatters can be used together, e.g. `dubstring snake hello world`. This will insert "hello_world"

Formatters (snake, dubstring) are defined here
https://github.com/knausj85/knausj_talon/blob/main/core/text/formatters.py#L137
https://github.com/talonhub/community.git/blob/main/core/text/formatters.py#L137

All formatter-related commands are defined here
https://github.com/knausj85/knausj_talon/blob/main/core/text/text.talon#L8
https://github.com/talonhub/community.git/blob/main/core/text/text.talon#L8

### Mouse commands

See https://github.com/knausj85/knausj_talon/blob/main/plugin/mouse/mouse.talon
See https://github.com/talonhub/community.git/blob/main/plugin/mouse/mouse.talon

### Generic editing commands

https://github.com/knausj85/knausj_talon/blob/main/core/edit/edit.talon
https://github.com/talonhub/community.git/blob/main/core/edit/edit.talon

These generic commands are global. Commands such as `go word left` will work in any text box.

### Repeating commands

For repeating commands, useful voice commands are defined here: https://github.com/knausj85/knausj_talon/blob/main/plugin/repeater/repeater.talon
For repeating commands, useful voice commands are defined here: https://github.com/talonhub/community.git/blob/main/plugin/repeater/repeater.talon

Try saying e.g. `go up fifth` will go up five lines.
Try saying e.g. `select up third` to hit `shift-up` three times to select some lines in a text field.

### Window management

Global window managment commands are defined here:
https://github.com/knausj85/knausj_talon/blob/main/core/windows_and_tabs/window_management.talon
https://github.com/talonhub/community.git/blob/main/core/windows_and_tabs/window_management.talon

- `running list` will toggle a GUI list of words you can say to switch to running applications.
- `focus chrome` will focus the chrome application.
- `launch music` will launch the music application. Note this is currently only implemented on Mac OS X.

### Screenshot commands

https://github.com/knausj85/knausj_talon/blob/main/plugin/screenshot/screenshot.talon
https://github.com/talonhub/community.git/blob/main/plugin/screenshot/screenshot.talon

### Programming Languages

Specific programming languages may be activated by voice commands, or via title tracking.

Activating languages via commands will enable the commands globally, e.g. they'll work in any application. This will also disable the title tracking method (code.language in .talon files) until the "clear language modes" voice command is used.
The commands for enabling languages are defined here: https://github.com/knausj85/knausj_talon/blob/main/core/modes/language_modes.talon
The commands for enabling languages are defined here: https://github.com/talonhub/community.git/blob/main/core/modes/language_modes.talon
By default, title tracking activates coding languages in supported applications such as VSCode, Visual Studio (requires plugin), and Notepad++.
To enable title tracking for your application:
1. The active filename (including extension) must be included in the editor's title
2. Implement the required Talon-defined `filename` action to correctly extract the filename from the programs's title. See https://github.com/knausj85/knausj_talon/blob/main/apps/vscode/vscode.py#L122-L138 for an example.
2. Implement the required Talon-defined `filename` action to correctly extract the filename from the programs's title. See https://github.com/talonhub/community.git/blob/main/apps/vscode/vscode.py#L122-L138 for an example.
Python, C#, Talon and javascript language support is currently broken up into several tags in an attempt to define a common grammar where possible between languages. Each tag is defined by a .talon file, which defines the voice commands, and a Python file which declares the actions that should be implemented by each concrete language implementation to support those voice commands. Currently, the tags which are available are:
Expand All @@ -192,7 +194,7 @@ The support for the language-specific implementations of actions are then locate
- `lang/{your-language}/{your-language}.py`
To start support for a new language, ensure the appropriate extension is added to the [`language_extensions` in language_modes.py](https://github.com/knausj85/knausj_talon/blob/main/core/modes/language_modes.py#L9).
To start support for a new language, ensure the appropriate extension is added to the [`language_extensions` in language_modes.py](https://github.com/talonhub/community.git/blob/main/core/modes/language_modes.py#L9).
Then create the following files:
- `lang/{your-language}/{your-language}.py`
Expand All @@ -204,7 +206,7 @@ You may also want to add a force command to `language_modes.talon`.
## File Manager commands
For the following file manager commands to work, your file manager must display the full folder path in the title bar. https://github.com/knausj85/knausj_talon/blob/main/tags/file_manager/file_manager.talon
For the following file manager commands to work, your file manager must display the full folder path in the title bar. https://github.com/talonhub/community.git/blob/main/tags/file_manager/file_manager.talon
For Mac OS X's Finder, run this command in terminal to display the full path in the title.

Expand All @@ -226,7 +228,7 @@ Notes:
To implement support for a new program, you need to implement the relevant file manager actions for your application and assert the user.file_manager tag.
- There are a number of example implementations in the repository. Finder is a good example to copy and customize to your application as needed.
https://github.com/knausj85/knausj_talon/blob/main/apps/finder/finder.py
https://github.com/talonhub/community.git/blob/main/apps/finder/finder.py
## Terminal commands
Expand Down Expand Up @@ -255,7 +257,7 @@ line in [unix_shell.py](tags/terminal/unix_shell.py):

Once you have uncommented the line, you can customize your utility commands by editing
`settings/unix_utilities.csv`. Note: this directory is created when first running Talon
with knausj_talon enabled.
with community enabled.

## Jetbrains commands

Expand All @@ -266,7 +268,7 @@ into each editor.

Several options are configurable via a single settings file out of the box. Any setting can be made context specific as needed (e.g., per-OS, per-app, etc).

https://github.com/knausj85/knausj_talon/blob/main/settings.talon
https://github.com/talonhub/community.git/blob/main/settings.talon

```
#adjust the scale of the imgui to my liking
Expand Down Expand Up @@ -299,7 +301,7 @@ The most commonly adjusted settings are probably

`user.mouse_wheel_down_amount` and `user.mouse_continuous_scroll_amount` for adjusting the scroll amounts for the various scroll commands.

Also, you can add additional vocabulary words, words to replace, search engines and more. Complete the knausj_talon setup instructions above, then open the `settings` folder to see the provided CSV files and customize them as needed.
Also, you can add additional vocabulary words, words to replace, search engines and more. Complete the community setup instructions above, then open the `settings` folder to see the provided CSV files and customize them as needed.

## Other talon user file sets

Expand Down Expand Up @@ -368,8 +370,8 @@ For community-generated documentation on Talon, please visit https://talon.wiki/
It is possible to install knausj by downloading and extracting a zip file instead of using `git`. Note that this approach is discouraged, because it makes it more difficult to keep track of any changes you may make to your copy of the files.
If you wish to install `knausj_talon` by downloading and extracting a zip file, proceed as follows:
If you wish to install `community` by downloading and extracting a zip file, proceed as follows:
1. Download the [zip archive of knausj_talon](https://github.com/knausj85/knausj_talon/archive/refs/heads/main.zip)
1. Download the [zip archive of community](https://github.com/talonhub/community.git/archive/refs/heads/main.zip)
1. Extract the files. If you don’t know how to extract zip files, a quick google search for "extract zip files" may be helpful.
1. Place these extracted files inside the `user` folder of the Talon Home directory. You can find this folder by right clicking the Talon icon in taskbar, clicking Scripting > Open ~/talon, and navigating to `user`.

0 comments on commit c358bd7

Please sign in to comment.