• 1 Post
  • 12 Comments
Joined 1 year ago
cake
Cake day: June 12th, 2023

help-circle










  • I tried the python code out and it actually does work for me, ie. I’m able to update an existing bookmark.

    # hashing code from link inserted here
    def update_place(id, new_url):
        new_url_hash = url_hash(new_url)
        conn = sqlite3.connect('places.sqlite')
        cur = conn.cursor()
        cur.execute('UPDATE moz_places SET url = ?, url_hash = ? WHERE id = ?', (new_url, new_url_hash, id))
        conn.commit()
        cur.close()
        conn.close()
    
    update_place(16299, "javascript:alert('Testing bookmarklet update ...');alert('Great success!');")
    

    Only annoying thing is that Firefox needs to be closed while updating. Anyway, I haven’t tried with bigger scripts though, so there might be some gotchas there.

    Agreed, keywords are really nice for keyboard navigation!


  • Thanks a million, great info once again! I didn’t realize that the %s was simply replaced (because that seems a little dirty), but it makes sense in the bookmark context.

    Yeah, the development flow is a little tricky :) Ideally it would be nice to re-apply/import them automatically without user interaction and/or run automated testing. I fiddled a little with the command-line (for testing), ie. firefox -url “javascript:…”, but it doesn’t seem to work. Accessing the places database directly would be great of course. I’ve been thinking about using the enterprise policies, but haven’t gotten around to testing it.