diff --git a/emacs.d/init.el b/emacs.d/init.el index 52d9100..e5824b6 100644 --- a/emacs.d/init.el +++ b/emacs.d/init.el @@ -43,6 +43,7 @@ (eval-print-last-sexp))) (load bootstrap-file nil 'nomessage)) (require 'package) +(package-initialize) (unless (package-installed-p 'use-package) (package-refresh-contents) (package-install 'use-package)) @@ -51,7 +52,7 @@ ;; Integrates `straight' directly into the `use-package' package through the ;; `:straight' expression. (straight-use-package 'use-package) - +(setq straight-use-package-by-default t) (use-package delight) (use-package @@ -104,7 +105,7 @@ (rust-mode . lsp-deferred) (python-mode . lsp-deferred) (swift-mode . lsp-deferred) - (sh-mode . lsp-deferred)) + (sql-mode .lsp-deferred)) :commands (lsp lsp-deferred) :config (setq lsp-idle-delay 0.500) :custom (lsp-enable-folding nil) @@ -124,13 +125,8 @@ (shell-quote-argument (buffer-file-name)))) (revert-buffer t t t)) (warn - "[✗] python-mode: Cannot find autoflake executable."))) - :custom (flycheck-pylintrc "~/.pylintrc") - (flycheck-python-pylint-executable "/usr/bin/pylint")) + "[✗] python-mode: Cannot find autoflake executable.")))) -(use-package - pyvenv - :init (setenv "WORKON_HOME" "~/.pyenv/versions")) (use-package lsp-pyright @@ -149,9 +145,7 @@ (use-package py-isort - :config (setq py-isort-options '("--src .")) - :hook ((before-save . py-isort-before-save) - (python-mode . pyvenv-mode))) + :hook ((before-save . py-isort-before-save))) (use-package lsp-sourcekit @@ -354,15 +348,15 @@ (flyspell-issue-message-flag nil) (flyspell-issue-welcome-flag nil)) -(use-package - ispell - :custom (ispell-hunspell-dict-paths-alist '(("en_CA" "/usr/share/hunspell/en_CA.aff"))) - (ispell-silently-savep t) - :config (setenv "LANG" "en_CA") - (setq ispell-program-name "hunspell") - (setq ispell-local-dictionary-alist '(("en_CA" "[[:alpha:]]" "[^[:alpha:]]" "['’-]" t ("-d" - "en_CA" ) - nil utf-8)))) +;; (use-package +;; ispell +;; :custom (ispell-hunspell-dict-paths-alist '(("en_CA" "/usr/share/hunspell/en_CA.aff"))) +;; (ispell-silently-savep t) +;; :config (setenv "LANG" "en_CA") +;; (setq ispell-program-name "hunspell") +;; (setq ispell-local-dictionary-alist '(("en_CA" "[[:alpha:]]" "[^[:alpha:]]" "['’-]" t ("-d" +;; "en_CA" ) +;; nil utf-8)))) (use-package semantic :config (semantic-mode 1) @@ -428,12 +422,13 @@ (add-hook 'eww-mode-hook 'scroll-lock-mode) ;;cleanup buffers -(setq clean-buffer-list-delay-special 900) -(defvar clean-buffer-list-timer nil) -(setq clean-buffer-list-timer (run-at-time t 7200 'clean-buffer-list)) -;; kill everything, clean-buffer-list is very intelligent at not killing -;; unsaved buffer. -(setq clean-buffer-list-kill-regexps '("^.*$")) +(setq clean-buffer-list-delay-special (* 8 3600)) +(setq clean-buffer-list-delay-general 5) +;; (defvar clean-buffer-list-timer nil) +;; (setq clean-buffer-list-timer (run-at-time t 7200 'clean-buffer-list)) +;; ;; kill everything, clean-buffer-list is very intelligent at not killing +;; ;; unsaved buffer. +;; (setq clean-buffer-list-kill-regexps '("^.*$")) (add-hook 'prog-mode-hook 'rainbow-delimiters-mode) diff --git a/zshrc b/zshrc index 3e945a8..313de5a 100644 --- a/zshrc +++ b/zshrc @@ -1,6 +1,3 @@ -# If you come from bash you might have to change your $PATH. -# export PATH=$HOME/bin:/usr/local/bin:$PATH - # Path to your oh-my-zsh installation. export ZSH=$HOME/.oh-my-zsh @@ -10,90 +7,10 @@ export ZSH=$HOME/.oh-my-zsh # See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes ZSH_THEME="zhann" -# Set list of themes to pick from when loading at random -# Setting this variable when ZSH_THEME=random will cause zsh to load -# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/ -# If set to an empty array, this variable will have no effect. -# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) - -# Uncomment the following line to use case-sensitive completion. -# CASE_SENSITIVE="true" - -# Uncomment the following line to use hyphen-insensitive completion. -# Case-sensitive completion must be off. _ and - will be interchangeable. -# HYPHEN_INSENSITIVE="true" - -# Uncomment the following line to disable bi-weekly auto-update checks. -# DISABLE_AUTO_UPDATE="true" - -# Uncomment the following line to automatically update without prompting. -# DISABLE_UPDATE_PROMPT="true" - -# Uncomment the following line to change how often to auto-update (in days). -# export UPDATE_ZSH_DAYS=13 - -# Uncomment the following line if pasting URLs and other text is messed up. -# DISABLE_MAGIC_FUNCTIONS=true - -# Uncomment the following line to disable colors in ls. -# DISABLE_LS_COLORS="true" - -# Uncomment the following line to disable auto-setting terminal title. -# DISABLE_AUTO_TITLE="true" - -# Uncomment the following line to enable command auto-correction. -# ENABLE_CORRECTION="true" - -# Uncomment the following line to display red dots whilst waiting for completion. -# COMPLETION_WAITING_DOTS="true" - -# Uncomment the following line if you want to disable marking untracked files -# under VCS as dirty. This makes repository status check for large repositories -# much, much faster. -# DISABLE_UNTRACKED_FILES_DIRTY="true" - -# Uncomment the following line if you want to change the command execution time -# stamp shown in the history command output. -# You can set one of the optional three formats: -# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" -# or set a custom format using the strftime function format specifications, -# see 'man strftime' for details. -# HIST_STAMPS="mm/dd/yyyy" - -# Would you like to use another custom folder than $ZSH/custom? -# ZSH_CUSTOM=/path/to/new-custom-folder - -# Which plugins would you like to load? -# Standard plugins can be found in ~/.oh-my-zsh/plugins/* -# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ -# Example format: plugins=(rails git textmate ruby lighthouse) -# Add wisely, as too many plugins slow down shell startup. plugins=(git) source $ZSH/oh-my-zsh.sh -# User configuration - -# export MANPATH="/usr/local/man:$MANPATH" - -# You may need to manually set your language environment -# export LANG=en_US.UTF-8 - - - -# Compilation flags -# export ARCHFLAGS="-arch x86_64" - -# Set personal aliases, overriding those provided by oh-my-zsh libs, -# plugins, and themes. Aliases can be placed here, though oh-my-zsh -# users are encouraged to define aliases within the ZSH_CUSTOM folder. -# For a full list of active aliases, run `alias`. -# -# Example aliases -# alias zshconfig="mate ~/.zshrc" -# alias ohmyzsh="mate ~/.oh-my-zsh" - - setopt noincappendhistory setopt nosharehistory @@ -110,58 +27,33 @@ e() { alias ec="emacsclient -qc -n" export PATH=$PATH:$HOME/.local/bin -export PATH=$PATH:$HOME/.pyenv/bin export PATH=$PATH:/usr/local/go/bin +export PATH=$PATH:/usr/local/kotlinc/bin +export PATH=$PATH:/usr/local/gradle-7.5.1/bin export PATH=$PATH:$HOME/.krew/bin export PATH=$PATH:$HOME/.linkerd2/bin export PATH=$PATH:/usr/local/swift/bin -eval "$(pyenv init -)" -eval "$(pyenv virtualenv-init -)" source <(kubectl completion zsh) -export AWS_DEFAULT_REGION=us-east-1 +# python setup +export PYENV_ROOT="$HOME/.pyenv" +command -v pyenv >/dev/null || export PATH=$PATH:$PYENV_ROOT/bin +eval "$(pyenv init -)" +export PATH=$PATH:$PYENV_ROOT/versions -aws-docker-login() { - echo 'Logging into Docker...' - aws ecr get-login-password | docker login --username AWS --password-stdin 095258169967.dkr.ecr.us-east-1.amazonaws.com -} - -aws-get-codeartifact() { - echo 'Setting CODEARTIFACT_TOKEN...' - export CODEARTIFACT_TOKEN=$(aws codeartifact get-authorization-token --domain drivewyze --domain-owner 095258169967 --query authorizationToken --output text) - echo 'Done' -} - -aws-login() { - PROFILE="${1:-default}" - echo "logging in for " $PROFILE - # Modify the line below based on your needs - # aws-azure-login sometimes will prompt for the password every time which is annoying - # so this get-caller-identity is a way to test and only prompt for login when required - IDENT=$(aws sts get-caller-identity --profile $PROFILE 2> /dev/null) - if [ $? -ne 0 ]; then - aws-azure-login --no-prompt --profile $PROFILE - else - echo "already logged in to aws as" $(echo $IDENT | jq -r .Arn) - fi -} - -start-dockerd ()( - if [[ ! -f /var/run/docker.pid ]]; then - nohup sudo -b dockerd > /dev/null 2>&1 - fi -) +# node setup +export NVM_DIR="$HOME/.nvm" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm +[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion -if [[ $(grep -i microsoft /proc/version) ]]; then - echo "running in ms mode" +# android setup +export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 +export ANDROID_HOME=$HOME/utils/android/sdk +export PATH=$PATH:$JAVA_HOME/bin:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator:$FLUTTER_HOME/bin - start-dockerd - export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0 - aws-login - aws-docker-login > /dev/null - aws-get-codeartifact > /dev/null -fi +export LOCAL_CONFIG=$HOME/.local-config.sh +[ -f $LOCAL_CONFIG ] && source $LOCAL_CONFIG