Skip to content

1History/eww-history-ext

Repository files navigation

eww-history-ext

https://github.com/1History/eww-history-ext/actions/workflows/lisp-ci.yml/badge.svg https://github.com/1History/eww-history-ext/actions/workflows/rust-ci.yml/badge.svg

Persist EWW histories into SQLite.

Besides EWW, packages below are also supported:

Welcome to open an issue if you have any issues or suggestions.

Usage

  1. Download eww-history-ext.el
  2. Download required shared object, and rename it to eww-history-ext-dyn.so or dll suffix if you are on Windows
    • From release page according to your operating system
    • Or you can build it yourself by make release. Be sure cargo is preinstalled.
  3. Put el and so files under load-path

Here is a use-package config demo(:vc is introduced since Emacs 30.1):

(use-package eww-history-ext
  :vc (:url "https://github.com/1History/eww-history-ext.git"
       :rev "v0.2.2"
       :make "release")
  :custom ((eww-history-ext-elfeed-integration t)
           (eww-history-ext-db-file "/path/to/your/eww-history-ext.db")) ;; customize your db file location
  :config
  (eww-history-ext-enable))

After enable eww-history-ext, histories of eww (and elfeed) will be saved into SQLite, you can use M-x eww-history-ext-list to browse saved histories.

In *eww-history-ext* buffer,

  • Only latest 1000 histories are displayed by default, users can customize this via eww-history-ext-default-query-limit.
  • Press s to filter histories with specific keyword.
  • Press RET to visit history at point
  • Press column name to sort.

macOS

If you are using macOS, you may see error like below when loading shared object:

eww-history-ext-dyn.so not valid for use in process: library load disallowed by system policy)

Try

xattr -d com.apple.quarantine <location_of_eww-history-ext-dyn.so

Screenshots

screenshots/list.png

Development

;;; 加载热启动模块
(module-load "/tmp/emacs-module-rs/target/debug/libemacs_rs_module.dylib")
(require 'rs-module)

;;; 重启加载 so 文件
(rs-module/load "/tmp/eww-history-ext/eww-history-ext-dyn.so")

;;; 查询最新历史数据
(setq eww-history-ext-db nil)
(eww-history-ext-query-latest)

LICENSE

Copyright (c) 2022 Jiacai Liu <[email protected]>

eww-history-ext is distributed under GPL-3.0 license.

About

Persist EWW histories into SQLite.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published