Skip to content

Instantly share code, notes, and snippets.

@RadekMolenda
Created August 31, 2016 09:54
Show Gist options
  • Save RadekMolenda/bf5e5712be4e2f165d59372e69aad03e to your computer and use it in GitHub Desktop.
Save RadekMolenda/bf5e5712be4e2f165d59372e69aad03e to your computer and use it in GitHub Desktop.
(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