Table of contents:
aspell is a noice command-line spell checker I use for various things, including this blog post, readme and other docs in open and private source projects, etc.
I use it on multiple machines and it’d be stupid to not sync my dictionary between them.
Dropbox or any other file sync service (Google Drive, Yandex.Disk, Box, etc) is a pretty easy solution for this problem.
Discover where aspell stores dictionaries
aspell seems to store user’s dictionaries directly in
$HOME (at least
aspell installed from Homebrew on macOS).
$ ls -la ~ -rw-r--r-- 1 user group 24 May 7 13:45 .aspell.en.prepl -rw-r--r--@ 1 user group 781 May 7 13:45 .aspell.en.pws
In this example
~/.aspell.en.pws is my custom EN dictionary.
To sync it between machines via Dropbox you need to:
- Move dictionary file to Dropbox
- Symlink dictionary file(s) from Dropbox back to
Move dictionary file to Dropbox
I use following Dropbox folder structure:
$ mkdir -p ~/Dropbox/shared-env/aspell
$ mv ~/.aspell.en.pws ~/Dropbox/shared-env/aspell/aspell.en.pws
Symlink dictionary from Dropbox
$ ln -s ~/Dropbox/shared-env/aspell/aspell.en.pws ~/.aspell.en.pws
Add another machine
On another machine, you’ll need to remove existing dictionary file(s) (make sure to merge them with ones from Dropbox if needed) and symlink the ones from Dropbox.
Remove existing dictionary file:
$ rm ~/.aspell.en.pws
Then repeat Symlink dictionary from Dropbox step.