錯誤試行

PCや生活の試行錯誤の成果を報告するブログ

EmacsからAnkiに単語登録できるanki-editorを使ってみる

EmacsからAnkiに単語登録したい


Ankiという単語帳アプリがあり、学習時の暗記に利用している。
Ankiを取り上げた記事は、はてなブックマークで何度もホッテントリに上がっていて使いたい気にさせられる。以下にいくつかAnkiのホッテントリを挙げる。

復習のタイミングを変えるだけで記憶の定着度は4倍になる 読書猿Classic: between / beyond readers

決して後退しない学習ーAnkiを使うとどうして一生忘れないのか? 読書猿Classic: between / beyond readers

暗記学習をサポートする学習ソフト、その名も『Anki』(無料) | ライフハッカー[日本版]

高校の授業で反復練習ソフトウェアを使ってみた結果、こうなった - GIGAZINE

(他のホッテントリタイトル 「Anki」 を検索 - はてなブックマーク)

スマートフォンアプリも出ているため、PCで入力しておけば、スマホでいつでもどこでも単語帳学習をすることができ大変便利である。

そこでEmacsからAnkiに単語を登録できるようなlispがあれば便利だと思い探してみたところ、登録する単語帳をEmacsから、しかもorg-modeの書式を使って入力できるという、まさに願ったり叶ったりな機能を持つanki-editorというツールを見つけた。

GitHub - louietan/anki-editor: Emacs minor mode for making Anki cards with Org

インストールは上記GitHubページの手順にならえばできるが、使用法やエラーについて日本語の情報が全く見当たらなかったので、わずかばかりだが分かったことをメモしておく。

anki-editorの使い方などのメモ

対応するEmacsのバージョン

Emacs25以降。手元の環境はEmacs26.3で動作を確認した。

バージョン0.3.0を使用する

最新のバージョン0.3.3はエラーが出てしまい、カードがAnkiに送信できない(下の方に記載)。バージョン0.3.0はカードの送信は問題なくできるので、そちらをMELPAでダウンロードしたanki-editor.elと差し替える。

単語(カード)の登録方法

以下のようなorgファイルを作成して「M-x anki-editor-push-notes」すると、「Default」のデッキにBasicタイプのカードが登録される。下の様式で複数の項目を作れば、作っただけ一度に登録することができる。
「:ANKI_NOTE_TYPE:」を「cloze」にすれば穴埋めタイプのカードとして登録される。
「:ANKI_DECK:」には登録する先のデッキを指定する。
「Front」「Back」はノートタイプのフィールド名やフィールドの数と一致させる。例えばフィールド名が「表面」と「裏面」になっているならそう変更し、「裏の裏」というフィールドがあるなら、「裏の裏」の見出し項目(「** 裏の裏」)を追加する。そうしないと「cannot create note because it is empty」のエラーが出る。

* 適当なカード
   :PROPERTIES:
   :ANKI_DECK: Default
   :ANKI_NOTE_TYPE: Basic
   :END:
** Front
ほげとは何か
** Back
意味を持たない文字列
#+BEGIN_EXPORT html
<img src="hoge.jpg">
#+END_EXPORT

  • 詳しく
    org-modeで使える書式が使用でき、カードはhtmlに変換されてAnkiに登録される。
    上記の例では画像を貼り付けているが、画像はユーザーディレクトリ(linuxでは~/.local/share/Anki2/ユーザー名/)の「collection.media」に置いておけば拾って表示してくれる。
    公式サイトのexamples.orgの例にあるように、org-modeの書式を使って「#+BEGIN_EXPORT」でhtmlを記述できたり、「#+BEGIN_SRC」でプログラムのソースコードが記述できたりする。
    latexはそのまま書けば[latex]〜[/latex]で囲まれてAnkiに出力される。latexの箇所は画像として表示される(dvipngコマンドが必要)。カードを表示するタイミングでその都度latexコンパイル→dvipngで画像出力がされていて、画像をどこか専用のディレクトリに保存しているわけではないので、スマホではlatexの箇所は表示されない(latexソースコードでの表示になる)。

カードは更新が可能

一旦カードを送信すると、「:PROPERTIES:」に「:ANKI_NOTE_ID:」という項目ができ、さらにカードを編集して送信すると、Anki側でもカードが更新される。ただしAnkiのブラウザを閉じておかないと更新されない。

改行を反映させたい

入力した内容をAnkiに送ったところ改行が反映されていない。改行を反映するには空行を入れるか、「M-;」してから以下を入力してEnterするか、予め.emacsに書いておく。
その後にM-x anki-editor-push-notesすると改行が反映されるようになる。

(setq org-export-preserve-breaks t)

(org-mode , export , how to 'force' newline on lines between paragraphs? - Emacs Stack Exchange)

キーバインド

「a-pu」はそのままをタイプすればよい。

キーバインド M-x 意味
M-x a-pu RET anki-editor-push-notes カードをAnkiに送信
M-x an-i RET anki-editor-insert-note カード(orgのツリー)を追加
M-x a-cl-r RET anki-editor-cloze-region リージョンから穴埋め問題を作成

バージョン0.3.0では「anki-editor-insert-note」と「anki-editor-cloze-region」はエラーが出て使用できなかった。

anki-editorはカードの登録専用

anki-editorはAnkiにカードを登録できるが、Ankiからカードを読み込む機能はない。
GitHubIssueで、Ankiからの読み込み機能を追加して欲しいとの要望が出ていたが、作者からは一旦HTMLにしたのをorgに戻すのは難しい、という感じの返答になっていた。
上記リンク先の要望の下の方に、Ankiから読み込む機能を作成したというコメントが付いているので、その手順にならって取り込んだファイルからHTMLタグを取り除いて、手作業でorgの書式に直せば一応実現は可能。

「#+PROPERTY: ANKI_DECK Default」をファイル先頭に書いても「:ANKI_DECK:」を指定しないと送信されない

公式では「#+PROPERTY: ANKI_DECK Default」をファイル先頭に書いておけば、登録するカードごとに「:ANKI_DECK:」を指定する必要はない、と書かれていたが、なぜかデッキが指定されていない旨のエラーが出て送信ができなかった(0.3.3でも同様)。

バージョン0.3.3で発生したエラーについて

最新のバージョン0.3.3を使用した際に発生した不具合をメモとして残しておく。使用したEmacsのバージョンは「GNU Emacs 26.3 (build 2, x86_64-pc-linux-gnu, GTK+ Version 3.18.9) of 2019-12-24」

重複したカードは上書きされない

内容の重複したカードを送信すると「:PROPERTIES:」内の「:ANKI_FAILURE_REASON:」に「Symbol’s function definition is void: err」というエラーが出てしまい、インポート時のように上書き保存はされない。つまり、org-mode側で単語帳を管理しておく、という使い方はできない(デッキからカードを全部消して再度anki-editorから送信すれば別だが、学習履歴が消えてしまう)。
→バージョン0.3.3のバグ?と思われる。

「:ANKI_FAILURE_REASON: Symbol’s function definition is void: err」について

「:ANKI_DECK:」に指定するデッキの名前が間違っていたり、ブラウザを開いたときに表示されている「ソートフィールド」が重複したカードを送信すると表示されるエラーだが、あまりにもそのままのエラー表示で、あたかもインストールの不具合のようであり紛らわしい。
→バージョン0.3.0では、それらのときには対応するエラーメッセージが正しく表示されていたので、内部的なエラー表示と思われる。

「:ANKI_FAILURE_REASON: Wrong type argument: listp, 」について

カードをAnkiに送信する際になぜか表示されるが、単語は問題なく登録されている。気にしないことにする。

感想

これで晴れてEmacsの、しかもorg-modeから単語登録ができるようになり、学習も捗るようになるだろう(願わくば)。
実際には、このインストール作業の試行錯誤で大部時間を浪費してしまったのだが…。

iOSアプリ「beorg」でapache2のWebDAVサーバと同期できるようにする

Emacsのorg-modeをアウトラインプロセッサーとして愛用している。org-modeで書いた文書を手持ちのiPadで閲覧・編集できれば便利だと思い、iOSでorg-mode文書を扱えるというアプリ「beorg」を見つけた。
iCloudDropboxで簡単に同期できるとのことだが、私的なファイルのため、できればローカルで同期をさせたい。
ローカル同期させるにはWebDAVが使えるようだが、beorgのWebDAVの設定がよく分からず、同期に失敗してしまう。Web上を調べても日本語での設定例は見当たらず、お蔵入りとなっていた。
今回時間ができたので再度設定を試みたところ、無事同期できるようになったのでメモとして残しておく。

beorgの設定

Settingsの「FILE SYNCHRONIZATION」の項目を以下のようにした。
PC側のDocumentRootは「org」としてある。
WebDAV URLを「https://localhost/org」としていたところ同期できなかった。

    Sync method	WebDAV
    Folder	/org
    File extension	.org
    WebDAV URL		https://localhost
    Username		(apache2の設定ファイル内 AuthUserFileに登録したユーザー名)
    Password		(apache2の設定ファイル内 AuthUserFileに登録したパスワード)
    Allow untrustd certificate	ON

日本語ファイル名が文字化けする

ただし、orgファイル名が日本語の場合、Filesタブに表示されるファイル名は手元のUbuntu16.04だとパーセントエンコードされた表記になってしまう。beorgに文字コードを指定するような項目は見当たらない。
apacheの設定で、mod_encodingを利用すれば良いとのことでlibapache2-mod-encodingパッケージをインストール、他のモジュールの例にならって/etc/apache2/mods-available/encoding.confを作成して以下のように記述、a2enmod encoding、service apache2 restartしてみたが文字化けは改善されない。
なお、上記パッケージのインストール前でも、iOSアプリ「Documents」(Readdle)のWebDAVでは日本語ファイル名が文字化けすることなく表示されていた。

<IfModule mod_encoding.c>
  EncodingEngine on
  SetServerEncoding UTF-8
  DefaultClientEncoding UTF-8 MSSJIS EUC-JP
  AddClientEncoding UTF-8 "*beorg*"
</IfModule>

どうにかすれば直るのかもしれないが、今回は同期したいファイルが一つだけなので、ひとまずこのまま使うこととした。

参照サイト

NetbeansのPHPデバッグで、開始ファイルがphpでないとブレークポイントが動作しない(解決)

NetbeansにてPHPデバッグブレークポイントが動作しない。環境は以下の通り。

状況

xdebugの設定には以下を記述してあった(Ubuntuではphp.iniではなく以下のxdebug専用の設定ファイルが設けられていた)。
/etc/php/7.0/apache2/conf.d/20-xdebug.ini

zend_extension=xdebug.so
xdebug.remote_enable=on
xdebug.idekey="netbeans-xdebug"

Netbeansのプロジェクト・プロパティ→実行構成の「開始ファイル」にはhtmlファイルを指定していた。
「開始ファイル」にphpファイルを指定してある場合(もしくは「開始ファイル」を空欄にしてプロジェクトURLの最後にphpファイルが来る場合)は、デバッグ実行でブレークポイントが動作するが、htmlファイルを指定するとブレークポイントが動作することなく最後まで実行されてしまった。

対応

/etc/php/7.0/apache2/conf.d/20-xdebug.iniに以下を追記したところ、デバッグを実行した際にブレークポイントが動作した。

xdebug.remote_autostart=on

参照サイト

Firefox Quantumでカスタマイズできないデフォルトショートカットキーを変更する

(2024/02/23)「omni.jaを編集する(zip使用)」を追記

FirefoxがQuantumになりキーカスタマイズアドオンのVimperatorが使えなくなってから久しい。
Vimperatorが開発終了となった当時、Chromeで同じく愛用していたキーカスタマイズアドオンのVimiumをFirefoxでも使ってQuantumに乗り換えるつもりでいたが、Vimiumでキーのリマップ設定をしてみたところ、Ctrl-Fで「ScrollDown」や、Ctrl-Pで「前のタブへ移動」など概ね問題なく設定できるのだが、「次のタブへの移動」に設定したCtrl-Nを押したところ、何かの呪いのように新しいウィンドウが開いてしまった。

以下に引用したVimiumの公式GitHubページのFAQによると、呪わしいことに、特定の(Ctrl-Nのような)Firefoxデフォルトのキーバインドは、拡張機能から書き換えることができないとのこと(Macだけはバインド可能らしい)*1

Why can't I remap Ctrl-N and similar keys on Linux and Windows?
Chrome won't let extensions like Vimium interfere with certain application-level key bindings.
(翻訳)
なぜLinuxWindowsでCtrl-Nのようなキーをリマップできないのですか?
ChromeはVimiumのような拡張機能を、特定のアプリケーションレベルのキーバインディングに干渉させません。

FAQ · philc/vimium Wiki · GitHub

これは使いものにならない…。

ということで、いたしかたなく今日までFirefox ESRとVimperatorを使い続けてきたが、今回デフォルトのキーバインドであるCtrl-Nを次のタブへの移動に置き換えることができたため、めでたくFirefox Quantumへ乗り換えする目処がついた。と言ってもFirefox本体ファイルの書き換えという姑息な(その場しのぎの)方法になってしまうのだが、大きな進歩ということで以下に残しておく。



目次


omni.jaを編集する

(追記:Firefox123.0でも有効であることを確認済。ただし編集する行が少し動いている。同じ記述の箇所を編集すればよい)

Firefoxのバージョンは76.0.1でUbuntu16.04にて使用している。
編集するのは/usr/lib/firefox/browser/omni.jaだが、このファイルはzipアーカイブになっておりこの中のファイルを編集する。
omni.jaはunzipで展開せずにNautilusなどのファイラーから書庫管理ソフト(「アーカイブマネージャー」)で開く。
→Firefox121.0ぐらいからNautilusomni.jaが書庫扱いされなくなってしまったのでzipで展開・圧縮することとした。omni.jaを編集する(zip使用)を参照。

chrome→browser→content→browserと開いていった下のbrowser.xhtmlが目的のファイルとなる。
今回は、Ctrl-Nで新しいウィンドウが開くのを無効にして、かつアドオンからCtrl-Nの書き換えができるようにしたいので、以下のように編集する(マイナスの行を削除、プラスの行を追加)。後は、VimiumでCtrl-NをnextTabに設定すればよい。

browser.xhtml 276行目~

     <keyset id="mainKeyset">
       <key id="key_newNavigator"
            data-l10n-id="window-new-shortcut"
    -       command="cmd_newNavigator"
    +       command=""
    -       modifiers="accel" reserved="true"/>
    +       modifiers="accel" reserved="false"/>

(GitHub - nilcons/firefox-hacks: How to make Firefox usable を参考に修正箇所を改変)

(OSをEmacsキーバインドにしていない場合は、この項目は読み飛ばしてOK)
「command="cmd_newNavigator"」の変更と、OSやアドオンによるEmacsキーバインド設定の衝突について

(ここをクリック・タップして開く)

command=""ではなく、command="Browser:NextTab"(次のタブへ移動)のようにしてもよいが、その場合「新しいタブ」で開いたページや設定画面でもキーバインドが有効のままになって便利なものの、OSレベルでEmacsキーバインドになっている場合(具体的にはUbuntuのgconf-editorコマンドで/desktop/gnome/interface/gtk_key_themeをEmacsにしている場合。以下同じ)に、複数行フォームでの入力時にカーソルを上から下に移動するつもりでCtrl-Nを押すと次のタブへ移動してしまって意図通りに動作しないため煩わしい。
また、キーカスタマイズアドオンのVimiumを使う際も同様に、「b」や「o」の単押しでVomnibarを開いてブックマークおよび履歴をインクリメンタルサーチの上、表示されたドロップダウンから項目を選択しようとしてCtrl-Nを押すと次のタブへ移動してしまい、これも意図しない動作になって煩わしい。
キーカスタマイズはアドオンだけにして、Firefox本体ファイルには手を加えないことにすると、OSレベルでEmacsキーバインドにしている場合の複数行フォームやVomnibarはCtrl-N・Ctrl-Pで上下移動できるが、新しいタブや設定画面ではキーバインドが無効になり、何よりCtrl-Nで次のタブに移動できなくなる。あちらを立てればこちらが立たずなので、どちらを取るかの選択となる。

(追記)キーカスタマイズアドオンのTridactylでは、OSレベルでEmacsキーバインドにしている場合のCtrl-N・Ctrl-Pによる複数行入力フォームやコマンドモードでの上下移動とタブの前後移動が両立することを確認した。設定方法はこのブログのTridactylのエントリ(Tridactylのキーカスタマイズ(モード別に変更など) - 錯誤試行)を参照。

また、新しいタブや設定タブなどでCtrl-Pを押すと印刷ダイアログが開いてしまうのも封殺しておきたい。
300行目

-    <key id="printKb" data-l10n-id="print-shortcut" command="cmd_print"  modifiers="accel"/>
+    <key id="printKb" data-l10n-id="print-shortcut" command=""  modifiers="accel"/>

最後に、アドレスバーからabout:profilesを開いて「アドオンを無効にして再起動」を選び、開いたセーフモード起動のウィンドウを閉じて起動し直すと設定が反映される。

以上でだいぶFirefox Quantumが快適に使えるようになった。
ただ、ここまでやってきて何なのだが、別にVimiumデフォルトのキーバインドである「J」や「K」でタブ移動してもいいような気がしてきた。Ctrl-N・Ctrl-Pよりさらにホームポジションから指を動かさなくてよいから楽だし(セミコロンをワンショットモディファイヤでShift化していれば右手だけでタブ移動できてしまう)。しかし、やはり手に馴染んでいるのはCtrl-N・Ctrl-Pの方なので設定は必要といえる。

omni.jaについての補足

omni.jaは展開せずに中のファイルを編集すること

(2024/2追記)

Firefox121.0ぐらいからNautilusomni.jaが書庫扱いされなくなってしまったのでzipで展開・圧縮することとした。後述のomni.jaを編集する(zip使用)を参照。

先にomni.jaはunzipで展開せずにNautilusなどのファイラーから書庫管理ソフト(「アーカイブマネージャー」)で開く旨を記載したが、その理由は、omni.jaをunzipで展開して中身を編集した後に、zipコマンドで圧縮して元の位置に戻してもfirefoxが起動しないため。
unzipでの展開後、全くアーカイブの中身を変えずにzipで圧縮の上、元の位置に戻してもfirefoxは起動しないので、おそらく圧縮形式の違いが原因と思われる(zipコマンドで圧縮すると元のファイルサイズより太ってしまう)。このためzipアーカイブのまま編集する必要がある。

omni.jaの編集が反映されるタイミングについて

about:profilesを開いて「アドオンを無効にして再起動」を選び、開いたセーフモード起動のウィンドウを閉じて起動し直すとomni.jaの編集内容が反映された。
または、~/.mozilla/firefox/(プロファイル名) 以下のjsonファイルを全て移動ないし削除してもomni.jaの変更が反映された。
設定で参照したサイトの説明によると、omni.jaの設定を反映させるにはキャッシュフォルダを消せばよいらしい。その方法はリンク先を参照。

キー定義ファイル(browserSets.ftl)について

omni.ja内の「localization/en-US/browser/browserSets.ftl」でキー定義がされている。ここに記述されているキー定義を変えて~/.mozilla/firefox/(プロファイル名) 以下のjsonファイルを全消しして再起動すると変更が反映される。設定すれば、「Ctrl-X」で新しいウィンドウを開くといったことができた。

omni.jaを編集する(zip使用)

Firefox121.0ぐらいから、Nautilusでomni.jaが書庫扱いされなくなってしまったのでその対応について。
omni.jaをomni.ja.zipにリネームしてunzipで展開する。中身のファイルを編集するのは同じ。ファイル編集後、展開したディレクトリをzipで圧縮してomni.jaとして配置してもFirefoxは起動しない。再圧縮したomni.jaを確認するとオリジナルよりもファイルサイズが小さくなってしまっているようなので、圧縮率が悪い動画・音声ファイルなど(今回は30MB程度のmp3を使用)をomni.jaを展開したディレクトリ内に入れた上で作成したzipファイルをomni.jaとして配置してやるとFirefoxが正常に起動した。
おそらく起動時にファイルサイズをチェックしているのではないかと思われる。
(追記:2024/4/1)Firefox124.0.1に更新したところ、この「嵩増し」は不要になっていた。omni.jaを展開してbrowser.xhtmlを編集してzipで圧縮、omni.jaとして配置するだけで起動した。

参照サイト

*1:なお、ChromeのVimiumではCtrl-Nで次のタブがバインドできている

PT3+epgrec UNAでGUIメニューからのサスペンド復帰後に録画失敗するのを防止する

PT3+epgrec UNAを専用の録画サーバではなく普段使いのデスクトップPCで使用しているが、普段使いのデスクトップPCなのでサスペンドをすることがある。PT3をlinuxで使う際、サスペンドからの復帰で番組受信ができなくなる不具合があるが、「DN2800MT + CentOS6.3 + PT3 ACPI サスペンド : 事象の水平線 :」 に掲載されている方法で対応できている。
ただ、pm-suspendを実行してもウンともスンとも言わない場合があり、そのようなときにうっかりGUIメニューからサスペンドを実行してしまうと、サスペンド復帰後に番組受信ができず予約録画に失敗する。これで何度か煮え湯を飲まされたので対応することにした。

ユーザwww-dataでsudoコマンドを実行できるようにする(modprobeコマンド限定)。

sudo visudo
# 以下を追記
www-data ALL=(ALL) NOPASSWD:/sbin/modprobe

reclib.phpの913行目に以下「+」の箇所を追記する。

<?php
if( $st['exitcode'] !== 0 ){
    reclog( 'command error['.$st['exitcode'].'] '.$cmd.$rststk, EPGREC_WARN );
+   // チューンできていないようならドライバをロードする
+ 	 if (strpos($rststk,'Cannot tune to the specified channel') !== false){
+ 	   	exec('sudo /sbin/modprobe -r pt3_drv && sudo /sbin/modprobe pt3_drv');
+ 	    }
    return 2;
}else
    if( $rst_view && $rststk!=='' )
?>

またリアルタイム再生の場合にも同様に、GUIメニューからのサスペンド復帰で再生に失敗した際、コマンドを手打ちしてドライバをアンロード・ロードするのが面倒なので、自動で行なわせるようにする。
sendstream.php 271行目〜に「+」の箇所を追記する。

<?php
// 常駐失敗? PID取得失敗
$errno = posix_get_last_error();
reclog( 'sendstream.php::録画コマンドPID取得失敗('.$errno.')'.posix_strerror($errno ), EPGREC_WARN );
+ // おそらくドライバの問題なのでロード
+ exec('sudo /sbin/modprobe -r pt3_drv && sudo /sbin/modprobe pt3_drv');
?>

参照サイト

epgrec UNAで放送大学が録画・視聴できない(解決)

2020/4に放送大学の番組を録画したところ、ファイルはできているものの再生することができず、トランスコードも終了していない。また番組表から放送大学の視聴リンクをクリックしてのリアルタイム視聴もできない。3月までは問題なく視聴・再生ができていた。
調べてみると、参照サイトに挙げた情報が見付かったので、情報を元にrecpt1.cを修正してコンパイルし、epgrecデータベースの放送大学のチャンネルをBS11_2からBS11_1に修正すると問題なく番組表からのリアルタイム視聴が可能となったが、EPG番組表が更新されると放送大学のチャンネルが元のBS11_2に戻ってしまう。
これはepgrec UNAがEPGデータからチャンネルの更新を行なっているためである。
EPGデータから更新処理を行なうstoreProgram.inc.phpの227行目にある「BS/CSチャンネル番号変更」の箇所をコメントアウトしてチャンネル番号の変更処理が行なわれないようにして、ひとまず対応した。
(storeProgram.inc.php 227行目)

// BS/CSのチャンネル番号変更
 if( $type !== 'GR' ){
  // 放送大学のチャンネル更新不具合のためこの処理をコメントアウト
  /*
 	$tmp_ch = $type==='BS'? 'BS'.$ch['node'].'_'.$ch['slot'] : $type.$ch['node'];

276行目に閉じ括弧があるため、この直前までをコメントアウトする。

 			unset( $rev );
 		}
 	}
*/
}

(2023/8追記)
いつの間にかまた放送大学の視聴ができなくなっていた。番組表は正常に取得されているものの、「視聴」をクリックしてもウンともスンとも言わない。
どうやらまたBSでチャンネル再編があった模様。今回はepgrecUNAデータベースのRecorder_channelTblテーブルで定義されているチャンネル番号を変更するだけで対応できた。

 update Recorder_channelTbl set channel='BS11_0' where sid=231;
 update Recorder_channelTbl set channel='BS11_0' where sid=232;
 update Recorder_channelTbl set channel='BS11_0' where sid=531;

参照サイト

Ubuntu16.04 LTSにAndroid端末をつないでUSBテザリングする

USBテザリングをONにしたAndroid端末を接続しても、ネットワーク接続が自動では有効にならなかったので、接続する手順のメモを残す。

Android端末の接続前と接続後でifconfigを実行し、端末の接続後に増えた接続を確認する。

Super(Windowsキー)を単押ししてDashを起動し「ネットワーク接続」を検索して開く。

「追加」で接続の種類をEthernetとして、Ethernetタブの「デバイス」に先ほどifconfigコマンドで調べた、増えた接続を指定して新たな接続を作成すると接続される。

なお、調べてみるとdhclientコマンドの引数にifconfigで増えた接続を指定して実行すると接続される旨書かれているページがあったが、そのようにするとネットワーク接続に新たな接続は表示されるものの、実際に接続しようとするとエラーが出て接続することができなかった。