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
150
ウラカタ勉強会 2016年9月度 静的サイトジェネレータを 利用してみよう!
Urakata
September 30, 2016
Tweet
Share
More Decks by Urakata
See All by Urakata
ウラカタ勉強会 2017年2月度 Vagrantによるローカル仮想環境の構築
urakata
2
300
ウラカタ勉強会 2017年1月度 最近のWebから学ぶデザイン術
urakata
0
210
ウラカタ勉強会 2016年11月度 AdminLTEの有料テンプレートが良かった
urakata
0
310
ウラカタ勉強会 2016年11月度 PostCSS
urakata
0
220
ウラカタ勉強会 2016年10月度 カタラウ勉強会
urakata
0
180
ウラカタ勉強会 2016年7月度 事例から学ぶ!Sass大解剖
urakata
0
350
Other Decks in Technology
See All in Technology
スマートファクトリーの第一歩 〜AWSマネージドサービスで 実現する予知保全と生成AI活用まで
ganota
2
210
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
12
4.7k
OCI Oracle Database Services新機能アップデート(2025/06-2025/08)
oracle4engineer
PRO
0
110
下手な強制、ダメ!絶対! 「ガードレール」を「檻」にさせない"ガバナンス"の取り方とは?
tsukaman
2
430
Practical Agentic AI in Software Engineering
uzyn
0
100
会社紹介資料 / Sansan Company Profile
sansan33
PRO
6
380k
なぜテストマネージャの視点が 必要なのか? 〜 一歩先へ進むために 〜
moritamasami
0
210
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
790
ブロックテーマ時代における、テーマの CSS について考える Toro_Unit / 2025.09.13 @ Shinshu WordPress Meetup
torounit
0
120
Rustから学ぶ 非同期処理の仕組み
skanehira
1
130
自作JSエンジンに推しプロポーザルを実装したい!
sajikix
1
170
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
370
Featured
See All Featured
Building Applications with DynamoDB
mza
96
6.6k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
9
810
How to train your dragon (web standard)
notwaldorf
96
6.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
112
20k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
How to Think Like a Performance Engineer
csswizardry
26
1.9k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Docker and Python
trallard
45
3.6k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
131
19k
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 プラグインを確認すると定義 されているスニペットが確認できます
ありがとうございました