Safariのためのアップルスクリプト
Safariの技術プレビューは、私がウェブサイトを開発していない私の主要なWebブラウザです.これは、サファリのためのベータの同等の機能は、最新の更新プログラムを備えています.
主要な損失の1つは、vimキー結合をシミュレートする良いブラウザー拡張の欠如です.Vimari 大丈夫ですが、githubで正しく動作しません.他の損失は、偶然の終了防止の欠如とタブを変更するための代替キーのバインドです.
誤った終了を防ぐ
我々が押すならば、FirefoxとChromeは我々に警告するオプションを持ちます
私はインターネットをブラウズし、ジョンGruberはすでにこの問題の解決策を共有していることがわかりました.このポストで読むことができます.Quit Confirmation for Safari on MacOS を介してdaringfireball.ネット
お使いの便宜上、少し修正されたスクリプトをここで共有します.
あなたは、スクリプトを置きたいです
FastScriptsの詳細については、チェックすることができますtheir FAQ here .
我々は終了についての問題をカバーしているので、今、次の問題に移動します.
タブを変更するキーバインド
Safari用のタブを変更する既定のキーバインド
Macを使ってみました
私のソリューションは、アップルスクリプトとfastscriptを使用することです.
タブを次のタブに変更するスクリプト
次のタブスクリプトを使用して最後のタブに到達すると、エラーが発生します.その場合、最初のタブに移動します.キーバインドが利用可能なタブにループしておきたいからです.
前のタブスクリプトでは、私は知っている利用可能なタブの長さを取得するプロパティやメソッドがないので、少し複雑になります.だから私は
この日の前に、私はアップルスクリプトを使用すると思いませんでした、そして、これらの種類のMacOSユーティリティツールは私の時代を大いに助けます.私は、マックパワーユーザーを読みますabout productivity and automating some tasks , など.今、私は以前に見落とされたツールがどれくらいものすごいかについてわかっています.
主要な損失の1つは、vimキー結合をシミュレートする良いブラウザー拡張の欠如です.Vimari 大丈夫ですが、githubで正しく動作しません.他の損失は、偶然の終了防止の欠如とタブを変更するための代替キーのバインドです.
誤った終了を防ぐ
我々が押すならば、FirefoxとChromeは我々に警告するオプションを持ちます
⌘ + Q
偶然.Safariはこのオプションを提供しません.タブを閉じたいときによく起こります⌘ + W
, しかし、私の不器用な指輪指は、それを逃しますW
. 以前私はApp Shortcuts
修飾子→ キーボード→ ショートカット→ アプリケーションのショートカット⌘ + ⌥ + Q
. それは動作しますが、私は別の方法があるかどうか好奇心旺盛です.私はインターネットをブラウズし、ジョンGruberはすでにこの問題の解決策を共有していることがわかりました.このポストで読むことができます.Quit Confirmation for Safari on MacOS を介してdaringfireball.ネット
お使いの便宜上、少し修正されたスクリプトをここで共有します.
tell application "Safari Technology Preview"
set windowCount to count windows
set tabCount to 0
repeat with currWindow in every window
set tabCount to tabCount + (count tabs of currWindow)
end repeat
-- Make a string like "1 window containing 3 tabs."
if windowCount is 1 then
set msg to windowCount & " window containing " as string
else
set msg to windowCount & " windows containing " as string
end if
if tabCount is 1 then
set msg to msg & tabCount & " tab." as string
else
set msg to msg & tabCount & " tabs." as string
end if
display alert ¬
"Are you sure you want to quit Safari?" message msg ¬
buttons {"Cancel", "Quit"} ¬
giving up after 60
if button returned of result is "Quit" then quit
end tell
から変更したいかもしれないことに注意してくださいSafari Technology Preview
だけSafari
.あなたは、スクリプトを置きたいです
Script Editor.app
, そして-ジョンが提案したように、使用FastScripts . fastscriptは素晴らしいです!赤いセーターへの残高.あなたがすべきことは、スクリプトエディタによって生成されたスクリプトをSafari用のFastScriptsのフォルダーに移動させることです.明らかに、あなたはそれをそれに割り当てたいです⌘ + Q
.FastScriptsの詳細については、チェックすることができますtheir FAQ here .
我々は終了についての問題をカバーしているので、今、次の問題に移動します.
タブを変更するキーバインド
Safari用のタブを変更する既定のキーバインド
⌃ + ⇥
次のタブと⌃ + ⇧ + ⇥
前のタブ.FirefoxとChromeに存在する既に馴染みのキーバインディングを追加します⌘ + ⌥ + ←
前のタブと⌘ + ⌥ + →
次のタブ.Macを使ってみました
App Shortcuts
修飾子→ キーボード→ ショートカット→ 変更するには、しかし、私は元のキーバインドを失うだろう.私は、彼らが共存することを望みます.私のソリューションは、アップルスクリプトとfastscriptを使用することです.
タブを次のタブに変更するスクリプト
tell application "Safari Technology Preview"
tell window 1
set myTab to (index of current tab)
set goodtab to (myTab + 1) as integer
try
set current tab to tab goodtab
on error
set current tab to tab 1
end try
end tell
end tell
タブを以前のタブに変更するスクリプトtell application "Safari Technology Preview"
tell window 1
set myTab to (index of current tab)
set goodtab to (myTab - 1) as integer
if goodtab = 0 then
tell application "Safari Technology Preview" to set lastTab to the number of tabs in window 1
set current tab to tab lastTab
else
set current tab to tab goodtab
end if
end tell
end tell
あなたは変更したいSafari Technology Preview
も.スクリプトはまっすぐに、アップルスクリプトの奇妙な構文の利点の一つです.そのことについて少し説明しましょうtry ... on error
and if ... else
パート.次のタブスクリプトを使用して最後のタブに到達すると、エラーが発生します.その場合、最初のタブに移動します.キーバインドが利用可能なタブにループしておきたいからです.
前のタブスクリプトでは、私は知っている利用可能なタブの長さを取得するプロパティやメソッドがないので、少し複雑になります.だから私は
tell
) サファリを定義するlastTab
変数としてアクティブなSafariウィンドウで利用可能なタブの数を指定します.この日の前に、私はアップルスクリプトを使用すると思いませんでした、そして、これらの種類のMacOSユーティリティツールは私の時代を大いに助けます.私は、マックパワーユーザーを読みますabout productivity and automating some tasks , など.今、私は以前に見落とされたツールがどれくらいものすごいかについてわかっています.
Reference
この問題について(Safariのためのアップルスクリプト), 我々は、より多くの情報をここで見つけました https://dev.to/ybbond/some-apple-scripts-for-safari-o22テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol