5000164 is here
My writing is my life.
No results for undefined
Powered byAlgolia
ブログを WordPress 👉 Octopress 👉 Hugo と変えãĻきãĻ記äē‹ãŽæ›¸åŧãŒãƒãƒŠãƒãƒŠã ãŖたぎをあるį¨‹åēĻ整えた時ぎäŊœæĨ­ãƒ­ã‚° 🗒ī¸

å¤ã„č¨˜äē‹ãŽãƒĄãƒŗテとかはしãĻいãĒいんだけお、ブログぎデã‚ļイãƒŗを変えた時ãĢčĻ‹ãĻãŋたら思ãŖたよりも崊れãĻいたぎでぞとめãĻあるį¨‹åēĻäŋŽæ­ŖすることãĢした。
ぞだ崊れãĻã‚‹č¨˜äē‹ã¨ã‹ã‚‚ã‚ã‚‹ã‘ãŠã€ã˛ã¨ã¤ã˛ã¨ã¤čĻ‹ãĻいくぎは大変ãĒぎでæ­ŖįĸēさではãĒくざãŖくりãĒんとãĒくをį›Žįš„としãĻäŊœæĨ­ã‚’čĄŒã†ã€‚ 💡

前提とãĒã‚‹č¨˜äē‹ãŽįŠļ態

ãƒ–ãƒ­ã‚°ãŽč¨˜äē‹ãŽæ›¸ãæ–šã¯äģĨä¸‹ãŽå¤‰éˇã‚’čžŋãŖãĻきた。

  • WordPress で始めた最初は HTML をį›´æŽĨ書いãĻいた
  • 途中から WordPress ãĢ Markdown ぎプナグイãƒŗをå…ĨれãĻ Markdown で書いãĻいた
  • ブログを Octopress ãĢ変えたが WordPress ãŽč¨˜äē‹ã¯ã‚¤ãƒŗポãƒŧトしãĒかãŖた
  • čĻ‹å‡ēしぎ書き斚を ## ではãĒく --- ぎようãĢ書いãĻいた
  • čĻ‹å‡ēしãƒŦベãƒĢは h1 から h3 ぞでäŊŋãŖãĻいた
  • ブログを Hugo ãĢ変えたã‚ŋイミãƒŗグで WordPress と Octopress ãŽč¨˜äē‹ã‚’イãƒŗポãƒŧトした
  • čĻ‹å‡ēしぎ書き斚を ## ãĢした
  • æœŦ文でぎčĻ‹å‡ēしãƒŦベãƒĢは h2 だけをäŊŋうようãĢした

というįŠļ態で時期ãĢよãŖãĻ記äē‹ãŽæ›¸ãæ–šãŒã”ãĄã‚ƒã”ãĄã‚ƒã€‚ 😩

čĻ‹æ–š

  • äŊŋį”¨ã—たツãƒŧãƒĢは WebStorm
  • 👇 ぎ上側がæ­ŖčĻčĄ¨įžã§ãŽįŊŽæ›å¯žčąĄã§ã€ä¸‹å´ãŒįŊŽæ›å†…厚
  • 3 é€Ŗįļšã—ãĻるバッククã‚Ēãƒŧトぎ前ãĢ゚ペãƒŧ゚が 4 つå…ĨãŖãĻいるぎはã‚ŗãƒŧãƒ‰ãƒ–ãƒ­ãƒƒã‚¯ã§å›˛ã‚€ãŸã‚ãŽã‚‚ãŽã§ã€åŽŸéš›ã¯ã‚šãƒšãƒŧ゚は不čĻ
  • åŠč§’ã‚šãƒšãƒŧ゚が 1 個だけå…ĨãŖãĻいるもぎは中čēĢがãĒãĢもãĒã„ã¨čĄ¨į¤ēが崊れãĻčĻ‹ãĨらくãĒãŖãĻしぞうぎでそれを回éŋするためぎもぎで、原際はįŠēぎぞぞįŊŽæ›ã—ãĻ削除する

äģĨ下äŊœæĨ­ãƒ­ã‚°

^(.*)$\n=+

👇

# $1\n

h1 を h2 ãĢしãĻるぎはčĻ‹å‡ēしãƒŦベãƒĢぎ h2 だけäŊŋうことãĢしたから。
h1 ぎぞぞがいいãĒら # $1\n でįŊŽæ›ã™ã‚Œã°ã„い。

^(.*)$\n--+

👇

# $1\n

---- をäŊŋãŖãĻたやつはãƒĒ゚トぎ - があãŖたぎで最äŊŽ 2 個つãĒがãŖãĻいることをチェックしãĻいる。

^\* 

👇

- 

ãƒĒ゚トãĢäŊŋãŖãĻる * を - ãĢįĩąä¸€ã™ã‚‹ãŸã‚ã€‚
* ã ã‘ã ã¨č¨˜äē‹ã§æ™Žé€šãĢäŊŋãŖãĻるからそこそこ多くåŧ•ãŖかかる。
čĄŒé ­ãƒã‚§ãƒƒã‚¯ã¨ * ぎ垌ãĢ゚ペãƒŧ゚がå…ĨãŖãĻるかチェックすることでįĩžã‚Ščžŧむ。
ãã‚Œã§ã‚‚ã˛ãŖかかるもぎはあるぎであとは手äŊœæĨ­ã§į›´ã™ã€‚

"$\n^\++$

👇

"\n+++\n
(^$\n){2,}

👇

\n

Front Matter ぎ垌ãĢ 1 行įŠēいãĻたりįŠēいãĻãĒかãŖたりしたぎをįĩąä¸€ã™ã‚‹ãŸã‚ã€‚
最初は

^\++$\n^([^t^\n])

👇

+++\n\n$1

というやり斚でやãŖãĻたんだけお、これだとãĒãœã‹čĄŒæœĢぎ゚ペãƒŧ゚がæļˆãˆãĻしぞう。
ペãƒŧジ内でįŊŽæ›ã—た場合はæļˆãˆãĒいぎãĢ、デã‚ŖãƒŦクトãƒĒ指厚で一気ãĢįŊŽæ›ã™ã‚‹ã¨æļˆãˆã‚‹ã€‚
困る。
ãĒãŽã§ã€čĄŒæœĢãĢ゚ペãƒŧã‚šãŒã‚ã‚‹čĄŒãĢ少しでもč§Ļれるæ­ŖčĻčĄ¨įžã ã¨ã ã‚ãĒぎではīŧŸã¨ã„うäģŽčĒŦぎもとãĢそこãĢč§ĻれãĒいようãĢやãŖãĻãŋたらæļˆãˆãšãĢ済んだ。
ãĒぎで一åēĻå…¨éƒ¨ãŽãƒ•ã‚Ąã‚¤ãƒĢãĢæ”ščĄŒã‚’å…ĨれãĻから 2 行äģĨ上ぎįŠēčĄŒã‚’ 1 行ãĢすることで寞åŋœã—た。
最初ãĢ " とかå…ĨれãĻるぎは上ぎ斚ぎ +++ ãĢåŧ•ãŖかからãĒいようãĢするため。
+++ 内はすでãĢ一åēĻ整備しãĻいãĻ、最垌ãĢ " がæĨることがわかãŖãĻã‚‹ã‹ã‚‰ã“ãŽæĄäģļでいけた。
すぐできるだろうしついでãĢあそこもį›´ã™ã‹ãƒŧã¨ã„ã†æ°—æŒãĄã§å§‹ã‚ãŸãŽãĢここだけ時間かかãŖãĻį–˛ã‚ŒãŸã€‚
しかもそれでもįĩåą€ãĒãœã‹čĄŒæœĢぎ゚ペãƒŧ゚がæļˆãˆãĻるところもあãŖたぎでčĻ‹į›´ã—ãĻ手でį›´ã—た。
あと 2 行äģĨ上ぎįŠēčĄŒã‚’å‰Šé™¤ã§ã‚„ã‚‹ã¨ã‚ŗãƒŧãƒ‰ãŽä¸­ãŽæ”ščĄŒãŒæļˆãˆãĻだめだとわかãŖた。
そこも手でį›´ã—た。

 

👇

 
^ +$

👇

 
(^$\n){2,}

👇

\n

  をæļˆã—たりįŠēį™Ŋã ã‘ãŽčĄŒã‚’æļˆã—たりしãĻįŠēčĄŒã‚’ 1 行ãĢした。

<a.*href="(.*?)".*>(.*?)<.*$

👇

[$2]($1)
<pre.*?>

👇

    ```
</pre.*?>

👇

    ```
<blockquote.*?>

👇

>>>
<br.*?>

👇

  \n
<.*?>

👇

 

掋しãĻおきたいã‚ŋグを Markdown ãĢ有劚ãĒもぎãĢįŊŽæ›ã—ãĻから全 HTML ã‚ŋグを削除。
でもこれはã‚ŗãƒŧドぎ中ぎもぎやåŋ…čĻãĒãƒĒãƒŗクをæļˆã™ãŖãĻわかãŖãĻã‚‹ãŽã§ãĄã‚ƒã‚“ã¨čĻ‹čŋ”すåŋ…čĻãŒã‚る。

^ +([^ ]+)$

👇

$1

文字ぎ前ãĢあるįŠēį™Ŋを削除。

^ +$

👇

 

įŠēį™Ŋã ã‘ãŽčĄŒãŽå†…åŽšã‚’å‰Šé™¤ã€‚

find . -name "*.md" -type f -print0 | xargs -0 gsed -i -e '$ a korehakesutext'
korehakesutext

👇

 

全ãĻãŽãƒ•ã‚Ąã‚¤ãƒĢぎ最垌ãĢįŠēčĄŒã‚’čŋŊ加しようと思ãŖたらæ­ŖčĻčĄ¨įžã§ãƒ•ã‚Ąã‚¤ãƒĢぎ最垌、というぎが取れãĒかãŖたぎで sed でčŋŊ加することãĢした。
Mac ぎ sed は POSIX sed でäŊŋいãĨらいらしく、 brew install gnu-sed で GNU sed をå…ĨれãĻäŊŋãŖた。
įŠēčĄŒãŽčŋŊ加斚æŗ•ãŒã‚ã‹ã‚‰ãĒかãŖたぎでダミãƒŧぎ文字列をå…ĨれãĻからダミãƒŧぎ文字をæļˆã™ã“とãĢした。
čŋŊ加した垌ãĢぞた 2 行äģĨ上ぎįŠēčĄŒã‚’æļˆãã†ã€ã¨æ€ãŖãŸã‚‰ãƒ•ã‚Ąã‚¤ãƒĢぎ最垌ぎįŠē行 2 行ãĢãĒãŖãĻるぎはæ­ŖčĻčĄ¨įžã§ã¯æ¤œå‡ēできãĒいãŖãŊかãŖたぎで、全ãĻãŽãƒ•ã‚Ąã‚¤ãƒĢãĢはčŋŊ加しãĒいで、æ—Ĩäģ˜ãŒå¤ããĻãƒ•ã‚Ąã‚¤ãƒĢぎ最垌ãĢæ”ščĄŒãŒå…ĨãŖãĻãĒさそうãĒもぎだけãĢįĩžãŖãĻæ”ščĄŒã‚’čŋŊ加した。
įĩåą€ãƒãƒŠãƒãƒŠãĒぞぞだしこれはやらãĒくãĻもよかãŖた。

ぞとめ

一æ‹Ŧで変換かけたけおčĻ‹į›´ã—たらうぞくいãŖãĻãĒいところが思ãŖたよりも多くãĻ、けãŖこう手でį›´ã—たぎでį–˛ã‚ŒãŸã€‚ 😓
記äē‹ãŽã‚Ŋãƒŧ゚とãĒるデãƒŧã‚ŋはできるだけ構造化しãĻあるįŠļ態でäŋå­˜ã—ãĻおきたいと思ãŖた。

おぞけ

WebStorm ぎ Markdown ãŽč¨­åŽšã§čĄŒæœĢぎ゚ペãƒŧã‚šã‚’å‰Šé™¤ã™ã‚‹č¨­åŽšãĢãĒãŖãĻいたぎで不čĻãĒ変更į‚šãŒå‡ēたりした。
Hugo は Markdown ãĢåŽŗå¯†ã§čĄŒæœĢãĢ゚ペãƒŧã‚š 2 つãĒã„ã¨æ”ščĄŒã—ãĒã„ãŽã§ã“ãŽč¨­åŽšã¯åˆ‡ãŖãĻおくといい。
あと、最čŋ‘įĩĩ文字いいãĒという気分がéĢ˜ãžãŖãĻきたぎでブログãĢįĩĩ文字をäŊŋãŖãĻãŋた。 ✨