เป็นไปได้ไหมที่จะใส่หมายเลขหัวเรื่องในเอกสาร Google Docs / Drive
เป็นไปได้ไหมที่จะใส่หมายเลขหัวเรื่องในเอกสาร Google Docs / Drive
คำตอบ:
หากคุณต้องการสิ่งที่ง่ายกว่านี้มีส่วนเสริมของ Google ที่เรียกว่า"สารบัญ"ที่จะช่วยให้คุณสามารถกำหนดหมายเลขหัวเรื่องของคุณได้
ในการติดตั้งโปรแกรมเสริมนี้:
จากนั้นสารบัญของคุณควรปรากฏในแถบด้านข้างของคุณ คลิกที่เมนู Heading Numbers Format แล้วเลือก 1.2.3
คุณต้องฟอร์แมตเอกสารของคุณใหม่หากคุณมีเอกสารเก่าเพื่อที่จะ 'รีเฟรช' ตัวเลข แต่จริงๆแล้วส่วนเสริมนั้นทำงานได้ดีมาก
ฉันเคยเห็นคำตอบในฟอรัมนี้
ปรับปรุง:ตอนนี้ที่มีอยู่ในGitHub
อัปเดต 2:ตอนนี้จัดการส่วนหัวและบรรทัดว่างด้วยคำขอดึง 2 รายการบน github
อัปเดต 3: github และโค้ดด้านล่างได้รับการแก้ไขเพื่อจัดการกับการระบุหัวเอกสาร
ฉันแก้ไขสคริปต์ที่กล่าวถึงโดย Mikko Ohtamaaและสร้าง Google Apps Script ที่เพิ่มเมนูเอกสารของHeadings toolsที่ช่วยให้คุณ:
วิธีใส่หมายเลข 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]+/, ''));
}
}
}
สิ่งที่คุณต้องทำคือคัดลอก / วางส่วนหัวก่อนหน้านี้
หากคุณคัดลอกและวางรายการที่มีหมายเลขรายการใด ๆ รายการนั้นจะยังคงหมายเลขไว้และจะเปลี่ยนหมายเลขโดยอัตโนมัติในกรณีที่เกี่ยวข้อง
ตั้งแต่เขียน (เมษายน 2020) แอพที่เสนอจำนวนมากล้าสมัยหรือไม่ทำงานอีกต่อไป
วิธีการสำหรับส่วนหัวที่มีหมายเลขที่ฉันพบว่าได้ผลมีดังต่อไปนี้:
Markdown Tools มีตัวเลือกในการใช้ส่วนหัวที่มีตัวเลข ใช้งานได้อย่างมีเสน่ห์ด้วยสารบัญในตัวของ Google
ในการสร้างสารบัญ:
ฉันเขียนเวอร์ชันสำหรับการทำหัวเรื่อง markdown แต่ก็รองรับหมายเลขหัวเรื่องธรรมดาเช่นกัน แหล่งที่มาอยู่ที่https://github.com/jordan2175/markdown-toolsและมีให้บริการผ่าน G Suite Marketplace ในชื่อ "Markdown Tools"
ส่วนเสริม "สารบัญ" ที่กล่าวถึงก่อนหน้านี้ไม่มีให้บริการ ณ วันนี้ ฉันติดตั้งชื่อ " Markdown Tools " เมื่อติดตั้งแล้วคุณต้องใช้สไตล์หัวเรื่องเนทีฟจากนั้นไปที่Add-Ons> Markdown Tools> Heading numbersและเลือกรูปแบบการกำหนดหมายเลขที่ต้องการซึ่งจะนำไปใช้กับส่วนหัวทั้งหมดในเอกสาร