Qual è la differenza chiave tra grml zsh config e oh-my-zsh config


15

Ora sono sul oh-my-zsh, ma non sono sicuro che sia la scelta perfetta. Qual è la differenza chiave tra grml zsh config ( github repo ) e oh-my-zsh config ? In quale caso dovrei preferire grml o oh-my-zsh?


1
Ecco un altro framework di configurazione zsh che sembra promettente: github.com/sorin-ionescu/prezto . So che questo non è legato alla domanda, ma l'ho appena scoperto e ho pensato che potresti essere interessato.
JC Yamokoski il

Per quanto riguarda prezto (ma non è nella domanda): è molto discusso anche se vale la pena notare che l' ultimo commit è stato 10 mesi fa e ci sono molte discussioni che hanno portato a un nuovo repository .
Griffith Rees,

Risposte:


16

Non sono in grado di fornire un rapporto dettagliato delle loro differenze, ma posso almeno fornire un'ampia panoramica che può aiutare a rispondere ad alcune domande di base e condurti in luoghi in cui puoi saperne di più.

oh-my-zsh:

grml-zsh:

Fondamentalmente, le differenze più evidenti tra i due sono il sistema di plugin / temi di oh-my-zsh e l'aggiornamento automatico. Tuttavia, queste funzionalità possono essere aggiunte a grml-zsh con l'uso di antigen , che è un gestore di plugin per zsh ispirato a oh-my-zsh.

Antigen ti consente di definire quali plug-in e temi desideri utilizzare, quindi li scarica e li include automaticamente. Ironia della sorte, però, la maggior parte dei plugin e dei temi sono estratti dalla libreria di oh-my-zsh, il che significa che per far funzionare l'antigene devono prima caricare il core oh-my-zsh. Quindi, questo approccio porta a ricreare più o meno oh-my-zsh in modo circolare. Tuttavia, se si preferisce la configurazione di grml a quella di oh-my-zsh, questa è un'opzione valida.

In conclusione, credo che devi solo provare entrambi e vedere quale funziona meglio per te. È possibile alternare creando i seguenti file: oh-my-zsh.zshrc(file predefinito installato da oh-my-zsh), grml.zshrc(predefinito grml zshrc),.zshrc.pre , e .zshrc.local.

Quindi se vuoi usare oh-my-zsh:

$ ln -s ~/oh-my-zsh.zshrc ~/.zshrc

Oppure, se si desidera utilizzare grml:

$ ls -s ~/grml.zshrc ~/.zshrc

Se non si desidera duplicare le personalizzazioni (che significa aggiunta di file alla directory personalizzata per oh-my-zsh e modificando il pre e file locali per grml), una possibilità è quella di aggiungere le personalizzazioni per .zshrc.pree .zshrc.locale poi loro alla fonte in fondo al oh-my-zsh.zshrcfile in questo modo:

source $HOME/.zshrc.pre
source $HOME/.zshrc.local

Inoltre, se decidi di usare l'antigene, puoi aggiungerlo al tuo .zshrc.localfile e quindi lanciare un condizionale attorno ad esso per assicurarti che oh-my-zsh non lo esegua, in questo modo:

# if not using oh-my-zsh, then load plugins with antigen
# <https://github.com/zsh-users/antigen.git>
if [[ -z $ZSH ]]; then
    source $HOME/.dotfiles/zsh/antigen/antigen.zsh
    antigen-lib
    antigen-bundle vi-mode
    antigen-bundle zsh-users/zsh-syntax-highlighting
    antigen-bundle zsh-users/zsh-history-substring-search
    antigen-theme blinks
    antigen-apply
fi
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.