Category: компьютеры

Category was added automatically. Read all entries about "компьютеры".

манул

(no subject)

К дню программиста. Уже вторую (если не третью) неделю у меня идефикс написать переключалку клавиатуры моей мечты (для виндов, т.к. под ними я живу). Пишу на AHK (AutoHotKey). И вот есть один затык, который лично для меня не важен. но заради универсальности... Короче, никак не удаётся под Windows 10 определить текущую раскладку клавиатуры для _консольного_ приложения. Нашёл было способ, но он базируется на недокументированной функции WinAPI GetConsoleKeyboardLayoutName, которая работала в Windows 7, а в Windows 8 и тем более 10 уже не работает. И главное, гугленье (многодневное!) ничего не даёт - все только жалуются, что, мол, никак, и никто не знает ответа. А те кто знает, ЧСХ, молчат. А то, что есть те, кто знает - без сомнения, т.к. всякие там Punto Switcher'ы нормально определяют раскладку и у консольных окон.

И ведь не то чтоб мне это было сильно нужно - я использую FAR с ConEmu, а он сам эмулирует консоль и там можно использовать обычный способ для обычных гуёвых окон. Но заело меня, хочу разобраться. Маньячу вот потихоньку, чуть ли не всё свободное время... Сам знаю, что дурью маюсь, но заело.
манул

компьютерное

1. Новый Firefox 48 с включённой многопроцессностью (для этого нужно подшаманить в about:config) оказался чрезвычайно приятен в использовании - сильно повысилась отзывчивость интерфейса, даже на медленных компьютерах. Прямо не нарадуюсь.

2. Windows 10, несмотря на моё предубеждение, оказалась довольно удобной с новой кнопкой Пуск (в отличие от Windows 8 и Windows 8.1, где обязательный переход по этой кнопке в полноэкранный режим вынуждал ставить Classic Shell). И бегает пошустрее даже, чем Windows XP (правда, за счёт повышенного потребления памяти, но не так чтобы уж сильно намного больше жрёт).

3. PHP постепенно превращается в приличный язык. Правда, к моменту, когда на хостингах PHP 7 вытеснит PHP 5, пройдёт, наверное, года два, не меньше (на моём сайте, например, до сих пор стоит древний 5.2). Хотя одним из главных недостатков PHP я считаю неявное объявление локальной переменной (стоит лишь опечататься в одной букве, и долгий поиск совершенно не отображаемой ошибки обеспечен), а этот недостаток вряд ли когда-нибудь будет исправлен из-за совместимости.
манул

(no subject)

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

@ECHO OFF
SET avidemux="C:\Program Files\Avidemux 2.6 - 64 bits\avidemux.exe"
SET audioCodec="Lame"
SET audioOutputFormat="MP3"
SET videoCodec="Copy"
SET videoOutputFormat="MKV"
IF NOT EXIST !\NUL MD !
FOR %%F IN (%1) DO %avidemux% --force-alt-h264 --load %%F ^
  --audio-process --audio-codec %audioCodec% --output-format %audioOutputFormat% ^
  --video-process --video-codec %videoCodec% --output-format %videoOutputFormat% ^
  --save !\%%F --quit

Сразу говорю: mencoder не пошёл - не смог он просто скопировать видеопоток, несмотря на явное указание - стал перекодировать его, а это мне не нужно (время!). Так что мой выбор avidemux, видимо, правильный. (Во второй строке можно avidemux.exe заменить на avidemux_cli.exe, если нужен именно консольный процесс).

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

А проблемы с данной програмой - в пользовательском интерфейсе. Казалось бы, чего проще: сделать окошко, в которое drag-n-drop'ом можно накидать файлов, выбрать для них всех один и тот же набор параметров, задать подкаталог для вывода и нажать ОДНУ кнопку "сделай мне хорошо". Ведь все составляющие для этого уже есть (и drag-n-drop программа уже понимает), и работы там всей от силы на два дня (я, когда программировал на Дельфи, за два дня такое бы точно сваял), но нет, надо огород городить, встраивать скриптовый язык и прочее... Эх вы, юниксоиды, никогда вы не отучитесь мыслить только командной строкой, а GUI воспринимать только как обёртку к командной строке...

манул

за что я не люблю unix

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

Вот понадобилась мне программа, перекодирующая видео (для дома, для семьи, а отнюдь не для работы). Нашёл я программу, которая удовлетворяет моим требованиям - avidemux. Всё, казалось бы, замечательно, но хочется режима пакетной обработки (перекодировать сразу пачку видео - для сериалов, например). Хотя бы чтобы из командной строки задать, чтобы батник написать. И вроде бы всё в документации про это написано, делаю в точности как написано - не работает. Это уже напрягает, ибо я в отпуске и компьютерные дела такого рода мне осточертели на работе (где они занимают процентов 50 рабочего времени). Ладно, концентрирую расслабленный мозг и лезу на форум программы (англоязычный, естественно). И что я вижу? Оказывается, документация, которую я читал, касается старой версии программы (2011 год). И в старой версии программы скриптовым языком, с помощью которого задавались все параметры пакетной работы, был js (javascript). А теперь, оказывается, они заменили его на Питон!!! При этом полностью выкосив поддержку старого языка, и это при полном отсутствии документации к новой версии программы! И старая версия программы на официальном сайте отсутствует!

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

Вот это и есть unix-подход: программы пишутся для тех, кто может в них разобраться после прочтения кучи мануалов и/или многочасовых проб и ошибок. Да, я, чёрт возьми, программист с 30-летним стажем, да, я могу в этом разобраться (и разобрался в конце концов). Но мне жалко своего времени! Я не красноглазый линуксоид, получающий удовлетворение от секса с gentoo. Я хочу ткнуть кнопку и получить результат, не задумываясь. Я на работе думаю, уже все мозги себе проел. Я просто хочу дома видео посмотреть!

И вот так у них (unix) всё.
манул

(no subject)

Мелкий сегодня куда-то засунул пульт от телевизора. Искали все вместе весь вечер. По ходу выгребли кучу мусора из-под диванов :) И когда я уже совершенно отчаялся, мелкий же сам его и нашёл. Он был в старом компьютерном кресле, которое мы ему отдали, т.к. там сломалась регулировка по высоте. Там есть такое углубление сзади за спинкой, как карман. И вот там-то он и лежал, всё время практически перед глазами - но даже в голову не пришло туда заглянуть. Ну хоть мусор убрали, и то польза :)


Запись сделана с помощью m.livejournal.com.

манул

(no subject)

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

Кстати, та же фигня с текстами на эсперанто: нет возможности вводить буквы с диакритическими знаками ("шляпками"), поэтому я часто стал писать в x-системе (cx, sx и т.д.).

Может быть, когда-нибудь попробую хакнуть раскладку клавиатуры, но там Андроид, в котором я ничего не понимаю, да и "староват я стал для таких полетов" (c) Кар Карыч.
я в рамке

еррор

Почему-то вспомнилось.

Впервые тесно общаться с компьютерами я начал примерно в 1985 году. До этого — только сдавал программы, написанные на бланках, в ВЦ, и через пару дней получал распечатки и колоду перфокарт; попасть непосредственно на машину можно было только по знакомству. А в 85 году я студентом 4-го курса начал работать в научно-исследовательской лаборатории «Голография» (потом, после института, я там инженером работал лет 7), и впервые получил возможность лично сидеть за монитором.

В то время это была «Электроника-60» с гибкими дисками и с какой-то древней версией RT-11 (точнее, РАФОС). И текстовый редактор там был EDIT, ещё неэкранный, с консольными командами, типа юниксовского ed'а, только команды были ещё более неудобные, да и регулярных выражений для поиска и замены не было. А монитор был типа ИЭ-15 с приделанным вручную переключателем кодировок. Дело в том, что русская кодировка тогда была 7-битной, с заменой маленьких латинских букв на большие русские. Но поскольку софт был в основном буржуйский, то он выводил текст на экран в нормальном виде, с использованием и строчных и прописных букв. Вот для этого и был переключатель: чтобы можно было посмотреть, как оно выглядело в оригинале. А русская кодировка, надо сказать, соответствовала по буквам латинским аналогам, т.е. вместо g было Г и т.п. Вместо латинского икса был мягкий знак.

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

ЕРРОР: ЕЬИСТИНГ И/О ФИЛЕ!

Можно догадаться, как мы это произносили :) И эта фраза стала моим любимым ругательством на многие годы.