Sto tentando di seguire le istruzioni per bloccare le schede di avvio in Chrome . Su OS X come posso aggiungere argomenti della riga di comando agli elementi che persistono nel mio dock?
Sto tentando di seguire le istruzioni per bloccare le schede di avvio in Chrome . Su OS X come posso aggiungere argomenti della riga di comando agli elementi che persistono nel mio dock?
Risposte:
Hai sostanzialmente due opzioni:
Opzione 1 : utilizzare Automator per creare un'applicazione che in effetti avvia Chrome con argomenti da riga di comando.
Avviare Automator e selezionare per creare un'applicazione . Fare doppio clic su Esegui script shell nella cartella Libreria / Utilità e sostituire il contenuto del testo - cat
- con il seguente:
open -a "Google Chrome.app" --args -pinned-tab-count=4
# keep the .app suffix or will break with Parallels
Salva dove preferisci.
Per sostituire l'icona di questa applicazione, Ottieni informazioni sul tuo vero Google Chrome, fai clic sull'icona in alto a sinistra, premi Cmd-C
, Ottieni informazioni sull'app Chrome Automator, fai clic sull'icona e premi Cmd-V
.
Poiché è un'applicazione diversa, il Dock mostrerà due applicazioni Chrome quando è in esecuzione: Chrome e il tuo launcher Chrome.
Opzione 2 : modifica il pacchetto dell'applicazione per avviare invece uno script. Questo script avvierà l'applicazione effettiva, aggiungendo l'argomento della riga di comando.
Fare clic con il tasto destro del mouse Google Chrome.app
e selezionare Mostra contenuto pacchetto . Vai a Contents/
e apri Info.plist
in Editor elenco proprietà / Xcode (strumenti per sviluppatori di Apple) o un plist
editor di terze parti .
Cerca la voce CFBundleExecutable
o Executable File
. Ricorda il suo valore (ad es. firefox-bin
Per Firefox). Sostituiscilo con parameterized-app.sh
.
Apri Terminale e inserisci quanto segue:
touch /Applications/Firefox.app/Contents/MacOS/parameterized-app.sh
open /Applications/Firefox.app/Contents/MacOS/parameterized-app.sh
Si .sh
aprirà un editor per il file. Imposta il contenuto del file su:
#!/usr/bin/env bash
exec /Applications/Firefox.app/Contents/MacOS/firefox-bin -ProfileManager
(utilizzando il nome dell'eseguibile effettivo da cui è stato rimosso Info.plist
, aggiungendo gli argomenti della riga di comando desiderati)
Salva e chiudi. In Terminale, immettere quanto segue:
chmod +x /Applications/Firefox.app/Contents/MacOS/parameterized-app.sh
Ora chiudi Terminal e sposta la tua applicazione (che non deve essere in esecuzione in questo momento) in un'altra cartella e viceversa. Questo aggiornerà i Servizi di lancio , altrimenti le tue modifiche verranno ignorate e ti irriteranno immensamente.
Ora, quando apri l'applicazione, eseguirà effettivamente il .sh
file, che a sua volta avvierà il file eseguibile effettivo, inviando la riga di comando args insieme.
Apparirà e si comporterà come previsto, ma dovrai ripetere questo ogni volta che aggiorni l'applicazione, poiché in genere sostituirà il pacchetto dell'applicazione e tutte le modifiche apportate.
/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support/lsregister -f /Applications/Hello\ World.app
Potresti scrivere uno script che avvia Chrome, ma che non sarebbe l'icona dell'applicazione nel dock e causerebbe la visualizzazione di un'icona Chrome separata. Quindi dovrai creare un pacchetto applicativo.
Innanzitutto, crea una copia dell'app Chrome. Quindi, ci sono due approcci che potrebbero funzionare; Non sono sicuro che funzionerà meglio con Mac OS X e / o l'aggiornamento automatico di Chrome.
Crea un 'launcher' che chiama semplicemente Chrome con gli argomenti.
Nella cartella MacOS, elimina l'eseguibile "Google Chrome" e sostituiscilo con uno script shell che chiama il vero Chrome:
#!/bin/sh
exec '/Applications/Google Chrome.app/Contents/MacOS/Google Chrome' -pinned-tab-count=4
Non dimenticare chmod +x
la sceneggiatura.
Modifica il pacchetto Chrome che effettivamente esegui.
Nella cartella MacOS, rinomina "Google Chrome" e scrivi uno script di shell che invochi la cosa reale con gli argomenti extra:
#!/bin/sh
exec '/Applications/My Modified Google Chrome.app/Contents/MacOS/Google Chrome-real' -pinned-tab-count=4
CodeResources
e e / o _CodeSignature
farlo funzionare con queste modifiche.Tutto si basa sulla mia comprensione dei pacchetti di app per Mac; In realtà non ho testato queste modifiche su Chrome in particolare. È anche possibile che l'eseguibile di Chrome su Mac non supporti questa opzione, poiché in genere non è previsto che le applicazioni Mac vengano eseguite con opzioni della riga di comando controllabili (a differenza, ad esempio, di Windows, in cui le applicazioni vengono normalmente avviate tramite collegamenti che possono hanno opzioni integrate).
chmod 755 Google\ Chrome
(il tuo script) dopo aver finito. In realtà ho chiamato il mio script launch.sh e l'ho collegato a Google \ Chrome per facilitare gli aggiornamenti.