Home | First | Prev | Next | Last |
$ curl -kL http://install.perlbrew.pl | bashとしました。ユーザホームに /perl5/perlbrew ディレクトリーができました。それから、 ~/.bashrc の末尾に
source ~/perl5/perlbrew/etc/bashrcを追記して、ターミナルを再起動しました。そして、次のコマンドで、ソースのダウンロードとコンパイルをしました。
$ perlbrew install perl-5.18.2かなり時間がかかりましたが、エラーで終わりました。ログファイルを参照したら、
perlbrew --notest install perl-5.18.2としたら、とありましたので、そのとおりにしたら、無事インストールできました。
/home/penguin/perl5/perlbrew/perls/perl-5.18.2/bin/perlに指定したら、いままで通り、インデックスファイルの作成と検索ができるようになりました。
$ perlbrew switch perl-5.18.2システムの perl にもどすには次のコマンドを使います。
$ perlbrew switch-offapt を使っていないので、アンインストールは、~/perl5 を削除するだけで良いと思います。
684: &init_z2h_euc unless defined %z2h_euc; 693: &init_z2h_sjis unless defined %z2h_sjis;defined を削除しましたら、perl の新しいバージョンでも動きました。
sub z2h_euc { local(*s, $n) = @_; &init_z2h_euc if !%z2h_euc; $s =~ s/($re_euc_c|$re_euc_kana)/$z2h_euc{$1} ? ($n++, $z2h_euc{$1}) : $1/geo; $n; } sub z2h_sjis { local(*s, $n) = @_; &init_z2h_sjis if !%z2h_sjis; $s =~ s/($re_sjis_c)/$z2h_sjis{$1} ? ($n++, $z2h_sjis{$1}) : $1/geo; $n; }要するに、Perl の新しいバージョンでは defined 関数の使い方が厳密になり、スカラー配列には使えてもハッシュ配列には使えなくなったということです。
libgtk-3-dev libmagic-dev必要とのことでしたので、インストールして試してみました。沢山の警告メッセージが出て、emelFM2 のメインルーチンはコンパイルはできましたが、サブルーチンはできませんでした。いろいろ調べてみましたが、まだ解決していません。とうぶんは apt で導入した 0.4.1-0ubuntu3 を使うことにします。
[Seat:*] autologin-guest=false autologin-user=penguin autologin-user-timeout=0赤字の部分には、オートログインさせる実際のユーザ名が入ります。
$ sudo dd bs=1M if=galliumos-baytrail-2.0.iso of=/dev/sdc ; syncこのフラッシュドライブは Linux 機に差し込んでも、マウントできませんでしたが、Chromebook ではマウントできました。
$ cd; curl -L -O http://mrchromebox.tech/firmware-util.sh && sudo bash firmware-util.sh「RW_LEGACY」を選ぶとシステムの検査とファームウェアの書き込みが始まりる。「ファームウェアの導入または更新に成功」というメッセージが出たので、メニューにもどり、Power Off を選択。
$ cd; rm -f flash_chromebook_rom.sh; curl -O https://johnlewis.ie/flash_chromebook_rom.sh; sudo -E bash flash_chromebook_rom.sh上記を実行すると、最初にドネーションのお願いが出ます。リターンを押して次に進むとオプションが出ますので、
1. Modify my Chromebook's RW_LEGASY slot.を選びました。すると、書き換えをしてもよいかどうかの確認のため、次の文章をタイプするよう指示がありましたので、そうしました。
If this bricks my swanky, on my head be it!BIOS ファームウェアの導入は John Lewis さんよりも Mr Chromebox さんのスクリプトのほうが、真面目でわかりやすいかと思います。
Chromebook (most models)|Richt alt overlay|F keys mapped to media keysでしたが、「Search キー」を「Super key」として使いたかったので、
Chromebook (most models)|Search overlay|F keys mapped to media keysにしました。キーマップについては wiki.galliumos.org に詳しく書かれています。
cd ~/Downloads; sudo apt-get -y install curl; curl -LOk https://github.com/fascinatingcaptain/CBFixesAndTweaks/archive/master.tar.gz; tar -zxvf master.tar.gz; cd CBFixesAndTweaks-master; sudo -E bash CBFixesAndTweaks.sh再起動すると、音が出るようになり、メディアキーも使えるようになりましたが、内蔵マイクは使えません。GalliumOS では内蔵マイクも使えますし、Xubuntu では正しく表示されなかった cfitx-mozc、Synology Cloud Disk、Dropbox のアイコンもちゃんと表示されます。Chromebook には Xubuntu よりも GalliumOS のほうが合っているようです。
$ wget http://mrchromebox.tech/firmware-util.shを実行して firmware-tuil.sh をダウンロード。それを次のように実行。
$ sudo bash firmware-util.shしばらく待つとシステムのチェックが終わり、メニューが表示されるので、
1) Install/Update RW_LEGACY Firmwareを「1」キーを押して選択。
Default to booting from USB? ....という質問が出るので、「N」キーを押して、内部ストレージからブートするようにしました。そうすると、電源を入れ、OS 確認画面で CTRL+L を選べば、後は自動的に内部ストレージからブートしてくれました。
$ sudo bash firmware-util.shを実行して、今度は
U) Unlock Disabled Functionsを「U」キーを押して選択。
2) Install/Update BOOT_STUBが選択可能になるので「2」キーを押す。すると、「これは PC を壊すことになるが、ほんとうにいいか」という確認メッセージが出るので、「Y」で承諾する。
Default to booting from USB? ....との質問では「N」を押す。これで、Chrome の OS 確認メッセージも消え、電源ボタンを押すだけで GalliumOS が立ち上がるようになりました。
6) Restore Stock BOOT_STUBを選び、ChromeOS のリカバリードライブを使って復元すれは良いようです。
/usr/share/icons/mozc/ime_product_icon_opensource-32.pngを 32x32 ピクセルから 24x24 ピクセルに縮小しました。Cloud Station のアイコンは
~/.CloudStation/CloudStation.app/images/tray/normal/にある 72x72 ピクセルのアイコンをすべて 24x24 ピクセルに縮小しました。
$ dropbox autostart nで、dropbox の自動起動を無効にしてから、
$ dbus-launch dropbox startとコマンドを打ち込んで、アイコンを表示させています。
var scrolltotop={setting: {startline:100,scrollto:0,scrollduration:1e3,fadeduration: [500,100]},controlHTML:'<img font color='red'>id="scrollup"</font> src="<font color='red'>./images/ pagetop.png"</font>',controlattrs (以下略)つまり、img タグに id を指定し、src に自分のアイコンを指定するわけです。id を指定したのは、アイコンのサイズや透過率を css で調整するためです。
img#scrollup { width: 64px; height: 64px; opacity: 0.5; } img#scrollup:hover { opacity: 1.0; }元の画像がかなり大きいものでしたので、width と height でサイズを小さくしています。opacity と hover を使って、画像を、ふだんは透過にしておき、マウスポインターが重なったとき非透過になるようにしました。
$('body').animate({ scrollTop:0 },'slow');としていたからでした。これは Chrome では動きますが、Firefox では動きません。Firefox のために、セレクターに html を加えました。
$('html, body').animate({ scrollTop:0 },'slow');
<style> .pagetop { position:fixed; right:16px; bottom:16px; width:64px; opacity:0.5; } .pagetop:hover { opacity:1.0; } </style>
<a href="#"><img class="pagetop" src="../images/pagetop.png"></a>
<script src='../js/jquery-1.8.3.min.js'></script>
<script> $(function() { // スクロールアップボタンを隠す $('.pagetop').hide(); // スクロール量を読み取ってボタンを表示・非表示 $(window).scroll(function() { if ($(this).scrollTop() > 60) { $('.pagetop').fadeIn(); } else { $('.pagetop').fadeOut(); } }); // ページの先頭にもどる $('.pagetop').click(function() { $('html, body').animate({ scrollTop:0 },'slow'); return false; }); }); </script>
$n = 0; foreach $line (@lines) { print "<input type='checkbox' name='key_$n' value='ON' /> $line\n"; $n++; }などのように、データを別々の名前の変数に入れ、
$keys[0] = $form{'key_0}; $keys[1] = $form{'key_1}; $keys[2] = $form{'key_2}; ....のようにして取り出したものを配列に入れて処理していました。
$n = 0; foreach $line (@lines) { print "<input type='checkbox' name='key' value='$n' /> $line\n"; $n++; }これを取り出すには、今までの方法ではできなかったので、次のように CGI モジュールを使うことにしました。
use CGI; $q = new CGI; @keys = $q -> param('key');こうすれば、渡されたデータを配列として受け取ることができます。サプルーチンを書かなくても param() で、データを取り出せますし、バイナリーデータの取り込みも楽にできるようになりました。
<input type='imgage' src='printer.png' />としてやればよいのですが、複数の submit ボタンを使う場合は、この方法を使うことができません。
.cbutton, .dbutton, .mbutton { color:rgba(0,0,0,0); border-color:rgba(0,0,0,0); background-color:rgba(0,0,0,0); background-repeat:no-repeat; width:36px; height:36px; } .cbutton { background-image:url(./images/copy.png); } .dbutton { background-image:url(./images/delete.png); } .mbutton { background-image:url(./images/move.png); }
<input class='cbutton' type='submit' name='mode' value='copy' /> <input class='dbutton' type='submit' name='mode' value='delete' /> <input class='mbutton' type='submit' name='mode' value='move' />
<form id='sel_form' action='action.cgi' method='post'> <select id='sel_option' name='from_list'> <option value='$option1'>$option1</option> <option value='$option2'>$option2</option> </select> </form>
$(function(){ $("#sel_list,#sel_option").change(function(){ $("#sel_form").submit(); }); });スクリプトの意味は sel_option という id があるところで、何らかの変化(この場合は option の選択)があったとき、sel_form という id のある部分のデータを送信するということです。
print "<form id='sel_form' action='$cginame' method='post'>\n"; print "<select id='sel_option' name='from_list'>\n"; foreach $option (@options) { if ($option eq $current_option) { $selected = "selected"; } else { $selected = ""; } print "<option value='$option' $selected>$option</option><br>\n"; } print "</select>\n"; print "</form>\n";セレクトボックス内の項目が、選択した項目であれば selected という文字列をオプションタグ内に書き込むという仕掛けです。簡単なものですが、これでフォームに記入する場合の間違いを減らすことができます。
<link href="https://fonts.googleapis.com/css?family=Baumans" rel="stylesheet">CSS に記入するコードも表示されましたので、
font-family: 'Baumans', cursive;これらをコピー&ペーストして、タイトルフォントを指定しました。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <link href="https://fonts.googleapis.com/css?family=Baumans" rel="stylesheet"> <style> h1 { font-family: 'Baumans', cursive; color:green; } </style> <title>Contact List Manager</title> </head> <body> <h1>Contact List Manager</h1>Google のフォントサーバーからのダウンロードは瞬時に行われ、動作はとても軽快でした。
@font-face { font-family: 'title_font'; src: url('./fonts/Baumans-Regular.ttf' ); }と記述しました。これを cgi で使う場合は
\@font-face { font-family: 'title_font'; src: url('./fonts/Baumans-Regular.ttf' ); }と、@font-face の @(アットマーク)の前に \(バックスラッシュ)を入れておく必要がありました。
$ sudo apt-get install build-essential xfce4-dev-tools automake libtool autoconf intltool libglib2.0-dev libgtk2.0-dev libexo-1-dev libxfce4ui-1-devそれから
wget http://archive.xfce.org/src/xfce/thunar/1.6/Thunar-1.6.10.tar.bz2で、Thunar のソースファイルをダウンロードしました。
$ wget http://bug-attachment.xfce.org/attachment.cgi?id=6613 -O Thunar.patch $ patch -p1 < Thunar.patch $ ./configure --enable-debug=no $ make
$ sudo make installとすれば、/usr/local/bin/ に thunar が導入されますが、/usr/bin/ にすでにある thunar をコンパイルした thunar と置き換えるという方法もあります。以下がそれです。
$ strip thunar/.libs/thunar $ sudo mv /usr/bin/thunar /usr/bin/thunar.orig $ sudo chmod -x /usr/bin/thunar.orig $ sudo cp thunar/.libs/thunar /usr/bin/thunarこのほうがディスク・スペースを節約できます。
Home | First | Prev | Next | Last |