diff --git a/emacs/init.el b/emacs/init.el index cd30ca2..e006871 100644 --- a/emacs/init.el +++ b/emacs/init.el @@ -50,39 +50,37 @@ ;; If there is more than one, they won't work right. '(Buffer-menu-name-width 30) '(agda2-program-args nil) - '(auth-sources (quote ("~/.authinfo.gpg" "~/.authinfo" "~/.netrc"))) + '(auth-sources '("~/.authinfo.gpg" "~/.authinfo" "~/.netrc")) '(blink-cursor-mode nil) '(column-number-mode t) '(company-tooltip-minimum-width 35) '(compilation-disable-input t) - '(confirm-kill-emacs (quote yes-or-no-p)) + '(confirm-kill-emacs 'yes-or-no-p) '(css-indent-offset 2) '(custom-safe-themes - (quote - ("224f84d5013ad0b98a43c54683302309a7cba53c0e37480a65284fd365774400" "d59e18ab7969fd68103ab0fe07e03c1830fd77c21c12a3fb4fe970931ddaf68d" "670df6cad1a732850a5d90ce2b0326969bd7596881dc1fed6b35091520a3da97" "aa81baddda211ffab84a5dc68750ac519d4841be63907a6b5de0cd72e631b172" "c91a5bf65b3f79ab28ab350b1d16c24d8b8bc1201e9c6c2106a60f98bceae754" default))) + '("224f84d5013ad0b98a43c54683302309a7cba53c0e37480a65284fd365774400" "d59e18ab7969fd68103ab0fe07e03c1830fd77c21c12a3fb4fe970931ddaf68d" "670df6cad1a732850a5d90ce2b0326969bd7596881dc1fed6b35091520a3da97" "aa81baddda211ffab84a5dc68750ac519d4841be63907a6b5de0cd72e631b172" "c91a5bf65b3f79ab28ab350b1d16c24d8b8bc1201e9c6c2106a60f98bceae754" default)) '(dashboard-set-footer nil) '(delete-selection-mode t) '(dhall-repl-executable "dhall-repl") '(dhall-use-header-line nil) '(dired-isearch-filenames t) + '(dired-use-ls-dired nil) '(display-buffer-alist - (quote - (("*Man*" display-buffer-same-window) - ("*Buffer List*" display-buffer-same-window)))) + '(("*Man*" display-buffer-same-window) + ("*Buffer List*" display-buffer-same-window))) '(echo-keystrokes 1e-10) - '(erc-autojoin-channels-alist (quote (("irc.freenode.net" "#haskell" "#data.coop")))) + '(erc-autojoin-channels-alist '(("irc.freenode.net" "#haskell" "#data.coop"))) '(erc-autojoin-mode t) '(erc-nick "fredefox") '(erc-port 6667) '(erc-prompt-for-password nil) '(erc-server "irc.freenode.net") '(exec-path-from-shell-check-startup-files nil) - '(flycheck-emacs-lisp-load-path (quote inherit)) - '(flycheck-ghc-language-extensions (symbol-value (quote haskell-language-extensions))) - '(flycheck-hlint-language-extensions (symbol-value (quote haskell-language-extensions))) + '(flycheck-emacs-lisp-load-path 'inherit) + '(flycheck-ghc-language-extensions (symbol-value 'haskell-language-extensions)) + '(flycheck-hlint-language-extensions (symbol-value 'haskell-language-extensions)) '(forge-alist - (quote - (("github.com" "api.github.com" "github.com" forge-github-repository) + '(("github.com" "api.github.com" "github.com" forge-github-repository) ("gitlab.com" "gitlab.com/api/v4" "gitlab.com" forge-gitlab-repository) ("salsa.debian.org" "salsa.debian.org/api/v4" "salsa.debian.org" forge-gitlab-repository) ("framagit.org" "framagit.org/api/v4" "framagit.org" forge-gitlab-repository) @@ -94,76 +92,61 @@ ("repo.or.cz" nil "repo.or.cz" forge-repoorcz-repository) ("git.suckless.org" nil "git.suckless.org" forge-stagit-repository) ("git.sr.ht" nil "git.sr.ht" forge-srht-repository) - ("git.data.coop" "git.data.coop/api/v1" "git.data.coop" forge-gitea-repository)))) + ("git.data.coop" "git.data.coop/api/v1" "git.data.coop" forge-gitea-repository))) '(global-company-mode t) '(haskell-indentation-where-post-offset 0) '(haskell-indentation-where-pre-offset 0) - '(haskell-language-extensions (symbol-value (quote haskell-language-extensions))) + '(haskell-language-extensions (symbol-value 'haskell-language-extensions)) '(haskell-tags-on-save t) '(indent-tabs-mode nil) '(initial-scratch-message nil) '(js-indent-level 2) '(js2-basic-offset 2) - '(js2-global-externs (list (quote this))) + '(js2-global-externs (list 'this)) '(kill-whole-line t) '(line-move-visual nil) '(lsp-auto-guess-root t) - '(magit-display-buffer-function (quote magit-display-buffer-same-window-except-diff-v1)) + '(magit-display-buffer-function 'magit-display-buffer-same-window-except-diff-v1) '(magit-popup-display-buffer-action nil) '(markdown-command "pandoc -t html") '(menu-bar-mode nil) - '(message-send-mail-function (quote smtpmail-send-it)) + '(message-send-mail-function 'smtpmail-send-it) + '(mode-line-percent-position '(6 "%q")) '(org-agenda-files "~/.config/orgmode/agenda_files") '(package-selected-packages - (quote - (origami dhall-mode docker-tramp graphql-mode enh-ruby-mode scala-mode string-inflection prettier-js quelpa typescript-mode visual-fill-column ag ripgrep fill-column-indicator rjsx-mode image+ company org-jira which-key flycheck es-mode lsp-haskell forge projectile exec-path-from-shell lsp-ui lsp-mode editorconfig purescript-mode markdown-mode+ ssh-agency dash yaml-mode restart-emacs markdown-mode magit helm haskell-mode haml-mode form-feed dashboard))) + '(rust-mode lsp forge tide origami dhall-mode docker-tramp graphql-mode enh-ruby-mode scala-mode string-inflection prettier-js quelpa typescript-mode visual-fill-column ag ripgrep fill-column-indicator rjsx-mode image+ company org-jira which-key flycheck es-mode lsp-haskell projectile exec-path-from-shell lsp-ui lsp-mode editorconfig purescript-mode markdown-mode+ ssh-agency dash yaml-mode restart-emacs markdown-mode magit helm haskell-mode haml-mode form-feed dashboard)) '(prettier-js-command "prettier-1.18.2") '(projectile-globally-ignored-directories - (quote - (".idea" ".ensime_cache" ".eunit" ".git" ".hg" ".fslckout" "_FOSSIL_" ".bzr" "_darcs" ".tox" ".svn" ".stack-work" "node_modules" "vendor"))) - '(projectile-globally-ignored-files (quote ("/TAGS" "/vendor" "/.bundle" "/node_modules"))) + '(".idea" ".ensime_cache" ".eunit" ".git" ".hg" ".fslckout" "_FOSSIL_" ".bzr" "_darcs" ".tox" ".svn" ".stack-work" "node_modules" "vendor")) + '(projectile-globally-ignored-files '("/TAGS" "/vendor" "/.bundle" "/node_modules")) '(projectile-mode t nil (projectile)) '(projectile-project-search-path - (seq-filter - (quote file-directory-p) - (seq-drop - (directory-files "~/git" t) - 2))) - '(purescript-mode-hook (quote (turn-on-purescript-indentation))) + (seq-filter 'file-directory-p + (seq-drop + (directory-files "~/git" t) + 2))) + '(purescript-mode-hook '(turn-on-purescript-indentation)) '(recentf-max-menu-items 255) '(recentf-mode t) '(ruby-align-chained-calls t) '(ruby-align-to-stmt-keywords t) '(ruby-chained-calls t) '(ruby-insert-encoding-magic-comment nil) + '(rust-indent-offset 2) '(safe-local-eval-forms - (quote - ((add-hook - (quote write-file-hooks) - (quote time-stamp)) - (add-hook - (quote write-file-functions) - (quote time-stamp)) - (add-hook - (quote before-save-hook) - (quote time-stamp) - nil t) - (add-hook - (quote before-save-hook) - (quote delete-trailing-whitespace) - nil t) + '((add-hook 'write-file-hooks 'time-stamp) + (add-hook 'write-file-functions 'time-stamp) + (add-hook 'before-save-hook 'time-stamp nil t) + (add-hook 'before-save-hook 'delete-trailing-whitespace nil t) (format "cd ~/git/zendesk/guide-acceptance-tests && rspec --no-color '%s'" - (projectile-get-relative-path-buffer))))) + (projectile-get-relative-path-buffer)))) '(safe-local-variable-values - (quote - ((compilation-disable-input . t) + '((compilation-disable-input . t) (sgml-basic-offset . 2) (electric-indent-mode) - (eval add-hook - (quote js2-mode-hook) + (eval add-hook 'js2-mode-hook (prettier-js-mode 0)) - (eval add-hook - (quote js-mode-hook) + (eval add-hook 'js-mode-hook (prettier-js-mode 0)) (js-mode ((prettier-js-mode . 0))) @@ -172,20 +155,17 @@ (magit-git-debug . 1) (magit-refresh-verbose . 1) (setq magit-refresh-verbose 1) - (eval remove-hook - (quote magit-refs-sections-hook) - (quote magit-insert-tags)) + (eval remove-hook 'magit-refs-sections-hook 'magit-insert-tags) (eval - (remove-hook - (quote magit-refs-sections-hook) - (quote magit-insert-tags))) + (remove-hook 'magit-refs-sections-hook 'magit-insert-tags)) (magit-refresh-buffers) - (git-commit-major-mode . git-commit-elisp-text-mode)))) + (git-commit-major-mode . git-commit-elisp-text-mode) + (magit-status-headers-hook . nil))) '(scroll-bar-mode nil) '(scroll-conservatively 101) '(scroll-margin 0) '(select-enable-clipboard t) - '(send-mail-function (quote smtpmail-send-it)) + '(send-mail-function 'smtpmail-send-it) '(set-mark-command-repeat-pop t) '(sgml-basic-offset 1) '(show-paren-mode t) @@ -196,6 +176,7 @@ '(tool-bar-mode nil) '(typescript-indent-level 2) '(vc-follow-symlinks nil) + '(which-key-idle-delay 1e-05) '(window-combination-resize t) '(window-resize-pixelwise t)) @@ -261,6 +242,8 @@ (load-additional-themes) +;; (quelpa '(lsp :url "git@github.com:emacs-lsp/lsp-mode.git" :fetcher git :commit "026ad0edf93e1a9e1d7927635a2bb431874541c5")) + ;; (require 'lsp) ;; Shame! `lsp-ui` is emitting: ;; Eager macro-expansion failure: (wrong-type-argument listp kind) @@ -417,6 +400,11 @@ ;; (add-to-list 'semantic-symref-filepattern-alist '(enh-ruby-mode "*.r[bu]" "*.rake" "*.gemspec" "*.erb" "*.haml" "Rakefile" "Thorfile" "Capfile" "Guardfile" "Vagrantfile")) (add-to-list 'auto-mode-alist '("\\.rb\\'" . enh-ruby-mode)) (add-to-list 'auto-mode-alist '("\\.hbs\\'" . html-mode)) +(add-to-list 'auto-mode-alist '("\\.ts\\'" . typescript-mode)) +(add-hook 'typescript-mode-hook + (lambda () + (lsp) + (subword-mode t))) ;; I'm confused about the less worse option here. I think the best ;; option is to use smie (the default).