V2EX Polish Firefox

Examine source code of V2EX Polish

By: LeoKu
Inspect and view changes in V2EX Polish source codes across current and past versions
Please login to examine the extension's source code.
manifest.json
{
  "manifest_version": 3,
  "name": "V2EX Polish",
  "version": "2.4.45",
  "description": "专为 V2EX 用户设计,提供了丰富的扩展功能。",
  "permissions": [
    "scripting",
    "contextMenus",
    "storage",
    "alarms"
  ],
  "host_permissions": [
    "https://v2ex.com/*",
    "https://www.v2ex.com/*",
    "https://cn.v2ex.com/*",
    "https://jp.v2ex.com/*",
    "https://de.v2ex.com/*",
    "https://us.v2ex.com/*",
    "https://hk.v2ex.com/*",
    "https://global.v2ex.com/*",
    "https://fast.v2ex.com/*",
    "https://s.v2ex.com/*",
    "https://origin.v2ex.com/*",
    "https://edge.v2ex.com/*",
    "https://staging.v2ex.com/*",
    "https://global.v2ex.co/*"
  ],
  "icons": {
    "16": "images/icon-16.png",
    "32": "images/icon-32.png",
    "48": "images/icon-48.png",
    "128": "images/icon-128.png"
  },
  "content_scripts": [
    {
      "matches": [
        "https://v2ex.com/*",
        "https://www.v2ex.com/*",
        "https://cn.v2ex.com/*",
        "https://jp.v2ex.com/*",
        "https://de.v2ex.com/*",
        "https://us.v2ex.com/*",
        "https://hk.v2ex.com/*",
        "https://global.v2ex.com/*",
        "https://fast.v2ex.com/*",
        "https://s.v2ex.com/*",
        "https://origin.v2ex.com/*",
        "https://edge.v2ex.com/*",
        "https://staging.v2ex.com/*",
        "https://global.v2ex.co/*"
      ],
      "css": [
        "css/v2ex-theme-var.css",
        "css/v2ex-theme-default.css",
        "css/v2ex-theme-dark.css",
        "css/v2ex-theme-compact.css",
        "css/v2ex-theme-dawn.css",
        "css/v2ex-theme-minimalist.css",
        "css/v2ex-theme-mobile.css"
      ],
      "run_at": "document_start",
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/*",
        "https://www.v2ex.com/*",
        "https://cn.v2ex.com/*",
        "https://jp.v2ex.com/*",
        "https://de.v2ex.com/*",
        "https://us.v2ex.com/*",
        "https://hk.v2ex.com/*",
        "https://global.v2ex.com/*",
        "https://fast.v2ex.com/*",
        "https://s.v2ex.com/*",
        "https://origin.v2ex.com/*",
        "https://edge.v2ex.com/*",
        "https://staging.v2ex.com/*",
        "https://global.v2ex.co/*"
      ],
      "js": [
        "scripts/polyfill.js"
      ],
      "run_at": "document_end",
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/*",
        "https://www.v2ex.com/*",
        "https://cn.v2ex.com/*",
        "https://jp.v2ex.com/*",
        "https://de.v2ex.com/*",
        "https://us.v2ex.com/*",
        "https://hk.v2ex.com/*",
        "https://global.v2ex.com/*",
        "https://fast.v2ex.com/*",
        "https://s.v2ex.com/*",
        "https://origin.v2ex.com/*",
        "https://edge.v2ex.com/*",
        "https://staging.v2ex.com/*",
        "https://global.v2ex.co/*"
      ],
      "css": [
        "css/v2ex-effect.css"
      ],
      "js": [
        "scripts/jquery.min.js",
        "scripts/common.min.js"
      ],
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/*",
        "https://www.v2ex.com/*",
        "https://cn.v2ex.com/*",
        "https://jp.v2ex.com/*",
        "https://de.v2ex.com/*",
        "https://us.v2ex.com/*",
        "https://hk.v2ex.com/*",
        "https://global.v2ex.com/*",
        "https://fast.v2ex.com/*",
        "https://s.v2ex.com/*",
        "https://origin.v2ex.com/*",
        "https://edge.v2ex.com/*",
        "https://staging.v2ex.com/*",
        "https://global.v2ex.co/*"
      ],
      "exclude_matches": [
        "*://*/t/*",
        "*://*/notes/*",
        "*://*/settings",
        "*://*/write",
        "*://*/member/*"
      ],
      "js": [
        "scripts/jquery.min.js",
        "scripts/v2ex-home.min.js"
      ],
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/t/*",
        "https://www.v2ex.com/t/*",
        "https://cn.v2ex.com/t/*",
        "https://jp.v2ex.com/t/*",
        "https://de.v2ex.com/t/*",
        "https://us.v2ex.com/t/*",
        "https://hk.v2ex.com/t/*",
        "https://global.v2ex.com/t/*",
        "https://fast.v2ex.com/t/*",
        "https://s.v2ex.com/t/*",
        "https://origin.v2ex.com/t/*",
        "https://edge.v2ex.com/t/*",
        "https://staging.v2ex.com/t/*",
        "https://global.v2ex.co/t/*"
      ],
      "js": [
        "scripts/jquery.min.js",
        "scripts/v2ex-topic.min.js"
      ],
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/write/*",
        "https://v2ex.com/write?*",
        "https://www.v2ex.com/write/*",
        "https://www.v2ex.com/write?*",
        "https://cn.v2ex.com/write/*",
        "https://cn.v2ex.com/write?*",
        "https://jp.v2ex.com/write/*",
        "https://jp.v2ex.com/write?*",
        "https://de.v2ex.com/write/*",
        "https://de.v2ex.com/write?*",
        "https://us.v2ex.com/write/*",
        "https://us.v2ex.com/write?*",
        "https://hk.v2ex.com/write/*",
        "https://hk.v2ex.com/write?*",
        "https://global.v2ex.com/write/*",
        "https://global.v2ex.com/write?*",
        "https://fast.v2ex.com/write/*",
        "https://fast.v2ex.com/write?*",
        "https://s.v2ex.com/write/*",
        "https://s.v2ex.com/write?*",
        "https://origin.v2ex.com/write/*",
        "https://origin.v2ex.com/write?*",
        "https://edge.v2ex.com/write/*",
        "https://edge.v2ex.com/write?*",
        "https://staging.v2ex.com/write/*",
        "https://staging.v2ex.com/write?*",
        "https://global.v2ex.co/write/*",
        "https://global.v2ex.co/write?*"
      ],
      "js": [
        "scripts/jquery.min.js",
        "scripts/v2ex-write.min.js"
      ],
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/member/*",
        "https://www.v2ex.com/member/*",
        "https://cn.v2ex.com/member/*",
        "https://jp.v2ex.com/member/*",
        "https://de.v2ex.com/member/*",
        "https://us.v2ex.com/member/*",
        "https://hk.v2ex.com/member/*",
        "https://global.v2ex.com/member/*",
        "https://fast.v2ex.com/member/*",
        "https://s.v2ex.com/member/*",
        "https://origin.v2ex.com/member/*",
        "https://edge.v2ex.com/member/*",
        "https://staging.v2ex.com/member/*",
        "https://global.v2ex.co/member/*"
      ],
      "js": [
        "scripts/jquery.min.js",
        "scripts/v2ex-member.min.js"
      ],
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/settings/*",
        "https://v2ex.com/settings?*",
        "https://www.v2ex.com/settings/*",
        "https://www.v2ex.com/settings?*",
        "https://cn.v2ex.com/settings/*",
        "https://cn.v2ex.com/settings?*",
        "https://jp.v2ex.com/settings/*",
        "https://jp.v2ex.com/settings?*",
        "https://de.v2ex.com/settings/*",
        "https://de.v2ex.com/settings?*",
        "https://us.v2ex.com/settings/*",
        "https://us.v2ex.com/settings?*",
        "https://hk.v2ex.com/settings/*",
        "https://hk.v2ex.com/settings?*",
        "https://global.v2ex.com/settings/*",
        "https://global.v2ex.com/settings?*",
        "https://fast.v2ex.com/settings/*",
        "https://fast.v2ex.com/settings?*",
        "https://s.v2ex.com/settings/*",
        "https://s.v2ex.com/settings?*",
        "https://origin.v2ex.com/settings/*",
        "https://origin.v2ex.com/settings?*",
        "https://edge.v2ex.com/settings/*",
        "https://edge.v2ex.com/settings?*",
        "https://staging.v2ex.com/settings/*",
        "https://staging.v2ex.com/settings?*",
        "https://global.v2ex.co/settings/*",
        "https://global.v2ex.co/settings?*"
      ],
      "js": [
        "scripts/jquery.min.js",
        "scripts/v2ex-settings.min.js"
      ],
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/notifications/*",
        "https://v2ex.com/notifications?*",
        "https://www.v2ex.com/notifications/*",
        "https://www.v2ex.com/notifications?*",
        "https://cn.v2ex.com/notifications/*",
        "https://cn.v2ex.com/notifications?*",
        "https://jp.v2ex.com/notifications/*",
        "https://jp.v2ex.com/notifications?*",
        "https://de.v2ex.com/notifications/*",
        "https://de.v2ex.com/notifications?*",
        "https://us.v2ex.com/notifications/*",
        "https://us.v2ex.com/notifications?*",
        "https://hk.v2ex.com/notifications/*",
        "https://hk.v2ex.com/notifications?*",
        "https://global.v2ex.com/notifications/*",
        "https://global.v2ex.com/notifications?*",
        "https://fast.v2ex.com/notifications/*",
        "https://fast.v2ex.com/notifications?*",
        "https://s.v2ex.com/notifications/*",
        "https://s.v2ex.com/notifications?*",
        "https://origin.v2ex.com/notifications/*",
        "https://origin.v2ex.com/notifications?*",
        "https://edge.v2ex.com/notifications/*",
        "https://edge.v2ex.com/notifications?*",
        "https://staging.v2ex.com/notifications/*",
        "https://staging.v2ex.com/notifications?*",
        "https://global.v2ex.co/notifications/*",
        "https://global.v2ex.co/notifications?*"
      ],
      "js": [
        "scripts/jquery.min.js",
        "scripts/v2ex-notifications.min.js"
      ],
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/go/*",
        "https://www.v2ex.com/go/*",
        "https://cn.v2ex.com/go/*",
        "https://jp.v2ex.com/go/*",
        "https://de.v2ex.com/go/*",
        "https://us.v2ex.com/go/*",
        "https://hk.v2ex.com/go/*",
        "https://global.v2ex.com/go/*",
        "https://fast.v2ex.com/go/*",
        "https://s.v2ex.com/go/*",
        "https://origin.v2ex.com/go/*",
        "https://edge.v2ex.com/go/*",
        "https://staging.v2ex.com/go/*",
        "https://global.v2ex.co/go/*"
      ],
      "js": [
        "scripts/jquery.min.js",
        "scripts/v2ex-go.min.js"
      ],
      "all_frames": true
    },
    {
      "matches": [
        "https://v2ex.com/*",
        "https://www.v2ex.com/*",
        "https://cn.v2ex.com/*",
        "https://jp.v2ex.com/*",
        "https://de.v2ex.com/*",
        "https://us.v2ex.com/*",
        "https://hk.v2ex.com/*",
        "https://global.v2ex.com/*",
        "https://fast.v2ex.com/*",
        "https://s.v2ex.com/*",
        "https://origin.v2ex.com/*",
        "https://edge.v2ex.com/*",
        "https://staging.v2ex.com/*",
        "https://global.v2ex.co/*"
      ],
      "js": [
        "scripts/toggle-icon.min.js"
      ],
      "all_frames": true
    }
  ],
  "background": {
    "scripts": [
      "scripts/background.min.js"
    ]
  },
  "web_accessible_resources": [
    {
      "matches": [
        "https://v2ex.com/*",
        "https://www.v2ex.com/*",
        "https://cn.v2ex.com/*",
        "https://jp.v2ex.com/*",
        "https://de.v2ex.com/*",
        "https://us.v2ex.com/*",
        "https://hk.v2ex.com/*",
        "https://global.v2ex.com/*",
        "https://fast.v2ex.com/*",
        "https://s.v2ex.com/*",
        "https://origin.v2ex.com/*",
        "https://edge.v2ex.com/*",
        "https://staging.v2ex.com/*",
        "https://global.v2ex.co/*"
      ],
      "resources": [
        "scripts/web_accessible_resources.min.js"
      ]
    }
  ],
  "options_ui": {
    "page": "pages/options.html",
    "open_in_tab": true
  },
  "action": {
    "default_title": "V2EX Polish 用户面板",
    "default_popup": "pages/popup.html"
  },
  "browser_specific_settings": {
    "gecko": {
      "id": "leokudev@gmail.com"
    }
  }
}

Best V2EX Polish Alternatives

Here are some Firefox add-ons that are similar to V2EX Polish: