Windows」カテゴリーアーカイブ

プレゼン動画作りのメモ

Windows 10 の場合

  • PDF またはパワポをフルスクリーン表示して、Xbox Game Gear のキャプチャ機能で録画
    • 途中で噛んだりしても後で編集すればいいので続けて取った方が結果早い
  • Windows フォトや Adobe Premiere Pro などでトリミング&編集
  • 書き出した後、HandBrake などで再エンコードして容量削減
    • CPU でエンコードしたほうがファイルサイズは小さくなる

Adobe Premiere Pro の使い方

  • アセンブリ > メディアブラウザー から素材となるメディア(動画)を 右クリック > 読み込み
  • プロジェクト:○○ からメディアを タイムライン にドラッグして配置
  • エフェクト > オーディオエフェクト > ノイズリダクション / レストレーション から クロマノイズ除去リバーブを除去 を各メディアに適用
  • トリミングするときは、レーザーツール を使ってメディアを分割し、リップル削除 で削除と同時にタイムラインを左詰め
  • 動画の書き出しは、アセンブリ で編集済みの項目を選択した状態で ファイル > 書き出し > メディア
    • 設定は現状よくわかっていないので、H.264 でハードウェアエンコードできる設定を使用。

便利なショートカット

  • 再生、順方向加減速:L
  • 停止:K
  • 逆再生、逆方向加減速:J
  • カーソル位置でレーザーツール(編集点の追加):Ctrl + K
  • クリップ選択、移動:Ctrl + ↑ or Ctrl + ↓
  • リップル削除:Shift + Delete

参考資料

Windows 10 の eSIM を使ったモバイル通信プラン、便利そうだけど使うまでが難しい

今持ち歩き用の PC として Surface Pro LTE Advanced を使っている。
事務作業には十分なスペックと軽さ・薄さで満足度は高い。

このモデルは、nanoSIM が挿さるのと、eSIM が内蔵されていて、モバイル通信プランを購入することで世界各地でモバイルネットワークに接続可能。

nanoSIM スロットには国内で使える年間契約の SIM を挿していて、海外渡航時に eSIM に切り替え、Ubigi などの通信プランを購入して使う、というのが便利そう。
ポケット WiFi 持ち歩かなくていいって素晴らしい。

ところがどっこい、eSIM を使うのが結構難儀だった。

eSIM でモバイル通信プランを購入する画面までたどり着けない。
eSIM には、「eSIM プロファイル」と「APN」を設定する必要がある。その両方が適切に設定されていないと圏外表示になり、何もできない。

自分の場合、デフォルトの「eSIM プロファイル」と「APN」は機能しなかったみたいで、Ubigi の問い合わせから eSIM プロファイルをダウンロードする方法を教えてもらい、さらに「APN」を設定するための情報を教えてもらって初めて圏外から脱することができた。

自分の場合、nanoSIM の設定の時もそうだったが、eSIM でも APN 設定するときに、「インターネットとアタッチ」を選ぶ必要があった。

ろくな説明をしなかったのに、適切な作業手順を提示してくれた Ubigi のサポートは素晴らしい。
(一方 Microsoft のサポート情報の役に立たなさよ・・・)

その後、さらに一つ重要なポイントとして、自分の環境では、2つの SIM を切り替える際、「詳細オプション」の「APNを添付する」から利用したい APN の「編集」を一度選択し、そのまま「保存」する必要がある。
これをしないと、アンテナピクトは立つが接続されない。

モバイルネットワークに PC 単体で接続できるのはとても便利なだけに、利用方法が難しかったり、うまくいかないときの対処法がわかりづらいのはもったいないなと思う。

Dell Inspiron 14 3000 (3452) を修理した話

最近は Dell Inspiron 14 3000 (3452) を愛用してる。

アメリカ留学中に現地で購入。アメリカでは日本で販売されているよりも少しスペックが高いモデルを選択できた。プロセッサが Pentium N3700 になってるのと、メモリが 4GB 載っているのと、SATA のコネクタがついているのが違い。

N3700 は時々処理が引っかかるけど、そもそもこのマシンで思い処理をしないので問題ない。一番の用途は VNC, RDP, SSH なので。
#技適の問題が、、、ってことで、USBの無線LAN子機と Bluetooth ドングルを付けて使っていた。

英語キーボードなのがありがたいし、結構気に入って使っていたのだけれど、この前うっかり液晶を割ってしまった。

そこで、国内版の中古を 15,000 円ほどで購入し、中身をばらして修理した。いわゆる2個1。
ばらした過程で分かったことは、eMMC 搭載モデルはフラッシュがメインボードにはんだ付けされてるということと、 SATA のためのコネクタが付いていないということ。コスト削減の努力が見られる。国内版のモデルを購入したことにより、無線モジュールを国内版のものに付け替えた。
廉価版モデルということもあってか、PCの部品点数も相当少なく、かなり最適化されている印象。

【解決済】Windows で vimtex 使ってたら main を見つけてくれなくなった話

vimtex いい。ところが、プラグインをアップデートしたら Windows 環境で main を見つけてくれなくなってしまった。それまではできていたはずなのに・・・

調べてみたら、以下のコミットが原因。
https://github.com/lervag/vimtex/commit/68e6e3b27a04b518d64a9d67c4d987cedf80ff85

let l:file = matchstr(l:line,
      \ '\v\\%(input|include|subimport\{[^\}]*\})\s*\{\zs\f+')

windows 環境下だと、isfname に { や } が含まれているので } が正規表現にマッチしてしまうのが理由。
正規表現の最後に } を書いてくれればそれで良いのだけど、調べてみると以下の記述を発見。

                                                           vimtex-faq-isfname
Q: Vim throws error when jumping to file with gf.
A: This might be due to the isfname setting, which by default contains {,}
   on windows.  isfname is a global option, and can therefore not be set by
   vimtex.  Suggested solution is to remove {,} from isfname by:

  set isfname-={,}

ということで、 .vimrc に追記した。

"" lervag/vimtex
let g:vimtex_latexmk_continuous = 1
let g:vimtex_latexmk_background = 1
"let g:vimtex_latexmk_options = '-pdf'
let g:vimtex_latexmk_options = '-pdfdvi'
"let g:vimtex_latexmk_options = '-pdfps'
if (has('win32') || has('win64') || has('win32unix'))
  set isfname-={,}
  let g:vimtex_view_general_viewer = 'SumatraPDF'
  let g:vimtex_view_general_options
        \ = '-reuse-instance -forward-search @tex @line @pdf'
  let g:vimtex_view_general_options_latexmk = '-reuse-instance'
elseif (has('mac'))
  let g:vimtex_view_general_viewer
        \ = '/Applications/Skim.app/Contents/SharedSupport/displayline'
  let g:vimtex_view_general_options = '-r @line @pdf @tex'

  " This adds a callback hook that updates Skim after compilation
  let g:vimtex_latexmk_callback_hooks = ['UpdateSkim']
  function! UpdateSkim(status)
    if !a:status | return | endif

    let l:out = b:vimtex.out()
    let l:tex = expand('%:p')
    let l:cmd = [g:vimtex_view_general_viewer, '-r']
    if !empty(system('pgrep Skim'))
      call extend(l:cmd, ['-g'])
    endif
    if has('nvim')
      call jobstart(l:cmd + [line('.'), l:out, l:tex])
    elseif has('job')
      call job_start(l:cmd + [line('.'), l:out, l:tex])
    else
      call system(join(l:cmd + [line('.'), shellescape(l:out), shellescape(l:tex)], ' '))
    endif
  endfunction
endif
if (!has('clientserver'))
  let g:vimtex_latexmk_callback = 0
endif

Windows の gVim で set shellslash してるときに editorconfig-vim を使うと設定のロードに失敗する話

editorconfig って、考え方がいいと思う。エディタ横断、協働を助ける。
プロジェクトに関わっている人がそれぞれの心地よい道具を使いながら、必要な部分を必要なだけすり合わせるというのが素晴らしい。

vimtex を使うためには set shellslash する必要があるんだけど、すると editorconfig-vim をロードするときにエラーが出る。
いろいろ調べた結果、editorconfig-vim\plugin\editorconfig.vim が原因だった。
現状は以下のようにするとエラーを回避することができる。

function! s:UseConfigFiles_Python_External() " {{{2
" Use external python interp to run the python EditorConfig Core

""" I added from HERE """
if has('win32') && empty(matchstr(&shell, 'sh'))
let l:old_shellslash = &l:shellslash
setlocal noshellslash
endif
""" I added to HERE """

let l:cmd = shellescape(s:editorconfig_python_interp) . ' ' .
\ shellescape(s:editorconfig_core_py_dir . '/main.py')

""" I added from HERE """
" restore 'shellslash'
if exists('l:old_shellslash')
let &l:shellslash = l:old_shellslash
endif
""" I added to HERE """

call s:SpawnExternalParser(l:cmd)

return 0
endfunction

Windows 10 で gVim + vimtex + SumatraPDF で快適 TeX 執筆環境を作る

Mac で MacVim + vimtex + skim は比較的簡単なんだけど、 Windows で gVim + vimtex + SumatraPDF はちょっと大変だった。

嵌りポイントは、.vimrc で

set shellslash

するところと、
:h vimtex

して見れる、inverse search に関する設定の部分、
let g:vimtex_view_general_viewer = 'SumatraPDF -reuse-instance '
    \ . '-inverse-search "gvim --servername ' . v:servername
    \ . ' --remote-send \"^<C-\^>^<C-n^>'
    \ . ':drop \%f^<CR^>:\%l^<CR^>:normal\! zzzv^<CR^>'
    \ . ':execute ''drop '' . fnameescape(''\%f'')^<CR^>'
    \ . ':\%l^<CR^>:normal\! zzzv^<CR^>'
    \ . ':call remote_foreground('''.v:servername.''')^<CR^>\""'

が罠で、(少なくとも Windows では)効かなくて、 SumatraPDF の設定に

と書いておくとうまく言うというところ(gvim のパスは適宜読み替えること)。

というわけで、現在の vimtex 関連の設定(.vimrc)はこんな感じ。
(関連:【解決済】windows で vimtex 使ってたら main を見つけてくれなくなった話

"" lervag/vimtex
let g:vimtex_latexmk_continuous = 1
let g:vimtex_latexmk_background = 1
"let g:vimtex_latexmk_options = '-pdf'
let g:vimtex_latexmk_options = '-pdfdvi'
"let g:vimtex_latexmk_options = '-pdfps'
if (has('win32') || has('win64') || has('win32unix'))
  let g:vimtex_view_general_viewer = 'SumatraPDF'
  let g:vimtex_view_general_options
        \ = '-reuse-instance -forward-search @tex @line @pdf'
  let g:vimtex_view_general_options_latexmk = '-reuse-instance'
elseif (has('mac'))
  let g:vimtex_view_general_viewer
        \ = '/Applications/Skim.app/Contents/SharedSupport/displayline'
  let g:vimtex_view_general_options = '-r @line @pdf @tex'

  " This adds a callback hook that updates Skim after compilation
  let g:vimtex_latexmk_callback_hooks = ['UpdateSkim']
  function! UpdateSkim(status)
    if !a:status | return | endif

    let l:out = b:vimtex.out()
    let l:tex = expand('%:p')
    let l:cmd = [g:vimtex_view_general_viewer, '-r']
    if !empty(system('pgrep Skim'))
      call extend(l:cmd, ['-g'])
    endif
    if has('nvim')
      call jobstart(l:cmd + [line('.'), l:out, l:tex])
    elseif has('job')
      call job_start(l:cmd + [line('.'), l:out, l:tex])
    else
      call system(join(l:cmd
        \ + [line('.'), shellescape(l:out), shellescape(l:tex)], ' '))
    endif
  endfunction
endif
if (!has('clientserver'))
  let g:vimtex_latexmk_callback = 0
endif

Windows10 の標準アプリを削除してメモリ使用量削減

標準アプリには使わないものも多く、しかも GUI からアンインストールできないものもある。しかも、それらが結構な量のメモリを消費している感じがしたので、 PowerShell を使ってアンインストールした。

Windows10の標準アプリを削除する裏技!

自分は今のところ標準のメーラを通知用に使って、メールの読み書きには thunderbird を使っている。Thunderbird が Action center に対応してくれればメーラも削除可能なのだけれど。

すると、正確には測ってないけど起動直後 1.6GB くらいだった使用メモリ量が 1.2GB くらいまで減った(気がする)。
使わないアプリが入っているのはまだ許せるとして、使わなくてもバックグラウンドでリソースを消費するのは良くないですね。こういう部分がユーザエクスペリエンスを下げていると思う。

Windows 10 のメーラは Thunderbird にした

Windows 10 結構いい。気に入ってきた。けど、標準のメールアプリはテキスト形式で送れないのが痛い。個人的には、個人で HTML メール送ってくるのは勘弁してほしい派。

少し調べた結果、結局 Thunderbird を使うことにした。
今後もサポートが続くことを切に願いつつ・・・

設定したことをいくつかまとめておく

  • 連絡先は gContactSync というプラグインを使うと GMail アカウントと同期できる
  • フォントは Migu 1P, 1M を使用
  • フォントがなんかにじんで気持ち悪かったので設定を変更