Klavye kısayolunu kullanarak yeni bir alan oluşturun


10

Görev Kontrolü'nden tıklatarak yapabileceğinizin farkındayım ve 'Klavye'de hiçbir kısayol yok.

Bunu bir üçüncü taraf programı veya Applescript kullanarak yapmanın herhangi bir yolu var mı?

resim açıklamasını buraya girin

resim açıklamasını buraya girin


İş akışım için çok yararlı bir soru. Masaüstü arka planınız hakkında da bilgi almak istiyorum!
Qcom

1
Soruyu beğendiğinize sevindim :) İşte duvar kağıdına bir bağlantı bir şey somethingpeach.com/wp-content/uploads/2014/06/…
Jonathan De Wet

Yanıtlar:


1

Güncelleme: Bu yöntem en azından OS X 10.8'de (OS X 10.8'den daha eski bir şey üzerinde test etmedi) çalışır, ancak Apple tarafından yapılan Görev Kontrolünde önemli değişiklikler nedeniyle artık macOS 10.12'de kodlanmış olarak çalışmaz .


Görev Kontrolü'ne programlı olarak bir Masaüstü eklemek için aşağıdaki kod , sırasıyla AppleScript'i Çalıştır veya Kabuk Betiğini Çalıştır komutunu kullanarak bir Automator Hizmeti ile birlikte bir AppleScript veya BASH Komut Dosyası olarak ve Klavyedeki Sistem Tercihlerinde Hizmete atanan bir tuş sırası olarak kullanılabilir Kısayollar.


AppleScript Kodu:

do shell script "open -a 'Mission Control'"
delay 0.5
tell application "System Events" to click (every button whose value of attribute "AXDescription" is "add desktop") of group 1 of process "Dock"
delay 0.5
tell application "System Events" to key code 53

BASH Script Kodu:

#!/bin/bash

open -a 'Mission Control'
osascript -e 'delay 0.5' \
          -e 'tell application "System Events" to click (every button whose value of attribute "AXDescription" is "add desktop") of group 1 of process "Dock"' \
          -e 'delay 0.5' \
          -e 'tell application "System Events" to key code 53'

  • Automator'ı açın ve Servis'i seçin .

  • Set: Hizmet herhangi bir uygulamada girdi almaz

  • Bir AppleScript Çalıştır veya Kabuk Betiği Çalıştır Eylemi ekleyin .

  • Hedef Eylem için uygun kodu ekleyin .

  • Hizmeti şu şekilde kaydedin , örneğin: Yeni Masaüstü Ekle

  • İçin bir klavye kısayolu atama Hizmet içinde Sistem Tercihleri .

Not: Başka bir yerde üzerinde kullanılmayan bir tuş dizisi atamak gerekecek Sistemine veya Finder size bitti seçerseniz herhangi bir uygulama içinde Hizmetine .

Şunlarla test ettim: ⌃⌥⌘D (Control-Option-Komut-D)


Teşekkürler bu harika çalıştı. Boşlukları silmek için ikinci bir komut dosyası yapabileceğinizi düşünüyor musunuz?
Jonathan De Wet

@Jonathan, Masaüstünü eklemek, programsal olarak başlamak için bir tür çamurdur ve mümkündür, çünkü AXTutle ile AXBitton (lar) AXBitton, AXTitle ile Görev Kontrolü altında AXButton (örn. Masaüstü 2 ", yakın bir öğeye (baltanın olduğu bir daire, düğmenin sol üst köşesinde) sahipken" masaüstünü kaldır "düğmesiyle aynı şekilde adreslenemez. Bu yüzden gerçekten bir programlı kaldırmak için kolay bir yol bilmiyorum, üzgünüm.
user3439894

Mantıklı. Bana açıklamak için zaman ayırdığınız için teşekkürler
Jonathan De Wet

Bunu macOS'ta (10.12.1) denedim ve hiç şansım olmadı. Görev Kontrolü'nü .5 saniye açar, ancak Yeni Masaüstü düğmesine basılmaz.
domi91c

2
@ user3439894 Evet, sadece birinin MacOS için bir cevabı olması durumunda yorum yapıyordum. Ayrı bir soru oluşturmayı düşünmemiştim; yapmalımıyım? Yine de, yardım için teşekkür ederim.
domi91c

2

Tamam, Automator kaydını kullanarak, diğer cevapta AppleScript'in gözden geçirilmiş bir sürümüyle çalışmasını sağladım.

"Grup 1" in "grup 1'in grup 1'in grup 2'sinin" yerine ":

on run {input, parameters}

    do shell script "open -a 'Mission Control'"
    delay 0.5
    tell application "System Events" to click (every button whose value of attribute "AXDescription" is "add desktop") of group 2 of group 1 of group 1 of process "Dock"
    delay 0.5
    tell application "System Events" to key code 53

    return input
end run

İşaretli cevap benim için işe yaramadı, ama bu = =
Brian Schermerhorn

1

Evet, işe yarıyor, biraz. Sorun, etkin uygulama (Finder, textedit, vb.) Güvenlik ve Gizlilik Erişilebilirlik bölmesine eklenmediyse, user3439894'ün çözümünün bir hata atmasıdır.

Bu sorunu çözmek için iki iş akışına ihtiyacımız var: user3439894'ün bir Automator uygulaması olarak güncellenmiş grup listesiyle birlikte servisi ve başlatmak için ikinci bir Automator hizmeti.

Automator Uygulaması (Uygulamalara "Yeni Masaüstü" olarak kaydedildi.)

run {girdi, parametreler}

kabuk betiği "open -a 'Mission Control'" yapın

gecikme 0.5

"Sistem Olayları" uygulamasına, "Dock" işleminin 1. grubunun 2. grubunun 2. grubunun "AXDescription" özniteliği "masaüstü ekle" olan her düğmeyi) tıklatmasını söyleyin

gecikme 0.5

53 koduna "Sistem Olayları" uygulamasını söyle

dönüş girişi

son koşu

Ardından, "Uygulamayı Başlat" eylemini kullanarak ikinci iş akışını bir hizmet olarak oluşturmanız ve bunu "New_Desktop" olarak kaydetmemiz gerekir.

Son adımlar Sistem Tercihleri> Güvenlik ve Gizlilik> Erişilebilirlik'e "Yeni Desktop.App" eklemektir.

Ardından New_Desktop.workflow için Sistem Tercihleri> Klavye> Kısayollar> Hizmetler> Genel'e klavye kısayolunuzu ekleyin.

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.