1300

移行用のテストです

やまぶきでphoenixかな配列を設定

簡単なyabファイルの元を置いておきます。自分では使おうと思いませんが、やまぶきでphoenixかな配列を試したいという方はどうぞ。yamabuki4.16.1で動作確認しています。

[シフト無し]
1,2,3,4,5,6,7,8,9,0,-,^,¥
無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,無,無,無,無,無,無

<q>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,ヴ,ゐ,わ,を,ゑ,無,無
無,無,無,無,無,無,無,無,無,無,無

<w>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,ゅ,無,ゃ,ょ,無,無,無
無,無,無,無,無,ゆ,、,や,よ,。,無,無
無,無,無,無,無,無,無,無,無,無,無

<e>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,無,無,っ,無,無,無,無
無,無,無,無,無,る,り,ら,ろ,れ,無,無
無,無,無,無,無,無,無,無,無,無,無

<r>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,ぶ,び,ば,ぼ,べ,無,無
無,無,無,無,無,ふ,ひ,は,ほ,へ,無,無
無,無,無,無,無,無,無,無,無,無,無

<t>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,ぷ,ぴ,ぱ,ぽ,ぺ,無,無
無,無,無,無,無,む,み,ま,も,め,無,無
無,無,無,無,無,無,無,無,無,無,無

<a>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,ず,じ,ざ,ぞ,ぜ,無,無
無,無,無,無,無,す,し,さ,そ,せ,無,無
無,無,無,無,無,無,無,無,無,無,無

<s>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,無,ー,ん,・,無,無,無
無,無,無,無,無,ぬ,に,な,の,ね,無,無
無,無,無,無,無,無,無,無,無,無,無

<d>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,ぅ,ぃ,ぁ,ぉ,ぇ,無,無
無,無,無,無,無,う,い,あ,お,え,無,無
無,無,無,無,無,無,無,無,無,無,無

<f>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,ぐ,ぎ,が,ご,げ,無,無
無,無,無,無,無,く,き,か,こ,け,無,無
無,無,無,無,無,無,無,無,無,無,無

<g>
無,無,無,無,無,無,無,無,無,無,無,無,無
無,無,無,無,無,づ,ぢ,だ,ど,で,無,無
無,無,無,無,無,つ,ち,た,と,て,無,無
無,無,無,無,無,無,無,無,無,無,無

NAVERまとめで#回避

// ==UserScript==
// @name         naver_sharp_avoid
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://matome.naver.jp/*
// @grant        none
// ==/UserScript==
var result = document.evaluate('//div[contains(@class,"MdPagination0")]', document, null, 7, null);
result.snapshotItem(0).addEventListener('mouseover', function () {
  var result2 = document.evaluate('//link[@rel="canonical"]', document, null, 7, null);
  var result3 = document.evaluate('//div[contains(@class,"MdPagination0")]/a', document, null, 7, null);
  for (var i = 0; i < result3.snapshotLength; i++) {
    result3.snapshotItem(i).href = result2.snapshotItem(0).href + "?page=" + result3.snapshotItem(i).childNodes[0].nodeValue;
  }
});

西野ブログgamp版

このスクリプトは実験的なスクリプトです。デザイン上必要な改行やテキストなどが消える場合がありますのでご注意ください
let.hatelabo.jp

article{padding:0 !important;}
article+div{display:none;}
article+div+div{padding:0 !important;}
article>div:first-child{margin:0;}
.entry-header__title{margin:0;}
.entry amp-img[src*="/user_images/"][layout="responsive"]{margin:0;}
.i-amphtml-loader-dot{display:none;}

.div_br+.div_br{display:none;}
.node_last+.div_br{display:none;}
.node_last~.tb_cell+.div_br{display:none;}
.div_br.tomeo{display:block !important;}
.div_br,.l_yoko{line-height:1;}
.tb_cell {
  display: flex;
  align-items: flex-end;
}
a.i_pic{display:block;}
.i_pic+.tb_cell,.tb_cell+.i_pic{margin-top:1em;}
.i_pic+.i_pic,.tb_cell+.tb_cell{margin-top:1em;}
.sun.div_br,.l_yoko+.div_br{display:none;}

西野ブログ限定版

このスクリプトは実験的なスクリプトです。デザイン上必要な改行やテキストなどが消える場合がありますのでご注意ください
let.hatelabo.jp
let.hatelabo.jp
http://scratchpad.io/panicky-level-4178

.skin-entryBody{margin:0;}
.skin-entryBody * {
  margin: 0 !important;
  font-size: 1em !important;
  font-weight: normal;
}

.js-blogGenreRank{display:none;}
.skin-entryHead{margin:0;}
.skin-entryThemes{margin:0;}
.hashtag-module-wrapper{display:none;}

.skin-blogMainInner{padding:0 !important;}
.LazyLoad{display:none;}
.skin-message{margin:0;padding:0;}
.skin-message a{pointer-events:none;}
.skin-message img{width:auto;}

.skin-entryBody i{font-style:normal;}
.skin-entryBody font[color]{color:#333;}
.div_br,.l_yoko,.node_last.e{line-height:1;}
.div_br+.div_br{display:none;}
.node_last+.div_br{display:none;}
.i_pic+.i_pic{margin-top:1em !important;}
.sun.div_br,.l_yoko+.div_br{display:none;}
.i_pad{display:none;}
.i_pad+.div_br,a.i_pic{display:block;}
.node_last~.i_pad+.div_br{display:none;}
.l_tate {
  font-size: 1.17em !important;
  line-height: 1;
}
.solo{line-height:1;}

a[href^="https://salon.otogimachi.jp"] {
  pointer-events: none;
  text-decoration: none;
  color: #333333;
}

SPOTで表示を軽く?する

// ==UserScript==
// @name         spot_light_load
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://travel.spot-app.jp/*
// @grant        none
// @require      http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js
// ==/UserScript==
$(".item_description>p").contents().filter(function () {
    return this.nodeType === 3;
  }).wrap("<a class='title_link'></a>");
var result = document.evaluate('//h3[@class="item_title"]/a', document, null, 7, null);
var result2 = document.evaluate('//a[@class="title_link"]', document, null, 7, null);
for (var i = 0; i < result.snapshotLength; i++) {
    result2.snapshotItem(i).href=result.snapshotItem(i).href;
}

var listArray = document.querySelectorAll('.entry_main *[style]');
for (var j = 0; j < listArray.length; j++) {
  listArray[j].removeAttribute("style");
}
.item_title a{pointer-events:none;}
.autopagerize_page_separator~.content_item .item_title a{pointer-events:auto;}

画像のみ表示時に連番画像を生成

let.hatelabo.jp

// ==UserScript==
// @name        renban_load_zero
// @namespace   http://d.hatena.ne.jp/jigendaddy/
// @include     *.jpg
// @include     *.png
// @version     1
// @grant       none
// ==/UserScript==
if (/\d/g.test(location.href)) {
  if (window.confirm("連番画像を生成します。連番前にゼロの付加を行いますか?")) {
    var keta = window.prompt("付加するゼロも含めて何桁の連番を生成しますか?\n半角英数で入力してください");
  }
  if (keta > 0) {
    var b_url = window.prompt("連番以外の文字列と連番の範囲を入力してください。\n付加するゼロは入力しないでください\nex.http://test/[1-10].jpg", location.href);
  } else {
    b_url = window.prompt("連番以外の文字列と連番の範囲を入力してください。\nex.http://test/[1-9].jpg", location.href);
  }
  var str1 = b_url.split("[");
  var m_str = str1[0];
  var str2 = str1[1].split("]");
  //m_strは連番前の文字列、str2[0]は連番、str2[1]は連番後の文字列
  var str3 = str2[0].split("-");
  var r_start = str3[0];
  var r_end = str3[1];
  document.body.innerHTML = '';
  var links = '';
  if (keta > 0) {
    while (r_start <= r_end) {
      var tmp = String(r_start);
      links += '<img src="' + m_str + tmp.padStart(keta, "0") + str2[1] + '" style="position:relative">';
      r_start++;
    }
  } else {
    while (r_start <= r_end) {
      links += '<img src="' + m_str + r_start + str2[1] + '" style="position:relative">';
      r_start++;
    }
  }
  var area = document.createElement('div');
  area.style.display = 'block';
  area.style.position = 'absolute';
  area.style.top = 0;
  area.style.left = 0;
  area.style.textAlign = 'left';
  area.innerHTML = links;
  document.body.appendChild(area);
  document.body.style.display = 'block';
}

Twitterで登録したモーメントを一覧リストで表示

let.hatelabo.jp

// ==UserScript==
// @name         twitter_moment_list
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       You
// @match        https://twitter.com/i/moments/*
// @grant        none
// @require      http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js
// ==/UserScript==
var result = document.evaluate('//div[@class="MomentDropdownMenu dropdown"]', document, null, 7, null);
result.snapshotItem(0).insertAdjacentHTML('afterend', '<input type="button" value="登録" id="regist3">');
var result2 = document.evaluate('id("regist3")', document, null, 7, null);
result2.snapshotItem(0).addEventListener('click', sample, false);

function sample() {
  var result3 = document.evaluate('//link[@rel="canonical"]', document, null, 7, null);
  var result4 = document.evaluate('//meta[@name="twitter:text:title"]', document, null, 7, null);
  var result5 = document.evaluate('//meta[@name="twitter:user:author:screen_name"]', document, null, 7, null);
  var n_str = result3.snapshotItem(0).href + "/";
  var n_arr = n_str.split("/");
  var n_mom = n_arr[5];
  for (var i = 0; i < 128; i++) {
    if (!('mom' + (i + 1) in localStorage)) {
      if (i == 127) {
        alert("保存できるモーメントの数は128までに制限しています。\nローカルストレージから登録したキーを削除してください");
        break;
      }
      var cb = list_check(i + 1, n_mom);
      if (cb != 1) {
        localStorage.setItem('mom' + (i + 1), n_mom);
        localStorage.setItem('title' + (i + 1), result4.snapshotItem(0).content);
        localStorage.setItem('author' + (i + 1), result5.snapshotItem(0).content);
        alert("登録しました");
        break;
      } else {
        break;
      }
    }
  }
  //重複チェック
  function list_check(lp, n_name) {
    var flag = 0;
    for (var i = 0; i < lp; i++) {
      if (localStorage.getItem('mom' + (i + 1)) == n_name) {
        alert("このページは既に登録されています");
        flag = 1;
        break;
      }
    }
    return flag;
  }
}
//リスト表示処理
result2.snapshotItem(0).insertAdjacentHTML('afterend', '<input type="button" value="リスト" id="list3">');
var result6 = document.evaluate('id("list3")', document, null, 7, null);
result6.snapshotItem(0).addEventListener('click', sample2, false);

function sample2() {
  localStorage.setItem("n_url", location.href);
  history.pushState(null, null, "/koko_nanimo_naidesuyo5");
  document.body.innerHTML = "<ol type=1></ol>";
  var result7 = document.evaluate('//ol', document, null, 7, null);
  for (var i = 0; i < 128; i++) {
    if ('mom' + (i + 1) in localStorage) {
      result7.snapshotItem(0).insertAdjacentHTML('beforeend', '<li class=line' + (i + 1) + '><img src=https://twitter.com/' + localStorage.getItem('author' + (i + 1)) + '/profile_image?size=mini><a href=https://twitter.com/' + localStorage.getItem('author' + (i + 1)) + '>@' + localStorage.getItem('author' + (i + 1)) + '</a><div><a href=https://twitter.com/i/moments/' + localStorage.getItem('mom' + (i + 1)) + '>' + localStorage.getItem('title' + (i + 1)) + '</a></div></li>');
    } else {
      document.body.insertAdjacentHTML('beforeend', '<input type=button id=remove value=削除>');
      break;
    }
  }
  var listArray = document.querySelectorAll('li+li');
  for (var a = 0; a < listArray.length; a++) {
    listArray[a].style.marginTop = "1em";
  }
  $(function () {
    $('#remove').click(function () {
      var j = window.prompt("何番目のモーメントを削除しますか?\n半角英数で入力してください。\n入力例は1番から3番を消す場合です", "1-3");
      if (/\-/g.test(j)) {
        var j_sp = j.split("-");
        var j_begin = j_sp[0];
        var j_end = j_sp[1];
        while (j_begin <= j_end) {
          $('.line' + j_begin).css({
            "display": "none"
          });
          j_begin++;
        }
      } else {
        $('.line' + j).css({
          "display": "none"
        });
      }
    }, );
  });
  window.addEventListener('popstate', function (event) {
    location.href = localStorage.getItem("n_url");
  });
}