跨平台书签文件

跨平台书签文件

我上班时使用 Windows XP,在家时使用 OS X。我在这两种操作系统上都使用 Firefox。我同步了某些文件夹,我喜欢将链接拖放到这些文件夹中以便稍后查看。在 XP 上,链接文件保存为 .url,而在 OS X 上,链接文件保存为 .webloc,并且这两种操作系统上的 Firefox 都无法使用对方使用的格式(.url 文件至少可以在 OS X 上的 Safari 中打开)。

我希望继续使用文件,而不必在电子邮件中保存链接或者在 delicious 之类的网站上。我还想继续在两种环境中使用 Firefox。有没有办法让任一操作系统上的 Firefox 都能容纳来自另一个操作系统的文件?也许是扩展或插件?我对哪种格式有效并不挑剔。理想情况下,我想保留这两种格式,因为我喜欢选择,但两种格式都可以。

答案1

与其将链接文件放入文件夹,为什么不在书签中创建另一个文件夹,以便以后查看这些链接呢?然后您可以在书签工具栏上显示该文件夹,并轻松地将链接放入其中。然后您可以使用标记跨平台、跨浏览器管理您的书签。

替代文本

答案2

如果您在 Snow Leopard 中双击 .url 文件,它将在 Safari 中打开。要让它在 Firefox 中打开:

  1. 打开 Applescript 编辑器
  2. 粘贴下面的 Applescript(由此 Stack Overflow 帖子
  3. 另存为应用程序
  4. 在 Finder 中,选择一个 .url 文件
  5. Get Info从文件菜单中选择
  6. 在打开方式下指定此新应用程序
  7. 点击Change All,并确认操作

为了在 XP 中的 Firefox 中打开 .webloc 文件,我制作了一个 C# 应用程序:

  1. 打开 Visual Studio。Express 版本由 Microsoft 免费提供。
  2. File菜单 -> New->Project
  3. 选择Console Application。命名。确定
  4. 在 中Solution Explorer,右键点击项目名称 ->Properties
  5. 输出类型:Windows Application。因此,当 Windows 打开控制台应用程序时,不会显示任何控制台窗口
  6. 将以下 C# 程序粘贴到Program.cs
  7. Build菜单 ->Build Solution
  8. 双击 .webloc 文件。当系统询问使用哪个程序时,请从列表中选择,然后浏览到您刚刚创建的新 exe

Apple脚本:

on open the_droppings

    set filePath to the_droppings

    set fileContents to read filePath

    set secondLine to paragraph 2 of fileContents

    set tid to AppleScript's text item delimiters
    set AppleScript's text item delimiters to "="
    set URLstring to last text item of secondLine
    set AppleScript's text item delimiters to tid

    do shell script "/usr/bin/open -a Firefox.app " & quoted form of URLstring
end open

C# 应用程序:

using System;
using System.IO;
using System.Diagnostics;
using System.Xml;

class Program {
    static void Main(string[] args) {
        if (args == null || args.Length == 0 || Path.GetExtension(args[0]).ToLower() != ".webloc")
            return;

        string url = "";

        XmlTextReader reader = new XmlTextReader(args[0]);
        while (reader.Read()) {
            if (reader.NodeType == XmlNodeType.Element && reader.Name == "string") {
                reader.Read();
                url = reader.Value;
                break;
            }
        }

        // I specify Firefox because I have weird demands for my work computer.
        // To have it open in your default browser, change that line to this:
        // Process.Start(url);
        if (!String.IsNullOrEmpty(url))
            Process.Start("Firefox", url);
    }
}

答案3

我想扩展一下jtimberman对 delicious 的回答(+1)。

  1. 您可以保存私人书签在美味上
    • 你可以分享这些书签(即使是私人团体也会受到限制)
    • 书签可以导出(到您的备份)和导入
      (也许,即使在备份中进行了一些编辑之后也是如此——这是一个 XML 文件)。
      请查看我在第一点的回答以了解更多注释。
    • 您还可以跨平台将书签与 Firefox 浏览器同步。
      这意味着,它们在每个浏览器实例上都显示为本地书签(并在后台同步)。了解更多信息,请访问常问问题

相关内容