如何预先填充新的Google日历活动?

时间:2012-03-16 08:11:47

标签: google-calendar-api autohotkey

我的儿子使用谷歌日历作为他的名册(第2层)和家庭作业(第1层)。

当手动将新事件添加到Google日历时,我想预先填充事件文本,以提醒他不要跳过重要数据。

因此,当他点击日历添加新事件(不应修改现有事件)时,文本字段应该已经说明:

主题:章:页面:

我曾尝试使用AutoHotKey,但AutoHotKey间谍未检测到“新事件”窗口。

在Google脚本中,我无法找到像OnOpenNewEvent这样的函数,以便在打开新事件窗口时启动脚本。

有关如何执行此操作的任何建议吗?

2 个答案:

答案 0 :(得分:1)

新的事件窗口只是HTML,所以没有 - 它不是一个新窗口,AHK无法检测到它。

看起来事件模板是一个常见的功能,但我没有找到任何有关如何操作的想法。

一些替代建议:

  • 整理一个脚本,监控日历的RSS / feed feed,并查找缺少所需标签的事件;然后在标签丢失时采取一些措施
  • 创建一个检测一系列击键的autohotkey脚本,然后插入模板。例如,当他键入“.hw”时。在谷歌浏览器窗口或Firefox浏览器窗口中,它将生成模板。见下面的脚本:
#ifWinActive ahk_class Chrome_WidgetWin_0
:C:.hw.::Subj: Chapter: Page:
#ifWinActive ahk_class MozillaWindowClass
:C:.hw.::Subj: Chapter: Page:
#ifWinActive

上述脚本需要教他输入模板文本“.hw。”,但至少记住一件事比三件容易。

答案 1 :(得分:1)

金博尔,

根据您最初的想法,我选择(最初)使用以下内容:

:c*:qq::
SetTitleMatchMode, 2
IfWinActive, Google Calendar - Google Chrome
{
    Send, Subj:  Chapt:  Page:{space}
    Send, {Home}
    Send, {right 6}
}
Else
{
    Send, qq
}
Return

这样,与您的方法不同,总是会执行热门字符串“qq”,但只有在Chrome中打开日历时才会展开。我选择了*,所以hotstring会立即执行。

我从你的方法中学到了一些新东西,根据winActive状态动态设置一个热字符串。我会开始玩这个想法......

你知道哪种方法,你的vs.s.我的效率更高?也许最终没有真正的区别。

是的,我知道如果我愿意,我可以将所有发送线合并为一个。