Created
August 31, 2016 09:54
-
-
Save RadekMolenda/bf5e5712be4e2f165d59372e69aad03e to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
(require 'package) | |
(setq package-archives '(("gnu" . "http://elpa.gnu.org/packages/") | |
("marmalade" . "http://marmalade-repo.org/packages/") | |
("melpa" . "http://melpa.org/packages/"))) | |
(package-initialize) | |
(unless (package-installed-p 'use-package) | |
(package-refresh-contents) | |
(package-install 'use-package)) | |
(eval-when-compile | |
(require 'use-package)) | |
(require 'diminish) | |
(require 'bind-key) | |
(let ((path (shell-command-to-string ". ~/.bashrc; echo -n $PATH"))) | |
(setenv "PATH" path) | |
(setq exec-path | |
(append | |
(split-string-and-unquote path ":") | |
exec-path))) | |
(setq initial-scratch-message nil) | |
(setq make-backup-files nil) | |
(setq auto-save-default nil) | |
(global-linum-mode t) | |
(line-number-mode 1) | |
(setq linum-format "%5d ") | |
(column-number-mode 1) | |
(scroll-bar-mode -1) | |
(fset 'yes-or-no-p 'y-or-n-p) | |
(tool-bar-mode -1) | |
(set-fringe-mode '(0 . 0)) | |
(setq-default indent-tabs-mode nil) | |
(setq mac-option-modifier 'super) | |
(setq mac-command-modifier 'meta) | |
(setq use-package-always-ensure t) | |
(global-set-key (kbd "C-M-f") 'toggle-frame-fullscreen) | |
(global-set-key (kbd "C-x <up>") 'windmove-up) | |
(global-set-key (kbd "C-x <down>") 'windmove-down) | |
(global-set-key (kbd "C-x <left>") 'windmove-left) | |
(global-set-key (kbd "C-x <right>") 'windmove-right) | |
(global-set-key (kbd "s-r") 'query-replace) | |
(global-ede-mode 1) | |
(require 'semantic/sb) | |
(semantic-mode 1) | |
(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. | |
'(custom-safe-themes | |
(quote | |
("e8825f26af32403c5ad8bc983f8610a4a4786eb55e3a363fa9acb48e0677fe7e" "cdd26fa6a8c6706c9009db659d2dffd7f4b0350f9cc94e5df657fa295fffec71" default))) | |
'(safe-local-variable-values (quote ((encoding . utf-8))))) | |
(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. | |
'(font-lock-type-face ((t (:foreground "turquoise3")))) | |
'(mode-line ((t (:background "LightSalmon2" :foreground "#f6f2f3"))))) | |
(use-package alchemist | |
:init (setq alchemist-hooks-test-on-save t) | |
) | |
(use-package elixir-mode) | |
(use-package emamux) | |
(use-package yaml-mode | |
:config (add-to-list 'auto-mode-alist '("\\.yml\\'" . yaml-mode))) | |
(use-package feature-mode) | |
(use-package cider) | |
(use-package clojure-mode) | |
(use-package company | |
:diminish company-mode | |
:init (add-hook 'after-init-hook 'global-company-mode)) | |
(use-package evil-leader | |
:init (global-evil-leader-mode) | |
(evil-leader/set-leader ",")) | |
(use-package evil | |
:init (evil-mode 1)) | |
(use-package farmhouse-theme | |
:init (load-theme 'farmhouse-dark t) | |
(set-frame-font "Monaco 12")) | |
(use-package helm | |
:diminish helm-mode | |
:init (helm-mode 1) | |
:bind ("M-x" . helm-M-x)) | |
(use-package helm-ag | |
:init (defalias 'ag 'projectile-helm-ag)) | |
(use-package helm-projectile | |
:init (defun projectile-helm-ag () | |
(interactive) | |
(helm-ag (projectile-project-root)))) | |
(use-package highlight-parentheses | |
:init (define-globalized-minor-mode global-highlight-parentheses-mode | |
highlight-parentheses-mode | |
(lambda () | |
(highlight-parentheses-mode t))) | |
(global-highlight-parentheses-mode t)) | |
(use-package magit | |
:bind ("C-x g" . magit-status) | |
:init (setq magit-process-popup-time 0) | |
(setq magit-diff-auto-show nil) | |
(add-hook 'git-commit-mode-hook (lambda () (save-selected-window (magit-process-buffer))))) | |
(use-package rbenv | |
:init (progn | |
(setq rbenv-show-active-ruby-in-modeline nil) | |
(global-rbenv-mode))) | |
(use-package rubocop | |
:config (progn | |
(setq rubocop-check-command "/Users/radek/.rbenv/shims/rubocop --format emacs") | |
(setq rubocop-autocorrect-command "/Users/radek/.rbenv/shims/rubocop -a --format emacs"))) | |
(use-package markdown-mode | |
:config (add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode))) | |
(use-package projectile | |
:diminish projectile-mode | |
:init (setq inhibit-startup-screen t) | |
(projectile-global-mode) | |
(setq projectile-completion-system 'helm) | |
(setq projectile-tags-command "ctags -f TAGS --extra=-f --languages=-javascript --exclude=.git --exclude=log --exclude=public --exclude=vendor --exclude=tmp -e -R .") | |
(require 'helm-projectile) | |
(helm-projectile-on)) | |
(use-package projectile-rails | |
:init (add-hook 'projectile-mode-hook 'projectile-rails-on)) | |
(use-package rainbow-delimiters | |
:init (add-hook 'prog-mode-hook 'rainbow-delimiters-mode)) | |
(use-package rvm | |
:init | |
(require 'rvm) | |
(add-hook 'ruby-mode-hook (lambda () (rvm-activate-corresponding-ruby)))) | |
(use-package rspec-mode | |
:init (add-hook 'after-init-hook 'inf-ruby-switch-setup)) | |
(use-package ruby-hash-syntax) | |
(use-package ruby-mode | |
:init (setq ruby-insert-encoding-magic-comment nil)) | |
(use-package sane-term | |
:init (setq sane-term-shell-command "/usr/local/bin/bash") | |
:bind ("M-t" . sane-term)) | |
(use-package scss-mode | |
:init (setq scss-compile-at-save nil) | |
(add-to-list 'auto-mode-alist '("\\.scss\\'" . scss-mode))) | |
(use-package smartparens | |
:init (smartparens-global-mode t) | |
(show-smartparens-global-mode t) | |
(require 'smartparens-config) | |
(sp-with-modes '(elixir-mode) | |
(sp-local-pair "fn" "end" | |
:when '(("SPC" "RET")) | |
:actions '(insert navigate)) | |
(sp-local-pair "do" "end" | |
:when '(("SPC" "RET")) | |
:post-handlers '(sp-ruby-def-post-handler) | |
:actions '(insert navigate)))) | |
(use-package web-mode | |
:init (setq web-mode-markup-indent-offset 2) | |
(setq web-mode-css-indent-offset 2) | |
(setq web-mode-code-indent-offset 2) | |
(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))) | |
(use-package whitespace-cleanup-mode | |
:init (global-whitespace-cleanup-mode t)) | |
(use-package flycheck-package | |
:init (eval-after-load 'flycheck | |
'(flycheck-package-setup))) | |
(use-package yaml-tomato) | |
(use-package inf-ruby) | |
(use-package elm-mode) | |
(use-package haml-mode | |
:init | |
(setq indent-tabs-mode nil)) | |
(use-package js2-mode | |
:init (progn | |
(setq-default js2-basic-offset 2) | |
(setq-default js-indent-level 2) | |
(setq-default js2-mode-indent-ignore-first-tab t) | |
(setq-default js2-show-parse-errors nil) | |
(setq-default js2-strict-inconsistent-return-warning nil) | |
(setq-default js2-strict-var-hides-function-arg-warning nil) | |
(setq-default js2-strict-missing-semi-warning nil) | |
(setq-default js2-strict-trailing-comma-warning nil) | |
(setq-default js2-strict-cond-assign-warning nil) | |
(setq-default js2-strict-var-redeclaration-warning nil) | |
(setq-default js2-global-externs | |
'("module" "require" "__dirname" "process" "console" "define" | |
"JSON" "$" "_" "Backbone" )))) | |
(global-set-key (kbd "C-c f y") (lambda () (interactive) (kill-new (expand-file-name (buffer-name) default-directory)))) | |
(set-face-attribute 'default nil :height 130) | |
(use-package dockerfile-mode | |
:config (add-to-list 'auto-mode-alist '("Dockerfile\\'" . dockerfile-mode))) | |
(use-package erlang) | |
(use-package prolog) | |
;;SCALA | |
(use-package ensime) | |
(use-package scala-mode | |
:interpreter | |
("scala" . scala-mode)) | |
(use-package sbt-mode | |
:commands sbt-start sbt-command | |
:config | |
;; WORKAROUND: https://github.com/ensime/emacs-sbt-mode/issues/31 | |
;; allows using SPACE when in the minibuffer | |
(substitute-key-definition | |
'minibuffer-complete-word | |
'self-insert-command | |
minibuffer-local-completion-map)) | |
;; END SCALA | |
(use-package jde-mode | |
:disabled t | |
:mode ("\\.java\\'" . jde-mode) | |
:load-path "site-lisp/jdee-2.4.1/lisp" | |
:init | |
(progn | |
(add-hook 'jde-mode-hook (lambda () (c-set-style "java"))) | |
(autoload 'jde-mode "jde" "jde mode" t) | |
(setq jde-bug-debugger-host-address "127.0.0.1") | |
(setq jde-bug-jre-home "/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home") | |
(setq jde-compile-option-debug (quote ("all" (t nil nil)))) | |
(setq jde-debugger (quote ("jdb"))) | |
(setq jde-global-classpath (split-string (or (getenv "CLASSPATH") "") ":")) | |
;(setq jde-jdk-doc-url "/usr/share/doc/openjdk-7-doc/html/api/index.html") | |
;(setq jde-jdk-registry (quote (("1.7.0" . "/usr/lib/jvm/java-7-openjdk-amd64/")))) | |
;(setq jde-jdk (quote ("1.7.0"))) | |
;(setq jde-regexp-jar-file "/usr/share/java/regexp.jar") | |
;(setq jde-sourcepath (quote ("."))) | |
)) | |
(use-package gradle-mode | |
:init | |
(add-to-list 'auto-mode-alist '("\\.gradle\\'" . gradle-mode))) | |
(use-package jsx-mode | |
:init | |
(progn | |
(add-to-list 'auto-mode-alist '("\\.jsx\\'" . jsx-mode)) | |
(autoload 'jsx-mode "jsx-mode" "JSX mode" t))) | |
(use-package eldoc | |
:ensure nil | |
:diminish eldoc-mode | |
:commands eldoc-mode) | |
(require 'io-mode) | |
(use-package arduino-mode | |
:init | |
(add-to-list 'auto-mode-alist '("\\.ino\\'" . gradle-mode))) | |
(add-hook 'scala-mode-hook | |
(lambda () | |
(show-paren-mode) | |
(smartparens-mode) | |
(yas-minor-mode) | |
(ensime-mode) | |
(scala-mode:goto-start-of-code))) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment