2015年8月28日金曜日

Ubuntuでターミナルからgoogle検索できるようにする

Ubuntu等のLinuxで,ターミナルから以下の動作を呼び出せるようにしたい.

  • chromiumブラウザに新規タブを開く
  • 開いたタブで,指定したキーワードでgoogle検索を実行

~/.bashrc に以下の内容を追記する.

function google() {
      QUERY=''
      for arg in $@; do
          if [ "$arg" = "$1" ]; then
              QUERY=${QUERY}${arg}
          else
              QUERY=${QUERY}+${arg}
          fi
      done
      chromium-browser www.google.co.jp/search\?q=${QUERY} &
}

保存したら,以下のコマンドで,有効化する.

$ source ~/.bashrc 


これで,ターミナルで

$ google hoge foo bar 

などと入力すると,「hoge」「foo」「bar」でAND検索ができる.

TildaやGuakeのようなドロップダウン型のターミナルで使うと便利.


2015年7月3日金曜日

LGL22のダウングレード

2015/6/23のソフトウェア更新によって,LGL22のSIMフリー化が塞がれた.

http://k-tai.impress.co.jp/docs/news/20150623_708303.html

ソフトウェア更新をもとに戻すための手順のメモ.

1. ダウンロード

  • LGUnitedMobileDriver: http://www.lg.com/jp/support-mobile/lg-LGL22
  • LG Flash Tool 2014: http://forum.xda-developers.com/showthread.php?t=2797190
  • LGL2220D_00.kdz: http://forum.xda-developers.com/showpost.php?p=51177684

2. インストール

  • LGUnitedMobileDriverをインストール
  • LG Flash Tool 2014のzipファイルを解凍
  • LGL2220D_00.kdzは,上記zipファイル解凍でできたフォルダに入れておく

3. PCとLGL22の接続

  • LGL22の電源をOFFにする
  • ボリュームアップボタンを押しながらUSBケーブルを接続
  • 以上により,Download modeとして起動する

4. COMポート設定

  • PCのデバイスマネージャを開き,ポート(COMとLPT)を展開
  • LGE AndroiNet USB Serial Port(COM**)を右クリック→プロパティを開く
  • ポートの設定→詳細設定→COMポート番号のプルダウンからCOM41を選択

5. LGFlashTool実行

  • LGFlashTool2014.exeを起動
  • 「Select KDZ file」でLGL2220D_00.kdzを選択
  • 「Normal Flash」を押す
  • 次の画面で「START」を押す
  • 次の画面で「OK」を押す
  • 途中,何かダイアログが出るが,プログレスバーは進んでいる.そのままダイアログを放置して,プログレスバーが100%になるまで待つ.

2014年5月7日水曜日

EPSのbounding boxを自動調節

論文作成時に,画像を載せるためにEPSファイルを使う場合について.
WindowsでpptxからEPSを作る場合,EPSプリンタでファイル出力した後にGhostviewからbounding boxを設定するという方法があるが,毎回Ghostviewを開くのはけっこう面倒.

Epstoolというのを使えばコマンドラインから自動調節できるらしいが,自分の環境ではうまく動かなかった.
そこで,ghostscriptのコマンドを使ってbounding boxを自動調節するバッチを作った.

ghostscriptのオプションで「-sDEVICE=bbox」とすると,指定したソースファイルのbounding boxを(必要最小限な領域で)計算して返してくれる.

gswin32c -q -dNOPAUSE -dBATCH -sDEVICE=bbox <ファイル名>

その結果を使って,EPSファイルの中身を書き換えれば良い.
書き換えはただのテキスト置換なので,いくらでもやりようはあると思う

@echo off
setlocal enabledelayedexpansion

set currentpath=%cd%
set /p src_filename="Source File Name: "
set /p dst_filename="New File Name: "

gswin32c -q -dNOPAUSE -dBATCH -sDEVICE=bbox %src_filename% 2> tmp.txt
set /p bbox=”” < tmp.txt
del tmp.txt

<src_filename内の「%%BoundingBox:」で始まる行を変数bboxの値で置き換えてdst_filenameに書き出す処理>

endlocal
pause

EPSファイル書き換えの注意点として,EPSファイル冒頭部に「%%BoundingBox: (atend)」から始まる行がある場合,bounding boxはファイル末尾に記載されているため,そちらを書き換える必要がある.(冒頭部は書き換えない)

2014年2月24日月曜日

Outlookの予定表をAndroidのカレンダーから読めるようにする

会社の予定表はOutlookで管理されているのだけど,これを社外でも確認できるようにしたい.
というわけで,

  • Outlookからサーバにカレンダーを定期upload
  • Android上でサーバから定期read

という感じのことがやりたい.

準備として,フリーのWebDAVサーバのアカウントを作る.
今回は,Driveeを使った.
アカウントを作ると,以下がWebDAVサーバのURLとなる.

 https://ユーザ名.drivee.jp/

次に,Outlookの「ホーム」タブにある「オンラインで公開」から上記WebDAVサーバのURLを設定する.
すると,Driveeにicsファイルがuploadされる.

Android側では,今回はICSSyncというアプリを使った.
Playストアからインストールして,アプリを起動し,「Add feed」からuploadしたicsファイルのURLを設定する.
URLは,Outlookの「オンラインで公開」から「発行オプションの変更」を選ぶと確認できる.

 https://ユーザ名.drivee.jp/****_の予定表.ics

のようになっているはず.

閲覧は,Androidのカレンダーアプリから行なう.
カレンダーアプリのメニューから「カレンダーを表示する」を選ぶと,一覧の中に「ICSSync」のカレンダーがあるはず.
チェックが入っているのに表示されない場合は,一度チェックを外してカレンダー画面に戻ってから,再度「カレンダーを表示する」でチェックを入れると表示されるかも.


2014年2月7日金曜日

IEEEのLaTeXテンプレート

IEEEはLaTeXのテンプレートを公開している.

http://www.ieee.org/conferences_events/conferences/publishing/templates.html

が,これが意外とくせもので,

・図のキャプションが強制的に左寄せになる
・paragraphの間に余分なスペースが入る

といった問題が生じることがある.
CTANで配布している版を使うと,解消される.

http://www.ctan.org/tex-archive/macros/latex2e/contrib/IEEEtran/

バージョン番号は変わらない(2014/2/7時点でどちらも1.8)が,CTANのほうが微妙に新しくてあちこち修正されているみたい.

subfigのキャプションを括弧付きで参照する

LaTeXで図を縦方向や横方向に2つ以上並べたい場合,subfig.styを使用する.
例えば縦に2つ並べる時は,以下のような感じ.


\usepackage[caption=false]{subfig}

  :
  :

\begin{figure}[!t]
  \centering
  \subfloat[副キャプション1]{
    \includegraphics[width=\linewidth]{****.eps}
    \label{fig_sub1}
  }
  \\
  \subfloat[副キャプション2]{
    \includegraphics[width=\linewidth]{****.eps}
    \label{fig_sub2}
  }
  \caption{全体キャプション}
  \label{fig_1}
\end{figure}

で,図の番号を参照する時に,普通に

図\ref{fig_sub1}

とか書くと,「図1a」「図1b」のように出てきたりするが,これを「図1(a)」「図1(b)」のように括弧付きにしたい場合にどうしたら良いかという話.

前置きが長くなったが,やり方は簡単で,

図\ref{fig_1}\subref{fig_sub1}

とすればOK.


参考ページ: http://tex.stackexchange.com/questions/16291/adding-parentheses-around-subfig-references

2014年2月6日木曜日

英文論文でマルバツ表を作る

英語で論文を書く際,こんな感じの表を書きたくなることがある.

機能1機能2
手法1×
手法2×

LaTeXだと「\begin{table}~」で表を作ればいいのだが,問題はセルの中身で,英語だと普通○×は使わない.
じゃ何を使うのかというと,以下のようなパターンがあるらしい.(いずれも前者が該当,後者が非該当の意味)

・チェックマーク(「レ」みたいなやつ)とバツマーク(×)
・チェックマークと空欄
・「yes」と「no」

今回は,チェックマークとバツマークを使う場合について.
LaTeXの場合,チェックマークについては

\usepackage{amssymb}

しておいて「\checkmark」で表示できる.
バツマークは「\times」が使えるので,これで表をつくると下のような感じになる.


なんかイマイチだな・・・という人は,pifont.styを使うのもオススメ.

pifont.styは以下からDLできる.


ダウンロードして解凍したら,コマンドプロンプトで解凍先フォルダに移動し,以下のコマンドを実行する.

platex pifont.ins

すると,解凍先フォルダにpifont.styができあがっているので,これをtexファイルと同じ場所に突っ込んでおく.で,

\usepackage{pifont}
\newcommand{\cmark}{\ding{51}}%
\newcommand{\xmark}{\ding{55}}%

としておくと,「\cmark」「\xmark」でそれぞれいい感じのチェックマークとバツマークが使えるようになる.
例えば下のような感じ.