Skip to content

IammyselfYBX/.emacs.d

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Emacs 配置文件

准备条件

Python

# Ubuntu
# 以下步骤科协在Ubuntu原有的Python3
# $> sudo apt-get remove python3.10                # 卸载Python3.10
# $> sudo apt-get remove --auto-remove python3.10  # [慎重] 清除python依赖
# $> sudo apt-get purge python3.10                 # 清除python 3.10
$> sudo apt-get install python3.XX 
$> sudo apt install python3-pip

# Arch
$> sudo pacman -S python
$> sudo pacman -S python-pip

Latex

镜像下载链接 参考视频通过ISO镜像安装Latex

sudo mkdir /mnt/texlive2023
sudo mount -o loop texlive2023-20230313.iso /mnt/texlive2023
cd /mnt/texlive2023
sudo ./install-tl

如果使用 AUCTex 的 Preview-latex 功能需要安装 ghostscript

sudo pacman -S ghostscript

org-mode

pdftools

pdftools 是一款用来看pdf的插件,需要提前安装

$> sudo pacman -S --needed base-devel libpng zlib poppler-glib
$> sudo pacman -S poppler-data
# poppler-data 是可以让 pdf-tools 显示中文

执行代码块

# 需要 ipython
pip install ipython jupyter
# 如果是 Arch
pacman -S jupyter-notebook ipython

这里如果没有安装 jupyter 的话,可能在使用 Org-roam 时报错 JOSN readtable error 47

导出

$> sudo pacman -S pandoc
# 需要提前安装 pandoc 才能使用 ox-pandoc

org-download

$> sudo pacman -S xclip

lsp-mode

安装可能失败

第一次安装很可能下载失败,所以可能需要手动安装 (melpa) lsp-mode地址

$> unzip lsp-mode-20210227.1401.zip
$> mv /mnt/d/lsp-mode-20210227.1401/ ~/.emacs.d/elpa/ 

有时启动的时候会出现如下报错

tony@DESKTOP-TTVCFEO:~/.emacs.d$ emacs --debug-init
Error loading autoloads: (file-missing Cannot open load file No such file or directory /home/tony/.emacs.d/elpa/lsp-mode-20230614.2208/lsp-mode-autoloads)

这时就在网上找一个 “`lsp-mode-autoloads.el“` 的文件下载

$> mv /mnt/d/lsp-mode-autoloads.el ~/.emacs.d/elpa/lsp-mode-20210227.1401/

语言服务器

官网提供

C/C+ +

我选择的是 ccls

# 安装ccls
## Arch
$> sudo pacman -S ccls
## Ubuntu
$> sudo apt install ccls
$> sudo apt install clang

# 找到ccls的位置
$> which ccls
/usr/bin/ccls
Python
# 采用的是 pylsp
# 官网:https://emacs-lsp.github.io/lsp-mode/page/lsp-pylsp/
$> pip install 'python-lsp-server[all]'
# 实测 Ubuntu 自带的 python 的库 /usr/lib/python3/dist-packages/ 中 setuptools 有各种问题,如果卸载 python 还会出现其他系统级别的问题,所以就可以把别的地方的文件夹压缩在解压到用户文件夹中
# 参考这个链接:https://github.com/IammyselfYBX/my_repository/tree/master/emacs/python/2023-site-packages
$> mv /home/tony/Downloads/site-packages.tar.gz ~/.local/lib/python3.10/
$> tar -zxvf site-packages.tar.gz

# 如果使用WSL的情况就需要修改 PATH 环境变量
$> echo "export PATH=$PATH:/home/tony/.local/bin/" >> ~/.bash_profile 

flycheck

flycheck语言服务器

安装具体检查工具

# 为 C/C++ 安装
## 使用 Clang 或 GCC 检查 C/C++ 的语法和类型错误
pacman -S gcc   # 安装 gcc
pacman -S clang # 或者 安装clang 

# 为 Python 安装
## Flycheck 使用 python-flake8 或 python-pylint 检查 Python,如果两者都不可用,则回退到 python-pycompile 。 
pip install pylint

# 为 JavaScript 安装
npm install eslint

安装

git clone https://github.com/IammyselfYBX/.emacs.d.git

插件配置

一般情况下是直接安装,但是有时会显示没有软件包,这是修改 my_elpa.el 试试

;;更改国内源
(setq package-archives '(                                               (setq package-archives '(
    ;; emacs-china                                                          ;; emacs-china
    ("gnu"   . "http://1.15.88.122/gnu/")                            -----> ;;("gnu"   . "http://1.15.88.122/gnu/")
    ("melpa" . "http://1.15.88.122/melpa/")                          -----> ;;("melpa" . "http://1.15.88.122/melpa/")
    ;; 清华                                                                 ;; 清华
    ("gnu"    . "http://mirrors.tuna.tsinghua.edu.cn/elpa/gnu/")            ("gnu"    . "http://mirrors.tuna.tsinghua.edu.cn/elpa/gnu/")
    ("nongnu" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/nongnu/")         ("nongnu" . "http://mirrors.tuna.tsinghua.edu.cn/elpa/nongnu/")
    ;; 外网                                                                 ;; 外网
    ("melpa"  . "http://mirrors.tuna.tsinghua.edu.cn/elpa/melpa/")          ("melpa"  . "http://mirrors.tuna.tsinghua.edu.cn/elpa/melpa/")
    ("gnu" . "https://elpa.gnu.org/packages/")                              ("gnu" . "https://elpa.gnu.org/packages/")
    ))                                                                      ))

实在不行就手动安装(详见 lsp-mode 的安装方式)

文件结构

├── .emacs_cnfonts # 存储cnfonts所需的字体
├── init.el        # 初始文件
├── wiki.org       # 该配置的emacs使用手册
├── etc            # 配置文件
│   ├── gui-custom.el     # 由gui配置生成的配置文件
│   ├── my_custom.el      # 个性化配置
│   ├── my_elpa.el        # elpa源的配置
│   ├── my_use_package.el # use-package 配置
│   └── my_org.el         # org-mode 配置
└── lib             # 函数库
    ├── OS  # 跟操作系统相关
    │   └── judge_os.el   # 判断操作系统的库函数
    └── org # 跟 orgmode 相关
        └── imenu-list.el # Emacs 插件,用于在单独的缓冲区中显示当前缓冲区的 imenu 条目

字体设置

本项目采用了 cnfonts 的方案,可以使用如下命令进行配置字体

正常使用前需要安装字体

$> cp -r .emacs_cnfonts /usr/share/fonts/emacs_cnfonts
$> cd /usr/share/fonts/emacs_cnfonts
$> mkfontscale && mkfontdir && fc-cache -fv

编辑字体

M-x cnfonts-edit-profile

使用手册

参考

1.Awesome Emacs

About

我的emacs配置

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published