wake-up-neo.com

Google Text & Tabellen / Laufwerk - Nummerieren Sie die Überschriften

Ist es möglich, die Überschriften in einem Google Docs/Drive-Dokument zu nummerieren?

70
ZehnVon12

Wenn Sie es etwas einfacher haben möchten, gibt es ein Google Add-On mit dem Namen "Inhaltsverzeichnis" , mit dem Sie Ihre Überschriften nummerieren können.

So installieren Sie dieses Add-On:

  1. Klicken Sie auf Add-Ons> Add-Ons herunterladen.
  2. Klicken Sie auf das Symbol "Inhaltsverzeichnis" oder suchen Sie nach diesem Addon, um es zu installieren

Dann sollte Ihr Inhaltsverzeichnis in Ihrer Seitenleiste erscheinen. Klicken Sie auf das Menü Überschriften-Zahlenformat und wählen Sie 1.2.3

Sie müssen Ihr Dokument neu formatieren, wenn Sie ein altes haben, um die Nummern zu aktualisieren, aber das Addon funktioniert tatsächlich sehr gut.

Ich habe gesehen die Antwort in diesem Forum .

80
Aitor

Update: jetzt verfügbar in github .

Update 2: behandelt jetzt leere Überschriften und leere Zeilen dank 2 Pull Requests auf Github.


Ich habe das von Mikko Ohtamaa erwähnte Skript ​​geändert und ein Google Apps-Skript erstellt, das ein Überschriften-Tool Dokument-Menü hinzufügt, mit dem Sie:

  • automatische Nummer Überschrift
  • überschriften löschen

Automatische Nummerierung von Google Documents-Überschriften:

  1. Öffnen Sie Ihr Dokument> Extras> Skripteditor ...
  2. Starten Sie ein leeres Projekt
  3. Fügen Sie den folgenden Code ein und speichern Sie ihn mit Ihrem bevorzugten Namen
  4. Wählen Sie Ausführen> onOpen und autorisieren Sie das Skript zum ersten Mal
  5. Wählen Sie Run> onOpen
  6. Wechseln Sie zu Ihrem Dokument und probieren Sie die Funktionen im erstellten benutzerdefinierten Menü Überschriften-Tools aus.

~~ Haftungsausschluss: Sie haben möglicherweise Probleme mit leeren Überschriften. Sie können diese jedoch jederzeit beheben und die Aktion erneut ausführen. ~~

Code zum Kopieren und Einfügen:

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]+/, ''));
    }
  }

}
39
Luciano

Das Google Text & Tabellen-Add-On für Überschriften-Nummern https://chrome.google.com/webstore/detail/heading-numbers/pomhgonejhponfnckfnonolnciipappm scheint die Aufgabe zuverlässig und mit vielen Optionen zu erledigen. Ich bevorzuge dies jedem benutzerdefinierten Skript.

  • verwenden Sie das Google Text & Tabellen-Menü "Add-Ons".
  • suche nach "Überschriften"
2
Marc

Alles, was Sie tun müssen, ist, vorherige Überschriften zu kopieren/einzufügen.

Wenn Sie ein Element der nummerierten Liste kopieren und einfügen, behält es seine Nummerierung bei und ändert die Nummer in relevanten Fällen automatisch.

1
alexkovelsky