読者です 読者をやめる 読者になる 読者になる

もぐてっく

人は1つ歳を取る度、1ビットづつ大きくなれると信じてた。

Vimでかっこいいコマンド補完を出す方法

vim

Ubuntu17.04でvimを起動したら、なんか格好いい補完が出るじゃ無いですか。 これはメインマシン(macOS)にも制式採用せねばと、設定を調べました。 set wildmenu set wildmode=full

textbringer APIメモ

カーソルを動かす Buffer::goto_line(行) Buffer::goto_char(列)goto_char()に1行の文字数以上の値を渡しても、次の行には行かない。 モードラインをナウくする Face.define(:mode_line, foreground: "blue", background: "#FFFF00", bold: true, reverse: f…

textbringerで時計マクロを書いてみた

textbringerで非同期な処理はどう書けばいいかな?と思って、試しに時計を作ることに。非同期処理はスレッドを勝手に立てればいいとして、気になるのはオレオレスレッドとUIスレッドとの通信手段です。GUIツールキットはシングルスレッドを前提に設計されて…

日本発のRuby製テキストエディタ!その名もtextbringer!のマクロを書いてみる

shugo.net日本発のRuby製テキストエディタtextbringer。Emacsライクな操作性とRubyによる(度の過ぎた)拡張性が今後の大発展を予感させますね。ちょっと遊んでみたので情報を残しておこうと思います。 GitHubからtextbringerをインストールして起動するまで…

mikutter3.5のUserMixinでユーザーアイコンにスキンの画像を使いたいとき

UserMixinを混ぜ込んだ自作のユーザーモデルのアイコンを、みくったーちゃん(スキンのicon.png)にしたい場合です。 UserMixinは自身のprofile_image_urlフィールドをキーにして、Photo::PhotoからPixbufを得ている。なので、ユーザーモデルのprofile_image_u…

たった1行!シェルスクリプトからAmazon Dash Buttonを使う

tcpdumpコマンドを使ってAmazon Dash Buttonのボタン押下を検出する仕組みを編み出しました。 どうやんの? tcpdump arp and ether src ac:63:be:ba:09:4b -c 1 arp :ARPパケット and :かつ ether src ac:63:be:ba:09:4b:発信元MACアドレスがDash Button…

お名前.comで取ったドメインが「何もしてないのに」名前解決してくれなくなった

会社の人からminecraftサーバ(araaraufufu.click)に繋がらなくなってると連絡あり。最近忙殺されててサーバの設定なんて変えてないのになぁ。 ポートマッピング等、内部ネットワークには特に問題なし。 サーバを構築しなおしたりするも改善せず。結局、DNSが…

メッセージを日本語に翻訳するmikutterプラグインを作ったよ。

何これ? Microsoft Translator APIを使って、メッセージを翻訳するmikutterプラグインです。 mikutter3.4からサポートされたナウい引用を汎用化した「ナウいサブパーツ(※)」機能を使って作成しています。 (※:勝手に名前つけました。) インストール Git…

TL内を検索するmikutterプラグインを作ったよ

何これ? TL内の文字列検索を実現するプラグインです。「くぽぉwwwww相変わらず○○殿のネタ振りは流石でござるなwwそれでは某もインターネットダジャレおじさんとして皆に手本を見せねばなりませぬのwwwではここは『ゴマ豆腐』など・・・いやいや、もう一つひ…

Windows 10 Insider Previewの"Bash on Ubuntu on Windows"をハンズオン!

とうとうWindowsでもLinuxっぽいサブシステムがサポートされるということで、早速Insider Previewビルド14316を触ってみました! (14316が配信されてからウチに降ってくるまで3日のタイムラグがあって、待ってる間約2分周期でWindowsアップデートを確認して…

sshごしにgoogle-drive-ocamlfuseのOAuth認証を行う方法

はじめに ファイルサーバにGoogle Driveをマウントして、重要なファイルをバックアップする仕組みを作ろうとしています。Google Driveのマウントにはgoogle-drive-ocamlfuseを使うことにしたのですが、このソフトはアカウント認証(OAuth)の際にGUIなブラウザ…

Multiverse-coreで新しいワールドを作ってる途中にSpigotが落ちる

こんな感じでワールド生成を開始したところ、約1分でSpigotが落ちました。 >mv create 1-9 NORMAL [05:17:20 INFO]: CONSOLE: Starting creation of world '1-9'... ・・・ [05:17:20 INFO]: Preparing start region for level 4 (Seed: 7967941679464971899…

Chromeで見てるページのURLをmikutterから投稿できるようにしたよ

なにこれ? 古来、ブログとは、 狭義にはWorld Wide Web上のウェブページのURLとともに覚え書きや論評などを加えログ(記録)しているウェブサイトの一種である。「WebをLogする」という意味でWeblog(ウェブログ)と名付けられ、それが略されてBlog(ブログ…

Ubuntu15.10でterminologyを使う

ふと、mikutterをBot的に使うために必要最低限のパッケージで構成したコンテナを作りたいなと思いました。ベースは Ubuntu Server15.10(大好き)。vnc経由で軽量なウインドウマネージャと適当なターミナルを使えるようにして、後はmikutterのインストールか…

Yet Another 実行中のmikutterにコードを流し込むやつを作ったよ

何これ? 明けましておめでとうございます。これは「あー正月ってテレビもつまんないしマジすることないよねー」カレンダー (なにそれ?)1日目の記事です。(1年ぶり2記事目) 今回は「起動中のmikutterに外部から任意のコードを流し込むプラグイン&コマ…

IPアドレス固定なしで家庭内サーバを公開できるデーモンを作ったよ

何これ 自宅サーバを公開したい! →ルータのポートマッピングを設定しないといけない! →サーバのIPアドレスを固定しないといけない! →IPアドレスの管理めんどい!DHCPのまま公開したい!と言う、おおよそサーバ管理者に向かないものぐさ思考をUPnPを使って…

Mac OS Xでmikutterの通知とサウンドが使えるようになるプラグイン

何これ? OS Xでmikutterの通知ポップアップとサウンドを使えるようにします。 RubyからMacの通知を出すgem(terminal-notifier)を見つけた記念です。 インストール GitHubからzipファイルをダウンロードして適当なディレクトリに展開して下さい。moguno/mi…

Proxmox VEのLXCコンテナにavahi-daemonを入れようとしてハマった話

Proxmox VEが4.0にバージョンアップしてLXCベースのコンテナが使えるようになったので、コンテナをぽこぽこ作っててハマったメモです。コンテナのテンプレートはみんな大好きUbuntu Serverの15.04(ubuntu-15.04-standard_15.04-1.amd64.tar.gz)です。 2コン…

mikutter on Mac OS XのためにCairoとPangoのオレオレPortfileを作った話

OS X El Capitanへのアップグレードに伴いMacPortsをアップデートしたところ、cairoのQuartzサポートが悪さをする事象が再発しました。moguno.hatenablog.jpMacPortsのアップデートでactivateしていた古いパッケージが破棄された模様。今使ってるsvnから古い…

Bonjour for Windows不要!Windows10マシンに".local"でアクセスしよう!

はじめに 家庭内LANのIPアドレスの管理って面倒ですよね。一般のご家庭はDHCPから払い出されたのを空気の様に使ってればいいですが「家庭内サーバを立てよう!」とか変な気を起こすと、固定IPアドレスの管理を未来永劫しいられる事になります。仮想マシンが…

タブが隠せる!史上最強のmikutterプラグインができたよ!

なにこれ? タブを隠すことができます。 はぁ?舐めてんの? 違います!これすっごい可能性を秘めてると思うんですよ! Bot用のどうでもいいタブを消す 今年の正月に書いたエントリで、時刻を吐くデータソースをトリガにして定期的にツイートを行うBotの作り…

alertyとmikutterでマイクラサーバの死活を監視するよ

はじめに 会社のお友達との会話。 友(品証部門)「もぐのさん・・・またマイクラのサーバが落ちてません?」 も(ソフト屋さん)「あ、うあああ、あのですねっ! サーバの電源が何故か落ちてる事がありまして!OAタップが怪しいんですが原因究明には至って…

TLに背景画像を付けるmikutterプラグインを作ったよ。

何これ? TLに背景画像を付けちゃいます。 インストール GitHubからzipファイルをダウンロードして適当なディレクトリに展開して下さい。moguno/mikutter-background_image · GitHub※mikutterプラグインマネージャ"Packaged"で"moguno"を検索してインストー…

Windows10タブレットにMSYS2を入れてsshデーモンを立ち上げてみた

これまでのあらすじ Windows10タブレット(DELL Venue 8 Pro)に、Linuxっぽい環境を構築するMSYS2と、現時点で最強と思われるBluetoothキーボードのMicrosoft Wedge Mobile Keyboardを組み合わせて、外出先でも快適にRubyのコードが書ける環境を手に入れま…

Ruby Installer 2.2でmikutter on Windowsする方法

2015/12/51:無事1.6.7が正式版になり、Ruby Installer 2.2.3でmikutterが動くようになりました。8/31にnokogiriの1.6.7.rc2がRubyGemに登録されました。このバージョンからRuby Installer 2.2に対応した拡張モジュールが含まれるようになるため、Ruby2.2で…

mikutter:おっさんだってサインコサインを学びたい!(学んだやん)

はじめに なんか巷では三角関数が空前の大ブームと言うことで、デスマから解放されて無駄にテンションの高い僕もノッてみることにしました!!冷静に考えると、もぐのはおっさんであり社会に出てから三角関数なんてとんと使ってない勢であるわけで、テメェが…

mikutterにおけるスレッドと並行処理機構のまとめ

mikutterの薄い本Vol.8に掲載したmikutter-datasource-aclogを入れてから、なんかたまにGUIが重たくなる気がして来ました。原因を調べたところ、mikutterイベントon_period内のhttp通信処理がたまに重くなるのせいで、メインスレッドのGUIの動作を阻害してい…

mikutterメモ:プラグインスラッグの注意点

.mikutter.ymlで指定した:slugと、Plugin.create()の引数で指定したスラッグが違うと、Plugin::specがnilになります。これは、Plugin::specの初期化は.mikutter.ymlで定義されたスラッグのインスタンスで行われ、プラグイン自身はPlugin.create()で指定した…

mikutterメモ:on_period使用時の注意点

1分周期でイベントを発生してくれる便利なon_periodさんでハマったのでメモ。on_periodはサービス(=アカウント)ごとに1回ずつ呼ばれます。 なので、マルチアカウントでmikutterを使用している場合、毎分アカウントの数だけon_periodが実行されてしまいま…

メッセージのフォントを変えたり文字色を変えるmikutterコマンドを作ったよ

何これ? 選択したメッセージのフォントや文字色を変更するmikutterコマンドを追加します。前のエントリ(メッセージをホームタイムラインに混ぜ込むmikutterコマンドを作ったよ - もぐてっく)で抽出タブの結果をホームタイムラインに転送するmikutter-comm…

メッセージをホームタイムラインに混ぜ込むmikutterコマンドを作ったよ

何これ? 選択したメッセージをホームタイムラインにじわじわ混ぜ込んで行くmikutterコマンドを追加します。単体だと「なんじゃそれ?」ってプラグインなのですが、例によってmikutter-extract-fire-commandと組み合わせると良い感じの仕事をしてくれます。 …

Rubyプログラミング不要!mikutterでBotを作ろう

明けましておめでとうございます。これは「あー正月ってテレビもつまんないしマジすることないよねー」カレンダー (なにそれ?)2日目の記事です。今回は拙作プラグインmikutter-extract-fire-commandを使って、コードを一切書かずにTwitter Botを作る方法…

みくったーちゃんが時刻を教えてくれるデータソースプラグインを作ったよ

何これ? みくったーちゃんが1分周期で現在時刻を教えてくれるデータソースです。 シンプルかわいいいです。 インストール GitHubからzipファイルをダウンロードして適当なディレクトリに展開して下さい。moguno/mikutter-datasource-clock · GitHub※mikutte…

MacPortsをアップデートしたらmikutterがぽんぽん落ちるようになった件

mikutter3.2 alpha 1が来たので早速遊ぼうとインストールしたんですが、nokogiriがコンパイルエラーになってしまいました。なのでMacPortsのupgrade outdatedとgem updateを掛けたところ、nokogiriはOKになるもmikutterさんが挙動不審に。(まるでそれはIngr…

あひる焼きゲームを盛り上げるコピペプラグインを作りました!

これはmikutter Advent Calendar 2014の20日目の記事です。 こんなことやってる場合じゃないけど手が勝手にな・・・。 何これ? あひる焼きゲーム。楽しいですね!mikutter開発日記: 帰ってきたあひる焼きゲームもっとあひる焼きユーザーを増やしていきたい…

Mavericksで動いてたmikutterをYosemiteでも動くようにする方法

Mavericksで動いてたmikutterをYosemiteでも動くようにする方法です。 XQuartzのインストール(何もしてない) Yosemite専用版はないので、既にインストール済みの最新版を使います。 XQuartz MacPortsのインストール Yosemite版をインストールします。The M…

後で読みたいURLをはてなブックマークに登録するmikutterプラグインを作りました!

何これ? ツイートに含まれるURLをはてなブックマークに登録するコマンドを追加します。 後で読みたい記事をスマホなどから参照するのに便利です。 インストール GitHubからzipファイルをダウンロードして適当なディレクトリに展開して下さい。moguno/mikutt…

プロフィールタブを自動的に閉じるmikutterプラグインを作りました。

何これ? プロフィールタブってつい消すのを忘れて、気がついたらペインを圧迫しているときってありますよね?このプラグインを使えば、プロフィールタブが一定時間経つと自動的に閉じる様になります。 インストール GitHubからzipファイルをダウンロードし…

mikutterプラグインマネージャ "Packaged"

何これ? mikutterのプラグインをお手軽に管理するための外部ツールです。 下記の機能があります。 GitHubのmikutterプラグインのインストール インストール済みのプラグインの有効/無効の変更 インストール GitHubからzipファイルをダウンロードして適当な…

抽出タブの結果にコマンドを適用するmikutterプラグインを作りました。

何これ? 抽出タブで抽出したメッセージに対して、タイムラインロールのコマンドを適用するプラグインです。例えば選択したメッセージをEvernoteに保存出来るコマンドがあったとして、「"slideshare"が含まれるツイートを一式Evernoteに流し込む」みたいなユ…

Ubuntu14.04でもmikutter 3.0が使いたい!

はじめに Ubuntu14.04収録のmikutter 0.2.2は既に開発が終了しており、現在は3.0.x系がメインストリームになっています。0.2.2だと日々リリースされるプラグインが使えなかったりして、ちょっとつまんないですね。幸い、次期バージョン(utopic)のリポジト…

Google Tasksと連携するmikutterプラグインを作ったよ

何これ? mikutterからGoogle Tasksを操作するためのプラグインです。 Googleのサービスの中でも一際地味なサービスなんですが、シンプルで使いやすいですよTasks。 インストール moguno/mikutter-datasource-google-tasks · GitHub~/.mikutter/plugin/にmik…

mikutterコードメモ - 抽出タブ関係のイベント

on_extract_tab_update 抽出タブの設定内容が変更された時に発生する。 抽出タブの設定ウインドウが閉じられた時にも発生する。 on_extract_tab_open_create_dialog 抽出タブ名入力ウインドウを表示する時に発生する。 on_extract_open_edit_dialog 抽出タブ…

mikutterコードメモ - Settings,Listenerクラス

Settingsクラス core/plugin/settings/builder.rbに定義されている。 親クラスはGtk::VBox なので、Settingsで定義した画面は設定画面に限らず任意のGTKコンテナに格納可能。 逆にSettingsの子に任意のGTKウィジェットが格納可能。 超汎用的! 値はListener…

RSSをデータソースに出来るmikutterプラグインを作ったよ。

何これ? RSSフィードを抽出タブのデータソースに追加します。mikutterの抽出タブを使うとTLやメンションなどのデータソースを束ねたり、必要なメッセージのみを抽出したりして独自のTLを作る事が出来ます。mikutterの今後のバージョンでは「保存された検索…

ユーザーにメモを書き込めるmikutterプラグインを作ったよ

何これ? 今回、年に一回行けるか行けないかのオープンソースカンファレンスに参加しまして、オンラインで拝見してた方々と実際に会話を交わす事が出来て嬉しかったなと。でも何しろ年に一回行けるか行けないかの会なので、次お会いする時には一週間フレンズ…

WindowsにcapstanをインストールしてOSvを起動してみた

はじめに オープンソースカンファレンス2014 Kansai@KyotoでOSvの何たるかをご教示頂きました。 (ざっくり、JVMの動作に必要なLinux APIをエミュレーションする超軽量なOSとのこと。)調べるとWindowsとVirtualBoxと言う我が家のクラウド環境(?)もサポー…

Ubuntuユーザに送る!国産 Twitter クライアント「mikutter」の楽しみ方( 14.04版)

去年の年末に書いたmikutter Advent Calendar 15日目 Ubuntuユーザに送る、国産twitterクライアント「mikutter」の楽しみ方 - もぐてっくが時の流れで色々上手くいかなくなっているので14.04向けに加筆修正してみました。 Ubuntu14.04にmikutterをインストー…

タブのアイコンサイズ変更&タブ名表示mikutterプラグインを作った

これなん? mikutterのタブのアイコンサイズ変更とか、タブ名を併記させたりとか。 次の2つのプラグインで実現しています。 mikutter-tab-hardpoint タブプラグインのための前提プラグイン。 サンプルとしてタブのアイコンサイズを変更する機能が付いてます…

たった180円で独自ドメインの超高機能ダイナミックDNSが構築出来ちゃった話

あらすじ ある日、外から自鯖に接続出来なくなった。 調べてみると愛用のDDNSサービスの規約が変わって有料化。名前を解決してくれなくなっていた。今まで大分お世話になってたので課金しようかなとも思ったけれど、DDNSだけで¥500/月はちょっと・・・。仕方…