Zeh*_*n12 78 google-docs google-apps-script google-drive-api
是否可以在Google文档/云端硬盘文档中对标题进行编号?
Ait*_*tor 82
如果您想要更简单的东西,现在有一个名为"目录"的Google插件,可以让您为标题编号.
要安装此附加组件:
然后您的目录应出现在侧边栏中.单击Heading Numbers Format菜单,然后选择1.2.3
如果你有一个旧文件,你必须重新格式化你的文件,以"刷新"数字,但实际上插件工作得很好.
Luc*_*ano 40
更新:现在可以在github中使用.
更新2:由于github上的2个拉取请求,现在处理空标题和空行.
我修改了Mikko Ohtamaa提到的脚本并创建了一个Google Apps脚本,它添加了一个标题工具文档菜单,允许您:
如何自动编号Google Documents Headings:
~~ 免责声明:你可能有空标题的问题..但你可以随时修复它们并再次运行.~~
要复制和粘贴的代码:
function onOpen() {
DocumentApp.getUi().createMenu('Headings Tools')
.addItem('Auto Number Headings', 'numberHeadingsAdd')
.addItem('Clear Heading Numbers', 'numberHeadingsClear')
.addToUi();
}
function numberHeadingsAdd(){
numberHeadings(true);
}
function numberHeadingsClear(){
numberHeadings(false);
}
function numberHeadings(add){
var document = DocumentApp.getActiveDocument();
var body = document.getBody();
var paragraphs = document.getParagraphs();
var numbers = [0,0,0,0,0,0,0];
for (var i in paragraphs) {
var element = paragraphs[i];
var text = element.getText()+'';
var type = element.getHeading()+'';
// exclude everything but headings
if (!type.match(/Heading \d/)) {
continue;
}
// exclude empty headings (e.g. page breaks generate these)
if( text.match(/^\s*$/)){
continue;
}
if (add == true) {
var level = new RegExp(/Heading (\d)/).exec(type)[1];
var numbering = '';
numbers[level]++;
for (var currentLevel = 1; currentLevel <= 6; currentLevel++) {
if (currentLevel <= level) {
numbering += numbers[currentLevel] + '.';
} else {
numbers[currentLevel] = 0;
}
}
Logger.log(text);
var newText = numbering + ' ' + text.replace(/^[0-9\.\s]+/, '');
element.setText(newText);
Logger.log([newText]);
} else {
Logger.log(text);
element.setText(text.replace(/^[0-9\.\s]+/, ''));
}
}
}
Run Code Online (Sandbox Code Playgroud)
小智 15
自写作(2020 年 4 月)以来,许多提议的应用程序已过时或不再运行。
我发现有效的编号标题方法如下:
Markdown 工具有一个选项可以使用编号的标题。使用 Google 的内置目录就像魅力一样。
要创建目录:
ale*_*sky 12
您所要做的就是复制/粘贴以前的标题。
如果您复制并粘贴编号列表中的任何项目,则它会保留其编号,并在相关情况下自动更改编号。
| 归档时间: |
|
| 查看次数: |
54990 次 |
| 最近记录: |