BLOGTIMES
«Prev || ... 78 · 79 · 80 · 81 · 82 · 83 · 84 · 85 · 86 ·... | | Next»
2022/03/27

LaTeX Workshop から WSL の Ubuntu の LaTeX を呼び出す

wsl  ubuntu  LaTeX 

Windows 上に LaTeX のビルド環境を作るのは Chocolatey でやるのが一番楽だと思っているのですが、WSL の Ubuntu 上に構築する手もあるなぁとちょっと思ったので、さっそく試してみました。

WSL 上の Ubuntu に texlive をインストール

やり方は Linux - TeX Wiki を参考に以下のようしました。

sudo apt-get install ghostscript wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz tar xvf install-tl-unx.tar.gz cd install-tl-2* sudo ./install-tl -no-gui -repository http://mirror.ctan.org/systems/texlive/tlnet/ sudo /usr/local/texlive/????/bin/*/tlmgr path add sudo tlmgr install collection-langjapanese utf8add url cite latexmk

初め ghostscript のインストールを忘れていて、.tex のビルド時に .eps が読み込めないというエラーが出て焦りました。

LaTeX Workshop との連携

settings.json を例えば以下のような感じで設定します。
つまり、latex-workshop.latex.toolsの各commandの値をargsの先頭に移動し、各commandの値をwslに変更してやります。
これで VS Code から WSL 上の LaTeX を使ったビルドが可能になります。

settings.json

{ "latex-workshop.latex.autoBuild.run": "never", "latex-workshop.latex.recipes": [ { "name": "default", "tools": [ "uptex2pdf_s", "pbibtex", "uptex2pdf_s", "uptex2pdf_s", "uptex2pdf" ] } ], "latex-workshop.latex.tools": [ { "name": "uptex2pdf_s", "command": "wsl", "args": [ "ptex2pdf", "-u", "-l", "-s", "-ot", "-kanji=utf8 -synctex=1 -interaction=nonstopmode -file-line-error", "%DOCFILE%" ] }, { "name": "uptex2pdf", "command": "wsl", "args": [ "ptex2pdf", "-u", "-l", "-ot", "-kanji=utf8 -synctex=1 -interaction=nonstopmode -file-line-error", "%DOCFILE%" ] }, { "name": "pbibtex", "command": "wsl", "args": [ "pbibtex", "%DOCFILE%" ], "env": {} }, ] }

    at 21:59 |
    2022/03/26

    Overleaf にいろいろと LaTeX のスタイルが転がっている

    LaTeX  paper 
    Templates — Japanese - Overleaf にいろいろと LaTeX のスタイルが転がっている

    LaTeX は環境構築とスタイルファイルさえあれば Word なんかよりも作業しやすいのですが、そこまで行くのが問題という話はあります。

    最近は OverleafCloud LaTeX のようにオンラインのサービスも充実して来ましたし、Chocolatey で一撃インストールすることもできるようになったので、環境の構築に関しては化なりハードルが下がりました。

    一方で、スタイルファイルに関しての問題はそのままです。
    論文誌や国際会議等では Author's kit にスタイルファイルが入っている事がありますが、そうでない場合もそこそこあります。
    そんな場合に使えそうなスタイルのコレクションを Overleaf で見つけたのでメモ。

    このページをちょっと覚えておくと良さそうです。


      at 18:55 |
      2022/03/26

      参考文献の管理に便利な「Zotero」

      paper 

      Zotero という論文用の参考文献を管理するためのアプリを見つけたのでメモ。

      これを使うと論文の著者やタイトル、雑誌名などの文献情報と本文の PDF を紐付けて管理することができます。
      しかも文献の情報はブラウザのプラグインを使うと簡単に登録できます。

      こんな便利なものがあったとは知りませんでした。


        at 17:50 |
        2022/03/25

        インターホンが壊れた&地震で壁紙が・・・

        賃貸  家電  repairing  failure 
        Panasonic インターホンセット VL-A157SAX (電源直結式)壁紙の割け - インターホンが壊れた&地震で壁紙が・・・

        先日からアパートのインターホン(VL-A457SAX*1)が故障して困っています。
        これについては管理会社から貸主に連絡して修理待ちになっています。

        地震による設備の破損は貸主負担なので・・・

        追加で 3/16 の地震の際に壁紙にひび割れが入ってしまったので、修理の見積りのついでに業者に写真を撮ってもらうことにしました。

        地震による設備の破損は貸主負担なので、地震で壊れた物がある場合には自己負担員ならないようにきちんと管理会社に伝えて証跡を残しておく必要があります。


        at 22:51 |
        2022/03/25

        ESXi のコマンドラインで装着されているメモリの種類を確認する

        esxi 

        ESXi のコマンドライン上から装着されているメモリの情報を得る方法が分かったのでメモ。
        これまで調べたことがなかっただけで、ちゃんと VMWare のナレッジベースに詳細が記載されていました。

        ESX/ESXi ホストの各スロットにインストールされている RAM の容量を確認する (1003587)

        2. 次のいずれかのコマンドを root ユーザーとして実行します。
        ・dmidecode|less
        ・smbiosDump
        3. 出力で、Memory Device で始まるテキストのブロックを探します。 Size または Max. Size は、インストールされているメモリの容量を示します。

        実際 Unbuffered ECC と Registered ECC メモリのマシンで試してみたらこんな感じでした。

        DDR4-3200 Unbuffered ECC の場合

        Memory Device (Type 17): #58 Location: "DIMM_A1" Bank: "BANK 0" Manufacturer: "Kingston" Serial: "99999999" Part Number: "9965745-020.A00G" Memory Array: #50 Error Info: #57 Form Factor: 0x09 (DIMM) Type: 0x1a (DDR4) Type Detail: 0x4080 (Synchronous, Unregistered) Data Width: 64 bits (+8 ECC bits) Size: 32 GB Max. Speed: 3200 MT/s Rank: 2 Configured Speed: 3200 MT/s Min. Voltage: 1200 mV Max. Voltage: 1200 mV Configured Voltage: 1200 mV Technology: 0x03 (DRAM) Mode Capability: 0x0008 (Volatile) Firmware Version: "Unknown" Module Manufacturer ID: 0x9801 Volatile Size: 34359738368 bytes

        DDR4-3200 Reg. ECC の場合

        Memory Device (Type 17): #4352 Location: "A1" Manufacturer: "80AD80B380AD" Serial: "99999999" Asset Tag: "99999999" Part Number: "HMA84GR7CJR4N-XN" Memory Array: #4096 Form Factor: 0x09 (DIMM) Type: 0x1a (DDR4) Type Detail: 0x2080 (Synchronous, Registered) Data Width: 64 bits (+8 ECC bits) Size: 32 GB Max. Speed: 3200 MT/s Rank: 2 Configured Speed: 3200 MT/s Min. Voltage: 1200 mV Max. Voltage: 1200 mV Configured Voltage: 1200 mV Technology: 0x03 (DRAM) Mode Capability: 0x0008 (Volatile) Volatile Size: 34359738368 bytes

          at 21:49 |
          2022/03/24

          Python で正規表現の構文木を得るには

          python  regex 

          Python で正規表現を構文解析だけした結果(内部表現)を得る方法がないかと思って調べてみたところ、sre_parseを使えばできることが分かったのでメモ。

          例えば、メールアドレスにマッチする正規表現^[a-zA-Z0-9_+-]+(.[a-zA-Z0-9_+-]+)*@([a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]*\.)+[a-zA-Z]{2,}$)を parse すると [(AT, AT_BEGINNING), (MAX_REPEAT, (1, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57)), (LITERAL, 95), (LITERAL, 43), (LITERAL, 45)])])), (MAX_REPEAT, (0, MAXREPEAT, [(SUBPATTERN, (1, 0, 0, [(ANY, None), (MAX_REPEAT, (1, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57)), (LITERAL, 95), (LITERAL, 43), (LITERAL, 45)])]))]))])), (LITERAL, 64), (MAX_REPEAT, (1, MAXREPEAT, [(SUBPATTERN, (2, 0, 0, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57))]), (MAX_REPEAT, (0, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57)), (LITERAL, 45)])])), (MAX_REPEAT, (0, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57))])])), (LITERAL, 46)]))])), (MAX_REPEAT, (2, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90))])])), (AT, AT_END)] という表現を得ることができます。

          この表現を sre_compile でコンパイルすると実際に正規表現として利用できるようになるようです。

          $ python Python 3.9.10 (main, Feb 27 2022, 15:02:07) [GCC 4.8.5 20150623 (Red Hat 4.8.5-44)] on linux Type "help", "copyright", "credits" or "license" for more information. >>> import sre_parse >>> import sre_compile >>> sre = sre_parse.parse("^[a-zA-Z0-9_+-]+(.[a-zA-Z0-9_+-]+)*@([a-zA-Z0-9][a-zA-Z0-9-]*[a-zA-Z0-9]*\.)+[a-zA-Z]{2,}$") >>> sre [(AT, AT_BEGINNING), (MAX_REPEAT, (1, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57)), (LITERAL, 95), (LITERAL, 43), (LITERAL, 45)])])), (MAX_REPEAT, (0, MAXREPEAT, [(SUBPATTERN, (1, 0, 0, [(ANY, None), (MAX_REPEAT, (1, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57)), (LITERAL, 95), (LITERAL, 43), (LITERAL, 45)])]))]))])), (LITERAL, 64), (MAX_REPEAT, (1, MAXREPEAT, [(SUBPATTERN, (2, 0, 0, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57))]), (MAX_REPEAT, (0, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57)), (LITERAL, 45)])])), (MAX_REPEAT, (0, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90)), (RANGE, (48, 57))])])), (LITERAL, 46)]))])), (MAX_REPEAT, (2, MAXREPEAT, [(IN, [(RANGE, (97, 122)), (RANGE, (65, 90))])])), (AT, AT_END)] >>> comlied = sre_compile.compile(sre) >>> comlied.match("hoge@example.com") <re.Match object; span=(0, 16), match='hoge@example.com'> >>> comlied.match("hoge..@example.com") >>>

          これを上手く使えば正規表現同士を自動的に合成するようなライブラリを作ったりすることができそうです。


            at 23:13 |

            4/1 から「プラスチック資源循環促進法」が施行に

            moe 

            新年度からプラスチック資源循環促進法(プラスチックに係る資源循環の促進等に関する法律及び下位法令)が施行になります。

            2020 年に行われたレジ袋のように「プラスチックのスプーンや、ストローが有料化がされるのでは?」という話が TL に流れたりしていましたが、どうやらそれは回避される見込みのようです。ただ、なにも変わらないというわけではなく、プラスチックの材質変更があったり、将来的には廃止が視野に入れられていたりはするようです。

            セブン、ローソン、ファミマ……「スプーン有料化するの?」脱プラ新法で変わる街の景色 | Business Insider Japan

            各社バイオマスプラスチックや生分解性プラスチックの使用、あるいは持ち手部分に穴を開けるなど、プラスチックの使用量を削減することで対応する方針だ。
            Twitterなどでは、今回の新法施行に伴い、「コンビニのスプーンやフォークが有料になるのでは?」という噂も流れていたが、各社有料化は避けている。


              at 17:09 |
              2022/03/23

              23 卒の東大生が注目するのは NRI, Accenture, Sony

              就活  ranking  nri  労働環境 

              OpenWork が 2023 卒の東大生が注目している企業のランキングを公表していたのでメモ。

              1 位はどちらも NRI(野村総合研究所)というのでちょっと驚きました。
              僕からみれば NRI は SIer ですが、ランクインした他の会社を見てみるとアクセンチュアとか、PwCコンサルティング、デロイトトーマツ、ボスコン、マッキンゼーなど全体的にコンサルが多いような印象なので、NRI とってもコンサル会社のひとつという見られ方なのかもしれません。

              23卒就活生が選ぶ、就職注目企業ランキング【大学別編】 OpenWork 働きがい研究所

              OpenWorkに登録している23卒学生が検索した企業を集計した今回のランキング。東大生と京大生の1位は共に野村総合研究所となりました。東大生のランキングではコンサルティングファームが全21社中7社と1/3の割合を占めており、中でもマッキンゼー・アンド・カンパニーやボストン・コンサルティング・グループといった外資系戦略コンサルティングファームも多くランクインしました。

                at 23:12 |

                VSCode の LaTeX Workshop で自動ビルドを無効にする

                vscode  LaTeX 

                VS Code で LaTeX を扱う時は LaTeX Workshop を導入することが多いと思います。

                LaTeX Workshop は .tex ファイルを保存するたびに自動的にビルドするようになっているのですが、settings.json に以下の設定("latex-workshop.latex.autoBuild.run": "never")を追加すると自動ビルドをオフにすることができます。

                settings.json

                { "latex-workshop.latex.autoBuild.run": "never", ・・・・・・ }

                ファイル保存のたびに PC が重くて困っていたのですが、これで快適に作業できそうです。


                  at 21:59 |
                  2022/03/22

                  3 月 22 日の停電はなんとか回避

                  節電  electricpower  earthquake  meti 

                  22 日は前日から予定されていたとおり電力の需給状況が非常に厳しく、でんき予報での電力使用状況が14 時台に 107% をマークするなど、本当に大規模停電ギリギリという感じでしたが、揚水発電をフル活用するなどでなんとか乗り切ったようです*1

                  サーバ等を多く抱えているので停電が起こるのではないかと午前中からずっとヒヤヒヤしましたが、なんとかなったようでひとまずは良かったです。ちなみに東電管内は、23 日も予備率が低いようなので、引き続き節電が必要になりそうです。

                  地震で停止している6基の火力発電所が運転を開始するのにはどれくらい時間がかかるんでしょうかね。


                  at 22:18 |
                  «Prev || ... 78 · 79 · 80 · 81 · 82 · 83 · 84 · 85 · 86 ·... | | Next»