求一款随机出现词库里面词语的Mac端或iOS端软件。

最近看采铜大大的书,
里面提到一个给生活增加随机性的事情挺感兴趣。
我也想给自己增加一些灵感随机性,
便求助一款软件,
要求是可以自己往里面添加词语,
或者有自带的比较完善的词库,
然后每次打开的时候都会随机出现里面的词。
注意一定要是随机。
市面上大多卡片类app,
要么都是给出各种整理方法,
要么是依托遗忘曲线给出的记忆背诵,
不是我想要的随机
最好可以是Mac端或iOS端。

这个和 https://meta.appinn.com/t/topic/2721/4 还真像…

弄个简单的 Word.html,放硬盘或者网盘里,然后用safari打开

<!DOCTYPE HTML>
<html>
  <body>
    <script>
      var words = ["A","B","C","D","E","F","G"];
      document.write(words[Math.floor(Math.random() * words.length)]);
    </script>
  </body>
</html>

页面效果自行美化吧

Bookmarklet版(存为浏览器书签使用)

javascript:(function(words){alert(words[Math.floor(Math.random() * words.length)]);})(document.getElementsByTagName('pre')[0].innerHTML.split(/\s+/));

使用:
拖放words.txt到浏览器(或存为书签,书签打开)→点Bookmarklet
不能通过Bookmarklet打开txt,忘记浏览器的安全限制了:sweat:

words.txt支持多行文本,以空格键分割词汇

1 Like

老大厉害……不知能不能改写一下,
把输入的东西从一个外部文档读入进来?
比如一个 txt 文件里面,
每次都从这个 txt 文件里面调用,
我只需修改这个 txt 文档即可,
不用每次都编辑 HTML 了。

在不搭服务器的前提下搞本地网页访问本地文本挺麻烦的,
尤其是要兼顾不同平台。。。

不如将网页里的数组改为文本段,
要修改时用普通的文本编辑器修改文本段那一块就行了
词之间用空格隔开(第三方词库批量替换分隔符就能用了)
不必再像之前那个一样得逐个敲引号逗号弄成数组

<!DOCTYPE HTML>
<html>
  <body>
    <script>
      var text = function(){/*
=====================text start=====================
1 2 3
a b c
我 你 他
=====================text end=======================
*/};
      var words = text.toString().split("\n").slice(2,-2).join(' ').split(/\s+/);
      document.write(words[Math.floor(Math.random() * words.length)]);
    </script>
  </body>
</html>

刚想到两个别的实现方法(限PC):

A. Bookmarklet (第一次点击打开本地txt,第二次点击从当前txt页面中随机选词)

B. 书签(本地txt地址) + Userscript (点书签打开txt,对应Userscript生效随机选词)

具体实现看明晚还有木有心思折腾吧。。。

1 Like

效果非常好,谢谢老大:-D