Skip to content

Commit 1e6219b

Browse files
Added customizations form v1
1 parent beaed8e commit 1e6219b

File tree

5 files changed

+204
-14
lines changed

5 files changed

+204
-14
lines changed

custom.el

+42
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
(setq tab-width 2)
2+
3+
;; Get rid of the annoying 4 space default for sh mode
4+
(defun setup-sh-mode ()
5+
(setq sh-basic-offset 2
6+
sh-indentation 2
7+
sh-indent-for-case-label 0
8+
sh-indent-for-case-alt '+)
9+
)
10+
(add-hook 'sh-mode-hook 'setup-sh-mode)
11+
12+
(color-theme-select)
13+
(color-theme-dark-laptop)
14+
15+
(add-hook 'before-save-hook 'delete-trailing-whitespace)
16+
17+
;; Set file name in title
18+
(setq frame-title-format "%f - emacs")
19+
20+
;; Font size
21+
(set-face-attribute 'default nil :height 110)
22+
23+
24+
(defun duplicate-current-line-or-region (arg)
25+
"Duplicates the current line or region ARG times.
26+
If there's no region, the current line will be duplicated. However, if
27+
there's a region, all lines that region covers will be duplicated."
28+
(interactive "p")
29+
(let (beg end (origin (point)))
30+
(if (and mark-active (> (point) (mark)))
31+
(exchange-point-and-mark))
32+
(setq beg (line-beginning-position))
33+
(if mark-active
34+
(exchange-point-and-mark))
35+
(setq end (line-end-position))
36+
(let ((region (buffer-substring-no-properties beg end)))
37+
(dotimes (i arg)
38+
(goto-char end)
39+
(newline)
40+
(insert region)
41+
(setq end (point)))
42+
(goto-char (+ origin (* (length region) arg) arg)))))

functions.el

+102
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
(defun comment-uncomment-line-or-region (&optional arg)
2+
"comments or uncomments a line according to state before.
3+
With key pressed, continues with next line.
4+
With arg copies and reinserts last line."
5+
(interactive "*P")
6+
(comment-normalize-vars)
7+
(let* ((arg (if arg (prefix-numeric-value arg) 0))
8+
(start (if (and mark-active transient-mark-mode)
9+
(region-beginning)
10+
(line-beginning-position)))
11+
(end (if (and mark-active transient-mark-mode)
12+
(region-end)
13+
(line-end-position)))
14+
(line-to-comment-or-uncomment (buffer-substring-no-properties
15+
(or
16+
start (line-beginning-position))
17+
(or end
18+
(line-end-position)))))
19+
(cond ((eq 1 arg) ;; comment and reinsert
20+
(comment-or-uncomment-region start end)
21+
(indent-according-to-mode)
22+
(end-of-line)
23+
(newline)
24+
(insert line-to-comment-or-uncomment)
25+
(indent-according-to-mode))
26+
((< 1 arg) ;; comment as many lines are given
27+
(while (<= 1 (prefix-numeric-value arg))
28+
(comment-or-uncomment-region (line-beginning-position)
29+
(line-end-position))
30+
(indent-according-to-mode)
31+
(end-of-line)
32+
(forward-line 1)
33+
;; (indent-according-to-mode)
34+
(setq arg (1- arg))))
35+
((and start end)
36+
(comment-or-uncomment-region start end)
37+
(indent-according-to-mode)
38+
(if (eobp)
39+
(progn (newline)
40+
(indent-according-to-mode))
41+
(progn
42+
(forward-line 1)
43+
(indent-according-to-mode))))
44+
(t ;; just one line
45+
(progn (comment-or-uncomment-region (line-beginning-position)
46+
(line-end-position))
47+
(indent-according-to-mode)
48+
(if (eobp)
49+
(progn (newline)
50+
(indent-according-to-mode))
51+
(progn
52+
(forward-line 1)
53+
(indent-according-to-mode))))))))
54+
55+
(provide 'comment-uncomment-line-or-region)
56+
;;; comment-uncomment-line-or-region.el ends here
57+
58+
59+
(defun move-text-internal (arg)
60+
(cond
61+
((and mark-active transient-mark-mode)
62+
(if (> (point) (mark))
63+
(exchange-point-and-mark))
64+
(let ((column (current-column))
65+
(text (delete-and-extract-region (point) (mark))))
66+
(forward-line arg)
67+
(move-to-column column t)
68+
(set-mark (point))
69+
(insert text)
70+
(exchange-point-and-mark)
71+
(setq deactivate-mark nil)))
72+
(t
73+
(beginning-of-line)
74+
(when (or (> arg 0) (not (bobp)))
75+
(forward-line)
76+
(when (or (< arg 0) (not (eobp)))
77+
(transpose-lines arg))
78+
(forward-line -1)))))
79+
(defun move-text-down (arg)
80+
"Move region (transient-mark-mode active) or current line
81+
arg lines down."
82+
(interactive "*p")
83+
(move-text-internal arg))
84+
(defun move-text-up (arg)
85+
"Move region (transient-mark-mode active) or current line
86+
arg lines up."
87+
(interactive "*p")
88+
(move-text-internal (- arg)))
89+
90+
;; function for transparency
91+
;;(set-frame-parameter (selected-frame) 'alpha '(<active> [<inactive>]))
92+
(set-frame-parameter (selected-frame) 'alpha '(85 50))
93+
(add-to-list 'default-frame-alist '(alpha 85 50))
94+
(eval-when-compile (require 'cl))
95+
(defun toggle-transparency ()
96+
(interactive)
97+
(if (/=
98+
(cadr (frame-parameter nil 'alpha))
99+
100)
100+
(set-frame-parameter nil 'alpha '(85 85))
101+
(set-frame-parameter nil 'alpha '(85 50))))
102+

init.el

+47-14
Original file line numberDiff line numberDiff line change
@@ -7,25 +7,58 @@
77
(when (not package-archive-contents)
88
(package-refesh-contents))
99

10-
(defvar my-packages '(js2-mode
11-
ruby-mode
12-
feature-mode
10+
(defvar my-packages '(js2-mode
11+
ruby-mode
12+
feature-mode
1313
ghc
14-
;; egg
15-
;; html-mode
16-
;; one-key
17-
php-mode
18-
;; rhtml TODO
19-
;; rinari TODO
20-
;; ruby-test-mode TODO
21-
rvm
22-
sass-mode
23-
wrap-region
24-
yasnippet
14+
;; egg
15+
;; html-mode
16+
;; one-key
17+
php-mode
18+
;; rhtml TODO
19+
;; rinari TODO
20+
;; ruby-test-mode TODO
21+
rvm
22+
sass-mode
23+
wrap-region
24+
yasnippet
25+
color-theme
2526
;; yasnippets-rails TODO
2627
zencoding-mode)
2728
"A list of packages to ensure are installed at launch.")
2829

2930
(dolist (p my-packages)
3031
(when (not (package-installed-p p))
3132
(package-install p)))
33+
34+
;; (require 'ido)
35+
(setq ido-enable-flex-matching t)
36+
(setq ido-everywhere t)
37+
(ido-mode 1)
38+
39+
;; Remove the menu and tool bar's
40+
(menu-bar-mode -1)
41+
(tool-bar-mode -1)
42+
(toggle-scroll-bar -1)
43+
44+
;; Enable copy to X-clipboard
45+
(setq x-select-enable-clipboard t)
46+
47+
;; Questions as y/n rather than yes/no
48+
(fset 'yes-or-no-p 'y-or-n-p)
49+
50+
;; syntax highlighting by default
51+
(global-font-lock-mode 1)
52+
53+
;; match braces
54+
(show-paren-mode 1)
55+
56+
;; remove splash
57+
(setq inhibit-splash-screen t)
58+
59+
;; Remove the comment about encoding in ruby mode
60+
(setq ruby-insert-encoding-magic-comment nil)
61+
62+
(load-file "~/.emacs.d/functions.el")
63+
(load-file "~/.emacs.d/custom.el")
64+
(load-file "~/.emacs.d/key-bindings.el")

key-bindings.el

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
(windmove-default-keybindings) ;; Shift + Arrow keys for moving across windows
2+
3+
(global-set-key [\M-\S-up] 'move-text-up)
4+
(global-set-key [\M-\S-down] 'move-text-down)
5+
6+
(global-set-key (kbd "C-/") 'comment-uncomment-line-or-region)
7+
(global-set-key (kbd "C-c r") 'revert-buffer)
8+
(global-set-key (kbd "C-c d") 'duplicate-current-line-or-region)
9+
(global-set-key (kbd "C-c +") 'toggle-transparency)

lib.el

+4
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
(defun load-package (package-name)
2+
"loads a package from conf-packages"
3+
(load-file (concat "~/.emacs.d/conf-packages/" package-name ".el"))
4+
)

0 commit comments

Comments
 (0)