Несколько предложений по юзабилити №2

Модератор: motyara

Аватара пользователя
Fuhrer
Охотник за багами
Сообщения: 127
Зарегистрирован: Ср мар 03, 2010 12:51 am

Re: Несколько предложений по юзабилити №2

Сообщение Fuhrer »

Qwertiy писал(а):Интересно. Скачал. Скомпилировал. Получил сообщение о том же трояне. Что за язык даже не представляю, поэтому запускать не буду.
Не понятна стратегия. Если вы не доверяете автору оболочки и компилятора, тогда ошибкой был уже сам запуск оболочки. Если не доверяете мне и не желаете разбираться с самой схемой программы - посмотрите на исходный код (откройте *.sha Блокнотом) - там просто негде запрятать зловред в принципе.
Если всё же решитесь - не обязательно "рисковать": всегда есть пункт контекстного меню "Запуск от имени", и разные программные песочницы вроде того, на который напоролся wolf7777 (см. баги).
А то, что у Кошмарского большой процент не только полезных, но и ложных срабатываний - давно не секрет.
Qwertiy писал(а):Но, пожалуй, в этом лиалоге всё-таки надо кое-что поменять
Да, это меня тоже напрягает. Как минимум, нужна возможность хоть как-то увидеть полный путь, даже ценою лишнего действия (Имхо это некритично, т.к. полный путь смотреть нужно не часто). А ещё меня здесь напрягает отсутствие пути у копируемого файла - слишком малоинформативно. Хотя тоже можно самому догадаться. Но всё же лучше указывать.
Qwertiy писал(а):PS: Вы заметили, что это уже 15-е сообщение в этой теме, а Макс Дизель ещё не ответил в ней ни на одно предложение?
Я боюсь другого: он поленится перечитывать десяток страниц наших с Вами рассуждений, и в конце концов "рубанёт с плеча". Это будет обидно.
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Fuhrer писал(а):Не понятна стратегия. Если вы не доверяете автору оболочки и компилятора, тогда ошибкой был уже сам запуск оболочки. Если не доверяете мне и не желаете разбираться с самой схемой программы - посмотрите на исходный код (откройте *.sha Блокнотом) - там просто негде запрятать зловред в принципе.
Блокнотом я открывал. Там слишком много "магических" констант. Разбираться в незнакомом (и, вероятно, малоиспользуемом) языке не хочется. Тем более, из того что первая версия успешно проходит проверку, следует, что во втором файле что-то не так... Конечно, это не обязательно вирус, но добавлять такую программу к исключениям, или приостанавливать защиту на время её работы я не собираюсь. К тому же в этом нет особого смысла. Из Ваших сообщений вполне понятно что она делает и как.
Fuhrer писал(а):Если всё же решитесь - не обязательно "рисковать": всегда есть пункт контекстного меню "Запуск от имени", и разные программные песочницы вроде того, на который напоролся wolf7777 (см. баги).
Я понятия не имею, как создать песочницу...
Fuhrer писал(а):А ещё меня здесь напрягает отсутствие пути у копируемого файла - слишком малоинформативно. Хотя тоже можно самому догадаться. Но всё же лучше указывать.
Согласен.
Fuhrer писал(а):Я боюсь другого: он поленится перечитывать десяток страниц наших с Вами рассуждений, и в конце концов "рубанёт с плеча". Это будет обидно.
Я уверен, что он читает сообщения сразу... Просто не отвечает... Не лучший знак...

PS: Вот простой пример, как незнание некоторых особенностей языка может скрыть ошибку или, наоборот, создать ощущение ошибки, когда её нет.

Код: Выделить всё

unsigned q;
int a[] = {0,1,2,3,4,5,6,7};
Только один из следующих вариантов не выполняет поставленную задачу:

Код: Выделить всё

for(q=7; q!=-1; --q)
  printf("%d ", a[q]);

Код: Выделить всё

for(q=7; q>=0; --q)
  printf("%d ", a[q]);

Код: Выделить всё

for(q=7; q+2!=!!(q+2); --q)
  printf("%d ", a[q]);

Код: Выделить всё

for(q=7; q+1; --q)
  printf("%d ", a[q]);
Вы знаете, какой именно?
Аватара пользователя
Fuhrer
Охотник за багами
Сообщения: 127
Зарегистрирован: Ср мар 03, 2010 12:51 am

Re:

Сообщение Fuhrer »

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

Код: Выделить всё

unsigned q;
int a[] = {0,1,2,3,4,5,6,7};
Только один из следующих вариантов не выполняет поставленную задачу:

Код: Выделить всё

for(q=7; q!=-1; --q)
  printf("%d ", a[q]);

Код: Выделить всё

for(q=7; q>=0; --q)
  printf("%d ", a[q]);

Код: Выделить всё

for(q=7; q+2!=!!(q+2); --q)
  printf("%d ", a[q]);

Код: Выделить всё

for(q=7; q+1; --q)
  printf("%d ", a[q]);
Вы знаете, какой именно?
Увы, не знаком с предложенным языком, поэтому не могу адекватно судить. В частности, мне непонятна конструкция "!!(q+2)", поэтому могу только догадываться. Из контекста вопроса могу предположить, что не сработает последний вариант - не во всех языках нулевой вариант формулы эквивалентен условию с отрицательным результатом. То есть "1-1" даст "0", а "1=2" даст "False", что не всегда эквивалентно. Но это просто догадка, с языком я не знаком.
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Fuhrer писал(а):Увы, не знаком с предложенным языком, поэтому не могу адекватно судить. В частности, мне непонятна конструкция "!!(q+2)", поэтому могу только догадываться. Из контекста вопроса могу предположить, что не сработает последний вариант - не во всех языках нулевой вариант формулы эквивалентен условию с отрицательным результатом. То есть "1-1" даст "0", а "1=2" даст "False", что не всегда эквивалентно. Но это просто догадка, с языком я не знаком.
Язык - Си. Восклицательный знак означает лочическое отрицание. Знак != не равно. Преобразование bool в int и обратно корректно. Я бы не стал писать код, который не компилируется.
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Кстати, 0 и false эквивалентны, а ответ на поверхности, хотя в глаза не бросается из-за кажущейся очевидности...
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Re: Песочница

Сообщение Qwertiy »

Предложенная Вами песочница провалилась на программе:

Код: Выделить всё

#include <cstdlib>

int main()
{
char s[]="subst a: c:\\temp";

for(s[6]='a'; s[6]<='z'; ++s[6])
  system(s);

return 0;
}
Все диски были успешно созданы, правда медленнее чем обычно.
Аватара пользователя
Fuhrer
Охотник за багами
Сообщения: 127
Зарегистрирован: Ср мар 03, 2010 12:51 am

Re:

Сообщение Fuhrer »

Qwertiy писал(а):Кстати, 0 и false эквивалентны, а ответ на поверхности, хотя в глаза не бросается из-за кажущейся очевидности...
И действительно, не бросается...
Всё таки буду рад, если подскажете магическую природу условия "q+2!=!!(q+2)", я её не могу осилить.
А ответ, как я понимаю будет: первый. Именно в первом варианте условие таково, что будет всегда выполняться в силу свойств самой переменной.
Задачка понравилась, спасибо. А Си я действительно не знаю, никогда не изучал. Я бейсер, если можно так выразится. Да и то, весьма посредственный.

Вообще-то меня волнует что мы здесь флуд разводим не по теме. Это обычно наказуемо, да и не красиво это. Люди ведь сюда ходят об интерфейсе читать. Может хоть что-то по теме выдадим? Или перенесём разговор в другую ветку?


Кстати, по теме.
Мне очень понравился диалог удаления: и просто, и в корзину, и со стиранием, и эти две милые кнопки внизу для появления чекбокса и комбобокса, и сохранение настроек, и всё такое. Правда, понравилось, я сам так люблю: сложно, и куча мелких кнопочек. Но возникает вопрос: зачем? Зачем создавать двойное количество элементов управления, если ими никто не пользуется? Кто-то может объяснить?
Qwertiy писал(а):Все диски были успешно созданы, правда медленнее чем обычно.
А разве это плохо? Основная задача - запретить запись в системные каталоги, да и вообще куда не следует. Или Вы намекаете, что через эти созданные диски можно получить прямой доступ, минуя песочницу? Кстати, что за команда System?
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Fuhrer писал(а):И действительно, не бросается...
Всё таки буду рад, если подскажете магическую природу условия "q+2!=!!(q+2)", я её не могу осилить.
А ответ, как я понимаю будет: первый. Именно в первом варианте условие таково, что будет всегда выполняться в силу свойств самой переменной.
Вы правильно зацепились за беззнаковый тип, но продумали немного не до конца. Когда 0 уменьшается на 1, то происходит переполнение, при этом получается значение 4294967295. Если сравнить его с -1, то получим что они равны (приведение знакового типа к беззнаковому при смешении). А вот во втором варианте, очевидно что любое число из диапазона 0...4294967295 больше или равно 0, поэтому это вечный цикл. Это именно то, о чём я писал - в записи, которая кажется очевидной, труднее всего найти ошибку... В третьем варианте используется два логических отрицания:

Код: Выделить всё

   x     !x   !!x   x!=!!x
   0      1    0      0
   1      0    1      0
другое    0    1      1
Фактически выражение x != !!x ложно только для двух значений x, а именно 0 и 1. В данном случае цикл завершается когда q+2==1, т. е. при q==-1. В четвёртом варианте q+1 обращается в 0 при q==-1.
Если бы q было описано както работали бы все 4 варианта...
Fuhrer писал(а):Задачка понравилась, спасибо. А Си я действительно не знаю, никогда не изучал. Я бейсер, если можно так выразится. Да и то, весьма посредственный.
Си мне очень нравится за предоставляемую свободу действий и многие возможности, которых нет в других языках. Всегда пишу на нём консольные приложения... Однако, программы с формами я пишу на Бейсике. Из .NET'овских языков он лучший! Если Вы не заметили, все мои программы на этом форуме именно на нём.
Fuhrer писал(а):Вообще-то меня волнует что мы здесь флуд разводим не по теме. Это обычно наказуемо, да и не красиво это. Люди ведь сюда ходят об интерфейсе читать. Может хоть что-то по теме выдадим? Или перенесём разговор в другую ветку?
Всего несколько сообщений... Большая часть всё-таки по теме. А подходящей ветки здесь всё равно нет...
Fuhrer писал(а):Мне очень понравился диалог удаления: и просто, и в корзину, и со стиранием, и эти две милые кнопки внизу для появления чекбокса и комбобокса, и сохранение настроек, и всё такое. Правда, понравилось, я сам так люблю: сложно, и куча мелких кнопочек. Но возникает вопрос: зачем? Зачем создавать двойное количество элементов управления, если ими никто не пользуется? Кто-то может объяснить?
А почему Вы считаете, что ими никто не пользуется? Хотя действительно немного необычно выносить настройки в сам диалог. Можно и с диалогом копирования сделать то же самое :) - есть флажок/нет флажка.
Fuhrer писал(а):
Qwertiy писал(а):Все диски были успешно созданы, правда медленнее чем обычно.
А разве это плохо? Основная задача - запретить запись в системные каталоги, да и вообще куда не следует. Или Вы намекаете, что через эти созданные диски можно получить прямой доступ, минуя песочницу?
Не знаю. Но если сделать вот так
Run As.png
то получаю результат "Нет доступа: C:\Temp" 26 раз. Диски, естественно, при этом не создаются.
Fuhrer писал(а):Кстати, что за команда System?
system - это передача строки на выполнение, как если бы она была введена в командной строке.
Кстати, в Си регистр имеет значение. Так что команды System не существует. Правда, в VS в Си существует такое пространство имён для .NET'овских классов... Но .NET в Си - это просто ужас...
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Fuhrer
Охотник за багами
Сообщения: 127
Зарегистрирован: Ср мар 03, 2010 12:51 am

Re: Несколько предложений по юзабилити №2

Сообщение Fuhrer »

Qwertiy, спасибо за разъяснение. Я действительно подумал о переполнении, но .... не додумал.
Qwertiy писал(а):Однако, программы с формами я пишу на Бейсике. Из .NET'овских языков он лучший! Если Вы не заметили, все мои программы на этом форуме именно на нём.
В своё время я не стал переучиваться на него с 6-го - многие кричали, что он "уже не тот", что это уже по сути какой-то Си, только с синтаксисом бейсика, и т.п. Короче, решил, что изучать его как бы бессмысленно - того удобства, что в VB 5-6 уже нет, а той свободы, что в Си ещё нет. О Си.Net, правда, тоже ничего хорошего не роворили, потому ничего и не выучил в итоге.
Qwertiy писал(а):
Fuhrer писал(а):Мне очень понравился диалог удаления: и просто, и в корзину, и со стиранием, и эти две милые кнопки внизу для появления чекбокса и комбобокса, и сохранение настроек, и всё такое. Правда, понравилось, я сам так люблю: сложно, и куча мелких кнопочек. Но возникает вопрос: зачем? Зачем создавать двойное количество элементов управления, если ими никто не пользуется? Кто-то может объяснить?
А почему Вы считаете, что ими никто не пользуется?
Нет конечно, пользуются, но чем-то одним из двух. При том, что функционально комбобокс ничем не отличается от тех трёх радиокнопок. Вопрос: зачем? Можно ещё кучу разных интерфейсов понарисовывать и наделать кнопки их выбора, но в чём же скрытый смысл?
Qwertiy писал(а):Хотя действительно немного необычно выносить настройки в сам диалог.
А настройки, кстати, там не мешают, имхо. Они не создают дополнительной неразберихи (если будут лаконично оформлены), и создают удобство - незачем лезть в диалог настроек, и что-то искать.
Qwertiy писал(а):Можно и с диалогом копирования сделать то же самое :) - есть флажок/нет флажка.
Можно, но нельзя. Там флажок придётся нажимать через раз (грубо говоря), что напрягает. Здесь (диалог удаления) настройки делаются раз в жизни, ну изредка могут изменятся. Там лишнее действие мешает, здесь - не важно.
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Fuhrer писал(а):В своё время я не стал переучиваться на него с 6-го - многие кричали, что он "уже не тот", что это уже по сути какой-то Си, только с синтаксисом бейсика, и т.п.
На VB 6 я тоже писал. И сейчас иногда пишу. Только из-за него и держу VS 6 одновременно с VS 2005. В VB.NET действительно многое изменилось. Большая часть в лучшую сторону, но некоторые очень удобные элементы убрали... Вообще, поддерживантся почти все возможности VB 6. Из того, что не поддерживается, приходит в голову только нижняя граница массива и полностью переделанная работа с графикой. Советую посмотреть, думаю Вам понравится...
Fuhrer писал(а):Нет конечно, пользуются, но чем-то одним из двух. При том, что функционально комбобокс ничем не отличается от тех трёх радиокнопок. Вопрос: зачем? Можно ещё кучу разных интерфейсов понарисовывать и наделать кнопки их выбора, но в чём же скрытый смысл?
А зачем вообще нужны настройки?
Fuhrer писал(а):
Qwertiy писал(а):Хотя действительно немного необычно выносить настройки в сам диалог.
А настройки, кстати, там не мешают, имхо. Они не создают дополнительной неразберихи (если будут лаконично оформлены), и создают удобство - незачем лезть в диалог настроек, и что-то искать.
Я и не говорил, что мешают. Просто это достаточно нестандартный подход к размещению настроек. И я абсолютно не против!
Fuhrer писал(а):
Qwertiy писал(а):Можно и с диалогом копирования сделать то же самое :) - есть флажок/нет флажка.
Можно, но нельзя. Там флажок придётся нажимать через раз (грубо говоря), что напрягает. Здесь (диалог удаления) настройки делаются раз в жизни, ну изредка могут изменятся. Там лишнее действие мешает, здесь - не важно.
Кажется, Вы не так поняли... Я имел в виду аналогичные кнопки 1 и 2, которые устанавливали бы вид диалога:
1 - как сейчас - с флажком "Применять ко всем",
2 - Ваш вариант - с дополнительными кнопками "Все".
Причём эти кнопки можно включить не в диалог замены, а в диалог копирования и перемещения.
Аватара пользователя
Fuhrer
Охотник за багами
Сообщения: 127
Зарегистрирован: Ср мар 03, 2010 12:51 am

Re: Несколько предложений по юзабилити №2

Сообщение Fuhrer »

Qwertiy писал(а):Я имел в виду аналогичные кнопки 1 и 2, которые устанавливали бы вид диалога:1 - как сейчас - с флажком "Применять ко всем",2 - Ваш вариант - с дополнительными кнопками "Все".
Хм, а ведь это отличная идея, браво! Это действительно тот случай, когда два интерфейса существенно отличаются, действительно есть смысл дать возможность выбирать между ними. Ко крайней мере это можно сделать на некоторое время, чтобы люди могли попробовать, посоветовать, пожаловаться, ну а разработчик сможет решить, основываясь на отзывах пользователей.
Qwertiy писал(а):
Fuhrer писал(а):Нет конечно, пользуются, но чем-то одним из двух. При том, что функционально комбобокс ничем не отличается от тех трёх радиокнопок. Вопрос: зачем? Можно ещё кучу разных интерфейсов понарисовывать и наделать кнопки их выбора, но в чём же скрытый смысл?
А зачем вообще нужны настройки?
Я имел ввиду "зачем нужно два равносильных интерфейса?".
Qwertiy писал(а):Причём эти кнопки можно включить не в диалог замены, а в диалог копирования и перемещения.
Не согласен. "Хороша ложка к столу" - иными словами, зачем переносить настройку туда, где никто не увидит её результата? Зачем пользователю создавать лишние сложности?

Qwertiy, у Вас нет желания оформить наше видение интерфейса в виде программы? "Наше" - в том плане, что будет выбор интерфейса межу тем, как Вы его видите, и моим видением, и кнопочки выбора "a la диалог на удаления" или какими-либо другими. У меня, как видите, возникла проблема с выбором кнопок с клавиатуры (в Hiasm), а искать какую-то новую среду программирования... нужно время.
Qwertiy писал(а): В VB.NET действительно многое изменилось. Большая часть в лучшую сторону, но некоторые очень удобные элементы убрали... Вообще, поддерживантся почти все возможности VB 6. Из того, что не поддерживается, приходит в голову только нижняя граница массива и полностью переделанная работа с графикой. Советую посмотреть, думаю Вам понравится...
Я вообще не знаю что изучать, если будет такой порыв. Просто намечается тенденция освоения Linux'ов, и в связи с этим может пора присматриваться к чему-то менее привязанному к M$. Пока я в раздумии, а поскольку явных порывов что-то программить нет (кроме нормального, наконец, просмотрщика фотографий), то и решения не спешу принимать.
Аватара пользователя
Qwertiy
Охотник за багами
Сообщения: 1199
Зарегистрирован: Вс янв 31, 2010 12:12 am

Сообщение Qwertiy »

Fuhrer писал(а):Хм, а ведь это отличная идея, браво! Это действительно тот случай, когда два интерфейса существенно отличаются, действительно есть смысл дать возможность выбирать между ними. Ко крайней мере это можно сделать на некоторое время, чтобы люди могли попробовать, посоветовать, пожаловаться, ну а разработчик сможет решить, основываясь на отзывах пользователей.
Зачем решать? Просто оставить оба варианта навсегда и всё. Всегда найдутся сторонники каждого из них... Останется только решить, какой из них сделать дефаултным.
Fuhrer писал(а):Я имел ввиду "зачем нужно два равносильных интерфейса?".
Просто одним пользователям нравится список, а другим - переключатели.
Зачем многие ленточные программы допускают использование ленты или меню на выбор?
Fuhrer писал(а):
Qwertiy писал(а):Причём эти кнопки можно включить не в диалог замены, а в диалог копирования и перемещения.
Не согласен. "Хороша ложка к столу" - иными словами, зачем переносить настройку туда, где никто не увидит её результата? Зачем пользователю создавать лишние сложности?
Согдасен. Просто когда писал, подумал что там кнопок и так достаточно.
Fuhrer писал(а):Qwertiy, у Вас нет желания оформить наше видение интерфейса в виде программы?
Есть. Но не мгновенно... Пожалуй, к концу недели...
Аватара пользователя
Fuhrer
Охотник за багами
Сообщения: 127
Зарегистрирован: Ср мар 03, 2010 12:51 am

Re: Несколько предложений по юзабилити №2

Сообщение Fuhrer »

Qwertiy писал(а):Зачем решать? Просто оставить оба варианта навсегда и всё. Всегда найдутся сторонники каждого из них... Останется только решить, какой из них сделать дефаултным
Я не против такого варианта. Пожалуй, соглашусь, что каждый имеет свои преимущества. Хотя мой мне, конечно же, нравится со всех сторон. :)
Qwertiy писал(а):Просто одним пользователям нравится список, а другим - переключатели.Зачем многие ленточные программы допускают использование ленты или меню на выбор?
Просто потому:
1. Эти интерфейсы радикально отличаются. Всегда найдётся критичная масса тех, кому не понравится один из них. Это не наш случай, т.к. в диалоге удаления отличается один элемент. Чекбокс не в счёт, его, для симметрии можно добавить и в первый вариант.
2. Ленты требуют длительного привыкания. Чтобы не отрезать пользователя от функций, с которыми он гарантированно дружит, ему дают возможность вернуть "как было". Вопреки тому, что новый способ быстрее и удобнее, старый может быть быстрее, ибо привычнее. Это тоже не наш вариант, поскольку переучиваться со списка на переключатели и обратно нужно "аж" 10 секунд.
3. M$, например не допустил откат в офисе 2007 на старый интерфейс. За что им позор, естественно.
Аватара пользователя
Fuhrer
Охотник за багами
Сообщения: 127
Зарегистрирован: Ср мар 03, 2010 12:51 am

Re: Несколько предложений по юзабилити №2

Сообщение Fuhrer »

Всё ещё надеясь на внимание автора, прикрепляю работающий концепт диалога замены. Работает в нём, естественно, только нажатие кнопок и их анимация, как я задумал. Никаких действий программа не производит. В архиве есть также исходник (для параноиков и вообще), компилировать неизменно с помощью hiasm. Поскольку hiasm - язык программирования очень высокого уровня, то многие антивирусы ругаются на откомпилированное.
Zam.png
Dialog (pass 123).zip
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Max Diesel
Автор программы
Сообщения: 3432
Зарегистрирован: Пт окт 12, 2007 3:26 pm

Сообщение Max Diesel »

Когда я учился в школе, в преддверии необходимости быстрого конспектирования лекций нам старались навязать ключевые идеи сокращения слов (вроде как подготавливали к ВУЗу) и мне запомнился краткий эпизод того времени, который определенно имеет отношение к этой теме. Некая одноклассница записывала на доске предложение, слова в котором сокращала... какое-то слово из пяти букв она поначалу сократила до вида "две буквы, дефис, одна буква", но заметив что получилось нечто нерасшифровываемое, добавила одну букву и получила формат "три буквы, дефис, одна буква" (то есть как если слово "маска" сократить до "мас-а")... соответственно реакция класса была выражена словами "зачем одну букву заменять дефисом?". И дело даже не в том, что слово было и без того короткое чтобы сокращать его, а также не в том что замена букв дефисами могла бы обеспечить экономию ресурсов шариковой ручки... речь шла о нерациональности "сокращения слова", при котором не уменьшалось количество используемых на хранение текста байтов. Теперь об отношении той ситуации к здешней теме: предложено четыре дополнительных кнопки, которые могут быть нажаты только мышью (о горячих клавишах для таких кнопок речь не идет, так как на них всех одинаковое слово), также при зажатом Shift'е кнопки волшебным образом модифицируются до варианта, включающего слово "все"... теперь посчитаем "количество используемых на хранение текста байтов" (аналогия с темой про сокращения, здесь конечно же имеются в виду не байты, а действия):

1. ситуация №1 - пользователю нужно "пропустить файл"
  • ► действия в предложенном варианте: нажать мышью кнопку "пропустить" (количество действий - 1 шт.) либо нажать кнопку "вправо" и нажать Enter (действий - 2 шт.),
    ► действия в существующем варианте: такие же, количество действий соответственно такое же.


2. ситуация №2 - пользователю нужно "пропустить все файлы" (при возникновении ситуации с заменой)
  • ► действия в предложенном варианте: нажать мышью кнопку "все" около кнопки "пропустить" (количество действий - 1 шт.) либо нажать кнопку "вправо", зажать Shift и нажать Enter (действий - 3 шт.) либо зажать Shift и нажать кнопку "пропустить все" левой кнопкой мыши (действий - 2 шт.),
    ► действия в существующем варианте: нажать средней кнопкой мыши кнопку "пропустить" (количество действий - 1 шт.) либо нажать кнопку "вправо", нажать Ctrl/Shift и нажать Enter (действий - 3 шт.) либо нажать Ctrl/Shift и нажать кнопку "пропустить" левой кнопкой мыши (действий - 2 шт.)


Подведем итоги: существующий вариант ни в каком из пунктов не уступил предложенному по количеству требуемых действий, соответственно при факте что существующий вариант уже внедрен, он и остается... кроме того, в предложенном варианте не хватает кнопки "все" для переименования, а также не хватает возможности произвести замену более мелких/крупных только для текущего файла (там лишь варианты для "всех"), впрочем это могло бы быть поправимо посредством волшебного модифицирования значений при факте нажатости Shift'а. Ну и наконец в предложенном варианте получается большое количество дополнительных кнопок, что с точки зрения восприятия пользователем вряд ли может рассматриваться как достойное улучшение...