19 Jan 2014, 11:47

省エネ時代の軽快ターミナル!rxvt-unicode(urxvt)でサクサクターミナル生活

軽量なターミナルである、rxvt-unicodeを試してみました

urxvtとは

rxvt-unicode(urxvt)とは、軽量なターミナル。

  • Unicode対応
  • 設定ファイルによって、自由にカスタマイズ可能
  • クラッシュしらず
  • 小メモリ、爆速の軽快さ。

などなどの特徴がある。軽量なためxmonadとの相性がよいと、xmonadのサイトで紹介されていたため、ターミナルを乗りかえてみた。

以下でインストール。

sudo apt-get install rxvt-unicode-256color

カスタマイズ

カスタマイズは、~/.Xdefaultsに設定を記入することで実施する。環境は、Linux Mint.

以下のサイトのXdefaultが大変参考になりました。ありがとうございます。

フォントの設定

Rictyを設定。アンチエイリアスも有効に設定。

URxvt.allow_bold:           false
URxvt*font: xft:Ricty:size=12:antialias=true

背景を透過にする

背景に画像を設定して、ターミナルは半透明にすることにする。以下を参考にした。

以下を追記。

urxvt*shading: 80
URxvt*inheritPixmap: true

色テーマをmolokaiにする

色テーマを鮮やかなmolokaiにする。ここを参照。

.Xdefaults結果

余計なツールバーもないし、軽いし、カスタマイズ自由、なかなかいい感じ。

参考

15 Jan 2014, 12:58

GTDの規律に従い生産性Up!!3分後にデスクトップ通知と音を鳴らすワンラインスクリプト(Linux)

GTDの規律には、3分以内に片付くタスクはその場で処理して、3分以上かかるものはとりあえずInboxにつっこむというものがある。

コマンドラインからストップウォッチを3分だけ起動したいと思い、そのような方法を考えました。

environment

  • Linux Mint 16

sleep を利用

あまり考えない方法だと、sleepコマンドで時間を止めて、指定時間たつとコマンドを実行するというもの。

$ sleep 3 && echo test

echoだと気づかないので、できれば音やデスクトップ通知が欲しいところだ

cvlcを利用して音を出す

VLCプレーヤーのコマンドラインを利用して音を鳴らす。–play-and-exitで一回だけ再生。

$ cvlc --play-and-exit /usr/share/sounds/LinuxMint/stereo/desktop-login.ogg

notify-sendでデスクトップ通知

Linuxでは、send-notifyでデスクトップ通知ができる。

インストール

notify-sendは libnotify-binに含まれている。

$ sudo apt-get install libnotify-bin

以下で実行して、通知か表示されるか確認

$ notify-send test

notification-daemonのインストール

Gnome terminalからコマンドを実行すると動作するが、Guakeターミナルから実行すると、動作しない。

原因は欲分からないが、notification-daemonというものをインストールすると、Guakeからも動作するようになった。

$ sudo apt-get install notification-daemon

デーモンを起動する。

$ /usr/lib/notification-daemon/notification-daemon &

これで通知がでるようになった。時間指定のオプション -t が動作しないのが気になるが。。。

起動時にデーモン起動

notify-osdからnotification-daemonに切り替える | smokycat.infoを参考に、起動時にデーモンを起動するようにしてみる。

$ sudo emacs /usr/share/dbus-1/services/org.freedesktop.Notifications.service

3行目をコメントアウトして、4行目を追加。どうも、デフォルトでは notify-osdが起動していたようだ。notify-osdだと動かなかったと推測

[D-BUS Service] 
Name=org.freedesktop.Notifications
#Exec=/usr/lib/x86_64-linux-gnu/notify-osd
Exec=/usr/lib/notification-daemon/notification-daemon

タイマを改良

コマンドラインから利用できるカウントダウンタイマを探してみた。。結構時間をかけて探したけれども、結論としては、このツールがよい。

コマンドラインからカウントダウンやストップウォッチが起動できる。こんなツールを探していた!ダウンロードしてインストール。

$ ./configure
$ make && make install

たとえば、こんな感じ。

# 3sec countdowwn
% utimer -c 3
Time Remaining: 0 days 00:00:00.000 (0.000 seconds)

結論

このワンラインスクリプトに決定

/bin/sh -c 'sleep 180;notify-send "time over";cvlc --play-and-exit /usr/share/sounds/LinuxMint/stereo/desktop-login.ogg' &

14 Jan 2014, 15:47

月夜に輝く滴の如き美しさ!黒背景とカラフルなEclipseプラグイン Moonrise UI Themeに一目惚れ

Eclipse Moonrise UI ThemeいうEclipseを黒背景にするプラグインに惚れ惚れしたので紹介します。

Environment

  • Eclipse 4.3 Kepler

インストール

Eclipseマーケットプレースからインストールする。

ヘルプ > Eclipseマーケットプレースを選択する。検索窓から以下を検索してインストール。

  • Eclipse Moonrise UI Theme
  • Eclipse 4 Chrome Theme

Moonrise UI Themeが今回紹介するメインプラグイン、Chrome Themeは Moon Themeを綺麗に表示するためのプラグイン(Option)

設定

テーマの設定

ツールバーの ウィンドウ > 設定 > 一般 > 外観を選択。

  • Moonrise(Standalone)
  • Moonrise

の2種類がある。Chrome Themeを入れている場合は、Moonriseを選択。

色テーマの設定(Rainbow Drops)

エディタ部分のデザインもムーンライトにふさわしい高貴なものに変更にします。

オススメされているのが、Rainbow Dropsというテーマ。以下から Eclipse Color Theme (XML)を選択してダウンロード。

ツールバーの ウィンドウ > 設定 > 一般 > 外観 > 色テーマを開き、インボートを選択。さっきダウンロードしたテーマを選択する。すると、選択欄に Rainbow Dropsが現れるので、選択し、適用。

調整

コンテンツアシストの色を変更します。

ツールバーの ウィンドウ > 設定 > 一般 > 外観 > 色とフォントを選択。基本の配下にある以下の2つの色を変更。

  • コンテンツアシスト前景色: #DDDDDD
  • コンテンツアシスト背景色: #333333

コンソールの色を変更します。ツールバーの ウィンドウ > 設定 > 実行とデバッグ > コンソールを選択。以下の2つの色を変更。

  • 標準出力のテキストの色: #DDDDDD
  • 背景色 : #333333

導入結果

Elegant!!

感想

以前、黒背景にするための プラグイン Eclipse Juno Darkを紹介しました。

Juno Darkはやや淡さと暗さがあり、Moonriseは色のコントラストが強く明るいです。

個人的には、Moonriseの方が好きだ!

ああ、Moonrise…あなたは月夜に輝く滴の如く、美しい。

13 Jan 2014, 05:39

tmux環境作成の自動化!PCの再起動をまたいでSessionを保存/復元を実現する方法

tmuxをノートPCに入れてみたけれども、ノートPCをOff/Onするたびにtmux環境を初めから作り直すのは面倒だ。

面倒なことは自動化しよう!ということで、tmux環境を自動作成するツールを調べました。

Environment

  • Linux Mint 16

tmuxinator

tmuxinatorを利用すると、自動でtmux環境を構築できる。

aziz/tmuxinator

Install

gem install tmuxinator

この設定が必要みたい。.tmux.confに設定してあるか確認。

set-window-option -g pane-base-index 1

SHELLとEDITORの2つの環境変数が設定されているか確認。

% printenv SHELL
/usr/bin/zsh
% printenv EDITOR
emacsclient -nw

起動スクリプトにも記述が必要。以下を追記。

source ~/.bin/tmuxinator.zsh

binから、mux,tmuxinatorをダウンロードして、パスの通った場所におく。

% wget https://raw2.github.com/aziz/tmuxinator/master/bin/tmuxinator
% mv tmuxinator /usr/local/bin

Usage

設定ファイルを作成.

% tmuxinator new default

エディタが開き、設定ファイルが作成されるので、これをカスタマイズする。保存したら、以下で保存した設定を起動。

% tmuxinator default

tmux-session

tmuxinatorの弱点は、自分で設定ファイルをかかないといけないところ。それは、面倒だ。

面倒なので、もうすこしツールを探してみると、tmux-sessionというシェルスクリプトを発見!

使い方は、とても簡単。saveで現在の状態を保存して、restoreで復元する。

% tmux-session save
% tmux-session restore

状態は一つしか保存できないよう。また、画面分割も保存はできない。tmuxinatorならば、できる。

または、同様なスクリプトとして、こんなのもある。これは、複数セッション保存可能。

結論

tmuxの状態保存は、tmux-sessionがよい。save/restoreの簡易なところが、よい。

13 Jan 2014, 05:19

Beautiful Colorful Terminal – Emacsターミナル環境をカラフルに彩る

外見大事! 美しいとテンションが上がって作業効率も向上する。

Emacsターミナル環境をカラフルに改造したので、導入したツールを晒します。

Environment

  • Linux Mint 16
  • Emacs 24

Guake

まずは、ターミナルから。デフォルトのGnome端末でも機能としては十分だが、デフォルトツールというところが気にくわないので、デフォルトでない一番人気をさがしたところ、Guakeを入れることにした。

sudo apt-get install guake

Guakeの利点は、画面のサイズが気軽に切り替えられるところ。上からにょきっと現れる操作感がよい。

  • F12で全画面表示
  • ショートカットで半画面表示

暗めの幻想的な背景を探して設定した。

F12を押したときに端末にフォーカスできないバグがあるらしいので、手動で修正。

Ricty

美しいフォントRictyを設定。

tmux-powerline

tmuxのモードラインをカラフルに彩るツール、tmux-powerlineを導入しました。

導入は、READMEに従って作業。カスタマイズはこれから。

Referenced

カラーテーマ

Emacs Color Theme

カラーテーマを変更。Emacsのカラーテーマを変更するには、そもそも Emacs Color Themeを導入する必要があるので、これを導入。

gnuemacscolorthemetest – GNU Emacs Color Theme Test – Google Project Hostingからダウンロードしてきて、ロードパスの通った場所におく。

init.elに以下を追加した。

(require 'color-theme)
(color-theme-initialize)

Molokai

Vimのカラーテーマで有名な、molokaiを導入してみた。カラフルな装飾がMolokaiの特徴。

molokaiのテーマは派生がいろいろあるようなので、Googleで検索して筆頭に現れたこれをいれる。

molokai-theme-kit.el,molokai-theme.elをダウンロードしてロードパスの通った場所へ配置。ここでは、themsというディレクトリを.emacs.dのしたにつくった。

init.elに以下を追加した。

    (add-to-list 'custom-theme-load-path "~/.emacs.d/themes")
     (setq molokai-theme-kit t)
     (load-theme 'molokai t)

emacs-powerline

Emacsのモードラインをカラフルに彩る Emacs Powerlineを入れる。tmux-powerlineと合わせると、画面がとても賑やかになる。

powerline.elをダウンロードして、ロードパスの通った場所に配置。

ここにも数種類のデザインがあるし、ネット上にもさらに多くのものがある。いろいろと試してみる。

init.elに以下を追加

(require 'powerline)

12 Jan 2014, 13:14

GoogleCLを利用してLinuxからpicasaに画像を投稿するスクリプトでブログ執筆効率化!

以前、Windows環境でgoogleclを利用した画像データのUploadの自動化をしたのですが、Linux環境でも同様のことをしてみました。

Environment

  • Linux Mint 16

Install

Googleclは、以下でインストール

% sudo apt-get install googlecl

初回通信でログイン認証する。ブラウザが起動するので認証する。

& google calendar add "Lunch with Jim at noon tomorrow"

Googleカレンダーを起動して、予定が作成されていればOK.

Picasaに投稿

picasa postコマンドで実行します。

% google picasa post Futurismo tmuxinator.jpg

スクリプトにまとめると、ブログ執筆がさらに便利ですね。

#!/usr/bin/env ruby
# Picasaへアップロード
`google picasa post Futurismo #{ARGV[0]}`

# URLを取得
url = `google picasa list --fields=url-direct|grep #{ARGV[0]}`

# 標準出力にimgのURL出力
img = "<img src=\"" + url.chop + "\">"
puts img

11 Jan 2014, 13:34

CLIからポモドーロテクニックを実施するためのツール pomo を試してみました

CLIからポモドーロテクニックを実施するためのツール pomo を試してみました。

% gem install pomo

使い方は、visionmedia/pomoにある。

はじめに、設定ファイル作成。

% pomo initconfig

タスクを追加します。

% pomo add pomoの記事を作成する
% pomo ls
1. pomoの記事を作成                                         : 25 minutes

スタートします。

% pomo 1 start

すると、25分のタイマが起動します。タスクを追加しないとタイマも起動しないようです。時間になると、5分の休憩タイマが起動します。

オプションで、以下の表示もできるようです。

  • ポップアップ
  • tmuxのmini bar
  • CUIのプログレスバー

コマンドラインでサクッとタスク管理できるのがいい感じです。taskwarriorと連携させて利用したいところですが、それはまた今度。

11 Jan 2014, 08:10

EmacsでMarkdown記法での執筆環境を整えた

ブログはmarkdown記法で作成して、HTMLに変換してwordprssに投稿しています。

Emacsで Markdown記述環境を整えたので、その作業メモです。Emacs で markdownモードを利用するには、emacs-markdown.elを利用します。公式サイトは以下。

以下のサイトを参考にしました。ありがとうございます。

導入手順

以下から emacs-markdown.elを入手して、ロードパスの通ったところへ配置。

 wget http://jblevins.org/projects/markdown-mode/markdown-mode.el

init.elに以下を記述

(autoload 'markdown-mode "markdown-mode.el" "Major mode for editing Markdown files" t)

.mdと書いてあるファイルをmarkkdownモードで起動するように関連付ける

(add-to-list 'auto-mode-alist '("\\.md\\'" . markdown-mode))

色の変更

色が気持ち悪い場合は、

M-x list-face-displayをでfaceの設定を起動して修正。

minttyとemacsで、黒背景で青が見にくい場合の対策も参考のこと。

HTML形式に変換する

MarkdownでかかれたものをHTMLに変換するには、markdown.plを利用する。

Daring Fireball: Markdownからmarkdown.plをダウンロードしてパスの通った場所ち配置。ここでは、/usr/local/binへ。名前もMarkdown.plから markdownへ変更。

cd /usr/local/bin
sudo mv '/home/tsu-nera/Downloads/Markdown.pl' markdown

プレビュー表示

C-c C-c m でバッファにプレビューを表示できます。

C-c C-c p でブラウザにプレビューを表示できます。

command not found: markdownと出る場合は、Markdown.plがうまく動いていない。

zsh:1: command not found: markdown

その他コマンドは、公式サイトのUsageを参照。

11 Jan 2014, 05:34

namebenchでDNSサーバへの通信速度をベンチマーク!モバイルWifi環境を高速化する方法

namebenchでDNSサーバへの通信速度をベンチマーク!Wifi環境を高速化する方法

普段、家の外でノートPCを利用することが多いのだが、wifiが遅い気がしたので高速化の方法を調べた。

DNSサーバを変更する

DNSサーバを変更すると、名前解決が早くなり、その結果通信速度が上がるらしい。

以下のIPがおすすめらしい。

  • NTT America Technical Operations

    29.250.35.250

    29.250.35.251

参考:「8.8.8.8,8.8.4.4」より速い「129.250.35.250」: 小粋空間

  • Google Public DNS

    8.8.8.8

    8.8.8.4

参考 [N] iPhoneのWiFi接続を高速化する魔法の数字「8.8.8.8,8.8.4.4」

namebench でベンチマーク

しかし、この結果を鵜呑みにしてはいけない!環境によって最適なDNSサーバは異なるはず!

オープンソースのnamebenchを利用すると、自分に最適なDNSサーバを調査することができる。これで最も早いサーバを調べて設定するのがよい。マルチプラットフォームのため、Windows,Mac,LinuxどれでもOK.

ベンチマーク結果

Linux Mintでは、パッケージマネージャからインストールできる。端末を開き、namebenchと入力すると検索が開始する。解析が終了すると、HTMLファイルが生成される。それを開くと…

127.0.1.1が一番早いとのこと。これは、自動で取得できるDNSサーバらしい。ということで、とくに設定の変更は必要なかった。。。

Screenshot_from_2014-01-11 14:28:39

10 Jan 2014, 15:41

[Linux Mint]xinputでタッチパッドをコマンドラインから有効化・無効化する

Linux Mintを利用していると、ノートPCのタッチパッドの感度がどうもよすぎる。そのため、普段はタッチパッドを無効にして、マウスのみを利用していた。

マウスが利用できないときにノートPCを立ち上げると、タッチパッドが制御不能であるためになにもできなくなる。そんなときに、コマンドラインからタッチパッドを有効化する方法を調べた。

xinputコマンドを利用する。

コマンドラインから制御するためには、まず以下を入力。

gsettings set org.gnome.settings-daemon.peripherals.touchpad touchpad-enabled true

制御デバイスのID or 名前を調べる。

% xinput list
⎡ Virtual core pointer                      id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=11   [slave  pointer  (2)]
⎣ Virtual core keyboard                     id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Video Bus                                 id=6    [slave  keyboard (3)]
    ↳ Sony Vaio Keys                            id=7    [slave  keyboard (3)]
    ↳ Power Button                              id=8    [slave  keyboard (3)]
    ↳ USB2.0 Camera                             id=9    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=10   [slave  keyboard (3)]

Touchpadという名前がついているものが該当。ここでは、SynPS/2 Synaptics TouchPad id=11

以下のコマンドで有効・無効を切り替える。

# 無効
% xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 0
% xinput --set-prop 11 "Device Enabled" 0

# 有効
% xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1
% xinput --set-prop 11 "Device Enabled" 1

ログインシェルにaliasを切っておくとよい。.zshenvに定義した。

alias touchpad_disable='xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 0'
alias touchpad_enable='xinput --set-prop "SynPS/2 Synaptics TouchPad" "Device Enabled" 1'

参考