Skip to content

Instantly share code, notes, and snippets.

@dragon788
Forked from philc/gist:e849b48e6c5f32592d62
Last active August 29, 2015 14:20
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dragon788/9b1c208f05706b8b2ca8 to your computer and use it in GitHub Desktop.
Save dragon788/9b1c208f05706b8b2ca8 to your computer and use it in GitHub Desktop.
#!/bin/sh
# This script lists user defined search engines in Chromium.
# It replaces {inputEncoding}, which appears in some search engine definitions, with
# UTF-8, {google:baseURL} with the Google URL, and omits other such tokens.
# Location of Chromium's 'Web Data' SQLite3 file
CHROMIUM_WEB_DATA="$HOME/.config/chromium/Default/Web Data"
# Location to create temporary copy of 'Web Data', since the database is locked while
# Chromium is running
COPY=$(mktemp)
cp "$CHROMIUM_WEB_DATA" "$COPY"
sqlite3 <<COMMANDS "$COPY" |
.echo off
.separator ': '
select keyword, url from keywords;
.quit
COMMANDS
sed -e \ '
s#{searchTerms}#%s#g
s#{google:baseURL}#https://google.com/#g
s#{inputEncoding}#UTF-8#g
s#&?[^{}?&]\+={[^}]\+}##g
s#{[^}]\+}##g
'
rm "$COPY"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment