推荐阅读:
[AI-人工智能]免翻墙的AI利器:樱桃茶·智域GPT,让你轻松使用ChatGPT和Midjourney - 免费AIGC工具 - 拼车/合租账号 八折优惠码: AIGCJOEDISCOUNT2024
[AI-人工智能]银河录像局: 国内可靠的AI工具与流媒体的合租平台 高效省钱、现号秒发、翻车赔偿、无限续费|95折优惠码: AIGCJOE
[AI-人工智能]免梯免翻墙-ChatGPT拼车站月卡 | 可用GPT4/GPT4o/o1-preview | 会话隔离 | 全网最低价独享体验ChatGPT/Claude会员服务
[AI-人工智能]边界AICHAT - 超级永久终身会员激活 史诗级神器,口碑炸裂!300万人都在用的AI平台
本文介绍了在Ubuntu操作系统下,如何配置Emacs以打造高效开发环境。详细讲解了安装Emacs、配置基础设置、安装和使用插件等步骤。通过优化Emacs的配置,可以提高开发效率和代码编写体验。特别针对Ubuntu EC20版本,提供了针对性的配置建议,帮助开发者快速搭建适合自己的Emacs开发环境。无论是新手还是资深开发者,都能从中获得实用指导。
本文目录导读:
在Linux世界中,Ubuntu因其友好的用户界面和强大的社区支持,成为了许多开发者的首选操作系统,而Emacs,作为一款历史悠久且功能强大的文本编辑器,更是程序员们的心头好,本文将详细介绍如何在Ubuntu系统下配置Emacs,打造一个高效、个性化的开发环境。
安装Emacs
我们需要在Ubuntu系统上安装Emacs,可以通过以下几种方式进行安装:
1、使用包管理器安装
打开终端,输入以下命令:
```bash
sudo apt update
sudo apt install emacs
```
这将安装Ubuntu官方仓库中的Emacs版本。
2、安装最新版Emacs
如果希望使用最新版的Emacs,可以通过添加PPA(Personal Package Archive)来安装:
```bash
sudo add-apt-rePOSitory ppa:kelleyk/emacs
sudo apt update
sudo apt install emacs26
```
这样可以安装到最新的Emacs 26版本。
基本配置
安装完成后,我们需要对Emacs进行一些基本配置,以提高使用体验。
1、启用鼠标支持
在Emacs中,默认情况下鼠标支持是关闭的,可以通过以下配置启用鼠标:
```lisp
(setq mouse-wheel-scroll-amount '(1 ((shift) . 1))) ;; 控制滚轮滚动行数
(setq mouse-wheel-progressive-speed nil) ;; 禁用滚轮加速
(xterm-mouse-mode 1) ;; 启用xterm鼠标支持
```
2、设置字体和主题
选择一个合适的字体和主题可以让编辑体验更加舒适,以下是一个示例配置:
```lisp
(set-face-attribute 'default nil :font "Fira Code 14")
(use-package monokai-theme
:ensure t
:config
(load-theme 'monokai t))
```
这里我们使用了Fira Code
字体和monokai
主题。
3、配置行号显示
显示行号可以帮助我们更好地定位代码:
```lisp
(global-linum-mode 1)
(setq linum-format "%4d ")
```
安装和使用插件
Emacs的强大之处在于其丰富的插件生态,通过安装和使用插件,可以大大提升开发效率。
1、使用包管理器
Emacs的包管理器package.el
可以帮助我们方便地安装和管理插件,需要配置包源:
```lisp
(require 'package)
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
(package-initialize)
```
2、常用插件推荐
Magit:强大的Git集成工具
```lisp
(use-package magit
:ensure t
:bind (("C-x g" . magit-status)))
```
Company:智能代码补全
```lisp
(use-package company
:ensure t
:config
(global-company-mode 1))
```
Yasnippet:代码片段扩展
```lisp
(use-package yasnippet
:ensure t
:config
(yas-global-mode 1))
```
projectile:项目管理工具
```lisp
(use-package projectile
:ensure t
:config
(projectile-mode +1))
```
Org Mode:强大的笔记和任务管理工具
```lisp
(use-package org
:ensure t
:config
(setq org-log-done 'time))
```
定制快捷键
快捷键是提高编辑效率的关键,Emacs允许我们自定义快捷键,以适应个人习惯。
1、基本快捷键配置
```lisp
(global-set-key (kbd "C-x C-b") 'ibuffer) ;; 使用ibuffer替代默认buffer列表
(global-set-key (kbd "C-c c") 'compile) ;; 快速编译
(global-set-key (kbd "C-c g") 'grep) ;; 快速grep搜索
```
2、使用use-package
绑定快捷键
在使用use-package
安装插件时,可以直接绑定快捷键:
```lisp
(use-package magit
:ensure t
:bind (("C-x g" . magit-status)))
```
高级配置
除了基本配置和插件安装,我们还可以进行一些高级配置,以进一步提升Emacs的使用体验。
1、配置多窗口管理
Emacs支持多窗口编辑,可以通过以下配置优化窗口管理:
```lisp
(defun split-window-func-with-other-buffer (split-function)
(lexical-let ((s-f split-function))
(lambda ()
(interactive)
(funcall s-f)
(let ((s (next-window)))
(set-window-buffer s (other-buffer))
(switch-to-buffer (other-buffer))
(select-window s)))))
(global-set-key (kbd "C-x 2") (split-window-func-with-other-buffer 'split-window-vertically))
(global-set-key (kbd "C-x 3") (split-window-func-with-other-buffer 'split-window-horizontally))
```
2、配置自动保存和备份
自动保存和备份功能可以防止意外丢失编辑内容:
```lisp
(setq auto-save-default t)
(setq make-backup-files t)
(setq backup-directory-alist `(("." . "~/.emacs.d/backup")))
```
3、配置语法高亮和括号匹配
语法高亮和括号匹配是编程中不可或缺的功能:
```lisp
(global-font-lock-mode t)
(show-paren-mode 1)
```
通过以上步骤,我们已经在Ubuntu系统下完成了一个高效、个性化的Emacs配置,Emacs的强大之处在于其极高的可定制性,通过不断探索和配置,可以使其更好地适应个人开发需求,希望本文能帮助你在Ubuntu下打造一个理想的Emacs开发环境。
相关关键词
Ubuntu, Emacs, 配置, 安装, 插件, 快捷键, 主题, 字体, 行号, Magit, Company, Yasnippet, projectile, Org Mode, 包管理器, 自定义, 多窗口, 自动保存, 备份, 语法高亮, 括号匹配, 开发环境, 高效, 个性化, 终端, PPA, Git, 代码补全, 代码片段, 项目管理, 笔记, 任务管理,use-package
,package.el
,init.el
,dotemacs
,Fira Code
,Monokai
,xterm-mouse-mode
,global-linum-mode
,auto-save-default
,backup-directory-alist
,global-font-lock-mode
,show-paren-mode
,split-window
,ibuffer
,compile
,grep
,lexical-let
,next-window
,set-window-buffer
,switch-to-buffer
,select-window
,other-buffer
,global-set-key
,require
,add-to-list
,package-initialize
,load-theme
,set-face-attribute
,setq
,defun
,lambda
,interactive
,funcall
,let
本文标签属性:
Ubuntu Emacs 配置:ubuntu dmesg