/firefox-history

Application to explore url history from firefox database. Integrated with emacs through org-protocol.

Primary LanguageEmacs Lisp

Firefox History

This is a tool to explore url history that is located within firefox database. It is Emacs integrated. One can check if url has been visited and when directly from firefox by executing a command through org-protocol.

setup

Install package (doom)
(package! firefox-history
  :recipe (:host github
           :repo "natask/firefox-history"
           :branch  "master"
           :files (:defaults "firefox-history")))
use package
(use-package  firefox-history
  :after ((org) (org-protocol))
  :custom
  (firefox-database-location   "~/.mozilla/firefox/ynulz4el.dev-edition-default/places.sqlite")
  )
firefox emacs integration (surfing keys)

GitHub - brookhong/Surfingkeys: Map your keys for web surfing, expand your browser with javascript and keyboard. my surfing keys config

function protocolCall(type, template="", extra = ""){
    var url = location.href;
    var title = (document.title || new Date().toString());
    javascript:location.href =
        'org-protocol://'
        + type
        + '?template='
        + template
        + '&ref='
        + encodeURIComponent(url)
        + '&title='
        + encodeURIComponent(title)
        + extra;
}
mapkey('cf', 'org protocol capture ref', function() {
    protocolCall("firefox-history");
});

dependencies

  • python file firefox-history that is distributed alongside. Wasn’t written in elisp because emacsql throws error when parsing unquoted urls that contain #.

import sqlite3 import subprocess import shlex from datetime import datetime from docopt import docopt