Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
ウラカタ勉強会 2016年9月度 静的サイトジェネレータを 利用してみよう!
Search
Urakata
September 30, 2016
Technology
0
140
ウラカタ勉強会 2016年9月度 静的サイトジェネレータを 利用してみよう!
Urakata
September 30, 2016
Tweet
Share
More Decks by Urakata
See All by Urakata
ウラカタ勉強会 2017年2月度 Vagrantによるローカル仮想環境の構築
urakata
2
290
ウラカタ勉強会 2017年1月度 最近のWebから学ぶデザイン術
urakata
0
190
ウラカタ勉強会 2016年11月度 AdminLTEの有料テンプレートが良かった
urakata
0
300
ウラカタ勉強会 2016年11月度 PostCSS
urakata
0
220
ウラカタ勉強会 2016年10月度 カタラウ勉強会
urakata
0
180
ウラカタ勉強会 2016年7月度 事例から学ぶ!Sass大解剖
urakata
0
340
Other Decks in Technology
See All in Technology
Janus
bkuhlmann
1
490
テストプロセスで大事にしていること #jasstnano
makky_tyuyan
0
130
[PlatformCon 24] Platform Orchestrators: The Missing Middle of Internal Developer Platforms?
danielbryantuk
1
180
NgRx Signal Store
rainerhahnekamp
0
110
Microsoft Cloudで開発ライフサイクルを保護する
kkamegawa
0
140
最近たまに見かけるTiDBってなんだ? - Findy
pingcap0315
2
590
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
140
「共通基盤」を超えよ! 今、Platform Engineeringに取り組むべき理由
jacopen
25
5.9k
〜小さく始めて大きく育てる〜データ分析基盤の開発から活用まで
kniino
0
2k
Four keys改善の取り組み事例紹介
sansantech
PRO
3
230
Hands-on / Kaname Frusawa / Cloud Compare Users Meetup 2024 at University of Tokyo on April 17
paraworld
2
470
Cloud Native Java with Spring Boot (CNCF Aarhus, April 2024)
thomasvitale
1
110
Featured
See All Featured
Creatively Recalculating Your Daily Design Routine
revolveconf
209
11k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Building Adaptive Systems
keathley
30
1.8k
Building Your Own Lightsaber
phodgson
98
5.7k
Ruby is Unlike a Banana
tanoku
96
10k
The MySQL Ecosystem @ GitHub 2015
samlambert
242
12k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
115
18k
Build The Right Thing And Hit Your Dates
maggiecrowley
23
2k
Side Projects
sachag
451
41k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
29
6k
How to Ace a Technical Interview
jacobian
272
22k
Fontdeck: Realign not Redesign
paulrobertlloyd
76
4.9k
Transcript
静的サイトジェネレータを 利用してみよう! ウラカタ勉強会 2016年9月度
自己紹介 エンジニアの加藤大典です。 普段は主にPHPerとしてを開発を行なったり、 制作チームが捗るように、 制作環境の導入お手伝いとかしてます。 先日、スマホを水没させてスマホのない生活 を強いられています(´・ω・`)
今日は Atomエディタの機能を利用しながら、Node.js で利用でき る静的サイトジェネレーター(GitBook, Hexo)を利用して みたいと思います。
静的サイトジェネレーター Top Open-Source Static Site Generators - StaticGen https://www.staticgen.com/
GitBook 一番人気! Modern book format and toolchain using Git and
Markdown https://github.com/GitbookIO/gitbook 本来は GitBook でドキュメントを公開するためのもの。純 粋な静的サイトを作るのには向きませんが、PDF出力がで きたりするのでちょっとしたマニュアルなどに向きます。
GitBook インストール $ npm install gitbook-cli -g 雛形の作成 $ gitbook
init
GitBook サーバー機能 $ gitbook serve
GitBook ページの追加 summary.md に Markdown のファイルを追加する HTMLの出力 $ gitbook build
GitBook PDFの出力には calibre をインストール $ brew cask install calibre PDF出力
$ gitbook pdf
GitBookのPDF • cover.jpg が表紙として使用される • デフォルトサイズA4縦で作成される • デフォルトでシステムフォントが使用される模様 • 外部URLだった画像は埋め込まれている
• MarkdownではHTMLタグを使用可能
Hexo 2番人気! A fast, simple & powerful blog framework https://hexo.io/
読み方は ヘクソ? WordPressのようなブログサイトが作れます
Hexo インストール $ npm install hexo-cli -g $ hexo init
$ npm install
Hexo サーバの起動 $ hexo server
Hexo 投稿の作成 $ hexo new hirame source/_posts/hirame.md が作成されます
Hexo hexo-browsersync でブラウザの自動更新 $ npm install hexo-browsersync --save
Hexo 静的ファイルの作成 $ hexo generate public/ 以下に静的ファイルが出力されます
Hexo タグ、カテゴリは投稿に設定します categories: 海の魚 tags: - 高級魚 - 赤い魚
Hexo 設定ファイルは _config.yml • サイト名 • 公開URL、パーマリンクの形式 • ディレクトリ構成 •
ページャー • テーマ など
Hexo 投稿ファイルのファイル名を日付ベースに変更 _config.yml new_post_name: :year-:month-:day-:title.md $ hexo new tai source/_posts/2016-09-29-tai.md
が作成される
Hexo サイトマップを付けてみる $ npm install hexo-generator-sitemap --save
Hexo 固定ページの作成 $ hexo new page about source/about/index.md が作成される
Hexo メニューの追加 themes/landscape/_config.yml menu: Home: / Archives: /archives About: /about.html
rss: /atom.xml
Hexo いろいろなテーマ https://hexo.io/themes/
Hexo テーマ Anisinaをインストールしてみる https://github.com/haojen/hexo-theme-Anisina $ git clone https://github.com/Haojen/hexo-theme-Anisina.git themes/anisina
GitHubで公開 GitHubリポジトリは静的ファイルが公開できます • https://アカウント名.github.io/ • https://アカウント名.github.io/リポジトリ名/ ドキュメントルートは以下が選べます • gh-page ブランチ
• master ブランチ • master ブランチの docs/ 以下
Hexo プラグインのインストール $ npm install hexo-deployer-git --save _config.yml deploy: type:
git repo: branch: master
Hexo デプロイ $ hexo deploy
https://atom.io/ Atom
Markdown Preview 静的サイトの作成ではMarkdownを主に使用します。Atomの Markdown プレビュー機能が便利です。 • コアパッケージに含まれています • Ctl-Shift-m でプレビュー表示
Atom Html Preview さらっとHTMLを確認するときは便利 • Ctl-Shift-h でプレビュー表示 • CSSなどがサイトルートパス /
または // で記述されていると 読み込めない。 https://atom.io/packages/atom-html-preview
Pdf View • Atomは標準ではPDFを開けないので、プラグインを入れる と便利。 • なんかちゃんと動いてないところもあるきがするけど、たま にサイズの大きいものを誤って開こうとしてがAtomが応答 無し。。なんてことも回避できる https://atom.io/packages/pdf-view
PlatformIO IDE Terminal ターミナルをAtomエディタに組み込めるので、Node.jsのコマン ド入力、出力結果確認には非常に便利です。 Settings > Core > Working
Directory は Project のままで良い ですが、複数のプロジェクトやサブディレクトリに対応できる Active file がおすすめです。 https://atom.io/packages/pdf-view
スニペット • snippets.cson(File > Snippets)で定義します • スニペットが定義されているファイルで、prefix マッチした文 字列を入力するとスニペットが展開されます •
セレクタの種類はファイルを開いて Alt-⌘-p • body に $1 などを登録するとカーソルジャンプ • Markdown は language-gfm プラグインを確認すると定義 されているスニペットが確認できます
ありがとうございました