每当我点击 Outlook 或程序中的链接时,就会打开一个网页(当我从 Chrome 中单击链接时)。由于 Chrome 是我的默认浏览器,因此它会在 Chrome 中打开,但如果我已经打开了一个页面,它将在同一窗口的新选项卡中打开。我无法告诉你我有多少次忘记了这一点并关闭了窗口,意外地丢失了另一个选项卡。当然,我可以打开一个新的 Chrome 窗口并在最近关闭的选项卡下找到它,但我真的更希望它们在自己的窗口中打开,这样我就可以避免这种情况。
答案1
问题
对于 Linux,如果您有多个 VNC 服务器,也会出现同样的问题。
也就是说,
$ google-chrome
Created new window in existing browser session
并且当前 X VNC 会话中不会出现任何 google chrome 窗口(X 会话中将出现一个带有 google-chrome 第一个实例的新选项卡)。
解决方案
一个简单的解决方法是运行
$ google-chrome "--user-data-dir=${HOME}/.google-chrome/session${DISPLAY}"
这将设置唯一的用户目录基于正在使用的 X VNC 实例。将根据需要创建用户目录。新google-chrome
进程将显示在当前 X VNC 会话中。
在 Ubuntu 12.04 上使用 Google Chrome 版本 22 进行测试。
答案2
Chrome 中似乎没有一个用户友好的选项来更改此设置(大概是因为大多数人更喜欢新标签)。
但是,您可以通过编辑 Windows 注册表中用于打开 http URL 的指定命令来手动更改此设置。
为此,请打开 regedit 并:
- 去
HKEY_CLASSES_ROOT\http\shell\open\command
- 您应该会看到一个名为 的键
(Default)
。双击该键可弹出编辑窗口。 - 您应该在字段末尾
Value data:
看到文本-- "%1"
。将其更改为--new-window "%1"
。
这将指示 Windows 在 Chrome 的新窗口而不是新选项卡中打开所有 http 链接。
据推测,Mac 和 Linux 也遵循同样的总体思路,但我不知道他们将打开 URL 的命令存储在哪里。
答案3
Mike Hardy 发布了一个解决方案适用于 Mac OS X。我在 10.7 Lion 中使用它,它运行良好。
解决方案涉及一个小型 AppleScript 应用程序:
on open location theURL
tell application "/Applications/Google Chrome.app"
make new window
activate
set URL of active tab of first window to theURL
end tell
end open location
将此应用程序设置为默认浏览器将导致外部程序链接在 Chrome 的新窗口中打开。
答案4
如果有 Linux 用户想知道同样的事情,我通过复制然后编辑它来做到这一点,/usr/share/applications/chromium.desktop
如下~/.local/share/applications
所示:
--- /usr/share/applications/chromium.desktop 2012-08-10 17:02:01.000000000 +0100
+++ /home/sam/.local/share/applications/chromium.desktop 2012-08-23 10:33:21.987359591 +0100
@@ -128,7 +128,7 @@
Comment[zh_CN]=访问互联网
Comment[zh_HK]=連線到網際網路
Comment[zh_TW]=連線到網際網路
-Exec=/usr/bin/chromium %U
+Exec=/usr/bin/chromium --new-window %U
Terminal=false
X-MultipleArgs=false
Type=Application
如果您正在使用 Debianchromium
软件包,并且不介意将其设置为系统上所有用户的默认值,那么您可以编辑/etc/chromium/default
并添加--new-window
该CHROMIUM_FLAGS
变量。