备份 Atom 配置三种方式
缘起:经过一个周末奋战,Hackintosh (黑苹果) 终又满血复活。此次升级经历着实惨痛。
虽啃上 macOS 10.12 Sierra 公测版,终不敌显卡驱动难题,重回旧版。但系统一旦升级,不可降级。索性格式化系统盘重装。回头望去,一路坎坷,还好取得些经验、感悟,遂记录之。
千头万绪,暂且小处着手,慢慢道来,第一篇。
折腾 Windows 时就养成了保留安装包的习惯,以备不时之需。在转移 macOS 后也一直维护自己的软件清单 Mac 学习笔记(四)软件篇(持续更新)。但软件各种配置还是过于繁琐,徒徒浪费好多光阴,有没有更好的解决方案?
在配置「Karabiner」键盘键位软件时,想起之前写过 Mac 学习笔记(五)键盘映射,真是救命稻草,复制配置文件,习惯的键位马上回归,舒爽!
又想起 Emacs, Vim 之类软件备份方案,只需维护一份配置文件,包含插件和自定义设置。配置文件一加载,便恢复曾经的模样,实为上策。
借鉴此思想,用 dropbox 同步了一个 myConfig
文件夹,用来保存各软件配置文件,免去配置之苦。
思路定下,开始研究各软件配置文件了。首当其冲是编辑器 Atom,总结了三种备份方案,与大家分享下。
1. apm stars
这是官方插件管理方式,查看 官方说明
首先你需要拥有一个 Github 账户,在 atom.io 看到什么好插件,只需点击 star 收藏。某天,你想一次把收藏插件全部安装,只需执行命令:
apm install stars # 会提示你输入自己的 token
按照提示一步一步来就可以。更多操作执行 apm stars --help
查看。
优点:官方支持,操作简单,云同步。
缺点:自定性差,必须安装全部插件;仅同步插件,不能同步设置。
2. 自定义插件单
我查了下自己的收藏单,原来我收藏这么多不错插件,包括很多 Ruby 开发相关插件,但这段时间又用不到。全部安装,指定影响速度,只想装部分插件,又不想一条一条命令输,毕竟咱们是程序员,搬砖也要花式。
设想自己写个 bash 脚本,让安装命令一条条自己执行就好,也可再次使用。如果需要自己把插件一条条复制过来就显得太艰辛了。
写了个小脚本,访问 atom.io
自己的 stars all 界面,在浏览器调试环境下执行,获得脚本需要文本,脚本如下:
/*
* Author: bobo
* date: 2016.08.29
* 1. 访问 https://atom.io/users/yourname/stars
* 2. 鼠标右键,审查元素(inspect)
* 3. 点击 Console
* 4. 粘贴代码,回车
*/
var stars = [].slice.call($('.card-name a'), 0),
res = ''
stars.map(star => {
res += `apm install ${star.text}\n`
})
console.log(res)
执行效果如下:
获取安装信息
然后新建 my_atom.sh
文件,给脚本添加可执行权限 chmod +x my_atom.sh
,最后执行脚本 ./my_atom.sh
#!/bin/bash
apm install xxx
优点:自定义安装插件
缺点:需要自己维护及同步,不能同步设置。
3. 利用 Sync-setttings 插件备份
最后,祭出大杀器,请看这里 sync-settings,它利用 gist 云同步插件及配置:
- Sync Atom's and package settings
- Sync installed packages
- Sync user keymaps
- Sync user styles
- Sync user init script
- Sync snippets
- Sync user defined text files
- Manual backup/restore to a gist
使用方法,参考官方说明(注意,安装好插件,需要重启,不然看不到 setting 选项)。
效果非常好,如图:
同步的配置项
优点:完美恢复到备份时的状态
缺点:多装一个插件。
通过这次经验,如不是出于清理电脑目的,整体采用 TimeMachine 备份才是王道。
保存软件配置文件,并同步,又加了道保险,且多台电脑间同步有奇效。