2018年10月17日水曜日

macOS MojaveでRealforce compactを使うためのKarabiner-Elements設定

実現したいこと

  1. 無変換 -> 英数
  2. 変換 -> かな
  3. Caps lock -> Command
  4. Windows -> Caps lock
  5. Application -> Fn
  6. KANA -> Command
  7. Alt + [Shift] + Tab で アプリケーションスイッチ
  8. Caps lock + [Shift] + Tabでブラウザタブ移動
1〜6はSimple Modificationsで設定できる.キー名がわからない場合はKarabiner-EventViewer.appで確認する.
7, 8はjsonファイルに設定を記述する.
https://pqrs.org/osx/karabiner/complex_modifications/#rotate_left_modifiers

2018年5月23日水曜日

texliveリポジトリが凍結された後の更新

texliveリポジトリは定期的に凍結(frozen)され,次年度バージョンへ移る.凍結後に追加でパッケージ等をインストールしようとしてリポジトリにアクセスすると,「もう古い」的なことを言われて新バージョンへの移行方法が示される.
% tlmgr update --all
tlmgr: Remote repository is newer than local (2017 < 2018)
Cross release updates are only supported with
  update-tlmgr-latest(.sh/.exe) --update
Please see https://tug.org/texlive/upgrade.html for details.
しかし,こういうときはだいたい〆切直前で環境を大きく変えたくないものである.旧リポジトリから対象パッケージをとってきたい場合は,以下のコマンドで設定できる.
% sudo tlmgr option repository ftp://tug.org/historic/systems/texlive/2017/tlnet-final

2018年4月20日金曜日

フォント外の異字体をWordで使いたい

目的
フォント外の異字体をMS Wordで使いたい
斎のバリエーションのようなもの
下記で販売されているようなフォントには含まれている
https://www.est.co.jp/font/jinmei1500v5

Inkscapeで目的の文字と共通パーツを持つ文字をタイプ
斎でいえば,文の部分と示の部分を合成することを考える
→アウトライン化
→パーツに分解して目的の文字を合成
→基準となるMS Word上のフォントと比べて太すぎるのでパスを白線で囲って痩せさせる
→EPS出力
→MS Word上で画像を貼り付け
→出力してみて文字の太さを調整

試した方法
中華フォントKaitiでそれっぽいのを探す
→近い文字はあったが,目的の文字は見つからず.フォントスタイルは結構合う
異字体を含むフォント販売ページで,サンプルPDFを公開していたので,それをコピペ
→フォントの見かけがちょっと違う
紙で切り貼り
→仕上がりに難.手作業が難しい.

2018年1月4日木曜日

Matlab 2017bでYALMIPとSeDuMiを使えるようにした

Matlab 2017bでYALMIP, SeDuMiを使えるようにしたメモ.

環境

  • macOS: 10.11.6-x86_64
  • Xcode: 8.2.1

YALMIP

サイト(https://yalmip.github.io/download/)からダウンロードして解凍する.適当な場所に置く(~/MATLAB/YALMIP-master など).
Matlabでパスを通す.
addpath(genpath('/Users/hoge/Documents/MATLAB/YALMIP-master'))
savepath

SeDuMi

サイト(https://github.com/sqlp/sedumi)からダウンロード.macOS 64bit用のバイナリ(**.mexmaci64)を適当な場所に配置してパスを通す.
テストしてみるとSDPが解けていない.
yalmiptest
|                    SDP|        N/A|   Unknown problem in solver (Turn on 'debug' in sdpsettings) (関数または変数 'y_s' が未定義です。)|

SeDuMiバイナリの作成

どうやらsedumiがインストールできていないよう.
sedumi([1; 1], 1, [1 1])
無効な MEX ファイル '/Users/hoge/Documents/MATLAB/sedumi-master/whichcpx.mexmaci64':
dlopen(/Users/hoge/Documents/MATLAB/sedumi-master/whichcpx.mexmaci64, 6): Library not loaded:
@loader_path/libmwlapack.dylib
  Referenced from: /Users/hoge/Documents/MATLAB/sedumi-master/whichcpx.mexmaci64
  Reason: image not found。

エラー: pretransfo (line 211)
cpx = whichcpx(K);

エラー: sedumi (line 261)
[A,b,c,K,prep,origcoeff] = pretransfo(A,b,c,K,pars);
mexファイルがおかしいと言われるのでコンパイルしてみる.github上のソースファイルから修正が必要.ここを参考に:
Found the link for the fix.
-#define FORT(x) FORTRAN_WRAPPER(x)
+#define FORT(x) x
at line at line 45 in blksdp.h
修正したらSeDuMiのファイル直下でinstall_sedumiをオプション付きで実行する.
install_sedumi -rebuild
できた.
yalmiptest
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|                   Test|   Solution|                     Solver message|
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|   Core functionalities|        N/A|       Successfully solved (YALMIP)|
|                     LP|    Correct|      Successfully solved (LINPROG)|
|                     LP|    Correct|      Successfully solved (LINPROG)|
|                     QP|    Correct|     Successfully solved (QUADPROG)|
|                     QP|    Correct|     Successfully solved (QUADPROG)|
|                   SOCP|    Correct|   Successfully solved (SeDuMi-1.3)|
|                   SOCP|    Correct|   Successfully solved (SeDuMi-1.3)|
|                   SOCP|    Correct|   Successfully solved (SeDuMi-1.3)|
|                    SDP|    Correct|   Successfully solved (SeDuMi-1.3)|
|                    SDP|    Correct|   Successfully solved (SeDuMi-1.3)|
|                    SDP|    Correct|   Successfully solved (SeDuMi-1.3)|
|                    SDP|    Correct|   Successfully solved (SeDuMi-1.3)|
|                 MAXDET|    Correct|   Successfully solved (SeDuMi-1.3)|
|                 MAXDET|    Correct|   Successfully solved (SeDuMi-1.3)|
|          Infeasible LP|        N/A|       Infeasible problem (LINPROG)|
|          Infeasible QP|        N/A|      Infeasible problem (QUADPROG)|
|         Infeasible SDP|        N/A|    Infeasible problem (SeDuMi-1.3)|
|      Moment relaxation|    Correct|   Successfully solved (SeDuMi-1.3)|
|         Sum-of-squares|    Correct|   Successfully solved (SeDuMi-1.3)|
|           Bilinear SDP|        N/A|                 No suitable solver|
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
設定
Note that YALMIP uses historical default settings for SeDuMi. According to the user guide for SeDuMi 1.1, the YALMIP defaults should be updated as below:
S = sdpsettings('solver', 'sedumi', 'sedumi.eps', 1e-8, ...
                'sedumi.cg.qprec', 1, 'sedumi.cg.maxiter', 49, ...
                'sedumi.stepdif', 2);

2017年11月14日火曜日

世界を壊さなかった灰羽連盟

灰羽連盟がなぜ好きかを考えていたら,世界(観)を最後まで壊さなかったからでは,ということに思い至った.
物語のパターンとして,1 異世界への招待と受容→2 問題,困難の出現,苦悩→3 既存ルールの破壊による救済
がある.

  • 魔法少女入門→マミる→神へ
  • 聖杯戦争→聖杯の正体→破壊

みたいな.世界観が清濁合わせて馴染んだ所で,その破壊によってクライマックスを迎える.

灰羽でいえば,井戸でトーガと会ったところで,外部の情報を得る/出ることがあれば,「世界の外」に出ることになったと思う.

でもそうはならなかった.あの世界でおそらく何度かあったできごとのひとつに過ぎないように処理された.世界の破壊がないので,最終話後も同じ世界が続いているという感覚が強く残る.それでいて,レキの巣立ちで物語は一区切りついている.物語に触れて10年経つが,今も折にふれて思い出す心地よさ.

2016年12月15日木曜日

macOS Sierra でKarabiner難民になった話

はじめに

もともとWindowsユーザーで数年前にMac OSXを使い始めた.どうしてもなじめなかったショートカットキーをKarabinerでリマップして快適に使っていた. (参考: Windowsでctrl2capしてた人向けMacBook Airのキーリマップ.)
macOS Sierraが来るまでは.

うっかり買ってしまった新しいMacには当然Sierraがインストールされている.Karabinerが効かないというのはなんとなく耳には入っていたが,代替ソフト(Karabiner Elements)がリリースされているということであまり細かい情報を見に行ってなかった.
で,Karabiner Elements をインストールしてみて,自分のやりたかったリマップができないことに気づく.どうやら単純なキー割り当てのみで,アレのときはこれのような複雑なことは未実装だったらしい.

やりたいことは,
  • Control_L Command_L
  • (ブラウザなどで)Control_L + Tab でタブ切り替え
  • Command_L + Tab でアプリケーションスイッチ
なので,
  • 「システム環境設定 > キーボード > 修飾キー」から Control Command のスワップ
  • 同ショートカットからタブ切り替えのショートカットキーをCommand + Tab
できれば Karabiner なしでOSの機能でなんとかなる.Command_R Control に変わってしまうのは痛いが,まあそれは目をつぶる.

しかし,Command + Tab によるアプリケーションスイッチが残念ながらシステム環境設定からは変更できない.Command + Tab を別の機能に割り当てることもできないし,アプリケーションスイッチのショートカットキーを変更することも不可能だ(私が探した限りでは).

仕方がないのでサードパーティソフトにお世話になる.

アプリケーションスイッチのキー変更

HyperSwitchを使う.他にも幾つか類似ソフトがあるらしい.アプリケーションスイッチではなく(全アプリケーションにまたがる)ウィンドウスイッチとアプリケーション内ウィンドウスイッチのキーが設定できる.

Command + Tab を殺す

殺すというか,Control + Tab になってくれれば解決.英かなで設定できる.

おわりに

改めて思ったけど,デフォルトの設定に慣れる能力って大事.でも一番良く使う Command が最下段て使いにくいよなあ.Windows Control もそうだけど,なんであそこなんだ.Karabiner Sierra版早く来てくれ~~~~~!

2016年6月17日金曜日

Windows 10で省電力マネージャによるしきい値充電を実現する

Windows 10版のLenovo製バッテリーマネージャは,ただバッテリー残量を表示するだけのクソ仕様である.Windows 7版であった満充電前に充電を停止する機能がないため,据え置き運用の場合,バッテリーの劣化が早まることが懸念される.そこで,Windows 10上で旧版の省電力マネージャを動かして,「残量30%未満で充電開始,80%以上で充電停止」といった動作を実現する.

作業的にはこちらの素晴らしい記事をなぞれば終わり:
X220のWindows 10への移行が完了-省電力マネージャーも動いた-
http://tkimura.info/tech/post-450/

適用した環境


  • Windows 10 Home (64bit)
  • Thinkpad X250

はじめに

Windows 7マシンの電源管理設定ファイルをエクスポートしておく.省電力マネージャを立ち上げて「エクスポート」タブをクリックして.iniファイルを作成.

トラブルシューティングの無効化

以下で述べる方法で省電力マネージャをインストールしても,再起動すると設定した充電しきい値がリセットされる場合がある. トラブルシューティングの設定を無効にしておくとそれが防げるらしい.(以下の引用は冒頭の素晴らしいサイトより)
トラブルシューティングの設定をいくつか無効にしておくとしきい値の設定が安定するようです(中略)
コントロールパネル>トラブルシューティング>設定の変更へ進み、コンピューター保守は無効を選択、起動時にトラブルシューティングが自動的に開始されるようにするのチェックを外します。

ホットキー機能統合のインストール

下記ページからダウンロードしてインストールする.

ホットキー機能統合 (Windows 8/ 7/ Vista/ XP/ 2000)

省電力マネージャーのダウンロードと展開

ダウンロードして展開だけしておく(wizardの最後で Install Power Manager now をチェック外す).

省電力マネージャー (Windows 7 32bit, 64bit/ Vista 32bit, 64bit)

Application Compatibility Toolkitのインストールと実行

Windows 7用の省電力マネージャを実行できるようにするために,ACTを使って設定する. 本件の詳細は http://blog.treedown.net/entry/2015/12/31/010000 が参考になる.

Windows ADKのApplication Compatibility Toolkit

Application Compatibility Toolkitのみインストールすればok. 別途.NET Framework 3.5をインストールする必要があるらしい.
インストールしたら,Compatibility Administrator (64-bit) を起動.
System Database (64-bit) -> Applications -> Lenovo Power Manager とたどって, Setup.exeを右クリック -> Disable Entry を選択する.

改めて省電力マネージャーをインストール

先ほどACTで設定した省電力マネージャのインストーラを実行してインストールする.デフォルトだと C:\DRIVERS\VISTA\PWRMGRV\setup.exe にあるはず.
インストール後,再起動.省電力マネージャが立ち上がってるはず.Win7マシンでエクスポートした.iniファイルををインポートして,しきい値を設定する.
以上.

2015年9月20日日曜日

英語版 Office for Mac で日本語を使う

日本語フォントと欧文フォントの別途指定など,日本語環境にあるメニューがでてこないので困っていた.
サポートページの情報(https://support.microsoft.com/ja-jp/kb/838485)によると,Microsoft Language Register Tool で使用言語を Japanese にすればいいらしい.

アプリケーションディレクトリ > Microsoft Office > Additional Tools > Microsoft Language Register にappがあるので起動して設定する.次回起動時から反映される.

2015年9月10日木曜日

Mendeleyで吐いたbibtexファイルを使いつつ,journal名を 省略・フル 使い分けたい

やりたいこと

Mendeleyで吐いたbibtexライブラリを管理しつつ,journal名を省略表記したり完全表記したり,原稿によって使い分けたい.

現状

Mendeley Desktopにて,journal title欄にlatexマクロを突っ込む.別途マクロファイルを管理する.2種類(full/abrv)用意して切り替えて使う.
これは過去に書いた:
http://heilman-jinroku.blogspot.jp/2012/03/mendeleybibjournal.html

不満点

  • Mendeley Desktop上での検索が不便 
  • Proceedingsの扱い(回数名で毎回タイトルが異なる)
  • 新規journalが増えるたびにlatexマクロ追加がめんどい
  • to appear, to be publishedがつけられない(これは今回関係ないが,いずれ解決したい)

解決策

Mendeley Desktop 1.10 で,Journal Abbreviationsを管理出来るようになってた http://blog.mendeley.com/progress-update/mendeley-desktop-1-10/

Tool > Options > BibTeX:  Use Journal Abbreviations を on
View > Citation Styles > Jounal Abbreviations で使用するstyleを切り替えられる

styleは以下のフォルダにテキストファイルがあるので,それをいじればよさそう.GUIでもできるが.
C:\Users\username\AppData\Local\Mendeley Ltd\Mendeley Desktop\publicationAbbreviations

参考
http://bits-of-information.org/openminded/abbrev-mendeley/

2015年8月28日金曜日

TeX文書の文法チェック

単なるスペルチェックではなく,MS Wordのように簡単な文法チェック(grammar check)をして欲しい.texソースをWordにコピペだと,コマンドや改行が引っかかって大変なことになるので,その辺を上手いことやってくれる方法を探した.
LanguageTool (文法チェックソフト)をTeXstudio (tex執筆環境)から叩くのがよさそう.

インストールしておくもの


  • TeXstudio
  • LanguageTool Desktop verをダウンロードして適当な場所に解凍しておく
  • Java Runtime Environment


TeXstudioの設定

  • オプション > TeXstudioの設定 > 一般
    辞書 > 既定の言語: en_US
  • オプション > TeXstudioの設定 > エディタ
    "インラインチェック"をon
  • オプション > TeXstudioの設定 > 文法
    サーバーのURL: http://localhost:8081/
    LTのパス: C:\hoge\LanguageTool-3.0\languagetool.jar
    Java: java (パスが通っていなければフルパスで)


LanguageToolの設定

languagetool.jarを起動して(ダブルクリック or コマンドラインから"java -jar languagetool.jar"),
  • Test checking > オプション
    "ポート上でサーバーとして実行"をon.ポートは"8081".
あとはTeXstudio上でtexソースを開けばWordちっくに下線で指摘してくれる.


参考

Checking (La)TeX With LanguageTool
http://wiki.languagetool.org/checking-la-tex-with-languagetool
の Using TeXStudio を参照


その他の方法

catdvi でplain textに変換→Language Toolにかける
http://tex.stackexchange.com/questions/6333/grammar-checking-tool-for-use-with-latex

detex でもplain textに変換できるみたい
https://code.google.com/p/opendetex/

2015年5月31日日曜日

「淡島百景」を読んで驚いたこと

漫画の構成要素を画・セリフ・コマに分解するとすれば,志村貴子はセリフの作家だと思っていた.「青い花」に見られる美しいカラーや,読者の視線の動きを捉えたコマ割りも,もちろん見事たが,決め所にピタリと収まるセリフはすごい. 手元にないため不正確かもしれないが,「敷居の住人」では
むーちゃんの影を踏んだ 丁寧に踏みにじった
自己完結して去るな
など,ひねってはいないが独特のセリフが,登場人物の心情をよく伝えてくれる.

しかし, 「淡島百景」では画の力に圧倒された.

とくに「第3話 岡部絵美と小野田幸恵」が素晴らしい.本話の主人公であろう岡部絵美は,しばらく顔を見せない.扉絵でも後ろ姿で描かれていて容貌は不明なまま,語り部たる悦子の回想として話が進められる.

やっと岡部絵美の顔が描かれるのは,50ページあるこの話の16ページ目である.

その顔.

何とはなしに目を向けてしまう,スター性を持った人,生物としての濃度が違うような人が世の中にはいるが,描かれた岡部絵美の顔を見ただけで,これがそういう人物だとわかった.特に70ページの1コマがすごい.これはオーラある人の顔だと納得する.開始からここまで,中年男女しか(若き悦子もいるが美人ではない)描かれていなかったせいもあって,岡部絵美のスター性がさらに強調される.

さらに75ページの二人.何をされたか,したか,セリフはないが表情だけですぐにわかる.セリフがないことによって衝撃と緊張感が強調される.

最後に,93ページの小野田幸恵の表情にも触れたい.憧れている人にかばってもらって,味方してもらって喜ぶべきところなのに,自分の能力への自信のなさ,自分がたいした人間ではないことを知っているために,この場面で畏れを抱いてしまう.そういう,平凡な人間が平凡さに故に歪んでしまった瞬間が,やはりセリフやト書きのない顔のみのコマから感じとれる.

ぽこぽこの連載を楽しく読んではいたが,いつもの志村作品という以上には思っていなかった.しかし,エロエフに載ったらしいこの第3話を読んで,ひっくりかえってしまった.

志村貴子はまだまだ恐ろしい作家になるんだろうなあ.

2014年11月5日水曜日

xyzzy + katexとSumatraPDFとlatexmk

Windows上でのLatex環境をSublime Textに移行しようと思いつつ,xyzzyで引っ張っています.dviを捨ててlatexmkでタイプセット→SumatraPDFでプレビューするようにしたら快適になりました.

latexmkの設定

texliveに標準で付属しているので,texliverな人はインストールはされているはず.latexmkの設定ファイル .latexmkrc を%USERPROFILE%直下に置く..latexmkrcのサンプル:
#!/usr/bin/perl
$latex         = 'platex -src-specials -interaction=nonstopmode -synctex=1 -kanji=utf8 -guess-input-enc %O %S';
$bibtex        = 'pbibtex %O %B';
$dvipdf        = 'dvipdfmx -I 24 %O %S';
$pdf_mode      = 3;
$pdf_previewer = 'C:/apps/SumatraPDF/SumatraPDF.exe -reuse-instance';

xyzzyの設定

tex, katex関連の基本設定は省略.C-c t j でlatexmk,C-c p でpdfをSumatraPDFでプレビューするようにsiteinit.lに設定を追記.byte compile と再読み込みを忘れないように(M-x: byte-compile-file → ダンプファイル削除してxyzzy起動).
;;typesetter
(setq elisp::tex-command "latexmk -pdfdvi")
;;Run preview by C-c p
(defun sumatrapdf-forward-search ()
  (interactive)
  (let* ((tex-file (get-buffer-file-name))
         (pdf-file (concat (car (split-string (get-buffer-file-name) "\\.")) ".pdf"))
         (line (format nil "~D" (current-line-number)))
         (cmd "rundll32 shell32,ShellExec_RunDLL SumatraPDF")
         (args))
    (setq args (concat "-reuse-instance \"" pdf-file "\" -forward-search \"" tex-file "\" " line))
    (message (concat cmd " " args))
    (call-process (concat cmd " " args)
                  :exec-directory (directory-namestring tex-file))))

(add-hook 'elisp::katex-mode-hook
          #'(lambda ()
       (define-key elisp::*KaTeX-mode-map* '(#\C-c #\p)  'sumatrapdf-forward-search)))

SumatraPDFの設定

SumatraPDF上でダブルクリックするとソースの対応行へ移動するように設定.SumatraPDFのメニューバー > 設定 > オプション > 逆順検索コマンドラインの設定にて:
C:\apps\xyzzy\xyzzycli.exe -g %l "%f"

参考

2014年10月11日土曜日

Windowsでctrl2capしてた人向けMacBook Airのキーリマップ

下記作業は1年以上前に行ったので,情報が古い可能性があります.

Mac使い始めたらキー配置が気持ち悪すぎて頭痛がする程だったのでなんとかした.主にKarabiner(当時はKeyRemap4MacBook)の設定についてメモしておく.デフォルト設定に慣れることができれば一番いいのですが・・・

Windows使用時に標準から変更していたキーは下記の通り:

  • Caps lock > L Control
  • L Control > Caps lock
  • 無変換 > IME off
  • 変換 > IME on

これをMac上で再現していく方針で.
IME関連はgoogle日本語入力を導入してそちらで設定すればよし.USキーボード使ってる人は知らん.

Macで設定したいこと

  • L control > L command > L option > L control の玉突きリマップ
  • Alt + [Shift] + Tab 的に command + [shift] + tab(物理キーの位置で)でアプリケーション切り替えしたい
  • control + tab(物理キーの位置で) はタブ切り替えで頻繁に使うので,それと衝突はさせたくない

Karabiner の private.xml設定

ということで各方面を参考に出来上がった private.xml がこちらになります.

 Command+[Shift]+Tab to Control+[Shift]+Tab
 private.cmd_tab_to_ctl_tab
 __KeyToKey__ KeyCode::TAB, VK_COMMAND | ModifierFlag::NONE, KeyCode::TAB, ModifierFlag::CONTROL_L
 __KeyToKey__ KeyCode::TAB, VK_SHIFT | VK_COMMAND | ModifierFlag::NONE, KeyCode::TAB, ModifierFlag::CONTROL_L | ModifierFlag::SHIFT_L



 Control(L) > Command(L) > Option(L) > Control(L) except application switch
 private.ctlL_cmdL_optL
 __KeyToKey__ KeyCode::CONTROL_L, KeyCode::COMMAND_L
 __KeyToKey__ KeyCode::COMMAND_L, KeyCode::OPTION_L
 __KeyToKey__ KeyCode::OPTION_L, KeyCode::CONTROL_L

 
 
 __KeyToKey__
 KeyCode::TAB, ModifierFlag::OPTION_L,
 KeyCode::TAB, ModifierFlag::COMMAND_L,
 

 
 __KeyToKey__ KeyCode::SHIFT_L, KeyCode::VK_LAZY_SHIFT_L
 __KeyToKey__ KeyCode::SHIFT_R, KeyCode::VK_LAZY_SHIFT_R



 
 Swap Control(L) and Command(L) except application switch
 private.ctlL_and_cmdL
 __KeyToKey__ KeyCode::CONTROL_L, KeyCode::COMMAND_L
 __KeyToKey__ KeyCode::COMMAND_L, KeyCode::CONTROL_L

 
 
 __KeyToKey__
 KeyCode::TAB, ModifierFlag::CONTROL_L,
 KeyCode::TAB, ModifierFlag::COMMAND_L,
 

 
 __KeyToKey__ KeyCode::SHIFT_L, KeyCode::VK_LAZY_SHIFT_L
 __KeyToKey__ KeyCode::SHIFT_R, KeyCode::VK_LAZY_SHIFT_R

その他

  • Karabiner にて Change Fn key > Fn + Letter to Control + Letter を on
  • Karabiner にて Change Yen key を on
  • システム環境設定 > キーボード > F1, F2などのすべてのキーを標準のファンクションキーとして使用 を on

2014年3月27日木曜日

Windows Home Server 2011でMaximaが動かない場合

DEPの例外にwxmaxima.exeを追加する.
コントロールパネル > システム > 詳細設定 > パフォーマンス > データ実行防止
参考:
http://evemedia.org/tetra/2009/07/18/windows_server_2008_r2_rc_maxi

2013年10月5日土曜日

Matlabで吐いたepsが,dvipdfmxで作成したpdf上でズレる

dviでは正しく表示されているのに,dvipdfmxでpdf化するとMatlabで吐いたepsがズレる問題.手元の2verで比較すると,dvipdfmx-20130405 (TeXlive2013同梱) だとズレるが,少し古い dvipdfmx-20120420 だと問題は発生しない.

根本的な原因は,epsのbounding boxの基点が(0,0)になっていないこと.
暫定対処1: 古いverを使う.
暫定対処2: epstopdfでpdfに変換し,pdfで取り込む.またはpdftopsで再変換.
根本対処はMatlabの出力時に左下を原点にあわせるようにすることだが,未解決.

(追記 2014/10/10)
dvipdfmxオプションつければズレなかった・・・
\usepackage[dvipdfmx]{graphicx}

いちおう,カレントフォルダにあるepsファイルをすべてepstopdf > pdftopsするバッチファイル書いた.生成物で上書きするので注意.
@echo off
rem Set this directly as the current directly
pushd %0\..

for %%f in (*.eps) do (
    epstopdf --outfile=%%f.pdf %%f
    pdfcrop %%f.pdf %%f_cropped
 rm %%f
    pdftops -eps %%f_cropped %%f
 rm %%f.pdf
 rm %%f_cropped
)

pause
exit

2013年5月9日木曜日

久しぶりにnyacus

参考: http://lucy.moe-nifty.com/blog/2009/10/windowslinux-88.html

NYACUSの更新版(NYAOS 3.x)が公開されていたので,それを.
top http://www.nyaos.org/index.cgi?p=FrontPage
NYAOS 3000 http://www.nyaos.org/index.cgi?p=NYAOS+3000

ckwについては,NYAOS作者様のページ経由でこちらの方のものを.とりあえず64bit対応してればいっかて思って.
Ru^3 Honpo http://www.vesta.dti.ne.jp/~tsato/software.html#ckw

ckw.exe, ckw.cfg, nyaos.exe, _nya をまとめて同一ディレクトリに放り込む.
#どうかと思う.
ckw.cfgを編集: Ckw*exec: <放り込んだ場所>nyaos.exe

その後やること:
  • _nyaに alias と folder を追記.
  • フォントサイズが小さいので ckw.cfg を編集: Ckw*fontSize: 17

2012年10月31日水曜日

hgで指定のリビジョンと作業セットを比較する

hg diff -r 999 hoge.file

Windowsでgrepしたい(代替コマンド)

Windows版grepでも入れようかと思っていたところ,代替コマンドがあるらしく. そんな高度なことやらないので,grepの完全互換かどうかわからんが.
findstr /SN strings *.txt
使いそうなオプション:
  • /S 現在のディレクトリとすべてのサブディレクトリから一致するファイルを検索します。
  • /N 一致する各行の前に行番号を出力します。

Via Windowsでgrepみたいなコマンド

2012年10月18日木曜日

dvipdfmxでUS letterサイズのpdfを作る

-pオプションでサイズ指定できる.デフォルト値はa4.
dvipdfmx -p letter hoge.dvi
知らんかった.以前にUS letterサイズでどこかに提出したはずなんだが,そのときはどうやったんだろう?

2012年10月15日月曜日

Thinkpad USBキーボード with トラックポイントのキートップを外す

何かこぼしたらしく,右Shift周辺のキーがペタペタするので,キートップを外して掃除をした. キートップの外し方,はめ方をメモしておく.

私は特にこの作業に熟練した者ではないので,あくまで自分の備忘録としてです.

対象キーボード

  • Thinkpad USBキーボード with トラックポイント
  • Model No.: SK-8855
  • 2011年購入

この辺↓の情報を参考に作業開始.

外し方

参考ページに書いてあるように,キーを特定の方向から剥がすように持ち上げる.キー列によって爪の方向が異なるので注意する.
図中の矢印方向から取り外せる.
外した後.
キートップの裏側.
赤丸と青丸が爪がはまる位置.赤の方向から外す.

はめ方

キートップ裏の爪とパンタの位置を合わせて,グリグリやればはまる. 片側ずつはめるようにするとよい.
Shiftキー,Enterキーは,針金バネが所定の爪に収まるように注意する.