Wiki ЖБК

Материалы для проектирования железобетонных конструкций

Инструменты пользователя

Инструменты сайта


формат_даты

Формат даты. Точка-запятая на цифровой панели

Автор: Dmitry Rudenko

1. По умолчанию во всех файловых менеджерах (например, "Проводник" в ОС Windows) сортировка файлов производится по названию файлов. С целью упорядочивания версий документации в название файлов удобно добавлять дату. Чтобы файлы располагались сверху вниз от более старых к более новым, дату необходимо указывать в формате год-месяц-дата, например 2012-09-08 (8 сентября 2012 года).

Для удобства работы написан небольшой скрипт на языке AutoIt, вставляющий дату в любое место по нажатию клавиши F9. Скрипт необходимо добавить в папку "Пуск-Автозагрузка".

2. По нажатию клавиши F10 вставляется дата и время в формате 2012-12-10_17-41

3. После запуска скрипта по нажатию кнопки "точка" на цифровой панели в текст будет добавляться точка вне зависимости от выбранной раскладки (RU/EN). Переключить режим ввода на запятую можно по клику на ярлык программы в системном трее.

Точка или запятая на цифровой панели клавиатуры

4. Также программа по нажатию кнопки NumLock эмулирует нажатие кнопки Esc (эскейп) и не даёт отключить режим намлока (это может быть удобно при заполнении таблиц в AutoCAD)

По умолчанию - запятая

Ещё один вариант скрипта, только здесь по умолчанию - запятая

Если скрипт работает не везде

Можно попробовать вот эти варианты:

Но этот вариант использует буфер обмена и может нарушить его корректную работу.

Код программы на языке AutoIt (по умолчанию - точка)

date.au3
#include <Constants.au3>
 
HotKeySet("{F9}", "func1")
HotKeySet("{F10}", "func2")
HotKeySet("{NUMPADDOT}", "func3")
HotKeySet("{NUMLOCK}", "func4")
 
Opt("TrayMenuMode", 1) ; Default tray menu items (Script Paused/Exit) will not be shown
 
Local $my1item = TrayCreateItem("Точка", -1, -1, 1)
TrayItemSetState(-1, $TRAY_CHECKED)
Local $my2item = TrayCreateItem("Запятая", -1, -1, 1)
TrayCreateItem("")
Local $showinfo = TrayCreateItem("О программе")
TrayCreateItem("")
Local $exititem = TrayCreateItem("Exit")
 
Local $myitem = 1
 
TraySetState()
 
While 1
   Local $msg = TrayGetMsg()
	Select
	  Case $msg = 0
		 ContinueLoop
	  Case $msg = $my1item
		 $myitem = 1
		 ContinueLoop
	  Case $msg = $my2item
		 $myitem = 2
		 ContinueLoop
	  Case $msg = $exititem
		 ExitLoop
	  Case $msg = $showinfo
		 MsgBox(0, "О программе", "Автор: Дмитрий Руденко" & @LF & "E-mail: 3952800@gmail.com" & @LF & "http://fordewind.org/" & @LF & "Программа распространяется бесплатно")
		 ContinueLoop
	EndSelect 
WEnd
 
Func func1()
   Send(@YEAR & '-' & @MON & '-' & @MDAY)
EndFunc
 
Func func2()
   Send(@YEAR & '-' & @MON & '-' & @MDAY & '_' & @HOUR & '-' & @MIN)
EndFunc
 
Func func3()
   sleep(35)
   IF $myitem = 1 then 
	  send("{ASC 046}")
   ElseIf $myitem = 2 Then
	  send("{ASC 044}")
   EndIf
EndFunc
 
Func func4()
   Send("{ESCAPE}")
   Send("{NUMLOCK on}")
EndFunc

Только дата-время на Python (автоустановщик)

Скачиваем и устанавливаем Python отсюда: https://www.python.org/downloads/

Дальше вроде нужна перезагрузка, чтобы пути в PATH прописались. После перезагрузки просто стартуем вот этот скрипт. Должно всё работать - по F9 дата, по F8 дата-время (если на ноуте пробуете, обратите внимание на кнопку Fn, она может путать карты). Если не работает - пишите, будем разбираться

date-install.cmd
python -m pip install --upgrade pip
python -m pip install keyboard
echo from datetime import datetime > "%homedrive%%homepath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\date.pyw"
echo import keyboard >> "%homedrive%%homepath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\date.pyw"
echo keyboard.add_hotkey('F9', lambda: keyboard.write(datetime.now().strftime('%%Y-%%m-%%d'))) >> "%homedrive%%homepath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\date.pyw"
echo keyboard.add_hotkey('F8', lambda: keyboard.write(datetime.now().strftime('%%Y-%%m-%%d_%%H-%%M'))) >> "%homedrive%%homepath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\date.pyw"
echo keyboard.wait() >> "%homedrive%%homepath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\date.pyw"
"%homedrive%%homepath%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\date.pyw"

Обсуждение

Клошар, 2013-02-13 18:21
Полезная утилита.

Несколько смущает, что вставка даты блокирует стандартную быструю клавишу для включения трекинга F10. Понимаю, что все клавиши заняты какими-либо программами под свои нужды, но заменять клавиши по умолчанию - моветон. Как выход я бы предложил усложнить вставку даты, например Cntr + Shift + Alt +F10 :/
Dmitry Rudenko, 2013-02-13 21:07
Добрый вечер.
Поправить код под Ваше сочетание клавиш - дело 1 минуты. Вы можете сделать сами или попросить меня - мне не сложно
Клошар, 2013-02-14 11:27
Спасибо, чего-то не подумал на эту тему.
Долго думал на какие сочетания заменить (Cntr + F9 назначить у меня не получилось), потом решил эти строчки просто закоментить ))
Dmitry Rudenko, 2013-02-14 11:37, 2013-02-14 11:42
Вот здесь описание сочетаний, которые можно сделать горячими: http://www.autoitscript.com/autoit3/docs/functions/Send.htm

Сочетание Ctrl+F9 должно (теоретически) выглядеть как:
HotKeySet("^{F9}", "func1")
Клошар, 2013-02-14 11:57
Спасибо, получилось.
RIP, 2014-11-06 12:40
Спасибо огромное, вы просто воплотили мечту всей моей жизни:)
Zander, 2014-12-12 14:57
Спасибо, все работает!
Павел, 2016-04-05 15:51
А можно с помощью данной программы сделать чтоб клавиша F1 не вызывала справку?
Dmitry Rudenko, 2016-04-05 15:53
Думаю, что нет.
Пенко, 2017-09-20 15:44
Очень понравилась программа.
Вставил в Startup.
Спасибо автор.
Клошар, 2020-10-19 16:24
Понимаю, что около 8-ми лет, но для меня эта утилита не устарела! После обновления autocad до версии 2021 в командной строке перестали печататься точки (и запятые). В остальных программах всё нормально. Может есть решение?
Ваш комментарий:
   __  ___  __  __   __ __
  /  |/  / / / / /  / //_/
 / /|_/ / / /_/ /  / ,<   
/_/  /_/  \____/  /_/|_|
 
PDF Export Download this page as a pdf Text Export Download this page as a plain text
формат_даты.txt · Последнее изменение: 2023-01-02 21:31 (внешнее изменение)

Инструменты страницы