MacではEmacsのキーバインドが使えて良い

Macはテキストの編集があるところではEmacsの基本的なキーバインドがつかえる。結構便利だ。Emacsユーザーが多いと思われるLinuxだが、各アプリで設定する必要があるのだろうか。文章はEmacsで書けばよいし、シェルはEmacsキーバインドなので、そんなに困ることはないのではあるがウィンドウマネージャーの設定を確認してみよう。

 

AMD CPUで初めての自作PC!

HPのノートPCが壊れてしまった。新しいPCを購入しないといけないがあまり高い買い物はできない。しかし、壊れたノートPCがCore i5だったので、それよりは良い物が欲しい気がする。ということで自作にチャレンジすることにした。が、やっぱりIntel CPU高い! だが調べていくうちにAMDのCPUが目に入ってきた。なんだか安い。Intelじゃないので値段も含めて考えるとCore i5と単純に比較しにくいところが気に入った。それでAMDのCPUでつくることにした。ググッてみたところ妄想パソコン!AMD A10で自作するコスパの高い低価格万能デスクトップ・パソコン というサイトが情報量も必要十分な感じだったので参考にさせてもらった。

“AMD CPUで初めての自作PC!” の続きを読む

cPanel(Hostgator)のメール転送

aaa@[ドメイン1] をaaa@[ドメイン2] に転送したいとき、日本のレンタルサーバーのコントロールパネルであれば単純に転送先と元の宛先にメールのコピーを残すかどうかをチェックすればよい。

cPanelはちょっと違っていて元の宛先にメールのコピーを残すかどうかのチェックボックスがあるわけではない。

どのようにすれば良いかというと、元の宛先のメールアカウントを作るかどうかでコピーを残すかどうかをコントロールする。

コピーを残さない転送の場合cPanelではアカウントは作成しない。転送設定のみを行う。

おなじ画面の下の方にある「ドメイン転送」を設定すれば、@の前の部分が同じであればひとつひとつ転送設定する必要はない。「ドメイン転送」を使って転送する場合でも、コピーを残すかどうかを元宛先のメールアドレスを作るかどうかで制御するのは同じである。

日本のレンタルサーバーのコントロールパネルのように「コピーを残す」というチェックボックスがなくて戸惑ったが、分かれば当たり前かなと思う。

 

x2goでリモートデスクトップしてみた

前置き

デスクトップ環境を遠隔から操作するアプリケーションのx2goの話です。

以前は FreeNX を使っていたのですが、新しく入れたLinux Mintの(Ubuntu)パッケージから消えていたので、代わりの物を探したところx2goを発見しました。

ここ とか ここ や、 公式ページに書かれているのを参考にしたら大体使えるのではないでしょうか。

WindowsやMacから操作できますが、操作される側はLinuxだけだと思います。

公式サイトには書いていますが、MacではXquartzをインストールしないといけません。

x2goの良い点

FreeNXもそうですが、作業を中断して再開できる点が良いです。X Window System だとログアウトしたらセッションが終わっていたような記憶があります。

それと、サーバー側の画面に作業の様子が表示されないという点も私にとっては必要でした。VNCは画面共有のアプリケーションなので、遠隔からの操作の様子が、PC側からも見えてしまいます。VNCでもデスクトップPCならモニタを消すなり、ノートPCなら画面を閉じるなりすれば良いとは思いますが、x2goは画面の描画も早いらしいのでx2goを使うことにしました。

また、FreeNXと違い、接続の流れがシンプルです。対象環境のユーザアカウントでSSH接続ですれば済みます。FreeNXは、FreeNXアカウントでログインした後、さらにサーバー内の対象環境のユーザーアカウントに接続するという流れだったと思います。他にも幾つか選べるオプションがあって最初に接続に成功するまでに時間がかかったような気がします。

接続設定

接続するとき、接続先の環境(ウィンドウマネージャー?)を選択するところがあります。Linux Mint のMATEを使っていいます。それはプルダウンの選択肢に含まれていないので、私は「その他」を選び「MATE」と記入して接続しています。

SSHの設定

まずポートも変えました。

また、SSHサーバーは基本的には鍵認証して接続しますが、LAN内からはパスワードで接続したかったので、以下のように /etc/ssh/sshd_config に以下のようにしました。

Match Address 127.0.0.1,localhost
PasswordAuthentication yes

Match Address 192.168.1.*
PasswordAuthentication yes

これでLAN内からアクセスするときはパスワードで大丈夫です。クライアント側の設定が鍵認証となっている場合は以下のようにSSH接続のたびにオプションを渡します(以下は一行です)。

shell>  ssh -vvv user@192.168.1.10 -o PasswordAuthentication=yes -o PreferredAuthentications=password

実機を使う場合

リモートデスクトップするのではなく、実機を直接操作する場合、x2goは画面共有するわけではないので、リモートからの操作時のセッションを引き継げない。実機でも別のユーザーで実機にはログイン後x2goクライアントからセッションを引き継ぐようにしています。(引き継げないかと思っていたらWindowsのリモートデスクトップのような感じになっている?なっていた?そのうち確認します)

親指シフト入力 on Emacs のススメ

Emacsは人気のあるテキストエディタです。たくさんのマクロ(スマホでいえばアプリのようなものですかね)があり、文書作成やプログラミングに便利な環境を整えることができます。

Emacsの素晴らしい機能はたくさんありますが、私がおすすめしたいのは、Emacsでは、日本語入力(変換)もマクロを使おう、というものです。Emacsは大抵のOSで使えますので、テキスト編集に関してどのOSでも同じように作業ができるわけですが、さらに日本語の入力もEmacsのマクロをつかうことで、どの環境でもほとんど違和感なく作業ができるようになります。

Emacs上で使える日本語入力マクロはいくつかありますが、おそらくもっとも多く使われているのはskkではないかと思います。skkを使うことでかなり便利になると思いますが、私はローマ字入力方式のskkではなく、skkのパッケージに含まれている親指シフトカナ入力のskk-nicolaというものを使うことで、さらに便利になっている(はず)と考えています。

カナ入力というのがポイントです(親指シフト入力についてはここでは説明を省かせてもらいます)。ただのローマ字のskkだと、OSのデフォルトのIMEのローマ字入力との微妙な違いに混乱してしまいますが、カナ入力だとそうならないわけです(多分ね)。そして、長めの文章を書くときはEmacs上で、検索フォームなどに入力する程度はOS標準のローマ字入力で、という使い分けをするわけです。

そして、繰り返しになりますが、Emacsなので、OSが異なっていてもその慣れた入力方法が全く同じ使用感で使えるということになります。

親指シフト入力については、どのキーボードでも快適に入力できるわけではないというのが難点ですが、マイキーボードを常に携帯すれば買えば解決です。もしくは、私のように濁音、半濁音を2打鍵にしてしまうという残念な使い方もあります。一度、親指シフト on Emacs を試してみませんか。

org-mode期間別の作業時間集計

org-modeで計測をするとタスクの集計が分かるのだが、週毎、月毎に振り返ってみるにはどうすれば良いか分からなかったので、タスクの子階層に日毎のアイテムを「アイテム(1)」、「アイテム(2)」といった感じやっていたが、ちょっと面倒。なんとかならないかと調べてみた。

社内で他にタスク管理ツールを使っていてそれにも記録しないといけないといったケースもあるかもしれない。その場合1日の作業毎の時間がすぐに分かれば転記しやすい。

アジェンダモードで C-c C-x C-c とやると時間がカラム表示されるのであるが、ひとつのアイテムを複数の日に渡ってやっている場合はその合計が表示されてしまう。

解決策としては、「C-c C-x C-r (org-clock-report)」を使えば良いことが判明。

当たり前の答えで、読み始めから違和感を感じていた人も多いに違いないとは思うが、ひょっとしたら私と同じようにorg-modeは沢山機能があり過ぎるので、とりあえず知っいる範囲でなんとかやりくりしていて同じ悩みを持っている人がいるかも知れないということで。

やり方は、
C-c C-x C-r を実行したあと、clocktableの属性を以下のような感じに変える。「step day」が一日毎の表示指定。stepを使うときは、:blockもしくは、期間指定(:tstart、:tend)を使う必要がある。

#+BEGIN: clocktable :maxlevel 3 :scope subtree :step day :block 2015-09 :stepskip0

1日分を見たいときは、

#+BEGIN: clocktable :maxlevel 5 :scope agenda :step day :stepskip0 :fileskip0 :block today

のtodayのところで、「shift + 矢印キーの左右」で1日分を確認できる。

とても便利なので「C-c C-x C-r (org-clock-report)」のマニュアルを読んでみてはどうだろう。