最近 Chromebook を入手したので Emacs keybindings がちゃんと使えるようにしたく、試行錯誤しています。
その過程で拡張機能を作っており、思いついたコードです。
const TERMINAL_URL_REGEXP = /^chrome\-extension:\/\/.+\/html\/crosh\.html/ let onTerminal = false chrome.windows.onFocusChanged.addListener(() => { const getInfo = { populate: true, windowTypes: ['normal', 'popup', 'devtools'] } chrome.windows.getCurrent(getInfo, window => { onTerminal = ( window && window.tabs.length > 0 && window.tabs[0].url.search(TERMINAL_URL_REGEXP) > -1 ) }) })
manifest.json の permissions に tabs を追加する必要があります。
"permissions": ["tabs"]
Chrome OS、ES6 で OS を操作できるのが良いですね。