Проблемы установки Powerline для Vim/Tmux на Mac OSX 10.10.5
Я несколько раз пытался следовать инструкциям по установке Powerline, изложенным здесь, но независимо от того, что я делаю, эта строка состояния просто не появляется.
Я нахожусь на Yosemite и пытаюсь установить Powerline для Vim с Tmux для среды разработки Python.
Вот мой файл ~/.vimrc:
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
Вот мой файл ~/.tmux.conf:
source '{repository_root}/powerline/bindings/tmux/powerline.conf'
Я вручную установил шрифты (у меня просто не работал скрипт install.sh), который вы можете найти здесь.
Все, что я вижу в Tmux, это просто стандартная зеленая линия по умолчанию с bash, именем пользователя и информацией о дате. Я знаю, что, возможно, я здесь упускаю что-то очевидное, но есть ли какие-то предложения по поводу того, что мне нужно посмотреть или исправить?
3 ответа
Если вы не хотите попробовать предложение Ронкага попробовать vim-Airlines, вот несколько вещей, которые помогут вам правильно настроить Powerline:
1. Ты ~/.vimrc выглядит немного забавно, как будто он может упустить некоторые вещи. Вот мой для справки:
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
" plugin on GitHub repo
Plugin 'tpope/vim-fugitive'
" Git plugin not hosted on GitHub
Plugin 'git://git.wincent.com/command-t.git'
" All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
" To ignore plugin indent changes, instead use:
"filetype plugin on
"
" Brief help
" :PluginList - lists configured plugins
" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
"
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line
source /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/powerline/bindings/vim/plugin/powerline.vim
set laststatus=2
if has("gui_running")
let s:uname = system("uname")
if s:uname == "Darwin\n"
set guifont=Inconsolata\ for\ Powerline:h15
endif
endif
set guifont=Inconsolata\ for\ Powerline:h15
let g:Powerline_symbols = 'fancy'
set encoding=utf-8
set t_Co=256
set fillchars+=stl:\ ,stlnc:\
set term=xterm-256color
set termencoding=utf-8
"these are taken from fullstackpython.com
" enable syntax highlighting
syntax enable
" show line numbers
set number
" set tabs to have 4 spaces
set ts=4
" indent when moving to the next line while writing code
set autoindent
" expand tabs into spaces
set expandtab
" when using the >> or << commands, shift lines by 4 spaces
set shiftwidth=4
" show a visual line under the cursor's current line
set cursorline
" show the matching part of the pair for [] {} and ()
set showmatch
" enable all Python syntax highlighting features
let python_highlight_all = 1
2. То, что у вас есть в файле ~/.tmux.conf, тоже выглядит неправильно. Вы должны указать фактический путь к файлу, где находится файл powerline.conf. Например, мой выглядит так:
source /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/powerline/bindings/tmux/powerline.conf
3. Предполагая, что вы правильно установили все шрифты из пакета fonts (вы должны дважды проверить, так как вы сделали это вручную), и это может быть очевидным, но не забудьте выбрать шрифт Powerline в настройках терминала! Любой шрифт с надписью "для powerline" должен работать.
Я предлагаю вам попробовать Vim-Airlines. Он полностью написан на vimscript и очень легок по сравнению с Powerline. Здесь нет зависимости от python, ее очень легко настроить и она отлично работает из коробки.
Он очень хорошо интегрируется с другими плагинами, такими как tmuxline, promptline,
Python 2.7 отсутствует в более новых версиях OSX, поэтому мне пришлось установить Powerline с помощью Python3, как показано ниже (обратите внимание, что я используюpip3
нетpip
):
brew install python
pip3 install powerline-status
Первая команда выше установила для меня Python 3.10. У меня уже был Python 3.9, поэтому я не думаю, что первая строка нужна.
Это установило привязки Powerline под/Users/{replace_your_user_name}/Library/Python/3.10/lib/python/site-packages/powerline/bindings/
В.tmux.conf
Я добавил эту строку:
source '/Users/{replace_your_user_name}/Library/Python/3.10/lib/python/site-packages/powerline/bindings/tmux/powerline.conf'
Это не сработало, пока я не добавил папку, содержащуюpowerline-config
кPATH
. Все заработало после того, как я добавил это в свой.zshrc
export PATH=$PATH:/Users/{replace_your_user_name}/Library/Python/3.10/bin