(package-initialize) (require 'package) (add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t) (add-to-list 'load-path (expand-file-name "~/elisp/")) (require 'ian-misc) (set-default-coding-systems 'utf-8) (custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(abc-default-key "E") '(abc-default-tempo "1/4=100") '(aggressive-completion-delay 0.6) '(aggressive-indent-comments-too t) '(alda-binary-location (concat sys_root "usr/local/bin/alda")) '(ansi-color-faces-vector [default default default italic underline success warning error]) '(ansi-color-names-vector ["#2f2f2e" "#ffb4ac" "#8ac6f2" "#e5c06d" "#a4b5e6" "#e5786d" "#7ec98f" "#74736f"]) '(autoarg-kp-mode t) '(backward-delete-char-untabify-method 'hungry) '(balanced-windows-mode t) '(baud-rate 19200) '(blink-matching-paren-dont-ignore-comments t) '(c-basic-offset 4) '(c-default-style '((c-mode . "user") (c++-mode . "user") (java-mode . "java") (awk-mode . "awk") (other . "gnu"))) '(calendar-bahai-all-holidays-flag t) '(calendar-chinese-all-holidays-flag t) '(calendar-christian-all-holidays-flag t) '(calendar-date-style 'iso) '(calendar-hebrew-all-holidays-flag t) '(calendar-islamic-all-holidays-flag t) '(calendar-mark-diary-entries-flag t) '(calendar-mark-holidays-flag t) '(calendar-view-diary-initially-flag t) '(calendar-view-holidays-initially-flag t) '(column-number-mode t) '(completion-pcm-complete-word-inserts-delimiters t) '(completion-styles '(basic partial-completion emacs22 shorthand substring flex emacs21 initials)) '(completions-detailed t) '(completions-group t) '(completions-group-sort 'ignore) '(context-menu-functions '(context-menu-undo context-menu-region context-menu-middle-separator context-menu-local context-menu-minor context-menu-middle-separator context-menu-ffap context-menu-middle-separator context-menu-ffap)) '(context-menu-mode t) '(current-language-environment "UTF-8") '(custom-enabled-themes '(smart-mode-line-respectful doom-snazzy)) '(default-input-method "rfc1345") '(default-transient-input-method "compose") '(delete-selection-mode t) '(describe-char-unidata-list '(name general-category canonical-combining-class decomposition numeric-value iso-10646-comment)) '(desktop-save-mode t) '(diary-abbreviated-year-flag t) '(dired-ls-F-marks-symlinks t) '(display-time-24hr-format t) '(display-time-day-and-date t) '(display-time-format "%a %F %T %Z") '(display-time-mode t) '(ediff-window-setup-function 'ediff-setup-windows-plain) '(electric-layout-mode t) '(electric-pair-mode t) '(electric-quote-context-sensitive t) '(electric-quote-mode t) '(emacs-lock-default-locking-mode 'kill) '(emojify-emoji-set "twemoji-v2-22") '(file-preserve-symlinks-on-save t) '(font-lock-global-modes '(not speedbar-mode)) '(frame-background-mode 'dark) '(fringe-mode nil nil (fringe)) '(global-display-line-numbers-mode t) '(global-hi-lock-mode t) '(global-hl-line-mode t) '(global-prettify-symbols-mode t) '(gpm-mouse-mode nil) '(helm-allow-mouse t) '(helm-autoresize-mode t) '(hexl-iso "-iso") '(hi-lock-file-patterns-policy 'never) '(history-delete-duplicates t) '(ibuffer-default-shrink-to-minimum-size t) '(ibuffer-default-sorting-mode 'filename/process) '(ibuffer-mode-hook '(ibuffer-auto-mode)) '(ibuffer-view-ibuffer t) '(icomplete-mode t) '(ignored-local-variable-values '((mangle-whitespace . t))) '(image-animate-loop t) '(indicate-buffer-boundaries 'right) '(indicate-empty-lines t) '(inhibit-startup-screen t) '(initial-scratch-message " ;; scratch ") ;'(insert-esv-crossway-api-key "REDACTED-DUE-TO-BIBLE-POLICE") ;; https://api.esv.org '(j-console-cmd "jconsole") '(kill-whole-line t) '(list-colors-sort 'name) '(menu-bar-mode nil) '(minibuffer-eldef-shorten-default t) '(minibuffer-electric-default-mode t) '(minibuffer-message-clear-timeout 7) '(minibuffer-prompt-properties '(read-only t cursor-intangible t face minibuffer-prompt)) '(mouse-drag-and-drop-region 'control) '(msb-files-by-directory t) '(msb-mode t) '(org-agenda-files "~/.agenda_files") '(org-enforce-todo-checkbox-dependencies t) '(org-enforce-todo-dependencies t) '(org-log-done 'time) '(org-log-note-clock-out t) '(org-todo-keywords '((sequence "TODO" "IN-P" "DONE"))) '(package-selected-packages '(php-mode raku-mode chemtable chinese-conv cangjie buffer-sets anki-mode anki-editor anki-vocabulary ivariants annotate restart-emacs turing-machine kurecolor diminish-buffer pyim org-drill eshell-vterm julia-vterm org-tag-beautify org-sidebar org-pretty-tags name-this-color native-complete frame-purpose format-table glsl-mode helm-j-cheatsheet jack-connect japanese-holidays org-index org-random-todo org-table-color pinyin-search racket-mode smartparens rust-mode csv-mode insert-esv inform7 indent-lint ibuffer-project ibuffer-vc howdoyou hl-sentence hl-block-mode helpful helm-mode-manager helm-ispell helm-helm-commands helm-ghs helm-firefox helm-frame ac-helm opencc youdao-dictionary balanced-windows ansi aggressive-fill-paragraph ac-js2 ac-math ac-emoji js2-mode context-coloring j-mode live-preview luarocks lua-mode midi-kbd muse num3-mode number pinyin powershell fsharp-mode try darkroom ascii-art-to-unicode electric-operator dired-quick-sort helm-git helm-google helm-org helm-unicode helm-w32-launcher helm-wikipedia helm-youtube org-books dired-single helm-lastpass ahk-mode alda-mode rainbow-delimiters helm electric-spacing annoying-arrows-mode smart-cursor-color doom-themes desktop-registry desktop+ metronome lastpass freeze-it vlc add-hooks google-this google-translate shut-up sml-modeline buffer-expose lingva org-notebook visual-ascii-mode prettier nhexl-mode linguistic holy-books gnuplot tabula-rasa diary-manager quiz rainbow-mode insert-random dimmer ilist blist better-jumper ac-octave abc-mode ac-html prettify-math pretty-mode ac-haskell-process aggressive-completion aggressive-indent keycast ibuffer-git fold-this htmlize i-ching which-key validate-html ibuffer-sidebar kaolin-themes smart-mode-line haskell-mode julia-mode emojify unicode-fonts tide ws-butler uni-confusables vlf typescript-mode)) '(pcomplete-autolist t) '(read-buffer-completion-ignore-case t) '(remember-in-new-frame t) '(save-place-mode t) '(scroll-bar-mode nil) '(server-mode t) '(server-use-tcp t) '(show-paren-delay 0.1) '(show-paren-ring-bell-on-mismatch t) '(size-indication-mode t) '(sml/not-modified-char "=") '(sml/read-only-char "%") '(sml/show-frame-identification t) '(sml/theme 'respectful) '(tab-bar-close-button-show nil) '(tab-bar-close-last-tab-choice 'delete-frame) '(tab-bar-close-tab-select 'left) '(tab-bar-format '(tab-bar-format-menu-bar tab-bar-format-history tab-bar-format-tabs tab-bar-separator tab-bar-format-align-right keycast-tab-bar keycast-)) '(tab-bar-history-mode t) '(tab-bar-mode t) '(tab-bar-new-tab-choice 'bookmark-bmenu-get-buffer) '(tab-bar-new-tab-group nil) '(tab-bar-tab-hints t) '(tab-bar-tab-post-change-group-functions '(tab-bar-move-tab-to-group)) '(tab-width 4) '(tool-bar-mode nil) '(tool-bar-style 'text) '(unicode-fonts-debug-availability t) '(unicode-fonts-fallback-font-list '("Noto Sans Mono" "DejaVu Sans Mono" "Symbola")) '(unicode-fonts-ignore-overrides t) '(visible-bell t)) (custom-set-faces ;; custom-set-faces was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(default ((t (:family "Noto Sans Mono" :foundry "outline" :slant normal :weight normal :height 120 :width normal)))) '(bookmark-face ((t (:background "DeepPink4" :foreground "deeppink1" :weight bold)))) '(helm-selection ((t (:inherit (default default) :extend t :background "blue violet" :foreground "azure" :underline (:color foreground-color :style wave))))) '(hi-aquamarine ((t (:background "aquamarine" :foreground "black" :weight bold)))) '(hi-black-b ((t (:background "azure" :foreground "black" :weight bold)))) '(hi-black-hb ((t (:height 1.67 :weight bold :foreground "black" :background "azure1" :inherit variable-pitch)))) '(hi-blue ((t (:background "dark slate blue" :foreground "white" :weight bold)))) '(hi-blue-b ((t (:background "RoyalBlue2" :foreground "black" :weight bold)))) '(hi-green ((t (:background "#037a50" :foreground "white" :weight bold)))) '(hi-pink ((t (:background "hot pink" :foreground "black" :weight bold)))) '(hi-red-b ((t (:background "IndianRed4" :foreground "white" :weight bold)))) '(hi-salmon ((t (:background "light salmon" :foreground "black" :weight bold)))) '(hi-yellow ((t (:background "DarkGoldenrod4" :foreground "white" :weight bold)))) '(hl-line ((t (:extend t :background "#1c1e26")))) '(keycast-key ((t (:inherit tab-bar-tab)))) '(minibuffer-depth-indicator ((t (:box (:line-width (2 . 2) :color "grey75" :style released-button) :inherit highlight)))) '(tab-bar ((t (:background "gray10" :foreground "#fcefe6")))) '(tab-bar-tab ((t (:background "#303f3a" :foreground "#fcefe6" :box (:line-width (1 . 1) :color "grey75" :style pressed-button) :overline "black" :weight semi-bold)))) '(tab-bar-tab-group-current ((t (:weight bold :box (:line-width (2 . 2) :color "grey75" :style pressed-button) :background "aquamarine4" :inherit tab-bar-tab)))) '(tab-bar-tab-group-inactive ((t (:inherit tab-bar-tab-inactive :background "gray10" :box (:line-width (1 . 1) :color "cornsilk3" :style released-button) :slant oblique :weight ultra-bold)))) '(tab-bar-tab-inactive ((t (:background "#1f1f1f" :foreground "cornsilk4" :overline t :slant italic)))) '(tab-bar-tab-ungrouped ((t (:inherit (shadow tab-bar-tab-inactive) :overline "bisque2"))))) (cond ((string= system-type "gnu/linux") (setq d-drive "/media/DATA") (setq sys_root "/") ) ((string= system-type "windows-nt") (setq d-drive "D:") ; (setq sys_root "C:/your-posix-here")) ;; i use cygwin and wsl together it's kind of a mess ) ) (setenv "D" d-drive) (setenv "d" d-drive) (setenv "ed" "~/.emacs.d/") (setenv "org" (concat d-drive "/Documents/org")) (setenv "dot" (concat d-drive "/code/dotfiles")) (setenv "PATH" (concat sys_root "usr/local/bin" path-separator sys_root "usr/bin" path-separator sys_root "bin" path-separator (getenv "PATH"))) (dolist (package package-selected-packages) (unless (package-installed-p package) (package-install package))) (require 'unicode-fonts) (unicode-fonts-setup) (setq-default default-directory "~/") (setq diary-file (concat (getenv "org") "/diary")) (setq compilation-filenames '("Makefile" "makefile")) (defun mp-elisp-mode-eval-buffer () (interactive) (message "Evaluated buffer") (eval-buffer)) (define-key emacs-lisp-mode-map (kbd "C-c C-c") #'mp-elisp-mode-eval-buffer) (define-key emacs-lisp-mode-map (kbd "C-c c") #'eval-region) (define-key lisp-interaction-mode-map (kbd "C-c C-c") #'mp-elisp-mode-eval-buffer) (define-key lisp-interaction-mode-map (kbd "C-c c") #'eval-region) (put 'downcase-region 'disabled nil) (put 'upcase-region 'disabled nil) (defadvice hi-lock-set-pattern (around use-overlays activate) (let ((font-lock-fontified nil)) ad-do-it)) (global-set-key (kbd "C-x C-b") 'ibuffer) (global-set-key (kbd "C-c C-+") 'number/add) (global-set-key (kbd "C-c C--") 'number/sub) (global-set-key (kbd "C-c C-*") 'number/multiply) (global-set-key (kbd "C-c C-/") 'number/divide) (global-set-key (kbd "C-c C-0") 'number/pad) (global-set-key (kbd "C-c C-=") 'number/eval) (add-hooks '(((prog-mode html-mode css-mode) . (lambda () (setq auto-complete-mode t) (setq aggressive-completion-mode t) (setq show-trailing-whitespace t) (rainbow-delimiters-mode) (smartparens-mode) (add-to-list 'write-file-functions 'delete-trailing-whitespace) )))) (add-hooks '(((org-mode enriched-mode) . (lambda () (auto-fill-mode))))) (add-hook 'highlight-parentheses-mode-hook (lambda () (setq autopair-handle-action-fns (append (if autopair-handle-action-fns autopair-handle-action-fns '(autopair-default-handle-action)) '((lambda (action pair pos-before) (hl-paren-color-update))))))) (add-hook 'python-mode-hook (lambda () (setq-default py-indent-tabs-mode t) (add-to-list 'write-file-functions 'delete-trailing-whitespace))) (defun get-makefile () (if (file-exists-p "Makefile") (concat "") (let ((dir (locate-dominating-file "." "Makefile"))) (when dir (concat "-C " dir))))) (require 'smartparens-config) (smart-mode-line-enable) (keycast-tab-bar-mode 1) (defun color-py () ; doesnt really work right (interactive) (beginning-of-buffer) (highlight-phrase (rx (in "āēīōūǖ")) 'hi-red-b) (highlight-phrase (rx (in "áéíóúǘ")) 'hi-yellow) (highlight-phrase (rx (in "ǎěǐǒǔǚ")) 'hi-green) (highlight-phrase (rx (in "àèìòùǜ")) 'hi-blue))