# daktilo ~ configuration # Configuration file for custom sound presets and key events. # # Lines starting with "#" are comments. # Configuration options are organized into tables and keys. # See documentation for more information on available options. # # For detailed explanations and usage examples, visit: # https://github.com/orhun/daktilo # Default Typing Sounds # The traditional typing feedback: a "ding" when the "Return" key is pressed, # a general keystroke sound for other key presses, and a "keyup" sound when keys are released. [[sound_preset]] name = "default" key_config = [ { event = "press", keys = "Return", files = [ { path = "ding.mp3", volume = 1.0 }, ] }, { event = "press", keys = ".*", variation = { volume = [0.1, 0.1], tempo = [0.05, 0.05] }, files = [ { path = "keydown.mp3", volume = 1.0 }, ] }, { event = "release", keys = ".*", variation = { volume = [0.1, 0.1], tempo = [0.05, 0.05] }, files = [ { path = "keyup.mp3", volume = 1.0 }, ] }, ] # Basic Typing Sounds # For the minimalist typist - just a simple "newline" sound on Return and "keystroke" for all other keys. # Some arrow keys are muted for distraction-free typing. [[sound_preset]] name = "basic" key_config = [ { event = "press", keys = "Return", files = [ { path = "newline.mp3" }, ] }, { event = "press", keys = ".*", files = [ { path = "keystroke.mp3" }, ] }, ] # Disabled arrow keys to keep focus: Up, Down, Left, Right, and Backspace. disabled_keys = ["UpArrow", "DownArrow", "LeftArrow", "RightArrow", "Backspace"] # It dings, and it dongs. Nuff' said. # With this rather more calming experience maybe you will think twice # before typing down passive aggressive emails. [[sound_preset]] name = "musicbox" key_config = [ { event = "press", keys = ".*", files = [ { path = "mbox1.mp3" }, { path = "mbox2.mp3" }, { path = "mbox3.mp3" }, { path = "mbox4.mp3" }, { path = "mbox5.mp3" }, { path = "mbox6.mp3" }, { path = "mbox7.mp3" }, { path = "mbox8.mp3" }, ], strategy = "random" }, ] # The Ducktilo Experience # When you type, you'll hear ducks! A quick quack for regular keys, and a special "quack2" for Return. # Enjoy a unique typing journey with delightful duck sounds. [[sound_preset]] name = "ducktilo" key_config = [ { event = "press", keys = "Return", files = [ { path = "quack2.mp3" }, ] }, { event = "press", keys = ".*", files = [ { path = "quack1.mp3", volume = 10.0 }, ] }, ] # Drumkit # Dum, tss, cha! [[sound_preset]] name = "drumkit" key_config = [ { event = "press", keys = ".*", files = [ { path = "kick.mp3" }, { path = "hat.mp3" }, { path = "snare.mp3" }, { path = "kick.mp3" }, { path = "hat.mp3" }, { path = "kick.mp3" }, { path = "snare.mp3" }, { path = "hat.mp3" }, ], strategy = "sequential" }, ] # Sparks # For a high voltage high current typing experience [[sound_preset]] name = "sparks" key_config = [ { event = "press", keys = "Backspace", files = [ {path = "derase.mp3"}, ], strategy = "random" }, { event = "press", keys = ".*", files = [ { path = "dspark1.mp3" }, { path = "dspark2.mp3" }, { path = "dspark3.mp3" }, { path = "dspark4.mp3" }, { path = "dspark5.mp3" }, { path = "dspark6.mp3" }, ], strategy = "random" }, ] # Here is how you can define your custom preset: # [[sound_preset]] # # Custom sound preset named "custom" # name = "custom" # # Key configurations for various events # key_config = [ # # When a key starting with "Key" is pressed, play 1.mp3, 2.mp3, and 3.mp3 sequentially # { event = "press", keys = "Key*", files = [ # { path = "1.mp3" }, # { path = "2.mp3" }, # { path = "3.mp3" }, # ], strategy = "sequential" }, # # When a key starting with "Key" is released, play 4.mp3 # { event = "release", keys = "Key*", files = [ # { path = "4.mp3" }, # ] }, # # When a key starting with "Num" is pressed, play num.mp3 at a very high volume (10.0) # { event = "press", keys = "Num*", files = [ # { path = "num.mp3", volume = 10.0 }, # ] }, # # When any key is pressed, play a random sound from cat.mp3, dog.mp3, or bird.mp3 # { event = "press", keys = ".*", files = [ # { path = "cat.mp3" }, # { path = "dog.mp3" }, # { path = "bird.mp3" }, # ], strategy = "random" }, # ] # # Disabled keys that won't trigger any sound events # disabled_keys = ["CapsLock", "NumLock"]