让BASH,VIM美美的Powerline

简介:

前言

 鉴于BASH及其周边强大的工具以及VIM高效快捷,加上现在我工作重心转移到前端开发上,因此我华丽地转向Linux阵营(当然从最傻瓜式的Ubuntu开始啦!)。但BASH和VIM默认样式确实颜值太低,功能强大固然重要,但在这看脸的时代谁不爱美呢?那么我们先拿状态栏来开刀吧,而刀就是强大酷炫的Powerline本尊了。

Powerline是什么?

 Powerline是个stateless status line,即可以配置到BASH,ZSH,VIM等上,而不像vim-powerline那样仅能用于vim.

安装Powerline

1.先保证python版本在2.7+

$ python --version

2.安装pip,并通过pip安装powerline

$ sudo apt install pip
$ pip install powerline-status

安装/配置字体

 说起样式怎能少了字体呢?而且Powerline中还用到特殊的字符,需要特定的字体来配合才能达到最佳显示效果。

$ git clone https://github.com/powerline/fonts &&
./fonts/install.sh

然后到Profiles -> Profile Preferences选择合适的xxx for powerline的字体即可。

Powerline 4 BASH

 安装好powerline后,就是配置.bashrc了。

$ cat >> .bashrc << EOF
source $(pip show powerline-status | awk '/Location:/{print $2 "/powerline/bindings/bash/powerline.sh"}')
EOF

Powerline 4 VIM

 相对BASH,将Powerline配置到VIM会复杂一些。首先要准备一个支持Python2的VIM,具体操作请参考《让VIM支持Python2 by update-alternatives》。然后

$ cat >> .vimrc << EOF
set rtp+=$(pip show powerline-status | awk '/Location:/{print $2 "/powerline/bindings/vim"}')

" These lines setup the environment to show graphics and colors correctly.
set nocompatible
set t_Co=256
 
let g:minBufExplForceSyntaxEnable = 1
python from powerline.vim import setup as powerline_setup
python powerline_setup()
python del powerline_setup
 
if ! has('gui_running')
   set ttimeoutlen=10
   augroup FastEscape
      autocmd!
      au InsertEnter * set timeoutlen=0
      au InsertLeave * set timeoutlen=1000
   augroup END
endif
 
set laststatus=2 " Always display the statusline in all windows
set guifont=Inconsolata\ for\ Powerline:h14
set noshowmode " Hide the default mode text (e.g. -- INSERT -- below the statusline)
EOF

总结

最终的效果为:
347002-20161112164833530-936602644.png

 尊重原创,转载请注明来自:http://www.cnblogs.com/fsjohnhuang/p/6057013.html^_^肥仔John

感谢

为Bash和VIM配置一个美观奢华的状态提示栏

如果您觉得本文的内容有趣就扫一下吧!捐赠互勉!

posted @ 2016-11-14 10:08 ^_^肥仔John 阅读( 1144) 评论( 0) 编辑 收藏
 

公告

肥仔John@github
作品:
本文转自 ^_^肥仔John博客园博客,原文链接: http://www.cnblogs.com/fsjohnhuang/p/6057013.html,如需转载请自行联系原作者
 
相关文章
|
4月前
|
Linux Shell Windows
4:Bash shell命令-步入Linux的现代方法
4:Bash shell命令-步入Linux的现代方法
53 0
|
6月前
|
关系型数据库 MySQL Shell
【Linux命令】-bash: mysql: command not found
【Linux命令】-bash: mysql: command not found
56 0
|
8月前
|
Ubuntu 安全 Linux
不用安装虚拟机,直接在Windows上面运行Linux Bash Shell,嗯!真香!!!
不用安装虚拟机,直接在Windows上面运行Linux Bash Shell,嗯!真香!!!
152 0
|
1天前
|
Java Shell Linux
【linux进程控制(三)】进程程序替换--如何自己实现一个bash解释器?
【linux进程控制(三)】进程程序替换--如何自己实现一个bash解释器?
|
14天前
|
存储 Shell Linux
【攻防世界】unseping (反序列化与Linux bash shell)
【攻防世界】unseping (反序列化与Linux bash shell)
|
2月前
|
Linux Shell
mac/linux提示bash: telnet: command not found
mac/linux提示bash: telnet: command not found
|
9月前
|
Kubernetes Shell Linux
linux中sh/bash 进程为何不接受kill SIGTERM
在k8s的优雅终止中,如果容器的入口进程是sh 或者bash,需要注意你设定的gracefulterminate是无效的
105 0
|
10月前
|
Java Shell Linux
如何在 Linux 中使用 Bash For 循环
如何在 Linux 中使用 Bash For 循环
90 0
|
10月前
|
Unix Shell Linux
Linux中sh与bash的区别(详细介绍)
Linux中sh与bash的区别(详细介绍)
318 0
|
11月前
|
Shell Linux
Linux pip命令报错 -bash: pip: command not found
Linux pip命令报错 -bash: pip: command not found
255 0