5-а. Привычное дружелюбно

Итак, в большинстве самых «дружелюбных к пользователю» редакторов и текстовых процессоров, ты осуществляешь операции «вырезать» и «вставить» с помощью клавиатурных комбинаций Ctrl-X и Ctrl-V. Абсолютно неинтуитивно, но все привыкли к этим сокращениям и считают это «дружелюбной» комбинацией.

И когда некто начинает использовать vi, ему кажется, что «d» для вырезания и «p» для вставки это не дружелюбно — не то, к чему этот некто привык.

Лучше ли сокращения vi? Да, на самом деле лучше.

Используя Ctrl-X, как ты собираешься вырезать слово из текущего документа (не используя мышку)?
От начала слова ты нажимаешь Ctrl-Shift-Right для выделения слова. Потом Ctrl-X чтобы вырезать его.
Каков подход vi? dw удаляет слово.

Хорошо, как насчёт вырезать пять слов, применяя Ctrl-X?

От начала группы слов Ctrl-Shift-Right, Ctrl-Shift-Right, Ctrl-Shift-Right, Ctrl-Shift-Right, Ctrl-Shift-Right, Ctrl-X

А что нужно в vi?

d5w

Подход vi намного более универсальный и в самом деле более интуитивный: «X» и «V» неочевидны и не ассоциируются с командами «вырезать» (англ. «Cut») и «вставить» (англ. «Paste»), в то время как «dw» для удаления слова (англ. «delete a word») и «p» для вставки обратно (англ. put, paste) — абсолютно очевидно. Но «X» и «V» это то, что мы все знаем, а vi хотя и использует лучший подход, непривычен. Следовательно, его называют «недружелюбным». Если нет знания других систем, близкое знакомство с виндо-подобными интерфейсами — это именно то, что делает их «дружелюбными». Кроме того, не следует забывать о проблеме 1: линукс совершенно необходимо отличается от виндоуса. И неизбежно, линукс всегда кажется менее «дружелюбным», чем виндоус.

Чтобы избежать проблемы 5-а, всё, что ты действительно можешь сделать, это попробовать запомнить: «дружелюбный к пользователю» не означает «того, к чему я привык». Пробуй действовать как обычно действуешь, но если что-либо не работает, как ты привык, приложи усилия к изучению софта так, как будто ты абсолютный новичок.

Комментарии (13)

+2
balamutick - 1 Ноябрь, 2009 - 15:19
Изображение пользователя balamutick.

Во-во...

Сначала как тупица сидишь и элементарный текстовый файл полчаса редактируешь постоянно смотря в шпаргалку и постоянно ошибаясь, пытаясь научиться этому VI.

А потом каждый авральный день(если допустим целый день нужно править настроечные файлы или писать какой-нибудь доклад) как человек разумный экономишь по полчаса.

Научиться грамотно работать с vi - это как слепой метод набора.

Тратишь уйму времени и нервов на обучение машинописи (в зависимости от тугодумия), а потом с каждым годом всё больше и больше дивидентов получаешь от того, что научился.

0
Гость - 4 Февраль, 2010 - 23:27

Очень интересная статья, но я не согласен с пониманием автора понятия "Дружелюбный интерфейс".
"Дружелюбный интерфейс" не подразумевает привычное.
Если вам на встречу пройдет красивая девушка и улыбнется, какой будет ваша минимальная подсознательная реакция......? Ясно, что как минимум вы улыбнетесь в ответ и оглянетесь!

Так же и программное обеспечение.
Представьте два простейших текстовых редактора в разных ОС с функциями вырезать, копировать и вставить, и никаких других, и без клавишных комбинаций.

В одной ОС эти функции скрыты в выпадающем меню "редактирование",
а в другой ОС на нижней панельке окна есть кнопки с надписями "Вырезать" "Копировать" "Вставить" в дополнение ко всему рядом с кнопками есть графические изображения: ножницы для "вырезать" итд.
Тем самым дружелюбность интерфейса второй программы будет понятно даже обезьяне. В случае с первым редактором придется поискать функцию в дроп-менюшках. Вдобавок нужно знать смысл слова редактирование, еще работа для мозга. Так что второй экземпляр программы будет дружелюбным а первый для продвинутых. Второй экземпляр обозначает свои функции явными способами, а первый нет. Я конечно утрирую, но старой бабушке будет гораздо проще пользоваться вторым экземпляром программы, так как там понятно, что вырезать это вырезать, и, что ножници олицетворяют(асоциируются) вырезание.
Однозначно, с точки зрения восприятия на подсознательном уровне мозг проще ориентируется в простой и обозначенной среде, подходящей для любого человека, даже не имеющего опыта работы с компьютером. Представьте винду или линукс вообще без графических обозначений и иконок, не зная японского я потрачу минут пять чтобы найти пасьянс в японской винде, а так, имея иконку карт понимаю что это пасьянс. Винда проявила дружелюбие :)

Комбинации клавиш не могут быть интуитивными вообще и впринципе так как не несут никаких обозначений, таже комбинация в win ctrl+c обозначает копирование не потому что буква С - это Copy по анлийски, для тех кто не знает английского это просто комбинация, поэтому и смысла в ctrl+copy нет.
Всему вопрос это удобство и эргономика. Поэтому и придумали мышку :), все под левой рукой.
К сведению_в microsoft некоторое аппаратное оборудование, ОС-и и друге серьезное обеспечение разрабатывается
с участием аналитиков, психологов, анатомов и других врачей.
Джойстик X-Box в мире признан идеальным и самым удобным для всех РУК, от него не болят пальцы от долгой игры.
Собственно поэтому в редактрах текста построенных на принципах мелкомягких простейшие комбинации расположены максимально близко к одной руке ctrl+z ctrl+x ctrl+c ctrl+v - эргономично и удобно.
Касательно комбинаций, тут вообще не стои говорить о дружелюбии, каждому удобно свое, поэтому лучше иметь в программах настраиваемые комбинации.

Я бы назвал статью "Привычное не всегда функционально" поскольку действительно не имея мышки, в привычных редакторах выполнить некоторые функции сложнее чем в VI, даже не сложнее, а медленее.

Про машинку лего тоже есть что сказать, но ладно не буду.

ps. Прошу не воспринимать как оскорбление или в обиду если чтото не так!

0
gadyuka - 9 Февраль, 2010 - 00:50
Изображение пользователя gadyuka.

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

0
ploop - 9 Февраль, 2010 - 15:37
Изображение пользователя ploop.

В общем согласен.
Не забывайте, что программа - это инструмент. А инструменты разные бывают.
Вы когда-нибудь оплачивали мобильник в платёжном терминале? Вспомните, после набора номера программа просит проверить его и дать согласие на продолжение. Это нормально и естественно.
А теперь представьте кассира, который работает на приёме платежей оператора, обслуживает около 70-80 человек в час (это реальные цифры) и его программу-терминал, с выскакивающим окошком типа "Вы уверены?" и активной кнопкой "нет" по дефолту. К концу рабочего дня его просто заберут в дурку.

Туда же может отправиться и пользователь, впервые в жизни пытающийся сделать что-то быстро в vi. Vi - это профессиональный инструмент, для программистов, сисадминов и т.д., для тех, кому приходится много и часто работать с простыми текстовыми файлами, и изучать его всем подряд просто нет смысла, ровно как нет смысла изучать слепой меттод набора текста, если работаешь грузчиком и лишь по вечерам трепишься с друзьями в одноклассниках...

0
Sakura-chan - 18 Сентябрь, 2010 - 11:49
Изображение пользователя Sakura-chan.

Хорошо, а если требуется выделить половину последнего предложения?
Зажать Ctrl+Shift+Left пок ане выделишь сколько надо.
А что в vi? Посчитать количество слов пальчиком на экране и ввести dXXw?

Не знаю, возможно есть нормальный способ в vi, я просто комментирую, что приведённый пример вызывает недоумение. Кто реально при выделении слов знает точное их количество (если их более 2-3)?

+1
balamutick - 18 Сентябрь, 2010 - 19:20
Изображение пользователя balamutick.

Зажать Ctrl+Shift+Left пок ане выделишь сколько надо. Чу-Чу ИЗЫДИ, ИЗЫДИ ВИНДОВОЕ ЮЗЕРЬЁ !!!

Какие нафиг извращения с пальце-ломанием ? Контроль+Регистр+лево, фу-фу-фу

Нажали:
v # перешли в режим ВИЗУАЛЬНОГО редактирования
w # для движения на одно Word слово Wперёд
b # для движения на одно слово Back обратно
УПР+F # Forward Вперёд на страницу вместе с выделением
УПР+B # Back Назад на страницу вместе с выделением
...

Блекджек безконечен, я гарантирую это.

Вот, на тему того, что А что в vi?

p.s. VI это наше всё. Пожалуй стоит таки сделать КМБ по редактору vi.

0
Sakura-chan - 18 Сентябрь, 2010 - 20:49
Изображение пользователя Sakura-chan.

Дык как бы это должно быть отражено в статье, а то из того примера, что в ней даётся, следует не то, что ожидалось. Статья ведь написана не для фанатов линукса, а наоборот, как руководство по преимуществам линукса для новичка. То есть надо приводить примеры, имеющие смысл для того, кто ничего не знает про vi. И такому человеку покажется этот пример странным. Типа "дык я что, считать слова должен?"

+2
balamutick - 18 Сентябрь, 2010 - 21:33
Изображение пользователя balamutick.

Основная статья, это пример, не более, а не пособие по vi.

0
knuckles - 19 Сентябрь, 2010 - 08:16
Изображение пользователя knuckles.

v # перешли в режим ВИЗУАЛЬНОГО редактирования
w # для движения на одно Word слово Wперёд
b # для движения на одно слово Back обратно
УПР+F # Forward Вперёд на страницу вместе с выделением
УПР+B # Back Назад на страницу вместе с выделением
...

Это как раз то, что автор статьи называет неочевидным и недружелюбным. Имхо, не намного дружественнее, чем с Ctrl+Shift.
Пример с d5w он привел действительно неудачный, т.к. во-первых надо знать число слов, которые ты хочешь выделить, а во-вторых, почему это пользователю нельзя пользоваться мышкой??? Тыкнул, зажал SHIFT и провел до конца строки - в стопицот раз дружественнее и универсальнее.

З.Ы. И опять же, сравнивать простой текстовый редактор с навороченным текстовым процессором, проверяющим орфографию, расставлюящим переносы, позволяющим вставлять изображения и практически любой OLE-объект - это, как минимум, неконструктивно.

0
dyug - 19 Сентябрь, 2010 - 09:56

Почему в ви нельзя пользоваться мышкой?
Отвечаю: ибо в момент появления ви мышек не было. :-)

Второе: вы еще не общались с удаленной консолью, которая откликается примерно через 5 секунд после ввода команды...
Феерическое зрелище, должен заметить.
Вот когда понимаешь, почему ви/вим вне конкуренции.
ибо тогда есть огромная возможность непередачи сложных команд типа ctrl+буква..

Просто после двух таких случаев я срочно пересел на ви, с его изучением. :-)

Да, на всякий случай для справки: у ви есть и графический интерфейс.

+1
balamutick - 19 Сентябрь, 2010 - 13:13
Изображение пользователя balamutick.

Перечитал исходную статью и понял: ну вы и тролли.
Там написано, чтобы выделить пять слов в винде, надо щёлкнуть так и так, потом пять раз вправо, а в VI - всего три буквы, а потом одна клавиша Paste.

Это конкретный пример. И я боюсь, что не вникая и не пользуясь vi это сложно понять (тем более, что им ещё надо научится пользоваться).

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

Отучился ездить на машине в автошколе, потом пользуешься этим инструментом долго и экономишь время. Иначе никак ! Но нет, все хотят, чтобы сразу можно было ездить, а на кладбище дороге разберёмся.

а во-вторых, почему это пользователю нельзя пользоваться мышкой??? Тыкнул, зажал SHIFT и провел до конца строки - в стопицот раз дружественнее и универсальнее. Первый vi = 1976 год, первая серийная мышь 1981. Как бы намекаэ.
Во-вторых, почему это пользователю нельзя пользоватся мышкой ? Всё можно, в графической среде точно (gVim), а без X нужно установить драйвер для мыши (gpm) и пользоваться таки мышкой.

Тыкнул, зажал SHIFT и провел до конца строки Если использовать в граф. среде, то gVim это точно умеет(вот именно так с shift-ом), в чистой консоли, см про драйвер мыши.

И опять же, сравнивать простой текстовый редактор с навороченным текстовым процессором, Это как покупать графическую станцию с лицензионным PhotoShop -ом за огромные бабки, чтобы потом лишь кадрировать пару фоток в месяц.

Не к тому, что офисный пакет не нужен, к тому, что он не нужен в большом количестве случаев: правки конфигов, написание заметок. Грузить программу под nnn-цать мегобайт...

Суть статьи: Пробуй действовать как обычно действуешь, но если что-либо не работает, как ты привык, приложи усилия к изучению софта так, как будто ты абсолютный новичок.

И вообще, не нравится vi (vim, gVim)
:q!

0
knuckles - 20 Сентябрь, 2010 - 08:03
Изображение пользователя knuckles.

dyug, balamutick, вы меня не поняли :-)
Когда появился vi я в курсе, про графический интерфейс и удаленную консоль тоже. И пользоваться всем этим я умею :-)
Моих мысли здесь две:
1. Сравнивать Word с vi также глупо, как сравнивать бальное платье с монтажной спецовкой - просто эти вещи предназначены для разных людей.
2. Понятно, что в vi мышка не нужна, но в Word'е ею можно с успехом пользоваться, а автор это исключает:
как ты собираешься вырезать слово из текущего документа (не используя мышку)?
Так можно и мерседес с жигулями сравнивать, говоря как ты собираешься завести мерседес (не используя ключ/кнопку зажигания)?
Это нечестное сравнение. Если ты хочешь показать преимущества vi перед Word'ом, то покажи это без оговорок, т.е. не лишая Word встроенной функциональности.

balamutick, про графический интерфейс автор ничего не говорит, о том и речь - он привел неудачный пример. Я НЕ говорю, что Word лучше, и я НЕ говорю, что суть статьи плохая, я говорю и повторяю еще раз: АВТОР ПРИВОДИТ НЕУДАЧНЫЕ ПРИМЕРЫ С ТОЧКИ ЗРЕНИЯ ПРОСТЫХ ПОЛЬЗОВАТЕЛЕЙ! Какими буквами мне это написать, чтобы стало понятно? :-) Вы отстаиваете vi/vim, а на него (редактор) никто не наезжает - он действительно хорош, наезжают на автора статьи (или даже не на самого автора, а на приводимые им примеры))))

P.S. Как технический специалист, я с вами полностью согласен - мне тоже проще vi или nano открыть, чтобы конфиги поправить, и консоль я люблю. Но ведь автор не для нас писал эту статью, а для людей, тех. спецами не являющимися? :-)

+1
balamutick - 20 Сентябрь, 2010 - 16:53
Изображение пользователя balamutick.

Ничего, когда нибудь люди поймут этот пример.
Да и вообще, сравнивать винду с линуксом, домохозяйку с програмером плохой пример.