Kutabe generates docstrings and doc comments for functions and classes directly in the editor.
It supports Python, TypeScript, JavaScript, and Rust out of the box.
- Keyboard Shortcut - place cursor inside any function or class, press
Ctrl+Alt+D(⌘⌥Don macOS), and the docstring is inserted automatically. - CodeLens - a
✎ Generate Docstringlens appears above every undocumented symbol. - Context menu - right-click in the editor and choose Kutabe: Generate Docstring.
- Multiple styles - Google, NumPy, and Sphinx for Python; JSDoc and TSDoc for TypeScript/JavaScript; Rustdoc for Rust.
- Type-aware - parameter types and return types are extracted from the source code (type hints, TypeScript annotations, Rust signatures) and included in the generated doc.
| Language | Styles |
|---|---|
| Python | google (default), numpy, sphinx |
| TypeScript / JavaScript | jsdoc (default), tsdoc |
| Rust | rustdoc |
- Open a file in a supported language.
- Place the cursor anywhere inside a function or class.
- Press
Ctrl+Alt+D(or⌘⌥Don macOS), or:- Click the
✎ Generate DocstringCodeLens above the symbol. - Right-click → Kutabe: Generate Docstring.
- Click the
Python example (Google style):
def greet(name: str, greeting: str = "Hello") -> str:
"""Summary.
Args:
name (str): Description.
greeting (str): Description.
Returns:
str: Description.
"""
return f"{greeting}, {name}!"TypeScript example (JSDoc style):
/**
* Summary.
*
* @param {number} a - Description.
* @param {number} b - Description.
*
* @returns {number} Description.
*/
function add(a: number, b: number): number {
return a + b;
}Rust example (Rustdoc style):
/// Summary.
///
/// # Arguments
///
/// * `a` ([`i32`]) - Description.
/// * `b` ([`i32`]) - Description.
///
/// # Returns
///
/// [`i32`] - Description.
fn add(a: i32, b: i32) -> i32 {
a + b
}Settings are available under File → Preferences → Settings → Kutabe.
| Setting | Default | Options | Description |
|---|---|---|---|
kutabe.python.style |
google |
google, numpy, sphinx |
Docstring style for Python |
kutabe.typescript.style |
jsdoc |
jsdoc, tsdoc |
Doc comment style for TypeScript/JavaScript |
kutabe.rust.style |
rustdoc |
rustdoc |
Doc comment style for Rust |
Kutabe is released under the MIT License.
