用于管理降价注释的Shell脚本

2020-07-20 19:12:39

这是一个独立的shell脚本,它使用预先存在的工具(如TMSU和Recoll)为减价注释提供界面。

它基于命令并打印出任何给定命令的可用子命令,这意味着您可以像使用个人维基一样使用标记文件目录,非常类似于OneNote/Evernote/Notec,例如:

例如,如果您想要从您的降价笔记(#Tags或YAML)中提取所有标记,Cadmus有一个工具可以做到这一点:

最终的想法是用一个菜单来分派我已经拥有的不同脚本,这样我就可以更容易地与同学们分享这些脚本。

Cadmus将从一个自包含的目录中工作,并以这种方式向~/.local/bin添加一个符号链接,它是零锁定的,它不会修改Markdown文件的Curr目录。

安装将在其目录(默认情况下为~/.cadmus)中自动创建一个配置文件。

下载cadmus并根据SystemD标准~/将其放入路径中。local/bin应位于$PATH中,如果您正在使用其他初始化实现,可以通过如下操作将此目录添加到";$PATH";IT中:

##应在bash/zsh/fish ECHO$PATH|grep";$HOME/.local/bin";&;>;/dev/null&;&;echo";$HOME/.local/bin";||ls";$HOME/.local/bin";&;>;/dev/null&;&;echo';path=";$path中运行。';>;>;$HOME/.profile

第一次运行时,脚本将提示您在运行该脚本的目录中创建一个配置文件。

备注是:Recoll动态更新它的索引备注目录将需要由Recoll建立索引,以便在使用Cadmus搜索时显示结果。

固态硬盘我使用固态硬盘,所以我让一些脚本非常低效(例如,像grep|Cut|xargs find这样的脚本,以避免创建变量),我不知道硬盘性能是否会很好。

在MacOS上,您将需要定义xdg-open并拥有GNU核心,因此请执行如下操作:

目前搜索只使用缺省的recoll配置,我打算将其修改为使用~/.cadmus作为配置目录,这样就不会干扰缺省配置。

如果~/.recoll比笔记索引更多,实际上这不是问题,因为您只需在..Cadmus中修改对Skim(SK)的调用即可。若要使用~/Notes/MD开始呼叫,请执行以下操作。

Cadmus充当脚本获取内容的菜单,实际工作将由描述符所表示的子脚本完成。bash子脚本将以注释目录作为参数,因此它们是可移植的和模块化的。

脚本名称应该始终打印到终端,这样就可以重新调整单个脚本的用途,而不需要通过代码进行搜索。

如果第一个参数是-h或-,下标应该只接受一个参数(或STDIN)--将打印帮助,然后退出0。

这可能会导致一些限制,但简单性是为了健全性、模块性和可扩展性。

将始终返回绝对路径。我使用了相对路径,但是当从脚本内的函数内部调用脚本时,它变得很混乱,所以如果您需要相对路径,则应该执行scriptname';./';|xargs realpath--Relative-to=';./';

如果任何依赖项随pip或Cargo一起安装,则需要将这些目录添加到您的路径中:

##bash echo';export path=";$HOME/.local/bin:$path";$home/.go/bin:$path";';>;>;~/.bashrc##zsh echo';export path=";$HOME/.local/bin:$path";export path=";$HOME/.go/bin:$path"。~/.bashrc##fish echo';set path$HOME/.local/bin$path set path$HOME/bin$path set path";$HOME/.cargo/bin$path';>;>;~/.config/fish/config.fish。

我写这些都是考虑到别名的,当我决定使用一些别名时,我会放上我的fish函数。(我还想要自动完成)。

†你不能用fzf从vim中打开文件,所以得到的结果是否。‡与Dokuwiki不同,所有东西都在数据库中,所以它使用插件就会被拒绝*