Notice

This page show a previous version of the article

Bookmarklets

A bookmarklet is a relatively short piece of JavaScript code (of perhaps 100 to 2000 characters in length) that the browser runs on the current page. It begins with "javascript:" instead of "http://". Otherwise, you can treat it just like any standard bookmark. For instance, in Firefox, you can keep a bookmarklet together with your other bookmarks on the bookmark bar.

Whereas a user script is typically installed from a site such as http://userscripts.org, bookmarklets can be saved by whichever means you use to create a bookmark. Simply replace the "Location" or "URL" field by the bookmarklet string.

Tatoeba bookmarklets

The following bookmarklet (author: AlanF_US), which will operate on any Tatoeba page (i.e., a page beginning with the string "http://tatoeba.org"), will let you link two sentences by copying their IDs or URLs into fields. It is based on a bookmark by Zifre, but it has the following advantages:

  • It does not require you to be on a page that shows one of the sentences.

  • It will accept not only a sentence number (e.g., "1000000"), but a sentence URL (e.g., "http://tatoeba.org/eng/sentences/show/1000000"). Since right-clicking on a link to a sentence and choosing "Copy Link Location" (or its equivalent in your browser) will give you a full URL, this saves you work because you don't need to trim the leading part of the URL before submitting it.

The text of the bookmarklet follows:

javascript:var%20u=0;var%20e="Enter%20number%20or%20URL%20of%20";var%20s="%20sentence";var%20a=window.prompt(e+"first"+s,"");if(a!=null){var%20t=/(http:\/\/tatoeba.org\/[a-z]{3}\/sentences\/show\/)?([1-9][0-9]*)/;var%20r=a.match(t);if(r!=null){var%20an=r[2];var%20b=window.prompt(e+"second"+s,"");if(b!=null){r=b.match(t);if(r!=null){var%20bn=r[2];u%20=1;c="http://tatoeba.org/eng/links/add"+"/"+an+"/"+bn;location.href=c;}}}}if(u==0){window.alert("Invalid%20input");}

See also

See the Wikipedia page on bookmarklets or this short introduction for more details on bookmarklets.