1. 程式人生 > >你每天都在用的 Chrome 位址列,原來還藏了不少提升效率的小功能

你每天都在用的 Chrome 位址列,原來還藏了不少提升效率的小功能

有時候我們可能會忽略一些觸手可及的東西,比如天天都在用的瀏覽器位址列。面對太習慣的東西我們或許會少一些探索意識,就像越熟悉的人反而可能藏著許多祕密,而 Chrome 的位址列便是非常值得關心一下的「老熟人」。

Google 將 Chrome 位址列稱作 Omnibox, 實際就是把傳統位址列和搜尋引擎結合起來的產物。得益於強大的 Google 搜尋和豐富的 Chrome 拓展,Omnibox 能做的事情可能比你想象中還要多。

Chrome 位址列自帶的實用功能

快捷搜尋:設定搜尋引擎關鍵詞

任何支援搜尋功能的網站都可以被新增成 Chrome 的搜尋引擎,設定關鍵詞以後就可以在位址列快速啟動它們。以新增必應詞典為例:

a. 先開啟必應詞典的網站隨便搜尋一個單詞,比如「apple」,然後複製位址列網址。

b. 依次進入Chrome 設定 > 管理搜尋引擎 > 新增,先自定義一個關鍵字,然後把剛剛複製的網址貼上到網址那一欄,將上一步搜尋的詞彙「apple」替換成 %s

後面那一截在這裡可以不要,那麼得到的 https://cn.bing.com/dict/search?q=%s 就是必應詞典的查詢網址,直接新增即可。

設定好以後,就可以直接在 Chrome 位址列輸入上一步設定的關鍵字「cd」來進行必應查詞了,依次輸入 cd、空格、查詢的單詞,再回車跳轉,出來的就是查詞結果的頁面。

基本套路就是這樣了,我們可以通過這個方法在 Chrome 位址列查詞、查地圖、搜郵件、搜網盤... 只要找到相應網址的搜尋 url 並新增到搜尋引擎即可。

另外,我們可以將「Chrome 設定」的搜尋 url  chrome://settings/?search=%s 新增到搜尋引擎,設定關鍵詞後就可以在位址列對 Chrome 繁瑣的設定專案進行搜尋了,輸入相應關鍵詞加空格,然後搜尋「搜尋引擎」一下子就能定位到「管理搜尋引擎」所在的位置。

計算器、單位轉換、查天氣、英英釋義

Google 的某些搜尋結果可以直接顯示在位址列,在位址列就能進行簡單的計算和轉換,臨時應急一下還是挺方便的。若要用到此功能,需要確保開啟隱私設定裡的聯想查詢服務:

數學計算:在位址列中輸入算式,下面會實時顯示計算結果

單位換算:輸入格式是「數量單位=目標單位」

查詢天氣:直接在位址列輸入「天氣預報」或者「weather」,下面就會顯示所在城市的天氣資訊

英英釋義:輸入 define+單詞,下面會顯示該單詞的英文解釋。有些單詞如果不顯示釋義,就在輸入完成後再空格 + delete (Mac), 這樣基本都會顯示了。

上面列舉的是幾個比較常用的,還有一些 Google 搜尋的結果也會直接在位址列顯示,大家可以盡情探索。

安裝拓展,讓 Chrome 位址列更強大

Omnibox Timer 是一款非常實用的定時提醒外掛。在位址列輸入關鍵詞「tm」+ 空格來啟用它,接著輸入時間,代表多久以後提醒,再空格輸入提醒的文字內容,最後回車即可。比如下圖這樣,「30 睡覺」就代表30分鐘後會提醒你睡覺。

Timer 預設的時間單位是分鐘,因此設定分鐘數不用加單位,如果是小時和秒則需要在時間後面加上單位「h」和「s」。

值得一提的是,Omnibox Timer 支援 TTS (Text To Speech), 也就是說你收到的會是一條語音通知,上網時不經意間有一則語音提醒你睡覺,那種感覺真的不錯。

這是一款文字替換外掛,和輸入法裡的文字替換類似,比如你可以輸入兩個字母就彈出你的郵件地址:

Auto Text Expander 就是節約了你在輸入法裡選擇的那一步。在外掛設定裡可以新增語句和它的代替詞,並且可以通過 Chrome 全平臺同步。

當然 Auto Text Expander 只能在 Chrome 裡面工作,問題是在某些頁面它會失效,幸而它支援在 Chrome 位址列由關鍵詞啟用,「ate」+ 空格然後輸入任何代替詞,下面就會顯示它所替換的語句,在某些頁面 Auto Text Expander 失效的時候仍然可以在位址列通過代替詞獲取長文字。

Chromnitweet 可以讓你在 Chrome 位址列裡直接發推,代理需要設定為全域性模式才有效。它的觸發關鍵詞是「tw」+ 空格,然後接著輸入推的內容,回車即可成功傳送。

當我們開啟太多標籤頁時,如何快速找到我們想去的標籤頁呢?OmniTab 是個很好的解決方案,在 Chrome 位址列輸入「o」+ 空格來啟用它,然後輸入標籤頁的部分標題,最後回車就能快速切換到想去的標籤頁。如下面這個例子我輸入「tele」一下子就切換到了 telegram 那一頁。

不難看出幾乎所有的 Chrome 位址列外掛都是由一個關鍵詞加空格或者 tab 鍵來啟用,喜歡鍵盤操作的朋友應該會比較受用吧。說來說去其實都是基於新增搜尋引擎、設定關鍵詞那一套,在這個基本功能加持下的 Chrome 位址列還有很多潛力可挖。

自建 Telegram Bot,把位址列的網址快速傳送到全裝置

相信很多人都有在 PC 和手機端互相傳送網頁的經歷,很難找到比 Airdrop 更優雅的實現方式了,但是 Airdrop 僅僅侷限於 Apple 的生態系統下。

對於 Telegram 重度使用者而言,還可以自建 Telegram Bot 結合 Chrome 位址列來發送網頁和文字。部署的過程可能會有點繁瑣,實現後用起來還是挺方便的,先放一個最終效果:

在位址列傳送網頁

在位址列傳送網頁

我只需要在當前頁面的網址前輸入一個自定關鍵詞,比如 send、go、t 之類的,再空格加回車,這個網頁就被推送到了所有登陸了同一個 telegram 賬號的裝置上,並且都會收到實時通知,手機上點開通知預覽就可以快速開啟網頁。

全鍵盤操作:依次輸入 command + L、←、關鍵詞、空格、回車。

其中由「command + L」快速定位到位址列,由「←」快速定位到位址列開頭。

Airdrop 分享尚且需要滑鼠點幾次並且保持螢幕都亮著,這種直接在 Chrome 位址列通過鍵盤操作傳送網頁的方式也算是另闢蹊徑吧。

它的原理是利用一條 HTTP request 來喚起 telegram bots API 裡的 send message, 從而讓 telegram bot 給自己的賬號傳送訊息。把 HTTP request 的 url 新增成 Chrome 的一個搜尋引擎,就可以在 Chrome 位址列用關鍵詞來快速啟動它,機器人傳送的訊息內容就是當前網頁。

下面說一下部署過程:

大致分為三個部分,第一部分是自己建立一個 telegram bot;第二部分是讓這個機器人可以給你傳送訊息;第三部分是將 bots API 裡 send message 的 HTTP request 新增成一個 Chrome 搜尋引擎。

建立 telegram 機器人

a. 點進這個連結開始和 BotFather 聊天

b. 傳送訊息 /newbot

c. 依次回覆它要設定的機器人的暱稱和使用者名稱,使用者名稱必須以「bot」結尾。

d. 在使用者名稱沒有和別人重複後機器人就建立成功了,BotFather 會回覆你一條包含機器人的連結和 token 的資訊,這個 token 後面就會用到。

讓機器人給你傳送訊息

現在點開機器人鏈接,向它傳送訊息是收不到回覆的。要讓機器人可以給你傳送訊息,Telegram bot API 的傳送訊息介面需要用到機器人和你聊天的 Chat ID。

a. 任意向剛剛建立的機器人傳送一條訊息

b. 現在機器人那兒已經排列了你剛剛傳送的訊息更新,利用 Telegram bot API 的 getupdates 就可以讓機器人得到剛剛聊天的詳細內容和 Chat ID。

在瀏覽器位址列輸入 HTTP GET request 的 URL:

https://api.telegram.org/bot$TOKEN/getUpdates

把其中的 $TOKEN 替換成第(一)部分中自己建立的機器人的 token。

c. 找到自己和機器人聊天的 Chat ID。如果所有操作正確,上一步在瀏覽器輸入 URL 跳轉後,會得到以下結果:

{"ok":true,
 "result":[
 {"update_id":123123123,
 "message":{
   "message_id":12,
      "from":{
	"id":12345,
	"first_name":"xxx",
	"last_name":"xxx",
	"username":"xxx"},
      "chat":{
	 "id":12345,
	 "first_name":"xxx",
	 "last_name":"xxx",
	 "username":"xxx",
	 "type":"private"},
	 "date":xxx,
	 "text":"xxx”}}]}

其中 "id":12345 裡面的 12345 便是你和機器人聊天的 Chat ID。

d. 利用 Telegram bot API 裡 send messages 的 HTTP request 使機器人向你傳送訊息。這次需要在瀏覽器位址列輸入:

https://api.telegram.org/bot$TOKEN/sendMessage?chat_id=12345&text=Hello+World

把其中的 $TOKEN 替換成第(一)部分中自己建立的機器人的 token,12345 替換成上一步得到的 Chat ID,Hello+World 替換成想要機器人給你傳送的訊息內容。替換完成後再回車,手機上馬上就能收到機器人發來的訊息了。來源

將 telegram bot 傳送訊息的 URL 新增進 Chrome 的搜尋引擎

之前說到設定搜尋引擎關鍵詞可以讓 Chrome 位址列的搜尋效率大大提升,採取同樣的方式,我們也可以用關鍵詞來讓 telegram bot 傳送訊息。

a. 依次進入 Chrome 設定 > 管理搜尋引擎 > 新增

b. 自定義搜尋引擎名稱和關鍵字,將第(二)部分最後替換好的連結複製進網址這一欄,並將要傳送的內容替換成 %s, 也就是:

https://api.telegram.org/bot$TOKEN/sendMessage?chat_id=12345&text=%s

點選新增,到此為止,部署就算完成了。

如上圖所示關鍵字為「tele」,那麼我們只需要在 Chrome 位址列的網址前輸入「tele」再空格回車就可以傳送當前網頁了,此時當前網址就相當於%s

你可能會有的幾個疑問:

  1. 為什麼不用 telegram 的「Saved Messages」跨平臺傳輸網頁? 這個方法有個致命問題是收不到通知,接收到網址後必須要點進 Telegram 才能開啟它。
  2. 手機如何用此方法向 PC 端傳送網頁? 手機上只能用曲線救國的方式。再看一下 send messages 的這個 url:https://api.telegram.org/bot$TOKEN/sendMessage?chat_id=12345&text=Hello+World其中 Hello+World 是機器人將要傳送的內容,它前面那一部分相當於機器人的「傳送指令」。我們可以在手機上利用輸入法的替換文字功能,設定關鍵詞來代替前面這一截「傳送指令」,比如我可以用「te」來代替  https://api.telegram.org/bot$TOKEN/sendMessage?chat_id=12345&text=, 在手機瀏覽器位址列的網址前輸入「te」,然後選擇這一段「傳送指令」,就能把當前網頁推送到所有登陸了同一個 telegram 賬號的裝置上。
  3. 只是傳送個網頁而已,有必要那麼麻煩嗎? Chrome 不支援 Airdrop 分享網頁,等待 Chrome 自己同步網頁或者用剪貼簿同步工具都無法做到實時,Chrome 位址列結合 Telegram Bot 再加上全鍵盤操作對於我來說是一種一勞永逸的方法。

看到這裡,你是否對 Chrome 位址列這個「老熟人」有了新的認識呢?快捷搜尋、傳送網頁、計算、查詞,還有各種方便實用的外掛,對於我來說,它早已不僅僅是進入網路世界的入口,更是一壺提升上網體驗的萬金油。

> 想了解更多 Chrome 瀏覽器的使用技巧,歡迎訪問專題 無擴充套件,不 Chrome ?