素肌にサスペンダー

個人的な備忘と日記

【Git】Visual Studio Codeで変更箇所がハイライトされない時

Git管理しているのに、Visual Studio Codeで変更した箇所がハイライトされなかった。

.gitのあるルートディレクトリではなく、下層のフォルダを開いてたのを、.gitのあるルートディレクトリで開き直したら直った。

※管理運用上、いくつかのプロジェクトをまとめて一つのリポジトリに格納していたので、特定のプロジェクトのフォルダを開いて作業していたのが原因だった。

トレトレ店長の本読んだ感想

働いたら負けだべや! 1億総ボンビー時代をサバイブする「お金と幸せのコスパ」 を購入して読んだ。

もともとたまにYoutubeを見ていたけど、実体験に基づいた考え方の教えがたくさん詰まっていた。 特に、「お金から自由になるためにお金を稼ぐ」ってのは同意する。

はぶりの良い時だけ散財してあとで困っても仕方ないし、やっぱり若いうちに苦労したからこその言葉だと思う。 したくないことしないための守りの資産は平穏に生きていくためにどうしても必要。(自分も20代の頃フラフラしてて貧乏だったし共感した)

あとがきの半生も面白かった。 自分も色々転職したうえでなるべくして今フリーランスになっている気がするので、共感できた。

その中でもいくつかターニングポイント(最初のブラック企業勤務、良さげな会社の社員化を蹴ったこと、Youtubeのことをたまたま客に教えてもらったこと)があり、今Yotuberとして成功なされている経緯をしれてよかった。 人生ロードマップなんかなくてやっぱ都度考えて試行錯誤していく積み重ねだと思う。

考えるよりもまず行動しろ 視野を広く、常識は捨てろ 自分の魂の叫びに従え

【mac】使用しているlocalhostのポート一覧を表示して特定のプロセスを終了する

macで現在使用しているlocalhostのポート一覧を表示して特定のプロセスを終了したい場合のメモ

1.ターミナルを起動して以下を実行する

sudo lsof -iTCP -sTCP:LISTEN -n -P

2.以下のような結果を得られる。(8000番を使用中)

COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
119 〇〇〇:8000 (LISTEN)

3.PIDを指定して以下のようにkillを実行する。

kill 119

ストレスの指標としてのしゃっくり

今、今年最大のストレスを感じているけど、久々にしゃっくりをしている。

そういえば、昔ちょっと病んでた時は、よくしゃっくりをしていたきがする。

当時はタバコ吸ってたのもあってそのせいにしていたけど、ストレスもあるのかもしれない

瞼のピクピクは経験則でストレスと相関ありそうとは思ってたけど、しゃっくりもあるのかも

瞼のピクピクとしゃっくりは要注意

【構造化マークアップ】schema.orgに準拠したパンくずリスト

こんな感じで書けば良い

<nav>
    <ol itemscope itemtype="http://schema.org/BreadcrumbList">
        <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
            <a itemprop="item" href="/">
                <span itemprop="name">TOP</span>
            </a>
            <meta itemprop="position" content="1">
        </li>
        <li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
            <a itemprop="item" href="/content">
                <span itemprop="name">content name</span>
            </a>
            <meta itemprop="position" content="2">
        </li>
    </ol>
</nav>

設置が終わったら、Googleの構造化データをテストするページでURLをテストする

developers.google.com


補足

itemprop="name"は、無くてもスキーマ マークアップ検証ツールではエラー出ないけど、Googleのリッチリザルト テストではエラーになり、サーチコンソールでも怒られたので、一応入れておいた方が無難。

【BootStrap】今表示しているURLをコピーさせてツールチップを表示させる

BootStrapと、Clipboard.js を使ったサンプル

ボタンをクリックしたら、「URL copied!」にツールチップの表示が変わる。

<!DOCTYPE html>
<html lang="ja">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <!-- Bootstrap CSS -->
    <link
      rel="stylesheet"
      href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css"
    />
    <title>Copy URL to Clipboard</title>
  </head>
  <body>
    <div class="container">
      <button
        class="btn btn-primary"
        id="copyButton"
        data-bs-toggle="tooltip"
        data-bs-placement="top"
        title="Click to copy URL"
      >
        Copy URL
      </button>
    </div>

    <!-- Bootstrap JS -->
    <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>
    <!-- Clipboard.js -->
    <script src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.8/clipboard.min.js"></script>

    <script>
      document.addEventListener("DOMContentLoaded", function () {
        // Initialize tooltip
        var tooltipTriggerList = [].slice.call(
          document.querySelectorAll('[data-bs-toggle="tooltip"]')
        );
        var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {
          return new bootstrap.Tooltip(tooltipTriggerEl);
        });

        // Copy URL to clipboard
        var copyButton = document.getElementById("copyButton");
        copyButton.addEventListener("click", function () {
          var url = window.location.href;

          var clipboard = new ClipboardJS(copyButton, {
            text: function () {
              return url;
            },
          });

          clipboard.on("success", function (e) {
            e.clearSelection();
            copyButton.setAttribute("data-bs-original-title", "URL copied!");
            var tooltip = bootstrap.Tooltip.getInstance(copyButton);
            tooltip.update();
            tooltip.show();
            clipboard.destroy();

            // メッセージの表示時間を設定
            setTimeout(function () {
              copyButton.setAttribute(
                "data-bs-original-title",
                "Click to copy URL"
              );
              tooltip.update();
              tooltip.hide();
            }, 2000);
          });

          clipboard.on("error", function () {
            copyButton.setAttribute(
              "data-bs-original-title",
              "Failed to copy URL. Please manually copy the URL."
            );
            var tooltip = bootstrap.Tooltip.getInstance(copyButton);
            tooltip.update();
            tooltip.show();
            clipboard.destroy();

            // メッセージの表示時間を設定
            setTimeout(function () {
              copyButton.setAttribute(
                "data-bs-original-title",
                "Click to copy URL"
              );
              tooltip.update();
              tooltip.hide();
            }, 2000);
          });

          clipboard.onClick(event);
        });
      });
    </script>
  </body>
</html>

【Laravel】さくらサーバー(スタンダードプラン)にLaravelをデプロイする方法

調べると、GitHubの手順も込みの情報が多くちょっとややこしかったので、シンプルにローカルで開発したLaravelのプロジェクトをさくらのレンタルサーバー(スタンダードプラン)に、デプロイする手順をメモしておく。


  1. さくらサーバーのコントロールパネルで、DBを作成する
  2. さくらサーバーの/home/ユーザー名/任意のプロジェクト名に、ローカルのvendorフォルダと、.env以外を全てアップロードする。※SSHでもFTPでもOK。
  3. さくらサーバーにSSH接続する help.sakura.ad.jp
  4. cdコマンドで、/home/ユーザー名/任意のプロジェクト名に移動
  5. curl -sS https://getcomposer.org/installer | phpでcomposerをインストール
  6. php composer.pharを実行
  7. php composer.phar installを実行(vendorフォルダが作成される)
  8. 以下の部分をローカルのものと書き換えた.envファイルを作成し、アップロードする DB_CONNECTION=mysql DB_HOST=データベースサーバー DB_PORT=3306 DB_DATABASE=1で作成したデータベース名 DB_USERNAME=アカウント名 DB_PASSWORD=データベースパスワード
  9. php artisan key:generate
  10. php artisan migrate
  11. publicフォルダを/home/ユーザー名/www/任意のプロジェクト名にアップロードする
  12. index.phpの以下の部分を書き換える
require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';

↓

require __DIR__.'/../../任意のプロジェクト名/vendor/autoload.php';
$app = require_once __DIR__.'/../../任意のプロジェクト名/bootstrap/app.php';