VoiceGem

How to dictate a double quote around a string

Say “double quote” or “quote” before and after the text to wrap a string literal. Both marks attach on both sides, so “double quote hello world double quote” assembles as "hello world" with the quotes tight against the text and the internal space preserved.

An eleven-word quoted assignment takes about 13 seconds to type and about 4 seconds to say. (sources: Dhakal, Feit, Kristensson & Oulasvirta, “Observations on Typing from 136 Million Keystrokes”, CHI 2018, 168,000 participants, 136 million keystrokes; Yuan, Liberman & Cieri, “Towards an Integrated Understanding of Speaking Rate in Conversation”, Interspeech 2006, 2,438 American English telephone conversations (Switchboard corpus). The speech figure is conversational rate, not a measured dictation rate — no such measurement exists.)

What lands in your editor
const basePath ="/ api / v2"

This tool runs entirely in your browser. Nothing you type is sent anywhere, stored, or logged.

Step by step

  1. 1

    Say the opening quote

    Speak “double quote” where the string starts. The character attaches on both sides, so it binds forward onto the first word of the literal.

  2. 2

    Say the contents naturally

    Speak the words of the string. Anything not in VoiceGem's lookup table passes through untouched, and the spaces between your words survive inside the literal.

  3. 3

    Say the closing quote

    Speak the phrase again at the end. Nothing auto-closes, so an unclosed literal stays unclosed rather than being guessed at.

  4. 4

    By hand

    Press Shift-apostrophe, or let your editor auto-pair the quotes. Auto-pairing is genuinely good at this and beats dictation for a short literal.

A multi-word string keeps its internal spaces, and this is not a special case

Both quote characters attach on both sides, which binds the opening mark forward and the closing mark backward. Everything between them is untouched plain text, because words absent from the lookup table pass through the Deterministic Pass unchanged.

Pass-through is the property that makes VoiceGem usable for prose inside code at all. A string literal, a comment and a commit message are all mostly ordinary English, and a formatter that mangled them would be unusable for the half of a developer's typing that is not symbols.

Where the manual way breaks

Editor auto-pairing handles a short quoted string well: type the opening mark and the closer appears. For a two-word literal typing is faster and nothing here disputes it.

Nested quoting is where it gets awkward. An object entry with a quoted key and a quoted value is four quote characters interleaved with a colon, and auto-pairing has to be stepped over rather than typed through each time. Dictating the whole entry in VoiceGem emits four marks in the order you said them, with no cursor decisions in the middle.

Doing this somewhere else? the browser-based speech-to-code converter, the backtick, step by step, what changes for the single quote, or how the underscore works.

Common questions

Yes. Words not in VoiceGem's lookup table pass through untouched, including the spaces between them, so a multi-word literal comes out intact.

Yes. “Quote” and “double quote” both reach the same table entry. Say “single quote” or “apostrophe” if you want the single mark instead.

No. Only the characters you spoke are emitted, so say the closing quote yourself. An unclosed literal stays unclosed rather than being silently repaired.

Dictate a nested object entry and count the quote marks.

Open the tool