2015年2月21日土曜日

Sublime text 3 で markmon を起動しても、ブラウザと同期しない問題

Markmon を起動(launch)しても、ブラウザとSublime text 3 の内容が同期しなくてハマりました。

以前、Sublime text 2 を使っていたときは、Package Manager から Markmon をインストールすると、起動しただけでブラウザが立ち上がり、入力した Markdown 記法のテキストがブラウザにリアルタイムで反映されていたのですが、今日久しぶりに Sublime text 3 で Markmon をインストールして起動しても、ブラウザが立ち上がるだけで、全く同期しない話。丸一日しっかりハマりました。

環境は 
  • Mac OS 10.10.2(yosemite)
  • Macbook Air 11inch 2010 rate
  • Homebrew インストール済み
  • Node.js、markmon、pandoc、Sublime text 3 インストール済み
  • Sublime Markdown real-time previewr パッケージインストール済み
です。

Sublime text 3 をクリーンインストールしたり、Sublime text 2 をインストールしたり、python3 をインストールしたりしてみたけれど改善せず。どうしたものかと思ってエラーログを見たり、Node.js を再インストールしてみたり、markmon や pandoc を再インストールしてもダメ。

結局何をやったのか

いろいろ環境をいじって結局上記の環境に戻ってきて、最後に試したのが Sublime text の「Set Syntax: Markdown」でした。Markmon を起動(launch)して、シンタックスを Markdown モードにすると、その瞬間から「localhost:3002」を表示しているブラウザに HTML 成型されたテキストが表示されました。

2月ほど前に初めて Markmon を試したときは、Markmon を起動するだけでブラウザと同期を始めていたのに、いったいどういうことなんでしょうか? 原因がさっぱりわかりません。

なにはともあれ

とりあえず、緊急回避的なことではありますが、Markmon 環境が復活して嬉しい限り。
でも普通、こんな原因があるなんて考えもつかないと思うんですけど…この記事も、誰かの参考になれば。

2015年2月7日土曜日

Mac 10.10.2 で gutenprint が使えた!

前記事(Vagrant(CentOS7)で CUPS)で、
「Mac で BJF-850 が使えないから Vagrant で …」
とか言ってたんだけど、記事書きている途中で
gutenprint のページを確認してたら、MacOS 10 用が
あったのに気がついた…

http://gimp-print.sourceforge.net/MacOSX.php から
最新版の dmg ファイルをダウンロードして、
パッケージをインストールするだけで、プリンタドライバが
インストールできてしまう。(あたりまえ)

これに先に気がついていれば、ムダに CentOS で
悩まなかったのに…

と、いうわけで、gutenprint をインストールすると、
「システム環境設定」の「プリンタとスキャナ」から、
プリンタを追加して、ドライバに「BJC-8200」を
選択するだけであっさり印刷できてしまったのでした。

なんとまあ。

Vagrant(CentOS7)で CUPS

セットアップにやたら手こずったので、メモ。

事の始まりは MacOS 10.10.2 で、Canon のプリンタ
BJF-850 が使えなかったので、Linux 経由で印刷する
事にしたので。

もともとは Raspberry Pi を使っていたけど、
Linux で印刷できるなら、Vagrant でもよくね?
って思った。すんなり出来ると思いきや、
CentOS 7 が意外と強敵。

1. Box の追加(CentOS7.0 x86_64 minimal)

minimal って言うくらいだから、ダウンロードに時間
かからないだろう、っていう安直な発想でこの Box に
決定。
$ vagrant box add https://f0fff3908f081cb6461b407be80daf97f07ac418.googledrive.com/host/0BwtuV7VyVTSkUG1PM3pCeDJ4dVE/centos7.box

2. Box の初期化

すでに httpd 用の Box を作っていたので、同じところで
init する。Vagrantfile がすでにあるぞー、ってエラーが出るので
名前を変えておく。
$ mv Vagrantfile Vagrantfile.old 
$ vagrant init  centos7

3. Vagrantfile の統合

ついでに一つの Vagrantfile を Box 名で切り替えられるようにしておく。
IP は 192.168.33.11 とする。
$ vi Vagrantfile

4. CentOS 7 の起動

$ vagrant up centos7

5. ssh でログイン

$ vagrant ssh centos7

6. パッケージマネージャのアップデートと CUPS サーバ、プリンタドライバのインストール

$ sudo yum update
$ sudo yum -y install cups gutenprint

7. cups の設定

 $ sudo vi /etc/cups/cupsd.conf
Listen 631
<Location />, <Location /admin>, <Location /admin/config>に
Allow all
$ sudo systemctl enable cups
$ sudo systemctl start cups
これでブラウザから 192.168.33.11:631 にアクセスすると、
「Forbidden」の一点張り。なんで?

8. firewalld の停止

ここでハマった。ファイアウォールの管理を iptables から
firewalld に変更されていることを知らなかった。
どうせローカルでしか動かないのでファイアウォールを
停止したけど、良い子は本番環境で真似をしないように(笑)
$ sudo systemctl disable firewalld
$ sudo systemctl stop firewalld

9. vagrant ユーザを lp グループ、sys グループに追加

vagrant ユーザにアクセス権がないので、CUPS の管理画面が
出ても設定できない。
というわけで、vagrant ユーザを既存のグループに追加する。
$ sudo usermod -a -G lp, sys vagrant

10. ブラウザから CUPS を設定

あとは、画面の指示通りに。
BJF-850 は日本での型番なので一覧に名前がない。
BJC-8200 のドライバを使うと印刷できる。

11. Mac のシステム環境設定からプリンタを追加

おしまい。



追記:この記事書いている間に、Mac から BJF-850 を
直接使える方法にたどり着いてしまった。
詳しくは以下のリンクからどうぞ。