~/.emacs.d/init.el
;; use-package
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
(package-initialize)
(unless (package-installed-p 'use-package)
(package-install 'use-package))
(setq use-package-always-ensure t)
;; apariencia
(add-to-list 'default-frame-alist '(font . "IBM Plex Mono" ))
(set-face-attribute 'default t :font "IBM Plex Mono" )
(global-column-number-mode t)
(global-visual-line-mode t)
(global-display-line-numbers-mode t)
(global-which-function-mode t)
(add-hook 'prog-mode-hook 'column-enforce-mode)
(setq column-enforce-comments nil)
(setq column-enforce-column 80)
(custom-set-variables
'(custom-enabled-themes '(deeper-blue))
'(display-battery-mode t)
'(menu-bar-mode nil)
'(tool-bar-mode nil)
'(tool-bar-mode nil)
'(which-key-mode t)
'(which-function-mode t)
'(column-number-mode t)
'(display-line-numbers-mode t)
'(visual-line-mode t)
)
(defun toggle-theme ()
(interactive)
(if (eq (car custom-enabled-themes) 'leuven)
(disable-theme 'leuven)
(load-theme 'leuven)
))
(global-set-key [f5] 'toggle-theme)
(setq mouse-wheel-scroll-amount '(1 ((shift) . 1))) ;; one line at a time
(setq mouse-wheel-progressive-speed nil) ;; don't accelerate scrolling
(setq mouse-wheel-follow-mouse 't) ;; scroll window under mouse
(setq scroll-step 1) ;; keyboard scroll one line at a time
(global-set-key (kbd "") 'text-scale-increase)
(global-set-key (kbd "") 'text-scale-decrease)
(global-set-key (kbd "s-C-") 'shrink-window-horizontally)
(global-set-key (kbd "s-C-") 'enlarge-window-horizontally)
(global-set-key (kbd "s-C-") 'shrink-window)
(global-set-key (kbd "s-C-") 'enlarge-window)
(global-set-key "\C-xi" (lambda ()
(interactive)
(other-window -1)))
(add-to-list 'backup-directory-alist (cons ".*" "~/.emacs.d/backup-files-folder"))
(when (display-graphic-p)
(global-unset-key (kbd "C-z")))
(use-package company
:ensure t)
(use-package smartparens
:ensure t)
(use-package fill-column-indicator
:ensure t
:config
(setq fci-rule-column 160)
(setq fci-rule-use-dashes t))
(use-package yasnippet
:config
(yas-global-mode 1))
(add-hook 'prog-mode-hook 'yas-minor-mode)
(require 'openwith)
(openwith-mode t)
(setq openwith-associations '(("\.pdf\'" "atril" (file))))
(setq extempore-path "/home/c/fencamilo/extempore/")
(require 'web-mode)
(add-to-list 'auto-mode-alist '("\.phtml\'" . web-mode))
(add-to-list 'auto-mode-alist '("\.php\'" . web-mode))
(add-to-list 'auto-mode-alist '("\.tpl\.php\'" . web-mode))
(add-to-list 'auto-mode-alist '("\.[agj]sp\'" . web-mode))
(add-to-list 'auto-mode-alist '("\.as[cp]x\'" . web-mode))
(add-to-list 'auto-mode-alist '("\.erb\'" . web-mode))
(add-to-list 'auto-mode-alist '("\.mustache\'" . web-mode))
(add-to-list 'auto-mode-alist '("\.djhtml\'" . web-mode))
(add-to-list 'auto-mode-alist '("\.html?\'" . web-mode))
(defun my-web-mode-hook ()
"Hooks for Web mode."
(setq web-mode-markup-indent-offset 2)
(setq web-mode-css-indent-offset 2)
(setq web-mode-code-indent-offset 2)
)
(add-hook 'web-mode-hook 'my-web-mode-hook)
;;(setq org-agenda-files '("~/.agenda.org"))
(setq org-todo-keywords
'((sequence "TODO" "STARTED" "|" "DONE")
(sequence "REPORT" "BUG" "KNOWNCAUSE" "|" "FIXED")
(sequence "|" "CANCELED")))
(setq org-todo-keyword-faces
'(("TODO" . org-warning) ("STARTED" . "yellow")
("CANCELED" . (:foreground "blue" :weight bold))))
;; indentar dentro de bloques
(setq org-src-tab-acts-natively t)
;; orgmode-cosas
;;(define-key org-mode-map "\M-q" 'toggle-truncate-lines)
;;(define-key org-mode-map "\M-q" 'org-fill-paragraph)
(add-hook 'org-mode-hook #'toggle-truncate-lines)
(add-hook 'org-mode-hook #'toggle-word-wrap)
;;(add-hook 'prog-mode-hook 'rainbow-blocks-mode)
(add-hook 'prog-mode-hook 'turn-on-smartparens-mode)
(add-hook 'after-init-hook 'global-company-mode)
(global-set-key (kbd "M-c") 'company-complete)
(setq package-install-upgrade-built-in t)
(defun reloadconf
(interactive)
(load-file "~/.emacs.d/init.el")
)