联系使用emacs做rails开发,并使用color-theme做了色彩调整,我用的是(color-theme-calm-forest),但是在代码出错后,背景色变得和前景色极为相近,非常难辩认.修改color-theme不起作用,后来发现所有色彩主题都是同样的颜色,后又猜是ruby-mode搞得,看了一遍也没找到原因.最后终于找到,可以使用
"Set point on a comment and hit `M-x describe-face'. You can also use
`M-x customize-face' to modify it."
然后看了一下,原来flyMake搞的鬼,应该rails带的,以前到没注意这个,有空看看除了实时提醒代码错误外,还能干嘛.
最后加了一行代码解决:
(custom-set-faces '(flymake-errline ((((class color)) (:background "DarkRed")))))
全部.emacs文件如下:
(desktop-save-mode 1)
(setq default-major-mode 'text-mode)
(add-hook 'text-mode-hook 'turn-on-auto-fill)
;;(global-font-lock-mode)
(transient-mark-mode t)
(fset 'yes-or-no-p 'y-or-n-p)
(display-time)
(show-paren-mode t)
(tool-bar-mode -1)
(menu-bar-mode -1)
(scroll-bar-mode -1)
(setq-default make-backup-files nil)
(setq default-directory "E:/NBProjects/")
(global-set-key [(meta g)] 'goto-line)
(global-set-key [(meta left)] 'backward-sexp)
(global-set-key [(meta right)] 'forward-sexp)
(global-set-key "\C-x\C-m" 'execute-extended-command)
(global-set-key "\C-c\C-m" 'execute-extended-command)
(global-set-key "\C-w" 'backward-kill-word)
(global-set-key "\C-x\C-k" 'kill-region)
(global-set-key "\C-c\C-k" 'kill-region)
(global-set-key [f5] 'call-last-kbd-macro)
;; Taken from the comment section in inf-ruby.el
;; (setq ruby-program-name "/usr/local/bin/ruby")
(add-to-list 'load-path (expand-file-name "D:/ruby/src/ruby-1.8.6-p111/misc"))
(autoload 'ruby-mode "ruby-mode" "Mode for editing ruby source files")
(add-to-list 'auto-mode-alist '("\\.rb$" . ruby-mode))
(add-to-list 'interpreter-mode-alist '("ruby" . ruby-mode))
(autoload 'run-ruby "inf-ruby" "Run an inferior Ruby process")
(autoload 'inf-ruby-keys "inf-ruby" "Set local key defs for inf-ruby in ruby-mode")
(add-hook 'ruby-mode-hook '(lambda () (inf-ruby-keys)
(require 'ruby-electric)
(ruby-electric-mode t)))
;; disable backup
(setq make-backup-files nil)
;; abbrev mode
(setq-default abbrev-mode t)
(read-abbrev-file "~/.emacs.d/abbrev_defs")
(setq save-abbrevs t)
(add-to-list 'load-path "~/site-lisp")
(add-to-list 'load-path "~/site-lisp/rails")
(add-to-list 'load-path "~/site-lisp/cedet/common")
(add-to-list 'load-path "~/site-lisp/ecb")
(add-hook 'nxml-mode-hook
(lambda ()
(setq local-abbrev-table nxml-mode-abbrev-table)))
(defun try-complete-abbrev (old)
(if (expand-abbrev) t nil))
(setq hippie-expand-try-functions-list
'(try-complete-abbrev
try-complete-file-name
try-expand-dabbrev))
(require 'psvn)
(require 'snippet)
(require 'cedet)
(require 'rails)
;; associate ruby-mode with .rb files
(add-to-list 'auto-mode-alist '("\.rb$" . ruby-mode))
(setq auto-mode-alist (cons '("\\.rjs$" . ruby-mode) auto-mode-alist))
(setq auto-mode-alist (cons '("\\.rake$" . ruby-mode) auto-mode-alist))
(setq auto-mode-alist (cons '("\\.rhtml$" . nxml-mode) auto-mode-alist))
(setq auto-mode-alist (cons '("\\.erb$" . nxml-mode) auto-mode-alist))
(modify-coding-system-alist 'file "\\.rhtml$" 'utf-8)
(modify-coding-system-alist 'file "\\.erb$" 'utf-8)
(modify-coding-system-alist 'file "\\.rb$" 'utf-8)
(modify-coding-system-alist 'file "\\.rjs$" 'utf-8)
(modify-coding-system-alist 'file "\\.yml$" 'utf-8)
(add-to-list 'load-path "~/site-lisp/yasnippet")
(require 'yasnippet)
(add-to-list 'yas/extra-mode-hooks
'ruby-mode-hook)
(yas/initialize)
(yas/load-directory "~/site-lisp/yasnippet/snippets")
(setq yas/root-directory "~/snippets")
(yas/load-directory yas/root-directory)
(make-variable-buffer-local 'yas/trigger-key)
(add-hook 'ruby-mode-hook ; or rails-minor-mode-hook ?
'(lambda ()
(setq yas/trigger-key
(kbd "<tab>"))))
(semantic-load-enable-code-helpers)
(require 'ecb-autoloads)
(mouse-avoidance-mode 'animate)
(load "~/site-lisp/nxml/autostart.el")
(add-to-list 'auto-mode-alist '("\\.css$" . css-mode))
(add-to-list 'load-path "~/site-lisp/color-theme")
(require 'color-theme)
(color-theme-initialize)
;;(color-theme-gnome2)
(color-theme-calm-forest)
(custom-set-faces '(flymake-errline ((((class color)) (:background "DarkRed")))))
;;在html和css模式下将#XXXXXX按所代表的颜色着色
(defvar hexcolour-keywords
'(("#[abcdef[:digit:]]\\{6\\}"
(0 (put-text-property (match-beginning 0)
(match-end 0)
'face (list :background
(match-string-no-properties 0)))))))
(defun hexcolour-add-to-font-lock ()
(font-lock-add-keywords nil hexcolour-keywords))
(add-hook 'nxml-mode-hook 'hexcolour-add-to-font-lock)
(add-hook 'css-mode-hook 'hexcolour-add-to-font-lock)
;; for yaml
(require 'yaml-mode)
(add-to-list 'auto-mode-alist '("\\.yml$" . yaml-mode))
(add-hook 'yaml-mode-hook
'(lambda ()
(define-key yaml-mode-map "\C-m" 'newline-and-indent)))
;; for javascript
;;启动emacsclient服务,然后用emacsclientw.exe打开文件就不用新开一个emacs了
(server-start)
(autoload 'javascript-mode "javascript" nil t)
(add-to-list 'auto-mode-alist '( "\\.js\\'" . javascript-mode))
(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.
'(ecb-options-version "2.33beta2"))
(ido-mode t)
分享到:
相关推荐
2. **永久设置**:在 `.emacs` 文件中添加以下代码: ```lisp (setq viper-mode t) (require 'viper) ``` #### 三、VIPOR 的状态 VIPOR 模式包含四种状态: 1. **Emacs 状态**:可以执行所有正常的 GNU Emacs...
Projectile Rails是用于在GNU Emacs中使用应用程序和引擎的次要模式。 在内部它是基于。 这意味着您可以使用Projectile的命令来获取(或确认)文件,运行测试,在项目之间切换等。 使用Projectile Rails,您可以:...
projectile-rails, 基于弹丸的Rails 模式 弹 Rails 概要弹 Rails 是在 GNU Emacs中使用 Ruby on Rails 应用程序和引擎的次要模式。 在内部,它是基于弹 。这意味着你可以在 greping ( 或者 acking ) 文件。运行测试...
最后,需要在 Emacs 的配置文件中添加以下代码: ``` (require 'eim) (eim-use-package) ``` 重启 Emacs 后,将能够输入中文。 三、使用中文输入模块 使用中文输入模块需要在 Emacs 中启用中文输入模式。可以...
emacs-elixir, Emacs主要Elixir模式 Elixir模式提供字体锁定,缩进和导航支持 Elixir程序语言。 安装工具通过 package.el通过 el手动使用情况交互式命令配置文件Keymapping注释工具集成工具。
在提供的压缩包文件中,我们看到了`python-mode.el`,这是一个用于Emacs的Python模式源代码。你可以将这个文件放在Emacs的`~/.emacs.d`或`/site-lisp`目录下,这样Emacs就能找到并加载这个模式。 配置Emacs以启用...
在搜索结果中,当光标位于错误提示行时,按下`<RET>`可以跳转到源代码行。如果在GREP缓冲区中遇到同种错误,同样可以使用`C-x \`快速定位。 接下来,我们进入GUD(GNU调试器接口)调试部分。启动GDB调试会话,执行`...
Emacs的窗口操作包括删除所有其它窗口、上下分割当前窗口、左右分割当前窗口、删除当前窗口、向下滚动其它窗口、向上滚动其它窗口、切换光标到另一个窗口、选择另一个窗口中的缓冲、显示另一个窗口中的缓冲、在另一...
在Linux环境中,Emacs是一款非常强大的文本编辑器,深受程序员和系统管理员的喜爱。它提供了丰富的功能,包括代码编辑、文档编写、邮件处理等。本文将详细介绍如何在Linux系统下安装Emacs,以及如何利用提供的安装包...
在Emacs中,Perl开发者可以利用各种Perl相关的模式、插件和工具来提升编程效率。例如,`cperl-mode`是Emacs内置的一种Perl编程模式,提供了语法高亮、自动缩进、括号匹配等功能,使得代码更易读写。此外,`flymake`...
- **持续学习与贡献**:Emacs社区活跃,用户可以通过贡献代码、文档或插件等方式参与到Emacs的发展中来,共同推动其进步。 ### 总结 Emacs是一款高度可定制的文本编辑器,具有悠久的历史和发展背景。它不仅提供了...
在本篇文章中,我们将详细介绍如何在Windows环境下安装Emacs文本编辑器,并且会涉及如何配置Emacs以便更好地适应用户的工作需求。以下将分为几个部分来进行详细的讲解:Emacs的安装步骤、配置文件`.emacs`的基本设置...
Emacs详细安装配置,yasnippet和代码自动提示,强烈推荐 将文件解压到你的home目录下就可以,windows系统下放到 C:\Users\你的名字\AppData\Roaming下或者你自己设置的EMACS HOME目录
在开源的世界里,Emacs以其开放源代码的特性,吸引了众多开发者对其进行改进和扩展,形成了无数的插件和配置方案。这个教程正是基于这种开源精神,为中文用户提供易懂的教学材料。 Emacs的核心概念包括缓冲区...
书中的内容可能涵盖如何打开、编辑和保存文件,使用Emacs的内置帮助系统,以及安装和使用各种模式来处理特定类型的文件,如编程语言或标记语言。此外,还可能涉及如何创建自定义快捷键和设置个人工作环境,以提高...
将文件夹中的“.emacs”文件复制到C:\ (由于系统限制暂时不支持代码不全) Linux: 1.打开文件夹,按住[Ctrl]+[H],并将文件夹里的文件全部复制到Home文件夹下 2.打开Emacs ,按住[Alt]+[[X]输入“load-file” 3.输入...
Emacs中的模式(Mode)系统是其独特之处。每种模式针对特定类型的文件或任务,提供了相关的功能和快捷键。例如,编程模式如Python模式或C++模式,会提供语法高亮、代码折叠、自动完成等特性。除此之外,还有文本模式...
emacs windows下emacs 编辑器 据说是神的编辑器
* Emacs 提供了中文编辑环境,包括 Emacs 下的中文编辑、文化化的 EMACS - Mule 等。 Emacs 的其他相关事项 * Emacs 的其他相关事项包括 Registers and Bookmarks、文字的勘误、图形的编辑等。 Emacs 的基本概念...