Import/Export ALL Supported Bookmark Properties
-
Sorry for the long post. I am attempting to summarize a large number of related Bookmark Import/Export requests which I suspect may not be reflected in vote counts. I expect they all involve the same few areas of code, so I think it would be most efficient to address them together in a single plan.
In most applications, exporting data to a file and then importing that file produces an identical copy of what was exported. Unfortunately, Vivaldi's Export Bookmarks and Import Bookmarks HTML File currently do not handle Description, Nickname, and Separators. That causes loss of data when:
- Exporting Vivaldi bookmarks for import into Firefox;
- Importing a Bookmarks HTML file exported by Firefox;
- Using Vivaldi Export/Import to back up and restore bookmarks (as recommended in several posts);
- Exporting bookmarks to HTML for post-processing (yes, I actually do that).
These are serious problems when importing or exporting a set of bookmarks which is too large for practical correction of results by hand. For example, my Firefox bookmark HTML file contains approximately 15,000 bookmarks, 2,500 folders, 900 hand-written descriptions, and 1000 separators. Several potential Firefox converts posted that they were dissuaded after discovering the omissions.
Many requests for one or another of these properties have been appearing since 2016. Most posts have few or no votes, so it is hard to quantify the level of interest. I spent several afternoons tracking down the list under Related Posts below. I found 25 unique posts and 42 votes, which may overlap. I could not find a change request which covers import/export of all the properties. Exporting Vivaldi to HTML file for import and export comes close, but an Ambassador reply suggests upvoting Import Firefox Keywords as Nicknames instead.
Bookmark Property Details
Firefox Bookmark HTML format supports all the missing properties, so these changes only require copying existing data to and from existing places:
-
Description is stored as a
<DD>
element immediately following the bookmark's<DT>
element (as usual in a<DL>
description list). The field may contain either web page META Descriptions, or text notes entered manually by a user. Newlines are preserved. Firefox stopped supporting Description several years ago, but HTML files exported earlier may still contain them (I have one, and I yearn for a way to import it). -
Nickname looks equivalent to Firefox Keyword, which appears as a SHORTCUTURL attribute of the bookmark's
<DT>
element (see below). Exporting and Importing Vivaldi Nickname as SHORTCUTURL seems like the obvious thing to do. There are various similar requests, such as:
Import Firefox Keywords as Nicknames (6 votes). -
Firefox exports and imports Separators as
<HR>
elements, which Vivaldi import ignores. Vivaldi exports separators as:
<DT><A HREF="http://bookmark.placeholder.url/" ADD_DATE="{Date}">---</A>
which seems like a strange way to do it. However, Vivaldi imports those items as bookmarks with name "---", which the user must then replace one by one with a separator. Ideally, Vivaldi should export Separators as<HR>
, and should import both that form and the "---" form as separators. One post says the problem is covered by bug report VB-44225.
This request does NOT include adding support for Firefox Tags. That is a more complex issue, and could require additions to Vivaldi's bookmarks database and UI. There are separate requests to import Tags as Nicknames (which would conflict with importing SHORTCUTURL). For example:
- Tagging Bookmarks, Searching by Tags, Importing Tags from Firefox (24 votes);
- Import Firefox Tags as Nicknames (6 votes) (Ambassador's recommendation for upvoting);
HTML Export/Import Format
Below is my view of the desired format's main elements (newlines/comments added for clarity). It is based primarily on files exported from Firefox and Vivaldi. I have not been able to find a definitive format specification.
A bookmark can have a subset of the attributes listed. A browser's import function typically ignores those which are absent and those which the browser does not support.
<!-- Folder: --> <DT><H3 ADD_DATE="{Date}" -- Decimal seconds since midnight 1/1/1970 -- LAST_MODIFIED="{Date}" -- Decimal seconds since midnight 1/1/1970 -- >{Folder Name}</H3> <DL><p> {Bookmarks and/or Folders and/or Separators} </DL><p> <!-- Bookmark: --> <DT><A HREF="{Bookmark URL}" -- Bookmark's target address -- ADD_DATE="{Date}" -- Decimal seconds since midnight 1/1/1970 -- LAST_MODIFIED="{Date}" -- Decimal seconds since midnight 1/1/1970 -- ICON_URI="{Icon URI}" -- Bookmark's favicon address; Not in Vivaldi -- ICON="{Inline Image Data}" -- Bookmark's favicon image, typically base64 -- SHORTCUTURL="{Phrase}" -- Firefox KEYWORD or Vivaldi NICKNAME. -- TAGS="{List}" -- Comma separated; Not supported in Vivaldi -- PERSONAL_TOOLBAR_FOLDER="true" -- Present ONLY on Bookmarks Toolbar Folder -- >{Bookmark Title}</A> <DD>{Bookmark META Description and/or other free-form text, possibly with multiple lines. No longer in Firefox, but may exist in previously exported files.} <!-- Separator: --> <HR>
The format is simple HTML which can be viewed by opening the file in a web browser or HTML editor. I use Stylus to apply some CSS which indents the nested lists for readability.
Related Posts
Below are all the posts I could find which request or suggest adding one or more of these properties to Bookmark Import/Export. I tried to omit exact duplicates. Many of the posts requesting Description were diverted into discussion of Tags, so it's not clear what change the votes are for.
2020
- Include Bookmark Descriptions in HTML Import/Export (@ExOpera12User, 1 vote)
- How to Export to local file all "Bookmarks Details"? (@Moody, 1 vote)
- Exporting Vivaldi to HTML file for import and export (@dmcritchie, 2 votes)
- still getting dashes instead of bookmarks separator (@urfausto, VB-44225)
2019
- Upgrade, Fails to Launch, Ugh! (@gpalz)
- Importing bookmarks WITH descriptions from Firefox (@stephr1)
- export/import bookmarks: separators (@urfausto, @Pathduck, VB-44225)
2018
- Firefox bookmark keywords not imported to Vivaldi nickname (@rhubarbpieguy)
- Import Firefox Keywords as Nicknames (@Pesala, 6 votes)
- Import Bookmark Separators from Firefox and Opera 12 (@GBB, 10 votes)
- Import Firefox Tags as Nicknames (@pinakel, 7 votes)
2017
- Feature requests for 1.6 (@ozoratsubasa)
- Feature requests for Vivaldi 1.14 (@duarte.framos)
- How to migrate all bookmarks to Firefox? (@smbv)
- Feature requests for 1.13 (@duarte.framos)
- Feature requests for 1.12 (@ozoratsubasa)
2016
- Feature Requests for 1.7 (@Too_many_browsers)
- Lighten up your Day with Vivaldi Browser (@duarte.framos)
- Feature requests for 1.5 (@ozoratsubasa)
- Features requests for 1.4 (@ozoratsubasa)
- Tagging Bookmarks, Searching by Tags, Importing Tags from Firefox (@Novan Leon, 24 votes)
- Snapshot 1.3.519.25 - Color picker for themes and more⦠(@ozoratsubasa)
- Sugerencias (@Rafaeljuan)
- Snapshot 1.3.501.6 - Customizable UI themes (@ozoratsubasa)
- Snapshot 1.2.490.3 - Clearer download progress (@duarte.framos)
-
Related Posts (revised)
Below are the 25 posts I found which request or suggest adding one or more of these properties to Bookmark Import/Export. I tried to omit exact duplicates, but some of the 17 authors posted different wording or combinations in several version requests. Many of the posts requesting Description were diverted into discussion of Tags, so it's not clear what change the votes are for.
2020
- @ExOpera12User: Include Bookmark Descriptions in HTML Import/Export (1 vote)
- @Moody: How to Export to local file all "Bookmarks Details"? (1 vote)
- @dmcritchie: Exporting Vivaldi to HTML file for import and export (2 votes)
- @urfausto: still getting dashes instead of bookmarks separator (VB-44225)
2019
- @gpalz: Upgrade, Fails to Launch, Ugh!
- @stephr1: Importing bookmarks WITH descriptions from Firefox
- @urfausto, @Pathduck: export/import bookmarks: separators (VB-44225)
2018
- @rhubarbpieguy: Firefox bookmark keywords not imported to Vivaldi nickname
- @Pesala: Import Firefox Keywords as Nicknames (6 votes)
- @GBB: Import Bookmark Separators from Firefox and Opera 12 (10 votes)
- @pinakel: Import Firefox Tags as Nicknames (7 votes)
2017
- @smbv: How to migrate all bookmarks to Firefox?
- @duarte.framos:
- @ozoratsubasa: Feature requests for 1.12
2016
-
I doubt anything will happen any day soon, as Vivaldi probably relies on the Chromium base code for this functionality. But you get an A for the effort of just compiling all those threads
As a developer, you might already be aware that the Vivaldi
Bookmarks
file is in JSON format and that there's a ton of tools out there (mostly Python and command-line) to parse and manipulate such a file. Not that necessarily would help for this case, I agree that Vivaldi should support all the fields of the Netscape format bookmarks file. -
@GJS Nice compilation.
I'm no longer using Vivaldi at the moment, but that would certainly help me get back.
The fact that I don't feel my information is safely stored is part of it, bookmarks can't be faithfully saved/exported without information loss, and the fact that search engines are not safely stored in some well defined reliable and exportable way is troubling for me.The lack of a proper portable mode is also a problem, and without thorough data export tools, exclusively relying on sync to properly backup and restore your data has been less than ideal, and failed too often
-
For a partial workaround, see This Script Exports Full Bookmark Data to HTML.
-
-
I have been exporting my bookmarks since I started using Vivaldi a couple of years ago. Today I realized that nicknames and description data are not saved in the export, which astounded and troubled me. I use those elements a lot, and really need them backed up. For now I will back up the bookmark JSON database. If and until this problem is rectified, I would recommend some kind of indication that those elements aren't being exported, so that users don't find out when they really need the backup. The menu button could be reworded as "Export Bookmark Names & URLs", or an intermediate page between the menu and the location selection screen could explain the situation.
-
@libcub You could rename the menu yourself in Settings, Appearance, Menu Customisation.
-
@libcub -- If you back up the
bookmarks
JSON file, you may want to also back up thefavicons
SQLite file. Those two should enable a full restore of your bookmarks.For another approach, see This Script Exports Full Bookmark Data to HTML. You could call it from a Windows shortcut, or from a script as part of a broader backup or other procedure. I call it from a makefile, so that it re-exports only if the bookmarks have changed.
I think the Vivaldi documentation should have a description of what Bookmark Import/Export do and do not, but I haven't had time to write up a change request. Does anyone read documentation any more?
-
@Pesala I don't mean for me. I mean for other users who probably are not aware of the issue.
-
@GJS I still read (and therefore appreciate) documentation!
-
Ppafflick moved this topic from Automotive News on
-
Since the release of Vivaldi 5.6, bookmarks' descriptions and nicknames are included in the import/export feature. Separators are also included, although the format hasn't been changed. If you'd wish for this to be changed, please start a new topic.
In the future, please post only one request per thread, as it makes it more difficult to maintain and follow up on requests asking for multiple features/changes in one post. Thank you!
-
Ppafflick moved this topic from Desktop Feature Requests on