least_alone

ひとりごと。

GTX660でHackintoshする夢を見た際, 映像が乱れる

概要

タイトルどおりです。

結論

グラボ買い換えよう

は?ソースは?

www.reddit.com

上の記事(Reddit)を見る限り, GTX660, GTX650ti固有の現象らしいです。 RedditではMojaveですが, 僕のHighSierra環境でも発生しました。

WebDriverも修正予定はないらしいので素直に買い換えるしかないかな〜〜〜〜

最近のMacAMD推しなので, 次のグラボあたりが良さそうです。

  • RX560
  • RX570
  • RX580
  • Vega 56
  • Vega 64

あ、もちろん夢の話ですよ。

新生エロいいね研究会への道

概要

こんにちは, トラブルサムです

皆さんはエロいいねしてますか?

エロいいね無き人生は麺の無いラーメンです. エロセルフDMしてるやつだいたい陰キャ

あらすじ

ところで皆さんはエロいいね研究会を覚えているでしょうか.

日本語の読めないバカな絵描きの増加, ブヒッター炎上, Twitterの仕様変更によるオタク締め出しに伴い枯渇するエロいいね資源.
そんなディストピアでオアシスを求めたエロいいねの有識者達によって発足した研究機関です.

順調な滑り出しを見せたエロいいね研究会でしたが, 平和とは長く続かないのが人の世の常です.

エロいいね研究会の技術インフラについてという記事でお話しましたが, エロいいね研究会のエコシステムはエロいいねが大前提です.
エロリツイート, エロセルフDM, エロブックマークなどは対象外です.

我々はこのような巨悪と戦わなければなりません.

エロいいね提供の登録をWebサイトから受け付けていないことに起因した(と考えられる)ドナーの不足も問題となりました.
エロいいねデータは大きな偏りを見せ, そして時々, ただわけのわからないコピペやDJ KEIのコラ画像ではしゃいでるだけのアカウントのツイートが紛れ込みました.

また, これらのデータ基盤をSpreadSheetsやIFTTT, Discordに任せたのは失敗でした.
これらはルーチンワークをほんの少し便利にしてくれるものであって, 我々のように研究熱心なユーザの利用を想定したものではありません.
具体的には, 我々のエロいいねにサービスが耐えられませんでした.

あと唯一の開発者である僕がめんどくなって飽きました.

このような背景から, エロいいねer達は表立って活動することをやめ, 自分の研究に没頭するようになり, そして誰もいなくなりました.

時は流れて

唐突に気分がノッてきたので作ることにします.

多分すぐ飽きるのでPython, Vue(TypeScript)開発者募集.

GitHubにぶんなげとくのでforkしてPullRequest送るとかしといてください.
よくわかんなかったらツイでリプライ飛ばしてください. 開発者じゃなくても意見があると嬉しいです.

機能

こんな機能を追加する予定です.

Twitter連携

必須だよね.
ツイ連携でエロいいね提供できるようにします.

あとエロセルフDM勢は敵ですが, うまく味方に取り込むためにエロいいね研究会上からワンタップでエロセルフDMできるようにする予定です.

PWA対応

Progressive Web Applicationと言います, 簡単にいうとWebページをネイティブなアプリっぽく使える仕組みのことです.
まぁこの辺はVue-CLIのwebpackがいい感じにしてくれるんじゃないのかなぁという感じ

自動分類

大まかに2種類

文章解析による自動タグ付け

これは比較的簡単ですね. 日本語形態素解析エンジンのMeCabとか使っていい感じにします.

場合によっては集めたエロいいねツイートの文章を解析してエロ辞書を作ることも必要かな.
例えば島風みたいな固有名詞とかだと辞書を定義してあげるこっちのが手っ取り早いです.

というか書いてる途中で思ったけど全部エロ辞書でいいような気がしてきました.
エロ辞書を作るために形態素解析すればいいや

やっぱ今やってることを文章にすると思考が整理されていいですね.

機械学習による画像分類, フィルタリング

この辺は学習するデータセットによって結構結果が変わるからなんとも言えないですね.

とりあえず手元でうまいこと特徴量が示せるか試してみることから地道に始めたいと思います.

あんまり画像の機械学習には詳しくないんですが, 先日専門家と話す機会があったのでちょっとだけ知識を仕入れました
GANとか使うのがナウな感じっぽいのである程度データが集まったら適当にやってみます.

技術的な話

前までいろいろ小細工して楽な実装&サーバレスライクな作りにしてたんですけど, 流石に難しい処理しようってなるとどうしてもプログラムは書かないとですね.

ホントはAWSでステージングしようと考えてたんですけど, このサービスを提供する上で最も大事なことがあります.

それはなるべくお金をかけないことです.

理由はいくつかありますが, ざっくりいうと僕が破産しないためです.

なので, 多少時代遅れ感はありますが格安VPS上にバックエンドサーバを立てて, フロントはGithubPagesとかで公開しつつ様子を見てみようかと思ってます.

サービスの規模とシステムの見通しを良くするためにミニマルな構成を考えているので, リッチなフレームワークは使わずにいこうと思います.

バックエンド

使い慣れてるという理由でPythonフレームワークのFlaskを使います.

1ファイルでAPIサーバを立てられるくらいシンプルなので非常にいい感じです.

主にDBへの接続, APIの提供を行います.

DB

何使うか迷ってんですよね〜〜〜〜〜〜〜

あんまりRDB好きじゃないってか死んでほしいけどユースケース的に使わざるを得ない気がしてます. データベース設計苦手だから今回みたいに「あ、これもこれも!!」ってなるパターンの開発だとスキーマの定義が面倒です.

とりあえず規模的に小さいので, 1ファイルで完結してるSQLite3と, 細々したデータの管理に使用するため, JsonファイルをDBっぽく使えるTinyDBというPythonのライブラリを使う構成で行こうと思ってます.

規模が大きくなったらMongoとかPostgreSQLに切り替える手もアリ

Redisはメモリ的に厳しいのでパス, SSRとかやるようになったらキャッシュに使うかも

フロントエンド

前回と同じくVue + Vuetifyで.

基本的にはWebAPI叩いてレスポンスをきれいに表示するだけなのでそんなに苦労しないと思う.

運用

  1. 手元で開発
  2. GitHubにpush
  3. CIでビルド
  4. CIからAPIサーバとPagesを更新

という感じ

dockerでDBとか開発環境やろうとおもったけどTinyDBとSQLiteならいらんかも

やりたいこと

  • いろいろできるCLIツールの作成
    • Build
    • Deploy
    • Init
    • DBSync
  • ドキュメントの整備

その他

思いついたら書きます

Macでルイズ・フランソワーズ・ル・ブラン・ド・ラ・ヴァリエールちゃんが見たい

概要

ルイズ・フランソワーズ・ル・ブラン・ド・ラ・ヴァリエールちゃんが見たい

具体的には、Macでアニメ放題のようなSilverlightプラグインを必要とする動画配信サービスが見たい

アニメ放題

僕はソフトバンクiPhoneを契約しています。 その契約サービスに、アニメ放題という配信サービスがあるんですが、これがなかなかいい感じです。

などなど、僕のようなキモオタが好むアニメがいっぱいあります。

しかし、携帯でしか見れないのはなんだかなぁと思っていました。

というか、アニメ放題がSilverlightとかいう伊丹市森本ゴミハゲプラグインを前提とした作りになっているため、ほとんどのブラウザが対応を打ち切っています。

ちなみに、カードキャプターさくらを見るときははっぴょんどっとじぇいぴーを使っています。

ブラウザを調べる

Google Chromeじゃみれない→Safariでもみれなかった→FireFoxもだめ

→じゃあ無名ブラウザならどうでしょう

ということで、Sleipnirというブラウザを使ってみることにしました。

www.fenrir-inc.com

Sleipnir(スレイプニル)は、Google Chromeの元となっているChromium派生の国産ブラウザで、他のブラウザには見られない機能がいろいろ備わっているのがオモシロポイントだと思います。

ぼくも昔使っていたんですが、開発が滞ったりバグがちょこちょこ見えてきたりしたのでChromeに乗り換えていました。

なんとなく試したらなんと難しい設定もなくアッサリ動画が見れてしまったので情報共有します。

インストール

www.fenrir-inc.com

上のサイトからダウンロードしてカチカチしてインストールしましょう

もしくは僕のような黒画面カチカチオタクの方は次のコマンドでインストールしてください

$ brew cask install sleipnir

設定

Command+,で設定を開きます。

もしくは上のメニューバーとかから設定とかPreferencesみたいな書いてあるところを開いてください。

f:id:sometrouble:20190225032847p:plain

セキュリティタブを開いて、一番上にあるEnable plug-insにチェックを入れてあげるとSilverlightが動きました。

あ、もちろんSilverlightは別途導入をお願いします。たぶん検索して出てきたやつをダウンロードしてカチカチすれば入ります。

これで快適動画ライフの始まりだぜ!

まとめ

Macでアニメ放題(Hulu)を見たい → SleipnirSilverlightインスコして設定からプラグインを有効にする

ちなみに、Sleipnirは未だにバグっぽい挙動がちょこちょこありました(別画面でいろいろしてると勝手にフルスクリーン解除されたり)

マウスジェスチャとかデフォであったりコンセプトはすごくいいとおもうんだけど残念です。

クリみくじを公開しました

概要

クリみくじです。

クリオンのおみくじだから、クリみくじです。

卑猥な単語と勘違いしてはいけません。 sometrouble.github.io

歴史

クリみくじの開発は2016年に続き2回目です。

クリちゃんのRayという曲が好きで8bit風音源をつくったついでにやっつけで6時間くらいでつくったやつが初期版です。

当初はぼくのサーバで公開していたんですが、現在サーバの80番ポートになにも立てていないので遊ぶことができません。

実装

前回のソースをもとにちょちょっと改造しただけです。

enchant.jsというゲームエンジンを使用して作成しています…が、 このenchant.jsというものが伊丹市森本です。

  • 更新が止まっている
  • ドキュメントが少ない
  • npmと親和性の高いボイラープレートのようなものが存在しない

この辺がマジで伊丹市森本でした。

最初は、気になっていたphina.jsというものを使ったのですが、ドキュメントがenchant.js以上のゴミハゲでした。

普段はゲーム作成とかしていないので、ドキュメントがちゃんとしているjs製ゲームライブラリが教えてほしいです。

ボイラープレートがない(自分で作る気も起きない)し、coffeeとかで新たに作るのもめんどくさいので、ファイルのモジュール分割ができないのが結構イラつきました。というか1ファイルで作ってる人しか見ないんだけどみんなこんな苦行をやっているのでしょうか?

デフォのjsでざっくり書いて、uglify-esでminifyしているだけです。

前回からの変更点

ゲーム内容としては全く変わってないです。

  • 画面を横長→縦長に変更
  • fpsを30→60に変更
  • キャラ画像を32px→64pxへ変更
  • 登場キャラを2人追加

ラッキーアイテムは全28種類, 運クリはスコアの低い順に - "敏感クリ" - "凶クリ" - "末クリ" - "小クリ" - "中クリ" - "クリ" - "クリクリ" - "大クリ" - "特大クリ" - "超特大クリ" - "凶悪クリ" - "極悪クリ"

に分かれています。

みなさんも大クリ以上を目指して頑張ってください!

壁紙

タイトル画像

ツイッターカード

Dynabook-N300 SSD, メモリ換装

概要

後輩と一緒に秋葉原巡りをしている際に見つけたジャンクPC安売りにて購入した、 Dynabook N300のSSD, メモリ換装とOSインストールを行います。

買ったのはこちらです。

俗に言うネットブックというものですね。

本体はなかなかきれいです。 液晶割れ等もなく、キーボードもdynabook特有の広いキーのため打ちやすそうです。

通電OK, 起動OKで5000円!…ではなく、セールで2000円引きになっていたため3000円で購入しました。

動作確認

シールでは通電起動OKとなっていましたが、ジャンク品故に本当に起動するか怪しいので通電チェックを行います。

不思議なところにある電源ボタンを押したらちゃんとBIOSが起動してくれました!

OSはまだ入っていないため画面はまっくろくろすけですね。

分解

早速分解してHDD→SSD換装と、ついでに余ってた2GBのメモリをくっつけてみます。

分解にあたって、いくつか用意するものがあります。

  • 換装するSSD(2000円で買ったやつ)
  • 換装するメモリ
  • OSインストール用USB
  • 精密ドライバー
  • ACアダプタ

です。

まずは、分解する前にかならずバッテリーを外してください。

感電防止のためです。 ついでにいうと内部をさわったときに静電気でショートしてしまうとPCがお亡くなりになってしまうので、金属を触って放電しておくといいと思います。

裏蓋のネジをはずしたのがこちら

左のでかいのがHDD, 緑色のがメモリ, その横にあるのがWifiモジュールですね。

ちなみにこのネットブックAtomという基盤に直付けされたCPUを搭載しているため、CPU交換は不可能です。

HDDをはずしていきましょう。

2ヶ月くらい前にやったのでどうやったかわすれちゃったんですけど、確か左側にスライドしたら普通に取れたような気がします。

帯電防止用のアルミ箔っぽいやつを剥がして、マウント用のネジを外します。

ここで登場、ミラクルさんの格安SSD 2000円ぽっちで買ったのに5年保証ついてました。会社大丈夫なのか…?

SSDにネジとアルミ箔(邪魔くさいので)を取り付けて、もとに戻します。

メモリも適当に取り付けておわりです。

Windowsインストール&動作確認

はい。わかってました。

CPUが完全に足引っ張ってて伊丹市森本ゴミハゲになってます。

スピーカーがすごいいいやつっぽいのでなんとかつかいたいな〜〜〜〜〜

結局

Windowsはどう考えてもムチャだったので、Arch Linuxを入れときました。 軽量ウィンドウマネージャのawesomeを入れてしばらく使ってみたところ軽快に動作しています!

あれから2ヶ月…

え、いまどうなってるかって?

そりゃあもちろん机の肥やしになってます。

2019年はアキバでジャンク福袋でも仕入れようかな〜

【シュガー・ラッシュ:オンライン】をエンジニアが観て思ったこと(ネタバレ注意)

概要

こんにちは、トラブルサムです。

実は何日か前、シュガー・ラッシュ:オンラインを観てきました。

「エンジニアが観て〜」なんて言い方してますが、別に技術的な話ではないのでとあるキモオタがこんな感想を抱いたんだなって思ってください。

※ネタバレが含まれるため、ご了承いただける方のみ閲覧をお願いいたします。

www.disney.co.jp

結論

NTRモノでした。

ハッピーエンドを想像していただけに、胸になにかつっかえている気分です。

もちろん、話や世界観はとても素晴らしく、上映中は見入ってしまったのですが、前作のような "ハッピーエンド, みんなが幸せ, めでたしめでたし…" というラストではありませんでした。

詳しくは次で話の流れとともにお話しますが、ゲームキャラクターにおける状況の不可逆的な変化をもって主人公達の成長、時間の経過を感じることができました。

この点では「TOY STORY」シリーズのような時間の経過とそれに伴う言いようのない寂しさからくるノスタルジックな気持ちに近いと思います。

話の流れ

はじまり

物語は、レースゲームの天才レーサーにしてプリンセスのヴァネロペと、心優しいレトロゲームの悪役ラルフの日常から始まります。

前作、「シュガー・ラッシュ」から6年。

ラルフは、毎日親友のヴァネロペと遊び、ゲームセンターの営業時間が来れば働き、営業が終われば酒場で一杯…そんな変わらない日常を愛し、それらすべてに満足していました。

しかし、親友のヴァネロペは変わらない毎日、展開の読めてしまうレースに不満を抱き、変化を求めていました。

そんなヴァネロペの悩みを聞いたラルフはヴァネロペを楽しませようと、オリジナルのコースを作ります。が、これが原因でゲームのプレイヤーとヴァネロペの操作主導権の奪い合いになり、シュガー・ラッシュのハンドルが壊れてしまいます。

筐体の修理をしようにも、シュガー・ラッシュの開発会社は既に倒産。ネットオークションeBay上にパーツがあることを発見しましたが、シュガー・ラッシュの売上1年分よりも高価であるため、シュガー・ラッシュは廃棄されることになってしまいます。

ゲームを追い出され、絶望するシュガー・ラッシュのキャラクター達、そしてヴァネロペ…

そんな中、責任を感じたラルフは、新しいコントローラを手に入れるため、ヴァネロペと共に、ゲームセンターに新しく設置されたWi−Fiルータを経由してインターネットの世界へ旅立ちます。

インターネットの世界へ

インターネットの世界へ入り込んだ2人は、eBayで競売にかけられていたコントローラを落札することに成功しますが、オークションの仕組みを知らない2人は、「人より大きい数字を言うゲーム」であると勘違いし、相場の10倍近くの値段で落札してしまいます。

24時間以内に入金を行うことができなければ落札したアイテムが取り消されてしまうことを知った2人は、インターネット上でお金を稼ぐことを決意します。

ポップアップ広告のJPスパムリーから、とあるレースゲーム内のアイテムを高値で転売することができることを知り、治安の悪そうなオンラインゲーム「Slaughter Race」に参加します。

2人はSlaughter Race内の凄腕女レーサー、シャンクから車を盗みますが、あと一歩のところで追いつかれ、車を取り返されてしまいます。

ヴァネロペの事情を知ったシャンクは、動画共有サイト「BuzzTube」にラルフの動画を投稿することで、視聴者からもらえる「ハート」を換金して稼ぐことを提案します。

お金を稼ぐ道を見つけた二人ですが、シャンクのドライビングテクニックと、予測不能で難しい、Slaughter Raceというゲームにヴァネロペは強く魅了され、少しずつ2人の歯車が狂っていきます。

2人の苦悩

シャンクのつてでBuzzTubeアルゴリズムの責任者エスの協力もあり、ラルフの動画は順調にハートを集めていきます。

eBayの支払い期限も近くなり、ハート集めにブーストをかけるために大量のポップアップ広告を配置し、多少強引な方法ではありますが、ラルフはハートを集め、支払い金額に達するほどのお金を稼ぐことに成功します。

一方、ポップアップ広告の手伝いでディズニーのファンサイトへ行っていたヴァネロペは、ディズニープリンセス達と夢の話をしたことで、自分の本当にやりたいこと、Slaughter Raceのことを強く意識するようになります。

ラルフは早くゲームセンターに戻り、元の暮らしへ戻りたいと考え、ヴァネロペに連絡を取ろうとしますが、偶然自分側の音声のみミュートになってしまい、結果としてシャンクとヴァネロペの会話を盗み聞きする形になってしまいます。

それは、「ラルフ達と離れ、このSlaughter Raceの世界で生きていきたいと考えていること」でした。

不具合

親友のヴァネロペと離れたくないラルフは、自分のゲームセンターにあった、ウイルスによって壊れたTRONというゲームのことを思い出します。

ゲームの動作を重くしてつまらなくすれば、ヴァネロペはまた自分のところへ帰ってくる。そう考えたラルフはJPスパムリーの紹介でダークウェブに住む、マルウェア製作者のダブルダンに会うことになります。

ダブルダンは、ゲームの世界から外へ出さないことを忠告し、「ゲームに潜む不安定なプログラムの複製」を行うウイルスをラルフに与えます。

ラルフがSlaughter Race内に解き放ったウイルスは、ヴァネロペの持つ不具合の複製・展開を繰り返し、不安定になったSlaughter Raceはクラッシュ寸前まで追い込まれ、サーバの再起動を余儀なくされます。

もともと、Slaughter Raceに存在しないキャラクターであるヴァネロペは、ゲームが再起動されてしまえば消滅してしまいます。

ラルフがすんでのところで救出することに成功しますが、目が覚め、自分の不具合のせいだと自己嫌悪に陥るヴァネロペを慰めるうちに口が滑り、自分がウイルスをばらまいてしまったことや盗み聞きをしていたことを喋ってしまいます。

その行動に失望したヴァネロペは、ラルフのことを友達じゃないと言い捨て、ラルフの前から去ってしまいます。

唯一の親友をなくしたラルフの不安定な心を見つけたウイルスが、Slaughter Raceから抜け出し、インターネットの世界にラルフの複製を無数にばらまいてしまいます。

友達

ラルフの負の感情が増幅された存在である無数のクローンがインターネットを破壊し始め、ヴァネロペを探し求めて2人に襲いかかります。

2人はアンチウイルスソフトウェアのエリアにラルフウイルスを誘導し、一斉に駆除することを試みますが、あと一歩のところで一体化したウイルスに捕まってしまいます。

ラルフを救うため、自分が犠牲になろうとするヴァネロペですが、ラルフウイルス - 自分の心の闇を見ることで自信がヴァネロペに対して抱いていた身勝手な思いに気づき、ラルフウイルスに本当の親友ならヴァネロペの思いを優先させることを伝えます。

ヴァネロペの思いに気づき、自分に欠けた不具合を解消したラルフウイルス達は消滅します。

ウイルスが消えたことで、Slaughter Raceもインターネットの世界も徐々にもとに戻っていきます。

約束

Slaughter Raceに自分のプログラムを追加してもらったヴァネロペは、本格的にSlaughter Raceの世界で生きていくことなります。

一方、ラルフはゲームセンターに戻り、他の仲間たちとの毎日に…

eBayで落札したハンドルも無事に届いたようで、シュガーラッシュも復活を果たし、ヴァネロペ以外はもとの生活に戻っています。

だからといって、ヴァネロペとラルフの友情がなくなったのではありません。

ラルフは始業前、インターネットの世界で手に入れたメッセージアプリを使ってヴァネロペと連絡をとります。

オンラインゲームの世界に休みはないので、数ヶ月先にあるSlaughter Raceのメジャーアップデートのタイミングに合わせて2人は会う約束をします。

通話が終わると、ラルフはいつもの仕事に戻っていくのでした…

感想・評価

ストーリーや、描写の1つ1つに至るまで、非常によく作り込まれているのを感じました。

後述しますが、描写されない対比が寂しさや切なさをより引き立てているような気がします。

自分は男なので、どうしてもラルフに感情移入してしまいますが、その点についても少しお話できたらと思います。

可視化

インターネット世界の可視化・擬人化が非常によく考えられていて、面白いと思いました。

ツイートの拡散される様子やパケットの送信、検索エンジン等いろいろおもしろいと思ったものはあるのですが、 特に気に入ったのが、スパム広告をキャッチに例えたところです。

スパムブロッカーをボディーガードにたとえていたのも擬人化ならではで、なるほどなぁと納得してしまいました。

2人の対比

この映画ではラルフとヴァネロペの対比が非常に多く盛り込まれています。

映画序盤では、

  • 変わらない退屈な毎日に物足りなさを感じているヴァネロペ
  • 変わらない日常を愛し、楽しんでいるラルフ

が描かれています。

また、中盤では、

  • 自分の夢(目的)を追いかけ、インターネットの世界に生きがいを見つけようとするヴァネロペ
  • 自分の世界を守るための手段として、インターネットの世界を利用するだけのラルフ

後半では、

  • インターネットの世界に残り、自分の夢を選択したヴァネロペ
  • もとの世界、日常に戻り、変わらない暮らしへ戻るラルフ

が映し出されています。

そのほかにも、物語中盤でラルフが「ここ(インターネットの世界)には夜がない」という発言をします。 ゲームセンターには営業時間があり、夜が来れば休みが来る。しかしインターネットの世界は常に誰かがいて、夜が来ることはないのです。

また、それだけではなく、物語序盤でハンドルの値段を観たゲームセンターのオーナーが「200ドル!?シュガー・ラッシュの年間売上よりも高い!」というような発言をしています。

6年前に導入されたとはいえ、シュガー・ラッシュよりも新しく、人気のあるゲームを本編中では観なかった(あるのかもしれませんが)ため、ゲームセンターの運営がうまくいっていないことを表しています。

オーナーが高齢であることもあり、おそらく、ラルフが守ろうとした日常もそう遠くない未来になくなってしまうことが伺えます。

一方、インターネット上のオンラインゲームに自分のコードを追加してもらったヴァネロペは、ゲームセンターに戻らなくても消滅することはありません。

人間の世界が終焉を迎えるまで…おそらく半永久的な寿命を得たヴァネロペと、近い未来壊れてしまうであろうラルフ達の日常

ここでも2人の対象的な状況が(描写はされていませんが)描かれていると思います。

まとめ

以上、シュガー・ラッシュ:オンラインを観た感想でした。

まだ視聴されていない方は是非映画館でご覧になることをオススメいたします。

他に見所といえば、ディズニープリンセスの私服姿が可愛かったです。

あとは、やっぱり海外作品なので、eBayなどの日本に馴染みのないサービスやメタい会話などが出てくるため、そのへんは日本に住んでる方にはとっつきにくいかなあといった感じです。

前作、シュガー・ラッシュのような物語を期待している方にはちょっとズレるかもしれませんが、僕は結構好きでした。

それではまた〜

最強のはてなブログ執筆環境を発見してしまった話

最強のはてなブログ執筆環境を発見してしまった話

背景

はてなブログの記事編集画面ってゴミハゲ伊丹市森本ですよね。

多機能なのはいいんだけど、いくつかの気に食わないところと、
かゆいとこに手が届かないので記事を書くモチベもアガりません。

具体的には次のようなところが伊丹市森本です。

  • プレビュー画面が使いづらい
  • なんかよくわからん広告が挿入される
  • せっかくMarkdownモードにしてるのにタグアイコンがある
  • しかもそのアイコンをクリックするとhtmlタグで入力される
  • 画像の投稿がめんどくさい
  • 記事に必須のタグ編集タブがデフォで表示されてない
  • そもそもブログを開く→編集画面を開くってめんどくさい

このへんがはてなブログ特有の気に食わないところです。

ほかにも、この機能があったらな〜〜〜〜〜ってのが

  • vimモードがある(重要)
  • オフライン編集したい(このへんはExtensionでどうにかなるのかな?)
  • gitでバージョン管理がしたい

って感じです

話は変わりますが

僕はキモオタなのでプログラムなり仕様書なり報告書をゴリゴリ毎日書いています。

エディタは何を使っているかって? そりゃあ、真の漢はvim一択…と言いたいところですが、 Visual Studio Codeを使っています。

幸い、日本は宗教の自由が認められている国家ですので、 vim教徒でありながらパソコンはApple, ブラウザはGoogle, そしてエディタはMicroSoft製のものを使っています。

普段からPythonもRustもJavaJavaScriptもShellScriptもDockerFileもMarkdownLatexもすべてVSCodeで書いています。

Macユーザなら、brew cask install visual-studio-codeするだけ。

あなたがもしWindowsユーザであれば ここ から実行ファイルを落としてマウスをカチカチするだけ。

あとはVim Extensionを追加するだけで救われます。

パッとあなたが思いつくことの99%は拡張機能として優秀などこかの開発者が公開しています。

あなたはそれをカチカチしてインストールするだけでいい。これでVSCodeにできないことはないぞ!

…………………………あれ?

ということで

ありました。

https://github.com/uraway/hatenablogger

しかも作成されたのは数日前でした!是非ともGithubにStarをつけてあげてください!

インストール

  1. 左側サイドバーの拡張機能アイコンから検索ボックスにhatenaと入力
  2. 一番上にあるhatenabloggerという拡張機能のinstallボタンを押してインストール
  3. 拡張機能の設定を行う(※ 後述)
  4. インストールが終わったら再起動

拡張機能の設定

この拡張機能を使うには、

の3つの情報が必要となります。

はてなIDは自分のユーザIDです。 ブログIDは、https://を除いたブログのURL ここから確認できます

APIキーは ここから確認できます 下の方へスクロールすると、AtomPubという項目があるので、そこに記載されているAPIキーをメモしておきましょう。

※ 注意! このAPIキーは他人に知られてはいけません。パスワードのようなものだと思ってください。

これが他人にバレると自分のブログにスケベな記事を投稿されてしまうなどの重大なインシデントにつながる可能性があります。

入力しよう

VSCodeの設定画面を開きます

設定のUser Settingsタブ→Extension→Hatenablogger configurationに入力欄が3つありますので、上で確認した情報を入力します。

入力が終わったらVSCodeを再起動します。 僕の場合は再起動しないとうまく動作してくれませんでした。

使い心地

最強です。 あまりに良すぎてかゆいところを核の炎で焼き尽くされた気分です。

Markdown記法で記事を書き、 Command+Shift+Pでコマンドパレットを呼び出してhatenaと入力すると画像のアップロードや記事の公開ができます!

記事公開時にタイトルとカテゴリと公開or下書きを選べます。

君もブログ執筆にVSCodeを使おう!

参考文献

uraway - github/hatenablogger