Более быстрый запуск zsh

Мне нравится tmux, но всякий раз, когда мне нужно создать раскол с новой панелью или новым окном, она должна запускать мои скрипты zsh init и .profile и т. Д. И они занимают несколько секунд для запуска. Инициализация таких вещей, как fasd и т. Д.

Возможно ли запустить его быстрее?

  • Существуют ли проблемы с дефисами в функциях, псевдонимах и исполняемых файлах?
  • Показать каждую установленную оболочку командной строки?
  • Как отключить «auto cd» в zsh с помощью oh-my-zsh
  • Zsh перенаправляет на / dev / null и pipe
  • смена каталога происходит очень медленно
  • Как я могу использовать !! в псевдониме zsh
  • Как я могу получить постоянный dirstack с уникальными записями в zsh?
  • Исполняемые файлы показывают с символом * рядом с их именем в выводе ls
  • One Solution collect form web for “Более быстрый запуск zsh”

    «Инициализация таких вещей, как fasd и т. Д.» – хорошо, что выполнение сложных вещей обязательно займет некоторое время.

    Вот несколько общих советов по ускорению запуска zsh:

    • Выполняйте только команды, которые вам действительно нужны. Не используйте огромные общие фреймворки, такие как oh-my-zsh, которые определяют еще один уровень конфигурации, который претендует на удовлетворение потребностей всех (но на самом деле этого не делает).
    • Избегайте выполнения подпроцессов. Для коротких манипуляций с строками используйте встроенные конструкции zsh, а не cut , sed , awk и т. Д.
    • Используйте байт-скомпилированные файлы для чего-то большого.
    • Убедитесь, что информация о завершении кэширования: pass -d для compinit .
    • Загружайте вещи лениво, т.е. при первом использовании. Используйте autoload загрузку.

    Чтобы найти то, что так долго, профайл .zshrc .

    • Вы можете получить некоторые измерения из профилировщика zsh. Добавьте zmodload zsh/zprof вверху вашего .zshrc и запустите zprof .
    • Вы можете проследить, что делает zsh (обратите внимание, что сама трассировка замедлит работу, но, в основном, единообразно). Добавить setopt prompt_subst; zmodload zsh/datetime; PS4='+[$EPOCHREALTIME]%N:%i> '; set -x setopt prompt_subst; zmodload zsh/datetime; PS4='+[$EPOCHREALTIME]%N:%i> '; set -x setopt prompt_subst; zmodload zsh/datetime; PS4='+[$EPOCHREALTIME]%N:%i> '; set -x в верхней части вашего .zshrc .
    Linux и Unix - лучшая ОС в мире.