GitHub Wiki'de ToC veya Kenar Çubuğu


88

GitHub Wiki'de nasıl bir ToC veya kenar çubuğu menüsü oluşturabilirim?

Bazı sözler gördüm ve gollum arka uç onu destekliyor gibi görünüyor, ancak mevcut GitHub projesinde bunu nasıl yapabilirim?

Sayfada otomatik olarak sahip olduğum başlıkları temel alması en iyisidir.

Bu bağlantıların tümü bundan bahsediyor, ancak nasıl yapılacağını göstermiyor:

  • https://gist.github.com/379469 - JavaScript saldırısı
  • https://github.com/blog/774-git-powered-wikis-improved - GitHub bundan bahsediyor:

    "GitHub Wiki'lerin altbilgiler ve kenar çubukları için çok az belgelenmiş bir yeteneği var, bu, git tabanlı Wiki yazarlarımızdan bazılarının aşina olduğu bir şey. Yeni Wiki editörü, sitenizdeki altbilgiler ve kenar çubuklarının sınırlı web tabanlı düzenlenmesini sağlıyor. "


3
GitHub Wikifier'ı geliştirdim: İhtiyacınız olan tüm İçindekiler Tablosunu oluşturacak bir ön-taahhütlü Git Hook. Sadece içeriğinizi yazın ve bırakın onu ele geçirsin. Kontrol etmeye değer olabilir. github.com/kuroir/GitHub-Wikifier
MarioRicalde


Yanıtlar:


76

Çözümünüz çalışırken, GitHub'ın web arayüzünü kullanarak bunu yapmanın daha kolay bir yolu var. Basitçe _Sidebarve / veya adında bir sayfa oluşturabilirsiniz _Footer.

Çok düzeyli Github Wiki kenar çubuğu menü oluşturucusundaki ayrıntılı talimatlara bakın .

Düzenle Orijinal makale gitti ve önbellekte bulamadığım için bağlantıyı güncelledim.


7
@CodeSherpa onlar erişilebilir https://github.com/[user]/[repo]/wiki/_Sidebar/_editvehttps://github.com/[user]/[repo]/wiki/_Footer/_edit
nicerobot

1
Makale harikaydı ancak wikinin URL'sinin nasıl alınacağına dair yanlış (veya güncel olmayan) bilgiler veriyor. Benim kadar kaybettiyseniz, URL'yi https://github.com/<username>/<projectname>.wiki.gitveya SSH'yi kullanmanız gerekir git@github.com:<username>/<projectname>.wiki.git.
NightOwl888

1
Bu ayrıntılı talimatlar oldukça yetersiz. A nedir [[link]]? Buraya bir URL koymak, tüm URL'nin görünmesiyle sonuçlanır.
Pithikos

3
@Pithikos, Github Markdown konuşuyor. Talimatlar sana Markdown'u öğretmek için orada değil. Kenar çubuklarını açıklamak için oradalar.
nicerobot

2
@nicerobot ve bir şeyi açıklamanın en iyi yolu somut bir örnek kullanmaktır ..
Pithikos

26

Projenizin wiki'sindeyken, bir Özel kenar çubuğu ekle bağlantısı vardır . Bunu tıklayın.

Buraya resim açıklamasını girin

Artık diğer Markdown sayfalarını düzenler gibi düzenlediğiniz bir sayfanız var. İçindekiler tablosu yapmak için bunu elle yapmanız gerekir. Otomatikleştirilmiş bir yöntem yoktur (Ağustos 2014 itibariyle). Yani mesela:

# My menu
* [Home][home]
* [Technical documentation][techdocs]
* [User manual][usermanual]

[home]: https://github.com/myproject/wiki/Home
[techdocs]: https://github.com/myproject/wiki/Technical-documentation
[usermanual]: https://github.com/myproject/wiki/User-manual

25

Tamam. Bunu doğru anlayıp anlamadığıma bir bakalım:

  1. GitHub wiki'nizi klonlayın. (Wiki'de bir Git bölümü var. Wiki benzeri kodunuzu kontrol edebilirsiniz.)
  2. Oluşturmak _Sidebar.md
  3. Normal wiki sayfalarında [[link]]kenar çubuğu için kullanın
  4. Kaydet ve GitHub'a geri gönder

Bu süreç baş belasıdır. Bu "gollum" wiki'nin kabul görmesine şaşırdım.

Ayrıca: _Sidebar.md bu nedenle tüm sayfalar için geneldir . Wiki'mi klasörler halinde düzenlemem gerekir, böylece farklı sayfalar için farklı kenar çubukları tanımlayabilirim.


2
Dokümanlara göre, farklı klasörler için farklı kenar çubukları ekleyebilirsiniz: "Kenar çubukları, kendi dizinlerindeki tüm sayfaları ve kendilerine ait bir kenar çubuğu dosyası olmayan tüm alt dizinleri etkiler." bkz: github.com/github/gollum
Subfuzion

10

Asıl sorunun bir yan çubuk (kolay, cevaplarda çözülmüş) veya gerçek bir içindekiler tablosu (cevaplanmamış) oluşturmakla ilgili olduğunu unutmayın.

Söyleyebileceğim tek şey, gollum 2.1 wiki sözdiziminin bir [[_TOC_]]etikete izin verdiğidir , ancak bir GitHub wiki bunu (henüz?)


4
Hiç şansın oldu mu? Tüm bunların kolayca yapılabildiği Trac'tan gelmek çok sinir bozucu.
2013

"Sayfada otomatik olarak sahip olduğum başlıklara dayanarak" içindekiler tablosunun nasıl yapılacağına dair orijinal soruya daha iyi bir yanıtın GitHub Wiki ile şu anda imkansız olduğunu düşünüyorum.
avernet

Bu şu anda yüzlerce kişinin yorum yaptığı açık bir konudur (sayıya bakmak için çok tembel). GitHub'dan henüz haber gelmedi :(
abalter

2017-01-19 itibariyle buna atıfta bulunan ana GitHub sorunları şunlardır: 1. Markdown - İçindekiler 2. README.md
ckib16

4

Sanırım bu Gollum'daREADME anlatılıyor . (Başlık ve kenar çubuğu bölümlerine bakın.)

Esasen, sayfa içeriğini içeren dizinde bir _footer.extve yaparsınız _sidebar.ext.


2

Npm modülünü github-wiki-sidebar uyguladım kullanıcılarının kenar çubuğu menüsünü kolayca oluşturmasına ve sürdürmesine yardımcı olmak .

Kaynak ve Sonuç: https://raw.githubusercontent.com/wiki/adriantanasa/github-wiki-sidebar/images/github-wiki-sidebar-generator.png

Kaynak sayfalar (Wiki yöneticisinde gösterildiği gibi):

Home
Installation
Roadmap
Usage
Usage: Command line modifiers
Usage: Init Mode

Sonuç (özelleştirilmiş siparişle):

Ön Gereksinimler:

  • github wiki deponuzu yerel olarak klonlayın (Wiki kullanıcı arayüzünün sağ alt kısmında görüntülenir)
  • github-wiki-kenar çubuğunu kurun

    git clone <https://github.com/<username>/<my-project-name>.wiki.git
    npm install -g github-wiki-sidebar
    

Wiki menünüzü oluşturun / güncelleyin:

  • github.com wiki yöneticinizde yeni sayfalar oluşturun / sayfaları yeniden adlandırın
  • wiki deposu klasörünüzdeki github-wiki-sidebar komut dosyasını yerel olarak çalıştırın

    cd /path/to/<my-project-name>.wiki
    # this fetches latest changes, generates sidebar file (_Sidebar.md) and pushes changes to github
    github-wiki-sidebar --git-push
    

Modül, öğelerin sıralanması, kategori ayırıcı, menü şablonu, bağlantıların biçimi ve diğerleri dahil olmak üzere indirgeme çıktısının özelleştirilmesine izin verir.


0

GitHub otomatik olarak bir belge içindekiler tablosu oluşturacaktır:

  1. Markdown yerine belge türü AsciiDoc yapın.
  2. :toc:Belgenin başına ekleyin .
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.