edo1z blog

プログラミングなどに関するブログです

2020-01-01から1年間の記事一覧

tmuxとvimの画面分割とサイズ変更

vim ssで横に分割 svで縦に分割 ctrl + e後に、hjklでサイズ変更 Plug 'simeji/winresizer'でプラグインを入れている。 sh, sl, sk, sjで画面移動 vimのtab NERDTreeの一覧上でtを押すと別タブで開く。 それか、stで新規タブを開いて、fzfとかで検索して開く…

mac m1 - terminal, zsh, vim等の設定メモ

Terminal iTerm2を使う。 terminalからfinderを開くには、openコマンドを使います。 iTerm2のthemeの設定 Preferences > Profiles > Colors > Color Presets > Import xxxx.itermcolorsというファイルをインポートする。 Iterm Themes - Color Schemes and T…

Stripe Connect関連のメモ

Stripe Connectを使っていて、入金可能残高の遷移をwebhookで受付ている。イベントは、 balance.available で、これは、総残高の遷移ではなく入金可能残高の遷移のみをイベント通知する。テストでは、このページに書いてある、下記番号を使うと、決済完了後…

Stripe - on_behalf_ofを使えと言われても使ってはいけなかったのでメモ

こういうエラーが出た。昔も出たのだが対処方法を完全に忘れており、下記にあるとおり、on_behalf_ofをつけたらエラーが消えたのだが、今度は本番で利用するStripeでエラーがでるようになった。 Error: Cannot create a destination charge for connected ac…

MetaTrader - 取引時間・スワップ・手数料・pips

取引時間 MT4, 5両方とも同じ関数がありますが、下記で一応取引時間が取れました。(MT4で試しています) 戻り値がfalseの場合は、1日お休みということっぽい。 ただ、3番目の引数が謎。session_index session_indexを1にしたら、全部falseになった。 string…

MetaTrader4 - 1分足データの取得など

ヒストリーデータ ヒストリーデータというのがあるらしい。 efxcursion.com ヒストリーデータの信頼性は、 使用するFX業者 > FXDD社 > MetaQuotes社 です。 しかし、MT4をダウンロードした直後の、 実際に使用するFX業者のサーバーに残って いるヒストリー…

DockerでPM2とAdonis.jsとApache2でWebsocketを動かすときのメモ

docker-composeのメモ Dockerfileの編集等が反映されない場合は、ビルドする。 $ docker-compose build [service name] それでも反映されない場合は、キャッシュ無効にしてビルドする。 $ docker-compose build --no-cache ビルドしてから一回donwしてupした…

FTXの自動取引プログラムのサンプルを作成しました。

github.com FTX-sample FTX-sample is the Automatic trading program for FTX How to use Register your account on FTX. Create an FTX API key and set it in the .env file. Install and start this program. API Key Go to https://ftx.com/profile and…

Slackのgeneralチャンネルのメッセージを全削除するスクリプトを作ったけど削除できなかった

下記のようなコードを作って実行してみたけど、削除できなかった。理由は権限不足だった。 解決策をちょっと調べたけど分からなかったのであきらめた。 const {webClient, WebClient} = require('@slack/web-api'); require('dotenv').config(); const token…

MySQL - 複数テーブルを連結して重複を削除しつつ、特定テーブルに存在するデータを削除する

複数テーブルの連結 union を使うと連結できます。 特定テーブルに存在するデータの削除 特定テーブルをleft joinしたときに、特定テーブルの該当カラムに値があれば、特定テーブルに同じデータが存在するということになります。 ですので、left join しつつ…

WSL2の特定ポートにwindowsからアクセスする

WSL

どうもWSL2は、windowsとネットワークが別になっているらしい。WSL2の3338ポートにwindowsからアクセスする場合は、単純にlocalhost:3338で、WSL1のときはよかったけど、WSL2はダメらしい。 ただ、下記を .wslconfig に追加したら、それだけでアクセスできる…

WSL2にしたらDocker使えへん

下記エラーが出ます。 ERROR: Couldn't connect to Docker daemon at http://localhost:2375 - is it running? If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable. ここに色々解決策が書いてありました。 git…

EC2をAutoスケール・自動デプロイさせる

AWS

ALBにつなげるEC2を自動スケールさせます。またデプロイは複数のEC2に自動でデプロイしたいので、CodeDeployを使ってみました。CodeDeployは、S3にプッシュして、それを利用してデプロイするようにしました。CodeDeployが自動デプロイする際、プロジェクトル…

tmux - WSL2にしたらコピペできなくなった

下記でWSLでもコピペできるようにしたけど、WSL2にしたら出来なくなった。 blog.logicky.com 解決策 上記の投稿で、.tmux.confを下記のようにしていた。 if-shell "uname -a | grep Microsoft" '\ bind-key -T copy-mode-vi y send-keys -X copy-pipe-and-ca…

PM2でNode.jsのプログラムを自動起動させる(Amazon Linux 2)

参考: PM2-スタートアップスクリプトジェネレーター インスタンスが起動したら自動的にNode.jsアプリが起動するようにする やり方 pm2 starup を実行すると、実行すべきコマンドが表示される。それを実行する。 上記を実行すると、/etc/systemd/system/pm2-e…

sshのconfigの設定(ファイル分割・ポートフォワーディングなど)

SSH

configのファイル分割 Include *.conf 踏み台サーバ経由の接続 Host fumidai HostName ***.***.***.*** User hoge Port 22 IdentityFile ~/.ssh/hoge Host app1 HostName 192.168.20.00 User ec2-user ProxyCommand ssh -W %h:%p fumidai Port 22 IdentityFi…

Shopify - ページ編集にMarkdownを使う

ページ編集にMarkdownを使えるようにするアプリがあるだろうと思ったら、どうもないようでした。 方法概要 Stripeダッシュボードのページ編集画面のウィジウィグモードで、Markdown形式でコンテンツを書いて保存する。 Markdownを使いたいページで、markedを…

Shopify - 特定の商品を購入している場合にのみ閲覧可能なページを作成する

特定の商品を購入している場合にのみ、閲覧可能なページを作成したい場合は下記のようにやるととりあえず出来ました。 前提 対象となる特定商品の商品のハンドルに、「hoge」という文字列が存在する。 対象外の商品のハンドルには、「hoge」という文字列は存…

Shopify - Themeのcss

layout/theme.liquidに大元がいる。ここでcssも読み込んでる。 ここで、ページのタイプとかを確認して、特定のページのみ、cssを追加したりできそう。 {{ 'timber.scss.css' | asset_url | stylesheet_tag }} {{ 'theme.scss.css' | asset_url | stylesheet…

Shopify - Pageに商品情報を表示させる

Liquidのオブジェクトのハンドラ 商品やページ等はLiquid的にはオブジェクトで、これらにはハンドラというのがある。 ハンドラを指定することで、商品を特定できるので、ページに埋め込む際に使える。 でもウィジウィグエディタではliquid構文使えないっぽい…

ShopifyのThemeKit

ShopifyのThemeを編集する際に、ローカルで開発しやすくするためのツールがThemeKitです。 環境 Windows10 WSL インストール ここに書いてあるLinux Installationのとおりにやったらできました。設定とテーマ取得方法も書いてあるとおりにやったらできました…

Element UIのtableでsortとpaginationを連動させる

Element UIのテーブルはソートとページネーションの相性が悪いらしい。試してみたら確かに悪かった。何が悪いかというと、ソートがページネーションと連動しない。ページ内に表示されているデータがソートされるだけだった。 対策 el-table-columnのsortable…

socket.ioの最大同時接続数とサーバ負荷の確認

Adonis.jsでsocket.ioを動かして、リアルタイムにプッシュ配信させるプログラムをPM2で動かしています。webサーバはApacheです。Apacheの設定についてはここにメモしました。socket.ioを使ったので同時接続どのくらいできるのか確認しました。とりあえず同時…

CentOSのApacheでAdonisを動かす

$ pm2 start server.js $ apache proxy 設定(ドキュメントルートをhttp://localhost:3333に飛ばす) これで大体はいいはずなんだけどうまくいかない。 curl http://localhost:3333とかやると「接続を拒否されました」となる。 firewalldは使われてなくて、i…

vscodeで #include <bits/stdc++.h> を使う

使えてたのに突然使えなくなりました。悲しいです。 ctrl + shift + p でコマンドパレットを開きます。 c++ edit json などと入力して、「c/c++ Edit Configurations (JSON)」を実行します。 すると、.vscode内に、c_cpp_properties.jsonが作成されます。 co…

tmuxで色々自動実行しつつ画面を分割したりする

tmuxで色々自動実行しつつ画面を分割したりする方法 tmux new-session -d -s hoge -n taro hogeという名前のセッションを作成し、taroというウインドウを作成する。 tmux split-window -h tmux split-window -h tmux split-window -v -t 0 tmux split-window…

C++ 割ったあまり

参考 「1000000007 で割ったあまり」の求め方を総特集! 〜 逆元から離散対数まで 〜 - Qiita 分かりやすいmodの説明動画 www.youtube.com www.youtube.com 基本 掛け算、足し算、引き算は、計算途中で余りだす。 引き算は、余りがマイナスになったらmodを足…

C++ 拡張ユークリッドの互除法

ユークリッドの互除法は2つの自然数の最大公約数を求める際に利用します。 a % b == r の場合、a, bの最大公約数は、b, rの最大公約数と等しいです。 b % r == r2、r % r2 == r3と繰り返すことで、最終的に余りが0になったときの割ってる方の数が最大公約数…

C++ 累乗の速いやつ

blog.logicky.com 上記でPythonでやっていますが、C++でもやってみます。どうも速いやつは「繰り返し二乗(自乗)法」という名前らしい。 #define _GLIBCXX_DEBUG #include <bits/stdc++.h> using namespace std; using LL = long long; // xのn乗 LL powpow(LL x, LL n) { </bits/stdc++.h>…

C++ 累積和

累積和は、配列の一部の範囲の合計を出すやつです。何回も合計を出す場合に効率化できます。最初に合計を入れる配列を用意して、順番にその位置までの合計を入れていきます。あとはそれを参照するだけで合計出せます。 サンプルコード #define _GLIBCXX_DEBU…