2025年11月3日月曜日

Unihertz Titan2が届いたので初期設定する

 Unihertz Titan2が届く!

クラウドファンディングで出資していたTitan2がやっと届いたので設定していく。



コンテンツ

  1. キーボードの設定
  2. ショートカットキーの設定
  3. Termuxの導入
  4. まとめ

2025年3月23日日曜日

DevTerm A06 設定 – Zotero導入

 DevTermの活用法を考えていたとき、EPUBリーダーとしてのサイズとしてちょうどいいかもしれないので、EPUBリーダーとしてZoteroを導入する。

Zoteroについて

Zoteroはオープンソースの文献管理ソフトウェアで、文献情報の維持管理、ファイルの複数デバイスでの文献ファイル共有等を行える。Windows,Mac,Linux他、iOSデバイス、Androidデバイス(オープンβ)で利用可能となっている。

ただし、EPUBリーダーの機能はモバイルデバイスでは使用できないため、デスクトップ版を利用する必要がある。

Zoteroの使い方等については以下のサイトを参照。


以下導入編

2025年3月20日木曜日

DevTerm A06を購入したので初期設定する

往年のPCを思わせるDevTerm A06を譲ってもらったので、設定していく。
今はラズパイ系のRPI-CM4 Liteがメイン。



2024年8月5日月曜日

WSL2 + Ubuntu 24.04でデスクトップ環境を構築

ことのはじまり

WSL2でLinux GUIを使いたくなった
直接起動するのではなく、リモートデスクトップ経由でデスクトップに接続したい

2024年4月29日月曜日

Termux on Debian(GUI)でibusが落ちる問題の解決策

ことのはじまり

前回の記事でKindleFireHD10(13世代)にUbuntuのGUIを構築したが日本語入力がうまく起動しなかった。
ブラウザも使いたかったし、Ubuntuを捨ててDebianに切り替えることにした。
以下その手順のまとめ。

状況整理(環境と症状)

環境は次の通り
  • KindleFireHD10(13世代)
  • Termux上にUbuntuをインストールし、xfce4でGUIを利用
  • 日本語入力はibusとAquaMozcを利用
発生した症状
  • AquaMozcの設定画面をGUIで開くとどこかをクリックした瞬間落ちる
  • 最初は起動していてくれたibus-daemonが途中から起動しなくなる(手動起動も不可)

日本語環境の設定はこの記事を参考にした。

debianの構築

そもそも論として、ubuntuの入れ方とubuntuが相性が悪いのではと疑い始めprootを経由してdebianを構築することにした。
手順としては以下の記事のubuntuをdebianに読み替えて手順を進めればよい。 debianのインストールが完了したら以下のコマンドを実行して必要なものをインストール
apt-get update && apt-get upgrade -y
apt-get install sudo-y
apt-get install xfce4
apt-get install ibus-mozc

xfce4は前回の記事通り数時間かかるのでしばらく待つ。

日本語環境の設定と問題とソリューション

上記の記事に従って日本語環境設定しても上記の症状は改善しなかった。
そこで、以下の方針で解決することにした
  • ibusを手動で起動する
  • 手動起動に伴いibus-daemonの自動起動設定は削除する
ソリューションとしては以下のコマンドを起動時毎回ターミナルから実行すれば解決する.
ibus start

これでとりあえず安定して日本語入力ができるようにはなる。
しかし結果としてAquaMozcのGUI問題は解決できなかった。
結論としてはとりあず使えるのでヨシッ

2024年3月3日日曜日

Kindle FireHD10(13世代)でUbuntu GUIを使おう

ことのはじまり


FireHD10(13世代)が安かったので買ってみたが使い道がなかったので、 Ubuntu on TermuxでLinuxタブレットにしようとした際の作業を備忘として残す。

2023年12月15日金曜日

JavaScriptで標準入力をPython3っぽく受け取る

Paizaやその他、競プロでJavaScriptを使う時、他の言語と違って面倒なのは標準入力の受取である。 全部一気に受け取ってしまって、それらを配列で管理しなければならない。 この管理が非常に面倒なので、Python3みたいにinput()で一行ごとに受け取りたいと考えることしばしばである。 ふと思ったが、標準入力を一気に受け取って、一行ずつ吐き出すオブジェクトをつくればよいのである。 ということで早速実装
//classは巻き上げられないので最初に書く
class inputClass{
    constructor(){
        this.inputCounter = 0;
        this.list = [];
        this.len = 0
    }
    append (value){
        this.list.push(value);
        this.len++;
    }
    input(){
        if (this.inputCounter < this.list.length){
            return this.list[this.inputCounter++];
        }else{
            return '';
        }
    }
}
let data = new inputClass();
let reader = require("readline").createInterface({
    input: process.stdin,
    output: process.stdout
});
reader.on("line", (line) => {
    data.append(line.split(' '));
})
reader.on("close", () => {
    //読み込み行数を保持するlenプロパティで末尾まで取り出し
    for (let i=0; i < data.len; i++){
        console.log(data.input());
    }
});

入力
1 1
2 2
a
c
f g h

出力
[ '1', '1' ]
[ '2', '2' ]
[ 'a' ]
[ 'c' ]
[ 'f', 'g', 'h' ]

概ね期待通りに実装できた。 イテレーターで実装したほうが便利だと作った後に気づいたが ひとまず実装したのでよしとしたい。