Можно ли указывать заголовки в документе Документов Google/Диск?
Документы Google/Диск - укажите заголовки
Ответ 1
Если вы хотите что-то более простое, есть надстройка Google под названием "Оглавление", которая позволит вам нумеровать заголовки.
Чтобы установить это дополнение:
- Нажмите на дополнения> Получить дополнения.
- Нажмите на значок "Оглавление" или найдите это дополнение, чтобы установить его
Тогда ваше оглавление должно появиться на боковой панели. Нажмите на меню Формат номеров заголовков и выберите 1.2.3
Вы должны переформатировать документ, если у вас есть старый, чтобы "обновить" номера, но на самом деле аддон работает очень хорошо.
Я видел ответ на этом форуме.
Ответ 2
Обновление: теперь доступно в github.
Обновление 2: теперь обрабатывает пустые заголовки и пустые строки благодаря 2 запросам pull на github.
Я изменил сценарий , упомянутый Микко Охтамаа, и создал сценарий Google Apps, который добавляет меню заголовков Документ, который позволяет:
- Авто номер Заголовок
- очистить номера заголовков
Как автоматически нумеровать Документы Google Заголовки:
- Откройте документ> Инструменты> Редактор сценариев...
- Начать пустой проект
- Вставьте приведенный ниже код и сохраните его с вашим предпочтительным именем
- Выберите Run> onOpen и авторизуйте скрипт в первый раз
- Выберите Run> onOpen
- Перейдите в документ и попробуйте функции в пользовательском меню Заголовки.
~~Отказ от ответственности: у вас могут быть проблемы с пустыми заголовками. Но вы всегда можете их исправить и снова выполнить действие. ~~
Код для копирования и вставки:
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]+/, ''));
}
}
}
Ответ 3
Все, что вам нужно сделать, это скопировать/вставить предыдущие заголовки.
Если вы копируете и вставляете любой элемент нумерованного списка, он сохраняет свою нумерацию и автоматически изменяет номер в соответствующих случаях.
Ответ 4
Заголовки заголовков документов Google https://chrome.google.com/webstore/detail/heading-numbers/pomhgonejhponfnckfnonolnciipappm, похоже, делают работу надежной и со многими вариантами. Я предпочитаю это по любому изготовленному на заказ script.
- используйте меню "Документы Google" "Надстройки"
- найдите "Заголовки номеров"
Ответ 5
Вы можете использовать службу Document в приложениях Script для доступа к заголовкам в документе Google Диска: https://developers.google.com/apps-script/service_document
Ответ 6
Я написал версию для заголовков уценки, но она также поддерживает простые номера заголовков. Источник находится здесь https://github.com/jordan2175/gdoc-markdown-tools и доступен через G Suite Marketplace как "Инструменты разметки".