Google Docs / Drive – numéroter les rubriques

Est-il possible de numéroter les rubriques dans un document Google Docs / Drive?

Si vous voulez quelque chose de plus simple, il existe maintenant un module complémentaire Google appelé “Table des matières” qui vous permettra de numéroter vos titres.

Pour installer ce module complémentaire:

  1. Cliquez sur les modules complémentaires> Obtenir des modules complémentaires.
  2. Cliquez sur l’icône “Table of Contents” ou recherchez cet addon pour l’installer

Ensuite, votre table des matières devrait apparaître dans votre barre latérale. Cliquez sur le menu Format des numéros de cap et sélectionnez 1.2.3.

Vous devez reformater votre document si vous en avez un ancien afin de «rafraîchir» les chiffres, mais en fait, l’addon fonctionne très bien.

J’ai vu la réponse dans ce forum .

Mise à jour: maintenant disponible dans github .

Mise à jour 2: gérer maintenant les titres vides et les lignes vides grâce à 2 requêtes de tirage sur github.


J’ai modifié le script mentionné par Mikko Ohtamaa et créé un script Google Apps qui ajoute un menu Document Outils de titres qui vous permet de:

  • numéro automatique
  • Effacer les numéros de rubriques

Comment numéroter automatiquement les titres Google Documents:

  1. Ouvrez votre document> Outils> Editeur de script …
  2. Démarrer un projet vide
  3. Collez le code ci-dessous et sauvegardez avec votre nom préféré
  4. Sélectionnez Exécuter> onOpen et autorisez le script pour la première fois
  5. Sélectionnez Exécuter> onOpen
  6. Passez à votre document et essayez les fonctions du menu personnalisé des outils de titres créé.

~~ Avertissement: vous pouvez avoir des problèmes avec les titres vides. Mais vous pouvez toujours les réparer et exécuter l’action à nouveau.

Code à copier et coller:

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

Vous pouvez utiliser le service Document dans Apps Script pour accéder aux en-têtes d’un document Google Drive: https://developers.google.com/apps-script/service_document

Tout ce que vous avez à faire est de copier / coller les en-têtes précédents.

Si vous copiez et collez un élément de la liste numérotée, il conserve sa numérotation et modifie automatiquement le nombre dans les cas pertinents.

Les numéros de rubriques des modules complémentaires de Google Documents https://chrome.google.com/webstore/detail/heading-numbers/pomhgonejhponfnckfnonolnciipappm semblent faire le travail de manière fiable et avec de nombreuses options. Je préfère cela à tout script personnalisé.

  • utilisez le menu Google Documents “Modules”
  • rechercher “Numéros de titre”