summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArnaud Bailly <arnaud.oqube@gmail.com>2019-09-07 10:27:18 +0200
committerArnaud Bailly <arnaud.oqube@gmail.com>2019-09-07 10:27:18 +0200
commitcd4c8103de6e57068d947f3efe94d82368e076be (patch)
treeb4576fd850ea23767baad1a24bc34c0b7473f128
parent004db3ecd099c8377e096b4be45eab92d25787ce (diff)
parent36b5878a953598ba62cc8720c7cd0cd5c07f46d5 (diff)
downloaddotfiles-cd4c8103de6e57068d947f3efe94d82368e076be.tar.gz
Merge branch 'master' of github.com:abailly/dotfiles
-rw-r--r--.bash_profile33
-rw-r--r--.emacs74
-rw-r--r--install.el14
3 files changed, 116 insertions, 5 deletions
diff --git a/.bash_profile b/.bash_profile
index 959da38..7381c73 100644
--- a/.bash_profile
+++ b/.bash_profile
@@ -1,2 +1,31 @@
-export EDITOR=vim
-export PATH=$HOME/.local/bin:$HOME/.cabal/bin:$PATH
+export PATH=/Applications/Emacs.app/Contents/MacOS/:/Applications/Emacs.app/Contents/MacOS/bin:${PATH}
+export PATH=${HOME}/.local/bin:${PATH}
+export PATH=${HOME}/.idris2/bin:${PATH}
+export PATH="/Applications/Postgres.app/Contents/Versions/latest/bin:$PATH"
+export GOPATH=${HOME}/go
+alias ec="emacsclient -c"
+alias g=git
+
+# from https://stackoverflow.com/questions/18880024/start-ssh-agent-on-login
+SSH_ENV="$HOME/.ssh/environment"
+
+function start_agent {
+ echo "Initialising new SSH agent..."
+ /usr/bin/ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
+ echo succeeded
+ chmod 600 "${SSH_ENV}"
+ . "${SSH_ENV}" > /dev/null
+ /usr/bin/ssh-add;
+}
+
+# Source SSH settings, if applicable
+
+if [ -f "${SSH_ENV}" ]; then
+ . "${SSH_ENV}" > /dev/null
+ #ps ${SSH_AGENT_PID} doesn't work under cywgin
+ ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
+ start_agent;
+ }
+else
+ start_agent;
+fi
diff --git a/.emacs b/.emacs
index dd97b21..e90452f 100644
--- a/.emacs
+++ b/.emacs
@@ -21,13 +21,14 @@
(set-face-attribute 'default nil
:background "white"
:foreground "black"
- :family "Monaco"
+ :family "Source Code Pro"
:height 140)
))
(global-set-key (kbd "C-x M-a") "α")
(global-set-key (kbd "C-x M-b") "β")
+(global-set-key (kbd "C-x M-d") "δ")
(global-set-key (kbd "C-x M-l") "λ")
(setq fill-column 132)
@@ -71,6 +72,7 @@
(setq helm-autoresize-max-height 0)
(setq helm-autoresize-min-height 20)
+(setq helm-mode-fuzzy-match t)
(helm-autoresize-mode 1)
(helm-mode 1)
@@ -288,3 +290,73 @@
;; development mode
(add-to-list 'load-path (concat (getenv "HOME") "/projects/idris/idris-mode"))
(require 'idris-mode)
+
+;; projectile
+(require 'projectile)
+(define-key projectile-mode-map (kbd "s-p") 'projectile-command-map)
+(define-key projectile-mode-map (kbd "C-c p") 'projectile-command-map)
+(projectile-mode +1)
+
+;; elfeed
+(use-package elfeed
+ :ensure t)
+
+(setq elfeed-feeds
+ '("https://abailly.github.io/atom.xml"
+ "http://planet.emacsen.org/atom.xml"
+ "https://reasonablypolymorphic.com/feed.rss"))
+
+(global-set-key (kbd "C-x w") 'elfeed)
+
+;; yaml
+(require 'yaml-mode)
+
+;; javascript
+(require 'js2-mode)
+(require 'js2-refactor)
+(require 'xref-js2)
+
+(add-to-list 'auto-mode-alist '("\\.js\\'" . js2-mode))
+
+(add-hook 'js2-mode-hook #'js2-refactor-mode)
+(js2r-add-keybindings-with-prefix "C-c C-r")
+(define-key js2-mode-map (kbd "C-k") #'js2r-kill)
+
+;; js-mode (which js2 is based on) binds "M-." which conflicts with xref, so
+;; unbind it.
+(define-key js-mode-map (kbd "M-.") nil)
+
+(add-hook 'js2-mode-hook (lambda ()
+ (add-hook 'xref-backend-functions #'xref-js2-xref-backend nil t)))
+
+(require 'typescript-mode)
+(require 'ansi-color)
+(defun colorize-compilation-buffer ()
+ (ansi-color-apply-on-region compilation-filter-start (point-max)))
+(add-hook 'compilation-filter-hook 'colorize-compilation-buffer)
+
+(require 'web-mode)
+(add-to-list 'auto-mode-alist '("\\.tsx\\'" . web-mode))
+(add-hook 'web-mode-hook
+ (lambda ()
+ (when (string-equal "tsx" (file-name-extension buffer-file-name))
+ (setup-tide-mode))))
+
+;; enable typescript-tslint checker
+(flycheck-add-mode 'typescript-tslint 'web-mode)
+
+;; supports .editorconfig file in project
+(use-package editorconfig
+ :ensure t
+ :config
+ (editorconfig-mode 1))
+
+;; elm
+(require 'elm-mode)
+
+;; terraform
+(require 'terraform-mode)
+
+;; shellcheck
+;;http://www.skybert.net/emacs/bash-linting-in-emacs/
+(add-hook 'sh-mode-hook 'flycheck-mode)
diff --git a/install.el b/install.el
index 6de54a5..8046e26 100644
--- a/install.el
+++ b/install.el
@@ -12,5 +12,15 @@
(unless (package-installed-p package)
(package-install package)))
- '(magit intero helm markdown-mode multiple-cursors expand-region yasnippet color-theme
- elpy prop-menu google-translate))
+ '(magit
+ intero
+ helm
+ markdown-mode
+ multiple-cursors
+ expand-region
+ yasnippet
+ color-theme
+ elpy
+ prop-menu
+ google-translate
+ use-package))