• emacs 配置


    哈希表基数:1021,模数:731201。

    考场简化版

    (tool-bar-mode 0)
    (menu-bar-mode 0)
    (global-linum-mode t)
    (show-paren-mode t)
    (ido-mode t)
    
    (global-set-key [f9] 'compile-file)
    (defun compile-file()
      (interactive)
      (compile (format "g++ -o %s %s -g -lm -Wall -std=c++98" (file-name-sans-extension (buffer-name)) (buffer-name)))
      )
    
    (global-set-key (kbd "C-s") 'save-buffer)
    (global-set-key (kbd "C-w") 'delete-window)
    (global-set-key (kbd "C-q") 'kill-buffer)
    (global-set-key (kbd "C-x C-s") 'isearch-forward)
    
    (global-set-key (kbd "C-x f") 'windmove-right)
    (global-set-key (kbd "C-x b") 'windmove-left)
    (global-set-key (kbd "C-x p") 'windmove-up)
    (global-set-key (kbd "C-x n") 'windmove-down)
    

    完整版
    
    ;; === 观感 === ;;
    
    ;; 不显示工具栏
    (tool-bar-mode 0)
    
    ;; 不显示菜单栏
    (menu-bar-mode 0)
    
    ;; 显示行号
    (global-linum-mode t)
    
    ;; 高亮匹配括号。
    (show-paren-mode t)
    (setq show-paren-style 'parenthesis)
    
    ;; 光标形状。'box = 框;'bar = 竖线。
    (setq-default cursor-type 'bar)
    
    ;; 优化页面滚动。
    (setq-default scroll-step 1 scroll-margin 0 scroll-conservatively 10000)
    
    ;; 透明度。
    (set-frame-parameter (selected-frame) 'alpha (list 92 72))
    (add-to-list 'default-frame-alist (cons 'alpha (list 92 72)))
    
    ;; 标题栏
    (setq frame-title-format "BruceW")
    
    ;;(doom-themes-treemacs-config)
    (setq doom-themes-treemacs-theme "doom-colors")
    
    ;; theme-changer
    (setq day-theme 'doom-acario-light)
    (setq dark-theme 'doom-dark+)
    (defun synchronize-theme ()
        (setq hour
            (string-to-number
                (substring (current-time-string) 11 13)))
        (if (member hour (number-sequence 6 17))
    		(progn
              (setq now day-theme)
    		      (setq lst dark-theme)
    		  )
          (setq now dark-theme)
    	  (setq lst day-theme)
    	  )
    	  (disable-theme lst)
        (load-theme now)
    )
    (run-with-timer 0 3600 'synchronize-theme)
    
    ;; neoemacs theme
    (setq neo-theme 'icons)
    
    
    
    ;; === 快捷键 === ;;
    
    ;; 一键编译.
    (global-set-key [f9] 'compile-file)
    (defun compile-file ()
      (interactive)
      (compile (format "g++ -o %s %s -g -lm -Wall -O2 -std=c++11"  (file-name-sans-extension (buffer-name))(buffer-name))))
    
    ;; Ctrl-h 替换。
    (global-set-key (kbd "C-h") 'query-replace)
    
    ;; Ctrl-w 删除当前 window
    (global-set-key (kbd "C-w") 'delete-window)
    
    ;; Ctrl-q 删除当前 buffer
    (global-set-key (kbd "C-q") 'kill-buffer)
    
    ;; Ctrl-s 保存
    (global-set-key (kbd "C-s") 'save-buffer)
    
    ;; Ctrl-x Ctrl-s 搜索
    (global-set-key (kbd "C-x C-s") 'isearch-forward)
    
    ;; Ctrl-z 撤销
    (global-set-key (kbd "C-z") 'undo)
    
    ;; Ctrl-d 删除当前行
    (global-set-key (kbd "C-d") 'kill-whole-line)
    
    ;; Ctrl-x Ctrl-a 全选
    ;;(global-set-key (kbd "C-x C-a") 'mark-whole-buffer)
    
    ;; 在 window 之间切换
    (global-set-key (kbd "C-x b")  'windmove-left)
    (global-set-key (kbd "C-x f") 'windmove-right)
    (global-set-key (kbd "C-x p")    'windmove-up)
    (global-set-key (kbd "C-x n")  'windmove-down)
    
    ;; 在 buffer 之间切换
    ;;(define-key key-translation-map (kbd "M-<left>") (kbd "C-x <left>"))
    ;;(define-key key-translation-map (kbd "M-<right>") (kbd "C-x <right>"))
    
    (define-key key-translation-map (kbd "M-p") (kbd "C-<up>"))
    (define-key key-translation-map (kbd "M-n") (kbd "C-<down>"))
    
    
    
    
    
    
    
    ;; === 编辑器 === ;;
    
    (add-to-list 'custom-theme-load-path (expand-file-name "~/.emacs.d/themes/"))
    
    ;; 默认编码环境为 UTF-8。
    (set-language-environment "UTF-8")
    (set-default-coding-systems 'utf-8)
    (prefer-coding-system 'utf-8)
    
    ;; 不显示欢迎页面。
    (setq-default inhibit-startup-screen t)
    
    ;; emacs 和系统的剪贴板共用。
    (setq-default x-select-enable-clipboard t)
    
    ;; 设置标题。
    (setq-default frame-title-format "%b - emacs")
    
    ;; 全选大文件的时候不会卡死。当然,如果你使用的是 fcitx,并且打开了剪贴板支持,在复制大文件的时候还是会卡死。你可以使用 emacs-terminal 来解决这个问题。
    (setq-default select-active-regions 'only)
    
    ;; 启用 cua-mode (C-x C-c C-v 分别代表剪切,复制,粘贴)。
    (cua-mode t)
    
    ;; 回答 yes/no 改成回答 y/n。
    (fset 'yes-or-no-p 'y-or-n-p)
    
    ;; 撤销记录扩大。
    (setq-default kill-ring-max 65535)
    
    ;; 设置备份文件时间间隔。这个单位是秒。
    (setq-default auto-save-timeout 30)
    
    ;; 自动重载文件。
    (global-auto-revert-mode t)
    
    ;; 优化文件树结构。
    (ido-mode t)
    
    ;; 语法高亮。
    (global-font-lock-mode t)
    
    ;; 换行的时候自动缩进
    (global-set-key (kbd "RET") 'newline-and-indent)
    
    ;; melpa 插件源
    (setq package-archives '(("gnu"   . "http://elpa.emacs-china.org/gnu/")
                               ("melpa" . "http://elpa.emacs-china.org/melpa/")))
    
    ;; 禁用 C-SPC, 防止与系统切换输入法快捷键冲突
    (global-set-key (kbd "C-SPC") nil)
    
    ;; turn on neotree
    (add-to-list 'load-path "/some/path/neotree")
    (require 'neotree)
    (global-set-key [f8] 'neotree-toggle)
    
    ;; auto-save
    (add-to-list 'load-path "~/.emacs.d/extensions");
    (require 'auto-save)
    (auto-save-enable)
    
    (setq auto-save-silent t)   ; quietly save
    (setq auto-save-delete-trailing-whitespace t)  ; automatically delete spaces at the end of the line when saving
    
    ;;; custom predicates if you don't want auto save.
    ;;; disable auto save mode when current filetype is an gpg file.
    (setq auto-save-disable-predicates
          '((lambda ()
          (string-suffix-p
          "gpg"
          (file-name-extension (buffer-name)) t))))
    
    
    ;; === C++ IDE === ;;
    
    ;; C++ 代码缩进单位长度。
    (setq-default c-basic-offset 2)
    
    ;; 使用 tab 缩进。
    (setq-default indent-tabs-mode nil)
    
    ;; tab 的长度。务必和缩进长度一致。
    (setq-default default-tab-width 2)
    (setq-default tab-width 2)
    
    
    
    
    
    ;; === org-mode === ;;
    
    ;; org-mode 自动换行
    (add-hook 'org-mode-hook (lambda () (setq truncate-lines nil)))
    
    
    ;; open URL by chrome in default
    (setq browse-url-browser-function 'browse-url-chrome)
    
    ;; set hot keys
    (global-set-key (kbd "C-c l") 'org-store-link)
    (global-set-key (kbd "C-c a") 'org-agenda)
    (global-set-key (kbd "C-c c") 'org-capture)
    
    ;; set org-indent-mode
    (setq org-startup-indented t)
    
    
    (setq org-startup-children t)
    
  • 相关阅读:
    判断当天是周几
    九九乘法表
    js创建table表格
    tab切换-自动、点击、内容变换
    必须关注的25位知名JavaScript开发者
    静态路由
    dubbo
    SOA、SOAP、RPC
    【转】spring之任务调度
    Redis-cli命令最新总结【转】
  • 原文地址:https://www.cnblogs.com/BruceW/p/11864752.html
Copyright © 2020-2023  润新知