Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- REM Script for editing Firefox bookmarklets
- @echo off
- echo.
- set bookmarkId=%1
- if [%bookmarkId%] NEQ [] GOTO EditBookmark
- REM --- READ AND SHOW BOOKMARKLETS FROM FIREFOX SQLITE DB
- echo !!! Replace USERNAME on the next line and delete this one
- set placesDb=C:\Users\USERNAME\AppData\Roaming\Mozilla\Firefox\Profiles\zyp8ydid.default\places.sqlite
- sqlite3 %placesDb% " select substr(' ' || b.id || ' ', 1, 12), b.title, k.keyword from moz_bookmarks b left join moz_keywords k on b.fk = k.place_id left join moz_places p on p.id = b.fk where p.url like 'javascript:%%' order by b.title;"
- REM --- ASK BookmarkId
- echo.
- set bookmarkId=
- set /p bookmarkId="Enter Bookmark ID: "
- if [%bookmarkId%] == [] GOTO End
- :EditBookmark
- REM --- READ place id AND url from FIREFOX DB
- sqlite3 %placesDb% " select p.id from moz_bookmarks b left join moz_places p on p.id = b.fk where b.id = %bookmarkId%"> bookmarklet-tmp.id
- set /p placeId=<bookmarklet-tmp.id
- del bookmarklet-tmp.id
- sqlite3 %placesDb% " select p.url from moz_bookmarks b left join moz_places p on p.id = b.fk where b.id = %bookmarkId%"> bookmarklet-tmp.js
- set /p url=<bookmarklet-tmp.js
- REM --- CLEAR CODE (javascript:, %20, % 20)
- powershell -Command "(gc bookmarklet-tmp.js) -replace '%%20', ' ' | Out-File -encoding ASCII bookmarklet-tmp-1.js"
- powershell -Command "(gc bookmarklet-tmp-1.js) -replace '%% 20', ' ' | Out-File -encoding ASCII bookmarklet-tmp.js"
- powershell -Command "(gc bookmarklet-tmp.js) -replace 'javascript:', '' | Out-File -encoding ASCII bookmarklet-tmp-1.js"
- del bookmarklet-tmp.js
- ren bookmarklet-tmp-1.js bookmarklet-tmp.js
- REM --- BACKUP ?
- REM copy bookmarklet-tmp.js bookmarklet-bak.js
- REM --- BEAUTIFY, EDIT AND MINIFY AGAIN
- js-beautify -x bookmarklet-tmp.js> bookmarklet-tmp-pretty.js
- call vim bookmarklet-tmp-pretty.js
- echo|set /p=javascript:> bookmarklet-tmp.js
- js-beautify -s 0 -e "" -c "" bookmarklet-tmp-pretty.js>> bookmarklet-tmp.js
- powershell -Command "(gc bookmarklet-tmp.js) -replace 'javascript: ', 'javascript:' | Out-File -encoding ASCII bookmarklet-tmp-1.js"
- del bookmarklet-tmp.js
- ren bookmarklet-tmp-1.js bookmarklet-tmp.js
- REM --- PRINT RESULT AND COPY TO CLIPBOARD
- cls
- echo.
- cat bookmarklet-tmp.js
- cat bookmarklet-tmp.js|clip
- echo.
- REM !!! NOR WORKING !!! --- CALCULATE HASH AND UPDATE FIREFOX DB
- REM // https://gist.github.com/boppreh/a9737acb2abf015e6e828277b40efe71
- REM python firefox-url-hash.py bookmarklet-tmp.js> bookmarklet-tmp.hash
- REM set /p urlHash=<bookmarklet-tmp.hash
- REM del bookmarklet-tmp.hash
- REM echo sqlite3 %placesDb% " update moz_places set url = readfile('bookmarklet-tmp.js'), url_hash = %urlHash% where id = %placeId%; "
- REM del bookmarklet-tmp.js
- REM del bookmarklet-tmp-pretty.js
- :End
Advertisement
Add Comment
Please, Sign In to add comment