Веб-разработка → Hosts Commander — консольный редактор hosts для Windows и Linux
Hosts Commander призван максимально облегчить работу с файлом hosts из консоли. Если вам время от времени приходится забираться в этот файл (что характерно для веб-разработчика), и вы любите консоль — Hosts Commander может прийтись вам по душе.Год назад на Хабрахабре была анонсирована первая версия программы, которая работала только под Windows. Но с тех пор многое изменилось и стало лучше. Это отличный пример, как из простой идеи может вырасти нечто большее.
CodeIgniter → Консоль для CodeIgniter из песочницы
Добрый день Хабрасообщество.
Выношу на ваш справедливый суд консоль для PHP фреймворка CodeIgniter.
Перед этим небольшое пояснение — я не являюсь фанатом CI, но, так как приходится работать в команде пополняющейся новобранцами, выбирается наиболее легкодоступный для освоения инструмент. Это же и касается ОС на которой ведется разработка Windows, хотя инструмент тестировался и прекрасно себя чувствует в Linux-based системах, по крайней мере в Ubuntu. Это является прототипом, поэтому код можно критиковать бесконечно.
Небольшое иллюстрирующее видео:
Выношу на ваш справедливый суд консоль для PHP фреймворка CodeIgniter.
Перед этим небольшое пояснение — я не являюсь фанатом CI, но, так как приходится работать в команде пополняющейся новобранцами, выбирается наиболее легкодоступный для освоения инструмент. Это же и касается ОС на которой ведется разработка Windows, хотя инструмент тестировался и прекрасно себя чувствует в Linux-based системах, по крайней мере в Ubuntu. Это является прототипом, поэтому код можно критиковать бесконечно.
Небольшое иллюстрирующее видео:
Windows → Быстрая смена сетевых настроек
Я пользуюсь личным ноутбуком на работе и дома. Для доступа к сети мне приходится дважды в день менять сетевые настройки. Причем, как дома, так и в офисе есть привязка к MAC-адресу машины. Поэтому приходится также менять MAC в свойствах сетевой платы.
Чтобы как-то автоматизировать этот процесс, была запущена командная строка и поисковик. Подробности и готовый bat-файл под катом.
Чтобы как-то автоматизировать этот процесс, была запущена командная строка и поисковик. Подробности и готовый bat-файл под катом.
Тестирование → Три самых полезных навыка, которые я приобрел 5 лет назад из песочницы
Я работаю в автоматизации тестирования уже более пяти лет. Более всего я работал с ОС Windows. Мы пишем скрипты на Borland SilkTest. Я знаком и с другими средами разработки автоматизированных тестов, такими как QTP и TestComplete – у каждого продукта есть свои достоинства, но, к сожалению, и свои недостатки. Возникают проблемы, которые очень сложно решить «не выходя из системы»*Ненормальное программирование → Работа с массивами в bat
Прочитав пост Свой сапер на своих батниках и пробежавшись по коду, наткнулся на комментарий, что в батниках нет массивов (кстати, в последней версии Сапера, о котором идёт речь в том посте, нет этого комментария). Так вот, если в батнике необходимо использовать некоторый набор значений, то логично объявить такое кол-во переменных, которое требуется и работать с ними. Собственно данный сценарий эту задачу помогает решить проще. Вот несколько примеров:
echo Создание массива А: call :array new A "'one','two','three','foo','bar'" echo Получение третьего элемента в result: call :array get A 3 result echo %result% echo Изменение нулевого элемента call :array set A 0 "первый элемент"
Системное администрирование → grep в Windows? Легко!
grep
Многим любителям шела нравится чудная команда grep.
К сожалению, windows нативно не имеет такой команды, по этому некоторые ставят себе наборы различных консольных утилит в *nix стиле, включая grep.
Мне, как любителю посидеть в консоли Windows очень мешало отсутствие грепа, по этому мои скрипты под Win всегда были не так хороши, как могли бы быть. Но мои скрипты должны работать на любой (ну, или почти на любой) Windows, так как же быть?
Интерфейсы → Корявых интерфейсов пост (keys/shortcuts)
Давно хотел высказаться на одну тему. А именно «Клавиши-Модификаторы» (Shift, Alt, CTRL, Win/CMD/Apple/Amiga).
Имеют ли они право (при нажатии на них) выполнять какое-либо действие?
Я вот считаю, что не имеют. Взять например ALT — он используется в комбинациях клавиш типа ALT+F4 (win) или ALT+F2 (Far), или (прости господи) ALT+SHIFT (rus/lat).
Однако человек может передумать нажимать комбинацию клавиш или нажать клавишу-модификатор случайно. И что же тогда произойдёт? На «безопасных», нормальных клавишах-модификаторах — ничего.
К ним в Windows можно отнести Shift и CTRL. А на «опасных» типа WIN или ALT-а — произойдёт совершеннейшая ерунда: ALT — сменит фокус ввода, переместив курсор в строку меню. WIN — вообще может выкинуть вас из полноэкранного режима приложения, только для того, чтобы радостно показать вам меню «пуск».
Отсюда первое правило клавиатурного пользовательского интерфейса: клавиша-модификатор сама по себе должна быть инертна. (При нажатии на неё ничего не должно происходить.)
Далее, есть ужасное сочетание ALT+SHIFT, которое в некоторых случаях используется в Windows для переключения раскладок клавиатуры. Чем же оно ужасно? если вы промахнулись по SHIFT-у или недостаточно чётко его нажали и он не сработал — сработает одиночный ALT, который изменит фокус ввода и выплюнет вас в строку меню. А так как вы в это время писали текст — вы этого можете не заметить и ваши нажатия в худшем случае могут привести к выполнению каких-либо команд меню, либо просто к неприятному вводу нескольких букв в пустоту.
Сочетание CTRL+SHIFT не особо лучше, так как оно хоть и является «безопасным» и инертным (то есть при несрабатывании той или иной клавиши — ничего не произойдёт), обратная сторона этой «безопасности» — это то, что в фокусе внимания невозможно узнать произошло ли переключение (индикатор рус/лат, как правило находится вне поля зрения во время набивки текста).
А всё почему? Потому что нарушено второе правило: сочетания клавиш-модификаторов друг с другом также должны оставаться инертны (то есть нельзя назначать на сочетания типа CTRL+SHIFT или CTRL+SHIFT+ALT какие либо действия — во-первых потому, что если это действие молчаливое и незаметное — невозможно будет сразу однозначно определить совершилось оно или нет, а во вторых, любое исключение из правила инертности клавиш-модификаторов разрушает ощущение «безопасности»).
Какое сочетание было бы более удачным для переключения раскладки? (раз уж его привели в пример). А вот хотя-бы то же CTRL+Space (или CMD+Space на Mac). Почему оно лучше? 1) используется сочетание безопасной клавиши-модификатора и условно-безопасной клавиши «пробел» (она условно-безопасна при вводе текста — так как знак пробела не портит текст). 2) в случае несрабатывания клавиши-модификатора, мы сразу увидим это — вместо переключения раскладки введётся пробел.
Вобщем, для полного счастья в windows необходимо: 1) сделать все клавиши-модификаторы инертными и избавить, наконец ALT и WIN от этих ужасных побочных действий. 2) отключить все действия назначенные на сочетания клавиш-модификаторов.
И тогда, возможно, управление приложениями (и самой системой) с помощью горячих клавиш — станет удобнее (начнут, наконец, полномасштабно использовать кнопку «WIN» наравне со всеми).
(p.s. этот пост — ответ на подзамочную публикацию. Чтобы прочитать её, подпишитесь на блог «эти пользовательские интерфейсы».)
N.B. Друзья, переключение раскладки — всего-лишь один из примеров. Не стоит его принимать близко к сердцу =) Главный вопрос звучит так: «должны ли клавиши-модификаторы и их сочетания быть инертны».
(Иными словами: стоит ли ради сомнительного удобства вызывать какую-либо одну функцию одной клавишей — получать неудобство от использования данной клавиши во всех сочетаниях с ней?)
Имеют ли они право (при нажатии на них) выполнять какое-либо действие?
Я вот считаю, что не имеют. Взять например ALT — он используется в комбинациях клавиш типа ALT+F4 (win) или ALT+F2 (Far), или (прости господи) ALT+SHIFT (rus/lat).
Однако человек может передумать нажимать комбинацию клавиш или нажать клавишу-модификатор случайно. И что же тогда произойдёт? На «безопасных», нормальных клавишах-модификаторах — ничего.
К ним в Windows можно отнести Shift и CTRL. А на «опасных» типа WIN или ALT-а — произойдёт совершеннейшая ерунда: ALT — сменит фокус ввода, переместив курсор в строку меню. WIN — вообще может выкинуть вас из полноэкранного режима приложения, только для того, чтобы радостно показать вам меню «пуск».
Отсюда первое правило клавиатурного пользовательского интерфейса: клавиша-модификатор сама по себе должна быть инертна. (При нажатии на неё ничего не должно происходить.)
Далее, есть ужасное сочетание ALT+SHIFT, которое в некоторых случаях используется в Windows для переключения раскладок клавиатуры. Чем же оно ужасно? если вы промахнулись по SHIFT-у или недостаточно чётко его нажали и он не сработал — сработает одиночный ALT, который изменит фокус ввода и выплюнет вас в строку меню. А так как вы в это время писали текст — вы этого можете не заметить и ваши нажатия в худшем случае могут привести к выполнению каких-либо команд меню, либо просто к неприятному вводу нескольких букв в пустоту.
Сочетание CTRL+SHIFT не особо лучше, так как оно хоть и является «безопасным» и инертным (то есть при несрабатывании той или иной клавиши — ничего не произойдёт), обратная сторона этой «безопасности» — это то, что в фокусе внимания невозможно узнать произошло ли переключение (индикатор рус/лат, как правило находится вне поля зрения во время набивки текста).
А всё почему? Потому что нарушено второе правило: сочетания клавиш-модификаторов друг с другом также должны оставаться инертны (то есть нельзя назначать на сочетания типа CTRL+SHIFT или CTRL+SHIFT+ALT какие либо действия — во-первых потому, что если это действие молчаливое и незаметное — невозможно будет сразу однозначно определить совершилось оно или нет, а во вторых, любое исключение из правила инертности клавиш-модификаторов разрушает ощущение «безопасности»).
Какое сочетание было бы более удачным для переключения раскладки? (раз уж его привели в пример). А вот хотя-бы то же CTRL+Space (или CMD+Space на Mac). Почему оно лучше? 1) используется сочетание безопасной клавиши-модификатора и условно-безопасной клавиши «пробел» (она условно-безопасна при вводе текста — так как знак пробела не портит текст). 2) в случае несрабатывания клавиши-модификатора, мы сразу увидим это — вместо переключения раскладки введётся пробел.
Вобщем, для полного счастья в windows необходимо: 1) сделать все клавиши-модификаторы инертными и избавить, наконец ALT и WIN от этих ужасных побочных действий. 2) отключить все действия назначенные на сочетания клавиш-модификаторов.
И тогда, возможно, управление приложениями (и самой системой) с помощью горячих клавиш — станет удобнее (начнут, наконец, полномасштабно использовать кнопку «WIN» наравне со всеми).
(p.s. этот пост — ответ на подзамочную публикацию. Чтобы прочитать её, подпишитесь на блог «эти пользовательские интерфейсы».)
N.B. Друзья, переключение раскладки — всего-лишь один из примеров. Не стоит его принимать близко к сердцу =) Главный вопрос звучит так: «должны ли клавиши-модификаторы и их сочетания быть инертны».
(Иными словами: стоит ли ради сомнительного удобства вызывать какую-либо одну функцию одной клавишей — получать неудобство от использования данной клавиши во всех сочетаниях с ней?)
Персональные блоги → timestamp в имени файла
Приводя в порядок файлы на своём винте (свободное место стало катастрофически сокращаться) озадачился упорядочиванием всяческих фотографий и прочих видеофайлов. Имена файлов фотографий, переписанных из фотоаппарата (у меня Sony) имеют довольно-таки неинформативный вид — DSC00340.JPG. Гораздо удобнее, на мой взгляд, было бы именовать файлы, использую дату и время создания снимка. Можно было бы и упорядочивать по дате/времени, и с одного взгляда определять, к какой эпохе относится файл.