Ⅰ. 插件描述
Vim plugin: Easily create custom headlines, foldtext, toc, etcⅡ. 基本信息
|
Ⅲ. 安装方法
使用Vundle管理器安装
在你的.vimrc下添加:Plugin 'bimbalaszlo/vim-eightheader'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall
对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。
使用NeoBundle管理器安装
在你的.vimrc下添加:NeoBundle 'bimbalaszlo/vim-eightheader'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall
使用VimPlug管理器安装
在你的.vimrc下添加:Plug 'bimbalaszlo/vim-eightheader'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall
使用Pathogen管理器安装
在终端中运行以下命令:cd ~/.vim/bundle
git clone https://github.com/bimbalaszlo/vim-eightheader
Ⅳ. 文档说明
= EightHeader
Easily create custom headlines, foldtext, toc, etc.
- https://gitlab.com/bimlas/vim-eightheader (main repository)
- https://github.com/bimlas/vim-eightheader (mirror, please star if you like it)
- http://www.vim.org/scripts/script.php?script_id=4930 (please rate if you using it)
To use EightHeader just move the cursor to the line which you want to modify (hereinafter line), then call it:
[source]
EightHeader( {length}, {align}, {oneline}, {decor}, {marker}, {str} )
{length} Length of the header.
{align} Alignment of text.
{oneline} If false, then underline the {line} with {decor}.
{decor} Decorator text to fill with.
{marker} Extra content after decotRightEnd.
{str} Replace the content of {line} with this.
An example with {oneline} set to true (1) (s:str means the original line,
see EightHeaderVars for details):
[source]
call EightHeader( 78, 'center', 1, ['l ', 'decor', ' r'], ' m', '=" ".s:str." "' )
l decordecordecordecordeco TEXT IN THE LINE cordecordecordecordecord r m
... and false (0):
[source]
call EightHeader( 78, 'center', 0, ['l ', 'decor', ' r'], ' m', '' )
TEXT IN THE LINE ml decordecordecordecordecordecordecordecordecordecordecordecordecordec r
If you don't like the default 'foldtext' you can customize it by setting toEightHeaderFolds().
For example the closed folds looks like this by default:
[source]
+-- 45 lines: Fold level one
+--- 67 lines: Fold level two
If you would like to change it to this kind:
[source]
Fold level one................45 lines
Fold level two..............67 lines
... then you can use this function:
[source]
let &foldtext = "EightHeaderFolds( '\=s:fullwidth-2', 'left', [ repeat( ' ', v:foldlevel - 1 ), '.', '' ], '\= s:foldlines . " lines"', '' )"
An alternative usage for example formating a vimhelp table of contents:
[source]
Options;options
Default mappings;maps
Launch nuclear strike;apocalypse
... to this:
[source]
Options........................................................|options|
Default mappings..................................................|maps|
Launch nuclear strike.....................................|apocalypse|
Visually select the lines, than:
[source]
call EightHeader( 78, "left", 1, ".", "\='|'.matchstr(s:str, ';\@<=.').'|'", "\=matchstr(s:str, '.;\@=')" )
== Install
Manually:
https://github.com/bimlas/vim-eightheader/archive/master.zip[Download]
and unzip the subdirectories into '~/.vim'.
Don't forget to regenerate helptags:
[source]
:helptags ~/.vim/doc
https://github.com/tpope/vim-pathogen[Pathogen]:
... into '~/.vim/bundle' (or to your specific pathogen directory).
Don't forget to regenerate helptags:
[source]
:Helptags
https://github.com/gmarik/Vundle.vim[Vundle]:
Add these lines to your '.vimrc' after call vundle#rc():
[source]
Plugin 'bimlas/vim-eightheader'
Open vim again, then call :PluginInstall