emacs config on win10 for rust 1
native win32
(setq package-archives '(("gnu" . "http://mirrors.ustc.edu.cn/elpa/gnu/")
("melpa" . "http://mirrors.ustc.edu.cn/elpa/melpa/")))
(use-package rustic)
(add-hook 'rust-mode-hook
(lambda () (setq indent-tabs-mode nil)))
(add-hook 'rust-mode-hook
(lambda () (define-key rust-mode-map (kbd "C-c C-c") 'rust-run)))
(setq rust-format-on-save t)
(require 'yasnippet)
(yas-global-mode 1)
(electric-pair-mode)
(global-company-mode)
(add-hook 'julia-mode-hook 'julia-repl-mode)
(setq racket-program "G:\\Program Files\\Racket\\Racket.exe")
(require 'racket-xp)
(add-hook 'racket-mode-hook #'racket-xp-mode)
(add-hook 'racket-mode-hook #'racket-mode-xref-backend-function)
(add-hook 'racket-xp-mode-hook #'racket-xp-xref-backend-function)
(add-hook 'racket-repl-mode-hook #'racket-repl-xref-backend-function)
(use-package paredit
:ensure t
:config
(dolist (m '(emacs-lisp-mode-hook
lisp-mode-hook
racket-mode-hook
racket-repl-mode-hook))
(add-hook m #'paredit-mode))
(bind-keys :map paredit-mode-map
("{" . paredit-open-curly)
("}" . paredit-close-curly))
(unless terminal-frame
(bind-keys :map paredit-mode-map
("M-[" . paredit-wrap-square)
("M-{" . paredit-wrap-curly))))
(eval-after-load 'scheme
'(define-key scheme-mode-map "\t" 'scheme-complete-or-indent))
(autoload 'scheme-get-current-symbol-info "scheme-complete" nil t)
(add-hook 'scheme-mode-hook
(lambda ()
(make-local-variable 'eldoc-documentation-function)
(setq eldoc-documentation-function 'scheme-get-current-symbol-info)
(eldoc-mode)))
;(require 'rainbow-delimiters)
(require 'highlight-parentheses)
(dolist (m '(emacs-lisp-mode-hook
lisp-mode-hook
racket-mode-hook
racket-repl-mode-hook))
;(add-hook m #'rainbow-delimiters-mode)
(add-hook m #'highlight-parentheses-mode))
(global-paren-face-mode)
(load (expand-file-name "C:/users/o/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl")
(slime-setup '(slime-fancy slime-company))
(add-to-list 'slime-contribs 'slime-repl)
(load-theme 'solarized-dark 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.
'(julia-program "G:/Julia 1.5.3/bin/julia.exe")
'(package-selected-packages
'(all-the-icons-dired dired-du dired-explorer dired-filter dired-icon dired-rainbow direx paren-face common-lisp-snippets redshank slime-company slime highlight-parentheses solarized-theme rainbow-delimiters yasnippet use-package-hydra use-package-ensure-system-package use-package-el-get use-package-chords thrift scribble-mode scheme-complete rustic racket-mode paredit mic-paren lsp-ui lsp-julia julia-vterm julia-shell julia-repl flycheck-rust flycheck-julia el-get company)))
(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 "Consolas" :foundry "outline" :slant normal :weight normal :height 143 :width normal)))))
msys2
;(setq package-archives '(("gnu" . "http://mirrors.ustc.edu.cn/elpa/gnu/")
; ("melpa" . "http://mirrors.ustc.edu.cn/elpa/melpa/")))
(setq package-archives '(("gnu" . "http://mirrors.ustc.edu.cn/elpa/gnu/")
("melpa" . "http://mirrors.ustc.edu.cn/elpa/melpa/")
("melpa-stable" . "http://mirrors.ustc.edu.cn/elpa/melpa-stable/")
("org" . "http://mirrors.ustc.edu.cn/elpa/org/")))
(setq package-archives nil)
(global-company-mode)
(global-flycheck-mode)
(eval-after-load 'company
'(add-to-list 'company-backends 'company-irony))
(eval-after-load 'company
'(add-to-list 'company-backends 'company-c-headers))
(add-hook 'c++-mode-hook 'irony-mode)
(add-hook 'c-mode-hook 'irony-mode)
(add-hook 'objc-mode-hook 'irony-mode)
(defun compile-gtk-single-file ()
(interactive)
(let* ((base-name (file-name-base (buffer-file-name)))
(exe-name (concat base-name ".exe"))
(source-name (concat base-name ".c"))
(cmd (read-shell-command "Compile single gtk file: "
(concat "gcc `pkg-config --cflags gtk4` -o "
exe-name " "
source-name
" `pkg-config --libs gtk4`"
" && ./"
exe-name
" &"))))
(shell-command cmd)))
(defun run-gtk-single-file ()
(interactive)
(let* ((base-name (file-name-base (buffer-file-name)))
(exe-name (concat base-name ".exe"))
(cmd (read-shell-command "Run single gtk file: "
(concat "./"
exe-name
" &"))))
(shell-command cmd)))
(add-hook 'c-mode-hook
'(lambda ()
(local-set-key (kbd "C-c c") 'compile-gtk-single-file)
(local-set-key (kbd "C-c r") 'run-gtk-single-file)))
(ivy-mode)
(setq ivy-use-virtual-buffers t)
(setq enable-recursive-minibuffers t)
(setq search-default-mode #'char-fold-to-regexp)
(global-set-key "\C-s" 'swiper)
(global-set-key (kbd "C-c C-r") 'ivy-resume)
(global-set-key (kbd "M-x") 'counsel-M-x)
(global-set-key (kbd "C-x C-f") 'counsel-find-file)
(define-key minibuffer-local-map (kbd "C-r") 'counsel-minibuffer-history)
(setenv "GTAGSLIBPATH" "G:/msys64/mingw64/include/")
(load-file "g:/msys64/home/o/.emacs.d/global-tags.el/global-tags.el")
(add-hook 'c-mode-hook #'global-tags-exclusive-backend-mode)
(add-hook 'c-mode-hook
(lambda ()
(add-hook 'after-save-hook
#'global-tags-update-database-with-buffer
nil
t)))
(use-package ivy-xref
:ensure t
:init
;; xref initialization is different in Emacs 27 - there are two different
;; variables which can be set rather than just one
(when (>= emacs-major-version 27)
(setq xref-show-definitions-function #'ivy-xref-show-defs))
;; Necessary in Emacs <27. In Emacs 27 it will affect all xref-based
;; commands other than xref-find-definitions (e.g. project-find-regexp)
;; as well
(setq xref-show-xrefs-function #'ivy-xref-show-xrefs))
;; Windows performance tweaks
;;
(when (boundp 'w32-pipe-read-delay)
(setq w32-pipe-read-delay 0))
;; Set the buffer size to 64K on Windows (from the original 4K)
(when (boundp 'w32-pipe-buffer-size)
(setq irony-server-w32-pipe-buffer-size (* 64 1024)))
(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.
'(company-backends
'(company-c-headers company-clang company-irony company-bbdb company-semantic company-cmake company-capf company-clang company-files
(company-dabbrev-code company-gtags company-etags company-keywords)
company-oddmuse company-dabbrev))
'(company-c-headers-path-system
'("g:/msys64/mingw64/include" "g:/msys64/mingw64/include/gtk-4.0" "g:/msys64/mingw64/include/glib-2.0" "g:/msys64/mingw64/include/graphene-1.0" "g:/msys64/mingw64/lib/glib-2.0/include" "g:/msys64/mingw64/include/cairo" "g:/msys64/mingw64/include/pango-1.0" "g:/msys64/usr/include" "g:/msys64/mingw64/include/harfbuzz" "g:/msys64/mingw64/include/gdk-pixbuf-2.0" "g:/msys64/mingw64/lib/graphene-1.0/include"))
'(company-clang-arguments
'("-IG:/msys64/mingw64/include" "-IG:/msys64/mingw64/include/gtk-4.0" "-IG:/msys64/mingw64/include/glib-2.0" "-IG:/msys64/mingw64/include/graphene-1.0" "-IG:/msys64/mingw64/lib/glib-2.0/include" "-IG:/msys64/mingw64/include/cairo" "-IG:/msys64/mingw64/include/pango-1.0" "-IG:/msys64/usr/include" "-IG:/msys64/mingw64/include/harfbuzz" "-IG:/msys64/mingw64/include/gdk-pixbuf-2.0" "-IG:/msys64/mingw64/lib/graphene-1.0/include"))
'(company-minimum-prefix-length 2)
'(flycheck-clang-include-path
'("g:/msys64/mingw64/include" "g:/msys64/mingw64/include/gtk-4.0" "g:/msys64/mingw64/include/glib-2.0" "g:/msys64/mingw64/include/graphene-1.0" "g:/msys64/mingw64/lib/glib-2.0/include" "g:/msys64/mingw64/include/cairo" "g:/msys64/mingw64/include/pango-1.0" "g:/msys64/usr/include" "g:/msys64/mingw64/include/harfbuzz" "g:/msys64/mingw64/include/gdk-pixbuf-2.0" "g:/msys64/mingw64/lib/graphene-1.0/include"))
'(flycheck-clang-includes nil)
'(flycheck-gcc-include-path nil)
'(package-selected-packages
'(ht async persp-mode-projectile-bridge use-package ivy-xcdoc ivy-xref counsel-gtags swiper ivy gxref flycheck-irony company-irony-c-headers company-irony irony clang-capf clang-format clang-format+ company company-c-headers company-ctags))
'(sql-connection-alist
'(("stock"
(sql-product 'ms)
(sql-user "sa")
(sql-password "JianBing!@#0831")
(sql-server "121.196.17.12")
(sql-database "DataSource"))))
'(sql-ms-program
"C:\\Program Files\\Microsoft SQL Server\\Client SDK\\ODBC\\170\\Tools\\Binn\\SQLCMD.EXE"))
(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.
)
emacs config on win10 for rust 1的更多相关文章
- Emacs在RHEL 5上的安装和使用
1. install latest emacs xz -d emacs-24.3.tar.xz tar xvf emacs-24.3.tar ./configure make make install ...
- emacs配置文件的基础知识 (转载)
转自:http://blog.csdn.net/schumyxp/article/details/2278268 emacs的配置文件,叫作.emacs,是个隐藏文件,存在于当前用户的根目录下面,也就 ...
- [追热点]学习Rust之选择IDE
学习语言非常需要实际上手写代码,自然绕不开IDE工具,所以第一时间当然是选择IDE. Rust官网推荐 先去看看Rust官网推荐了什么IDE:工具 - Rust 程序设计语言 无论您喜欢用命令行还是可 ...
- windows vscode 远程调试代码
需要: vscode + Remote-ssh(vscode插件中下载) openssh (https://www.mls-software.com/files/setupssh-8.0p1-2.ex ...
- 更好的处理 Python 多工程 import 依赖
话说, 这段时间需要开发一个项目, 新项目对现有的几乎所有项目都有依赖. 豆瓣现存的几个大项目,基本都是围绕豆瓣主站shire的依赖, 也就是说, 其他项目对shire的单项依赖, 这些项目在需要主 ...
- 解决win10开机出现C:\WIndows\system32\config\systemprofile\Desktop不可用 问题
背景:公司一台win10机子好久没用了,今天开了打算用下(打算远程桌面),远程桌面连不上(好久没用了,用户名都忘了),所以又插上显示器和键鼠. 键盘因为是PS/2接口,不能热插拔,所以开机一段时间后( ...
- Bad owner or permissions on .ssh/config win10问题解决
最近向系统添加了新用户账号后出现了问题,尝试使用私钥登陆服务器,提示了 Bad owner or permissions on .ssh/config 这个报错,就是如题中的问题 修复 按照Windo ...
- win10 IIS web.config加密不能访问:打不开 RSA 密钥容器
C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys 找到密钥文件, 根据时间判断具体是哪一个文件,赋予network service读权限
- Win10系统下安装编辑器之神(The God of Editor)Vim并且构建Python生态开发环境(2020年最新攻略)
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_160 众神殿内,依次坐着Editplus.Atom.Sublime.Vscode.JetBrains家族.Comodo等等一众编辑 ...
- Win10 UWP开发系列:使用VS2015 Update2+ionic开发第一个Cordova App
安装VS2015 Update2的过程是非常曲折的.还好经过不懈的努力,终于折腾成功了. 如果开发Cordova项目的话,推荐大家用一下ionic这个框架,效果还不错.对于Cordova.PhoneG ...
随机推荐
- 【c#】从外部复制文本、图片到我的软件中的解决方案(支持ppt,qq等)
原文地址 https://www.cnblogs.com/younShieh/p/17010572.html 如果本文对你有所帮助,不妨点个关注和推荐呀,这是对笔者最大的支持~ 我们先考虑 ...
- bbs项目(部分讲解)
文章评论业务完善 提交评论 评论框里面的内容会清空 然后页面会有一个临时评论样式出现 页面刷新才会出现评论楼样式 研究子评论特性 每个评论右侧都应该有回复按钮 点击就可以填写子评论 点击回复按钮具体动 ...
- 聊聊MongoDB中连接池、索引、事务
大家好,我是哪吒. 三分钟你将学会: MongoDB连接池的使用方式与常用参数 查询五步走,能活九十九? MongoDB索引与MySQL索引有何异同? MongoDB事务与ACID 什么是聚合框架? ...
- 8KB的C#贪吃蛇游戏热点答疑和.NET7版本
在之前的一篇文章<看我是如何用C#编写一个小于8KB的贪吃蛇游戏>中,介绍了在.NET Core 3.0的环境下如何将贪吃蛇游戏降低到8KB.不过也有很多小伙伴提出了一些疑问和看法,主要是 ...
- 超级容易理解的Three.js中的物体rotation
假设模特头朝着自己现在躺在地上 那么改变Y就是等于躺着转圈圈 mesh.rotation.set( 0,Math.PI/1.2,0); 改变X就意味着,这个是本来模特头朝着自己躺着,然后站起来了,后脑 ...
- chatGPT vscode 体验
体验秘钥 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 多人用可能有点卡,重在体验. 自己(中国)想注册账号如下 步骤一:找到入口 搜索Ope ...
- 浅谈Python中的in,可能有你不知道的
Python中的in,没那么简单,虽然也不难 https://docs.python.org/zh-cn/3.9/reference/expressions.html#membership-test- ...
- FreeBSD 安装 fcitx5的配置
link: Chinese Pinyin Package for typing Chinese sudo pkg install -y zh-CJKUnifonts sudo pkg install ...
- 断点调试/认证/权限/频率-源码分析/基于APIView编写分页/异常处理
内容概要 断点调试 认证/权限/频率-源码分析 基于APIView编写分页 异常处理 断点调试 # 程序以 debug模式运行,可以在任意位置停下,查看当前情况下变量数据的变化情况 # pycharm ...
- vue+.net入门级书签项目
vu3+.net6 webApi 书签管理项目 前言 Gitee项目地址:https://gitee.com/zyplj/book-marks Github项目地址:https://github.co ...