LINUX.ORG.RU

Хочу научиться пользоваться Vi iMproved

 


10

4

при этом мне кажется, что людей дико обманывают, заставляя как обезъянок постоянно жать Insert, Escape, Shift + ;wEnter. а старый добрый Ctrl + S уже занят терминалом, вот жеж незадача.

нравится vim, потому что под него одного есть любимая цветовая схема, нравится vim из-за его потенциала и расширяемости. но когда мне надо писать код, а не выкаблучиваться перед самим собой и не дрочить на цветные буковки на экране, я использую leafpad. но хочу просто писать код так же в vim.

щито поделать? сейчас подумываю о том, чтобы забиндить на F5 комбо с escape, сохранением файлика, запуск .sh скрипта для выполнения какой-то задачи и возрат в обратный режим. хоть так..

алсо, реквестирую годноту для vim: must have скрипты всякие, плугины, какими вы пользуетесь. чтобы созерцать хакерскую консольку с vim было в удовольствие.

ЗЫ: vim использую 4 года, то есть, не надо тут рассказывать как из него выйти :) просто интересует ваша практика, как им пользуетесь вы. может я чего-то упустил..

★★★★★

Esc + :q! - выходим
vimtutor - учимся
vim $file - редактируем файл

ubuntuawp ★★ ()

vimtutor - на нём и учился - годная штука.

алсо, реквестирую годноту для vim: must have скрипты всякие, плугины, какими вы пользуетесь. чтобы созерцать хакерскую консольку с vim было в удовольствие.

Держи мой vimrc с комментами на русском: http://pastebin.com/bX192beV
В конце указаны используемые плагины. Если что-то непонятно, спрашивай.

najlus ★★★★★ ()

Оставлю здесь пару скопипащенных полезных штуковин:

Копипаста 1:

Ctrl+J/K - тащит визуальное выделение на строчку вверх или вниз

" enabling moving line up or down
nnoremap <C-k> mz:m-2<CR>`z==
inoremap <C-j> <Esc>:m+<CR>==gi
inoremap <C-k> <Esc>:m-2<CR>==gi
vnoremap <C-j> :m'>+<CR>gv=`<my`>mzgv`yo`z
nnoremap <C-j> mz:m+<CR>`z==
vnoremap <C-k> :m'<-2<CR>gv=`>my`<mzgv`yo`z

Копипаста 2:

* и # начинают работать по отношению ко всему выделенному тексту, а не только текущему слову

http://vim.wikia.com/wiki/VimTip171

noomorph ()

но когда мне надо писать код, а не выкаблучиваться перед самим собой и не дрочить на цветные буковки на экране, я использую leafpad

чего тебе в виме не хватает-то? у меня большой проект на 7500+ файлов в vim'е, и желания переходить на WebStorm пока особо нету.

noomorph ()

vim — он как хорошая мощная зенитка: долго разворачивается с нерабочего положения, но когда развёрнут — вражины, держитесь!

KennyMinigun ★★★★★ ()

при этом мне кажется, что людей дико обманывают, заставляя как обезъянок постоянно жать Insert, Escape, Shift + ;wEnter. а старый добрый Ctrl + S уже занят терминалом, вот жеж незадача.

http://www.viemu.com/a-why-vi-vim.html

anonymous ()

реквестирую годноту для vim

apt-get purge vim
apt-get install pluma
ddos3 ()

запуск .sh скрипта для выполнения какой-то задачи

Запуск текущего файла: :!./%, или так :!perl %. Зачем куда-то выходить? :)

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

apt-get purge vim
apt-get install pluma

Ты бы ещё notepad.exe посоветовал.

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

А пищать как?

:help beep

у меня visualbell, жена и так на стук кнопок по ночам ругается.

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

vim — он как хорошая мощная зенитка: долго разворачивается с нерабочего положения, но когда развёрнут — вражины, держитесь!

что там «разворачивать»? scp ~/.vimrc user@server:

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

Запуск текущего файла

всё хочу на F5 повесить, и что-бы собирала если *.cpp, а если есть Makefile то make делала.

emulek ()

при этом мне кажется, что людей дико обманывают, заставляя как обезъянок постоянно жать Insert, Escape, Shift + ;wEnter.

Мне кажется, тебя обманули, подсунув неудобную клавиатуру.

vurdalak ★★★★★ ()

осиль movements и операторы (сверху слева на картинке)

Расширяемость не нужна

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

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

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

А что не так с плюмой? Память не жрет, работает стабильно, все нужные плагины под нее есть. Чего еще надо для счастья?

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

Чего еще надо для счастья?

Изкоробочная способность пищать и портить текст.

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

Так делай везде мейкфайл, для сипипей пусть собирает, а для скриптовых ничего не делает. И в обоих случаях добавляй цель run. Нафига редактору вычислять что там варится в сорцах?

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

А что не так с плюмой? Память не жрет, работает стабильно, все нужные плагины под нее есть. Чего еще надо для счастья?

подсветку sed-скриптов. Вот например: http://emulek.github.io/sed/img/snapshot13.png

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

apt-get purge vim
apt-get install pluma

клон gedit вместо Vim? наркоман штоле?

q11q11 ★★★★★ ()

но когда мне надо писать код, а не выкаблучиваться перед самим собой и не дрочить на цветные буковки на экране, я использую leafpad. но хочу просто писать код так же в vim

Звучит как «хочу научиться ездить на велосипеде, но когда мне нужно куда-то добраться, я слезаю с него и веду его пешком».

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

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

Хорошая, мощная зенитка, нацеленная в ногу пользователя.

thesis ★★★★★ ()

при этом мне кажется, что людей дико обманывают, заставляя как обезъянок постоянно жать Insert, Escape, Shift + ;wEnter

Я использую vim для правки конфигов или написания простых скриптов. Не будучи программистом. Иногда пишу в нем свои мысли. И мне «постоянно жать Insert, Escape, Shift + ;wEnter» кажется дико удобным. Я хочу на работе иметь такой же интерфейс в MS WORD. Я регулярно после ввода текста в ворде жму ESC и пытаюсь набрать :wENTER. И ругаюсь матом, когда не происходит то, что я задумал.

но когда мне надо писать код, а не выкаблучиваться перед самим собой и не дрочить на цветные буковки на экране, я использую leafpad

vim использую 4 года

vim не для тебя, смирись. Цветовые схемы, расширяемость и прочие фишки умеет куча редакторов. Просто найди их.

another ★★★★★ ()
Последнее исправление: another (всего исправлений: 1)
Ответ на: комментарий от emulek

Умеет он подсветку. sed из коробки нет, но ничего не мешает добавить. Алсо, успокойся уже со своими sed-скриптами. Они у тебя все равно не работают ;)

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

долго разворачивается

хватит уже запускать вим на холодильнике

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

Нет, мне просто нужен простой и удобный редактор, с которым можно сосредоточиться на том что я пишу, а не как я это пишу.

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

пищать

для этого у меня есть beep

портить текст

а для этого - cat /dev/urandom а комбайн, который умеет все вместе, но делает это плохо, - это не юникс-вей :)

ddos3 ()

Мне очень сильно помогла эта статья http://stevelosh.com/blog/2010/09/coming-home-to-vim/

В моем .vimrc почти дословная копипаста кусков оттуда. До этого тоже очень долго ходил вокруг да около.

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

хватит уже запускать вим на холодильнике

А чем мне еще конфиг программы заморозки править?

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

Я тоже когда осваивал пытался искать такие статьи, но со временем пришел к мысли, что вим это не редактор, а конструктор редакторов (хоть и похожих в общих чертах). После этого я тупо проштудировал почти весь мануал, а в соседнем окне тут же принимал решения по поводу значений переменных, прямо в порядке чтения. Ушло времени не сказать что много, может часа два в сумме, зато получилось именно то, что нужно.

Вся беда начинающих вимеров в страхе перед огромностью полного мана, который кстати совсем не такой уж большой, и они ограничиваются тутором, который всего лишь тутор чтобы влиться в тему. Надо хорошо знать два вима: дефолтный (на всякий случай) и свой. Нет большого смысла обмениваться конфигами — у всех свои предпочтения и исторические привычки, проще один раз на всю жизнь сделать свой, не опираясь на чужие мнения — в чужом все равно будет не то.

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

Фактически, тутор нужен для того, чтобы научиться ходить по тегам хелпа, после чего создать конфиг с помощью дефолтного вима, больше ни для чего ;)

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

проще один раз на всю жизнь сделать свой, не опираясь на чужие мнения — в чужом все равно будет не то.

Чтобы сделать свой надо четко понимать что тебе нужно. Прелесть чужих — они постепенно проясняют ситуацию. Кстати про один раз:

~/backup[master]$ git log .vimrc | grep commit | wc -l
46

Это за год. Да, темпы постепенно снижаются, но все равно раз в неделю что-то правится

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

И

Вся беда начинающих вимеров

В том что они ждут большой волшебной кнопки, но чудес не бывает.

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

Хорошая, мощная зенитка, нацеленная в ногу пользователя.

Так я и говорю: разворачивать надо, но долго :)

KennyMinigun ★★★★★ ()

Также надо понять, что вим это лишь редактор, а не система сборки или ide. Он часть экосистемы, в которую можно интегрировать греп, мейк, тагсы, сископ и прочие гнутулзы, но он не претендует на роль вещи в себе — всю обвязку все равно нужно освоить как самостоятельную среду. Мапы и плагины помогут решать острые задачи, но не заменят полноценности шелла как среды разработки. Часть функционала нужно выносить в шелл, например алиасы на rcs и мейк-таргеты, просто представь, что альт-таб и альт-ф2 это шорткаты среды, которая также имеет режимы: вим-режим, гдб-режим, шелл-режим и прочие.

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

Умеет он подсветку.

за то Over9000 фич не умеет. Даже смотреть не стану.

Они у тебя все равно не работают

алсо 4.2, УМВР.

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

Нет, мне просто нужен простой и удобный редактор, с которым можно сосредоточиться на том что я пишу, а не как я это пишу.

vim такой и есть. Никто не заставляет юзать сразу все фичи.

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

а для этого - cat /dev/urandom а комбайн, который умеет все вместе, но делает это плохо, - это не юникс-вей :)

попробуй shuf

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

и да, в этой вашей хрени есть такие штучки как :! и !!

?

emulek ()

Shift+ZZ - выход с сохранением Shift+ZQ - выход без сохранения

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