美文网首页
我的2020-03-27最新版 init.el 配置

我的2020-03-27最新版 init.el 配置

作者: wlianfu | 来源:发表于2020-03-27 01:10 被阅读0次
;; 官方源
;;(setq package-archives '(("gnu" . "https://elpa.gnu.org/packages/")
;;           ("melpa" . "https://melpa.org/packages/")))

;; Emacs China 源
;;(setq package-archives '(("gnu"   . "http://elpa.emacs-china.org/gnu/")
;;           ("melpa" . "http://elpa.emacs-china.org/melpa/")))
;; 腾讯源
(setq package-archives '(("gnu"   . "http://mirrors.cloud.tencent.com/elpa/gnu/")
                         ("melpa" . "http://mirrors.cloud.tencent.com/elpa/melpa/")))
;; 网易源
;; 清华源
;;(setq package-archives '(("gnu"   . "http://mirrors.tuna.tsinghua.edu.cn/elpa/gnu/")
;;                         ("melpa" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/melpa/")))

(package-initialize)
(package-refresh-contents)

(require 'helm)
(require 'helm-config)
(setq helm-autoresize-min-height 10)
(setq helm-autoresize-max-height 10)
;; (helm-autoresize-mode 1)
(helm-mode 1)

;; 使用 helm-projectile
(require 'helm-projectile)
(helm-projectile-on)
;; 使用 yasnippet
(require 'yasnippet)
(yas-global-mode 1)
(require 'ivy)
(ivy-mode 1)
(setq ivy-use-virtual-buffers t)
(setq enable-recursive-minibuffers t)


;; 更改显示字体大小
;; (set-frame-font "Helvetica" t t)
;; (set-frame-font "Monokai")
;; (set-frame-font "Open Sans")
(set-frame-font "Monaco")
(set-face-attribute 'default nil
            :height 140
            :weight 'normal
            :width 'normal)

;; 设置默认屏幕宽高
(add-to-list 'default-frame-alist '(height . 50))
(add-to-list 'default-frame-alist '(width . 130))
(add-to-list 'default-frame-alist '(left . 60))

;; 关闭自动生产备份文件
(setq make-backup-files nil)
;; 显示行号
(global-linum-mode t)
;; 关闭工具栏
(tool-bar-mode -1)
;; 关闭滚动轴
(scroll-bar-mode -1)
;; 关闭启动帮助画面
(setq inhibit-splash-screen -1)
;; 关闭菜单栏
(menu-bar-mode -1)
;; 状态栏显示行列信息
(column-number-mode t)
;; 自动补全括号
(electric-pair-mode t)
;; 关闭起动时闪屏
(setq inhibit-startup-message t)
(setq-default show-trailing-whitespace t)
;; 设置光标样式
;; (setq-default cursor-type 'bar)
;; (setq evil-hybrid-state-cursor '("yellow" box))
(set-cursor-color "#d500f9")
(blink-cursor-mode 0)
;; 编辑时禁用触摸板与鼠标
;; 需要安装plugin: disable-mouse
(global-disable-mouse-mode t)
;; 关闭自动保存文件
(setq auto-save-default nil)
;; 自动加载外部修改过的文件
(global-auto-revert-mode 1)
;; 设置编码
(set-language-environment "UTF-8")
;; 显示时间
(display-time-mode 1)
(setq display-time-24hr-format t)
(setq display-time-day-and-date t)
;; 自动将光标移动到新创建的窗口中
(require 'popwin)
(popwin-mode 1)
;; 高亮当前行
(global-hl-line-mode t)
;; 关闭警告提示音
(setq ring-bell-function 'ignore)


;; 删除换行符
(defun remove-dos-eol ()
  (interactive)
  (goto-char (point-min))
  (while (search-forward "\r" nil t) (replace-match "")))


;; 缩进
(setq indent-tabs-mode nil)
(setq c-basic-offset 2)
(setq default-tab-width 2)
(setq web-mode-markup-indent-offset 2)
(setq web-mode-code-indent-offset 2)
(setq web-mode-css-indent-offset 2)
(setq css-indent-offset 2)
(setq javascript-indent-level 2)
(setq js-indent-level 2)
(setq typescript-indent-level 2)
(setq ts-indent-level 2)
(setq tsx-indent-offset 2)
(setq rust-indent-unit 2)
(setq rust-indent-offset 2)


;; 添加最近打开的文件
(require 'recentf)
(recentf-mode 1)
(setq recentf-max-menu-item 10)
(setq recentf-max-saved-items 10)
(setq package-check-signature nil)


;; ------ 绑定全局快捷键 ------

(global-set-key (kbd "M-x") 'helm-M-x)
(global-set-key (kbd "C-x C-f") 'helm-find-files)

(global-set-key [f2] 'hs-toggle-hiding)
(global-set-key (kbd "<f5>") 'eshell)
(global-set-key (kbd "<f7>") 'treemacs)
(global-set-key (kbd "<f8>") 'neotree-toggle)
(global-set-key (kbd "<f9>") 'evil-mode)

;; ------ 绑定全局快捷键 ------


;; ------ 代码补全 ------

;; auto-complete 模式
(ac-config-default)
(setq ac-use-menu-map t)
(define-key ac-menu-map "\C-n" 'ac-next)
(define-key ac-menu-map "\C-p" 'ac-previous)

;; company 模式
;; (add-hook 'after-init-hook 'global-company-mode)

;; ------ 代码补全 ------

;; 开启全局 company 补全
;; 使用下面的配置来在 Company-mode 中使用 C-n 与 C-p 来选择补全项
(with-eval-after-load 'company
  (define-key company-active-map (kbd "M-n") nil)
  (define-key company-active-map (kbd "M-p") nil)
  (define-key company-active-map (kbd "C-n") #'company-select-next)
  (define-key company-active-map (kbd "C-p") #'company-select-previous))

;; ------ 设置 web-mode -------

(require 'web-mode)
(add-to-list 'auto-mode-alist '("\\.html?\\'" . web-mode))
(add-to-list 'auto-mode-alist '("\\.jsx?$" . web-mode))
(add-to-list 'auto-mode-alist '("\\.tsx\\'" . rjsx-mode))

;; ------ 设置 web-mode ------


;; ------ 设置编码 UTF-8 ------

;; 设置emacs 使用 utf-8
(setq locale-coding-system 'utf-8)
;; 设置键盘输入时的字符编码
(set-keyboard-coding-system 'utf-8)
(set-selection-coding-system 'utf-8)
;; 文件默认保存为 utf-8
(set-buffer-file-coding-system 'utf-8)
(set-default buffer-file-coding-system 'utf8)
(set-default-coding-systems 'utf-8)
;; 解决粘贴中文出现乱码的问题
(set-clipboard-coding-system 'utf-8)
;; 终端中文乱码
(set-terminal-coding-system 'utf-8)
(modify-coding-system-alist 'process "*" 'utf-8)
(setq default-process-coding-system '(utf-8 . utf-8))
;; 解决文件目录的中文名乱码
(setq-default pathname-coding-system 'utf-8)
(set-file-name-coding-system 'utf-8)

;; ------ 设置编码 UTF-8 ------


;; 解决 eshell 乱码问题
;; (autoload 'ansi-color-for-comint-mode-on "ansi-color" nil t)
;; (add-hook 'shell-mode-hook 'ansi-color-for-comint-mode-on)


;; ------ 设置主题 ------

;; (load-theme 'dracula t)
;; (load-theme 'monokai t)
;; (load-theme 'spacemacs-dark t)
(load-theme 'spacemacs-light t)
;; (load-theme 'solarized t)
;; (load-theme 'zenburn t)
;; ------ 设置主题 ------


;; 以下是插件自动生成的内容

(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.
 '(ansi-color-names-vector
   ["#0a0814" "#f2241f" "#67b11d" "#b1951d" "#4f97d7" "#a31db1" "#28def0" "#b2b2b2"])
 '(ansi-term-color-vector
   [unspecified "#1F1611" "#660000" "#144212" "#EFC232" "#5798AE" "#BE73FD" "#93C1BC" "#E6E1DC"])
 '(custom-safe-themes
   (quote
    ("c433c87bd4b64b8ba9890e8ed64597ea0f8eb0396f4c9a9e01bd20a04d15d358" "76c5b2592c62f6b48923c00f97f74bcb7ddb741618283bdb2be35f3c0e1030e3" default)))
 '(fci-rule-character-color "#452E2E")
 '(hl-todo-keyword-faces
   (quote
    (("TODO" . "#dc752f")
     ("NEXT" . "#dc752f")
     ("THEM" . "#2d9574")
     ("PROG" . "#4f97d7")
     ("OKAY" . "#4f97d7")
     ("DONT" . "#f2241f")
     ("FAIL" . "#f2241f")
     ("DONE" . "#86dc2f")
     ("NOTE" . "#b1951d")
     ("KLUDGE" . "#b1951d")
     ("HACK" . "#b1951d")
     ("TEMP" . "#b1951d")
     ("FIXME" . "#dc752f")
     ("XXX+" . "#dc752f")
     ("\\?\\?\\?+" . "#dc752f"))))
 '(package-selected-packages
   (quote
    (dashboard soft-stone-theme material-theme birds-of-paradise-plus-theme ubuntu-theme zenburn-theme solarized-theme spacemacs-theme counsel rjsx-mode js2-mode auto-complete helm-projectile tide popwin company web-mode yasnippet magit ivy treemacs neotree evil monokai-theme dracula-theme helm disable-mouse)))
 '(pdf-view-midnight-colors (quote ("#b2b2b2" . "#292b2e"))))
(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.
 )

相关文章

网友评论

      本文标题:我的2020-03-27最新版 init.el 配置

      本文链接:https://www.haomeiwen.com/subject/jarkuhtx.html