15 个不稳定版本 (3 个重大变更)
0.4.3 | 2019 年 10 月 31 日 |
---|---|
0.4.2 | 2019 年 10 月 24 日 |
0.3.4 | 2019 年 10 月 21 日 |
0.2.4 | 2019 年 10 月 7 日 |
0.1.0 | 2019 年 10 月 4 日 |
200 在 文本编辑器 中
91KB
2.5K SLoC
我的日记
我的日记 是一个生产力工具,可以帮助您管理您的想法、日记、笔记和任务。 我的日记 仅仅是在您的默认编辑器上的一层薄薄的外壳,它将用来以清晰且开放的结构来组织您的文本笔记。
文本用户界面模式
命令行界面模式
初始化新仓库
要初始化一个新仓库,让 我的日记 执行以下操作
mkdir -p ~/MyJournals/demo
cd ~/MyJournals/demo
mj init .
这将产生最小化的文件夹结构
.
├── ideas
├── journals
├── notes
└── tasks
处理想法
要开始为 超级项目
捕获想法,请输入以下命令
mj idea edit super-project
这将在您的默认 $EDITOR
中打开,您可以在此处写下所有相关信息。在您退出编辑器后,我的日记 将确保您的想法存储在正确的结构中
.
├── ideas
│ └── super-project.md
├── journals
├── notes
└── tasks
要继续在 edit
命令中处理 超级项目
想法
mj idea edit super-project
要列出注册的想法,请输入以下内容
mj ideas list
最后,要删除一个想法,您可以执行以下操作之一:使用 edit
命令删除内容并保存文件(我的日记 将为您删除空文件),或者调用以下类似的 remove
命令
mj idea remove super-project
注意,
i
、idea
和ideas
是同义词,可以互换使用。
处理日记
日记的处理方式与想法略有不同。让我们看看它是如何工作的
mj journal edit
这将在您的默认 $EDITOR
中打开,您可以在此处写下今天的相关信息。在您退出编辑器后,我的日记 将确保您的今天日记记录存储在正确的结构中(假设此刻的 today
对我来说是 2019-10-02
)
.
├── ideas
├── journals
│ └── 2019-10-02
│ └── journal.md
├── notes
└── tasks
要继续处理今天的日记,请输入相同的 edit
命令
mj journal edit
如果您可能想处理其他日期的日记,可以使用以下命令
mj journal edit 1d
这将让您处理昨天的日记。如果您需要特定日期,您随时可以做到
mj journal edit 2019-09-04
这将自然地让您从 2019-09-04
开始处理您的日记。
要按注册时间降序列出已注册的日记,只需输入以下内容
mj journals list
最后,要从特定日期删除日记,您可以选择 edit
并清除内容后保存文件(My Journal 将负责删除空文件),或者通过调用以下 remove
命令
mj journal remove 1d
这将删除昨天的日记(如果您愿意,这里也可以使用特定日期)。或者,您可以使用以下命令删除今天的日记
mj journal remove
请注意,
j
、journal
和journals
是同义词,可以互换使用。
处理笔记
笔记的处理方式与 想法 和 日记 不同。让我们看看它是如何工作的
mj note edit algorithms sieve-of-eratosthenes
这将打开您的默认 $EDITOR
,您可以在其中写下有关主题 埃拉托斯特尼筛法 的所有相关信息,该主题属于 算法 类别。退出编辑器后,My Journal 将确保您的笔记存储在正确的结构中
.
├── ideas
├── journals
├── notes
│ └── algorithms
│ └── sieve-of-eratosthenes.md
└── tasks
要继续添加到您的笔记,您可以使用相同的 edit
命令
mj note edit algorithms sieve-of-eratosthenes
要列出所有类别中的现有笔记,请输入以下内容
mj notes list
要列出现有类别,请输入以下内容
mj notes list --categories
最后,要列出特定类别的笔记,只需运行以下命令
mj notes list algorithms
最后,要从特定类别删除笔记,您可以选择 edit
并清除内容后保存文件(My Journal 将负责删除空文件),或者通过调用以下 remove
命令
mj note remove algorithms sieve-of-eratosthenes
请注意,
n
、note
和notes
是同义词,可以互换使用。
处理任务
任务的处理方式与 笔记 类似。让我们看看它是如何工作的
mj task edit super-project
这将打开您的默认 $EDITOR
,您可以在其中写下有关超级项目的所有相关信息。退出编辑器后,My Journal 将确保您的任务存储在正确的结构中
.
├── ideas
├── journals
├── notes
└── tasks
└── super-project
└── tasks.md
要继续为 super-project
中的任务工作,您可以使用相同的 edit
命令
mj task edit super-project
要列出所有项目中的所有现有任务,请输入以下内容
mj tasks list
要列出现有项目,请输入以下内容
mj tasks list --projects
最后,要列出特定项目中的任务,只需运行以下命令
mj tasks list super-project
最后,要从特定项目删除任务,您可以选择 edit
并清除内容后保存文件(My Journal 将负责删除空文件),或者通过调用以下 remove
命令
mj task remove super-project
请注意,
t
、task
和tasks
是同义词,可以互换使用。
配置文件
My Journal 可在 ~/.config/my-journal/config
文件中进行配置。以下是如何查看默认配置的示例
global_vault_root = '/home/kuznero/.local/share/my-journal'
view_delimiter = '¶'
input_delimiter = '::'
task_not_done_prefix = '-'
task_not_done_display_prefix = '☐'
task_in_progress_prefix = '*'
task_in_progress_display_prefix = '⟳'
task_done_prefix = '+'
task_done_display_prefix = '☑'
这些设置是全局设置,适用于所有我的日记仓库。但我的日记允许您为任何仓库单独覆盖任何设置。为此,您需要在我的日记仓库的根目录下创建一个名为.mjconfig
的文件,并将全局配置文件中的任何设置放置在其中,例如以下内容
view_delimiter = '¶'
input_delimiter = '::'
task_not_done_prefix = '-'
task_not_done_display_prefix = '?'
task_in_progress_prefix = '~'
task_in_progress_display_prefix = '.'
task_done_prefix = '+'
task_done_display_prefix = '↷'
为您的shell生成完成脚本
为了使事情更简单,我的日记允许您为支持的shell之一(Bash、Fish、Zsh、PowerShell或Elvish)生成完成脚本。
为了启用我的日记在您的shell中的完成功能,您只需运行以下命令之一
source <(mj completion bash)
source <(mj completion fish)
source <(mj completion zsh)
source <(mj completion powershell)
source <(mj completion elvish)
依赖关系
~9.5MB
~160K SLoC