Last active
August 5, 2016 13:21
-
-
Save golbin/f1df0e5f94eec48b33a2 to your computer and use it in GitHub Desktop.
dotemacs
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) | |
(package-initialize) | |
(setq package-archives '(("marmalade" . "https://marmalade-repo.org/packages/") | |
("melpa" . "https://melpa.org/packages/"))) | |
(require 'helm) | |
(require 'helm-ag) | |
(require 'helm-projectile) | |
(require 'magit) | |
(require 'yasnippet) | |
(require 'clojure-mode) | |
(require 'neotree) | |
(require 'auto-complete) | |
(require 'web-mode) | |
(require 'php-mode) | |
(require 'ace-jump-mode) | |
(require 'js2-mode) | |
(require 'markdown-mode) | |
(require 'restclient) | |
(set-language-environment 'utf-8) | |
(prefer-coding-system 'utf-8) | |
(setq inhibit-startup-message t) | |
(setq make-backup-files nil) | |
(setq-default indent-tabs-mode nil) | |
(setq-default tab-width 4) | |
(setq tab-width 4) | |
(electric-pair-mode 1) | |
(setq mac-command-modifier 'meta) | |
(setq mac-option-modifier nil) | |
(add-hook 'before-save-hook 'delete-trailing-whitespace) | |
(setq projectile-switch-project-action 'neotree-projectile-action) | |
;; Custom shortcuts | |
(if window-system | |
(progn | |
(windmove-default-keybindings 'meta) | |
(global-set-key [(alt left)] 'windmove-left) | |
(global-set-key [(alt up)] 'windmove-up) | |
(global-set-key [(alt right)] 'windmove-right) | |
(global-set-key [(alt down)] 'windmove-down))) | |
(global-set-key [C-kanji] 'set-mark-command) | |
(global-set-key (kbd "C-/") 'comment-dwim) | |
(helm-mode 1) | |
(global-set-key [(meta x)] 'helm-M-x) | |
(global-set-key [(meta s)] 'helm-ag) | |
(global-set-key [(meta p)] 'backward-paragraph) | |
(global-set-key [(meta n)] 'forward-paragraph) | |
(global-set-key (kbd "C-M-h") 'query-replace-regexp) | |
(global-set-key (kbd "C-x C-x") 'neotree-toggle) | |
(global-set-key (kbd "C-x C-z") 'neotree-change-root) | |
(global-set-key (kbd "C-x C-b") 'switch-to-buffer) | |
(global-set-key (kbd "C-x C-f") 'helm-find-files) | |
(global-set-key (kbd "C-M-p") 'helm-projectile) | |
(global-set-key (kbd "C-M-f") 'helm-projectile-ag) | |
(global-set-key (kbd "C-c SPC") 'ace-jump-mode) | |
(global-set-key (kbd "C-c C-c SPC") 'ace-jump-line-mode) | |
(define-key web-mode-map (kbd "C-x C-e") 'php-send-region) | |
;; Themes | |
(require 'sublime-themes) | |
(load-theme 'brin t) | |
(custom-set-faces | |
'(default ((t (:family "Monaco"))))) | |
(menu-bar-mode -1) | |
(tool-bar-mode -1) | |
(scroll-bar-mode -1) | |
(setq initial-frame-alist '((width . 100) (height . 50))) | |
(setq default-frame-alist '((width . 100) (height . 50))) | |
(set-face-attribute 'default nil :background "black" :font "Consolas-11"); | |
(set-frame-parameter (selected-frame) 'alpha '(90 90)) | |
(add-to-list 'default-frame-alist '(alpha 90 90)) | |
(setq-default neo-smart-open t) | |
(setq neo-theme 'ascii) | |
(setq neo-window-width 25) | |
;; (setq neo-vc-integration '(face char)) | |
;; Projectile | |
(projectile-global-mode) | |
(setq projectile-indexing-method 'alien) | |
(setq projectile-enable-caching t) | |
(defun helm-projectile-ag () | |
(interactive) | |
(helm-ag (projectile-project-root))) | |
;; Utility | |
(defun join-lines (arg) | |
(interactive "p") | |
(end-of-line) | |
(delete-char 1) | |
(delete-horizontal-space) | |
(insert " ")) | |
(global-set-key (kbd "C-j") 'join-lines) | |
;; Auto complete | |
(global-auto-complete-mode t) | |
(setq ac-delay 0.2) | |
(setq ac-auto-show-menu 0.2) | |
;; For PHP | |
(defun my-setup-php () | |
;; enable web mode | |
(web-mode) | |
;; make these variables local | |
(make-local-variable 'web-mode-code-indent-offset) | |
(make-local-variable 'web-mode-markup-indent-offset) | |
(make-local-variable 'web-mode-css-indent-offset) | |
;; set indentation, can set different indentation level for different code type | |
(setq web-mode-code-indent-offset 4) | |
(setq web-mode-css-indent-offset 2) | |
(setq web-mode-markup-indent-offset 2)) | |
(add-to-list 'auto-mode-alist '("\\.php$" . my-setup-php)) | |
(setq web-mode-ac-sources-alist | |
'(("css" . (ac-source-words-in-buffer ac-source-css-property)) | |
("html" . (ac-source-words-in-buffer ac-source-abbrev)) | |
("php" . (ac-source-words-in-buffer | |
ac-source-words-in-same-mode-buffers | |
ac-source-dictionary)))) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment