Ⅰ. 插件描述
(Short name F-Sy-H or FSH). Syntax-highlighting for Zshell – fine granularity, number of features, 40 work hours themesⅡ. 基本信息
|
Ⅲ. 安装方法
使用Vundle管理器安装
在你的.vimrc下添加:Plugin 'zdharma/fast-syntax-highlighting'
… 然后在Vim中运行以下命令:
:source %
:PluginInstall
对于Vundle版本 < 0.10.2,请用上面的Bundle替换Plugin。
使用NeoBundle管理器安装
在你的.vimrc下添加:NeoBundle 'zdharma/fast-syntax-highlighting'
… 然后在Vim中运行以下命令:
:source %
:NeoBundleInstall
使用VimPlug管理器安装
在你的.vimrc下添加:Plug 'zdharma/fast-syntax-highlighting'
… 然后在Vim中运行以下命令:
:source %
:PlugInstall
使用Pathogen管理器安装
在终端中运行以下命令:cd ~/.vim/bundle
git clone https://github.com/zdharma/fast-syntax-highlighting
Ⅳ. 文档说明

<br/>New: You can request a feature when donating, even fancy or advanced ones get implemented this way. [There are
reports](DONATIONS.md) about what is being done with the money received.
Fast Syntax Highlighting (F-Sy-H)
Feature rich syntax highlighting for Zsh.
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/highlight-much.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Table of Contents
Other Contents
News
15-06-2019
- A new architecture for defining the highlighting for specific commands: it now
uses abstract definitions instead of top-down, regular code. The first effect
is the highlighting for the
gitcommand it is now maximally faithful, it
follows thegitcommand almost completely.
Screencast- A new architecture for defining the highlighting for specific commands: it now
Installation
Manual
Clone the Repository.
git clone https://github.com/zdharma/fast-syntax-highlighting ~/path/to/fshAnd add the following to your zshrc file.
source ~/path/to/fsh/fast-syntax-highlighting.plugin.zshZinit
Add the following to your zshrc file.
zinit light zdharma/fast-syntax-highlightingHere's an example of how to load the plugin together with a few other popular
ones with the use of
Turbo,
i.e.: speeding up the Zsh startup by loading the plugin right after the first
prompt, in background:
zinit wait lucid for \
atinit"ZINIT[COMPINIT_OPTS]=-C; zicompinit; zicdreplay" \
zdharma/fast-syntax-highlighting \
blockf \
zsh-users/zsh-completions \
atload"!_zsh_autosuggest_start" \
zsh-users/zsh-autosuggestionsAntigen
Add the following to your zshrc file.
antigen bundle zdharma/fast-syntax-highlightingZgen
Add the following to your .zshrc file in the same place you're doing
your other zgen load calls in.
zgen load zdharma/fast-syntax-highlightingOh-My-Zsh
Clone the Repository.
git clone https://github.com/zdharma/fast-syntax-highlighting.git \
~ZSH_CUSTOM/plugins/fast-syntax-highlightingAnd add fast-syntax-highlighting to your plugin list.
Features
Themes
Switch themes via fast-theme {theme-name}.
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/theme.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Run fast-theme -t {theme-name} option to obtain the snippet above.
Run fast-theme -l to list available themes.
Variables
Comparing to the project zsh-users/zsh-syntax-highlighting (the upper line):
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/parameter.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/in_string.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Brackets
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/brackets.gif"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Conditions
Comparing to the project zsh-users/zsh-syntax-highlighting (the upper line):
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/cplx_cond.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Strings
Exact highlighting that recognizes quotings.
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/ideal-string.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
here-strings
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/herestring.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
exec descriptor-variables
Comparing to the project zsh-users/zsh-syntax-highlighting (the upper line):
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/execfd_cmp.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
for-loops and alternate syntax (brace {/} blocks)
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/for-loop-cmp.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Function definitions
Comparing to the project zsh-users/zsh-syntax-highlighting (the upper 2 lines):
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/function.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Recursive eval and $( ) highlighting
Comparing to the project zsh-users/zsh-syntax-highlighting (the upper line):
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/eval_cmp.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Chroma functions
Highlighting that is specific for a given command.
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/git_chroma.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
The chromas
that are enabled by default can be found
here.
Math-mode highlighting
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/math.gif"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Zcalc highlighting
<div style="width:100%;background-color:black;border:3px solid black;border-radius:6px;margin:5px 0;padding:2px 5px">
<img
src="https://raw.githubusercontent.com/zdharma/fast-syntax-highlighting/master/images/zcalc.png"
alt="image could not be loaded"
style="color:red;background-color:black;font-weight:bold"/>
</div>
Performance
Performance differences can be observed in this Asciinema recording, where a 10 kB function is being edited.
<div style="width:100%;background-color:#121314;border:3px solid #121314;border-radius:6px;margin:5px 0;padding:2px 5px">
<img src="https://asciinema.org/a/112367.png" alt="asciicast">
</div>
IRC Channel
Channel #zinit@freenode is a support place for all author's projects. Connect to:
chat.freenode.net:6697 (SSL) or chat.freenode.net:6667
and join #zinit.
