Для поклонников Vim и Linux - удобный поиск по мануалу PHP

Гравицапа

elbirret elcno
Для поклонников Vim и Linux - удобный поиск по мануалу PHP

Если кто не знал, то нажав "K" в нормальном режиме, когда курсор находится над словом вим попытается выдать `man WORD`
Так вот man можно изменить и делается это следующим образом.
Качаем свежий мануал PHP (тот где много HTML файлов).
Кладём его куда-нить типа
~/.vim/manuals/php
в ~/.vim/ftplugin/php.vim прописываем типа

set keywordprg=/home/USER/.vim/bin/php_doc
А файл (исполняемый) /home/USER/.vim/bin/php_doc представляет собой
Код:
#!/bin/sh
FUNCTION=`echo $1 | sed 's/_/-/g'`
links -dump file:///home/USER/.vim/manuals/php/function.$FUNCTION.html | more
Теперь у вас есть удобная навигация по мануалу =)
 

boombick

boombick.org
Не завелось :(
Обнаружена ошибка при обработке /home/boombick/.vim/ftplugin/php.vim:
строка 1:
E518: Неизвестная опция: /home/boombick/.vim/bin/php_doc
Press ENTER or type command to continue
-~{}~ 17.04.07 12:17:

собственно сам php.vim
set keywordprg=/home/boombick/.vim/bin/php_doc
-~{}~ 17.04.07 12:19:

о! работает в виме, в гвиме никак... как в гвиме завести не подскажешь?
 

Гравицапа

elbirret elcno
boombick
links у тебя стоит?
пробовал вместо boombick USER, не помогло
Ну вообще, подразумевалось, что это "хом дира"...)
Покажи чего написал в
/home/boombick/.vim/bin/php_doc
и
/home/boombick/.vim/ftplugin/php.vim

-~{}~ 17.04.07 15:22:

У меня везде работает =)
Какие ошибки?
 

boombick

boombick.org
все, все заработало :) респект!!!

-~{}~ 17.04.07 12:29:

блин, все, теперь точно с вима никуда не уйду!! Чем дальше, тем больше возможностей открывается!!!
 

nail

Новичок
удобная навигация по табам

map <A-t> :tabnew<CR>
map <A-left> :tabp<CR>
map <A-right> :tabn<CR>
map <A-1> 1gt
map <A-2> 2gt
map <A-3> 3gt
map <A-4> 4gt
map <A-5> 5gt
map <A-6> 6gt
map <A-7> 7gt
map <A-8> 8gt
map <A-9> 9gt

-~{}~ 18.04.07 08:35:

Чтобы быстро находить все места, где используется функция или класс:
- если еще не установлен, ставим пакет GNU global
- копируем /usr/share/doc/global/examples/gtags.vim к себе в ~/.vim/plugin
- в консоли запускаем gtags находясь в корневой директории проекта
- используем команду ":Gtags -r тут-имя" для нахождения всех ссылок на это имя
- для перехода к определению используем ":Gtags тут-имя"
Для имен работает автокомплит, что особенно удобно :)

":GtagsCursor" - переход к определению функии или класса, на котором находится курсор - можно забиндить на кнопку
 

Гравицапа

elbirret elcno
удобная навигация по табам
А я вот не вкусил их превосходства над работы с буферами...=)
- если еще не установлен, ставим пакет GNU global
Имхо, гораздо удобнее и проще использовать ctags. + конечно taglist плугин к виму.
Ctrl+W Ctrl+] и у тебя в отделном фрейме определение функции.
 

nail

Новичок
Табы как-то привычнее :)
Ctags хорош, только он не умеет искать ссылки на функции/классы.
 

nail

Новичок
Автор оригинала: Гравицапа
Поясни на примере?
Например, хочется поменять агрументы функции myfunction, надо посмотреть в каких местах она вызывается и оценить.
Делаешь :Gtags -r myfunction, вим показывает все вызовы этой функции - по ним можно быстренько пробежать и посмотреть, легко ли будет поменять агрументы, ну или сразу тут же их и поменять.
 
Сверху