星期三, 5月 20, 2009
Freemind 升級到 0.9.0_RC3 on openSuSE 11.1
因為家裏的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 上課小記
使用軟體 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 函數 去執行系統上面的指令
- 常數: 程式執行中, 固定不變的資料. 直接把資料寫在上面
- 變數: 程式執行中, 資料可以被修改.
- 文字
- 字元
- 使用單引號來表示, 針對一個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
-
- int
- 整數
- 在C裡面 一個int是2個byte, 在C++ 是4個byte
-
- float
- 單精準度浮點數
- 4個byte
-
- double
- 倍精準度浮點數
- 8個byte
-
- char
- 字元
- 1個byte
- 在 C 裡面沒有字串型別, 所以使用陣列來處理
-
- bool(只在C++有, C沒有)
- 第一個字一定是 英文字母 或是 底線 第2個字以後就可以用數字
- 不可以使用 保留字
- 要注意區分大小寫
- long int 長整數
- unsigned int 無號整數(沒有負數的整數)
Dreamweaver 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 上課小記
設計網頁主要的區域
- Logo
- banner
- main navigation
- sub navigation
- 內容
- 廣告
- copyright
顯示器的設定一定要設定為 1280x1024 導引線比較好拉
*開啟尺規 好建立導引線
- 檢視 --> 尺規 --> 顯示
做網頁
- 先規劃網頁的區塊
- 建立導引線
- 繪製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上課小記
段落
星期日, 5月 10, 2009
Freemind on website
所以也希望用 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
可以整理自己的思緒 還有週邊的工作
相關圖片 引用自 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 ~~
---------------------------------------------------原文參考------------------------------------------------------------------------
- Add software repositories using YaST:
- Add URL http://eric.lavar.de/comp/linux/rpm/noarch (repomd.xml is not signed, ignore YaST complains)
- Add community repository Main non-OSS (for Sun's Java)
- Add Jpackage URL free, generic and version 1.6, using the list of JPackage mirrors (http://jpackage.org/mirroring.php#mirrors), e.g.
- http://mirrors.dotsrc.org/jpackage/1.6/generic/free (repomd.xml is not signed, ignore YaST complains)
- Using YaST's software management, search for 'freemind' and install what you see and like.
- 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').
- And make sure that FreeMind uses the right Java (not gcj as per default).
星期日, 5月 03, 2009
NFSv4 在 opensuse 11.1
在/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 來掛載
mount.nfs: access denied by server while mounting 192.168.1.128:/
- 所以要指定 -t nfs4 的類型來掛載
- 掛載的來源資料夾為 / 就不是 /srv/ftp/install/opensuse11.1/DVD 的方式
- 驗證掛載
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還要多嘗試 ^__^