Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Key repeat broken in macOS Sierra #687

Open
jdsimcoe opened this issue Jul 14, 2016 · 65 comments
Open

Key repeat broken in macOS Sierra #687

jdsimcoe opened this issue Jul 14, 2016 · 65 comments

Comments

@jdsimcoe
Copy link

@jdsimcoe jdsimcoe commented Jul 14, 2016

Currently your script...

defaults write NSGlobalDomain KeyRepeat -int 0

...does not work in macOS Sierra. I've found that if I set things up here they work great:

screen shot 2016-07-14 at 10 20 05 am

Maybe they changed the preference file location or something.

@hkdobrev
Copy link
Contributor

@hkdobrev hkdobrev commented Jul 14, 2016

I've played with that a bit. I think 0 is no longer allowed as a value, but you could use 1, 2 etc. It makes it awfully fast then though. So they might have changed the scale. If you set it to the fastest Key Repeat and shortest initial delay and then read the values on the command line you get 2 and 15.

@jdsimcoe
Copy link
Author

@jdsimcoe jdsimcoe commented Jul 14, 2016

Tried doing this:

defaults write NSGlobalDomain KeyRepeat -int 1

And here's what I get:

2016-07-14 13:51:07.168 defaults[8647:1323339] Could not write domain Apple Global Domain; exiting
@Tatsh
Copy link

@Tatsh Tatsh commented Jul 15, 2016

Use diff to compare before and after the changes (quickly). I can't imagine Apple changed this to no longer use NSUserDefaults. Maybe it's not in NSGlobalDomain anymore.

@kvpb
Copy link

@kvpb kvpb commented Aug 1, 2016

@hkdobrev If it was just a matter of forbidden value, replacing -int 0 with -float 0.001 would have done the trick and been a better way than -int 1 [except if -float was forbidden too]. ;)

@mathiasbynens
Copy link
Owner

@mathiasbynens mathiasbynens commented Aug 1, 2016

@kvpb Yeah, using float seems to work (as in, fast keyboard repeat is enabled by it after a reboot):

defaults write NSGlobalDomain KeyRepeat -float 0.000000000001; defaults read-type NSGlobalDomain KeyRepeat; defaults read NSGlobalDomain KeyRepeat
Type is float
1e-12
@jdsimcoe
Copy link
Author

@jdsimcoe jdsimcoe commented Aug 1, 2016

@mathiasbynens That didn't seem to work.

@mathiasbynens
Copy link
Owner

@mathiasbynens mathiasbynens commented Aug 1, 2016

@jdsimcoe It does for me on OS X El Capitan 10.11.6 (15G31) when rebooting afterwards.

@jdsimcoe
Copy link
Author

@jdsimcoe jdsimcoe commented Aug 1, 2016

@mathiasbynens I'm on macOS Sierra and that setting has changed or something because neither works at all... they must have changed the value.

@mathiasbynens
Copy link
Owner

@mathiasbynens mathiasbynens commented Aug 1, 2016

@jdsimcoe Could you do this please?

  1. defaults read > a
  2. Open system preferences and change the setting to some other value than the default.
  3. defaults read > b
  4. Post diff a b here.
@jdsimcoe
Copy link
Author

@jdsimcoe jdsimcoe commented Aug 1, 2016

when I do this defaults read NSGlobalDomain KeyRepeat... I get 1e-12. When I do defaults read-type NSGlobalDomain KeyRepeat I get Type is float.

@jdsimcoe
Copy link
Author

@jdsimcoe jdsimcoe commented Aug 1, 2016

When I change it in the Preferences slider to the fastest value I do defaults read NSGlobalDomain KeyRepeat and get 2. And the type is integer.

@jdsimcoe
Copy link
Author

@jdsimcoe jdsimcoe commented Aug 1, 2016

@mathiasbynens defaults write NSGlobalDomain KeyRepeat -int 1 is the best I can do on macOS Sierra. The float just doesn't work.

@mathiasbynens mathiasbynens reopened this Aug 2, 2016
@kvpb
Copy link

@kvpb kvpb commented Aug 5, 2016

I tried to take a wild guess, I don't have any Mac running macOS Sierra DP. If I get what @mathiasbynens and you @jdsimcoe say, my trick works for OS X 10.11.6 El Capitan but not macOS 10.12 DP4 Sierra. Maybe it actually is a matter of forbidden values.
If -int works, -float maybe works too. Have you tried to defaults read NSGlobalDomain KeyRepeat with the slider put at different random values [not just the extremes and middle but some points here and there on the slider as well]? Right now, the question I'm asking myself is: did Apple reverse how it works [eg a bigger value means a higher rate] or just lock the values to a certain range [eg between 1 and 3]?, and if they did, does setting the slider's cursor to a point somewhere changes from an integer to a floating-point number [eg the extremes and middle at 1, 2 and 3, and the values between as 1.n and 2.n]?
What bugs me is that either the slider is locked to a range of integers such as one integer by stopping point [which would explain why floating-point numbers don't work], the slider is locked to a range of integers by can accept floating-point numbers within that range or something escapes me.

nepur added a commit to nepur/dotfiles that referenced this issue Aug 10, 2016
* README: Tweak Git-free install command

* bin: Update `subl` symlink to `Sublime Text 3.app`

* .osx: Add Spotlight settings

Closes mathiasbynens#91 and mathiasbynens#174.

* .bash_profile: Remove ‘autocomplete Grunt commands’

Closes mathiasbynens#224.

* .brew: Install PHP 5.5

* .gitattributes: Disable normalizing line endings globally

Instead of removing `~/.gitattributes` completely, I decided to just comment out the `* text=auto` line. This makes it easier to temporarily re-enable the setting should I ever want to.

Closes mathiasbynens#149.

* .curlrc: Disguise as IE 9 on Windows 7

This matches the `.wgetrc` settings.

* .aliases: Add `timer`

`timer` can be used as a stopwatch.

Hat tip: https://twitter.com/tow8ie/status/360077953238962176

* .gitconfig: Improve display of astral Unicode symbols in diffs

Thanks to @holman for the tip: https://speakerdeck.com/holman/more-git-and-github-secrets?slide=38

* .osx: Add GPGMail 2 settings

http://support.gpgtools.org/kb/faq-gpgmail/gpgmail-2-hidden-settings

* .osx: Disable the sound effects on boot

* .aliases: Add `-F` to `ls` aliases

Don’t do this for the default `ls`, though.

Closes mathiasbynens#234.

* bin: Point `subl` to the default ST3 location

Sublime Text 3 does not use the `/Application/Sublime Text 3.app` folder by default. It uses `/Application/Sublime Text.app`.

Closes mathiasbynens#232.

* .gitconfig: Remove global remote branch

This causes duplicate remotes to be created, potentially leading Git to throw errors when `push`ing.

Closes mathiasbynens#215.

* .aliases: Add `chromekill` to kill all Chrome tabs to free up memory

Useful when you have a lot of tabs open (which I always do), but you don’t want to close them.

Tabs in Chrome are just processes, so we just filter out the ones we want, and kill them.

Closes mathiasbynens#236.

* .osx: `~/.CFUserTextEncoding` can break several Adobe apps

Ref. mathiasbynens#237.

* .gitconfig: Add comment about `color.ui` in Git ≥ 1.8.4

Ref. mathiasbynens#239.

* .gitconfig: Add note about whitespace defaults

Closes mathiasbynens#256.

* .functions: Add `m` to open stuff in TextMate

Closes mathiasbynens#253.

* .functions: Add `s` to open stuff in Sublime Text

Closes mathiasbynens#252.

* .functions: Add `v` to open stuff in Vim

Closes mathiasbynens#251.

* .bash_profile: Make sure only files get sourced

Closes mathiasbynens#250.

* .functions: Add `o` to `open` stuff

Closes mathiasbynens#245.

* Add `np` function to ease publishing node modules

I use this to ease the publishing of npm modules. `np`, done ;)

np = npm publish (and, `no problem`, (and `nutella party`))

Closes mathiasbynens#261.

* .osx: Remove “Enable access for assistive devices”

This feature doesn’t work anymore in OS X 10.9 Mavericks. The setting has moved to System Preferences → Security & Privacy → Accessibility, where you now have to check every app you want to allow access rather than enabling it globally.

Closes mathiasbynens#262.

* .osx: Use plain text smileys in Messages

Messages in OS X 10.9 Mavericks automatically substitutes e.g. `:)` with `😊`, with no way to disable this feature through the app’s preferences pane.

After analyzing the `defaults read` output it turns out there is a hidden preference for it.

* .osx: Consistently specify the type for `dict-add` actions

* .functions: Add `tre` shorthand

Closes mathiasbynens#249.

* .osx: Disable smart quotes in Messages.app

* .osx: Disable continuous spell checking in Messages.app

* .brew: Move casks to their own file

* .osx: Add threaded email display settings for Mail.app

* .osx: Remove old iTunes commands

They only applied to iTunes 10 and older anyway.

* .osx: Make coding style more consistent

* .osx: Disable inline attachments in Mail

Thanks to Christophe Platteeuw via Twitter: https://twitter.com/cplatteeuw/status/393465401310318592

* .osx: Disable automatic spell checking in Mail.app

* .osx: Stop iTunes from responding to the keyboard media keys

Commented out, as I actually use these keys.

Closes mathiasbynens#265.

* .osx: Suppress error messages when running `~/.osx` twice

Closes mathiasbynens#266.

* .aliases: Improve `ips`

Ref. mathiasbynens#268 and mathiasbynens#269.

* Make `.cask` executable

* .osx: Minimize windows into their application’s icon

Closes mathiasbynens#271.

* init: Add iTerm colors

Closes mathiasbynens#274.

* init: Install Sublime Text settings

Closes mathiasbynens#275.

* .osx: Rename computer name

* .aliases: Lowercase `projects` dir

* .osx: Don’t prompt when quitting iTerm

* README: Update link to Lauri Ranta’s resources

* .osx: Add SSD-specific tweaks

Source: http://forums.macrumors.com/showthread.php?t=1505922

* .osx: Remove broken three-finger swipe commands

If anyone knows how to make this work, please let me or @necolas know!

Ref. mathiasbynens#171.

* .osx: Don’t `kill` Dashboard

`killall Dashboard` doesn’t actually do anything. To apply the changes for Dashboard, `killall Dock` is enough as Dock is Dashboard’s parent process.

Closes mathiasbynens#277.

* .aliases: Add `afk` to lock the screen

Closes mathiasbynens#258.

* README: Document the `.cask` file

Closes mathiasbynens#280.

* .osx: Disable smart quotes and dashes

* .aliases: Add `reload`

`reload` invokes the shell as a login shell, which essentially reloads it.

Closes mathiasbynens#247.

* .aliases: Update RubyGems before updating installed gems

Closes mathiasbynens#282.

* .aliases: Add `npme`

`npme` is like `npm` except it uses a registry located in Europe, causing it to be much faster for Europeans. See <http://npmjs.eu/> for more information.

Closes mathiasbynens#284.

* Use `Brewfile` now that Homebrew supports it

https://github.com/mxcl/homebrew/blob/master/Library/Contributions/cmd/brew-bundle.rb
https://coderwall.com/p/afmnbq

* .gitconfig: Make `git rebase` safer on OS X

See <http://www.git-tower.com/blog/make-git-rebase-safe-on-osx/>.

Closes mathiasbynens#291.

* .aliases: Improve `lsd`

Ref. mathiasbynens#292.

* README: Use `Brewfile` instead of `.brew`

Closes mathiasbynens#294.

* .osx: Hide Safari’s sidebar in Top Sites by default

Closes mathiasbynens#296.

* .gitconfig: Add aliases to find branches/tags/commits

Closes mathiasbynens#304.

* bin: Make `httpcompression` prevent caching

In some cases, intermediate proxies ignore the `Content-Encoding` header
altogether.

Sending `Cache-Control no-cache` as a request header solves this problem
by forcing validation of the resources in the intermediate proxies,
thereby, ensuring that every request is fetched from the origin server.

Ref. alrra/dotfiles#2. Closes mathiasbynens#308.

* init: Fix typo in Sublime Text settings

* .osx: Hide some menu bar icons in OS X 10.9 Mavericks

Kudos to @kevinSuttle for finding the appropriate `plist` file!
mathiasbynens#305 (comment)

Ref. mathiasbynens#305.

* .osx: Delete some old commands that no longer work

These commands only work on outdated versions of OS X.

Ref. mathiasbynens#305.

* .gitconfig: Add `dm` alias

`git dm` deletes local branches that have been merged with master.

Closes mathiasbynens#309.

* init: Tweak Sublime Text settings

* .osx: Add Activity Monitor settings

* .osx: Add Finder ‘Get Info’ settings

* .osx: Display Bluetooth icon in menu bar

* README: Credit @kevinSuttle

* .osx: Set Desktop as the default location for new Finder windows

Closes mathiasbynens#285.

* .aliases: Add `jsc` alias

Useful for testing code in JavaScriptCore.

Hat tip: https://twitter.com/RussB/status/420409644117262336 (via @rauschma)

* .functions: Make `np` remove `node_modules`

This lets you catch cases where you forgot to add a dependency to `package.json`.

Closes mathiasbynens#321.

* .osx: Support multiple `systemuiserver` pref files

Closes mathiasbynens#319.

* Brewfile: Install `p7zip` (i.e. `7z` etc.)

* .osx: Kill `cfprefsd` after changing preferences

As of OS X 10.9 this is necessary to make sure the changes persist.

Closes mathiasbynens#330.

* Brewfile: Install ImageMagick with WebP support

* .vimrc: Explicitly use the Molokai theme

* Brewfile: install `moreutils`, if only for `sponge`

Hat tip: @chastell / http://talks.chastell.net/kodio-2014/#/21

* Brewfile: install `pv` (pipe viewer)

Hat tip: @chastell / http://talks.chastell.net/kodio-2014/#/39

* .osx: Make Dock more transparent

Closes mathiasbynens#346.

* Brewfile: explicitly list non-default taps

* .functions: Add `a` alias for `atom`

Closes mathiasbynens#349.

* .osx: Remove old keyboard illumination settings

These commands don’t have any effect anymore in OS X 10.9.

Closes mathiasbynens#327.

* .gitconfig: Explicitly disable `indent-with-non-tab`

Don’t use `indent-with-non-tab`. This config flag is PERNICIOUS. If turned on, Git won’t tell you that you indented your code incorrectly. Instead, when it is pushing your changes to your remote repo, Git will silently convert any consecutive 8-space strings it sees into tab characters. This can be highly undesirable, especially if you collaborate with a team that expects the code to be indented using spaces instead of tabs.

At the very least, the comment above this line should very clearly explain the fact that `indent-with-non-tab` does more than advertised in the `git-config man page (https://www.kernel.org/pub/software/scm/git/docs/git-config.html).

Closes mathiasbynens#351.

* .osx: Add missing value

In order to properly overwrite the `key` of a `domain`, `defaults` needs to be provided with a valid `value` for the `key`:

    `defaults write <domain> <key> <value>`

Closes mathiasbynens#350.

* .cask: Add Opera, Opera Developer and Opera Next

Closes mathiasbynens#348.

* .osx: Allow installing Chrome user scripts via GitHub Gist or Userscripts.org

* .osx: Change minimize/maximize window effect

By default, OS X Mavericks uses the annoying `genie` effect whenever windows are minimized/maximized. This commit changes that preference and makes OS X use the more tolerable `scale` effect.

Closes mathiasbynens#355. Ref. mathiasbynens#270.

* .osx: Remove “disable opening and closing window animations”

Sadly, this doesn’t work anymore in OS X 10.9.

Closes mathiasbynens#270.

* .osx: Comment computer name settings

It’s good to have these commands here as a reference, but it’s annoying when running `.osx` on multiple computers in the same network.

* .exports: Explicitly use UTF-8 even for `LANG`

* .osx: Add ExpandedStateFor* variants for OS X 10.9

Closes mathiasbynens#361.

* .aliases: Use `en0` for `localip`

* .osx: Update iOS Simulator symlink

* Install casks via Caskfile

`brew bundle` can now be used for casks as well.

Closes mathiasbynens#365.

* Brewfile: Install GNU `sed`

* Brewfile: Install some more useful tools

* .functions: Make `gi` accept any number of arguments

Closes mathiasbynens#367.

* Brewfile: Install `xpdf`, if only for `pdfinfo`

* .osx: Don’t reset the desktop wallpaper when resetting Launchpad

Files like `530142A0-6AEC-4921-A3A7-7C2B72FFF6E3.db` and `desktoppicture.db` exist in `~/Library/Application\ Support/Dock`, so let’s add a `-` with a wildcard `*` to both sides to ensure we don’t delete `desktoppicture.db` and reset the desktop wallpaper.

Closes mathiasbynens#370.

* Brewfile: Install `ucspi-tcp`, if only for `tcpserver`

* Brewfile: Install PHP 5.5 with GMP support

* .osx: Don’t show hidden files by default

Most of the time I don’t need it, and when I do, I can temporarily enable it using the `show` alias, and revert it using the `hide` alias.

* Brewfile: Fix PHP 5.5 installation

Thanks to @interputed for the heads up: mathiasbynens@a76db30#commitcomment-6200104

* Caskfile: Move `phinze/cask` to `caskroom/cask`

Homebrew Cask has been moved to https://github.com/caskroom/homebrew-cask.

Closes mathiasbynens#375.

* .gitconfig: Make sure `go` never overrides branches

Closes mathiasbynens#357. Thanks to @yukideluxe!

* Brewfile: Install `hashpump`

* .bash_prompt: Speed up the Git commands for the prompt

Fixes mathiasbynens#227 and closes mathiasbynens#380.

* .bash_profile: Enable tab completion for `git` and `g`

Closes mathiasbynens#197.

* Brewfile: add instructions on how to change the default shell to Bash 4

* Brewfile: Install Node with npm

Ref. Homebrew/legacy-homebrew#28075. Closes mathiasbynens#362.

* bootstrap.sh: Make `rsync` output numbers in a human-readable format

Closes mathiasbynens#383.

* Brewfile: Install BFG Repo-Cleaner

* .curlrc: Set connection timeout to 60 seconds

This matches the setting in `.wgetrc`.

* Remove some things that I don’t use

This commit drops some aliases, functions, and settings from the project that I wasn’t using at all. It also cleans up some of the remaining code.

* Caskfile: Update Tor formula name

Closes mathiasbynens#388.

* .gitconfig: Improve configuration

Closes mathiasbynens#366.

* .osx: Add (commented-out) instructions on how to set the wallpaper

Closes mathiasbynens#356.

* .osx: Only install custom Terminal profile once

Closes mathiasbynens#336 and mathiasbynens#337.

* .screenrc: Add some more settings

Closes mathiasbynens#334.

* .osx: Disable the Launchpad gesture

Closes mathiasbynens#316.

* Brewfile: Install a more recent version of `screen`

Closes mathiasbynens#295.

* .bash_profile: Enable Bash completion if `/etc/bash_completion` exists too

This is useful on Linux.

Ref. mathiasbynens#278.

* Update Bash prompt to match the Solarized theme

Screenshot: http://i.imgur.com/EkEtphC.png

* Enable Solarized Dark theme in Vim

* .gitconfig: Remove `push.default`

This was causing issues on servers that don’t have an up-to-date Git installation. As a workaround, I decided to remove this from `.gitconfig` and add this to `~/.extra` for my laptop only:

    git config --global push.default simple

* .gitconfig: Tweak `diff` colors

* init: Use the Solarized Dark theme in Sublime Text

* .gitconfig: Add default Git `push.default` config

Use the backwards-compatible `matching` setting by default. On machines with newer Git installations, it avoids the annoying Git warning, and it can be overriden to use `simple` instead in `~/.extra`.

Closes mathiasbynens#400.

* Add `.editorconfig`

See <http://editorconfig.org/>.

* .bash_prompt: Avoid double-escaping ANSI codes

Fixes mathiasbynens#399 and closes mathiasbynens#402.

* .bash_prompt: Add back escape sequences

Fixes mathiasbynens#403.

* .bash_prompt: Interpret escape sequences correctly in all cases

Closes mathiasbynens#407.

* .vimrc: Avoid creating backups when editing files in `/tmp`

See http://vim.wikia.com/wiki/Editing_crontab.

* .aliases: Remove the now-broken `whois` alias

Closes mathiasbynens#397.

* .osx: Use `sudo` for `systemsetup`

Closes mathiasbynens#415.

* .osx: Disable the all-too-sensitive backswipe on Chrome

Closes mathiasbynens#416.

* Update URLs

* .vimrc: Treat `.md` files as Markdown

`filetype` is set implicitly, without using setfiletype, because `*.md` is already associated with Modula-2 files and `setfiletype` doesn’t allow `filetype` to be set twice.

`setlocal` is used to apply a new `filetype` value for each Markdown file as it is being added to the buffer.

Fixes mathiasbynens#418. Closes mathiasbynens#419.

* .functions: Add SNI support in `getcertnames`

* Update URLs

* .functions: Improve `getcertnames`

* .gitconfig: Add alias to merge GitHub pull request

Ref. https://help.github.com/articles/checking-out-pull-requests-locally

Closes mathiasbynens#422.

* Brewfile: add some CTF tools

See https://github.com/ctfs/write-ups for more info.

* Brewfile: add binutils and cifer

* .osx: Disable transparency in the menu bar and elsewhere on Yosemite

* .osx: Remove a few commands that no longer have any effect in Yosemite

Closes mathiasbynens#436.

* .osx: Use the system-native print preview dialog in Chrome

Closes mathiasbynens#434.

* .aliases: Update `npm` the right way

`npm install npm -g` is the new recommended way to update npm as specified in the npm-faq at https://github.com/npm/npm/blob/master/doc/misc/npm-faq.md.

Closes mathiasbynens#423.

* .osx: Don’t send Safari search queries to Apple

* .osx: Make Yosemite Safari more useful

* Use `brew.sh` instead of `Brewfile`

Also, remove `Caskfile` since I didn’t use it.

Closes mathiasbynens#428.

* .bash_profile: Support multiple hosts in SSH completion

Useful in cases such as:

```

Host vm1 vm2 vm3 vm4
     Host localhost
     # ...
```

Simply adding a `-` to `tr` fixes this.

Closes mathiasbynens#437.

* .vimrc: Enable `g:solarized_termtrans`

It improves the display in OS X Terminal.app.

http://ethanschoonover.com/solarized/vim-colors-solarized

Ref. mathiasbynens#425.

* brew.sh: Use `--with-iri` for `wget`

The older `--enable-iri` flag is deprecated.

Closes mathiasbynens#445.

* .exports: Remove `export HOMEBREW_CASK_OPTS`

It’s not needed anymore now that the `Caskfile` has been removed.

Closes mathiasbynens#446.

* .aliases: Remove npmjs.eu reference

See the deprecation notice: http://npmjs.eu/

Closes mathiasbynens#448.

* .functions: Make `mkd` `cd` into the last directory in the list

…rather than the first.

Closes mathiasbynens#447 and mathiasbynens#450.

* brew.sh: Install Lua the new way

Closes mathiasbynens#453.

* .osx: Update `iOS Simulator.app` path

The iOS Simulator app has been moved.

Closes mathiasbynens#452.

* brew.sh: Update `gnu-sed` option

Closes mathiasbynens#454.

* .osx: Disable Spotlight suggestions from Safari

Safari has a “Spotlight Suggestions” setting that, if left enabled, will send a copy of all search queries to Apple.

Closes mathiasbynens#455.

* .osx: Add Yosemite’s search results for Spotlight

Yosemite introduces new Spotlight search results, and if you don’t add it to `defaults write com.apple.spotlight orderedItems` it will be removed from the System Preferences → Spotlight → Search Results` list with no way to re-enable them through the System Preferences panel.

Closes mathiasbynens#456.

* Add .gdbinit

* .osx: Fix comment for menu bar items

Closes mathiasbynens#459.

* .osx: Use `-array` instead of `-array ""`

Ref. mathiasbynens#350.

* .osx: Remove “increase window resize speed”

Sadly, this doesn’t work anymore in OS X 10.10.

* README: Tweak `~/.path` example

* brew.sh: Install speedtest_cli

Hat tip: @bramushttps://www.bram.us/2014/12/17/speedtest-cli/

* .osx: Kill apps with `-HUP` to make sure they restart

Note that a full system restart is needed after running `.osx` anyhow, but this small change improves the situation for those who don’t do that.

Closes mathiasbynens#469.

* .osx: Revert to plain `killall` without `-HUP`

This reverts commit 07cd263.

Ref. mathiasbynens#469.

* .gitconfig: Prevent showing files whose names contain non-ASCII symbols as unversioned

http://michael-kuehnel.de/git/2014/11/21/git-mac-osx-and-german-umlaute.html

Closes mathiasbynens#460.

* brew.sh: Fix copy-paste typo

Closes mathiasbynens#472.

* .osx: Add back the “increase window resize speed” hack

It didn’t work in OS X 10.10 anymore, but it seems OS X 10.10.1 does support it.

Ref. 4471e27.

* .curlrc: Remove `max-time`

Don’t globally timeout cURL operations without knowing the size of the files being downloaded. Hat tip: @necolas.

* .exports: Set `HISTCONTROL`

Omit duplicates and commands that begin with a space from history.

* .curlrc: Add back `connect-timeout`

This was removed by mistake in 216a633. Thanks to @alrra for spotting it!

* brew.sh: Install `openssh`

This includes a more up-to-date `ssh` binary.

* brew.sh: Install font tools

Thanks to @bramstein for creating these formulae!
https://twitter.com/bram_stein/status/556357864038883328

* bin: Point Bash symlink to `/usr/local/opt/bash/bin/bash`

This is a link to whatever happens to be both in-the-cellar and linked.

Ref. mathiasbynens#479 (comment). Fixes mathiasbynens#479.

* .gitconfig: Add `retag`

* bin: Update and improve `httpcompression`

Simplify and improve the `httpcompression` script while also modifying it so that it accepts multiple URLs and checks if `cURL` is installed.

Closes mathiasbynens#491.

* .osx: Fix code that sets the custom terminal theme

Fix the `.osx` script so that it correctly sets the custom terminal theme, and the change will be persistent.

Closes mathiasbynens#492.

* Install io.js & add aliases to switch to io/node

* Install `io.js`.
  https://iojs.org/en/index.html

* Add aliases to easily switch between `io.js` and `Node.js`.
  https://gist.github.com/phelma/ce4eeeedb8fb9a9e8e63

* README: Fix @alrra’s name

Closes mathiasbynens#495.

* .osx: Add Spectacle.app settings

Fixes mathiasbynens#507.

* .osx: Disable swipe navigation in Chrome for mouse users

Closes mathiasbynens#508.

* brew.sh: Add `ssh-copy-id`

`ssh-copy-id` allows one to easily set up passwordless SSH connections on a new machine. It does this by copying over your pubic key and setting the correct permissions.

It becomes as simple as `ssh-copy-id user@hostname.example.com`. Probably safer than using manual or scripted methods.

Ref. http://askubuntu.com/a/4833/42234.

Closes mathiasbynens#510.

* .aliases: Remove `use-iojs` and `use-node` in favor of nvm

https://github.com/creationix/nvm

* brew.sh: Add aircrack-ng

* .gvimrc: Don’t blink cursor in normal mode

Closes mathiasbynens#43 and mathiasbynens#473.

* .osx: Expand print dialog in Chrome & Opera by default

mathiasbynens#434 (comment)

* brew.sh: Install git-lfs

https://git-lfs.github.com/

* brew.sh: Use bash-completion2 for improved Bash 4 completion

Hat tip: @elyscape in mathiasbynens@91be10d#commitcomment-10654929.

* .osx: Update Spectacle.app keyboard shortcuts

* brew.sh: Install netpbm

* Add `--all` to `brew upgrade`

Homebrew recently started to hint that everyone should update their workflows for `brew upgrade`:

> brew upgrade with no arguments will change behaviour soon! It currently upgrades all formula but this will soon change to require `--all`. Please update any workflows, documentation and scripts!

Homebrew/legacy-homebrew@9032f16

Closes mathiasbynens#531.

* .exports: Enable persistent REPL history for `node`

This works as of io.js v2.0.0.

https://github.com/iojs/io.js/blob/v2.0.0/CHANGELOG.md#2015-05-04-version-200-rvagg

* .gitconfig: Add `push.followTags`

Thanks to @sindresorhus: https://twitter.com/sindresorhus/status/596347008975241216

* .osx: Fix `/private` path

Closes mathiasbynens#529.

* brew.sh: Add `dark-mode`

For toggling Dark Mode from the command-line.

https://github.com/sindresorhus/dark-mode

Closes mathiasbynens#545.

* .gitconfig: Use `hexdump` to diff binary files

* README: Add warning

Closes mathiasbynens#530, mathiasbynens#575, and mathiasbynens#576.

* .aliases: Make `emptytrash` clear download history too

See https://mths.be/bum for more details. Thanks to @nvartolomei for the suggestion in mathiasbynens#177.

* .exports: Add missing `export` commands

Closes mathiasbynens#585.

* .osx: Remove “enable text selection in Quick Look”

As of OS X 10.11, it no longer has any effect.

Closes mathiasbynens#580.

* .exports: Update Node environment variables

Thanks to @alrra for the heads up in mathiasbynens@9d30bd6#commitcomment-13835031.

* .osx: Simplify `killall` redirection

`&>` is the same as `2>&1`.

Closes mathiasbynens#589.

* .osx: Fix typo

Fixes mathiasbynens#592.

* .aliases: Enable colored `grep` output

Note that `GREP_OPTIONS=--color=auto` is deprecated in GNU `grep`.

Closes mathiasbynens#467 and mathiasbynens#590.

* .osx: Stop iTunes from automatically syncing connected devices

Closes mathiasbynens#593.

* .osx: Don’t enable “secure empty trash”

This feature has been removed, sadly, so enabling has no effect anymore.

https://support.apple.com/en-us/HT205267#CVE-2015-5901

Closes mathiasbynens#596.

* .exports: Add `PYTHONIOENCODING`

https://docs.python.org/2/using/cmdline.html#envvar-PYTHONIOENCODING

* .osx: Remove non-functional iTunes setting

Ref. mathiasbynens@cd88be0#commitcomment-14145185. Thanks to @chdiza!

* .osx: Bypass t.co URLs in Tweetbot

Hat tip: https://twitter.com/dermdaly/status/664065150329163777

* .bash_prompt: Improve escape sequences

Closes mathiasbynens#598. See mathiasbynens#598 (comment).

* .osx: Show only open applications in the Dock

Closes mathiasbynens#604.

* .gitconfig: Improve `mpr` command

Change the `mpr` command so that it merges the specified pull request into the current branch¹, or if a branch name is specified², into the specified branch.

¹ git mpr <number>
² git mpr <number> <branch_name>

Closes mathiasbynens#607.

* .osx: Disable the over-the-top focus ring animation

See http://arstechnica.com/apple/2014/10/os-x-10-10/5/ for an example.

Closes mathiasbynens#511.

* bin: Add Brotli and LZMA to `httpcompression`

Closes mathiasbynens#613.

* .osx: Prevent Photos from opening automatically

Closes mathiasbynens#608.

* .osx: Update Simulator paths for El Capitan

Closes mathiasbynens#616.

* brew.sh: Upgrade to PHP 5.6 (from 5.5)

PHP 5.5 caused a segmentation fault when trying to run `arc`, the `anarcist` command.

Ref. https://stackoverflow.com/a/33512066/96656.

Closes mathiasbynens#617.

* brew.sh: Add `testssl`

https://github.com/drwetter/testssl.sh

* .functions: Improve `fs`

Accept file names with a dash without interpreting them as a command-line flag. Found by running `shellcheck`.

Closes mathiasbynens#565.

* .osx: Show the `/Volumes` folder

Closes mathiasbynens#621.

* .bash_prompt: Improve title

This will set the title of the current terminal tab to the name of the folder you are in rather than the whole path.

Closes mathiasbynens#623.

* .bash_prompt: Improve terminal title

Closes mathiasbynens#625.

* bin: Remove `httpcompression`

@alrra maintains it now. Hopefully it can be moved to its own repository and installed through npm/brew soon.

See alrra/dotfiles#18.

* .osx: Remove duplicate `disablelocal` setting

This setting is already set under the “Time Machine” section.

Closes mathiasbynens#631.

* .gitconfig: Sign commits using GPG

* brew.sh: Install vbindiff

Probably the best binary diff tool out there.

* brew.sh: Remove useless use of `sudo`

Thanks to @jonnybarnes for spotting this.

Closes mathiasbynens#647.

* .bash_profile: Redirect all `which brew` output

On RHEL6, `which brew` prints `/usr/bin/which: no brew in …` to stderr. Changing `> /dev/null` to `&>/dev/null` redirects both stdout and stderr to `/dev/null`, silencing the check completely.

Closes mathiasbynens#650.

* .functions: Update `gitio` to use HTTPS

Looks like git.io recently enabled HTTPS. Because they’re now redirecting from HTTP to HTTPS the old script stopped working.

Thanks to @sixertoy for spotting this: mathiasbynens@4f48f25#commitcomment-17317282

* Enable GitHub highlighting for Bash files

Closes mathiasbynens#662.

* .brew.sh: Automate switch to brew-installed Bash

Closes mathiasbynens#658.

* .osx: Fix ⌘ + Enter shortcut in Mail.app

Removing `-string` and just passing the unescaped string value of the shortcut as a second param seems to solve the problem.

Closes mathiasbynens#603 and mathiasbynens#661.

* .functions: Add file size output to `targz`

Closes mathiasbynens#670.

* Rename .osx to .macos

Apple renamed OS X to macOS, so this repository must follow.

* .macos: Add some more Transmission options

* Do not prompt for download confirmation on magnet links.
* Activate the IP block list.

Closes mathiasbynens#679.

* .macos: Enable Secure Keyboard Entry in Terminal.app

Closes mathiasbynens#685.

* .macos: Make Safari config more robust/secure

Closes mathiasbynens#684.

* .macos: Auto-play videos when opened with QuickTime Player

Closes mathiasbynens#683.

* .macos: Extend Mac App Store configuration

Closes mathiasbynens#681.

* .macos: Remove `AllowBypassOfAutocompleteOff`

This setting is ignored by Safari 7.0.3+.

See https://discussions.apple.com/thread/6036813?start=0&tstart=0.

Thanks to @chdiza for pointing this out! mathiasbynens@4a4cdea#commitcomment-18177720

* .macos: Fix the keyboard repeat rate command

Closes mathiasbynens#687.
benkroeger added a commit to benkroeger/dotfiles that referenced this issue Aug 12, 2016
@wprater
Copy link

@wprater wprater commented Aug 16, 2016

Im on DP 5 and cannot seem to get the float to increase to speeds I was experiencing prior. also, you may need to tweak the InitialKeyRepeat value if you're getting no key repeat at all.

@mickeys
Copy link

@mickeys mickeys commented Aug 18, 2016

On macOS build 16a294a, after setting values through the prefs panel (and verifying that it works in the terminal), these are the values I see:

% defaults read NSGlobalDomain ApplePressAndHoldEnabled
0
% defaults read NSGlobalDomain KeyRepeat
6
% defaults read NSGlobalDomain InitialKeyRepeat
25
@kvpb
Copy link

@kvpb kvpb commented Aug 19, 2016

@wprater InitialKeyRepeat's value is actually the time it takes for key repeat to initialize, that is how long you have to stay pressing the key before it automatically repeats. Maybe it needs to be set to a shorter value along KeyRepeat in macOS Sierra?

Also, I highly discommend setting InitialKeyRepeat lower than [ 7 ; 10 ]: hardly will you press a key that 2 or 3 characters will have been input; on my 2013 MacBook Pro, I can set it to 5 but I need to keep it around 10 on my 2010 MacBook. See my .osxmavericks for more.

asbjornu added a commit to asbjornu/dotfiles that referenced this issue Aug 25, 2016
dunn added a commit to dunn/mb-dotfiles that referenced this issue Sep 1, 2016
@anhkind
Copy link

@anhkind anhkind commented Sep 21, 2016

I can't find any command that works for macOS Sierra. Something must have changed ...

@knpwrs
Copy link

@knpwrs knpwrs commented Sep 21, 2016

Same here. I just ugpraded to Sierra and I had to use... the GUI. And even then key repeat wasn't as fast as it was in El Capitan.

@danemacmillan
Copy link

@danemacmillan danemacmillan commented Sep 21, 2016

@knpwrs I'm experiencing the same thing. They key repeat set from CLI appears to have no affect. Furthermore, after a reboot, the settings set from the GUI are lost, which means I need to set the preferences every time.

@kdeldycke
Copy link
Contributor

@kdeldycke kdeldycke commented Sep 21, 2016

For keyboards and mouse fine-tuning I'm exploring the use of https://pqrs.org/osx/karabiner/ . Only thing is a rewrite of the app is in progress for macOS Sierra support at: https://github.com/tekezo/Karabiner-Elements

@jdsimcoe
Copy link
Author

@jdsimcoe jdsimcoe commented Sep 21, 2016

@anhkind @knpwrs @danemacmillan @kdeldycke If you want to close to 0 try this:

defaults write NSGlobalDomain KeyRepeat -int 1

It is as close as you can get on macOS Sierra.

@nuc
Copy link

@nuc nuc commented Sep 21, 2016

For me:

defaults write NSGlobalDomain KeyRepeat -int 1
defaults write NSGlobalDomain InitialKeyRepeat -int 10

makes it blazing fast. Even a bit too much, maybe.

@blakeperdue
Copy link

@blakeperdue blakeperdue commented Sep 21, 2016

This is sad, I really liked having blazing fast key repeat. Has anyone found anything faster than

defaults write NSGlobalDomain KeyRepeat -int 1
defaults write NSGlobalDomain InitialKeyRepeat -int 10

?

@rjorgenson
Copy link

@rjorgenson rjorgenson commented Sep 22, 2016

Nothing i've tried has been as fast as keyrepeat 1 and initialkeyrepeat 10 =/ I miss lightning fast, but I imagine i'll get used to this speed shortly.

@atripes
Copy link

@atripes atripes commented May 9, 2017

You can also use float like defaults write -g KeyRepeat -float 8.5

Meesayen added a commit to Meesayen/dotfiles that referenced this issue May 23, 2017
* bin: Remove `httpcompression`

@alrra maintains it now. Hopefully it can be moved to its own repository and installed through npm/brew soon.

See alrra/dotfiles#18.

* .osx: Remove duplicate `disablelocal` setting

This setting is already set under the “Time Machine” section.

Closes mathiasbynens#631.

* .gitconfig: Sign commits using GPG

* brew.sh: Install vbindiff

Probably the best binary diff tool out there.

* brew.sh: Remove useless use of `sudo`

Thanks to @jonnybarnes for spotting this.

Closes mathiasbynens#647.

* .bash_profile: Redirect all `which brew` output

On RHEL6, `which brew` prints `/usr/bin/which: no brew in …` to stderr. Changing `> /dev/null` to `&>/dev/null` redirects both stdout and stderr to `/dev/null`, silencing the check completely.

Closes mathiasbynens#650.

* .functions: Update `gitio` to use HTTPS

Looks like git.io recently enabled HTTPS. Because they’re now redirecting from HTTP to HTTPS the old script stopped working.

Thanks to @sixertoy for spotting this: mathiasbynens@4f48f25#commitcomment-17317282

* Enable GitHub highlighting for Bash files

Closes mathiasbynens#662.

* .brew.sh: Automate switch to brew-installed Bash

Closes mathiasbynens#658.

* .osx: Fix ⌘ + Enter shortcut in Mail.app

Removing `-string` and just passing the unescaped string value of the shortcut as a second param seems to solve the problem.

Closes mathiasbynens#603 and mathiasbynens#661.

* .functions: Add file size output to `targz`

Closes mathiasbynens#670.

* Rename .osx to .macos

Apple renamed OS X to macOS, so this repository must follow.

* .macos: Add some more Transmission options

* Do not prompt for download confirmation on magnet links.
* Activate the IP block list.

Closes mathiasbynens#679.

* .macos: Enable Secure Keyboard Entry in Terminal.app

Closes mathiasbynens#685.

* .macos: Make Safari config more robust/secure

Closes mathiasbynens#684.

* .macos: Auto-play videos when opened with QuickTime Player

Closes mathiasbynens#683.

* .macos: Extend Mac App Store configuration

Closes mathiasbynens#681.

* .macos: Remove `AllowBypassOfAutocompleteOff`

This setting is ignored by Safari 7.0.3+.

See https://discussions.apple.com/thread/6036813?start=0&tstart=0.

Thanks to @chdiza for pointing this out! mathiasbynens@4a4cdea#commitcomment-18177720

* .macos: Fix the keyboard repeat rate command

Closes mathiasbynens#687.

* .aliases: Use `LSCOLORS` for BSD and `LS_COLORS` for GNU

Closes mathiasbynens#697.

* .aliases: Add `gem cleanup` to `update` alias

This ensure that old gems are removed after `gem update`.

Closes mathiasbynens#705.

* .macos: Close System Preferences first

Closes mathiasbynens#706.

* .macos: Enable the Transmission blocklist

Closes mathiasbynens#708.

* .functions: Remove `calc`

Instead, @alrra’s upstream version should be used.

https://github.com/alrra/dotfiles/blob/2133bfed5d8bd2544cb3554e49657979acbb0c2f/src/shell/bash_functions#L5-L31

Hopefully it can be released as a standalone script, installable through brew or npm.

Closes mathiasbynens#703.

* .macos: Set keyboard repeat rate on macOS Sierra

Unfortunately it seems the float trick (6b4d961) no longer works in macOS Sierra. As @kirbysayshi pointed out, setting `KeyRepeat` to a float or zero value actually *disables* key repeat now (i.e. holding a key does nothing). It seems like setting it to `1` is the best we can do for now. Note that this is way slower than before.

Ref. mathiasbynens#687.

* .aliases: Update `pumpitup`

According to the AppleScript reference, `set volume $NUMBER` is deprecated.

https://developer.apple.com/library/content/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_cmds.html#//apple_ref/doc/uid/TP40000983-CH216-SW44

Closes mathiasbynens#699.

* README: Update link to @tejr’s dotfiles

* .brew.sh: Remove pointless symlink

The following is unnecessary:

    ln -s /usr/local/bin/gsha256sum /usr/local/bin/sha256sum

…because the non-prefixed version is already in `$(brew --prefix coreutils)/libexec/gnubin`.

Homebrew/brew#1171 (comment)

Closes mathiasbynens#709.

* .macos: Keep folders on top when sorting files by name in Finder

* brew.sh: Remove no-op flag in `brew upgrade`

The following warning message shows up when upgrading the Homebrew packages:

> Warning: We decided to not change the behaviour of `brew upgrade` so
`brew upgrade --all` is equivalent to `brew upgrade` without any other
arguments (so the `--all` is a no-op and can be removed).

Closes mathiasbynens#710.

* .aliases: Add `path`

Closes mathiasbynens#718.

* .macos: Disable line marks in Terminal.app

See alrra/dotfiles#36. Thanks to @alrra for the suggestion!

* .aliases: Add `ifactive`

This lists only the active network interfaces. Handy for quickly chopping down the wall-of-text that is `ifconfig`.

Credit to g.rocket over at https://unix.stackexchange.com/a/108048/6040.

Closes mathiasbynens#722.

* .macos: Avoid creating `.DS_Store` on USB volumes

Thanks to @Menubalk for the suggestion!

Ref. mathiasbynens#720.

* .macos: Remove unsupported user script settings

This is sadly not possible anymore.

Closes mathiasbynens#729.

* brew.sh: Update vim installation command

Closes mathiasbynens#743.

* .aliases: Add macOS `airport` alias

* .aliases: Add `chrome`

This alias makes it easier to run Chrome with command-line flags, e.g.

    chrome --app=https://mths.be/

* Add .tmux.conf

* .macos: Remove disabling of Sudden Motion Sensor for SSDs

The SMS setting is already disabled by default for SSDs. From https://support.apple.com/en-us/HT201666:

> Computers with Solid State Drives (SSD) or Flash Storage do not use SMS as the drives have no moving parts.

Closes mathiasbynens#755.

* .macos: Simplify `SystemUIServer` configuration

Closes mathiasbynens#731 and mathiasbynens#229.
Ref. mathiasbynens#305.

* .macos: Disable more automatic substitutions

Closes mathiasbynens#754.

* .gitconfig: Enable compaction heuristic for diffs

https://github.com/blog/2188-git-2-9-has-been-released#beautiful-diffs

Closes mathiasbynens#677.

* .macos: Add reference for subpixel font rendering

Closes mathiasbynens#736.

* .macos: Expand Transmission config

Closes mathiasbynens#735.

* .macos: Enable boot screen language menu

Closes mathiasbynens#732.

* .macos: Clean up `killall` list

* .macos: Tweak subpixel rendering

* .gitconfig: Use Git 2.11 option name for indent heuristic

https://github.com/blog/2288-git-2-11-has-been-released

Closes mathiasbynens#765.

* README: Explicitly call out `brew.sh` dependencies

Closes mathiasbynens#744.

* .macos: Disable auto-playing videos (commented out)

See https://gist.github.com/zwaldowski/0836e237d58eee82053914f8f2fd45ea and http://www.kirkville.com/stop-auto-play-videos-from-annoying-you-in-your-browser/.

Closes mathiasbynens#766.

* .aliases: Add `canary`
llgtr added a commit to llgtr/dotfiles that referenced this issue Jul 9, 2017
@weisjohn
Copy link

@weisjohn weisjohn commented Jul 28, 2017

a long time ago, in #687 (comment) , @mathiasbynens wanted a diff a b on defaults after changing some settings. I did that just now, and here's my diff:

103c103,104
<         KeyRepeat = 0;
---
>         InitialKeyRepeat = 15;
>         KeyRepeat = 2;
10086,10087c10087,10088
<         SPLoggingWindowHideCount = 6719;
<         SPLoggingWindowShowCount = 6720;
---
>         SPLoggingWindowHideCount = 6720;
>         SPLoggingWindowShowCount = 6721;
10091c10092
<         lastWindowPosition = "{{600, 316}, {680, 430}}";
---
>         lastWindowPosition = "{{600, 690}, {680, 56}}";
19897c19898
<                 Age = "8296.247732316";
---
>                 Age = "8402.392134855001";
20007a20009,20011
>                         56,
>                         1076,
>                         1077,
20010d20013
<                         56,
20897c20900
<         "NSWindow Frame Main Window Frame SystemPreferencesApp 8.0" = "1002 257 668 560 0 0 1920 1057 ";
---
>         "NSWindow Frame Main Window Frame SystemPreferencesApp 8.0" = "1002 274 668 543 0 0 1920 1057 ";

@mathiasbynens thanks for your dotfiles, they've continue to be helpful to me for years and years.

weisjohn added a commit to weisjohn/dotfiles that referenced this issue Jul 28, 2017
padi added a commit to padi/dotfiles that referenced this issue Aug 6, 2017
Looks like they've changed the scale in macOS Sierrra. `KeyRepeat -int 0` seems to be too impractical. I can't even hold backspace because it erases too much. Since you've taken this from another repo, it's worth referencing the same issue in that repo:

mathiasbynens/dotfiles#687
@padi
Copy link

@padi padi commented Aug 11, 2017

Leaving an update here. Using macOS Sierra 10.12.5 and it seems like
defaults write -g KeyRepeat -int 0 + logout + login now works, albeit too fast.

The scales have changed drastically, as @hkdobrev has previously stated. I've documented this behavior here:

keyrepeat

Take note that while the GIF is indeed skipping frames, it really does skip some frames until I stop holding the repeating key. It's that fast. The terminal frame skips seem to happen, but they're more evident in my older MacBook, which means this is probably just dependent on how much text the terminal can handle given the limited resources of the laptop.

This behavior "works" on both my 11-inch Mac Book Air (2014) and my 13-inch Mac Book Air (2017). I've since set it to 1, but it 2 can be comfortable as well since the new 1 might be a little bit too fast for some people.

padi added a commit to padi/dotfiles that referenced this issue Sep 21, 2017
Looks like they've changed the scale in macOS Sierrra. `KeyRepeat -int 0` seems to be too impractical. I can't even hold backspace because it erases too much. Since you've taken this from another repo, it's worth referencing the same issue in that repo:

mathiasbynens/dotfiles#687
ppries pushed a commit to ppries/dotfiles that referenced this issue Oct 4, 2017
Looks like they've changed the scale in macOS Sierrra. `KeyRepeat -int 0` seems to be too impractical. I can't even hold backspace because it erases too much. Since you've taken this from another repo, it's worth referencing the same issue in that repo:

mathiasbynens/dotfiles#687
zlot added a commit to zlot/dotfiles that referenced this issue Dec 4, 2017
bobek added a commit to bobek/dotfiles that referenced this issue Dec 5, 2017
Looks like they've changed the scale in macOS Sierrra. `KeyRepeat -int 0` seems to be too impractical. I can't even hold backspace because it erases too much. Since you've taken this from another repo, it's worth referencing the same issue in that repo:

mathiasbynens/dotfiles#687
csuhta added a commit to csuhta/environment that referenced this issue Jan 29, 2018
@kvpb
Copy link

@kvpb kvpb commented Mar 4, 2018

@mathiasbynens You could disable Slow Keys before setting key repeat, like so:

defaults write com.apple.universalaccess slowKey -int 0 # Disable Slow Keys.
defaults write NSGlobalDomain ApplePressAndHoldEnabled -bool FALSE # Disable Press-And-Hold for keys.
defaults write NSGlobalDomain InitialKeyRepeat -int 10 # Set key repeat triggering delay to even shorter.
defaults write NSGlobalDomain KeyRepeat -int 3 # Set key repeat rate to even faster.
matt-hh added a commit to matt-hh/dotfiles that referenced this issue Aug 23, 2018
Looks like they've changed the scale in macOS Sierrra. `KeyRepeat -int 0` seems to be too impractical. I can't even hold backspace because it erases too much. Since you've taken this from another repo, it's worth referencing the same issue in that repo:

mathiasbynens/dotfiles#687
ashrafhadden pushed a commit to ashrafhadden/dotfiles that referenced this issue Mar 11, 2019
ashrafhadden pushed a commit to ashrafhadden/dotfiles that referenced this issue Mar 11, 2019
Unfortunately it seems the float trick (4eca564) no longer works in macOS Sierra. As @kirbysayshi pointed out, setting `KeyRepeat` to a float or zero value actually *disables* key repeat now (i.e. holding a key does nothing). It seems like setting it to `1` is the best we can do for now. Note that this is way slower than before.

Ref. mathiasbynens#687.
c0nscience added a commit to c0nscience/dotfiles that referenced this issue Jun 13, 2019
c0nscience added a commit to c0nscience/dotfiles that referenced this issue Jun 13, 2019
Unfortunately it seems the float trick (6b4d961) no longer works in macOS Sierra. As @kirbysayshi pointed out, setting `KeyRepeat` to a float or zero value actually *disables* key repeat now (i.e. holding a key does nothing). It seems like setting it to `1` is the best we can do for now. Note that this is way slower than before.

Ref. mathiasbynens#687.
@hprobotic
Copy link

@hprobotic hprobotic commented Sep 30, 2019

In case you guys found default ./.macos setting is too fast. Here is good setting:

defaults write NSGlobalDomain KeyRepeat -int 3
defaults write NSGlobalDomain InitialKeyRepeat -int 20
@a-x-
Copy link

@a-x- a-x- commented Feb 21, 2020

It works for me:
sudo defaults write NSGlobalDomain KeyRepeat -float 0.000000000001

W/o sudo it does not work

@kvpb
Copy link

@kvpb kvpb commented Feb 22, 2020

wouldn't've thought to try sudo. Does it work for other broken commands?

parejadan added a commit to parejadan/dotfiles that referenced this issue Apr 4, 2020
parejadan added a commit to parejadan/dotfiles that referenced this issue Apr 4, 2020
Unfortunately it seems the float trick (6b4d961) no longer works in macOS Sierra. As @kirbysayshi pointed out, setting `KeyRepeat` to a float or zero value actually *disables* key repeat now (i.e. holding a key does nothing). It seems like setting it to `1` is the best we can do for now. Note that this is way slower than before.

Ref. mathiasbynens#687.
alrra added a commit to alrra/dotfiles that referenced this issue Oct 12, 2020
alrra added a commit to alrra/dotfiles that referenced this issue Oct 19, 2020
alrra added a commit to alrra/dotfiles that referenced this issue Oct 19, 2020
alrra added a commit to alrra/dotfiles that referenced this issue Oct 20, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet