İşletim sisteminin herhangi bir yerinden belirli bir pencereye odaklanmak için bir komut oluşturun


10

Web için geliştirirken, metin düzenleyicim ve tarayıcı arasında çok ileri gitme eğilimindeyim. İşletim sistemi düzeyinde, her seferinde belirli, tanımlanabilir bir pencereye atlamama izin veren bir klavye kısayolu ayarlamak istiyorum. Daha da iyisi, uygulamanın bir şeyi yürütmesi için bir anlatım yapma yeteneği olabilir, ancak bunu daha sonra saklayacağım.

Bunu yapmama izin verecek teknolojiler var mı? C ve AppleScript arasında bu tür bir etkileşim yaratmama izin veren bir şey olmalı. Nereden başlayacağını bilen var mı?

Teşekkürler.

Yanıtlar:


2

Automator'a bir şans vermelisiniz. Uygulamayı Dock'tan tıklayan yeni bir hizmeti (daha sonra tüm Uygulamalar için yayınlayabileceğiniz ve bir Klavye Kısayolu atayabileceğiniz) "kaydedebilirsiniz". Aslında, daha fazla işlem ekleyebilir ve "bu uygulamanın bir şey yapmasını söyleyin" işlemini gerçekleştirebilirsiniz.

Dock'taki Mail'i (nispeten işe yaramaz ama çalışır) bir tane oluşturmayı denedim, ardından araç çubuğunda yeni posta al simgesini tıkladım. Eğlence ;)

Ekte, Automator sonucunun görüntüsü verilmiştir:

Otomatikleştirici

Sağ üst köşedeki Kayıt düğmesini kullandım ve ardından eylemleri kendim yaptım (Mail'in dok simgesine tıkladıktan sonra araç çubuğundaki Mail'in Yeni Posta Al simgesine ve ardından "Kaydı Durdur" a tıkladım). Herhangi bir girişle ilgilenmediğim için, ilk birleşik giriş kutusunda "Hizmet alındı ​​[giriş yok]" seçeneğini seçtiğinizi lütfen unutmayın.

Bu, TextEditor'unuzu ve Tarayıcınızı öne çıkaran birkaç hizmete sahip olmanız için birçok olanak sağlar.

Automator, Spotlight kullanarak ve Automator yazarak bulunur (/Applications/Automator.app içinde de bulunur)

Bu durumda yeni bir "Hizmet" oluşturdum ancak muhtemelen "komut dosyaları" oluşturarak kurtulabilirsiniz. Hangisinin daha hızlı olacağından emin değilim tho. Deney. Automator senin arkadaşın.


5

AppleScript ile böyle bir şey yapabilirsiniz:

tell application "Terminal"
    activate
    windows where name contains "bash"
    if result is not {} then set index of item 1 of result to 1
end tell

Veya Sistem Olaylarını kullanarak:

tell application "System Events" to tell process "Terminal"
    set frontmost to true
    windows where title contains "bash"
    if result is not {} then perform action "AXRaise" of item 1 of result
end tell

1

Mac OS X'te farklı klavye kısayolları veya izleme dörtgeni hareketlerini ayarlamak için BetterTouchTool kullanıyorum. Başlatabileceği eylemlerden biri Terminal Komutunu Yürüt

Bu yüzden komut ayarlarında aşağıdakileri sağlarım:

osascript -e 'tell application "NameOfTheApplicationHere" to activate'

BetterTouchTool tercihlerinden bir örnek:

resim açıklamasını buraya girin


1

İTerm2 ile çalışmak için bu konuda çok sorun yaşadım. İşte tek komut çözümü:

  osascript -e 'tell application "System Events" to tell process "iTerm2"' \
            -e 'set frontmost to true' \
            -e 'if windows is not {} then perform action "AXRaise" of item 1 of windows' \
            -e 'end tell'
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.