Name | drdictaphone_neovim JSON |
Version |
0.9.3
JSON |
| download |
home_page | None |
Summary | Dictation app for the terminal and Neovim |
upload_time | 2024-09-08 12:00:28 |
maintainer | None |
docs_url | None |
author | Ole Kliemann |
requires_python | >=3.7 |
license | LICENSE |
keywords |
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# DrDictaphone
Dictation app for the terminal and Neovim, using Whisper for transcription and ChatGPT for post-processing.
### Installation
You can use the installation script:
```
curl https://raw.githubusercontent.com/olekli/DrDictaphone/main/script/install.sh | sh
```
Or create a virtual environment and do:
```
pip install drdictaphone
python -m drdictaphone.cli install ~/DrDictaphone
```
Place OpenAI API key in `~/DrDictaphone/config/openai_api_key`.
### Running
To start the standalone app, do `./drdictaphone`.
To start only the server, do `./drdictaphone server`.
Shutdown a running server by doing `./drdictaphone shutdown`.
### Neovim Plugin
If you are not already using Python plugins in Neovim,
you need to create a virtual environment for Neovim to use.
Tell Neovim about it by adding to your `init.vim`:
```
let g:python3_host_prog = '~/.neovim-venv/bin/python'
```
(Or wherever your venv is located.)
Inside this virtual environment, install the Neovim plugin:
```
pip install drdictaphone-neovim-plugin
```
Now you need to add the plugin to your Neovim config directory:
```
ln -s ~/.neovim-venv/lib/python3.11/site-packages/drdictaphone_neovim/DrDictaphone.py ~/.config/nvim/rplugin/python3/.
```
(Your paths may vary.)
Then start the server. Do `:UpdateRemotePlugins` once in Neovim, restart. Use `DrDictaphoneSetProfile`, `DrDictaphoneToggle` vim commands.
### Controlling Standalone App:
- `s`: select profile
- `p`: start / stop and transcribe recording
- `d`: stop and discard recording
- `q`: exit
### Profiles
Profiles consist of:
- `topic` for transcribing and post-processing, a list of strings
- `language` to use for the transcriber, a string
- `output` directory, a string
- `output_command` to pipe output to
- `enable_vad` whether or not to enable VAD, a bool, defaults to `false`
Output will be written to a timestamped file in the output directory.
VAD will filter recordings for parts with voice before processing them.
### Post-Processor
The Post-Processor specs consist of:
- `instructions` for the post-processor, either a filename to load from or a list of strings
- `gpt_model` to use for post-processing, either a filename to load from or an object
- `options` to use for post-processing, either a filename to load from or an object
- `tools` to use for the post-processor, either a filename to load from or an object
The context for the post-processor is built from the profile and the post-processor specs. Settings in the profile take precedence over settings in the specs.
Raw data
{
"_id": null,
"home_page": null,
"name": "drdictaphone_neovim",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": null,
"author": "Ole Kliemann",
"author_email": "mail@olekliemann.de",
"download_url": "https://files.pythonhosted.org/packages/d6/6a/6b044a745375cb34f61c22db8e92ac4970793e6c10d4e04fff4e66cdc82e/drdictaphone_neovim-0.9.3.tar.gz",
"platform": null,
"description": "# DrDictaphone\n\nDictation app for the terminal and Neovim, using Whisper for transcription and ChatGPT for post-processing.\n\n### Installation\n\nYou can use the installation script:\n```\ncurl https://raw.githubusercontent.com/olekli/DrDictaphone/main/script/install.sh | sh\n```\n\nOr create a virtual environment and do:\n```\npip install drdictaphone\npython -m drdictaphone.cli install ~/DrDictaphone\n```\n\nPlace OpenAI API key in `~/DrDictaphone/config/openai_api_key`.\n\n### Running\n\nTo start the standalone app, do `./drdictaphone`.\n\nTo start only the server, do `./drdictaphone server`.\n\nShutdown a running server by doing `./drdictaphone shutdown`.\n\n### Neovim Plugin\n\nIf you are not already using Python plugins in Neovim,\nyou need to create a virtual environment for Neovim to use.\nTell Neovim about it by adding to your `init.vim`:\n```\nlet g:python3_host_prog = '~/.neovim-venv/bin/python'\n```\n(Or wherever your venv is located.)\n\nInside this virtual environment, install the Neovim plugin:\n```\npip install drdictaphone-neovim-plugin\n```\n\nNow you need to add the plugin to your Neovim config directory:\n```\nln -s ~/.neovim-venv/lib/python3.11/site-packages/drdictaphone_neovim/DrDictaphone.py ~/.config/nvim/rplugin/python3/.\n```\n(Your paths may vary.)\n\nThen start the server. Do `:UpdateRemotePlugins` once in Neovim, restart. Use `DrDictaphoneSetProfile`, `DrDictaphoneToggle` vim commands.\n\n### Controlling Standalone App:\n\n- `s`: select profile\n- `p`: start / stop and transcribe recording\n- `d`: stop and discard recording\n- `q`: exit\n\n### Profiles\n\nProfiles consist of:\n\n- `topic` for transcribing and post-processing, a list of strings\n- `language` to use for the transcriber, a string\n- `output` directory, a string\n- `output_command` to pipe output to\n- `enable_vad` whether or not to enable VAD, a bool, defaults to `false`\n\nOutput will be written to a timestamped file in the output directory.\n\nVAD will filter recordings for parts with voice before processing them.\n\n### Post-Processor\n\nThe Post-Processor specs consist of:\n\n- `instructions` for the post-processor, either a filename to load from or a list of strings\n- `gpt_model` to use for post-processing, either a filename to load from or an object\n- `options` to use for post-processing, either a filename to load from or an object\n- `tools` to use for the post-processor, either a filename to load from or an object\n\nThe context for the post-processor is built from the profile and the post-processor specs. Settings in the profile take precedence over settings in the specs.\n",
"bugtrack_url": null,
"license": "LICENSE",
"summary": "Dictation app for the terminal and Neovim",
"version": "0.9.3",
"project_urls": null,
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "1a81dc78231014238a620c8e26fed7908083cea1d06b154ad31a8e5706592e0b",
"md5": "8ad025c89cf48bffd6a8bb9fd8effb88",
"sha256": "a6903eec0eef308ff075c09d624650d3399658f2d7a4a88974ed5c29bf8a64b7"
},
"downloads": -1,
"filename": "drdictaphone_neovim-0.9.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "8ad025c89cf48bffd6a8bb9fd8effb88",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 7402,
"upload_time": "2024-09-08T12:00:27",
"upload_time_iso_8601": "2024-09-08T12:00:27.347882Z",
"url": "https://files.pythonhosted.org/packages/1a/81/dc78231014238a620c8e26fed7908083cea1d06b154ad31a8e5706592e0b/drdictaphone_neovim-0.9.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d66a6b044a745375cb34f61c22db8e92ac4970793e6c10d4e04fff4e66cdc82e",
"md5": "0fc070e53b9ed9ca9288eebcba81111b",
"sha256": "07e394cdf61f07b9ab81e98a2981a1b513140d8e5289cb094e3fe528654ae143"
},
"downloads": -1,
"filename": "drdictaphone_neovim-0.9.3.tar.gz",
"has_sig": false,
"md5_digest": "0fc070e53b9ed9ca9288eebcba81111b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 6818,
"upload_time": "2024-09-08T12:00:28",
"upload_time_iso_8601": "2024-09-08T12:00:28.911968Z",
"url": "https://files.pythonhosted.org/packages/d6/6a/6b044a745375cb34f61c22db8e92ac4970793e6c10d4e04fff4e66cdc82e/drdictaphone_neovim-0.9.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-09-08 12:00:28",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "drdictaphone_neovim"
}