90超えた
最後に歌った曲が90超えた ビブラート上手さ0だし音程も80%程度でもこんないくんだね
ヒトカラ
最近ヒトカラにハマってほぼ毎週通ってる。
カラオケなんて無縁と思ってたけど1,000円位で長時間楽しくすごせるのいい。
damのマイページで確認すると今日は11:48から19:25までずっと歌い続けてたみたい。
100曲くらい歌うとマイクの電池無くなるのね。 新しいマイクに変えると音の出が全然違う。 最後に何曲か新しいマイクで歌って終わりました。
約100曲歌った後の消費カロリーえぐい
こんだけ歌って喉の調子が気になるけど今のところは枯れてる感じもなし。 明日どうなってるか次第。
精密採点DX-Gで採点してほぼ全ての曲で音程70%しか会ってないという結果。 もう少し原曲を聴きましょう。
本日の最高得点と平均点はこんな感じ。リズム以外はダメかもしれん。
特に低い音とか全然合わないのでどう声を出したらいいか教えてほしい。
江ノ島観光
夜行バスでは全く眠れず少し汗もかいてしまったため横浜駅から上星川駅に向かい天然温泉満天の湯でさっぱりしたあと電車やバスを乗り継いで江ノ島に。
江ノ島海岸で降りて歩いて橋渡ればよかったなと思ったけど思った時には江ノ島についていた。
そこで1000円のフリーパスを購入してエスカレーターを利用しながら上に向かってみる。
途中に神社がいくつかあり参拝しながら頂上につくと庭園とシーキャンドル。
庭園ではリスがいた。
木の上だからか近づいても全然逃げない。
野生のリスいるんだね。
北海道の摩周湖にもいたけどあっちは餌付けされてて野生?って感じだった。
(北海道のリス)
岩屋まで進むまでにレストランが何軒かあってどこに入ろうか迷ったけど、お腹もそこまですいてなく岩屋の帰りによれば良いやと思ってた。
・・・これが間違いだときづくのは後の話。
岩屋の中は低い洞窟で頭がぶつかる高さ
こんな所の奥に石の彫像とかあって密教みたいと思ったのは内緒。
今は電灯があるからいいけど無い時どうしてたんだろう?
あの吹けば消える蝋燭使ってたの?
岩屋を抜けると海岸に戻りの遊覧船。
正直なところ歩き疲れて坂道を戻るのはきついので江ノ島で食事をすることなく対岸に戻ってしまった。
もし江ノ島を観光することがあるなら岩屋に行く前に食事をしとこうね。美味しそうな料理たくさんあったから。
対岸に戻り入り口で案内していたおじさんに水族館の位置を聞いて向かう。
水族館は平日だというのに子供がたくさん。学校の行事っぽい。
入り口で荷物預けて身軽になった状態でいろいろ見て回る。海の波を再現してたり巨大な水槽があったりかなり見ごたえはあったね。
もしフリーチケットを江ノ島で購入していたら少し割引きにもなるので観光の後に向かうのはありだと思う。
水族館を堪能して出口に到着。
出口のお兄さんに入口のロッカーに荷物預けたんですけど取りに行くにはどうすればいいか聞いてみたら再入場との事。
再入場して荷物を取り今度は近い方の出口から出る。次があったら荷物預けるか迷う。
水族館出て近くの中華っぽいところが見えたので歩いて行ってみると実は駅だった。
変わった駅もあるもんだ。
VSCodeのスニペットについて
VS Codeの拡張機能開発の練習でC++のスニペットを拡張機能として作成して去年あたりに公開した。
標準のC++拡張でもスニペットは入っているけど足りない部分を補う感じで作成しているつもり。
作成する中でスニペットの便利機能を調べたのでまとめてみる。
便利機能
もしも拡張機能でなく自分独自にスニペットを作成したいならこんな便利な機能があるよというのを何選か。
ファイル名やフォルダ名、現在の月日、乱数、UUID、選択範囲、クリップボードなどは変数で定義されている。
変数は初期値として使用したり正規表現で置換して使用することが可能です。
変数一覧→Snippets in Visual Studio Code
変数一覧に記載がありませんがタブストップの内容も変数となります。
変数名としてはタブストップのインデックスです(タブストップが$1
なら変数名は1
です)
変数を正規表現で置換する際に大文字、小文字などに変換可能。
正規表現の構文は以下の通り。
${変数/正規表現/フォーマット文字列/正規表現オプション}
正規表現で置換後のフォーマット文字列でマッチした内容を$1
などで参照できる。
その$1
を${1:/upcase}
などで大文字にしたり小文字にしたりすることが可能。
使えるオプションは以下の通り
/upcase
大文字に変更/downcase
小文字に変更/capitalize
キャピタライズに変換(先頭のみ大文字)/camelcase
キャメルケースに変換(先頭は小文字で文字の区切りの頭だけ大文字)/pascalcase
パスカルケースに変換(先頭および区切りの頭だけ大文字)
※仕様が記載されていないので/capitalize
、/camelcase
、/pascalcase`がどこを区切り文字と判断するか不明
同じインデックスのタブストップの内容は同期される。
複数の同じインデックスのタブストップの内容は最初の一つだけ設定すればOK。
//C++ include guards //ファイル名を大文字に変換 //before #ifndef ${1:${TM_FILENAME/(?:(\\w+)(\\.)?)/${1:/upcase}${2:+_}/gi}} #define ${1:${TM_FILENAME/(?:(\\w+)(\\.)?)/${1:/upcase}${2:+_}/gi}} $0 #endif // ${1:${TM_FILENAME/(?:(\\w+)(\\.)?)/${1:/upcase}${2:+_}/gi}} //after #ifndef ${1:${TM_FILENAME/(?:(\\w+)(\\.)?)/${1:/upcase}${2:+_}/gi}} #define $1 $0 #endif // $1
ショートカットキーから呼び出せる。
Snippets in Visual Studio Code
//keybindings.json内に直接スニペットを記載する { "key": "cmd+k 1", "command": "editor.action.insertSnippet", "when": "editorTextFocus", "args": { "snippet": "console.log($1)$0" } } //keybindings.jsonから登録したスニペットを呼び出す。 { "key": "cmd+k 1", "command": "editor.action.insertSnippet", "when": "editorTextFocus", "args": { "langId": "csharp", "name": "myFavSnippet" } }
選択範囲を変換するスニペットの場合はこの方法か、コマンドパレットからスニペットを挿入を選択するしか方法がありません。
不満点
設定ファイルが存在しない。設定ファイルで変数とか定義できるともっと便利になるのにと思う。
追記
VSCodeの公式ページのスニペットの変数一覧でVer1.66で追加された変数CURSOR_INDEX
とCURSOR_NUMBER
が2022/06/21段階でなぜかまだ追加されていない。
Snippets in Visual Studio Code
Visual Studio Code March 2022
はじめに
ゆとり休暇で仕事休みのため15年ぶりぐらいにブログを始めてみる。
雑多な感じでゆるゆると進めます。