对于一位Vim老手,你会给哪个.emacs文件?

5

我已经使用Vim进行编码。

我也想学习Emacs。

我希望将我的 .vimrc 中至少一些自定义导出到我的 .emacs 中。

我的 .vimrc

let Tlist_Auto_Open = 1

" https://dev59.com/K3VC5IYBdhLWcg3w2lCI
" Dvorak it!
no d h
no h j
no t k
no n l
no s :
no S :
no j d
no J D
no l n
no L N
" Added benefits
no - $
no _ ^
no N 
no ; z
no T L
no P P
no p p

let Tex_ViewRuleComplete_pdf = '/usr/bin/open -a Skim $*.pdf' 

set history=1000

set smartindent
set autoindent
set tabstop=4
set expandtab
set shiftwidth=3                                                                                            
set softtabstop=4
set number
set hlsearch
syntax on
set cursorline
highlight CursorLine guibg=#400000
set ruler
set textwidth=78
set foldcolumn=5

" REQUIRED. This makes vim invoke Latex-Suite when you open a tex file.
filetype plugin on 
filetype indent on

" IMPORTANT: grep will sometimes skip displaying the file name if you
" search in a singe file. This will confuse Latex-Suite. Set your grep
" program to always generate a file-name.
set grepprg=grep\ -nH\ $*

" OPTIONAL: This enables automatic indentation as you type.
filetype indent on

" OPTIONAL: Starting with Vim 7, the filetype of empty .tex files defaults to
" 'plaintex' instead of 'tex', which results in vim-latex not being loaded.
" The following changes the default filetype back to 'tex':
let g:tex_flavor='latex'


" http://ubuntuforums.org/showthread.php?t=74889
set foldmethod=manual "folds by indentation, manual, indent
set nocompatible                "Use Vim extensions
set backspace=indent,eol,start  "More powerful backspacing
set nobackup                    "No backup file
set showmode                    "Tell when in insert mode
set showmatch                   "Show matching () {} etc
set hlsearch                    "Highlight what is searched for
set incsearch                   "Highlight as you type

if &t_Co > 2
  syntax on
endif

set bg=dark
hi clear
if exists("syntax_on")
  syntax reset
endif


"Allowable colors: red, yellow, green, blue, magenta,
"                  cyan, gray, black, gray
hi Normal ctermfg=gray ctermbg=none
hi ErrorMsg ctermfg=gray ctermbg=lightblue
hi Visual ctermfg=lightblue ctermbg=fg cterm=reverse
hi VisualNOS ctermfg=lightblue ctermbg=fg cterm=reverse,underline
hi Todo ctermfg=red ctermbg=darkblue
hi Search ctermfg=gray ctermbg=darkblue
hi IncSearch ctermfg=darkblue ctermbg=gray
hi SpecialKey ctermfg=darkcyan
hi Directory ctermfg=cyan
hi Title ctermfg=magenta cterm=bold
hi WarningMsg ctermfg=red
hi WildMenu ctermfg=yellow ctermbg=black cterm=none
hi ModeMsg ctermfg=lightblue
hi MoreMsg ctermfg=darkgreen ctermfg=darkgreen
hi Question ctermfg=green cterm=none
hi NonText ctermfg=darkblue
hi StatusLine ctermfg=blue ctermbg=gray cterm=none
hi StatusLineNC ctermfg=black ctermbg=gray cterm=none
hi VertSplit ctermfg=black ctermbg=gray cterm=none
"hi Folded ctermfg=darkgrey ctermbg=black cterm=bold
"hi FoldColumn ctermfg=darkgrey ctermbg=black cterm=bold
hi LineNr ctermfg=gray cterm=none
hi DiffAdd ctermbg=darkblue cterm=none
hi DiffChange ctermbg=magenta cterm=none
hi DiffDelete ctermfg=blue ctermbg=cyan
hi DiffText cterm=bold ctermbg=red
hi Cursor ctermbg=brown
hi lCursor ctermbg=darkgreen

hi Comment ctermfg=lightgreen cterm=none
hi Constant ctermfg=cyan cterm=none
hi Identifier ctermfg=gray cterm=none
hi Statement ctermfg=red cterm=none
hi PreProc ctermfg=yellow cterm=bold
hi Type ctermfg=darkyellow cterm=none
hi Special ctermfg=magenta cterm=none
hi Underlined cterm=underline
hi Ignore cterm=none

您的 .emacs 文件中有哪些内容可以让我拥有上述功能?

4个回答

9

EMACS Starter Kit(EMACS 入门套件)也很有帮助。

哦天啊——你真的在你的 .vim 中将键盘重新映射为 Dvorak 吗?

好吧,这里还有一些其他的设置:

set smartindent
set autoindent

它们在编程模式下自动启用。对于文本模式,请查看 'autoindent-mode" 和 "filladapt."

set tabstop=4
set shiftwidth=3
set softtabstop=4

(setq c-basic-offset 4) ; indents 4 chars
(setq tab-width 4)          ; and 4 char wide for TAB
(setq indent-tabs-mode nil) ; And force use of spaces

对于shiftwidth,没有简单的等价物; EMACS使用更智能的自动缩进算法。

设置expandtab

(setq indent-tabs-mode nil)

设置行号

有一种方法可以得到带有行号的文本,但我从不使用它,也记不清了。

开启语法高亮

 (turn-on-font-lock)

设置光标行

有一堆光标设置,可以通过 M-x apropos cursor 查看。

其他一些设置也可以使用,这些是我立即知道的。


2

2
您可以使用(linum-mode 1)(global-linum-mode 1)在每个缓冲区中获得带有行号的行。此功能目前仅适用于CVS Emacs。请参见further choices
为了在Emacs内打开PDF文档,可以使用doc-view-mode。有关进一步说明,请参见View PDF/PS/DVI files in an Emacs buffer
无论如何,最好从Emacs Starter Kit as Charlie Martin suggested开始学习Emacs,然后找出自己真正缺少的东西。 Emacs世界与Vi不同。您始终可以浏览Stack Overflow以查找是否已经回答了您的问题。

2

页面崩溃了(500内部服务器错误)。这个没问题:https://github.com/emacsmirror/evil - Alexander

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接