星期三, 5月 20, 2009

Freemind 升級到 0.9.0_RC3 on openSuSE 11.1

今天在家使用 Freemind 整理著作權法
因為家裏的Freemind 是使用 0.9.0_RC3
花了兩個小時整理相關資訊
在小歇使用 Freemind 0.8.0 打開只看到 新心智圖
差點腿軟+傻眼

還誤會是Linux的Freemind 與Windows不同調
也不想開車回去重新存一次檔案

所以就在 software.opensuse.org/search 上面搜尋 freemind
http://software.opensuse.org/search?baseproject=openSUSE%3A11.1&p=1&q=freemind

以下為 0.9.0_RC3 的 one-click install
http://software.opensuse.org/ymp/home:jordimassaguerpla:Linkat_Testing:Testing/openSUSE_11.1/freemind.ymp

在安裝的過程中, 系統有提示
要不要修復/更新 patten (我想這個應該是讓我打不開的主因吧 >.<)

選取修復/更新

就可以打開我整理許久的 .mm檔了

^__^

C語言入門 20090519 上課小記

************************20090519 陳惠堂 **************************

以後上課基本的 source code 內容

// include 引入 .h (標頭檔)
// header .h
要放在程式的最前面
//
引入 stdio.h 及 stdlib.h
#include "stdio.h"
#include "stdlib.h"

//進入主程式
int main()
{

system("pause"); //執行系統內的 pause指令 暫停 宣告被寫在 stdlib.h 內
return 0;
}

*printf(字串 [,引數1,...]);


*
逸出字元(Escaps)

  • \n new line

  • \t table(8個bytes

    • 文字介面 寬度為 80 bytes, 每一個Tab 長度為8個 bytes. 使用\t 是移動到下一個8 bytes, 不是向後退8個space

  • \b back(回到前一個)

  • \f 換頁

  • \r Return

  • \ddd 8進位內碼

  • \xdd 16進位內碼



*
格式符號

  • %形別

    • %d or %i 有號10進位整數

    • %o 有號 8 進位整數

    • %x 有號 16進位整數

    • %u 無號的 10 進位整數

    • %f 顯示6位小數

    • %e 以指數顯示

    • %g 一般顯示

    • %s 字串

    • %c 字元

*scanf(字串,位址1[,位址2,...]);

  • 是少數在function 語法內要指定位址的

Lab:

// include 引入 .h (標頭檔)
// header .h
要放在程式的最前面
//
引入 stdio.h 及 stdlib.h
#include "stdio.h"
#include "stdlib.h"

//進入主程式
int main()
{
printf(
"Hello ...\n" );
printf(
"Welcome to Dev C+...\n" );

printf(
"a\taa\taaa\n"); // \t
為Tab鍵 移到下一個8 bytes
printf(
"aa\taa\taaa\n");// \t
為Tab鍵 並不是移動8個 space
printf(
"aaa\taa\taaa\n");


printf(
"Back\b\n"); //
觀察 \b的影響
printf(
"Back\ba\n"); //
觀察 \b的影響 \b 向前一個byte 然後a取代

printf(
"\1\2\3\4\5\6\7\n"); // \7
是聲響

int a,b ;
a=1;
b=2;

printf("%d+%d=%d\n",a,b,a+b); // %d 會從後面抓一個資料, 有三個 %d 就會抓三個

printf("a=%d\n",a);
printf("b=%d\n",b);
printf("a+b=%d\n",a+b); // %d
會從後面抓一個資料, 有三個 %d 就會抓三個

printf("-----------------------------------------------------------------\n");
double c;
c=10.123456;
printf(
"c=%f\n",c); //
顯示 6位小數(預設)
printf(
"c=%e\n",c); //
以指數顯示
printf(
"c=%g\n",c); //
一般方式顯示
printf(
"c=%.2f\n",c); //
顯示 2位小數,會四捨五入
printf(
"c=%.12f\n",c); //
顯示 2位小數


system("pause"); //
執行系統內的 pause指令 暫停 宣告被寫在 stdlib.h 內
return 0;
}

& 位址運算元

  • 用法: & 變數名稱

Lab:scanf

// include 引入 .h (標頭檔)
// header .h
要放在程式的最前面
//
引入 stdio.h 及 stdlib.h
#include "stdio.h"
#include "stdlib.h"

//進入主程式
int main()
{

int n; //定義一個整數 n
printf("Please input your number:\n");
//
利用scan 來等待使用者輸入, 結束用 Enter. %d 為10 進位整數
//scanf
後面要輸入位址 &n 而不能輸入變數 n 所以要特別注意
scanf("%d",&n); // n
前面要加上 & 符號, 為位址運算元符號, 只輸入 n 會當機(變數)
printf("n=%d\n",n);

//定義 字元陣列 name 內容為20個字
char name[20];
printf(
"Enter your Name:\n");
//
利用scan 來輸入 name
//
在 C 裡面 陣列名稱 跟 變數名稱 是不同的, 陣列名稱代表是位址
scanf("%s",name);
printf(
"Hello %s\n",name);

//定義兩個 字元陣列 fname lname
char fname[10],lname[10];
printf("Enter your First Name:\n");
scanf("%s",fname);
printf("Enter your Last Name:\n");
scanf("%s",lname);
//
這樣就可以列出 First name + Last name 剛剛的範例只會列出第一個
printf("Hello %s %s\n",fname,lname);

system("pause"); //執行系統內的 pause指令 暫停 宣告被寫在 stdlib.h 內
return 0;
}

Lab: 使用C++的方式來處理

//使用 C++ 的方式, 非C的方式
// iostream
必須配合 namespace
#include "iostream"
using namespace std;
#include "stdlib.h"

int main()
{

char name[20];
//cout
是一個物件, 不是指令, 代表螢幕. 利用 << 導向螢幕
cout << "Enter your name:\n";

//
利用cin 代表鍵盤
cin >> name;
//
一個 << 只能送一個資料 ,

cout <<
"Hello " <<>"\n";
//
也可以使用 endl 代表 \n
cout << "Welcome to Dev C++ ..." <<>

system("pause"); //執行系統內的 pause指令 暫停 宣告被寫在 stdlib.h 內
return 0;
}

***************************************************************

星期二, 5月 19, 2009

Dreamweaver 20090519 上課小記

************************20090519 徐國堂 **************************

虛擬空間 可以申請使用 http://www.hostse.com/

錨點 ( 最常應用於 FAQ)
使用 a name="錨點名稱" id="錨點名稱" 建立錨點
連結到錨點使用 a href="#錨點名稱" 來連結

*a
元素

  • a href="photos.html" 連結到 相對位置 內的photos.html

  • a href="/photos.html" 連結到 絕對位置 內的photos.html

  • a href="http://tw.yahoo.com" 連結到 http://tw.yahoo.com

  • a href="mailto:rober11@ms18.hinet.net" 傳送E-mail

  • a href="firework版型/test.jpg" 連結圖片(另開新視窗)

  • a href="webcs4/教學文案.pdf" 連結PDF(另開新視窗)


Java Script

  • 動態修改元素

  • Client 端的Script 消耗Client 的資源


網站建制百寶箱 http://dob.tnc.edu.tw/

Java Script
可參考
http://dob.tnc.edu.tw/dir.php?t=6&at=

直接使用即可

使用Java Script 要注意

  • 使用那一個元素

  • 執行哪些動作

  • 何時執行



******************************************************************

星期四, 5月 14, 2009

C語言入門 20090514 上課小記

************************20090514 陳惠堂 **************************

使用軟體 Dev-C++

開啟專案管理的視窗
  • 檢視 --> 專案管理

設定環境
  • 工具 --> 編輯器選項
  • 可以設定字型大小 或是 是否顯示行號(於顯示標籤)

直譯: 寫完之後馬上執行. 例如: 瀏覽器

編譯: 將利用 編輯器寫的程式碼 編譯為可執行的程式
以Windows 來說 *.cpp -----compile---> *.exe

*Ctrl + F9   編譯
*Crtl + F10 執行

Lab:
寫一個檔案如下, 並試試看可否編譯
int main()
{


return 0;
}


*函數(Function)要注意的地方
  • 宣告
  • 實作 ( 大括號{} 內的部分 )
  • 被呼叫的東西

int main() 為 C++ 的啟動點
{ } 為起始及結束
[] 代表陣列
;  代表結束
// 為註解


Lab:
寫一個檔案如下, 並試試看可否編譯

// include 引入 .h (標頭檔)
// header .h 要放在程式的最前面
// 引入 stdio.h 及 stdlib.h
#include "stdio.h"
#include "stdlib.h"

 

//進入主程式
int main()
{
 char name[20];//宣告name的變數 
 printf("Enter your name:"); //顯示 Enter your name 宣告被寫在 stdio.h 內 
 scanf("%s",name); //宣告被寫在 stdio.h 內
 printf("Hello %s\n",name);
 printf("Welcome to DevC++ ...\n");
 system("pause"); //執行系統內的 pause指令 暫停  宣告被寫在 stdlib.h 內
 return 0;  
}

 

 

內建函數的宣告大部份都被寫在 stdio.h
printf 函數作用為在螢幕前面顯示
system 函數 去執行系統上面的指令
 
函數括號()內就是讓你 下 資料(data)
 
*資料
  • 常數: 程式執行中, 固定不變的資料. 直接把資料寫在上面
  • 變數: 程式執行中, 資料可以被修改.
 
 
" " 代表字串
 
 
*資料型別
  • 文字
    • 字元
      • 使用單引號來表示, 針對一個byte. 只能放一個字
      • 'A' 'a' '1'
      • 字元的'A' 為1個byte
    • 字串
      • 中文字用字串處理,  因為中文字兩個byte
      • "AB" "A"
      • 字串的"A" 為2個byte
      • "AB" 為3個byte, AB 2個byte+""
  • 數值
    • 整數
      • 沒有小數點的數字
      • 125
      • 表示方式
        • 10進位表示 125
        • 8進位表示  0125
        • 16進位表示 0x125
    • 浮點數
      • 有小數點的數字
      • 125.0
  • 布林boolean(只在C++有, C沒有)
    • True
    • False
 
在使用變數要經過宣告
 
*變數宣告的方式
型別名稱     變數1,變數2, ... ;
 
*型別名稱
  • int
    • 整數
    • 在C裡面 一個int是2個byte, 在C++ 是4個byte
  • float
    • 單精準度浮點數
    • 4個byte
  • double
    • 倍精準度浮點數
    • 8個byte
  • char
    • 字元
    • 1個byte
    • 在 C 裡面沒有字串型別, 所以使用陣列來處理
  • bool(只在C++有, C沒有)
 
 
變數名稱是自己命名(因為不知道會有多少變數)
*變數名稱的規則
  • 第一個字一定是 英文字母 或是 底線 第2個字以後就可以用數字
  • 不可以使用 保留字
  • 要注意區分大小寫
 
 
C 所有的函數名稱都是小寫
整數的 int 前面  可以加東西修飾他 例如
  • long int 長整數
  • unsigned int 無號整數(沒有負數的整數)
 
例如: 
int  a; //宣告(請作業系統去定址一個記憶體空間) 整數 a (int 佔2個byte)
a=1; //a 的起始值為1(將1擺放到a的記憶體空間去) = 符號為指定
 
 
 
***************************************************************

Dreamweaver 20090514 上課小記

************************20090514 徐國堂 **************************

版面製作
  • 表格
    • 內容與結構混合在一起
  • CSS
    • float
    • position
      • static
      • relative
      • fixed
      • absolute

CSS 套用方法
  • inline 行內樣式
  • embed 嵌入
  • link
    • 部落格常常使用link的方式連結外部的CSS
  • @import

練習行內樣式
開新檔案 --> 輸入一些練習文字 並選取文字

在下方的屬性畫面
--> HTML --> 段落
--> CSS --> 目標規則:新增行內樣式 --> 編輯規則
--> 字型 --> 輸入 Font-size: 13 --> Color: 選取顏色 --> 區塊標籤 --> Letter-spaceing: 3 px --> 確定


*body標籤內的就是網頁的內容及架構(沒有經過修飾)
*即時檢視 對網頁跟資料庫連接很方便

Lab:
建立一個新檔案 sample.html 複製 index.html內的 body標籤內的內容 到sample.html 檔案body標籤內
建立一個新的CSS檔案為 sample.css
於sample.html 設定外部連結 sample.css

*架構了解(自行繪製網頁的區塊) 才能編輯CSS
*一個頁面只有一個body標籤

*CSS
  • body
    • text-align: 要求文字排列方式
    • 例如 text-align: center; 就是文字都要置中
  • border:solid 1px; 邊線為實線 寬度為 1 px
  • width:550px; 寬度為550 像素
  • margin-left:auto;
  • margin-right:auto; 當左右的 margin 都設定為auto 就是置中
  • font-size: 1.25em 字型大小為瀏覽器的1.25倍
  • padding-top: 20px 向上留白(填滿) 20px
  • padding-bottom: 20px 向下留白(填滿) 20px
  • margin-top: 0px 上邊界 0 px
  • margin-bottom: 0px 下邊界 0 px

Box moudle
*padding 包含背景區域
*margin 有負邊界
*padding 沒有負邊界, 有背景及margin 才會設定padding

*CSS的大小單位
  • px 像素
  • em 相對於瀏覽器文字大小的倍數


***************************************************************

星期二, 5月 12, 2009

Dreamweaver 20090512 上課小記

************************20090512 徐國堂 **************************

設計網頁主要的區域
  • Logo
  • banner
  • main navigation
  • sub navigation
  • 內容
  • 廣告
  • copyright

顯示器的設定一定要設定為 1280x1024 導引線比較好拉

*開啟尺規 好建立導引線
  • 檢視 --> 尺規 --> 顯示

做網頁
  1. 先規劃網頁的區塊
  2. 建立導引線
  3. 繪製AP Div 填入背景

繪製AP Div(插入 --> 版面物件 --> AP Div)
  • AP 是絕對位置

F12 預覽網頁
建議使用 巢狀AP Div (編輯 --> 偏好設定 --> AP 元素 --> 勾選 如果在AP Div 中則使用巢狀)

sans-serif 為系統的無襯邊字型

HTML 類型
  • block: 要求左右兩邊不允許有其他的東西存在
  • inline: 左右兩邊允許有其他的東西存在

將網頁置中
  • 將檢視模式切換到分割
  • 選取body標籤內部的內容(不含body標籤)
  • 插入 --> 版面物件 --> Div 標籤
  • ID: main --> 新增CSS規則 --> 確定
  • 方框 --> Width: 900 Margin 內 Right:auto Left:auto
  • 定位 --> Position:relative
  • 點選確定 使其生效, 目前看起來網頁 有上下邊界距離
  • 點選工具列上面的 修改 --> 頁面屬性 (Ctrl + J)
  • 在外觀(CSS) 將上下左右邊界 設定為0 --> 確定
  • 這個時候網頁就已經置中 然後邊界是貼著網頁
  • 將CSS 變成連結外部CSS(所以新建立一個新的CSS檔案讓這個網頁連結)
  • 點選工具列上面的 檔案 --> 開新檔案 Ctrl + N --> 選取CSS --> 建立
  • 點選工具列上面的 檔案 --> 儲存檔案(建議css建立一個資料夾獨立儲存)
  • 切換回來原來的index.html 在原來的CSS樣式 點選 附加外部樣式表(長相像鎖鏈的圖示)
  • 點選瀏覽 --> 選取 剛剛建立的新的CSS檔案 --> 確定 --> 確定
  • 將原來CSS樣式內的style 標籤的所有東西選取起來(利用shift按鍵) 使用滑鼠左鍵 拖曳到 sample.css(剛剛建立的css)
  • 這個時候在程式碼內 會觀察到有 link href="css/sample.css" rel="stylesheet" type="text/css" 連結到外部的css
  • 儲存所有檔案 使用F12 檢視網頁 --> Finish

***************************************************************

20090511 opensolaris 社群者大會note

Advantages

  • ZFS – revolutionary file system

  • DTrace – dynamic tracing

  • Scalability, reliability, observability

  • Security (incl, trusted extensions )

  • compatibility guarantee (stable API)

  • Free & open source, but supported


Package manager → Image Package System

#pkg image-update <升級到最新>

  • 會建立 新的Boot Environment(BE)

  • 建立新的GRUB Entry

  • take snapshot of old BE ( 置於另外一個ZFS)(類似VMWare 的link-clone, 比較不佔空間)


Fast Graphical Reboot

#reboot -f


More Linux Familiarity

  • pfexec 類似sudo


openSolaris 預設不能在Live 安裝的時候選套件


Auto install

  • caiman project


自訂自己的opensolaris

#distro_const build slim_cd.xml


Crossbow (尚未Release!!)

  • Virtual NICs(VNICs)

  • Flow control


http://genuinx.org 可以下載到最新的OpenSolaris


Multi-Booting

  • One Hardware – Many OS

  • One OS – Many Hardware


Solaris Partition 的system id → bf ( solaris 2)

  • 如果設定為82 (solaris 1 ) 會被linux 當成swap

:

Network manager

  • Network Auto-magic




Dreamweaver 20090505上課小記

************************20090505 徐國堂 **************************

段落

CSS like shell in the linux --> interface for web contents 把網頁內容透過CSS 輸出成想呈現的畫面
Cascading Style Sheets(層疊樣式表/串樣式列表),簡寫為CSS,由W3C定義和維護的標準,一種用來為結構化文檔(如HTML文檔或XML應用)添加樣式(字體、間距和顏色等)的計算機語言。
***************************************************************

星期日, 5月 10, 2009

Freemind on website

最近都在使用Freemind 整理東西
所以也希望用 web的方式
來整理自己的研究進度 還有待辦事項

參考 程式旅人 - 學習紀事 - http://nio127.blogspot.com/2009/03/freemind.html

將 http://www.efectokiwano.net/mm/freeMindFlashBrowser.zip 下載並解開 FlashBrowser

將以下三個檔案上傳到 Google pages
flashobject.js
mindmaps.html
visorFreemind.swf

於網頁中 輸入以下程式碼 (以下程式碼前後 加上 < 及 > )

embed src="http://sakanamax.googlepages.com/visorFreemind.swf" width="100%" type="application/x-shockwave-flash" align="middle" height="1000" bgcolor="#FFFFFF" quality="high" flashvars="openUrl=_blank&initLoadFile=http://sakanamax.googlepages.com/IDSsurvey.mm&startCollapsedToLevel=5"

接下來只要將 心智圖的 .mm 檔案上傳就可以
以網頁的方式來呈現了
相關效果如下


星期六, 5月 09, 2009

Freemind on openSUSE 11.1

之前就覺得 Freemind 是一個不錯的軟體
可以整理自己的思緒 還有週邊的工作

相關圖片 引用自 http://freemind.sourceforge.net/FreeMind-learning-german.png


在Windows 的平台都是使用免安裝版
在我的notebook上面也想裝Freemind來整理自己的相關待辦事項

在Freemind的官方網頁
http://freemind.sourceforge.net/wiki/index.php/Main_Page

有download 頁面
但是把 freemind的相關rpm 下載下來會發現
有些相關性的套件 沒有在套件庫內存在
所以就找了一下資料

相關頁面
http://freemind.sourceforge.net/wiki/index.php/FreeMind_on_Linux#Installation_of_FreeMind_0.8.1_under_SuSE_10.3

使用YaST2 套件庫模組 新增3個套件庫
可以點選 電腦 --> YaST --> 軟體套件庫
或是在終端機輸入
# yast2 repositories

然後點選新增 --> 指定URL --> 輸入套件庫URL 及名稱 --> 下一步
就可以順利新增套件庫
要新增兩個指定 URL 的套件庫
http://eric.lavar.de/comp/linux/rpm/noarch
http://mirrors.dotsrc.org/jpackage/1.6/generic/free

以及一個社群套件庫
主要套件庫( 非-OSS)

安裝完套件庫之後
就可以在YaST 內的軟體管理
或是在終端機內輸入
#yast2 sw_single

看到 freemind 這個軟體
直接安裝就可以使用

enjoy your freemind ~~
---------------------------------------------------原文參考------------------------------------------------------------------------
  1. Add software repositories using YaST:
    1. Add URL http://eric.lavar.de/comp/linux/rpm/noarch (repomd.xml is not signed, ignore YaST complains)
    2. Add community repository Main non-OSS (for Sun's Java)
    3. Add Jpackage URL free, generic and version 1.6, using the list of JPackage mirrors (http://jpackage.org/mirroring.php#mirrors), e.g.
  2. Using YaST's software management, search for 'freemind' and install what you see and like.
  3. Also using YaST's software management, make sure that java-1_5_0-sun or java-1_6_0-sun is installed (search for '-sun').
  4. And make sure that FreeMind uses the right Java (not gcj as per default).
----------------------------------------------------------------------------------------------------------------------------------------

星期日, 5月 03, 2009

NFSv4 在 opensuse 11.1

在OpenSuse 11.1 的YAST管理模組內有支援 NFSv4
在/etc/exports 內的設定 舉例來說
/srv/ftp/install/opensuse11.1/DVD *(fsid=0,ro,root_squash,sync,no_subtree_check)

啟動 nfs server (#rcnfs 為NFS client, #rcnfsserver 為NFS Server)
#rcnfsserver start

選項
fsid=0 為NFSv4的選項, 定義 NFSv4 中的根目錄,只能有一個
no_subtree_check 不做上層目錄權限的檢查, 可加快速度


用戶端 掛載時 也要注意掛載方式
  • mount 不指定類型 還是以 nfsv3 來掛載
linux-7lre:~ # mount 192.168.1.128:/ /mnt/nfs
mount.nfs: access denied by server while mounting 192.168.1.128:/

  • 所以要指定 -t nfs4 的類型來掛載
  • 掛載的來源資料夾為 / 就不是 /srv/ftp/install/opensuse11.1/DVD 的方式
linux-7lre:~ # mount -t nfs4 192.168.1.128:/ /mnt/nfs

  • 驗證掛載
linux-7lre:~ # df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda2 9550788 4019660 5045968 45% /
udev 257536 100 257436 1% /dev
gvfs-fuse-daemon 9550788 4019660 5045968 45% /root/.gvfs
192.168.1.128:/ 30961728 8859904 20529088 31% /mnt/nfs

linux-7lre:~ # ls /mnt/nfs
ARCHIVES.gz content.asc gpg-pubkey-7e2e3b05-4816488f.asc
ChangeLog content.key gpg-pubkey-9c800aca-481f343a.asc
GPLv2.txt control.xml gpg-pubkey-a1912208-446a0899.asc
GPLv3.txt directory.yast images
INDEX.gz docu license.tar.gz
README dosutils ls-lR.gz
README.DOS gpg-pubkey-0dfb3188-41ed929b.asc media.1
SuSEgo.ico gpg-pubkey-307e3d54-481f30aa.asc openSUSE11_1_LOCAL.exe
autorun.inf gpg-pubkey-3d25d3d9-36e12d04.asc openSUSE11_1_NET.exe
boot gpg-pubkey-3dbdc284-49144c3f.asc pubring.gpg
content gpg-pubkey-56b4177a-47965b33.asc suse

相關的Lab還要多嘗試 ^__^