Est-il possible de numéroter les titres d'un document Google Docs/Drive ?
Réponses
Trop de publicités?Si vous voulez quelque chose de plus simple, il existe un module complémentaire de Google appelé "Table des matières" qui vous permettra de numéroter vos rubriques.
Pour installer ce module complémentaire :
- Cliquez sur le lien Add-Ons > Get Add-Ons.
- Cliquez sur l'icône "Table des matières" ou recherchez ce module complémentaire pour l'installer.
Votre table des matières devrait alors apparaître dans votre barre latérale. Cliquez sur le menu Format des numéros d'en-tête et choisissez 1.2.3.
Vous devez reformater votre document si vous en avez un ancien afin de "rafraîchir" les chiffres, mais l'addon fonctionne très bien.
J'ai vu la réponse dans ce forum .
Mise à jour : maintenant disponible en github .
Mise à jour 2 : gère maintenant les titres vides et les lignes vides grâce à 2 demandes de pull sur github.
Mise à jour 3 : github et code ci-dessous corrigés pour gérer l'identification du nouveau HEADING des Docs.
J'ai modifié le script mentionné par Mikko Ohtamaa et créé un script de Google Apps qui ajoute un Outils pour les rubriques Le menu Document qui vous permet de :
- Numéro d'immatriculation automatique Titre
- des numéros d'en-tête clairs
Comment numéroter automatiquement les titres des documents Google :
- Ouvrez votre document > Outils > script...
- Démarrer un projet vierge
- Collez le code ci-dessous et enregistrez avec votre nom préféré.
- Sélectionnez Run > onOpen et autorisez le script pour la première fois.
- Sélectionnez Run > onOpen
- Passez à votre Document et essayez les fonctions sur le Outils pour les rubriques création d'un menu personnalisé.
~~ Avis de non-responsabilité : vous pouvez avoir des problèmes avec les rubriques vides Mais vous pouvez toujours les corriger et relancer l'action.
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 (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]+/, ''));
}
}
}
Depuis la rédaction de ce document (avril 2020), un grand nombre d'applications proposées sont obsolètes ou ne fonctionnent plus.
La méthode pour les titres numérotés que j'ai trouvée efficace est la suivante :
- Allez à "Get add-ons
- Rechercher et installer Outils Markdown
Markdown Tools dispose d'une option permettant d'utiliser des titres numérotés. Cela fonctionne comme un charme avec la table des matières intégrée de Google.
Pour créer une table des matières :
- Aller à l'élément de menu Insérer et sélectionnez Table des matières
J'ai écrit une version pour les en-têtes markdown, mais elle prend également en charge les numéros d'en-tête ordinaires. La source est ici https://github.com/jordan2175/markdown-tools et est disponible via G Suite Marketplace en tant que "Markdown Tools".
- Réponses précédentes
- Plus de réponses