java环境卡顿_解决Emacs在windows使用的问题,比如环境设置、卡顿……

发现Emacs下编辑代码时非常卡顿,环境设置也不方便,百度了一通,集合一些设置如下,发现这个神器真的是很爽,秒杀一众IDE

一、建一个bat文件设置启动变量

windows下,环境设置可以自己写一个bat文件,命名比如runemacs.bat,我主要用它编辑java和python文件,设置如下:

21c763eecff6

二、windows下的卡顿问题

因为英文版的windows下,这emacs运行飞快,猜测是字库问题引起的缓慢,在emacs文件中设置下缓存限制和字体,果然不再卡顿~

一是设置字体最大缓存

21c763eecff6

二是设置好中英文字体

21c763eecff6

设置完后就飞快了。。

三、编辑java项目的一些配置

我使用的是meghanada来装逼,有些折腾……感觉还是老老实实用idea效率高些。meghanada需要的插件可以自行上github上下载直接放进去即可。。附我的配置文件

;;;

;;; Buffer fontification

;;;

(global-font-lock-mode t)              ; fontify all buffers

(setq font-lock-maximum-size 5000000)  ; Set 5Mb file size limit for fontification

(setq visible-bell t)                  ; flash not beep

(setq transient-mark-mode t)            ; Enable highlighting of active marked region

(setq blink-matching-paren-distance 500000) ;maximum distance to search for paren

(setq line-number-display-limit nil)    ; Show line count for big files

(column-number-mode 1)                  ; Show current column number

(setq fill-column 80)                  ; line wrap column

(setq default-buffer-file-coding-system 'utf-8)      ;默认buffer编码是utf-8,(新文件)

(prefer-coding-system 'utf-8)  ;指定文件编码优先,此时buffer新建和读取都默认是utf-8,也可以M-x prefer-coding-system 只执行一次

;;java mode加载插件)

(require 'linum)

(global-linum-mode t) ;;line num

(setq-default auto-save-timeout 15) ; 15秒无动作,自动保存

(setq-default auto-save-interval 100) ; 100个字符间隔, 自动保存

(setq

backup-by-copying t ; 自动备份

backup-directory-alist

'(("." . "~/.em_backup")) ; 自动备份在目录"~/.em_backup"下

delete-old-versions t ; 自动删除旧的备份文件

kept-new-versions 3 ; 保留最近的3个备份文件

kept-old-versions 1 ; 保留最早的1个备份文件

version-control t) ; 多次备份

(add-to-list 'load-path "~/site-lisp/dash")

(add-to-list 'load-path "~/site-lisp/color-theme")

(add-to-list 'load-path "~/site-lisp/meghanada")

(add-to-list 'load-path "~/site-lisp/company")

(add-to-list 'load-path "~/site-lisp/flycheck")

(add-to-list 'load-path "~/site-lisp/yasnippet")

(add-to-list 'load-path "~/site-lisp/use-package")

;;;Color Theme

(require 'color-theme)

(color-theme-initialize)

(color-theme-gnome2)

;;设置字体

(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.

'(default ((t (:family "Courier New" :foundry "outline" :slant normal :weight normal :height 120 :width normal)))))

;; Setting Chinese Font

(dolist (charset '(kana han symbol cjk-misc bopomofo))

(set-fontset-font (frame-parameter nil 'font)

charset

(font-spec :family "Microsoft Yahei" :size 16)))

;;设置package

;;(require 'package)

;;(let* ((no-ssl (and (memq system-type '(windows-nt ms-dos))

;;                    (not (gnutls-available-p))))

;;      (proto (if no-ssl "http" "https")))

;;  (add-to-list 'package-archives (cons "melpa" (concat proto "://melpa.org/packages/")) t)

;; Comment/uncomment this line to enable MELPA Stable if desired.  See `package-archive-priorities`

;; and `package-pinned-packages`. Most users will not need or want to do this.

;;(add-to-list 'package-archives (cons "melpa-stable" (concat proto "://stable.melpa.org/packages/")) t)

;;  )

;;(package-initialize)

;;设置java模式

(require 'yasnippet)

(yas-global-mode 1)

(require 'meghanada)

(add-hook 'java-mode-hook

(lambda ()

;; meghanada-mode on

(meghanada-mode t)

;; enable telemetry

(meghanada-telemetry-enable t)

(flycheck-mode +1)

(setq c-basic-offset 2)

;; use code format

(add-hook 'before-save-hook 'meghanada-code-beautify-before-save)))

(cond

((eq system-type 'windows-nt)

(setq meghanada-java-path (expand-file-name "bin/java.exe" (getenv "JAVA_HOME")))

(setq meghanada-maven-path "mvn.cmd"))

(t

(setq meghanada-java-path "java")

(setq meghanada-maven-path "mvn")))

(require 'use-package)

(put 'upcase-region 'disabled nil)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值