Google Dokümanlar’da başlık numaralandırması alabilir miyim?


Yanıtlar:


6

Peki, belgeyi böyle yazarak bunu yapmak daha kolay görünüyor:

var pars = DocumentApp.getActiveDocument().getBody().getParagraphs();
var counterh1 = 0;
for(var i=0; i < pars.length; i++) {
    var par = pars[i];
    var hdg = par.getHeading();
    if (hdg == DocumentApp.ParagraphHeading.HEADING1) {
          counterh1++; 
          var content = par.getText();
          var chunks = content.split('\t');
          if(chunks.length > 1) { 
              par.setText(counterh1+'.\t'+chunks[1]); 
          } else {
              par.setText(counterh1+'.\t'+chunks[0]); 
          }
    }
}

1
Haklısın, google komut dosyası çok güçlü!
Martin Delille,

13

Aslında, HTML / CSS'yi düzenlemeden bile mümkündür. Size boş bir belge ile bir örnek vereceğim, ancak bir kere nasıl çalıştığını anlayacağınız zaman, zaten var olan bir belge üzerinde yapabileceksiniz. Ayrıca zaten klavye kısayollarını kullanmıyorsanız, onları kullanmaya başlamanızı öneririm (bu örnekte Mac'in kısayollarını kullanıyorum, ancak kendi işletim sisteminiz için doğru olanları kolayca bulabilirsiniz).

  1. Yeni bir belge oluştur
  2. Başlık 1'i uygulayın ( ⌘⌥1)
  3. Numaralı Listeyi Uygula ( ⌘⇧7)
  4. Tip "ilk" ve basınReturn
  5. Başlık 1'i uygulayın ( ⌘⌥1), "Second" yazın ve tuşuna basın.Return
  6. Başlık 1'i uygulayın ( ⌘⌥1), "Üçüncü" yazın ve tuşuna basın.Return

Bu noktada şuna benzeyen bir şeye sahip olmalısınız:

Google Dokümanlar'daki Numaralı Başlıklar

  1. İmlecinizi İlk başlığın sonuna getirin
  2. Returnİki kez basın
  3. "Merhaba Dünya!" Yazın .
  4. Başlıkların geri kalanı için prosedürü tekrarlayın

Şimdi belgeniz şöyle görünmeli:

Aralarında fazladan metin olan numaralı başlıklar

Fark edebileceğiniz gibi, otomatik numaralandırma hala oradadır ve istediğiniz şekilde daha fazla Başlık ekleyerek ve hatta gerektiğinde numaralandırılmış alt başlıkları da kolayca deneyebilirsiniz. Daha fazla ayrıntıya girmiyorum, ancak burada başlıklılar için doğru biçimlendirmeli yuvalanmış numaralı listeler içeren bir örneği kontrol edebilirsiniz:

Numaralandırılmış başlıklar için eksiksiz örnek


1
Bu güzel görünüyor ama tamamen işlevsel görünmüyor: Belgenin sonuna nasıl yeni bir başlık 1 eklerim? Başlık 1'i ayarladıysam ve sonra numara listesini uygularsam, 1'den başlamaya başlar ...
Martin Delille

3
@tinmaru Bu biraz zor .. ama yine de yapılabilir. Numaralandırmaya devam etmek istediğiniz önceki başlığın sonuna gidin, enter tuşuna basın ve ardından başlığı uygulayın. Daha sonra bunu kesin (geride bırakılan sayıya aldırmayın), belgenin sonuna gidin ve yapıştırın. Sayının şimdi doğru olduğunu göreceksiniz, bu nedenle gidip varsa boş başlığı silerek önceki hatayı düzeltmeniz yeterlidir.
Lipis

1
Güzel! Bu bir numara;)
Martin Delille

@tinmaru cevap yararlı ise onu işaretlemeyi unutmayın;)
Lipis

1
evet üzgünüm tamamen unuttum! Yardımınız için teşekkürler :)
Martin Delille

2

Bunun artık OP ile ilgili olamayacağını biliyorum, ancak artık eklentileri kullanma olasılığı var. İçindekiler Eklentisinde, başlık için numaralandırma düzenini seçebileceğiniz ve gerekenleri yapan bir işlev vardır:

1
1.1
2
2.1
2.1.1

Umarım bir şey için faydalı olur.

Eklenti bağlantısı

Yasal Uyarı: Bu yalnızca Chrome'da çalışıyor olabilir, ancak hey, en azından işe yarıyor.

Nasıl kullanılır: Sağ tarafta bir widget vardır ve bunun üzerinde numaralandırma düzeninizi seçebilir ve başlıkları her zamanki yenileme düğmesiyle yenileyebilirsiniz.

Bu yüzden sadece numaralandırma düzenini ayarlayın ve düzenlemeyi tamamladıktan sonra başlığı güncelleyin; doğru ve güncellenmiş section/subsection/...numaralara sahip olacaksınız .


Mükemmel. Bana göre bu "cevap". Benim için Firefox'ta çalışıyor.
AronVanAmmers 22:14

2

Şimdi, herhangi bir özel numaralandırma stili eklemek için kullanabileceğiniz Başlık Numaraları adında bir eklenti var . Otomatik başlık numaralarını seçmenizi / tanımlamanızı, güncellemenizi ve silmenizi sağlar.

Önceden tanımlanmış stiller:

  • 1.2.3 - İzleyen nokta olmadan rakamlar
  • 1.2.3. - Sondaki noktaya sahip rakamlar
  • abc - Küçük harfler
  • ABC - Büyük harfler
  • i.ii.ii - Küçük harfli roman
  • I.II.III - Büyük harf roman
  • 1) a) i) - Sonunda değişen parantez içinde stili değiştirme

Bu eklentiyi birkaç hafta önce yayınladım. Üzerine göz atın ana sayfam veya eklenti mağazasında .


SSS için giriş Ben otomatik başlık numaralandırma nasıl eklerim? diyor ki: "Eklenti yüklüyse," Eklentiler "->" Başlık numaraları "nı seçin ve sonra stilinizi seçin." Ancak bir belgeye eklerken, bu görünmedi. Menüde "Başlık numaraları" görünmeden önce belgeyi yeniden yüklemem gerekiyordu. Muhtemelen bir Google hatasıdır ve Başlık numaraları uygulamasında bir hata değildir.
bgoodr 20:15


1

Bu yardımcı olur umarım

/*
Credits: 

https://productforums.google.com/forum/#!topic/docs/w4MXeqJaefU
http://webapps.stackexchange.com/questions/23861/header-numbering-in-google-docs

Instructions to use:

In a Google Doc

Go to Tools > Script Editor 
Select the option to create the script for Google Docs.
Replace the Content of Code.gs with the code below.
Save it and name the project as say addHeaderNumbering.
Click play icon for the function addHeaderNumbering (authorize it when asked).

*/

function addHeaderNumbering () {
  var pars = DocumentApp.getActiveDocument().getBody().getParagraphs();
  var counterHeader = [0, 0, 0, 0, 0, 0];

  for(var i=0; i<pars.length; i++) {
    var par = pars[i];
    var hdg = par.getHeading();
    if (hdg == DocumentApp.ParagraphHeading.HEADING1) {

      _addNumberingForHeaderType(DocumentApp.ParagraphHeading.HEADING1, par, 0, counterHeader);
    } else if (hdg == DocumentApp.ParagraphHeading.HEADING2) {
      _addNumberingForHeaderType(DocumentApp.ParagraphHeading.HEADING2, par, 1, counterHeader);
    } else if (hdg == DocumentApp.ParagraphHeading.HEADING3) {
      _addNumberingForHeaderType(DocumentApp.ParagraphHeading.HEADING3, par, 2, counterHeader);
    } else if (hdg == DocumentApp.ParagraphHeading.HEADING4) {
      _addNumberingForHeaderType(DocumentApp.ParagraphHeading.HEADING4, par, 3, counterHeader);
    } else if (hdg == DocumentApp.ParagraphHeading.HEADING5) {
      _addNumberingForHeaderType(DocumentApp.ParagraphHeading.HEADING5, par, 4, counterHeader);
    } else if (hdg == DocumentApp.ParagraphHeading.HEADING6) {
      _addNumberingForHeaderType(DocumentApp.ParagraphHeading.HEADING6, par, 5, counterHeader);
    }
  }
}


function _addNumberingForHeaderType(headerType, paragraph, initIndex, counterHeader) {
  counterHeader[initIndex] = counterHeader[initIndex] + 1;
  var currCounter = _getCurrenNumbering(initIndex, counterHeader);
  for(var ii = initIndex + 1; ii < counterHeader.length; ii++) {
    counterHeader[ii] = 0;
  }
  var content = paragraph.getText();
  var chunks = content.split('. ')

  var result = 'ok'
  if(chunks.length > 1) {

    paragraph.setText(currCounter+'. '+chunks[1]); 
  } else { 
    paragraph.setText(currCounter+'. '+chunks[0]);
  }
}


function _getCurrenNumbering(initIndex, counterHeader) {
  var value = '';
  for ( var i = 0; i <= initIndex; i++) {
    if (value) {
      value += '.';
    }
    value += counterHeader[i];
  }

  return value;
}

1

İçindekiler uygulaması ve Numaralı Başlıklar arasında Firefox kullanan uygulamalar arasında hızlı bir karşılaştırma yaptım. Kuşkusuz, her iki uygulama için de iyileşirse, bu bilgi tarihli olur:

  1. İçindekiler uygulamasının kullanımı için çevrimiçi yardım yoktur (hiç olmadı ya da kaldırılmadı) Yardım düğmesi, http: //lumapps-www.appspot deneme sürümüyle sizi satmaya çalışan bir sayfaya işaret eder. com / tr / yardım sağlamak yerine. Başlık Numaraları http://www.lorut.no/add-ons/heading-numbers-for-google-docs/faq/ adresinde bir SSS sağlar .
  2. İçindekiler ve Başlık Numaraları uygulamaları, başlıkları yeniden numaralandırma açısından birbirleriyle iyi oynamıyor: Başlık Numaralarını kullanarak numaralandırılmış başlıklar oluşturdum ve İçindekiler Tablosunu kullanarak benzer başlıklar uyguladım ve başlıklara iki sayı kümesi ekledi. Aynı durum, önce İçindekileri, sonra Başlık Numaralarını kullanarak başlıkları uygulayarak sırayı tersine çevirirseniz geçerlidir.
  3. İçindekiler, Başlık Numaraları ile aynı sayıda başlık stiline sahip değildir.
  4. Ancak İçindekiler kısmındaki kenar çubuğunun bulunması hala kullanışlıdır. İçindekiler kenar çubuğundan Olduğu Gibi'yi seçiyorum ve içindekileri görmek ve gezinmek için yenile düğmesini tıklayabiliyorum.
  5. Başlık Numaraları bir Silme işlemine sahiptir. İçindekiler değil. Yok Temizle operasyonu değil etkileşim sorunu gidermek onları el düzeltmek zorunda çünkü oldukça ağrılı olan yukarıda anlatılan.
  6. Her iki uygulama da, belgeye eklenen bir İçindekiler bölümünü güncellemez (İçindekiler / İçindekiler menüsü aracılığıyla)
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.