LogicDaemon-pubru
из моего старого блога, 11 янв. 2016 г. командная строка в Windows – минное поле У меня есть подозрение, что в недрах Microsoft есть специальная команда разработчиков, которая специально заботится, чтобы у всего, что связано с командной строкой Windows,…
Кстати, если читаете путь из реестра, молитесь, чтобы там не было международных символов. Обнаружить их в командной строке – нереально, а выдаются
12. Копирование папок – эпичный пример фейла (или win'а команды из первого абзаца?). Типичная команда для копирования папки в Windows:
смогли с первого раза посчитать количество ключей? Ну ок, наверное, не все они требуются. Вот необходимый минимум, чтобы
13.
reg'ом они в кодировке ANSI (а cmd.exe работает в OEM), поэтому при наличии не-ASCII символов, при попытке совершить chdir (или что угодно другое) пакетный файл будет поджидать облом.12. Копирование папок – эпичный пример фейла (или win'а команды из первого абзаца?). Типичная команда для копирования папки в Windows:
xcopy s:\WindowsImageBackup r:\WindowsImageBackup /E /I /Q /G /H /R /K /O /Y /B /Jсмогли с первого раза посчитать количество ключей? Ну ок, наверное, не все они требуются. Вот необходимый минимум, чтобы
xcopy не остановился где-нибудь посередине и не задал тупой вопрос, ожидая интерактивного ответа: /E /I /G /H /R /Y. Да, кстати, Вы использовали copy? Облом будет поджидать незаметно :) Ключи copy указываются перед аргументами откуда и куда, xcopy – после аргументов.13.
%comspec% /U /C "ECHO 123>test.txt" записывает файл в UNICODE.%comspec% /U /C "FOR /F %A IN (test.txt) DO ECHO %A" не может прочитать его!Вы пользуетесь putty? Тогда у меня для вас штука, которая умеет копировать настройки из одной сессии в другие (например, поменяли шрифт в
https://github.com/LogicDaemon/PersonalUseScripts/blob/master/misc/copy_putty_settings.ahk
--
En: For anyone who use putty, I've wrote a GUI utility to copy settings between sessions. Useful, for example, for updating font or term type in all sessions.
Questions welcome.
Default Session, и желаете применить его во всех остальных).https://github.com/LogicDaemon/PersonalUseScripts/blob/master/misc/copy_putty_settings.ahk
--
En: For anyone who use putty, I've wrote a GUI utility to copy settings between sessions. Useful, for example, for updating font or term type in all sessions.
Questions welcome.
🔥1
Коллеги прислали (bash's echo is broken)
https://youtu.be/lq98MM2ogBk
https://youtu.be/lq98MM2ogBk
YouTube
bash's echo command is broken
Support me on Patreon: https://www.patreon.com/ComputingTheDetails
This video in blog form: http://computingthedetails.org/blog/echo-is-broken-in-bash/
Bash's echo command is broken. You can't reliably print variable contents using echo.
This video explores…
This video in blog form: http://computingthedetails.org/blog/echo-is-broken-in-bash/
Bash's echo command is broken. You can't reliably print variable contents using echo.
This video explores…
latest_python3.py
11.6 KB
Давно хотел запилить, и вот оно.
github.com/.../latest_python3.py
Скрипт находит последнюю версию python на официальном сайте, опционально: скачивает, в linux собирает из исходника, и ставит в
Если запустить без параметров, выведется краткая справка; если с
Перед запуском, установите lxml:
github.com/.../latest_python3.py
Скрипт находит последнюю версию python на официальном сайте, опционально: скачивает, в linux собирает из исходника, и ставит в
$HOME/.local, а в windows просто скачивает exe и устанавливает пользователю.Если запустить без параметров, выведется краткая справка; если с
-h или --help — подробнаяПеред запуском, установите lxml:
pip install lxml packagingЯ сделал свой первый python3 asyncio скрипт. Сравнивает два каталога, и для одинаковых файлов (расположенных по одинаковому под-пути) устанавливает дату более старого.
Нужен, чтобы восстановить даты файлов из бэкапа после
set_older_datetimes_for_same_files.py
P.S. asyncio – какой-то ужас. Легче сразу на go писать.
Нужен, чтобы восстановить даты файлов из бэкапа после
git checkout, но только тех, которые не поменялись.set_older_datetimes_for_same_files.py
P.S. asyncio – какой-то ужас. Легче сразу на go писать.
GitHub
PersonalUseScripts/set_older_datetimes_for_same_files.py at master · LogicDaemon/PersonalUseScripts
scripts for my personal use. Nothing private, but barely useful for others - PersonalUseScripts/set_older_datetimes_for_same_files.py at master · LogicDaemon/PersonalUseScripts
concurrency в python:
*
*
*
*
Threading: работает как ожидается, внедрять можно постепенно в отдельные модули, остальная программа может про это вообще ничего не знать. Но отдельный тред создаётся на каждый чих, либо надо писать собственный пул-менеджер.*
Concurrent.futures: только для простых задач или для одной процедуры (main?), т. к. если таска в pool'е, и попытается запустить другую таску, может случиться дэдлок прямо в этом месте (если пул уже будет заполнен)*
asyncio (async, await): вроде лишен этих недостатков, но требует полного переписывания всего кода. "Постепенное" внедрение невозможно. Все синхронные примитивы, типа стандартного open(), все операции с файлами, все вызовы внешних библиотек, не поддерживающих asyncio, блокируют всю программу целиком.Коллега посоветовал
Выглядит хорошо.
gevent.Выглядит хорошо.
from gevent import monkey; monkey.patch_all()Нашел для python модуль logicmin, минимизирующий логику по таблицам истинности; причем в моём случае оптимизированная логика используется, чтобы объяснить, почему то или иное состояние приводит к определённому действию сервера.
Вроде, то же самое умеет pyeda, но logicmin явно меньше и проще.
Вроде, то же самое умеет pyeda, но logicmin явно меньше и проще.
GitHub
GitHub - dreylago/logicmin: Logic Minimization in Python
Logic Minimization in Python. Contribute to dreylago/logicmin development by creating an account on GitHub.
С прискорбием узнал, что KC Softwares закрывается :-( SUMo и DUMo больше не работают, и больше никогда работать не будут.
Замены им нет, пока (временно) начал использовать https://github.com/NexovaDev/UpdateHub, но он из нескольких сотен программ видит пару десятков :-(
Замены им нет, пока (временно) начал использовать https://github.com/NexovaDev/UpdateHub, но он из нескольких сотен программ видит пару десятков :-(
GitHub
GitHub - NexovaDev/UpdateHub: UpdateHub is an app that simplifies updating software on your computer. A user-friendly interface…
UpdateHub is an app that simplifies updating software on your computer. A user-friendly interface allows you to quickly check for and install available updates for your operating system and applica...
забавное интервью. Тем, насколько я согласен с Bobuk-ом, и не согласен с интервьюером https://youtu.be/Ro1T-e0455g, особенно в последних ~30 минутах.
Скрипт для бэкапа почты из IMAP4. И бойлерплейт для питонячих скриптов с CLI и чтением конфига (причем параметры конфигурации в CLI и конфиге идентичны, их не надо указывать дважды)
https://t.me/logicdaemon_pub/6
https://t.me/logicdaemon_pub/6
Telegram
LogicDaemon-pub
Just wrote a simple IMAP4 backup script, which is mostly a boilerplate of a CLI with a config file, which shows expected locations of the config when invoked with --help.
To use with gmail, create app password first in https://myaccount.google.com/apppasswords
To use with gmail, create app password first in https://myaccount.google.com/apppasswords
Интересная Copilot-like дополнялка-рефакторилка https://marketplace.visualstudio.com/items?itemName=Morph.rift-vscode https://github.com/morph-labs/rift
Есть фичи, которых нет в Copilot, но нет автоподбора контекста из открытых и соседних файлов (который есть в Copilot).
Модель выбирается: можно использовать OpenAI-шное (если есть токен), но можно и локальные модели GPT4All и HuggingFace.
Есть фичи, которых нет в Copilot, но нет автоподбора контекста из открытых и соседних файлов (который есть в Copilot).
Модель выбирается: можно использовать OpenAI-шное (если есть токен), но можно и локальные модели GPT4All и HuggingFace.
commit_message.py
20.4 KB
тут в пятницу и сегодня утром запилил генератор commit message по git diff-у, используя gpt4all (тестировал с
mistral-7b-openorca.gguf2.Q4_0.gguf но может заработать и с другими моделями).а WSA оказывается и на Windows 10 рабоатет https://github.com/YT-Advanced/WSA-Script/
GitHub
GitHub - YT-Advanced/WSA-Script: Integrate Magisk root and Google Apps into WSA (Windows Subsystem for Android) with GitHub Actions
Integrate Magisk root and Google Apps into WSA (Windows Subsystem for Android) with GitHub Actions - YT-Advanced/WSA-Script
Есть такая штука, генератор парольных фраз на javascript'е, давно пользуюсь https://www.fourmilab.ch/javascrypt/pass_phrase.html
Кроме парольных фраз, бывает удобно генерировать и e-mail'ы для моего домена.
Открывать новую страницу в браузере и вручную копипастить оттуда надоело, поэтому я запилил (вдохновляясь тем самым javascrypt и его словарем) пару скриптов:
email.ahk — использует буфер обмена в качестве суффикса, и набирает на клавиатуре сгенерированный e-mail. Его предполагается вешать на горячую клавишу;
pass_phrase.ahk — GUI, генерирует e-mail и набор слов в поле, откуда их можно скопировать.
Оба читают
Кроме самих скриптов, потребуется wordstab.txt оттуда же.
Кроме парольных фраз, бывает удобно генерировать и e-mail'ы для моего домена.
Открывать новую страницу в браузере и вручную копипастить оттуда надоело, поэтому я запилил (вдохновляясь тем самым javascrypt и его словарем) пару скриптов:
email.ahk — использует буфер обмена в качестве суффикса, и набирает на клавиатуре сгенерированный e-mail. Его предполагается вешать на горячую клавишу;
pass_phrase.ahk — GUI, генерирует e-mail и набор слов в поле, откуда их можно скопировать.
Оба читают
%LocalAppData%\_sec\EmailSuffix.txt и дописывают первую строчку к сгенерированному e-mail-у.Кроме самих скриптов, потребуется wordstab.txt оттуда же.
Режим Agent у Copilot — 💪
С ним сегодня за утро замутил скрипт, который репостит новости с сайта Магти в телегу https://t.me/magticomnews_wonderdays
При этом 99% этого кода Copilot написал сам. И потом ошибки исправлял (после запроса).
https://github.com/LogicDaemon/tgbot/
С ним сегодня за утро замутил скрипт, который репостит новости с сайта Магти в телегу https://t.me/magticomnews_wonderdays
При этом 99% этого кода Copilot написал сам. И потом ошибки исправлял (после запроса).
https://github.com/LogicDaemon/tgbot/
Telegram
MagtiGeWonderDays-Reposted
Wonder days and other news from <https://www.magticom.ge/en/about-company/news>. Not affilliated with magticom, maintained by @logicdaemon. Source: https://github.com/LogicDaemon/magticom-news-reposter-tgbot
👍1
Если вы используете Firefox с Dark Reader в режиме Filter, и получаете нечитаемый plaintext (например), откройте
DarkReader → Settings → Advanced → Developer tools → Inversion Fix Editor
и сверху, под
DarkReader → Settings → Advanced → Developer tools → Inversion Fix Editor
и сверху, под
*
INVERT
добавьтеhtml > body > pre:nth-child(1):not([class])