⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 10 - making your keyboard lights blink.rb

📁 O Reilly Ruby Cookbook source code
💻 RB
字号:
require 'rubygems'require 'blinkenlights'# Turn individual lights on or off.BlinkenLights.open do |lights|  lights.left = true  lights.middle = true  lights.right = true  lights.scr = false  lights.cap = false  lights.num = falseend# Display a light show.BlinkenLights.open do |lights|   lights.left_to_right  10.times { lights.random }  lights.right_to_leftend#---# Display the binary number 6 (that is, 110):BlinkenLights.new.set(6)#---#!/usr/bin/ruby -w# blink_morse.rbrequire 'rubygems'require 'blinkenlights'class String  # Morse code representations for 0-9 and A-Z.  MORSE_TABLE = %w{01111 00111 00011 00001 00000 10000 11000 11100 11110 11111                   01 1000 1010 100 0 0010 110 0000 00 0111 101 0100 11                    10 111 0110 1101 010 000 1 001 0001 011 1001 1011 1100}  def to_morse(dit_time = 0.3)    a = "A"[0]    zero = "0"[0]    words = upcase.gsub(/[^A-Z0-9\s]/, "").split    BlinkenLights.open do |lights|      words.each do |word|        word.each_byte do |letter|           code = MORSE_TABLE[letter - (letter < a ? zero : a-10)]          code.each_byte do |signal|            lights.flash(dit_time * (signal == zero ? 1 : 3))            sleep(dit_time)         # Space between parts of a letter.          end          sleep(dit_time * 3)       # Space between letters.        end        sleep(dit_time * 5)         # Space between words.      end    end  endendARGV.shift.to_s.to_morse if $0 == __FILE__#---

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -