|
|
- #+STARTUP: overview
- #+PROPERTY: header-args :comments yes :results silent
- * Font Inconsolata
- #+BEGIN_SRC emacs-lisp
- (set-default-font "Inconsolata-12")
- #+END_SRC
- * Define Default packages
- #+BEGIN_SRC emacs-lisp
- (defvar abedra/packages '(ac-slime
- auto-complete
- autopair
- cider
- clojure-mode
- elpy
- f
- feature-mode
- flycheck
- graphviz-dot-mode
- htmlize
- magit
- markdown-mode
- org
- paredit
- powerline
- rvm
- smex
- solarized-theme
- web-mode
- writegood-mode
- yaml-mode)
- "Default packages")
- #+END_SRC
- * Install Default packages
- #+BEGIN_SRC emacs-lisp
- (defun abedra/packages-installed-p ()
- (cl-loop for pkg in abedra/packages
- when (not (package-installed-p pkg)) do (cl-return nil)
- finally (cl-return t)))
-
- (unless (abedra/packages-installed-p)
- (message "%s" "Refreshing package database...")
- (package-refresh-contents)
- (dolist (pkg abedra/packages)
- (when (not (package-installed-p pkg))
- (package-install pkg))))
- #+END_SRC
- * Backup files
- #+BEGIN_SRC emacs-lisp
- (setq make-backup-files nil)
- #+END_SRC
- * Yes and No
- #+BEGIN_SRC emacs-lisp
- (defalias 'yes-or-no-p 'y-or-n-p)
- #+END_SRC
- * Misc
- #+BEGIN_SRC emacs-lisp
- (setq echo-keystrokes 0.1
- use-dialog-box nil
- visible-bell t)
- (show-paren-mode t)
- #+END_SRC
- * repos
- #+BEGIN_SRC emacs-lisp
- (add-to-list 'package-archives '("org" . "https://orgmode.org/elpa/") t)
- #+END_SRC
- * Reveal.js
- #+BEGIN_SRC emacs-lisp :tangle no
- (use-package org-reveal
- :ensure t
- :config
-
- (setq org-reveal-root "http://cdn.jsdelivr.net/reveal.js/3.0.0/")
- (setq org-reveal-mathjax t)
- )
- (use-package htmlize
- :ensure t)
- #+END_SRC
-
- #+RESULTS:
-
- * Better Shell
- #+BEGIN_SRC emacs-lisp :tangle no
- (use-package better-shell
- :ensure t
- :bind (("C-\"" . better-shell-shell)
- ("C-:" . better-shell-remote-open)))
- #+END_SRC
-
- * c++
- #+BEGIN_SRC emacs-lisp
- (use-package ggtags
- :ensure t
- :config
- (add-hook 'c-mode-common-hook
- (lambda ()
- (when (derived-mode-p 'c-mode 'c++-mode 'java-mode)
- (ggtags-mode 1))))
- )
- #+END_SRC
-
-
- * Orgmode
- #+BEGIN_SRC emacs-lisp
- (global-set-key "\C-ca" 'org-agenda)
- (global-set-key "\C-cc" 'org-capture)
- ;;(add-hook 'after-init-hook 'org-agenda-list)
- ;;(delete-other-windows)
- (add-to-list 'org-modules "org-habit")
- (require 'org)
- (require 'org-install)
- (require 'org-habit)
- (add-to-list 'org-modules "org-habit")
- (setq org-habit-preceding-days 7
- org-habit-following-days 1
- org-habit-graph-column 50
- org-habit-show-habits-only-for-today t
- org-habit-show-all-today t
- )
-
- ;; ORG REVEAL
- ;(use-package org-reveal
- ;:ensure t
- ;(setq org-reveal-root "https://cdn.jsdelivr.net/npm/reveal.js")
- ;; DOCUMENTS MINTED
- ;(require 'ox-latex)
- ;(add-to-list 'org-latex-packages-alist '("" "minted"))
- ;(setq org-latex-listings 'minted)
- ;(require 'org-latex)
- ;(setq org-export-latex-listings 'minted)
- ;(add-to-list 'org-export-latex-packages-alist '("" "minted"))
- ;; Minted
- ; (require 'ox-latex)
- ; (setq org-latex-listings 'minted)
- ;(setq org-latex-pdf-process
- ; '("pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f"
- ; "bibtex $(basename %b)"
- ; "pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f"
- ; "pdflatex -shell-escape -interaction nonstopmode -output-directory %o %f"))
- ;; Babel src evaluator
- ;(setq debug-on-error t)
- ;(org-babel-do-load-languages
- ;'org-babel-load-languages
- ;'((python . t)))
-
- ;; Custom colors for the keywords
- (setq org-todo-keywords
- '((sequence "TODO(t)" "NEXT(n)" "|" "DONE(d)")
- (sequence "WAITING(w@/!)" "INACTIVE(i)" "|" "CANCELLED(c@/!)" "MEETING")
- (sequence "LEARN(l)" "REVISE(r)" "|" "PASSED(p!)")))
- (setq org-todo-keyword-faces
- '(("TODO" :foreground "red" :background "gold" :weight bold)
- ("NEXT" :foreground "DodgerBlue" :background "LightCyan" :weight bold)
- ("DONE" :foreground "forest green" :background "MediumSpringGreen" :weight bold)
- ("WAITING" :foreground "orange" :background "LightGoldenrodYellow" :weight bold)
- ("INACTIVE" :foreground "magenta" :background "violet" :weight bold)
- ("CANCELLED" :foreground "forest green" :background "LimeGreen" :weight bold)
- ("MEETING" :foreground "forest green" :background "PaleGreen" :weight bold)
- ("LEARN" :foreground "yellow1" :background "red2" :weight bold)
- ("REVISE" :foreground "RosyBrown1" :background "OrangeRed2" :weight bold)
- ("PASSED" :foreground "green yellow" :background "forest green" :weight bold)
- ))
- ;; Auto-update tags whenever the state is changed
- (setq org-todo-state-tags-triggers
- '(("CANCELLED" ("CANCELLED" . t))
- ("WAITING" ("WAITING" . t))
- ("INACTIVE" ("WAITING") ("INACTIVE" . t))
- (done ("WAITING") ("INACTIVE"))
- ("TODO" ("WAITING") ("CANCELLED") ("INACTIVE"))
- ("NEXT" ("WAITING") ("CANCELLED") ("INACTIVE"))
- ("DONE" ("WAITING") ("CANCELLED") ("INACTIVE"))))
-
-
-
-
-
-
- (setq org-agenda-files (list "~/Documents/org/todo.org"
- "~/Documents/org/i.org"
- "~/Documents/org/habits.org"
- "~/Documents/org/links.org"
- "~/Documents/org/school.org"
- "~/Documents/org/ideas.org"))
-
- (setq org-agenda-start-on-weekday 1)
-
- (setq org-agenda-custom-commands
- '(("h" "Daily habits"
- ((agenda ""))
- ((org-agenda-show-log t)
- (org-agenda-ndays 7)
- (org-agenda-log-mode-items '(state))
- (org-agenda-skip-function '(org-agenda-skip-entry-if 'notregexp ":DAILY:"))))
- ;; other commands here
- ))
-
- (setq org-capture-templates
- '(("a" "Appointment" entry (file "~/Documents/org/i.org" )
- "* %^{Appointment:}%?\n\n%^T\n\n:PROPERTIES:\n\n:END:\n\n")
- ("l" "Link" entry (file+headline "~/Documents/org/links.org" "Links")
- "* %? %^L %^g \n%T" :prepend t)
- ("b" "Blog idea" entry (file+headline "~/Documents/org/i.org" "Blog Topics:")
- "* %?\n%T" :prepend t)
-
- ("t" "To Do Item" entry (file+headline "~/Documents/org/todo.org" "To Do")
- "* TODO %^{TODO:}\nSCHEDULED: %^t\nPROPERTIES:\n:CREATED: %u\n:END:\n\n" )
- ("m" "Meeting" entry (file "~/Documents/org/i.org")
- "* MEETING with %? :MEETING:\n%t" :clock-in t :clock-resume t)
- ("i" "Idea" entry (file+headline "~/Documents/org/ideas.org" "IDEA")
- "* INACTIVE %? :IDEA:\n")
-
- ("n" "Note" entry (file+headline "~/Documents/org/i.org" "Note space")
- "* %?\n%u" :prepend t)
- ("j" "Journal" entry (file+datetree "~/Documents/org/journal.org")
- "* %?\nEntered on %U\n %i\n %a")
- ("s" "Screencast" entry (file "~/Documents/org/screencastnotes.org")
- "* %?\n%i\n")
-
-
- ;; School templates
- ("T" "Test" entry (file+headline "~/Documents/org/school.org" "Testy")
- "* LEARN [#A] %^{Test:}%?\n\tDEADLINE: %^t\n:PROPERTIES:\n:CREATED: %U\n:END:\n\n" :empty-lines 1)
- )) ;; end
-
- (setq org-log-done 'time)
-
-
- #+END_SRC
- * Themes and modeline
- #+BEGIN_SRC emacs-lisp
- (use-package moe-theme
- :ensure t)
- (load-theme 'moe-dark t)
- #+END_SRC
- * Htmlize
- #+BEGIN_SRC emacs-lisp
- (use-package htmlize
- :ensure t)
- #+END_SRC
-
- * yasnippet
- #+BEGIN_SRC emacs-lisp
- ;(global-set-key "\C-i" 'yas-expand)
- (setq yas-trigger-key "TAB")
- (setq yas-triggers-in-field t)
-
- ;;; use popup menu for yas-choose-value
-
-
- ;; trigger using TAB and disable auto-start
- ;(custom-set-variables
- ; '(ac-trigger-key "TAB")
- ; '(ac-auto-start nil)
- ; '(ac-use-menu-map t))
- ;(define-key ac-menu-map (kbd "<tab>") nil)
- ;(define-key ac-menu-map (kbd "<S-tab>") nil)
-
-
-
-
- (use-package validate
- :ensure t)
-
- (defmacro validate-setq (&rest svs)
- "Like `setq', but throw an error if validation fails.
- VALUE is validated against SYMBOL's custom type.
- \(fn [SYM VAL] ...)"
- (let ((out))
- (while svs
- (let ((symbol (pop svs))
- (value (if (not svs)
- (error "`validate-setq' takes an even number of arguments")
- (pop svs))))
- (push `(if (boundp ',symbol)
- (setq ,symbol (validate-value ,value (custom-variable-type ',symbol)))
- (user-error "Trying to validate a variable that's not defined yet: `%s'.\nYou need to require the package before validating"
- ',symbol))
- out)))
- `(progn ,@(reverse out))))
-
- (use-package yasnippet
- :ensure t
- :diminish yas-minor-mode
- :init (yas-global-mode t))
- ;; Autocomplete
-
-
-
- ;; Code-comprehension server
-
- (defun check-expansion ()
- (save-excursion
- (if (looking-at "\\_>") t
- (backward-char 1)
- (if (looking-at "\\.") t
- (backward-char 1)
- (if (looking-at "->") t nil)))))
-
- (defun do-yas-expand ()
- (let ((yas/fallback-behavior 'return-nil))
- (yas/expand)))
-
- (defun tab-indent-or-complete ()
- (interactive)
- (if (minibufferp)
- (minibuffer-complete)
- (if (or (not yas/minor-mode)
- (null (do-yas-expand)))
- (if (check-expansion)
- (company-complete-common)
- (indent-for-tab-command)))))
-
- (global-set-key [tab] 'tab-indent-or-complete)
- (use-package yasnippet-snippets
- :ensure t)
- #+END_SRC
- * Multiple cursors
- #+BEGIN_SRC emacs-lisp
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- ;; multiple cursors ;;
- ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
- (use-package multiple-cursors
- :ensure t)
- (global-set-key (kbd "C-c m c") 'mc/edit-lines)
- #+END_SRC
|