<?xml version="1.0" encoding="UTF-8"?>
<rdf:RDF xmlns="http://purl.org/rss/1.0/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel rdf:about="https://let.hatelabo.jp/gunnyori/rss">
    <link>https://let.hatelabo.jp/gunnyori/rss</link>
    <description></description>
    <title>Bookmarklets from gunnyori</title>
    <items>
      <rdf:Seq>
        <rdf:li rdf:resource="https://let.hatelabo.jp/gunnyori/let/kvSDmrWgguAA"/>
        <rdf:li rdf:resource="https://let.hatelabo.jp/gunnyori/let/kcivoPSAgoAA"/>
        <rdf:li rdf:resource="https://let.hatelabo.jp/gunnyori/let/kcivsYCcgoAA"/>
        <rdf:li rdf:resource="https://let.hatelabo.jp/gunnyori/let/kcqc0eCygcAA"/>
      </rdf:Seq>
    </items>
  </channel>
  <item rdf:about="https://let.hatelabo.jp/gunnyori/let/kvSDmrWgguAA">
    <link>https://let.hatelabo.jp/gunnyori/let/kvSDmrWgguAA</link>
    <dc:date>2025-04-17T09:04:23Z</dc:date>
    <description>Amazonプライムビデオの邪魔なNext upカードの表示/非表示を切り替える</description>
    <dc:creator>gunnyori</dc:creator>
    <title>[Let] アマプラNextup表示切替</title>
    <content:encoded>&lt;a href="javascript:%22https%3A%2F%2Flet.st-hatelabo.com%2Fgunnyori%2Flet%2FkvSDmrWgguAA.bookmarklet.js%20%28arg%29%22.replace%28%2F%28%5CS%2B%29%5Cs%2B%28%5CS%2A%29%2F%2Cfunction%28s%2Curl%2Carg%29%7Bs%3Ddocument.createElement%28%22script%22%29%3Bs.charset%3D%22utf-8%22%3Bs.src%3Durl%2B%22%3Fs%3D%22%2BencodeURIComponent%28arg%29%3Bdocument.body.appendChild%28s%29%7D%29%3Bvoid%280%29%3B"&gt;アマプラNextup表示切替&lt;/a&gt;&lt;pre&gt;/*
 * @title アマプラNextup表示切替
 * @description Amazonプライムビデオの邪魔なNext upカードの表示/非表示を切り替える
 * @include https://www.amazon.co.jp/gp/video/*
 * @license MIT License
 * @require 
 */


(function() {
  // -nextupcard-show を含むすべての div 要素を取得
  const elements = document.querySelectorAll('div[class*=&amp;quot;-nextupcard-show&amp;quot;]');
  
  // 各要素の表示状態をトグル
  elements.forEach(element =&amp;gt; {
    // 現在の表示状態を確認
    const currentDisplay = window.getComputedStyle(element).display;
    
    // 表示状態をトグル
    if (currentDisplay === 'none') {
      element.style.display = '';  // デフォルトの表示状態に戻す
    } else {
      element.style.display = 'none';  // 非表示にする
    }
  });
})();&lt;/pre&gt;</content:encoded>
  </item>
  <item rdf:about="https://let.hatelabo.jp/gunnyori/let/kcivoPSAgoAA">
    <link>https://let.hatelabo.jp/gunnyori/let/kcivoPSAgoAA</link>
    <dc:date>2024-09-13T14:49:56Z</dc:date>
    <description>実況避難所NX-Jikkyoにキャプチャデバイスのビデオストリームを重ねて表示します（パフォーマンス優先で1280x720で取り込みます）</description>
    <dc:creator>gunnyori</dc:creator>
    <title>[Let] NX-Jikkyoビデオ表示Lite</title>
    <content:encoded>&lt;a href="javascript:%22https%3A%2F%2Flet.st-hatelabo.com%2Fgunnyori%2Flet%2FkcivoPSAgoAA.bookmarklet.js%20%28arg%29%22.replace%28%2F%28%5CS%2B%29%5Cs%2B%28%5CS%2A%29%2F%2Cfunction%28s%2Curl%2Carg%29%7Bs%3Ddocument.createElement%28%22script%22%29%3Bs.charset%3D%22utf-8%22%3Bs.src%3Durl%2B%22%3Fs%3D%22%2BencodeURIComponent%28arg%29%3Bdocument.body.appendChild%28s%29%7D%29%3Bvoid%280%29%3B"&gt;NX-Jikkyoビデオ表示Lite&lt;/a&gt;&lt;pre&gt;/*
 * @title NX-Jikkyoビデオ表示Lite
 * @description 実況避難所NX-Jikkyoにキャプチャデバイスのビデオストリームを重ねて表示します（パフォーマンス優先で1280x720で取り込みます）
 * @include https://nx-jikkyo.tsukumijima.net/watch/*
 * @license MIT License
 */


javascript:(function() {
  // 非表示にしたいクラスのリスト
  var classListToHide = [
    &amp;quot;watch-player__background-text&amp;quot;,
    &amp;quot;watch-player__background-logo&amp;quot;
  ];

  // クラスごとにループして要素を非表示にする
  classListToHide.forEach(function(className) {
    var elements = document.getElementsByClassName(className);
    for (var i = 0; i &amp;lt; elements.length; i++) {
      elements[i].style.display = &amp;quot;none&amp;quot;;
    }
  });

  var className = &amp;quot;watch-player__background--display&amp;quot;;
  var elements = document.getElementsByClassName(className);

  if (elements.length &amp;gt; 0) {
    var element = elements[0];
    element.style.position = &amp;quot;relative&amp;quot;;
    element.style.overflow = &amp;quot;hidden&amp;quot;;  // オーバーフローを隠す

    // 新しいビデオ要素を作成
    var video = document.createElement(&amp;quot;video&amp;quot;);
    video.autoplay = true;
    video.muted = true;  // 音声をミュート（別にオーディオミキサー経由で取り込んだ方がよい）
    video.style.position = &amp;quot;absolute&amp;quot;;
    video.style.top = &amp;quot;50%&amp;quot;;
    video.style.left = &amp;quot;50%&amp;quot;;
    video.style.transform = &amp;quot;translate(-50%, -50%)&amp;quot;;
    video.style.width = &amp;quot;100%&amp;quot;;
    video.style.height = &amp;quot;100%&amp;quot;;
    video.style.objectFit = &amp;quot;cover&amp;quot;;  // アスペクト比を維持しつつ親に収める
    video.style.zIndex = &amp;quot;-1&amp;quot;;  // divの後ろに配置

    // 明るさを調整するCSSフィルターを追加
    video.style.filter = &amp;quot;brightness(0.85)&amp;quot;;  // コメントが見やすいように若干明るさを落とす調整（1が標準）

    // div要素の背景を透明に
    element.style.background = &amp;quot;transparent&amp;quot;;

    // 要素をDOMに追加
    element.appendChild(video);

    // ウェブカメラのストリームを開始（解像度指定）パフォーマンス改善のため1280x720に
    var constraints = {
      video: {
        width: { ideal: 1280 },  // 取り込むビデオの幅
        height: { ideal: 720 },  // 取り込むビデオの高さ
        aspectRatio: 16/9        // アスペクト比
      },
//      audio: true  // オーディオ取得（ブラウザ経由ではなくオーディオミキサー経由で取り込んだ方がよい）
    };

    navigator.mediaDevices.getUserMedia(constraints)
      .then(function(stream) {
        video.srcObject = stream;
      })
      .catch(function(error) {
        console.error(&amp;quot;Error accessing webcam: &amp;quot;, error);
      });
  } else {
    alert(&amp;quot;Element with class name '&amp;quot; + className + &amp;quot;' not found.&amp;quot;);
  }
})();&lt;/pre&gt;</content:encoded>
  </item>
  <item rdf:about="https://let.hatelabo.jp/gunnyori/let/kcivsYCcgoAA">
    <link>https://let.hatelabo.jp/gunnyori/let/kcivsYCcgoAA</link>
    <dc:date>2024-09-13T14:49:27Z</dc:date>
    <description>実況避難所NX-Jikkyoにキャプチャデバイスのビデオストリームを重ねて表示します（画質優先で1920x1080で取り込みます）</description>
    <dc:creator>gunnyori</dc:creator>
    <title>[Let] NX-Jikkyoビデオ表示(フルHD)</title>
    <content:encoded>&lt;a href="javascript:%22https%3A%2F%2Flet.st-hatelabo.com%2Fgunnyori%2Flet%2FkcivsYCcgoAA.bookmarklet.js%20%28arg%29%22.replace%28%2F%28%5CS%2B%29%5Cs%2B%28%5CS%2A%29%2F%2Cfunction%28s%2Curl%2Carg%29%7Bs%3Ddocument.createElement%28%22script%22%29%3Bs.charset%3D%22utf-8%22%3Bs.src%3Durl%2B%22%3Fs%3D%22%2BencodeURIComponent%28arg%29%3Bdocument.body.appendChild%28s%29%7D%29%3Bvoid%280%29%3B"&gt;NX-Jikkyoビデオ表示(フルHD)&lt;/a&gt;&lt;pre&gt;/*
 * @title NX-Jikkyoビデオ表示(フルHD)
 * @description 実況避難所NX-Jikkyoにキャプチャデバイスのビデオストリームを重ねて表示します（画質優先で1920x1080で取り込みます）
 * @include https://nx-jikkyo.tsukumijima.net/watch/*
 * @license MIT License
 */


javascript:(function() {
  // 非表示にしたいクラスのリスト
  var classListToHide = [
    &amp;quot;watch-player__background-text&amp;quot;,
    &amp;quot;watch-player__background-logo&amp;quot;
  ];

  // クラスごとにループして要素を非表示にする
  classListToHide.forEach(function(className) {
    var elements = document.getElementsByClassName(className);
    for (var i = 0; i &amp;lt; elements.length; i++) {
      elements[i].style.display = &amp;quot;none&amp;quot;;
    }
  });

  var className = &amp;quot;watch-player__background--display&amp;quot;;
  var elements = document.getElementsByClassName(className);

  if (elements.length &amp;gt; 0) {
    var element = elements[0];
    element.style.position = &amp;quot;relative&amp;quot;;
    element.style.overflow = &amp;quot;hidden&amp;quot;;  // オーバーフローを隠す

    // 新しいビデオ要素を作成
    var video = document.createElement(&amp;quot;video&amp;quot;);
    video.autoplay = true;
    video.muted = true;  // 音声をミュート（別にオーディオミキサー経由で取り込んだ方がよい）
    video.style.position = &amp;quot;absolute&amp;quot;;
    video.style.top = &amp;quot;50%&amp;quot;;
    video.style.left = &amp;quot;50%&amp;quot;;
    video.style.transform = &amp;quot;translate(-50%, -50%)&amp;quot;;
    video.style.width = &amp;quot;100%&amp;quot;;
    video.style.height = &amp;quot;100%&amp;quot;;
    video.style.objectFit = &amp;quot;cover&amp;quot;;  // アスペクト比を維持しつつ親に収める
    video.style.zIndex = &amp;quot;-1&amp;quot;;  // divの後ろに配置

    // 明るさを調整するCSSフィルターを追加
    video.style.filter = &amp;quot;brightness(0.85)&amp;quot;;  // コメントが見やすいように若干明るさを落とす調整（1が標準）

    // div要素の背景を透明に
    element.style.background = &amp;quot;transparent&amp;quot;;

    // 要素をDOMに追加
    element.appendChild(video);

    // ウェブカメラのストリームを開始（解像度指定）画質優先でフルHDで取り込む
    var constraints = {
      video: {
        width: { ideal: 1920 },  // 取り込むビデオの幅
        height: { ideal: 1080 },  // 取り込むビデオの高さ
        aspectRatio: 16/9        // アスペクト比
      },
//      audio: true  // オーディオ取得（ブラウザ経由ではなくオーディオミキサー経由で取り込んだ方がよい）
    };

    navigator.mediaDevices.getUserMedia(constraints)
      .then(function(stream) {
        video.srcObject = stream;
      })
      .catch(function(error) {
        console.error(&amp;quot;Error accessing webcam: &amp;quot;, error);
      });
  } else {
    alert(&amp;quot;Element with class name '&amp;quot; + className + &amp;quot;' not found.&amp;quot;);
  }
})();&lt;/pre&gt;</content:encoded>
  </item>
  <item rdf:about="https://let.hatelabo.jp/gunnyori/let/kcqc0eCygcAA">
    <link>https://let.hatelabo.jp/gunnyori/let/kcqc0eCygcAA</link>
    <dc:date>2024-09-13T14:48:55Z</dc:date>
    <description>実況避難所NX-Jikkyoのナビゲーショバーとチャンネル切替ボタンの表示/非表示を切り替えます</description>
    <dc:creator>gunnyori</dc:creator>
    <title>[Let] NX-Jikkyoナビゲーション表示切替</title>
    <content:encoded>&lt;a href="javascript:%22https%3A%2F%2Flet.st-hatelabo.com%2Fgunnyori%2Flet%2Fkcqc0eCygcAA.bookmarklet.js%20%28arg%29%22.replace%28%2F%28%5CS%2B%29%5Cs%2B%28%5CS%2A%29%2F%2Cfunction%28s%2Curl%2Carg%29%7Bs%3Ddocument.createElement%28%22script%22%29%3Bs.charset%3D%22utf-8%22%3Bs.src%3Durl%2B%22%3Fs%3D%22%2BencodeURIComponent%28arg%29%3Bdocument.body.appendChild%28s%29%7D%29%3Bvoid%280%29%3B"&gt;NX-Jikkyoナビゲーション表示切替&lt;/a&gt;&lt;pre&gt;/*
 * @title NX-Jikkyoナビゲーション表示切替
 * @description 実況避難所NX-Jikkyoのナビゲーショバーとチャンネル切替ボタンの表示/非表示を切り替えます
 * @include https://nx-jikkyo.tsukumijima.net/*
 * @license MIT License
 */

javascript:(function() {
  var toggleDisplay = function(className) {
    var elements = document.getElementsByClassName(className);
    for (var i = 0; i &amp;lt; elements.length; i++) {
      if (elements[i].style.display === &amp;quot;none&amp;quot;) {
        elements[i].style.display = &amp;quot;&amp;quot;;
      } else {
        elements[i].style.display = &amp;quot;none&amp;quot;;
      }
    }
  };
  toggleDisplay('watch-navigation');
  toggleDisplay('watch-player__button');
})();
&lt;/pre&gt;</content:encoded>
  </item>
</rdf:RDF>
