所以让我们看看我是否可以正确解释这一点。
我使用 Google 文档来跟踪我在工作中待办事项列表。当我添加需要立即注意的内容时,我会用亮黄色突出显示该项目符号和任务描述。较小的任务,获得不同的颜色等。我根据项目类型将我的任务分解为不同标题下的不同列表(所以我有一个"网站"标题,然后在它下面有一个项目符号列表,用于我需要执行的所有与更新网站有关的任务,我有一个"视频"标题和一个列表下面,其中包含我需要为视频执行的所有任务, 等等(。在每个部分中,我都会根据优先级突出显示。
我的列表很长,有很多部分,如果可以的话,当我用亮黄色突出显示给定部分中的任务为"最高优先级"时,它会 - 自动 - 被复制并移动到我的文档顶部的"优先级"标题下的某个部分,这样我就可以在一个地方看到所有我想完成的高优先级任务在我的所有项目中,无需浏览文档中的每个部分并可能遗漏某些内容。
这可能做到吗?我听说过Google Apps Script,但我从未真正深入研究过它。我有基本的编码知识,通常可以找到HTML,Javascript等。
这样的事情可能吗?我该怎么做呢?
Brenda。
您可能会从以下内容开始:
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var lists = body.getListItems();
var childIndex = 0;
for (var i = 0; i < doc.getNumChildren(); i++) {
var child = doc.getChild(i);
if (child.getType() == DocumentApp.ElementType.LIST_ITEM){
while(child.getType() == DocumentApp.ElementType.LIST_ITEM){
child = doc.getChild(i)
childIndex = body.getChildIndex(child);
Logger.log(childIndex)
i++
}
child = doc.getChild(i-2)
var listId = child.getListId();
Logger.log(childIndex)
// You'll want to do something like...
// if child.getBackgroundColor() == "Yellow"...
// Here you can add an element to your "Priorities" list as well:
// var newElement = child.getParent().insertListItem(childIndex, elementContent);
// newElement.setListId(child);
break;
}
}
这是一个很好的参考: https://stackoverflow.com/a/20729760/5415398
另一个:https://stackoverflow.com/a/26419644/5415398
在这里,您将获得文档,其正文以及其中包含的任何列表。 您可以直接使用 "lists" 变量,也可以循环遍历文档的所有子项,对于LIST_ITEMs的任何子项,可以根据需要处理它们。
您将尝试使用".getBackgroundColor(("函数捕获列表项的突出显示,如果它符合您的条件,则将该项添加到优先级列表中。
(注意:这个答案可以而且应该改进以使其完整。