frece
v1.0.6
维护按频率排序的数据库(频率+新近度)。
只需下载最新版本并将frece
可执行文件添加到PATH
即可。
Arch Linux 用户可以从 AUR 包frece
或frece-git
安装。
frece
提供以下子命令:
increment Increases an entry's count and resets its timer
init Creates a database file from given list of entries
print Prints list of frecency sorted entries
update Updates a database file from given list of entries
有关更多信息,请参阅frece --help
或Examples
部分。
首先创建一个数据库:
# Create list of entries
$ echo " apple
banana
cherry " > fruits.txt
# Initialize a database using list of items
$ frece init " fruits.db " " fruits.txt "
访问条目并打印出按频率排序的条目列表:
# Access an entry
$ frece increment " fruits.db " " cherry "
# Print out frecency sorted list
$ frece print " fruits.db "
cherry
apple
banana
此外,数据库可以用新条目更新:
# Create another list
$ echo " apple
cherry
elderberry
grapefruit " > fruits.txt
# Update database with new list
# Optionally, purge old entries like "banana"
$ frece update " fruits.db " " fruits.txt " --purge-old
# Print out frecency sorted list (verbosely)
$ frece print " fruits.db " --verbose
frecency count last access date item
0.128476 1 2019-05-17T00:49:14+00:00 cherry
0.000000 0 1970-01-01T00:00:00+00:00 apple
0.000000 0 1970-01-01T00:00:00+00:00 elderberry
0.000000 0 1970-01-01T00:00:00+00:00 grapefruit
以下示例可以在examples
目录中找到:
examples/dir Open a directory
examples/emoji Copy an emoji to clipboard
examples/file Open a file
例如, examples/dir
可以使用如下:
初始化/更新$HOME/.frece_dir.db
中的数据库,提供要索引的目录路径列表:
SEARCH_PATHS=( " $HOME " " /some/other/path " )
./examples/dir_update.sh " ${SEARCH_PATHS[@]} "
提示:通过 systemd 计时器或 cronjob 定期运行此命令以刷新数据库。
使用 rofi 打开,可选择提供参数列表:
ROFI_ARGS=(-p ' folders ' -i -levenshtein-sort)
./examples/dir_rofi.sh " ${ROFI_ARGS[@]} "
这将打开一个 rofi 菜单,其中的条目按频率排序:
同样,还提供了其他示例,包括用于将表情符号复制到剪贴板的 rofi 脚本: