みかづきメモ

学習したことのメモとか、日記とか、備忘録。

rubyzip でパーミッション付きで解凍したい

タイトルまま。 require 'zip' Zip::File.open(file) do |zip_file| zip_file.each do |entry| entry.restore_permissions = true # ここ! entry.extract end end このままだと、ディレクトリが来たときとか死ぬ気がするけど、それはそれで。

Administrate の Enumerize プラグインを作った

最近、管理画面に Administrate を採用していて、かつ enum の i18n とかで Enumerize を使っているので、良い感じにするためのプラグインを作りました。 administrate-field-enumerize | RubyGems.org | your community gem host 他の Field と同じように、…

macOS で rmagick をインストールしたい

rmagick のインストールがしたかった。 bundle コマンドで rmagick を入れようとすると、下のようなエラーが出る。 ERROR: Error installing rmagick: ERROR: Failed to build gem native extension. current directory: /usr/local/lib/ruby/gems/2.4.0/gem…

Node.js で FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

Node.js で Electron アプリを作成していたら、ビルド時の最適化の際、 タイトル通りのエラーが発生した。 解決方法としては、実行時にオプションを付け足せば良いみたい。 $ node --max_old_space_size=4096 $(which yarn) run package 参考: AOT build fai…

macOS Sierra で register_with_server: ERROR: f2d_register_rpc() がでる

macOS Sierra 10.12.5 nvm (Node v6.9.5) 上記の環境で、 Jest を使おうとしたら、以下のようなエラーが出た。 register_with_server: ERROR: f2d_register_rpc() 解決方法としては、 watchman をインストールすれば直るとのこと。 $ brew install watchman …

Rails で PayPal の Express Checkout を導入してみる

Ruby on Rails で、 PayPal の Express Checkout を導入してみます。

rails_admin で表示するフィールドをカスタマイズしたい

例えば、 created_at とか updated_at とかはいらないんだけど、他は表示したい。 あと、追加で comment みたいなのも表示してほしいとかそういった場合: # @ config/initializers/rails_admin.rb config.model 'User' do include_fields_if do not name.mat…

VS をアップデートしたら XamarinAndroidPackage 云々言われた

Visual Studio 2017 を起動したら、更新が来てたので、更新したらこうなった。 Xamarin, アップグレードしたら死んでるんだけど、ヘルプ pic.twitter.com/6EwhiO9ZyM— みか@ビビッと! (@MikazukiFuyuno) 2017年5月11日 とりあえず、 Xamarin 関連コンポーネ…

Mastodon メモ

結論: マストドンのAPIドキュメントは信用するな ( ˘ω˘ )— 椎茸くんです (Rails) (@tottokotkd) 2017年5月6日 どういうこと: Streaming API のドキュメントを見ていて、 Local timeline を取得するものがなかった。 ないのかなーとつぶやいたら、「あるよ」…

find_by_sql でも preload したい

ActiveRecord のクエリじゃきついような時、 find_by_sql を使うと思うのですが、 こっちは preload ができないのでしたかった。 ちなみに Rails 5 です。 users = User.find_by_sql(["SELECT * FROM ...", id]) ActiveRecord::Associations::Preloader.new.…

Rails で ROLLBACK された理由が知りたい

レコード作成時、なにも COMMIT されなかったり ROLLBACK されたりして、 理由がわからなかったので調べる方法。 song = Song.new(title: "恋愛サーキュレーション") song.save # -> ROLLBACK logger.debug song.errors.inspect # -> {message: "すでにある…

UWP アプリから、ストアアプリのレビュー画面を開きたい

アプリの設定とかから、「気に入ったらレビューしてね!」みたいなのを追加したかった。 以下のようにすることで起動できます。 await Launcher.LaunchUriAsync(new Uri($"ms-windows-store:REVIEW?PFN={Package.Current.Id.FamilyName}")); ちなみに、 MSDN…

Rails でエラーメッセージを良い感じにしたい

rails-i18n を入れてくれるとだいたい良い感じにしてくれるんですけども、 「なんかちがうんよー」みたいな時もあります。 例えば、次のようなとき: # attachment.rb class Attachment belongs_to :illust mount_uploader :file, ImageUploader end # illus…

Ruby で匿名クラスをつくりたい

匿名クラスを作りたかった。 @ninomiya = Class.new do attr_accessor :asuka end.new @ninomiya.asuka = "かわいい" 参考: Anonymous Classes In Ruby

React Router でサブディレクトリをルートとして扱いたい

GitHub Pages みたいに、 https://fuyuno.github.io/hoge/ という URL しか使えないとき、 React Router で /hoge をルートとして扱いたかった。

SSH しようとしたら No user exists for uid XXX って言われる

SSH しようとしたら、見かけないメッセージで怒られました。 $ ssh ~~~ No user exists for uid 501 (。・ω・。)... そういうときは、ターミナルのセッションを再起動(っていうのかな?)すれば直ります。 ちなみに原因はわかりませんでした(なんか名前が取得でき…

Wallpaper Engine の仕組みが気になったので

先日、 Twitter してたら面白そうなアプリのツイートが流れてきました。 Steamで販売している”WallpaperEngine”というデスクトップの画像を動画に変更できるアプリが面白い。設定も凄く簡単だし、最大化しているタブがある時は動画を停止してくれるのでCPUに…

React で Electron の WebView を使いたい

Electron + React で開発してて、 WebView を使いたいってことがあったけど、 普通に追加するだけだったら駄目だったので、やり方のメモ。

Visual Studio から Xamarin Mac Agent につながらない

先日の Connect(); // 2016 にて、 VS が Mac でも使えるよ!ってなったらしく、 久々に Xamarin をやってみました。 しかしながら、いざビルドしようとして SSH をつなごうとしたら、この状態です。 ID/PASS が間違えているのかなと、 WSL 経由で SSH に繋…

PC の型番を取得したい

C#

PC の型番情報を取得したくなったので、取得してみました。 こういった情報は、 Windows Management Instrumentation を使えば取得できるようです。 ということで、早速取得してみます。 using (var mos = new ManagementObjectSearcher()) { mos.Query.Quer…

Git で fatal: index file smaller than expected

Git

git status しようとしたら、「fatal: index file smaller than expected」と怒られた。 原因は、多分仮想マシンが落ちたからだと思うけれど、直し方をメモしておきます。

UWP で Entity Framework Core を使いたい

Entity Framework Core を使ったアプリを UWP で作ったので、 ライブラリとツールの使い方をメモしておきます。

Hyper-V 上で better_errors を使いたい

やってる事的には Vagrant だとかで better_errors を使うのと同じ感じですが、 ちょっと IP の確認が面倒だったので、メモしておきます。

CentOS 7 で MeCab と CaboCha で遊ぶ

ちょっと MeCab とかで遊びたくなったので、インストールとかのメモ。 基本的には、各ドキュメントにあるインストール方法そのままだったりします。

Hyper-V で Linux 環境を構築する その3

随分と間が空いてますが、以下の記事の続きです。 mikazuki.hatenablog.jp mikazuki.hatenablog.jp

gem install で怒られる

Bash on Ubuntu で gem install すると、下のように怒られます。 Error details ArgumentError: parent directory is world writable but not sticky /home/mikazuki/.rbenv/versions/2.3.1/lib/ruby/2.3.0/tmpdir.rb:93:in `ensure in mktmpdir' /home/mika…

rugged を使うときハマったこと

rugged を使って、 Git を使ったアプリケーションを作っている時にハマったことをメモしてます。

Windows Store 申請でリジェクトされまくったお話

UWP

Windows Store にアプリを出したら、何回かリジェクトされたので、 内容と修正の歴史をメモしておきます。

FlexSlider で右開きのコンテンツを作りたい

jQuery.FlexSlider 、スライドショーとか作れて便利みたいなのですが、 例えば漫画だったり小説だったりは、日本だと右開きになっています。 ということで、若干無理やりな気がしますが、 FlexSlider で右開きのコンテンツを作ります。

EntityFramework で子の子を読み込みたい

リレーションが下のような感じの場合。 public class Anime { public int AnimeId { get; set; } public int Year { get; set; } public int Quarter { get; set; } public string Title { get; set; } public virtual ICollection<Episode> Episodes { get; set; } }</episode>…

LINQ to Entities での DateTime.Now

LINQ to Entities + SQLite で下のようなクエリを使うと、 // 今やるべき予定 var plans = context.Plans.Where(w => w.StartAt <= DateTime.Now && DateTime.Now <= w.EndAt); こんな SQL が発行されます。 SELECT [Project1].[C1] AS [C1], [Project1].[Pl…

大量の NoUIEntryPoints-DesignMode をどうにかしたい

そろそろ SSD の整理をしようと思い、設定アプリの「システム」>「ストレージ」から アプリの整理をしようとしたら、「NoUIEntryPoints-DesignMode」がめっちゃあったので、 どうにかする方法のメモ。

UWP で ItemsControl.Items の変更を検知したい

WPF だと、 ItemsControl.Items は INotifyCollectionChanged を実装しているので、 いつもどおり検知できるのですが、 UWP だとなくてちょっと困ったのでメモ。

UWP でカスタム URI スキームに対応する

ストアアプリならば、 ms-windows-store://pdp/?ProductId=9WZDNCRFHVJL とすれば、 OneNote のアプリ詳細が開くように、自作のアプリでも対応したくありません? ということで、カスタム URI スキームに対応してみます。 ※なお、この記事は Prism の使用を…

IntelliJ IDEA で Tomcat 開発

今後、私がサーバーサイド Java を触ることはないだろうけども、 万が一あった際のためにメモ。

CefSharp で HTTP(S) 通信の中身をみたい

前からちまちまいじってる CefSharp の続きです。 私は CefSharp.WPF 以外は触ってないので、一応それでの話ということで。

HTML テキストを WebBrowser ではなく RichTextBlock で表現したい

WebBrowser またはそれに近い何かを使えっていう話でもあるんですが、 以下の様な HTML ドキュメントを、 RichTextBlock で表現したいとします。 <p> こんにちは、私は <a href="http://www.softbank.jp/robot/support/">Pepper</a> です。 <br /> 今は<strong>誰でも</strong>購入可能です。 </p> それなりに誰かやってそうなことなので、 MSDN …

CefSharp.Wpf でもスクショしたい

Chromium Embedded Framework (CEF) を C# から使えるようにしたプロジェクトのうちの1つに、 CefSharp というものがあります。 WinForms, WPF, OffScreen 用にそれぞれパッケージが用意されており、 NuGet からも導入できます。 そのうち、 OffScreen には…

UWP アプリでデバッグ時に「インストールに失敗しました。ソフトウェアの製造元に問い合わせてください。」

UWP

UWP アプリで、Mobile Emurator に対してデバッグ実行すると、 「インストールに失敗しました。ソフトウェアの製造元に問い合わせてください。」 みたいなこと言われることがある。 そういう時は、エミュレータを一旦終了して、もう一度実行すればなおります…

UWP の GridView でいい感じにコンテンツを配置したい

UWP の GridView でのお話。 いい感じってどんな感じっていう話なんだけれども、文字で書くとすれば、 「ウィンドウの幅によって、水平方向コンテンツ数と幅がちゃんと変わってくれる」 みたいな感じ。

ApiInformation.IsTypePresent に渡す値

前の記事にて、 ApiInformation.IsTypePresent に typeof で指定したのだけれども、 このようなツイートを見かけて心配になったので、試してみました。 あれ、IsTypePresentにtypeof().ToString()したら利用不可なとき死なない? — ゆたか (@tmyt) 2016年6月…

UWP で Windows Mobile 端末のステータスバーの高さを取得したい

UWP にて、 Windows Mobile 端末のステータスバーの高さを取得したい。 (下の画像赤で囲った部分)

Twitter アプリ (UWP) の プロフ画面っぽい UI を作りたい

UWP 版 Twitter 公式アプリの UI、個人的にはかなり参考になるのですが、 ところどころ謎な部分がありました。 その1つに、プロフィール画面があります。 これ、上の Pivot 以外が全部1つのスクロールになっていて、 どうやっているんだろうと思ったらでき…

Pivot も INavigationService で画面遷移したい!

「ストア」アプリなどで使われている Pivot 。 「ストア」アプリなどの挙動をよく見ると、 Pivot の Content の部分だけが遷移しています。 ということで、そこも Prism の INavigationService で遷移させてみました。

VS2015 で起動時に必ず「応答なし」となる時の対処法

VS2015 でソリューションを開いた際、起動直後に「応答していません…」となった際の対処法。 前提として Visual Studio 2015 Community 以上 ReSharper Ultimate が導入されていること。 まぁ前提にある通り、 R#er が原因なので、まずソリューションを開か…

UWP アプリから、他の UWP アプリを起動したい

こういうのを見かけたので。 フィードバックURIをハイパーリンク可能なTwitterクライアントがほしくなってくる— ぶりちゃん (崩壊) (@brichan_fiana) 2016年6月13日 URIスキーマ使ったらアプリ開けたりするのかな— Re:雪猫 (@snow_cait) 2016年6月13日 UWP …

webpack で CSS を Minify したい

webpack を使っていて、 CSS も Minify したい!って言う時のやり方。 npm install css-loader --save-dev した後に、css-loader?minimize と設定する。 実際だと、こんな感じかな。 const path = require("path"); const ExtractTextPlugin = require("extr…

リフレクションを使って、拡張メソッドを呼び出す

C#

リフレクションで通常のメソッドを呼び出す方法はよく解説されてるけども、 拡張メソッドを呼び出す方法はなかったので、メモメモ。

Visual Studio の拡張機能を作成する - 番外編 - ツールチップ

本筋からはちょっとズレますが、あると嬉しい機能である、ツールチップ表示を実装します。 画像のように、テキスト上にカーソルを持って行くと表示されるあれです。

Windows フィードバック の共有 URI を開きたい

Windows フィードバック(Insider だと Feedback Hub?)の「共有」で得られる下のような URI。 Feedback-hub:?contextid=NNN&feedbackid=12345678-1234-1234-1234-1234567890ab&form=1&src=2 これ、共有できるのは良いんですけど、Chrome とかじゃ開けません。…