2014年2月4日火曜日

[TeX] ファイル内の句読点をカンマとピリオドに一括変換



論文内の句読点をカンマとピリオドに変換する際にテキストエディタの置換機能を使ってもいいのですが、章ごとにファイルが分かれていて面倒だったので、シェルで一括置換をするコマンドを書きました。

以下のコマンドを.texファイルのあるディレクトリで実行するだけ。

for file in *.tex; do sed -i "-bak" -e "s/、/,/g" -e "s/。/./g" $file; done


元のファイルは、ファイル名.tex-bak としてバックアップされるので安心です。

2014年2月3日月曜日

[UserScript] NoPicAdsの導入方法

海外サイト等でよく見かける広告ページを、自動でスキップしてくれるスクリプト NoPicAds の導入方法を紹介します。

FireFoxの場合




1.GreasemonkeyをFireFoxに追加
Greasemonkey のページから、+FireFoxへ追加 を押すとインストールされます。
Greasemonkeyを有効にするため、FireFoxを再起動します。



2.NoPicAdsを導入
NoPicAds のページ右上のInstallをクリックするとインストールされます。





導入は以上で完了です。
Adf.ly や Linkbucks 等の広告ページにアクセスして、自動で広告ページをスキップできることを確認してみてください(上記のリンクからはこのブロクにリダイレクトされます)。


Google Chromeの場合




1.TampermonkeyをChromeに追加

GreasemonkeyのスクリプトをChromeで実行するツール、TampermonkeyをChromeにインストールします。

Tampermonkey のページから、右上のボタンをクリックするとインストールされます。



2.NoPicAdsを導入
NoPicAds のページ右上のInstallをクリックするとインストールされます。



いきなりスクリプトが表示されるのでビビリますが、OKをクリックしてインストールを完了します。




同様に、Adf.ly や Linkbucks 等の広告ページにアクセスして、自動で広告ページをスキップできることを確認してみてください。

2014年2月2日日曜日

[UserScript] Ads SkipperがLinkbucksでうまく動かない時の代替手段



海外サイトなんかを閲覧していると、目的のページの前に広告ページに飛ばされることがあります。

そんな広告ページを自動でスキップしてくれる便利なスクリプト Ads Skipper ですが、最近は更新が滞っているため、つい先日の広告サイトのLinkbucksが仕様変更にはまだ対応していません。

そんなわけで、対処法を2つ紹介します。

その1:NoPicAds に乗り換える


手っ取り早いのは Ads Skipper から NoPicAds に乗り換えてしまう方法です。

NoPicAds は現在も頻繁に更新が行われており、Linkbucksの仕様変更にも数日で対応しています。対応しているサイトも358個(2014年2月3日現在)と、Ads Skipperに劣りません。今後も広告サイトの仕様変更が生じることを考えると、より更新頻度の高いスクリプトに乗り換えるのが賢明かと思われます。

導入方法を紹介した記事を書きました。 [UserScript] NoPicAdsの導入方法

その2:スクリプトを手動で書き換える


Ads Skipperのフォーラムで、親切な方が仕様変更に対応したスクリプトを公開してくれています。Ads Skipper のスクリプトの該当部分を修正することで、従来通り動作するようになります。

修正方法は以下の通り。

FireFox で Greasemonkey を使っている場合は、
アドオン > ユーザスクリプト > Ads Skipper > 設定 > このユーザスクリプトを編集 から、

Chromeで Tampermonkey を使っている場合は、
Tampermonkeyのメニュー > ダッシュボード > Ads Skipper もしくは、
拡張機能 > Tampermonkeyのメニュー > インストール済みUserScript > Ads Skipper から、

以下の部分をAds Skipperのフォーラムで公開されているコードに書き換えることで修正できます。

bucks: {
            host: ["linkbucks.com",  ...
            ... 中略 ...
        },