备份您的笔记
BetterStickies 会自动保存您的笔记,并每天保留一份副本以防出现意外。您也可以自己做一份手动备份。
您的笔记存储在哪里
您的笔记位于 BetterStickies 配置文件夹中的 data 文件夹内:
| 平台 | 数据文件夹 | 每日备份 |
|---|---|---|
| Linux | ~/.config/BetterStickies/data/ | ~/.config/BetterStickies/backups/ |
| Windows | %APPDATA%\BetterStickies\data\ | %APPDATA%\BetterStickies\backups\ |
| macOS | ~/Library/Application Support/BetterStickies/data/ | ~/Library/Application Support/BetterStickies/backups/ |
在数据文件夹里,notes 文件夹为每条笔记保存一个文件(回收站中的笔记也包括在内)。从 1.5 版本起,笔记的提醒就保存在这条笔记自己的文件里。notes 文件夹旁边则是您粘贴过的所有截图,以及您添加的所有音频片段。
您也可以在 菜单 > 设置… 中,常规选项卡底部的数据存储部分找到这个路径。那里有一个打开文件夹按钮,可以直接带您过去。
在 Windows 上,Microsoft Store 版和从 betterstickies.com 下载的版本使用的是同一个文件夹。如果两者都装了,它们会显示同样的笔记。请先把两者都更新到 1.4,再去使用另一个:无论您先启动哪一个 1.4,它都会把您的笔记转换成新格式,另一个直接就能找到它们。仍停留在 1.2 的安装读不了新格式,打开后是空的,而它在那之后保存的笔记不会被合并进来(参见下面的回退到旧版本)。
自动备份
每天 BetterStickies 第一次保存时,会把您的全部笔记(包括回收站)复制一份,写入上表所示的 backups 文件夹。最近 7 天的副本都会保留,因此即使问题过后才被发现,也仍然可以恢复。backups 文件夹特意放在数据文件夹之外:任何损坏数据文件夹的情况都波及不到它。
有两点保证这些副本的安全:
- 如果没有可复制的内容(所有笔记都被删除,或者 notes 文件夹被 BetterStickies 之外的某个东西清空),当天就不会生成副本,较旧的副本得以保留。
- 如果某条笔记无法读取,在它能重新被读取之前,不会删除任何旧副本。
从 1.5 版本起,您的提醒是笔记的一部分,因此每日副本也包含它们。
第一次启动 1.5 版本时,它会把您的笔记更新为新格式(您无需做任何事),并在此之前先在 backups 文件夹中保存一份副本,名为 notes-before-1.5.json:也就是旧版本留下时的笔记。这份副本永远不会被自动删除,如果您将来要回退到 1.4,就需要用到它(参见回退到旧版本)。
如果某个笔记文件损坏了,BetterStickies 无法自行修复。它会跳过这条笔记,让文件原样留在原处,并在启动时告诉您。请参见下面的从备份恢复。
您可能会在数据文件夹里看到的文件
| 文件 | 是什么 |
|---|---|
notes 文件夹 | 您的笔记,每条笔记一个文件 |
reminders.json.migrated、reminders.backup.json.migrated | 您的提醒在更新到 1.5 版本之前的样子(1.5 把提醒移进了笔记文件中),为回退到 1.4 而保留 |
screenshots 和 audio 文件夹 | 您粘贴的图片,以及您添加到笔记中的音频片段 |
notes.json.migrated、deleted_notes.json.migrated | 您的笔记在更新到 1.4 版本之前的样子,作为备份保留 |
*.unreadable-…、*.not-imported-… | BetterStickies 无法导入的旧格式笔记文件(参见疑难解答) |
*.snapshot-…、*.backup.json、*.corrupt-…、*.pre-shrink-… | 较旧的救援副本,不去动它们是安全的 |
手动备份
先关闭 BetterStickies,然后把整个 data 文件夹复制到安全的地方。这份副本包含您的笔记、提醒,以及 BetterStickies 为它们保存的截图和音频片段,但不会复制文件快捷方式所引用的外部文件,也不会复制您从电脑其他位置选取的背景图片。
您也可以使用导出笔记,做一份便于阅读的文本或 Markdown 存档,或者一份结构化的 JSON 副本。导出不会附带图片文件,而且 BetterStickies 目前没有导入命令。
在多台电脑之间同步
借助 Dropbox、OneDrive、Google Drive 或 Syncthing 之类的云服务同步 data 文件夹,您就可以在多台电脑上使用自己的笔记。
每次只在一台电脑上使用 BetterStickies。 在一台电脑上关闭它,等同步完成后再到另一台上打开。之后的版本将提供一种在多台电脑上使用笔记的安全方式。
要更新到 1.5 版本? 请更新共用该文件夹的每台电脑。一旦有一台电脑启动了 1.5,1.4 版本就会提示需要更新版本并关闭,而不会打开笔记,因此不会有任何内容混在一起。
要更新到 1.4 版本? 1.4 版本把每条笔记存成单独的文件。请先把共用该文件夹的每台电脑都更新到 1.4,再在上面使用 BetterStickies;第一台电脑更新之后,请等同步服务完成同步。仍在使用旧版本的电脑会以旧格式保存笔记,而 1.4 不会把这些混进您的笔记:它会把它们单独放在一边并告诉您(参见疑难解答)。
从 1.4.2 版本起,保存在数据文件夹中的图片和音频片段在共用该文件夹的每台电脑上都能正常使用,即使数据文件夹位于不同的路径也是如此。笔记只是链接到的内容会留在原处:从电脑其他位置选取的背景图片、文件快捷方式,或者超过 50 MB 的音频片段(只会链接而不会复制;参见文件快捷方式),在另一台电脑上可能无法使用。
从备份恢复
从手动备份恢复全部内容: 关闭 BetterStickies。把当前的 data 文件夹改名(比如改成 data-old),让原位置空出来,然后把您备份的 data 文件夹复制到上面表格中的位置,再重新打开 BetterStickies。不要把备份直接复制覆盖到现有文件夹上:两边的文件会混在一起,而且 1.4 之前做的备份根本不会被恢复(BetterStickies 反而会把其中的笔记放在一边,详见疑难解答)。在确认笔记无误之前,请保留 data-old。从 1.4.2 版本起,保存在数据文件夹中的图片和音频片段也会一并恢复,即使您是在另一台电脑上或在另一个用户名下恢复。
从每日备份恢复一条笔记(例如 BetterStickies 报告无法读取的笔记):关闭 BetterStickies,用文本编辑器打开最新的一份完好的每日副本(backups 文件夹中的 notes-YYYYMMDD.json)。找到这条笔记的条目:也就是从它的 "id" 之前开始、一对相互匹配的 { 和 } 之间的全部内容。把这个条目单独另存为 notes 文件夹中的一个新文件,以该 id 命名并加上 .json 后缀(例如 3f2a…-…9c.json),替换掉损坏的文件。然后重新打开 BetterStickies。
从每日备份恢复全部笔记: 关闭 BetterStickies。在数据文件夹中,把 notes 文件夹改名(比如改成 notes-old)。把您想用的那份每日副本复制到数据文件夹中两次:一次命名为 notes.json,一次命名为 deleted_notes.json(后者用来恢复回收站)。重新打开 BetterStickies。它会把它们导入一个全新的 notes 文件夹,就像您第一次更新到 1.4 时那样(这会替换掉那次更新留下的两个 .migrated 文件,所以如果想保留它们,请先把它们复制到别处)。1.5 或更高版本生成的每日副本会把提醒和笔记一起恢复;更早版本生成的副本(或 notes-before-1.5.json)只恢复笔记,不含提醒。
回退到旧版本
从 1.5 回退到 1.4
1.4 版本读不了 1.5 保存的笔记:它会提示需要更新版本并关闭。要手动回退:
- 关闭 BetterStickies 并安装 1.4 版本。先不要启动它。
- 在数据文件夹中,把 notes 文件夹移到别处(移出数据文件夹)。
- 把 backups 文件夹中的
notes-before-1.5.json复制到数据文件夹中两次:一次命名为notes.json,一次命名为deleted_notes.json(后者用来恢复回收站)。如果数据文件夹里已经有您更新到 1.4 时留下的notes.json.migrated和deleted_notes.json.migrated,而您想保留它们,请先把它们复制到别处:这一步会替换掉它们。 - 把
reminders.json.migrated改回reminders.json,把reminders.backup.json.migrated改回reminders.backup.json(两者中您有哪个就改哪个)。 - 启动 1.4 版本。
您会得到第一次启动 1.5 时的笔记和提醒。您在 1.5 中新建或修改过的笔记和提醒不包括在内。如果想要更新一些的笔记,请在第 3 步中改用最新的每日备份,而不是 notes-before-1.5.json,把它复制到数据文件夹中,分别命名为 notes.json 和 deleted_notes.json;它的提醒存放在笔记里面,1.4 不会读取,因此第 4 步仍然只能找回 1.5 之前就有的提醒。
在 Windows 和 Linux 上,原先设为旧版 Inter 字体的笔记,回退后会改用系统的标准字体显示。
如果您之后再次更新到 1.5,它会根据 1.4 留下的内容重新更新您的笔记,并生成新的 notes-before-1.5.json 和新的 .migrated 文件,取代旧的那些。
回退到 1.4 之前的版本
1.4 之前的版本读不了新的 notes 文件夹,打开后会是空的。如果您必须回退:
- 关闭 BetterStickies 并安装旧版本。
- 在数据文件夹中,把
notes.json.migrated改名为notes.json,把deleted_notes.json.migrated改名为deleted_notes.json。如果您已经用过 1.5 版本,还要把reminders.json.migrated改回reminders.json。
之后,旧版本会显示您更新到 1.4 时的笔记。您在 1.4 中新建或修改过的笔记不包括在内(它们仍留在 notes 文件夹里)。如果想要更新一些的内容,请改为把最新的每日备份复制到数据文件夹中,分别命名为 notes.json 和 deleted_notes.json:它最多只有一天的差距。
如果您之后再次更新到 1.4,您会得到 1.4 当时拥有的笔记。旧版本在这期间保存的任何内容都会作为 notes.json.not-imported-… 单独保留,而不会混进来;您可以用文本编辑器打开它,把文字复制出来。