Emacsで文章中にあるURLをブラウザで開く方法(goto-address-mode)
URLの文字列
テキストファイルの文章中にhttps://yutarine.blogspot.com/
のようなURLが書かれているとします。 これはURLに見えますが実際には単なる文字列に過ぎないので、マウスでクリックしようがリンクとしては機能しません(テキストエディタやビューアー側がURLをリンクとして機能させられるのは別として)。
URL先を見たい場合は、その文字列をコピー、そしてWebブラウザのアドレスバーに貼り付けて移動する必要があります。
まぁテキストファイルとはそういうものだと言えばそれまでですが、それでもURLが書かれていたらマウスでクリックすればWebブラウザで開いてくれれば便利でしょう。今回はEmacsでgoto-address-modeを使うことでそれを可能にする方法を紹介していきます。
Emacsの場合
Emacsでも単なるテキストファイルを開いた場合はURLが書かれていようが、やはり文字列としての扱いとなります。goto-address-modeを使う
Emacsにはテキストファイル(というかbuffer)内にあるURLを認識して、リンクとして機能出来る「goto-address-mode」があります。これはMinor-modeなので、Major-modeや他のMinor-modeと同時に使用出来ます。使い方
このモードを有効にするにはM-x goto-address-mode
とします。するとbuffer内のURLがリンクとして機能します。
下のモードを有効にする前と後のスクリーンショットを載せておきます。
有効前
有効後
スクリーンショットを見て分かるように、URLにはちゃんとhttp://などを付けていないと認識されないようです。そしてリンクをWebブラウザで開く場合は、マウスでクリックするか、URL文字列にカーソルを合わせて「C-c Enter」としてやります。
リンクを開くときはデフォルトではOS(もしくはシステム)側の標準に設定してあるWebブラウザで開かれるようです。Emacs側に設定するなら、どう開くかもカスタマイズ出来ると思います(たぶん😥)。
その他
Org-modeを使っている場合でもURLはリンクと機能しますが、どうもそれはgoto-address-modeではなく別の機能によってリンクとして機能しているようです。何らかのパッケージを追加して利用している場合、パッケージに補足的にそういう機能が備わっていることもあるかもですね。参考およびまとめリンク
Emacs関連のブログ記事スポンサーリンク
Amazon Emacs関連書籍
browse-url-browser-function ですかねー.
返信削除