2016年8月8日月曜日

Ubuntuで使える各種タスクバー(ドックマネージャー)のまとめ

Ubuntuには標準ではUnityがデスクトップ環境になっていて、画面左側のランチャーから各種アプリを起動したり、起動しているアプリの確認が出来ます。
Fig.1 Unity環境

通常ならこのランチャーで要は足りるのですが、個人的には使い難く思ってました。
使い難くい点としては
  • 起動しているアプリとそうでないアプリの区別がし難い
  • 登録しているアプリが多くなるほど、起動してるアプリを見つけるのが難しくなる
  • ランチャーを自動的に隠す設定にしているので、アプリの確認にワンテンポ余計に要する
といったあたり。
またUnity環境だと画面最上部のタスクバーはアプリのメニューバーとして使用されています。Unityが採用以前ではそこには起動アプリ一覧も表示されていて、その使い勝手に戻したいと思っていました。
このへんはUnity以外のデスクトップ環境にすれば解決するわけですが、いくつかの環境を試した結果、Unity環境はそれなりに使いやすいためここで解決方法を探ることにしました。

Unity環境が採用されたのはUbuntu11.04で2011年からなので、数年に渡りいろいろ探し試してきました。

Ubuntuで使えるタスクバー提供アプリをいくつか挙げます。
(※Awnは現在ではUbutnuのリポジトリにはないようです )

Fig.2 Docky

まずCairo-Dockに非常に高機能でカスタマイズ性もかなりあります。ただ以前使用した感じとしては若干動作が不安定でした。
DockyとPlankは兄弟のような感じです。それはPlankがDockyをベースに作られているためです。 印象としてはPlankはDockyの機能を軽量化した感じでしょうか。
Awnは試したのが数年前ですが、Dockyと同じような感じでした。
tint2は上記のものと比べると地味な印象がありますが、Unity以前のタスクバーの使い勝手に一番近いものになっています。

tint2以外はアプリを示すのがFig.2のDockyのようにアイコンベースになっているのに対して、tint2はアイコンとタイトルテキストを合わせて表示させることができます(設定でアイコンのみにも出来る模様)。しかし非常に細かくカスタマイズ出来るために、自分に合うように設定するのに手間がかかります。

Fig.3 tint2
 こうしていくつか試してきて、自分にはどんな機能を重視するか考えてみました。
  • 起動しているアプリの判別、選択のしやすさ
  • 全ての起動アプリではなく、ワークスペース毎の起動アプリの表示が出来る
  • autohide機能、もしくは見た目にジャマにならない
結論から言うと、tint2が自分には一番合っていると感じました。ただ最近、起動しているアプリがタスクバーに出てこなかったりするのが若干悩みのタネです(Alt+Tabで選択すれば表示されるようになるが)。

tint2に関しては自分用にカスタマイズしようとするとかなり設定に手間が必要なので、 時間があったらそのへんをまとめてブログにしたいと思います。

2016年6月30日木曜日

Ubuntu(Unity)のランチャーに自分でアプリを登録する方法

以前、Ubuntu(Unity)でランチャーにカスタムしたアプリを登録する方法を書きました。
ゆたりんブログ: Ubuntuにカスタムアプリアイコンを登録する場合の注意

しかし、これは手動でファイルを探してきてテキストを編集して適した場所に置くという結構手間がかかる方法です。
今回はもっと簡単にランチャーにアプリを登録できる方法を2つ紹介します。
Fig.1 ランチャー登録アプリ

1. メイン・メニューアプリを使う

1つ目の方法はメイン・メニューというアプリを使って登録する方法です。 このアプリは確かUbuntuをインストールしたときに入っていたと思います。

メイン・メニュー(Main Menu)
コマンド名 : alacarte
easy GNOME menu editing tool — Ubuntu Apps Directory
Alacarte Menu Editor in Launchpad

Fig.2 メイン・メニュー操作画面
このアプリで「新しいアイテム」で新規項目を作成して、プロパティから名前やコマンドを設定してやると、それがランチャーに登録されます。
以下(Fig.3)は、FirefoxのDeveloper Editionのパッケージをユーザーディレクトリに置いて、それをランチャーに登録したときの画面です。

Fig.3 メイン・メニュー、アイテム追加画面
さて、これで最低限ランチャーに登録する設定は出来るのですが、アプリを特定のファイルに関連付けたり細かい設定は出来ません。
もっと細かくカスタマイズしてランチャーに登録したい場合は次に紹介するメニューエディターアプリを使います。


2. メニューエディターアプリを使う

こちらはUbuntuに初めからはインストールされていないので、ソフトウェアセンターなどからインストールします。

メニューエディター(Menu Editor)
コマンド名 : menulibre
MenuLibre | Sean M. Davis
MenuLibre in Launchpad

Fig.4 メニューエディター操作画面

基本的な使い方は1.で紹介したメイン・メニューと同じですが、こちらのメニューエディターではより詳細にアプリの設定が指定できます。Fig.4では先ほどと同様にFirefox Developer Editionを設定していますが、コマンドを指定する以外に「分類」「アクション」「詳細」など設定できるのが分かります。


以下(Fig.5)ではEmacsについて詳細項目を設定しました。
Fig.5 Emacsの詳細設定
Emacsはインストールすれば特に設定しなくてもランチャーに登録されますが、なんで設定をしているのかはこのリンクのサイトを参照して下さい。
ここでは例えば Mimetypesを適切に設定すればファイルマネージャーの関連付けメニューに表示出来るようになると思います。

応用

さらに「アクション」を指定するとおもしろい使い方が出来ます。これはUnityのランチャーで右クリックメニューでアプリに別動作をさせるためのもののようです(Unity以外でも有効かも知れない)。
Fig.6 アクション指定
さて、ここでコマンドを適当に指定します。そしてアクションにいくつかのアプリを指定して保存してランチャーに登録すると、以下のようなことが出来ます。
Fig.7 アプリ右クリックメニューのカスタマイズ
Fig.7で示したように、右クリックメニューに複数のアプリを割り当てることが出来ました。これを使うと、よくスマートフォンでアプリを1つのフォルダにまとめるのと似たような使い方が出来ます。
実用的かはともかくとして、このように使い方の幅も広まります。


総論

結局のところメイン・メニューにしろメニューエディターにしろ、編集しているのは***.desktopファイルなので、このファイルの書式を覚えればテキスト編集だけでこれらのことは出来ると思います。ただちょっと書式自体の情報が簡単にはまとまってはいないようなので、今回のようにアプリを使って簡単に済ませるのは効率的だと思います。

2016年6月17日金曜日

クイズ : グラフ間違い探し

クイズ : Twitterで「いいね!」をもらった数をグラフにしようとして以下の表を作りました。
日付いいね!の数
06/015
06/023
06/057
06/209

この表からグラフを作成しましたが、次の2つのグラフが出来ました。
グラフ1

グラフ2

【問】
さて、この2つのグラフは同じデータから作られていますが、何が原因で違う形になってしまっているでしょうか?

(正解はこのページの下に記載)








【答え】
両者のグラフは横軸(x軸)の取り扱いに違いがあります。
  • グラフ1は日付は単なる項目(テキスト)として認識させて作りました
  • グラフ2は横軸に日付フォーマットを認識させて作りました


このように横軸のフォーマットをどう指定するかで、出来上がるグラフは違うものとなります。自分がどんなグラフを作りたいか考えて作らないと、求めるグラフは作ることは出来ません。

グラフソフトや表計算のグラフ作成機能におまかせで簡単にグラフは作れますが、ちゃんと考えて作らないと作りたいものとは違ったグラフが出来てしまっているかも知れません。
グラフから何らかの結論を導くとき、これが原因で間違った結論が出てきてしまう恐れがあるので気をつけたいですね。


【参考リンク】
総務省統計局の「なるほど統計学園」というページに各種グラフについて簡単な説明があります。
統計局ホームページ
統計をグラフにあらわそう(種類と特徴)|なるほど統計学園

2016年6月12日日曜日

Ubuntuにカスタムアプリアイコンを登録する場合の注意

アプリに引数渡して起動したい場合など、元アプリの*****.desktop ファイルを探してきて編集して
  ~/.local/share/applications/
に入れてログインし直せばUnityのDashなどから呼び出せるけど、どうやら元ファイルと同じファイル名でそのディレクトリに入れると元アプリはUnityから認識されなくなるようだ。
*****.desktopファイルのNameエントリーに別名書いておいても、それで識別されるわけではなくファイル名で認識されるようになっている模様(表示されるのはNameエントリーに書いたモノになるのだが…)。

順序としては上記ユーザーディレクトリに置いたファイルが優先されると思われる。
ということでアプリをカスタマイズして利用したいときは、*****.desktopのファイル名も変更する必要があるので注意したい。

2016年6月11日土曜日

[解決?] Ubuntu16.04でデジカメをUSB接続しても認識しない件

問題点

Ubuntu16.04でデジタルカメラ(CASIO ZR10)から写真をパソコンに保存しようとしてUSB接続しても認識されなかった。EX-ZR10 - デジタルカメラ - CASIO
CASIO ZR10
図1. CASIO ZR10
記憶ではUbuntu16.04以前では認識されていた覚えがあるのだけど…。
最近はスマホで撮影することが多くてデジカメ自体あまり使ってないし、使った場合もSDカードを抜いて写真を移していた。たまたま引き出しを整理していたら、このデジカメ用のUSB接続ケーブルが出てきたのでせっかくだからと使ってみたらこの問題が起きたというわけである。

試してみたこと

syslogを見るとデバイス自体は認識されているようである。若干端折るけど、以下のように出力されていた。

usb 1-3: new high-speed USB device number 5 using ehci-pci
usb 1-3: New USB device found, idVendor=07cf, idProduct=113f
usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=4
usb 1-3: Product: CASIO QV DIGITAL
usb 1-3: Manufacturer: CASIO COMPUTER
usb 1-3: SerialNumber: ****************
usb-storage 1-3:1.0: USB Mass Storage device detected
scsi host8: usb-storage 1-3:1.0
mtp-probe: checking bus 1, device 5: "/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3"
mtp-probe: bus: 1, device: 5 was not an MTP device

これを読むとマスストレージデバイスとして認識しているようだが、最後の2行がちょっと怪しい。
MTPやマスストレージの規格にはあまり詳しくはないのだけど、どうやらMTPとして認識しようとして躓いているのではないか?と思った。
余計なことはせずにマスストレージデバイスとして認識させることが出来れば大丈夫じゃないかと思っていろいろ調べたけど、どうにもこれといった情報は見つからなかった。
(lsusbでデバイス確認して、それを元にudevに記述すればイケるらしいけどよく分からず…)
dmesgでマウントに必要な情報が出てるかといえばそうでもなく…。

解決方法

そういえばデジカメの接続方法にPictBridgeというのがあったのを思い出した。ただこれはデジカメをプリンタを直接つなぐ規格だったんで、果たしてパソコンにつないで意味があるのか?と思ったけど、ダメ元でやってみた。PictBridge - Wikipedia

結果、ちゃんと認識された(図2)。
ファイルマネージャに認識されている様子
図2. ファイルマネージャに認識されている様子

やり方は以下の通り(図3、図4)。まずデジカメ側でUSB接続方法を変更する。

図3. 設定からUSBの認識方法を選択する

図4. メニューからPTP(PictBridge)を選択する
デジカメの設定が終わったら、通常通りにUSB接続すればUbuntuで認識されてファイルマネージャから操作できるようになる。

最後に

他のデジカメでも同様の問題が起きるのかや、同じような対処方法で認識されるのかは知らない。
プリンタと接続する規格で認識するというのもいまいち釈然としないけど、まぁ認識出来たので良しとしよう。



追記 2016年8月8日

改めて試したらマスストレージデバイスでも認識できた。アップデートで対応されたのだろうか、それとも単に認識がうまくいってなかっただけなのか?
しかし動画で数GBのファイルを転送しようとしたら途中でコピーが進行しなくなる問題が出てきてしまったので、結局SDカードを抜いてパソコンに取り込んでいる。

2016年6月9日木曜日

LibreOffice CalcでWebページのデータを取り込む方法が変更していた件

LibreOffice CalcでWebサイトからデータを外部データとしてそのままインポートしようとしましたが、ヘルプに記述されている方法が若干変更されていました(おそらくバージョン5.1から)。またWebで検索しても調べた範囲では変更されていると記述されているサイトもなかったので、ここにまとめておきます。
 

確認した環境

LibreOffice version 5.1.3.2
OS : Ubuntu 16.04 LTS

結論

ヘルプではWebサイトからデータをインポートする場合は
  • [メニューバー] → [挿入] → [外部データ]
という手順が示されているが、実際には
  • [メニューバー] → [シート] → [外部データへのリンク]
という手順になっているのでこの機能を使う場合は注意した方がいいです。後述するように以前の操作方法に戻すことはできます。

この件は公式のフィードバックには報告されているので、 そのうち修正されるでしょう。手順変更がヘルプに反映されていないだけなのですぐに直るのではないでしょうか。
"Linking to external data" on libreoffice calc - Ask LibreOffice


[挿入]には[外部データへのリンク]はないが

このように[シート]には存在します。


補足

過去のバージョンで確認してみると
LibreOffice version 5.0.2.2 (仮想マシン Ubuntu15.10上で確認)
ではヘルプで示された方法通りに[挿入]メニューに[外部データの挿入]が存在します。
(このスクリーンショットを見ると、この頃には[シート]というメニューは存在しないようです)

version 5.1のリリースノートを読むと、以下のように[シート]に関する記述があるのでこのバージョンから変更されたと思われます。
LibreOffice 5.1: Release Notes - The Document Foundation Wiki
Organize sheet level context menus.

以前の方法に戻す

LibreOfficeにはメニューのカスタマイズ機能があるので、従来の操作方法に戻すことも出来ます。
[ツール] → [カスタマイズ]
でダイアログを呼び出し、[メニュー]に個所に[挿入]を選択します。
 [追加]ボタンを押して[コマンドを追加]ダイアログを呼び出します。ここでカテゴリーに[挿入]を選択しコマンドから[外部データへのリンク]を選んで追加します。
しかし、設定しただけではメニューには表れず反映されないようなので、一度Calcを終了して再び起動するとメニュー項目に表れます。
これで以前と同様に使えるようになると思います。



感想という名のアレ

普段あまり使わない機能だけど、ちょっとWebサイトにあるデータをそのままCalcで読み込んで解析しようとしたらここに書いた問題に当たりました。ヘルプ読んでも分からずネットで検索しても出てこない。結局Calcのメニューとにらめっこしてようやく解決できました。てっきり外部データ読み込み機能自体削除されたのかと思ってしまった…。

個人的には従来通りに[挿入]に[外部データへのリンク]がある方が自然なように思うけど、どういう意図で移されたのかは気になるところ…。

2016年6月8日水曜日

emacsでUTF-8の設定をしていても新規ファイルを開くと文字コードがEUC-JPになってしまう場合の対処法



久しぶりにemacsの設定ファイル .emacs を整理したのだが、その後に新規テキストファイルを作ってemacsで開くとなぜか文字コードがEUC-JPになってしまっていた。


文字コードがEUC-JPでも大抵はソフト側で自動判断してくれるのでいいのだが、さすがにUTF-8に統一してる中に他の文字コードのファイルが入ってくるのは気分的によろしくない。後に一括でテキスト検索する場合も不都合になりそうである。
特に文字コードに関する設定は触っていないので若干悩んだが、以下のサイトの記述を見つけて納得した。
UTF-8 への移行計画 - bkブログ

こちらのサイトの説明を読むと、どうやら設定ファイル中でUTF-8の設定をしていてもその後に何か(特定の設定ファイル?)をロードするような設定があるとEUC-JPに戻されてしまうようである。ということで、原因はUTF-8の設定が中途半端な位置にあるせいだったようだ。

ということで、文字コードUTF-8の設定をごっそり設定ファイルの後半に移して新規ファイルを開いたらちゃんとUTF-8になっていた。


無事解決である。


確かUTF-8の設定をした当初はこういうことはアタマに入れて .emacs の最後に設定入れてた記憶があるけど、次第に忘れてしまいいろんな設定をその下に付け加えていってしまったのも原因のようである。反省。
2012年に書いたブログ記事にちゃんと残ってた…。4年経つと忘れるか…。
ゆたりんブログ: Emacsで文字コードがおかしくなったときの対処法

2016年5月15日日曜日

2016年5月6日金曜日

[紹介][Firefox][アドオン] FireGestures - マウスジェスチャーを可能にする

FireGestures :: Add-ons for Firefox
FireGestures :: Firefox Extension (作者サイト)
(2016年5月6日時点のバージョン 1.10.7)

FireGesturesはマウスジェスチャーによるブラウザ操作を可能にするアドオンです。
右クリック(トリガーキー)を押したまま、決められた方向にマウスを動かすことで[戻る]や[進む]などのブラウザ操作が出来ます(マウス動かしたら右クリックは離します)。
マウスを動かした跡に線が描かれるので、どういう操作をしてるか見ることが出来ます。

通常ではそれらの操作はブラウザの[戻る]や[進む]ボタンをクリックする必要がありますが、これだとそこまでマウスを動かす必要があります。しかしマウスジェスチャーを利用すると、ページのどこでもジェスチャー操作が出来るのでマウスを移動する労力が少なくなると思います。

基本操作
右クリック + L(←) : 戻る
右クリック + R(→) : 進む
右クリック + U(↑) : ページトップへ移動
右クリック + D(↓) : ページ最後へ移動

その他にDR(↓に動かした後、→に動かす)といった複合動作も設定出来ます。インストール後の初期状態でいくつか設定されてますが、使ってみて思ったように認識されないようなら自分用にカスタマイズしていくといいです。自分はいくつかのジェスチャーを無効にして不意に思ってたのと違う動作をしないように設定しています。

その他にもいろいろと機能はあり、スクリプトで機能追加なども出来るようです。

2016年5月5日木曜日

[紹介][Firefox][アドオン] Text Link - URL文字列からリンクに飛ぶことができる


テキストリンク (Text Link) :: Add-ons for Firefox
XUL Apps > Text Link - outsider reflex (作者サイト)
(この記事を書いた時点のバージョン 5.0.2016031501)

通常のWebサイトでは他のページやサイトへのリンクはマウスでクリックしたらすぐ飛べるように処理されています(ページのhtmlソースを見るとどういう処理になってるか分かります)。
例)
https://www.google.co.jp
グーグル先生

しかしそういう処理がされておらず、単に文字列として貼り付けられているケースがそこそこありますね。
例)
https://www.google.co.jp

こういうリンクはいったん文字列を選択コピーして、ブラウザのアドレスバーに貼り付けてやらないとリンク先に飛べないのでちょっと厄介な存在です。

で、紹介するテキストリンク(Text Link)というアドオンは、そのような文字列をマウスのダブルクリックですぐリンク先へ飛べるという何かと便利なアドオンです。また設定によりダブルクリック以外の操作でも飛べるようです。機能としてはシンプルなのですが、一度その便利さを実感すると手放せない存在になります。
また日本で使うのに特に便利なのが全角で書かれたURL文字列でも認識してリンク先へ飛べる機能があることです。Webの新聞記事ではなぜかURLを全角で書くというよくわからないことをしていることがありますが、このアドオンはそれにも対応できます。
例)
https://www.google.co.jp

Webもかなり便利になってきたとはいえ、まだまだそのような文字列として貼り付けられたURLが存在するので、結構便利なアドオンと言えます。普段、そのようなURLが煩わしいと感じている方は一度利用してみることをオススメします。