Skip to content

Instantly share code, notes, and snippets.

@maimainoue
maimainoue / test.user.js
Created August 26, 2015 20:34
goo mail ヘッダ部分削除2
// メアドの行を削除
var skin_spacing_app_row = document.evaluate('//td[@id=\'skin_spacing_app_row\']'
, document.body, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
if( skin_spacing_app_row != null ) {
skin_spacing_app_row.parentNode.removeChild(skin_spacing_app_row);
}
// DwtCalendar
var skin_tr_tree_footer = document.evaluate('//tr[@id=\'skin_tr_tree_footer\']'
, document.body, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
@maimainoue
maimainoue / delGoomailHead.user.js
Created August 17, 2015 19:52
goo mail ヘッダ部分削除
// ==UserScript==
// @name goo mail ヘッダ部分削除
// @namespace GOO_MAIL
// @include *://mail.goo.jp/*
// @version 1
// @grant none
// ==/UserScript==
var wppb = document.evaluate('//td[@id=\'skin_spacing_top_row\']'
, document.body, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue;
@maimainoue
maimainoue / addFlacCue.js
Created August 16, 2015 19:38
Cue埋め込み
Utils.addFlacCueBin = function(flacFileName,cueFileName,cb) {
var command = 'metaflac.exe --set-tag-from-file="CUESHEET='+cueFileName+'" '+flacFileName;
exec(command,function(err,stdout,stderr){
if (err) cb(err);
//console.log(stdout);
cb(err);
});
}
@maimainoue
maimainoue / makeCue.js
Last active August 29, 2015 14:27
Cue作成
Cue.makeCue = function(di) {
var cueFile = '';
// ""で囲う
escapeStr = function(str) {
if( str.match('"') ) {
return str;
} else {
return '"'+str+'"';
}
@maimainoue
maimainoue / readCue.js
Created August 16, 2015 19:34
Cueファイル読み込み
// Cueファイル読み込み
Cue.readCue = function(param,cb) {
var strText;
var self = this;
var data;
var trackMode = false;
var tmpTrackNo=0;
var indexNo;
@maimainoue
maimainoue / gn_toc.js
Created August 16, 2015 19:20
Gracenote 用のTOC生成
// Gracenote Toc
MEDIATOOLS.generateGracenoteToc = function(di) {
var pregap = 150;
// TOC情報作成
var tocStr = (di.track[0].start + pregap) + ' ';
for(var idx=0;idx<di.trackCount;idx++){
tocStr += (di.track[idx].start + di.track[idx].len + pregap) + ' ';
}
//console.log(tocStr);
@maimainoue
maimainoue / mediatools.js
Last active August 29, 2015 14:27
mediatoolsから toc 読み取り
MEDIATOOLS.readMediaTools = function(drive,cb) {
var command = 'mediatools.exe drive '+drive+' toc upc isrc';
exec(command,function(err,stdout,stderr){
//if (!err) throw err; // mediatoolsは成功時にerrorcodeを返す?
if( stdout.match( /Unable to retrieve TOC/ ) ) {
throw err;
}
@maimainoue
maimainoue / eject.js
Created August 16, 2015 02:11
イジェクト
// (☝ ՞ਊ ՞)☝ウイーン
// node.js を使ってると良く CD-ROM を取り出したくなりますよね。
// ならないとしたら、今すぐこの記事を読むのをやめて病院に行って下さい。
var win32ole = require('win32ole');
var wmp = win32ole.client.Dispatch('WMPlayer.OCX');
wmp.cdromcollection.getByDriveSpecifier(inDriveLetter.charAt(0)).eject();
@maimainoue
maimainoue / rip.js
Created August 16, 2015 02:04
リッピング実行
// リッピング実行
Utils.ripExec = function(param,cb) {
var cuetooldir = 'e:/cuetoolsnet-code/bin/Release/'
var cuetoolcmd = 'CUETools.ConsoleRipper.exe';
// リッピング
var command = cuetooldir+cuetoolcmd+' -D '+param.drive+' -FN '+param.baseName;
var opt = {
maxBuffer: 1024*1024*64
, cwd: param.baseDir
@maimainoue
maimainoue / enc.js
Last active August 29, 2015 14:27
エンコード実行
// エンコード実行
Utils.encExec = function(param,cb) {
var enctooldir = 'e:/cuetoolsnet-code/bin/Release/'
var enctoolcmd1 = 'CUETools.FLACCL.cmd.exe';
var enctoolcmd2 = 'CUETools.Converter.exe';
var command = "";
// リッピング
var opt = {
maxBuffer: 1024*1024*64