# Less Colors for Man Pages
export LESS_TERMCAP_mb=$'\E[01;31m' # begin blinking
export LESS_TERMCAP_md=$'\E[01;38;5;74m' # begin bold
export LESS_TERMCAP_me=$'\E[0m' # end mode
export LESS_TERMCAP_se=$'\E[0m' # end standout-mode
export LESS_TERMCAP_so=$'\E[38;5;246m' # begin standout-mode - info box
export LESS_TERMCAP_ue=$'\E[0m' # end underline
export LESS_TERMCAP_us=$'\E[04;38;5;146m' # begin underline
The ycmd server SHUT DOWN (restart with ':YcmRestartServer'). Unexpected exit code 1. Type ':YcmToggleLogs ycmd_54959_stderr_UvwUrj.log' to check the logs.
不知道为什么,但很高兴没有看到。
# In .profile or .bash_profile
export MANPAGER='vimpager'
如果您想使用 vim 插件,启动可能会比most因为vimpagersource your而慢一些.vimrc,这可能是一件好事。要禁用.vimrc采购:
# In .profile or .bash_profile
export MANPAGER='vimpager -u NONE'
您还可以使用功能执行混合方法:
# Use 'command man' instead of 'man' if you have overridden
# 'man' with a function, like how I did in the "messy" solutions above.
manmost() {
MANPAGER='most' man "$@"
}
manvim() {
MANPAGER='vimpager -u NONE' man "$@"
}
manvimrc() {
MANPAGER='vimpager' man "$@"
}
# Put this in ~/bin/vimrealpager
# I call it vimrealpager to avoid name clashes with vimpager mentioned above
# Make sure ~/bin/ is in your path
# ***SCRIPT START***
#!/usr/bin/env sh
col -b |
vim -MR -c 'set nomod nolist nospell nonu' \
-c 'set colorcolumn= hlsearch incsearch' \
-c 'nn q :qa!<CR>' \
-c 'nn <end> G' \
-c 'nn <home> gg' \
"$@" \
--not-a-term \
-
# Put this in ~/bin/vimrealmanpager
# ***SCRIPT START***
#!/usr/bin/env sh
vimrealpager -c 'set ft=man' \
-c 'nun <buffer> q'
我使用以下 shell 函数在 Vim 中查看手册页,它提供了很好的语法高亮:
添加
export PAGER=most
到.bashrc啊哈。将此添加到 ~/.bashrc 就可以了。虽然它并不完美。但是,嘿:
它必须在终端中吗?
否则您可以使用:系统->帮助->系统文档,然后在出现的窗口左侧单击“手册页”(在此处找到此提示)
或者您可以使用 Konqueror,它会显示如下所示的手册页:
答案Adam Byrtek似乎将行数限制为 80 个字符,并且在调整终端大小时不会重排文本。
您可以通过设置
MANPAGER
来解决此问题。您也可以PAGER
像daithib8那样设置,但这更通用。MANPAGER
覆盖命令PAGER
。man
从此_
他有一些非常好的额外选项,例如设置
ts
(tabstop)、nonu
(nonumber) 和取消映射i
(insert)。所以我将合并这两个解决方案。还进行了一些改进,例如使用command
命令和扩展参数"$@"
作为一个函数:
编辑:向下滚动到我的UPDATE以查看使用这种混乱形式的好处以及使用一些额外的 vim 映射编写函数的更简洁的方法。
但是做这一切真的是一团糟。以下解决方案需要安装,但它们是更清洁的解决方案。
这些解决方案没有
Vim: Reading from stdin...
上述解决方案所具有的。我推荐daithib8的答案,除了使用
MANPAGER
而不是,PAGER
因为这个问题只是关于联机帮助页。而且我还会将它添加到我的.bash_profile
左右.profile
,因此它不会在每次调用bash
. 你将不得不安装most
。most
没有and中的hjkl
移动,但它是最快的。vim
less
另外,
vimpager
还不错。我喜欢将它用于大型联机帮助页,例如man bash
. 您可以从 vim 获得所有很酷的东西,例如行号number
、突出显示的搜索hlsearch
以及您所有的 vim 插件。如果您已
YouCompleteMe
安装vimpager
也不会显示此消息:不知道为什么,但很高兴没有看到。
如果您想使用 vim 插件,启动可能会比
most
因为vimpager
source your而慢一些.vimrc
,这可能是一件好事。要禁用.vimrc
采购:您还可以使用功能执行混合方法:
所以现在,将在您的or中
export MANPAGER
设置您的默认值,但您可以使用这些功能中的任何一个来快速使用另一个.MANPAGER
.bash_profile
.profile
MANPAGER
更新
实际上,vimpager 与实际的 vim 有点不同。例如,在正常模式下,
w
被映射到b
并被b
映射到& <C-B><SNR>1_L
. 但这就是其他寻呼机的情况——less 没有光标。如果您想使用实际的 vim 和一个混乱的解决方案,我发现了这个.
Vim: Reading from stdin...
它用黑客来压制。不过仍然有 YouCompleteMe 消息。您可能可以设置另一个-c
命令来关闭 YouCompleteMe。但我会忽略该消息。在较新的vim 版本中,您可以通过以下方式避免这种 hack
--not-a-term
:我用换行符清理了函数,因为这是我正在使用的版本。
或者你可以只使用neovim > v0.2.2:
您可能需要查看传递给自定义的 vim 选项。我从我列出的所有帖子中浏览了它们,然后选择了我喜欢的那些。或者你可以复制我。
您还可以解析
vim --version
以确定是使用 hack 还是--not-a-term
. 我不会在这里这样做。我目前的方法
如果您想将此 vim 方法设置为默认方法
MANPAGER
,请执行以下操作:在您的路径中添加这些可执行脚本:
有两个脚本,因为第一个用于一般分页(替换为less),而第二个用于手册页(具有手册页语法突出显示。
在您的 ~/.profile 中:
你也可以
export -f
使用我之前展示的函数,但它在 bash 中工作,而不是在 POSIX shell 中,所以你必须把它放在 .bash_profile 而不是 .profile 中。可以做类似的事情,
nvim
但除非要求,否则我不会在这里添加它。