トップ «前の日(06-04) 最新 次の日(06-06)» 追記
【ソース+水=麦茶色の何か】

半期 四半期 全カテゴリ

今日の一言


2010/06/05(Sat) ももも酒 編集

_ [Emacs][Debian][FC][Ubuntu][Linux][研究関係][雑記] emacsのスクロールを1行単位にする

「~./.emacs」に次の一行を加えればいい。

 (setq scroll-conservatively 1)

*デフォルトは0であり、半画面ずつスクロールされる。

_ [Emacs][Debian][FC][Ubuntu][Linux][研究関係][雑記] (CおよびC++における)emacsのインデントスタイルを変更する

「~./.emacs」に次の行を加える。

;; C style
(add-hook 'c-mode-common-hook
         '(lambda ()
             (c-set-style "bsd")
              ;; インデントを空白文字で行う
            (setq indent-tabs-mode nil)
              ;; インデントの変更
            (setq c-basic-offset 2)
            ))
;; C++ style
(add-hook 'c++-mode-hook
         '(lambda()
            (c-set-style "bsd")
              ;; インデントを空白文字で行う
            (setq indent-tabs-mode nil)
              ;; インデントの変更
            (setq c-basic-offset 2)

インデント数の変更や空白文字への置き換えはお好みで。(自分は2に変更した)

c-set-styleにもいろいろな種類があるので、好きなのを選べばいい。

*自分はこのへん(http://www.dd.e-mansion.com/~kumada/laboratory/column/c_indent.html)を参考にしました。

他にも、

 (c-set-style "gnu")
 (c-set-style "k&r")
 (c-set-style "bsd")
 (c-set-style "linux")
 (c-set-style "cc-mode")
 (c-set-style "stroustrup")
 (c-set-style "ellemtel")
 (c-set-style "whitesmith")
 (c-set-style "python")

なんかがあるようです。(詳細は知らぬ)

_ [C++][Debian][FC][Ubuntu][Linux][研究関係][雑記] C言語(C++)でmkdirを行う

こんな感じで書く。

 #include <sys/types.h>
 #include <sys/stat.h>
 #include <stdio.h>
 int main()
 {
   mode_t mode = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH;
   if ( mkdir("./newdir", mode) != 0 )
   {
     printf("mkdir error!\n");
   }
 }

mkdirの第2引数には、パーミッションの設定を書く。

詳細をこちら(http://docs.hp.com/ja/B2355-90854/mkdir.2.html)から引用。

アクセスパーミッション ビットを定義する記号定数は <sys/stat.h> ヘッダファイルに存在し、引き数 mode を構成するのに用いられます。 引き数 mode の値は、必要なパーミッションの値のビットの包含的論理和 (OR) です。

S_IRUSR 所有者による読出し

S_IWUSR 所有者による書込み

S_IXUSR 所有者による実行 (検索)

S_IRGRP グループによる読出し

S_IWGRP グループによる書込み

S_IXGRP グループによる実行 (検索)

S_IROTH 他人 (つまり、誰でも) による読出し

S_IWOTH 他人による書込み

S_IXOTH 他人による実行 (検索)

参考:

http://x68000.q-e-d.net/~68user/unix/pickup?mkdir

http://docs.hp.com/ja/B2355-90854/mkdir.2.html


2011/06/05(Sun) GALAXY S買った。Smartiaはあきらめた。 編集

_ [Windows][Android][GALAXY S] GALAXY SをPCと接続しストレージ(内蔵SD、外付SD)にアクセスする(Samsung Kies)

参考:

http://keitai-price.com/contents/view/369
http://someya.tv/galaxys/100/manual04.php

Androidで遊びたい!ということで、一時はSmartiaを買う気だったのだが、近くの中古屋でgalaxy sが25,000円だったので、こちらを衝動買いしてしまった。

付属のマイクロUSBで接続するだけでは、PCにドライバが入っていないため、正常に認識されない。

そのため、まずはドライバを入手する。

こちら(http://jp.samsungmobile.com/pc/lineup/SC-02Bdownload.html)から「Samsung Kies」をDLし、インストール。

※閲覧時に音が出るので注意!

これで、Samsung携帯向けのデータ管理ツールとともに、ドライバがインストールされる。 インストールが終わったら、Samsung Kiesを起動し、付属のUSBケーブルでGALAXY SとPCを接続。

すると、GALAXY Sが接続中になり、GALAXY S側にもドライバがインストールされる。

自動的にドライバがインストールされるまで、しばらく放置。

この段階で、PCの「コンピューター(マイコンピュータ)」にはリムーバブルディスクが「2つ」表示されているはず。

が、このままではまだアクセスできないため、GALAXY S側での設定を行う。

ストレージデバイスとして直接接続する(カードリーダーモード)

インストールが終了したら、GALAXY Sのホーム画面の上部にあるステータスバーに「ドロイドくん」が表示されているはず。

※USBデバッグが有効な場合のみ?

これをばーっと下に引っ張ると、

USBが接続されています

という通知があるので、これを選択。

すると、左手がUSBコネクタになった「ドロイド君」が表示されるので、その下にある

USBストレージの接続

というボタンをクリック。これで、「コンピューター(マイコンピュータ)」からストレージとしてアクセスできるようになる。

もし通知領域に表示されない場合(もしくは接続時に自動的にカードリーダーモードを立ち上げたい場合)は、GALAXY S側の「設定」→「無線とネットワーク」→「USB接続」に行き、

「カードリーダーモード」

を選択すれば、USBを接続するだけで自動的に上記の

USBストレージの接続

が表示されるようになる。ただし「USBデバッグ」を有効にしている場合、「USB接続」を開く段階で警告が出て無効にされてしまう点に注意すること。

※通知領域から開いた場合には聞かれない。が、自分で「USBが接続されています」をクリックして接続するという手間がかかるので、どっちがいいかは各自の好みで。

※なお、USBをはずす際には、必ずGALAXY S本体のメニュー画面から接続を解除してから行うよう注意する。

Samsung Kiesを介して接続

『USBをはずした状態で』GALAXY S側の「設定」→「無線とネットワーク」→「USB接続」から「Samsung Kies」を選択。

ホームに戻り、PCとGALAXY SをUSBで接続。

すると、自動的に「SB-02B」というポータブルデバイスが認識され、GALAXY Sのストレージにアクセスできるようになる。

※ただしこのモードでは「.」から始まる隠しフォルダは表示されない。カードリーダーモードなら表示できる。

※なお、USBをはずす際には、必ずGALAXY S本体のメニュー画面から接続を解除してから行うよう注意する。

このモードで接続している場合、Samsung Kiesを使うことで、さまざまな機能(バックアップや同期、コンテンツの閲覧やデータの交換等)が利用できる。

が、こいつがかなり『クセモノ』。

というのも、このSamsung Kies、かなり重い。そもそも推奨がRAM 1GB以上とか。どこにそんなメモリを使っているのか正直わからん!

まあ、便利なことはまちがいないので、高スペックなPCを使っている場合には有効かと。

あと、ファームウェアのアップデートにもこれ(Samsung Kies)で行うらしいので、とりあえず使える状態にしておく方がいいかも。

以上!

_ [Windows]VLC Player(1.1.7)で起動時に「フォントキャッシュの再構築」をするのを止める

どうも、フォントキャッシュを読み取り専用にするのが手っ取り早いっぽい。

なお、公式の方法ではないので、やる場合は自己責任で!

Windows7の場合

C:\Users\ユーザ名\AppData\Roaming\vlc

内の「.cache-3」(もしくは.cache-2)ファイルを読み取り専用にする。

WindowsXPの場合

C:\Documents and Settings\ユーザ名\Application Data\vlc

内の「.cache-3」(もしくは.cache-2)ファイルを読み取り専用にする。

以上!


2012/06/05(Tue) 牛乳うまい 編集

_ [Android]Androidでブラウザから自作アプリを呼び出す

ブラウザから呼び出したいアプリのAndroidManifest.xmlに、ブラウザから起動させるためのIntentFilterを設定すればいい。

<activity android:name=".TestAppActivity" android:label="@string/app_name" >
  <intent-filter>
    <action android:name="android.intent.action.VIEW"/>
    <category android:name="android.intent.category.DEFAULT"/>
    <category android:name="android.intent.category.BROWSABLE"/>
    <data android:scheme="testapp" android:host="start" android:pathPattern="/.*"/>
  </intent-filter>
</application>

上記の例では、ブラウザから「testapp://start/」というURLを開くことで「TestAppActivity」を開くことが出来るようになる。

また、pathに「android:pathPattern="/.*"/」を指定しているため、「testapp://start/hogehoge」のように、「testapp://start/」以下に自由な文字列を設定できる。

ただし、ブラウザによってはアドレスバーに上記のURLを入力しても検索になってしまうものがある。そのため、基本的には、ページ内にアプリ起動用のリンクを用意することになる。

また、端末が接続されており、adb shellが実行できる場合、コマンドプロンプトから以下のコマンドを打つことで、ブラウザから開くのと同じ暗黙的Intentを発行することが出来る。

> adb shell am start -a android.intent.action.VIEW testapp://start/

なお、呼び出しに使用したURLは以下のようにして取得することが出来る。

【TestAppActivity.java】

package net.i.akihiro.TestApp;

import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;

public class TestAppActivity extends Activity {
private static final String LOG_TAG = "TestApp";

   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
	android.util.Log.println(Log.DEBUG, LOG_TAG, "--> " + this.getClass().getName() + " onCreate().");
       setContentView(R.layout.main);

   	Uri uri = getIntent().getData();
   	if( uri != null )
   	{
   		String uriString = uri.toString();
   		android.util.Log.println(Log.DEBUG, LOG_TAG, uriString );
   	}

   }
}