LINUX.ORG.RU

Vim source code editing


1

0

Вот, будучи запаренным скриншотами с ЛОРа решил запостить свой. Редактор Vim, чистый и оригинальный, без различных наворотов вроде безрежимного редактирования а-ля "крем". Плюс к нему до фига примочек с vim.sf.net. Шрифты меня устраивают вполне...

З.Ы. Долой емакс! %)

>>> Просмотр (1024x768, 198 Kb)

Так, давай про все примочки! Как называется че делает и т.д.! В общем класс! Сам начал его настраивать но пока до такого уровня не дошел :)

svyatogor ★★★★★
()

в vim есть функция типа justify-full?

babai
()

Мне нравятся молодые и горячие поклонники Vim. При всем моем уважении к модернизированному vi я не могу расположиться тем же к его фанатам. Уж больно они оголтелые. Дай им волю и все будут редакировать только в виме, а людей с емаксом будут расстреливать. Впрочем, это понятно. Будучи вечно догоняющими, надо развить непримиримую идеологию, чтобы держаться и не тухнуть.

atoku ★★★
()

Очень приятно выглядит редактор, всё что нужно и ничего лишнего. Как будто создан для исходного текста. Может, в самом деле попробовать?...

theSoul ★★★
()
Ответ на: комментарий от atoku

> Дай им волю и все будут редакировать только в виме, а людей с емаксом будут расстреливать.

Зачем же сразу расстреливать? Просто сочетания клавиш в емаксе сильно напрягают. В остальном емакс я уважаю и даже иногда использую.

Ну а vim как-то проще и роднее. Главное, редактировать в нём у меня получается быстрее :)

> Будучи вечно догоняющими, надо развить непримиримую идеологию, чтобы держаться и не тухнуть.

А вот это уже слова фанатика емакса. (Я про "вечно догоняющими")

Vond ★★
()
Ответ на: комментарий от Vond

фу гадость какая...
да gedit с jedit красивее в сто тыщ мильонов раз.

anonymous
()

Класс! Сам юзаю вим для редактирывания сырцов но пока дашел только до прикручивания tagexplorer'a taglist пока только в перспективе :(

Begemotik
()

Не слушай никого. Делай так, как тебе улобно - даже можеш ногой в носу ковырять :-)

anonymous
()

Во, нормальный скриншот... как это не странно, но я только что закрыл практически такой же Vim и полез на ЛОР ;-) только я не особо люблю номера строк, нафиг они нужны, если из Error Window все равно на ошибку переходы есть ... А в целом -- респект

KipDblK
()

Ндя... Ужас...

Хотя похоже большая часть плагинов у меня стоит :]

2svyatogor: загляни в app-vim в портэдже.

IceD
()
Ответ на: комментарий от Vond

> (Я про "вечно догоняющими")

А так оно и есть по сути, емакс - платформа, вим - редактор с плагинами, динамический лисп против тупого C, это уже всё сказалось на возможностях адаптации.

Про кнопки - бинды осваиваются и настраиваются, а вот модальность - как врождённый дефект.

anonymous
()
Ответ на: комментарий от anonymous

ну так настроили бы один раз нормально :) чтоб большинство было довольно.

grustnoe ★★
()
Ответ на: комментарий от anonymous

> А так оно и есть по сути, емакс - платформа, вим - редактор с плагинами, динамический лисп против тупого C, это уже всё сказалось на возможностях адаптации.

Понятно. Мне пока не нужна такая платформа. Нужен просто хороший редактор. :)

> Про кнопки - бинды осваиваются и настраиваются, а вот модальность - как врождённый дефект.

Модальность - это то, что делает vim быстрым в редактировании (в отличие от всяких упомянутых тут jedit и gedit).

Vond ★★
()

vimrc свой покажи-ка.

anonymous
()

Я вот начал осваивать vim и, хотя не использую большинство его возможностей, уже другими редакторами пользоваться не могу. Использую его в основном для правки конфигов и для написания програм на Паскале (в универе у нас его дают) :). Пишу я в vim'е, но отлаживать приходится в bp7. Я прикрутил к виму fpc и спустя некоторое время догадался, что компилить надо командой :make % (поправьте, если не так). Но перед этим приходится сохранять файл. Вопрос ?1: Как сделать, чтобы ненадо было сохраняться перед компиляцией. Вопрос ?2: как сделать проход по строкам (F8 в bp). Хорошо бы все это повесить на кнопки, но лазить по манам, пока, нет времени... Тыкание носом в хорошую доку приветствуется :). Спасибо.

anonymous
()
Ответ на: комментарий от anonymous

>Вопрос ?1: Как сделать, чтобы ненадо было сохраняться перед компиляцией. Вопрос ?2: как сделать проход по строкам (F8 в bp). Хорошо бы все это повесить на кнопки, но лазить по манам, пока, нет времени... Тыкание носом в хорошую доку приветствуется :). Спасибо.

Лечится переходом на Emacs с ECB. Дока: переводы Отта, сайт lg (Emacs wiki) и меня нескромного статьи (вторая на подходе, как раз о ECB, компиляции и даже CVS).

atoku ★★★
()
Ответ на: комментарий от Vond

Кейбиндинги в емаксе очень даже удобны. Нужно только немного привыкнуть. В виме приходится набирать не меньше. ":syn on" фор екзампл.

mrdeath ★★★★★
()
Ответ на: комментарий от atoku

а чего ты так к этому ECB прирос? Всегда без него и писал и даволен как слон. :) IMHO, ничего полезного в нем нет.

mrdeath ★★★★★
()

Эта, а list<string*> пользовать не хорошо в плане создания кода безопасного для исключений. Лучше использовать list<boost::shared_ptr<string> > хотя будет немного медленней, зато никаких memory leaks ;-) И вообще, а чем list<string> не устроил?

my_itoa заменить на boost::lexical_cast<string>(i) Или посмотреть в сторону boost::format

И вообще boost.org - руль конкретный. И не надо своих велосипедов изобретать. Успехов :-)

anonymous
()

Хм. Это опять я. :-)

А смысл этого цикла while? Или это еще не законченый код?

А то получается - "программу циклом не испортишь" ;-)

anonymous
()

Фу как не красиво юзать графический вим... Хоть бы по отцовски, в консольке;)

anonymous
()

Ай - яй - яй... пользоваться постфиксным инкрементом с итераторами - это не просто дурной стиль... это разбозаривание ресурсов. Да и использование using namespace приводит к глюкам с линкерами типа того, что идет с "your bunny Microsoft Visual Studio 6.0".

eXOR ★★★★★
()
Ответ на: комментарий от anonymous

1. Про автосохранение. Открываеть файл компилятора $VIMHOME\Compiler\borland.vim - его меня тоже судьба заставляла в универе юзать - и вставляешь туда строку

setlocal autowrite

и он будет при :make сам сохраняться.

2. Про Trace и Step я сам не знаю, не слышал, но очень тоже интересует (правда, для java). gdb может как-то поможет.

3. Для повешивания на кнопки можно записать в .vimrc файл что-то типа:

map <F4> :cn<CR> map <F9> :make<CR> (у меня f4 - переход к следующей ошибке)

n21
()
Ответ на: комментарий от anonymous

> list<string*> пользовать не хорошо в плане создания кода безопасного
> для исключений.
Сделать его членом класса и в деструкторе очищать. Будет тебе exception safe код.

eXOR ★★★★★
()
Ответ на: комментарий от svyatogor

Кусок вимрц:

set mouse=a
set nobackup
set noswapfile
set nu!
set wrap!


Переключение буферов:

map <F2> :bprev<CR>
map <F3> :bnext<CR>
map <F4> :bdelete<CR>


Плугин copycppdecltoimpl: http://vim.sourceforge.net/script.php?script_id=437
(жмешь F10 на прототипе функции в классе - жмешь F10 на пустом месте и туда пихается болванка функции)
map <F10> :GHPH<CR>

Плугин таглист: emerge taglist - окошко слева
map <F11> :Tlist<CR>

Плугин "проект" - для загрузки многих файлов
map <F12> <Plug>ToggleProject



let g:proj_flags="imstc"
let generate_tags = 1


Это красота - чтобы курсор скакал при вводе скобочек
inoremap ) )<c-o>%<c-o>:sleep 100m<CR><c-o>%<c-o>a
inoremap } }<c-o>%<c-o>:sleep 100m<CR><c-o>%<c-o>a
inoremap ] ]<c-o>%<c-o>:sleep 100m<CR><c-o>%<c-o>a
inoremap > ><c-o>%<c-o>:sleep 100m<CR><c-o>%<c-o>a


Еще плугин quickhigh - обводит красным строчки с ошибкой.
Еще плугин ctags - в нижнем углу назване функции, в которой висит курсор.

Вроде все...

GogaN
() автор топика
Ответ на: комментарий от pihta

Про расцветки: emerge app-vim/colorschemes

GogaN
() автор топика
Ответ на: комментарий от atoku

Товарищи любители емакса! Про "долой емакс" - это была шутка! Не стоит так серьезно воспринимать! Я вот лично пользую емакс хотя бы из-за одного M-x doctor

%)

GogaN
() автор топика
Ответ на: комментарий от anonymous

Проект создавался еще и с бизоном. В бизоне лексическое значение - юнион. А в юнион класс хрен запихнешь %)

Поэтому указатели.

GogaN
() автор топика
Ответ на: комментарий от n21

2n21: Спасибо.

Еще одна проблема. Иногда приходится пользоваться вимом для винды. Так там при запуске :make command.com'у передается строка типа tpc % > C:/windows/temp/blabla.tmp . Но имя временного файла не раcпознается. Как сделать, чтобы запускалось так: tpc % > "C:\windows\temp\blabla.tmp" ?

anonymous
()

скриншот хороший - на 5 тянет.

НО про vim - да может и удобно, но не для меня - кейбиндинги? в emacs/jed - ^X^S , в vim надо выйти и сделать :w - не удобно ИМХО именно в vim - и таких примеров куча.

Про gedit/jedit - отстойно и неудобно - автоформатирования там Я и не видел - про кейбиндинги полчу - да и еще оно в консоле работать не будет - вообщем это в топку.

Я лично обычно в одном терминальчике - jed *.c, в другом jed *.h - мне так удобно.

alphex_kaanoken ★★★
()
Ответ на: комментарий от alphex_kaanoken

Всем приверженцам Emacs читать, переводить и бояцца! :

"...For many hackers, debugging is a painful activity, both mentally and physically. Hackers hack long hours. This prevents them from getting AIDS or addicted to crack but they are not immune to RSI, the Hacker's Disease. I bet overuse of the text editor Emacs is the cause for half of the RSI in East Cambridge, including that of its inventor, Richard Stallman. "

А вот и ссылка на статью из которой взята фраза.

http://web.media.mit.edu/~lieber/Lieberary/Softviz/CACM-Debugging/Already-Ful...

RSI - Repetitive Strain Injury (Туннельный синдром запястья если по русски)

Так шта... Save your hands, get your copy of Vim NOW!

anonymous
()
Ответ на: комментарий от anonymous

так это для тех кто неудобно сидит

у меня лично подставка под клавиатуру обязательная фитча - без нее никаких ухудщений не будет. А работаеться достаточно быстро. Да и в vim - там привыкать заново надо - время тратить которого и так мало - так что в лом.

alphex_kaanoken ★★★
()

Слушай, а как ты выводишь все ошибки в error window внизу? У меня по :make отдельное окно не появляется...

svyatogor ★★★★★
()
Ответ на: комментарий от svyatogor

> Слушай, а как ты выводишь все ошибки в error window внизу?

Судя по всему, это :cw Смотри :help quickfix

watashiwa_daredeska ★★★★
()

> Долой емакс! %)

В печку его, в печку! :)

P.S.

Burzum слухаем? Respect :)

Dselect ★★★
()

Коде Комплит

Уважаемые гуру! Люди добрыя!!! Мы сами не месныя!!!! Подскажите!!!

В каком редакторе в есть ПРАВИЛЬНЫЙ кодекомплит??? То есть что бы отпарсивал все хедеры, которые включены в файл и ничего более? %-)

Ну напрягает запоминать все методы во всех классах. И, с другой стороны, ждать когда оно пропарсит весь /usr/include тоже не очень хочецца %-)

anonymous
()

Vim и FluxBox RuleZz!! :-)

А я так и не могу привыкнуть к gvim'у... Хотелось бы, чтобы при запуске каждый раз использовалась не стандартная тема для подсветки, а Murphy (так вроде). Но что и куда для этого прописать я не нашел :(( И как между 2 и более документами переключаться, тоже не знаю... через меню очень неудобно... Может кто знает? :-)

2alphex_kaanoken:
> в vim надо выйти и сделать :w - не удобно ИМХО именно в vim - и таких примеров куча.

Мне поначалу тоже это очень не нравилось... но сейчас привык уже... хотя можно это навешать и на другую клавишу...

php-coder ★★★★★
()
Ответ на: Коде Комплит от anonymous

>То есть что бы отпарсивал все хедеры, которые включены в файл и ничего
>более? %-)
Такого уровня может быть и нет, но перепарсивать весь /usr/include и не надо. man ctags.

2 php-coder:
:help mkvimrc

eXOR ★★★★★
()
Ответ на: комментарий от php-coder

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

В ~/.gvimrc пишется что-нибудь такое:

colorscheme blah

> И как между 2 и более документами переключаться

:bu[ffer] blah.cpp

Dselect ★★★
()

меня счас стошнит ~8-[ ]

на кой йух так ипаться с настройкой, если можно просто запустить, например, kdevelop? :))

и вообще, mcedit + gdb --tui правят миром =)

deil
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.