<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Точка вместо запятой, запятая вместо точки]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=4190</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=4190&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Точка вместо запятой, запятая вместо точки».]]></description>
		<lastBuildDate>Sat, 31 Dec 2022 11:19:26 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=156153#p156153</link>
			<description><![CDATA[<p><strong>tubudum</strong>, спустя 13 лет: &quot;А, да, точно, щас исправлю&quot;.</p>]]></description>
			<author><![CDATA[null@example.com (ypppu)]]></author>
			<pubDate>Sat, 31 Dec 2022 11:19:26 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=156153#p156153</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=156150#p156150</link>
			<description><![CDATA[<p><strong>tubudum</strong><br />Ваш код приводит к тому, что нельзя, например, использовать вопросительный знак, который рядом с правым Shift находится.</p>]]></description>
			<author><![CDATA[null@example.com (pecatum)]]></author>
			<pubDate>Sat, 31 Dec 2022 05:56:46 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=156150#p156150</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=156149#p156149</link>
			<description><![CDATA[<p>На всякий случай для тех, кто ищет, как сделать всегда точку на Numpad, незавсисимо от раскладки:<br /></p><div class="codebox"><pre><code>Numpaddot::
SendInput, .</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (pecatum)]]></author>
			<pubDate>Sat, 31 Dec 2022 05:55:40 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=156149#p156149</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=40365#p40365</link>
			<description><![CDATA[<p>Спасибо, попробую.</p>]]></description>
			<author><![CDATA[null@example.com (Karam)]]></author>
			<pubDate>Tue, 12 Oct 2010 13:00:25 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=40365#p40365</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=40340#p40340</link>
			<description><![CDATA[<p>В теме, которую я указывал выше - решение теперь есть!</p>]]></description>
			<author><![CDATA[null@example.com (Steve Key)]]></author>
			<pubDate>Tue, 12 Oct 2010 06:39:19 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=40340#p40340</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=39911#p39911</link>
			<description><![CDATA[<p>Нет, не подскажу, не моя стезя.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Tue, 05 Oct 2010 11:00:22 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=39911#p39911</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=39909#p39909</link>
			<description><![CDATA[<p>Спасибо, учту!</p><p>А по сабжу ничего не подскажете?</p>]]></description>
			<author><![CDATA[null@example.com (Steve Key)]]></author>
			<pubDate>Tue, 05 Oct 2010 10:36:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=39909#p39909</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=39872#p39872</link>
			<description><![CDATA[<p><span style="color: Green"><strong>Steve Key</strong>, используйте <a href="http://forum.script-coding.com/help.php#bbcode">тэг «url»</a> для оформления ссылок на форуме. Я исправил.</span></p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Mon, 04 Oct 2010 13:02:00 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=39872#p39872</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=39870#p39870</link>
			<description><![CDATA[<div class="quotebox"><cite>Karam пишет:</cite><blockquote><p>Тогда возможно у меня какой-нибудь конфликт в скрипте ahk. Надеюсь дело не в системе: WinXP SP3 rus.<br />Буду разбираться.</p></blockquote></div><p>Это дело в программах. В Word, например, часто такое...<br />Вот <a href="http://forum.script-coding.com/viewtopic.php?pid=39452#p39452">здесь</a> можете глянуть (решения там нет).</p>]]></description>
			<author><![CDATA[null@example.com (Steve Key)]]></author>
			<pubDate>Mon, 04 Oct 2010 12:34:32 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=39870#p39870</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=35529#p35529</link>
			<description><![CDATA[<p>Тогда возможно у меня какой-нибудь конфликт в скрипте ahk. Надеюсь дело не в системе: WinXP SP3 rus.<br />Буду разбираться.</p>]]></description>
			<author><![CDATA[null@example.com (Karam)]]></author>
			<pubDate>Mon, 10 May 2010 14:39:23 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=35529#p35529</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=35512#p35512</link>
			<description><![CDATA[<p>Попробовал Ваш код — у меня {ASC 63} нормально отображается в AkelPad&#039;e при любом языке. Альтернативный вариант — при русской раскладке посылать русское сочетание клавиш для вопроса, при английской — английское.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Mon, 10 May 2010 02:15:44 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=35512#p35512</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=35481#p35481</link>
			<description><![CDATA[<p>Спасибо за свой вариант решения проблемы!<br />У меня ранее было так <br /></p><div class="codebox"><pre><code>SC035:: Send, {ASC 46} ;кнопка русской точки=точка 
+SC035:: Send, {ASC 44} ;кнопка русской точки с Shift=запятая
^SC035:: Send, {ASC 63} ;кнопка русской точки с Ctrl=вопросительный знак
SC053:: Send, {ASC 44} ;клавиша NumDel высылает нажатие запятой
^sc053:: Send, {ASC 46} ;кнопка Num Del+Ctrl=точка</code></pre></div><p>Однако осталась проблема, которая есть в обоих вариантах.<br />Если клавише отправлять {ASC 63}, то не всегда в том же окне AkelPad срабатывает знак вопроса. Насколько я понял это зависит от языка раскладки клавиатуры. При первом нажатии появляется знак вопроса, а последующие нажатия приводят к появлению квадратиков. <br />То же было в отношении точки. Однако в твоём коде используется не номер символа по кодовой странице, а другой приём. Благодаря этому, скрипт срабатывает так, как и планировалось, т.е. если планировалась точка, то точка и появляется.<br />Можно ли изменить код, чтобы знак вопроса появлялся также стабильно во всех текстовых приложениях независимо от раскладки клавиатуры?</p>]]></description>
			<author><![CDATA[null@example.com (Karam)]]></author>
			<pubDate>Sun, 09 May 2010 12:56:21 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=35481#p35481</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=33421#p33421</link>
			<description><![CDATA[<p>Ох неизящно наваял толком не оттестив... Косяки повалились в других местах. Исправляюсь.<br />Изменил код в предидущем сообщении, тем самым вроде избавил от глюков, добавил описание.</p>]]></description>
			<author><![CDATA[null@example.com (tubudum)]]></author>
			<pubDate>Sat, 27 Feb 2010 07:14:05 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=33421#p33421</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=33199#p33199</link>
			<description><![CDATA[<p>Закрепляем точку и запятую на клавишах независимо от текущей расскладки.<br />Возможно, в описании (приведеном в начале скрипта) разбираться муторно, но кто захочет вникнет без проблем...</p><div class="codebox"><pre><code>/*
Закрепляем точку и запятую на кнопках независимо от текущей расскладки

на NumPad NumLock = запятая
на NumPad клавиша точки/Del = точка
клавиша русской точки = точка (как штатно в русской раскладке)
клавиша русской точки с нажатым Shift`ом = запятая (как штатно в русской раскладке)
клавиша русской точки с нажатым Ctrl`ом = &quot;/&quot; (как штатно в ангийской раскладке)
клавиша русской точки с нажатым Alt`ом = &quot;?&quot; (как штатно в ангийской раскладке)
клавиша русской точки с нажатым Ctrl+Shift`ом = &quot;?&quot; (как штатно в ангийской раскладке) ЗАКОММЕНТИРОВАНО
RWin = запятая
AppsKey = запятая
Ctrl+AppsKey = контекстное меню (штатное действие кнопки AppsKey)

Чтобы не терять функционал кнопки русской точки в ангийском языке символы &quot;/&quot; и &quot;?&quot; вводятся с нажатым Ctrl`ом или  Ctrl+Shift`ом соответственно, однако если в системе комбинация клавиш Ctrl+Shift отвечает за смену языка, то потенциально возможны проблемы, хотя у меня работает корректно (если будут проблемы можно использовать Alt+русская точка для высыла вопросительного знака в скрипте закомментировано). Штатное действие NumLock выполняется от комбинаций Alt+NumLock или Shift+NumLock или Control+Shift+NumLock само, без указания комбинации в скрипте. До кучи оставил запятую на правом Win, однако ввиду отсутствия этой клавиши на многих ноутах удобнее использовать AppsKey - клавишу контекстного меню, что рядом с правым контролом (вызыв штатного действия кнопки контекстного меню при помощи Ctrl+AppsKey). Ввел максимум - лишнее прибиваем по усмотрению!
*/

SendMode, InputThenPlay
$vk6E:: ; клавиша точки/Del на NumPad = точка
    EngAction = {vkBE} ; при ENG расскладке
  RusAction = {vkBF} ; при RUS расскладке
    GoTo, LookLanguage

$vkBF:: ; клавиша русской точки = точка
    EngAction = {vkBE}
  RusAction = {vkBF}
    GoTo, LookLanguage

$vk5C:: ; RWin - правая кнопка Windows = Запытая
$vk90:: ; NumLock = Запытая
$vk5D:: ; AppsKey - клавиша контекстного меню = запятая
$+vkBF:: ; Shift+клавиша русской точки (русская запятая) = запятая
  EngAction = {vkBC}
  RusAction = {vk6E}
    GoTo, LookLanguage

$^vk5D:: Send {vk5D} ; Ctrl+AppsKey = контекстное меню
$^vkBF:: Send {vk6F} ; Ctrl+русская точка = /
;$!vkBF:: Send {ASC 63} ; Alt+русская точка = ? (вопросительный знак)
$^+vkBF:: Send, {ASC 63} ; Ctrl+Shift+русская точка = ? (вопросительный знак)

LookLanguage:
    Locale1=0x4090409  ; ENG
    Locale2=0x4190419  ; RUS
    WinGet, WinID,, A
    ThreadID:=DllCall(&quot;GetWindowThreadProcessId&quot;, &quot;Int&quot;, WinID, &quot;Int&quot;, &quot;0&quot;)
    InputLocaleID:=DllCall(&quot;GetKeyboardLayout&quot;, &quot;Int&quot;, ThreadID)
  if(InputLocaleID=Locale1) ;если ENG
        Send %EngAction%
    else if(InputLocaleID=Locale2) ;если RUS
        Send %RusAction%
Return</code></pre></div><p>По поводу высыла значений кодов ASCII: берем значения символов из таблицы символов в WinXP она в Пуск-&gt;Программы-&gt;Стандартные-&gt;Служебные-&gt;Таблица символов, затем переводим hex=0x31-&gt;dec=49 сделать это можно даже стандартным калькулятором в инженерном виде. Если используете программу PSPad то выбрать в меню &quot;Инструменты&quot; -&gt; &quot;Таблица ASCII&quot; (или Alt+A) - и сразу использовать содержимое столбца &quot;DEC&quot; (там же кстати есть еще и &quot;hex&quot; и &quot;html&quot;).<br />Ту же точку клавишей NumDel можно выслать и вот так:<br /></p><div class="codebox"><pre><code>$vk6E:: Send, {ASC 46} ; NumPad, клавиша точки/Del (NumPadDel=точка)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (tubudum)]]></author>
			<pubDate>Sat, 20 Feb 2010 12:34:41 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=33199#p33199</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Точка вместо запятой, запятая вместо точки]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=33140#p33140</link>
			<description><![CDATA[<p><strong>Rover</strong><br />Вообще мысль интересная. Но ведь потом на чужих клавиатурах будете путаться.<br />Вот это вроде работает:<br /></p><div class="codebox"><pre><code>$vkBF::
    If RU()
        Send, +{vkBF}
    Else
        Send, {vkBF}
Return

$+vkBF::
    If RU()
        Send, {vkBF}
    Else
        Send, +{vkBF}
Return


RU()    ; Проверка языка ввода.
{
    WinID := WinExist(&quot;A&quot;)
    ThreadID := DllCall(&quot;GetWindowThreadProcessId&quot;, &quot;UInt&quot;, WinID, &quot;UInt&quot;, 0)
    InputLocaleID := DllCall(&quot;GetKeyboardLayout&quot;, &quot;UInt&quot;, ThreadID, &quot;UInt&quot;)
    If InputLocaleID = 0x4190419
        Return True
    Else
        Return False
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Fri, 19 Feb 2010 07:16:52 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=33140#p33140</guid>
		</item>
	</channel>
</rss>
