忍者ブログ
Home > Linuxアプリ

rago1975の部屋

このブログは管理人が個人的に興味がある事項を書き留めておくメモみたいなものです。当面は、Manjaro Linux関係の記事が中心になります。

[PR]

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


Manjaro Linux でmikutter 環境の再構築

1月17日にManjaro Linuxのstableブランチの定例アップデートがあり(公式アナウンス)、パッケージとしては、Pythonが3.6になったり、Rubyが2.4になったりしました。そのアップデートの結果、mikutter が完全に動かなくなってしまいました。terminal上でコマンドラインで動かそうとすると、「libruby.so.2.3がロードできません。」という内容のエラーメッセージが出ました。

そこで、一旦rubyそのものをシステムからアンインストールして、rbenv でruby環境を構築し、mikutterをソースからビルドしようとしました。rbenv によるruby 環境の構築についてはこの記事が分かりやすかったです。
mikutter のソースを解凍したディレクトリに入り、
 
bundle install --path vendor/bundle

と入力すると、mikutterのビルドが始まりますが、ruby 2.4の場合、
 
compiling rbgobj_type.c
rbgobj_type.c: 関数 ‘init_typemap’ 内:
rbgobj_type.c:403:42: エラー: ‘rb_cFixnum’ が宣言されていません (この関数内での最初の使用)
 
という内容のエラーが出て、先に進めなくなりました。

結局、rbenvでruby 2.3 環境を構築し、その環境でmikutterをソースからビルドしますと、うまく起動するようになりました。

なお、使用している人はほとんどいないと思いますが、Manjaro JPのリポジトリ(local-repo)からmikutter関連は一旦消していますので御了承のほどよろしくお願いします。
PR

【メモ】2ちゃんねるブラウザ JD のビルド

2chブラウザのJDを久しぶりに使おうとして、AURからビルドしようとしたら、以下のエラーで止まってしまった。

drawareabase.h: メンバ関数 ‘const bool ARTICLE::DrawAreaBase::is_drawarea_realized()’ 内:
drawareabase.h:333:51: エラー: cannot convert ‘Glib::RefPtr<gdk::window>’ to ‘const bool’ in return
         const bool is_drawarea_realized(){ return m_window; }
                                                   ^~~~~~~~
で、このエラーの解決法を探していたら、意外にも2chのManjaro Linux のスレに解決法が書き込まれていた。
518 :login:Penguin:2016/12/14(水) 15:01:40.90 ID:EQ6Ah+fD   
 jdの件、ArchLinuxスレより   
 896 login:Penguin sage 2016/12/13(火) 13:35:01.43 ID:trqUpNut
    面白そうなのでちょっと調べてみた   
 
 glibmmの変更でGlib::RefPtrのoperator bool()が   
 inline operator bool() const
    から
    inline explicit operator bool() const noexcept
    に変わってるのが原因っぽいかな?(しっかりと追ってはないから多分だけど)
    とりあえずarticle/drawareabase.hの333行目あたりの
    const bool is_drawarea_realized(){ return m_window; }
    を
    const bool is_drawarea_realized(){ return static_cast<bool>(m_window); }
    にしてやると通った


ソースコード修正の後、ビルドし直したらうまく通った。
なお、JDで板を見たりするには、2chproxy.plというスクリプトを実行しなければならない(そのようになった事情は略)。その他の設定は、こちらを参照のこと。


【メモ】検索エンジン Qwant

検索エンジンといえば、大多数の方がGoogleを使われていると思いますが、プライバシーの観点等からGoogleを使用し続けることに、少し引っかかりがある人も少なからずいるかもしれません。
ここ最近のネット上を騒がせている色々な問題に対して、このような声も出てくるのも仕方がないと思います。


そのような人をターゲットとした、DuckDuckGo などの検索エンジンも現れてきて、非Chrome系のブラウザ(私が使っているPalemoon とOtter)では、DuckDuckGoがデフォルトの検索エンジンとなっています。ただDuckDuckGoは、特に日本語での検索のパフォーマンスが弱いような印象を持ちます。

そのような中、最近Qwantという検索エンジンを知りました。
きっかけは、暗黒美夢王さんのこんなツイートを見たことでした。 というわけで実際にQwantを試してみました。Qwant はフランスの企業みたいです。
試しに「mikutter」を検索した結果です。
 

表示はたしかに新鮮で、特徴としては、デフォルト(all)だと、サイト、画像検索の他にニュースやTwitter等 まで拾って来ます。地域判定はしているみたいで、日本語の情報を優先して出しているみたいです(言語は設定で変更できます)。日本語での検索エンジンとしてはDuckDuckGoより随分有用な感じがします。
Qwantのポリシーの説明では、「ユーザーのトラッキングはしない。」「フィルタリングはかけない。」と宣言しています。

また、Firefox等ではアドオンが準備されており、検索バーに追加することができます。

現時点での不満なところは、やや処理に時間がかかること、動画の検索ではyoutube等3種類のサイトに限定されているところくらいです。


Otter Browser を使ってみる。

私は、Manjaro Linux上で作業するとき、Webブラウザとして、Pale Moon Wikipedia)を使用しています。
Pale moonは非常に高速で、かつ安定に作動し、普段使うには重宝しています。しかし、Wikipediaに書かれたような欠点もあります。大きな点は、Firefoxでのアドオンを使用したい場合、いちいち互換性を確認しなければいけないことです。あと、最近ではtwitterのショートムービーが再生できない場合があるという問題にも悩まされています。

というわけで、ちょっと別のブラウザを試してみようと思い、Otter Browser を試してみました。Otter Browserはここの紹介文にあるとおり、あのOpera(Presto時代)の再現を目指しているとのことです。 私も、Presto時代のOperaは愛用していました。また、個人的にはqt5を使用しているのもポイントです。



Manjaro LinuxではAURから入手できます。実際に使用してみると、サイドパネルの配置など、かつてのOperaの特徴を引き継いでいます。基本的なブラウジングの性能は問題なく、実用の域に達していると思います。Ad-blockは不完全ながらもブラウザ本体の機能として取り込まれています。デザイン・スキン類はこれから整備されるのではないかと思います。Twitterの動画も問題なく見れます。

あと、使用時に気になったこと(注意点)です。
  • AURからインストールしただけでは、Youtubeなどの動画が見れません。gstreamer、gst-libav、gst-plugins-goodなどのパッケージを追加でインストールする必要があります。(参考1参考2
  • ブックマーク周りは非常に使いづらいです。ブックマークのリストの編集はGUIっぽく操作するのが難しく、設定ファイル(テキストファイル)を直接編集する必要があります。



【メモ】vimtexでLuaTeXの環境構築

私自身のTeXの知識が20世紀末くらいの時点で止まってしまっていて、もう少しきちんと勉強したいなと考えていたところです。
できるだけ、楽にTeXでの文書作成ができないかと思いながら、Lyxとか、Tex Studioとか試してみたのですが、最近エディタ関係はVim(Neovim)に移行しつつあるので、Vimのプラグインを使ってみることにしました。

私が昔(1990年代)使っていたのはpTeXだったと思いますが、最近の動向を見てみると、文字コードのユニコード化などの流れもあって、upTeXとかXeTeXとか、新しい処理系が出ているみたいです。今回は、LuaTexを試すことにしました。LuaTexはtexファイルのコンパイルの際、直接pdfファイルを出力します。(Tex wikiLuaTeX-ja プロジェクト

Neovimの環境(Manjaro Linux LXQt)

  • Neovim
  • qterminal-git (AUR)
  • qtermwidget-cjk-git (AUR)

Texlive パッケージ等(全て公式リポジトリから導入可能)

  • texlive-core
  • texlive-langjapanese
  • texlive-latexextra
  • 上記の依存パッケージ(texlive-bin 等)
  • qpdfview(PDFビューワー)
  • poppler-data

vimtexの導入

vimtexはvimプラグインです。導入にあたり、今回はdeinを使用しました。deinについての説明はこのあたりを参照してください。既にdeinが導入されている場合は、~/.config/nvim/init.vim 内に記載されるプラグインのリストに以下の行を追加します。
call dein#add('lervag/vimtex')
さらに、vimtex用の設定として、init.vimに以下の行を追加します。ここでは、PDFファイルビューワーとして、qpdfviewを指定しています。
let g:vimtex_latexmk_continuous = 1
let g:vimtex_latexmk_background = 1
let g:vimtex_view_general_viewer = 'qpdfview'
init.vimの設定が終了したら、neovimを実行して、コマンドモードから call dein#update() を実行します。

.latexmkrcの編集

vimtexはtexファイルのコンパイルに際して、latexmkというツールを使用します。latexmkはTexliveパッケージに同梱されています。vimtexの使用に際しては設定ファイル.latexmkrcを編集する必要があります。(今回は .latexmkrcはホームディレクトリの下に置いています。)
こちらを参考に .latexmkrcを以下のように設定しました。
#!/usr/bin/env perl
$latex = 'uplatex %O -synctex=1 -interaction=nonstopmode %S';
$pdflatex = 'lualatex %O -synctex=1 -interaction=nonstopmode %S';
$biber = 'biber %O --bblencoding=utf8 -u -U --output_safechars %B';
$bibtex = 'upbibtex %O %B';
$makeindex = 'upmendex %O -o %D %S';
$dvipdf = 'dvipdfmx %O -o %D %S';
$dvips = 'dvips %O -z -f %S | convbkmk -u > %D';
$ps2pdf = 'ps2pdf %O %S %D';
$pdf_mode = 1;
$pdf_previewer = 'qpdfview'
ここまで準備すると、vimtexが動くようになります。Neovimでtexファイルを開いている時に、コマンドモードで :VimtexCompile と入力すると、コンパイルが始まり、pdfファイルの作成、プレビューまでしてくれます。

参考リンク


        
  • 1
  • 2
  • 3

プロフィール

HN:
rago1975 (Takefumi Nagata)
HP:
性別:
男性
自己紹介:
熊本在住の一般人です。Manjaro Linux関係の翻訳などを少々やっています。
twitter: https://twitter.com/rago1975

カレンダー

04 2017/05 06
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31

P R