2014-07-17 32 views
0

在我開始之前,有一些前言警告;不能安裝「lanyon」jekyll主題

我的哲基爾的知識是0 我的紅寶石的知識是0

雖然我覺得我已經做得相當不錯了沒有經驗,並且剛剛步入今天。這就是說,這全是完全新對我來說。

我想試試我的github pages爲博客,只是爲了看看我能否使它工作。我遇到了一個很大的問題,我想所謂的全局變量

我在這裏下載了Lanyon; Lanyon

我做下面的步驟,以便從我的Windows 8.1 x64的機。

  1. 安裝蟒蛇3.4.1link)
  2. 安裝紅寶石使用RailsInstallerlink)
  3. 安裝RubyGems的使用gem update --systemPowerShell的控制檯
  4. 創造了一個新的github版本庫
  5. 在倉庫
  6. 創建該分支一Gemfile創建gh-pages分支,用以下文字
source 'https://rubygems.org' 
gem 'github-pages' 

然後用蘭寧來的工作。

  • 下載蘭寧並提取它,我複製所有文件到一個新目錄
  • 推動了整個目錄到我的倉庫分支gh-pages
  • 試圖導航到gh-pages指定的網址。

現在我確實看到索引頁,它的確有內容,但主題不起作用。 css文件丟失。根據jekyll網站上的主題結構說明,我做了一些修改; link

  • 我的API文檔移動head.htmlsidebar.html到一個新的子文件夾_includes稱爲themes/lanyon下,每個建議的佈局。
  • 我愛css文件夾到一個名爲assets/themes/lanyon新的文件夾,再下面這些文檔
  • 我感動的文件apple-touch-icon-144-precomposed.pngapple-touch-icon-precomposed.pngfavicon.ico到一個名爲assets/themes/lanyon/img新的文件夾,下面的API文檔的例子。

現在來了最棘手的部分...試圖讓{{ ASSET_PATH }}工作。

  • 我看着文件_includes/themes/lanyon/head.html,看到3個CSS資產沒有變量。
  • 我改變了他們看起來像下面
<link rel="stylesheet" href="{{ ASSET_PATH }}/css/poole.css"> 
<link rel="stylesheet" href="{{ ASSET_PATH }}/css/syntax.css"> 
<link rel="stylesheet" href="{{ ASSET_PATH }}/css/lanyon.css"> 
  • 我更新_config.yml看起來像這樣,在[]變量明顯填充來代替。
# For more see: http://jekyllrb.com/docs/permalinks/ 
permalink: /:categories/:year/:month/:day/:title 

exclude: [".rvmrc", ".rbenv-version", "README.md", "Rakefile", "changelog.md"] 
pygments: true 
markdown: redcarpet 

title:   lanyon 
tagline:   'lanyon theme' 
author : 
    name : Ciel 
    email : [email protected] 
    github : ciel 

paginate:   5 

production_url : http://[username].github.io 

Lanyon : 
    version:  2.0.0 

    BASE_PATH : "/[repositoryname]" 
    ASSET_PATH : "/assets/themes/lanyon" 

不過,即使所有這一切,它仍然無法正常工作。它does_工作,如果我輸入絕對路徑的文件,但這並不是如何jekyll應該工作,從我的理解。

回答

1

要訪問ASSET_PATH,嘗試:

{{ site.Lanyon.ASSET_PATH }} 

編輯:您使用的化身引導(JB)變量,而不是哲基爾的。

site.Lanyon.ASSET_PATH是特定於JB。這是「/資產/主題/蘭寧

site.Lanyon.BASE_PATHsite.baseurl傑基爾)是從您的網站根到您的哲基爾的路徑安裝。

例如:如果你http://ciel.com/my/jekyll/site/到達你的網站:site.Lanyon.BASE_PATHsite.baseurl = '/我的/傑奇/網站'

所以,如果你想從任何網頁達到你的資產,你需要做的:

<link rel="stylesheet" href="{{ site.Lanyon.BASE_PATH }}{{ site.Lanyon.ASSET_PATH }}/css/poole.css"> 

<link rel="stylesheet" href="{{ site.baseurl }}{{ site.Lanyon.ASSET_PATH }}/css/poole.css"> 

等voilà!

+0

不要讓我感到如此愚蠢。 – Ciel

+0

但很嚴重,這很好。我馬上試試看,謝謝。 – Ciel

+0

好的。我做了你所說的,我得到了__different__結果,但不是_right_結果。它追加了路徑的__most__,但是它將__'BASE_PATH'__中的內容遺漏了。這是什麼意思? – Ciel