Libre Office で縦中横は今も無理 2019-08-08 (木) 09:16:47+09:00

メモ

昔から Libre Office では懸案の、縦書き文書を作ったときの動作をひさしぶりに確かめてみた。Libre Office Writer のバージョンは 6.2.5.2 。

縦書き文章中の横文字表示、Libreoffice(Writer) と MS-Office(Word)」を参考に、記事の通りに縦中横を試してみた。

記事と同じように、全て全角で「平成30年」と縦書き文書を打ち込み、「30」を選択し、「文字>位置>回転/倍率」を「90度」にしたところ、用紙の左側が上となるよう3と0がそれぞれ90度左に回転した状態で左右に並び、左側に3、右側に0が表示される状態になった。参考記事の結果と似ているが、文字が左に90度回転している点が異なる。

動作としては、私の結果の方が正しい気がする(表記通りに文字が90度回転したので)が、これだと縦中横としてはダメだ。推測だが、参考記事が書かれた時点の Libre Office では、何らかの実装バグがあり、その結果として「たまたまうまくいく」ように見える状態だったのだろうと思う。

「文字>位置>回転/倍率」は、本来縦中横としての機能ではないので仕方のない結果だと思うが、やはりというか、未だに縦書き文書については懸案のままのようだ。

実は、参考記事の方法とは異なるのだが、「平成30年」の「30」だけを半角文字で入力すると、「30」が用紙の右を上として、全角文字より右に90度回転した状態で上に3、下に0が表示される。この状態の半角の「30」に対して同じ処理を行うと、左に90度回転するので、縦中横が実現するような結果になる。ただしこの方法だと数字は半角でなければならないのと、表示される位置がどうも微妙に右にずれていてかっこうが悪いのだが、それはなおせないようだ。

結果をまとめると、全角・半角関わらず縦中横を実現することは、現状できないし、半角でも位置がずれる。

縦中横を実現するためには、縦中横専用の機能を実装する必要がある、ということだ。

この記事のリンク元 | 14 | 10 | 8 | 5 | 3 | 1 |

この記事のリンク用URL&トラックバックURL : https://red-souls.jp/ichounoki/rnote/memo/20190808_091647231519.htm

キーワード: Libre Office Writer 縦中横


Linux で使える XML-RPC API を使って投稿ができる WYSIWYG エディタ付きの blog 投稿クライアントを探したのだが、 blogilo しか見つからなかった。

ところがこの blogilo 、 ubuntu ではディストリビューションのパッケージから既に削除されており、削除されていないディストリビューションのものを試してみたが、 WYSIWYG エディタが使えないほかにエラーを起こす部分が多数あることもわかった。これでは使えない。

wine を使って Open Live Writer を使えないかも調べたが、そもそも .Net アプリ自体が wine では壊滅状態で、まともに動作するものはないようだった。

こうなったら自作するしかないと思い、開発ツールを探したのだが、 .Net で GUI アプリを開発できる環境が monodevelop しかなかった。

で、 monodevelop でデザインモードを使用して GUI アプリを作れるのが Mono + GTK#2.0 という構成のみだった。

ところがこの構成で開発を試してみると、簡単なサンプルを作っただけで、自動的に作成されるソース generated.cs でエラーが起きる。

private void OnSizeRequested(object sender, Gtk.SizeRequestedArgs args)

というメンバ関数が自動生成されるのだが、このパラメータ args について、「 Gtk に SizeRequestedArgs が存在しない」というエラーなのだが、参照を開き gtk-sharp の中にある Gtk を見てみると、しっかり SizeRequestedArgs は存在しているのだ。なので間違いなく monodevelop のバグであり、ネットで検索するともう何年も前から、発生条件は違うようだがこのエラーが報告されているようだが、一向に修正されている様子がなかった。なのでコンパイル不可能という問題にぶちあたったため、ここで開発を断念することになった。

他にも monodevelop にはいろいろバグがあって、例えばデザインモードだが、新規プロジェクト作成で雛形を作ると MainWindow.cs でデザインモードが使えるのだが、一度プロジェクトを保存して開き直したり、それ以前に MainWindow.cs のタブをダブルクリックして何度か触ったりしただけで、もうデザインモードを開くことができなくなってしまうのだ。、裏技としてそれでも開く方法が見つかったが、それは、一度開いている MainWindow.cs のコードを閉じ、ファイルのツリーにあるファイル名を右クリックして「開く」を選ぶ方法でだけデザインモードが開くというやり方だ。他には、なんの前触れもなく突然終了することが非常に多いので、何かするたびに保存しておかないといけない。

Linux の開発環境って、思っていた以上にダメダメである。

1: 冬星 (08/08 00:38)
これは、新しい captcha image のテストです。
2: 冬星 (08/10 21:39)
2個目のコメントのテストです。
3: 冬星 (08/10 23:11)
3個目のコメントのテストです。
4: 冬星 (08/10 23:17)
2個目のコメントのテストです。
5: 冬星 (08/10 23:24)
5個目のコメントのテストです。
6: 冬星 (08/10 23:33)
6個目のコメントのテストです。
7: 冬星 (08/10 23:38)
7個目のコメントのテストです。
8: 冬星 (08/10 23:40)
8個目のコメントのテストです。
9: 冬星 (08/10 23:44)
9個目のコメントのテストです。
10: 冬星 (08/10 23:47)
10個目のコメントのテストです。
11: 冬星 (08/10 23:51)
11個目のコメントのテストです。
12: 冬星 (08/10 23:55)
12個目のコメントのテストです。
13: 冬星 (08/11 00:08)
13個目のコメントのテストです。
14: 冬星 (08/11 00:10)
14個目のコメントのテストです。
15: 冬星 (08/11 00:11)
15個目のコメントのテストです。
16: 冬星 (08/11 00:13)
16個目のコメントのテストです。
17: 冬星 (08/11 02:19)
17個目のコメントのテストです。
18: 冬星 (08/11 02:23)
18個目のコメントのテストです。
19: 冬星 (08/11 02:26)
19個目のコメントのテストです。
20: 冬星 (08/11 02:31)
20個目のコメントのテストです。
21: 冬星 (08/11 02:33)
21個目のコメントのテストです。
22: 冬星 (08/11 02:37)
22個目のコメントのテストです。
23: 冬星 (08/11 02:42)
23個目のコメントのテストです。
24: 冬星 (08/11 02:46)
24個目のコメントのテストです。
25: 冬星 (08/11 02:50)
25個目のコメントのテストです。
26: 冬星 (08/11 02:51)
26個目のコメントのテストです。
27: 冬星 (08/11 02:56)
27個目のコメントのテストです。
28: 冬星 (08/11 03:01)
28個目のコメントのテストです。
29: 冬星 (08/11 03:07)
29個目のコメントのテストです。
30: 冬星 (08/11 03:09)
30個目のコメントのテストです
31: 冬星 (08/11 03:10)
31個目のコメントのテストです。
32: 冬星 (08/11 03:11)
32個目のコメントのテストです。
33: 冬星 (08/11 03:13)
33個目のコメントのテストです。
34: 冬星 (08/11 03:16)
34個目のコメントのテストです。
35: 冬星 (08/11 03:19)
35個目のコメントのテストです。
36: 冬星 (08/11 03:22)
36個目のコメントのテストです。
37: 冬星 (08/11 03:29)
37個目のコメントのテストです。
38: 冬星 (08/11 03:42)
38個目のコメントのテストです。
39: 冬星 (08/13 00:42)
39個目のコメントのテストです。
40: 冬星 (08/13 13:46)
40個目のコメントのテストです。
41: 冬星 (08/13 14:39)
41個目のコメントのテストです。
42: 冬星 (08/13 14:52)
42個目のコメントのテストです。
43: 冬星 (08/13 14:53)
43個目のコメントのテストです。
44: 冬星 (08/13 14:56)
44個目のコメントのテストです。
45: 冬星 (08/13 15:00)
45個目のコメントのテストです。
46: 冬星 (08/14 14:00)
携帯からのコメント投稿のテストです。
この記事のリンク元 | 9 | 9 | 1 |

この記事のリンク用URL&トラックバックURL : https://red-souls.jp/ichounoki/rnote/software/20190807_203947918314.htm


既に、記事の右上部分に表示されているカテゴリの表示名では対応していたが、画面上部にバー状態で表示しているカテゴリメニューと、画面左側に「コーナー」としてツリー形式で表示しているカテゴリの表示名も、 'works/software' を「冬星のソフトウェア」、 'works/novel' を「冬星のノベル」と表示できるようにした。

navitools.php を修正し、カテゴリキーをキーにとり、表示名を値に持つ連想配列を利用するようにした。

この記事のリンク元 | 14 | 8 |

この記事のリンク用URL&トラックバックURL : https://red-souls.jp/ichounoki/rnote/software/20190805_002932804640.htm


php で、バッククォートとシングルクォート、ダブルクォートとの違いを知りたくなり、検索してみたのだが、なんと、この3つを比較し紹介しているサイトが一件も存在しなかったので驚いたので、下に紹介しておく。

・シングルクォート…文字列内の変数は展開しない。内部にあるダブルクォートはそのまま表示できる。内部にシングルクォート自身を表示する必要がある場合は '\' を前につける必要がある。

(例)

$foo="bar";

echo ’nakami=$foo’;

とすると、"nakami=$foo"と表示される。

・ダブルクォート…文字列内の変数を展開する。内部にあるシングルクォートはそのまま表示できる。内部にダブルクォート自身を表示する必要がある場合は '\' を前につける必要がある。

(例)

$foo="bar";

echo "nakami=$foo";

とすると、"nakami=bar"と表示される。

・バッククォート…文字列内の変数を展開し、バッククォートで囲まれた文字列をシェルコマンドとして実行し、結果の出力をすべて返す。

(例)

function foo()

{

$addr="xxx.xxx.xxx.xxx";

$ret=`nslookup -timeout=1 -retry=1 $addr`;

if (preg_match('/name = (.*).\n/', $ret, $out)){

return $out[1];

} else{

return $addr;

}

}

とすると、この例では nslookup -timeout=1 -retry=1 xxx.xxx.xxx.xxx の結果の出力が $ret に文字列として返される。結果に name = に続く部分のある行があった場合、その部分を表示し、なければアドレスをそのまま返している。

どのサイトも、ダブルクォートとシングルクォートの違いしか記載されておらず、バッククォートの比較がすっぽり抜けていることに大変驚かされた。それは不十分な解説というものだろう。

この記事のリンク元 | 15 | 11 | 2 | 1 |

この記事のリンク用URL&トラックバックURL : https://red-souls.jp/ichounoki/rnote/software/20190801_153323728309.htm