openSUSEでDvorakキーボード配列を使う

By Syuta Hashimoto @ 2018-12-12 07:27

この記事は「openSUSE AdventCalendar 2018」12日目の記事です。

※2018/12/15 頂いたコメントを反映しました

全国1名※1のDvorakキーボード配列ユーザーの皆様、こんばんわ。橋本修太です。

※1 独自調査(要するに、私は一人しかDvorakユーザーを知らないのです・・・)

それでは、早速openSUSEでキーボード配列をDvorakにする方法を見てみましょう。

結論 YaSTで設定

YaST > ハードウェア > システムキーボード配列 と辿っていきます。

そして、このシステムキーボード配列を選択すると出てくる一覧から、「Dvorak」を選択します。

一番上なので、選びやすいですね。みなさんもどんどんこのDvorakを選択していきましょう。

Dvorakとは

Dvorak博士が考案した、タイプしやすさを考えたキーボード配列です。左手の小指の所が「a」なのは変わらないのですが、そこから内側に向けて「o」「e」「u」「i」となっています。これ、ローマ字タイプですと、母音に当たりますね。なので、感覚的に右手、左手、右手、左手、と、リズムを刻むように交互に指を動かす感じになって、スムーズにタイプが出来ます。

配列の全容は先程のページでどうぞ。タイプ負荷か減るので、腱鞘炎の予防にもなるとの事です。

使っている感想としては、キーがほぼホームポジションで足りるので、指を少ししか動かさずにタイプ出来ます。QWERTY時の幅広く指を動かさないといけないダルさが全く無いです。素直に、楽ですね。

一般的なキーボード配列

対して、一般的なキーボード配列は「QWERTY」と呼ばれています。左上の「Q」から右に向かってキーを読んでみましょう。ほら、「QWERTY」になりましたでしょう。

このQWERTY、生い立ちには諸説あるようですね。様々な理由から少しづつかわっていって、この形になったようです。

その他の設定方法

さて、さっきはぱぱっとYaSTでDvorakを設定してしまいましたが、X環境下なら以下のコマンドで設定も出来ます。

setxkbmap dvorak

これをXmodmapに書いておけば、Xセッション開始時にDvorakにする事も出来ますね。

ちなみに私はXmodmapには以下の設定を書いています。

!replace 無変換 to Alt_L
keycode 102 = Alt_L
!replace 前候補変換 to Alt_R
keycode 100 = Alt_R

スペースの左の「無変換」を左Altに、右の「変換」を右Altに、それぞれ割り当てています。

※2018/12/15追記

@ftakeさんより、コメントを頂きました。

ibus-mozc を使っている人は、エンジンに Mozc (Dvorak) を追加するだけでも使えます。Mozc (JP) や Mozc (US) も追加しておけば、Super+Space でレイアウトの切り替えもできます。

との事です。をを、なるほど。

そう言えば、その昔、この辺りの設定でDvorakにした事があったような・・・

と、いうことで

YaSTで簡単設定なので、是非皆さんもDvorak試してみましょう。すっごく楽ですよ。

課題&感想

  • 職場のキーボードはQWERTYから変更できなかったりする
  • emacsのキーバインドが意図された動きでなくなる
  • 物理的にプリントされているアルファベットが参考にならないため、ランダム文字列のパスワード入力とか至難
  • YaSTの設定は結局何処の何を設定している?
  • 右手、左手、の交互打鍵が、たまに入れ替わってしまう
  • ログイン時はQWERTYで、コンソールでもXでも、ログインしたらDvorakにしたい

そういえば、以前ribbonさんにタイピング練習ソフトを紹介して頂いたような・・・ribbonさん、何でしたっけ?

※2018/12/15追記

@ribbonさんより、教えて頂きました。

GNU Typist https://www.gnu.org/software/gtypist/ の、たぶん前身です。
今見てみましたが、Dvorakコースがあります。

今度やってみたいと思います。

明日はemaxserこと、川上さんの、openSUSEでDropboxを使う記事です。即効性の高い記事になりそうですね。こうご期待。

openSUSEでWINEで東方やってみる

By Syuta Hashimoto @ 2018-12-09 08:29

このブログは「openSUSE AdventCalender 2018」9日目の記事です。

皆さんこんばんわ。橋本修太です。

突然ですが、東方Projectというのをご存知でしょうか。

東方Projectとは、ZUN氏が制作しているWindows用弾幕系シューティングゲームです。あるいは、そのキャラクターや関連コンテンツ等を「東方」と呼んでいます。

私は「妖々夢」「永夜」「風神録」を持っていて、奇跡的に「永夜抄」のノーマルモードを紅魔チームで打開した事がある程度です。

そう、ラインナップを見て頂くとわかるとおり、かなり前にWindowsで遊んだきり。今、どっぷりopenSUSEに浸かっている為、Windowsに切り替えるのは面倒です。

「幽雅に咲かせ、墨染の桜」をまた聞きたい

「妖々夢」のボス曲です。東方は好きな曲が多いです。また幽々子様に会いたい・・・

そこで、WINEの出番です。

WINE

ぶどうを発酵させたアルコール飲料で、私はこれが大好きです・・・では無くて、ITでWINEと言うと、Linux上でWindowsアプリケーションを動作させるプログラム群の事を指します。サイトはこちら

今回目指す事

openSUSEでWINEを使って「妖々夢」をプレイ出来るようにする事を目指します。

やってみた

想定手順

WINEのような複雑なソリューションは、一筋縄では行かないのが世の常。なので、まずは「想定」手順を記載します。

  1. WINEをインストールする
  2. 妖々夢をインストールする
  3. 妖々夢をプレイする

WINEをインストールする

実は、メインマシンのデスクトップでは、既にWINEで他ゲーム(RPGツクール系ランタイムが必要なゲーム等)で遊んでまして、あれこれやった記憶がありますので、ここではまだWINEがインストールされていないノートPCでやってみたいと思います。

では、ノートPCの情報を。

Resuming in non X mode: glxinfo not found. For package install advice run: inxi –recommends
CPU~Dual core Intel Core i5-6200U (-HT-MCP-) speed/max~2400/2800 MHz Kernel~4.12.14-lp150.12.25-default x86
_64 Up~0:38 Mem~7208.8/15952.4MB HDD~1000.2GB(6.7% used) Procs~230 Client~Shell inxi~2.3.40

さっそく、4日目で紹介させて頂いた、inxiを使用しています。他にも、hwinfoやdmidecodeというコマンドもあるので、そちらもおいおい調査したいと思っています。

おや?glxinfoが無いよ、とエラーが出てしまっていますね・・・あしからず。

WINEのインストールは、YaSTで一発です。WINEは複雑な最新版を取得する方法等もいろいろあるのですが、今回はこれで普通に動きましたので(ネタバレ?)、YaSTの標準インストールを行います。

YaST の「ソフトウェア管理」で、「wine」で検索すると表示される一覧から、「wine」を選択します。すると、画面で言うとすぐ下の「wine-32bit」などにもマークが付きますが、これは依存関係を判別して自動でインストールすべきパッケージを選んでくれてますので、このまま「了解」を押して進みましょう。

すると、必要なパッケージをインストールするよ、の一覧が表示されます。結構な量になりますが、インストールしましょう。

さすがに量があるので、少し時間がかかります。私のwifi環境で、パッケージ数111、経過時間6分程、インストールサイズの合計673.56MiB、ダウンロードサイズの合計187.62MiBでした。

・・・インストールサイズとダウンロードサイズの違いってなんでしょう?あと、MiB って?

これらはおいおい調べていくとしまして、まずはWINEインストール完了です。

WINE起動してみる

アプリケーションメニューの「システム」に、「Wine File」がありますので起動してみますと・・・なんか、「wine-monoが無いよ。インストールする?ディストリビューションのものをインストールしたほうがいいけどね」といった感じのメッセージが。とりあえずキャンセル的な方を選んでおきました。デスクトップの方は表示されないんですよね・・インストールしたのかもしれません。

ちなみに、Wine Fileは、エクスプローラーのようにファイル等を見ることが出来るプログラムです。

東方妖々夢をインストールする

東方妖々夢のCDをドライブに入れ、その中にある「install」のファイルをクリックすれば、インストールが始まります。

このままインストールを進めていきましょう。

私は、最後で「デスクトップにショートカットを作成する」で「はい」を選んだのですが、ノートでは上手く表示されませんでした・・・ちなみにデスクトップでは表示されています。

東方妖々夢をプレイする

東方妖々夢のアイコン(?)をクリックしてみましょう。無事、起動しました。

何故かスペクタクル(スクリーンショットユーティリティ)でスクリーンショットを取ることが出来ず・・・

この時ですが、私はいつもUSB接続のコントローラーでプレイするのですが、東方妖々夢起動後に指すと、ずっと下ボタンが繰り返される現象が発生しました。前もって指しておいてから起動する分には、正しく動作しました。

なお、最初はフルスクリーンで起動されますが、ConfigからWindowを選択すれば、Window表示にする事ができます。

久々にプレイ

咲夜でプレイ。チェンでゲームオーバー。「幽雅に咲かせ、墨染の桜」までは遠い・・・まぁ、イージーでやれば・・・いや、イージーが許されるのは小学生までですよね。

という事で、東方を持っている方、是非openSUSEでプレイしてみましょう。

おまけ winetricks

winetricksという、WINEの設定やプログラムインストールを簡単にしてくれるスクリプトがあります。標準で入っているwinetricksには不具合があるので、これは最新版をダウンロードした方が安定するようです。

課題&感想

  • 想定通りの手順でプレイまで完了でうれしい
  • inxiでglxinfoのエラーが出る
  • YaSTでインストールする時の、インストールサイズとダウンロードサイズの違いは?
  • MiBの意味と使いどころ
  • wine-monoの扱い方
  • アイコンが表示されない?
  • スペクタクルでスクリーンショットが撮れない
  • チェンの弾除けは難しいけど出来ると快感

明日は鹿野月美さんによる、openSUSEのWINEで鉄拳7をプレイする記事です。この記事の課題は、きっと鹿野月美さんがぱぱっと解決してくださいます。こうご期待!

 

lxqtでrcloneを使う場合のTIPS

By ribbon @ 2018-12-07 06:42

openSUSE Leap 15.0 では、デスクトップ環境として、lqxtが使えます。lxqt 環境ではブラウザとしてfalkon が入っているのですが、これが少々よろしくありません。rclone を使って Google Drive に繋ぐ場合、ブラウザを使って認証を行うのですが、認証の画面が表示されません。真っ黒なままになります。
lxqt-config を使ってデフォルトのブラウザを変更しても、コンソールから起動する rclone には反映されず、デフォルトとの falkon が起動してしまいます。
この問題を設定ツール等で変更する方法がないか調べたのですが見つかりませんでした。ただ、回避策は見つかりました。rclone を実行しつつ strace で状況を見ていると、 /usr/share/applications/mimeinfo.cache を見に行っていることが分かりました。この中を見ると、

[MIME Cache]
application/gzip=org.kde.ark.desktop;
application/pcx=lximage-qt.desktop;
application/pkcs10=gcr-viewer.desktop;
application/pkcs10+pem=gcr-viewer.desktop;
application/pkcs12=gcr-viewer.desktop;
application/pkcs12+pem=gcr-viewer.desktop;

のように、アプリケーション指定時に動かすものを指定しています。試行錯誤の上、
x-scheme-handler/http=org.kde.falkon.desktop;firefox.desktop;

x-scheme-handler/http=firefox.desktop;org.kde.falkon.desktop;
に変更することで、firefoxを動かすことができました。これで、lxqt環境下でも rclone によるブラウザ認証が正しく行えるようになります。

このブログは「openSUSE Advent Clendar 2018」の5日目の記事です。

皆さんこんばんわ。橋本修太です。

さて、今日はopenSUSEでマルチメディアを使えるようにするTipsです。

なお、この記事は経験則となっております事をご了承下さい。

それでは、結論から。

結論

このページから、KDEならKDE用の、GNOMEならGNOME用の、1-clickインストールを実行しましょう。

一時期、このサイトが使えなかった時もあるようなのですが、今現在、正常に使えています。

現象

openSUSEインストール後、VLC(メディアプレーヤー。動画再生等に使われます。)をインストールしたりして、いざ動画を再生しようとすると、「コーデックがありません」といった類のエラーが出てくる事があります。これは文字通りコーデックが足りていない事を示してます。

コーデック

簡単に言いますと、動画等のデコードやエンコードを行う装置やソフトウェア、そのアルゴリズムを指します。 今回の場合、データから動画や音声に変換したり、その逆を行うライブラリを指しています。

何が問題?

こちらのサイトこちらのサイトに、openSUSEでマルチメディアを使う時に何が問題なのか、まとまっています。特許、ライセンス、といった類の言葉がみられますね。この辺りも、おいおいまとめていきたいと思います。注目すべき点の一つは、「openSUSEでは公式に配布出来ない」ものがある、という事でしょうか。

なお、ライセンスと言えば年明け1月9日にサイオスさんの所で OSSライセンス Meetup が開かれますので、興味のある方は是非。

注意点

ここのページに書かれている注意点として、「マルチメディアパッケージ類は全部Packmanから取得するようにしてね」と書かれています。しかもスクリーンキャプチャ付きでわかりやすく解説されていますので、参考にしてみて下さい。

最後に

ブログを書く前は、ページの文章の翻訳を書こうとか思っていたのですが、いざ書き始めて、ライセンスだのと頭の中で繰り返していると、「はて、これはやっていいことなのかな?」と疑問が湧き出てきて止まらないです・・・これは私もMeetup参加して、一度正しい知識を身につけるべきという事でしょうか。

明日は鹿野月美さんの「openSUSEに自然言語処理な環境構築」の予定です。

言わずと知れた、お〜ぷん万葉の総帥による、自然言語処理な環境構築。お見逃し無く。

この記事は LibreOffice Advent Calender の 21日目です。

先日のopenSUSE.Asia Summitでは、次のような名札を作りました。たくさんの人が集まるイベントでは、やっぱり名札があるとよいですね。今回はこの名札を作るまでの過程を紹介します。この名札は、実は背景と名前の部分の2回に分けて印刷しています。以下では、それぞれのパートに分けて紹介します。

openSUSE.Asia Summit の名札

背景

背景部分はLibreOfficeではなく、Scribusで作成しました。今回の名札は「はがきサイズ」で、印刷屋さんに依頼しても200枚1500円以下でオフセット印刷できます。Scribus を使うことで、発注時に必要な裁ち落とし(縁なし印刷)をするための塗り足しを持ち、CNYK カラーの PDF データを出力できます。

Scribus の編集画面

 

出力した PDF データ

名前の差し込み印刷

名前の部分は LibreOffice Writer の差し込み印刷機能を使って印刷データを作成しました。

印刷するデータは Connpass の申し込み情報を CSV にエクスポートして作成した次のようなデータです。1行が1人分のデータになっています。

Name 1 Name 2 Affiliation Registration No
Fuminobu Takeyama ftake Japan openSUSE User Group 10001
Geeko 10002
Foo Bar Foobar Baz 10003

それでは、Writer で差し込み先のデータを作っていきましょう。名札のレイアウトは次のように表を使って作成しました。

LibreOffice Writer で作成した印刷レイアウト

ドキュメント内の < > で囲まれた部分はフィールドで、対応する列の値がこの場所に書き込まれます。このフィールドは次のようにして挿入します。

  1. メニュー: 「挿入」 > 「フィールド」をクリック
  2. 「データベース」タブ > 「差し込み印刷フィールド」をクリック
  3. 「データベースファイルの追加」の「検索」で名札データの表を開く
  4. 「データベースの選択」内に開いた表が現れるので、シート名と列を選択する

差し込み印刷フィールドの挿入

このようにして、4つのフィールド(名前1、ニックネーム、所属、申込番号)を追加します。

次に、データを差し込みます。直接印刷することもできますが、ここでは差し込んだ結果を新しい Writer のドキュメントとして保存します。「表示」> 「ツールバー」>「差し込み印刷」で差し込み印刷ツールバーを表示し、「結合ドキュメントを保存」をクリックします。

結合ドキュメントの保存

そうすると、全員分の名札データが差し込まれた1つのWriterドキュメントができあがります。作業はこれで終わりではなく、ページをチェックして、はみ出ている人がいれば改行位置の調整やフォントサイズの変更を行います。「Japan openSUSE User Group」も長過ぎるのでフォントサイズを小さくしました。

全員分の名前が差し込まれたドキュメント

最後に、このデータを背景が印刷された用紙に普通に印刷すればできあがりです。今回はインクジェットプリンターに対応しないコート紙を使ったため、キンコーズでセルフプリントしました。ただのはがきサイズのドキュメントなので PDF にして USB  メモリーに保存して持っていけば印刷できます。ただ、ページ数が多すぎる場合は、読み込みに時間がかかるため、複数のファイルに分けたほうがよいようです。

OSC 2016 Tokyo/Fall

By ftake @ 2016-11-09 22:18

1-pb050124_r 2-pb050125

11月5日と6日にいつもの明星大学日野キャンパスで開催されたオープンソースカンファレンス2016 Tokyo/Fall に出展しました。

ブース

今回は Raspi のキーボードとマウスを忘れたり、テーブルクロスを忘れたり、さらには特大ギーコと中ぎーこたちも忘れてきてしまうという、忘れ物だらけの展示でした。そこで、履くつもりだったopenSUSEシューズ (openSUSE.Asia Summit を参照)を展示しました。

今回のフリーペーパー版 Geeko Magazine はいつもと違いました。この後 OSC 福岡などのイベントが続くため、多めに作ろうと、初めてオフセット印刷しました。紙もコート紙で、ふちなし印刷になっています。表紙はボロブドゥール遺跡を観光するちびぎーこの写真でした。

セミナー

デスクトップLinuxを普及させよう作戦から発展したコマンドラインツールテクニックです。コマンドラインに慣れない人がこの辺は抑えておくと、効率よく作業できるのになという手のネタと、ベテランでも知らなかったりするかもというネタを混ぜてみました。今回取り上げられなかった内容もありますので、シリーズ化していきたいと思います。


ライトニングトーク

openSUSE.Asia Summit を日本で開催しよう!実行委員募集ということで、LT で話してきました。一緒におもてなしをして下さる方を大募集です。

実は初めて OSC 東京のライトニングトークで話しました(名古屋や懇親会 LT は経験あり)。LT のタイマーが「1」分の意味が、1分59秒~1分0秒を指していることに気づかず早すぎたのは秘密です。


UI 向け日本語フォントを考える

By ftake @ 2016-08-20 15:34

Google と Adobe によって開発された Noto Sans フォント(源ノ角フォント)がリリースされ、openSUSE に取り込まれてからだいぶ経ちました。openSUSE では Noto シリーズのフォントに UI フォントを統一しようという流れが出てきています。Noto フォントの魅力は、幅広い言語の文字をサポートしている上に、様々なウェイト(太さ)をサポートしていることです。

一方で、Noto フォントはスマートフォンやタブレットなどの高解像度のディスプレイに合わせて開発されたせいなのか、KDE や GNOME アプリケーションでは、行の高さが大きすぎて、ちょっと微妙なレンダリング結果になるようです。

ここでは、現在の日本語フォント IPA Pゴシック、Noto Sans CJK Regular、Migu 1C Regular を比較してみます。Leap 42.1 に採用されている古い fontconfig はマルチウェイトフォントを正しく検索できないため、M17N リポジトリからの 2.12.0 を使いました。

また、サブピクセルレンダリングの効果を試すため、サブピクセルレンダリングを有効化※し、自分でビルドした FreeType 2.6.5 を使いました。
※特許で保護されているため、openSUSE では無効化されている

ft-view で比較

font-comparison-ft-view

まずは、ft-view によるレンダリングの比較です。上3つが Noto Sans CJK JP のレンダリング結果です。最上段の左と右はサブピクセルレンダリングの有無の比較です。「編」の字の縦棒がサブピクセルレンダリングの効果で分かりやすくなっていますが、劇的には変化はないようです。

Noto Sans の1段目と2段目はヒンティングの有無の比較です。「設」の字が分かりやすいのですが、ヒンティングを有効にすると、各文字が全体的に縦長に見える傾向があります。

3段目は IPA Pゴシックと、Migu 1C のレンダリング結果です。IPA Pゴシックは、他の2つのフォントに比べて、明らかに行の高さが小さくなっています。特に印刷物で使うには、行間が狭すぎることが多いです。一方、UI で使うときは、低解像度のディスプレイに文字を詰め込むために、この行間に慣れているのではないかと思います。

Migu 1C は M+ 1c ベースのフォントで、ひらがな・カタカナの字幅を小さくしたり、濁点・半濁点を大きくし読みやすくしたフォントです。横方向を狭くして詰め込む方法もまた、長らく使われてきた習慣だと思います。一方で、縦方向の行間は比較的広めで、Noto フォントと同じくらいです。

GTK アプリケーションのメニューのレンダリング比較

行の高さはアプリケーションの余白に大きく影響します。次の図は、GNOME の Nautilus で、動画ファイルを右クリックしたときに表示されるメニューの比較です。同じフォントサイズを指定しても、3つのフォントで1行分以上の差が出ます。

font-comparison-gnome-shell

ここで不思議なのが、Noto Sans と Migu 1C が、ft-view では差があまり無かったのにもかかわらず、メニューの高さはだいぶ異なるようです。フォントメトリックスの何かの違いが影響を与えていると思いますので、このあたりは今後調査してみます。

KDE の Kickoff ラウンチャー

最も差が出るのが、昔の KDE のラウンチャーの Kickoff です。Plasma 5 を使用している場合は、メニューのアイコンを右クリックして「Alternatives」から切り替えることができます。

font-comparison-plasma

ここまで差があると、不具合のような気もしますが、Noto Sans では、多くのノートPCの縦解像度 768 px を超えて、800 px ギリギリまで到達してしまいました。(この PC は 800 px あります)

まとめ

openSUSE では、さざなみフォントの後、IPA フォントが長らく使われてきましたが、FreeType との相性が悪い文字・記号や、太字が無いため、どこかで他のフォントに切り替えないといけないと考えています。

Noto Font は強力な候補なのですが、行間問題は様々なアプリケーションに影響がありそうなため、調査と対策が必用そうです。

M+ 系の(Bold がある)フォントも、本家 M+ フォントが10年の歳月をかけてJIS 第1水準を超えており、日本語のフォントという観点では引き続き選択肢となりそうです。