107.10.27 [Git] 修改已經 push 的 commit 訊息

首先把當下的修改做 commit 或 stash
請隨時愛用 git log 和 git status 查看當前狀態
以下為真實例子,要修改的已經 push 而本地端又多兩個 commit

$ git log
commit 452143805e8720f1085a7d14585f07cd6be4cb95 (HEAD -> master)
Author: aben20807 
Date:   Sat Oct 27 19:39:39 2018 +0800

    Implement specialBits()
    
    Because 0xffca3fff has exactly 1 byte 0b00101000
    in the middle, use its complement 0b11010111 to
    shift left 14 bits and complemet it finally.

commit e36bee804ba0bd24a2f4b3658488ca3d5ad11e37
Author: aben20807 
Date:   Sat Oct 27 19:36:43 2018 +0800

    Ignore .swp files

commit 77883e77862f88fc91730ca9a2035fb1d6c5ddf3 (origin/master, origin/HEAD)
Author: aben20807 
Date:   Sat Oct 27 17:32:02 2018 +0800

    Fix shifting warnings from cppcheck
    
    Because cppcheck will complain when shifting signed 32-bit
    value by 31 bits, this commit change these variables that
    needs to shift 31 bits to become unsigned and add the
    integer-suffix 'u' to integer constants.
    For example:
    `x >> 31` becomes `(unsigned) x >> 31`
    `1 >> 31` becomes `1u >> 31`

commit c33896f8fb684227102284a7313228cb876bd716

我要修改 77883e77862f88fc91730ca9a2035fb1d6c5ddf3 的 commit 訊息

107.09.19 [Ubuntu] 18.04 觸控版手勢

連 windows 都有手勢了
所以就來讓 ubuntu 也能使用吧 OuO

107.09.15 [Ubuntu] 18.04 變更登入背景

一般對自訂比較要求的人,都會把系統的東西改來改去
與視覺相關的通常最容易被更動,像是桌面背景
而 Ubuntu 的登入背景老實說不好看,黑嘛嘛一片
但是預設能改的只有鎖定背景 ="=

107.08.31 [Rust] cargo 使用多個 main 檔案

寫學習的程式時,若每一個 main 函式就要用 cargo new 新增專案的話不免有些浪費
所以就找到如何同時存在多個有 main 函式的檔案

e.g. 正常下用 cargo new 時檔案結構
$ cargo new mytest
$ cd mytest
$ tree .
mytest/
├── Cargo.toml
└── src
    └── main.rs

測試這個 main 時只需要用 cargo run 執行即可
cargo 會去找 src/lib.rs 或 src/main.rs 當作程式進入點的檔案

107.08.29 vim 選取模式下貼上不要剪下選取部分

如標題,想簡單描述卻偏複雜
問題是這樣的
當用 v (選取)一些字後,想用 p (貼上)剛剛用 y (複製)下來的東西
但是 vim 在做完 p 後會自動把選取的字 d (剪下)
導致下次 p 時,會貼到剛剛被覆蓋的字

如下範例,第二次用 p 時,正常預期結果是 aaa 但實際卻是 bbb
aaa ---> y 複製
bbb ---> p 貼上 ---> aaa
ccc ---> p 貼上 ---> bbb

107.08.25 C 語言 static 和 shared 函式庫

函式庫 (Library) 主要分成二種,靜態函式庫 (static library)、動態函式庫 (shared library)

107.08.24 C 語言編譯到執行流程

很久之前寫過這篇 106.02.11 程式編譯流程
但是覺得還不夠深入,剛好學過編譯器了
雖然不是學到的主要內容,不過多整理有助於記憶,順便記錄專有名詞的英文這樣

先上總覽
參考 Create a program – C  - CodingMeta
language-processing for C

107.08.20 blogger 結合 google plus

請幫忙集氣 Blogger、G+ 不死 (X

先附上連結,請追蹤並按個小鈴鐺以接收通知 ❤
https://plus.google.com/u/0/collection/AaoWdE

107.08.19 rust 之路 12 Struct

引頸企盼 (並沒有
這不就更新了嗎
該放起司的地方放起司,該放肉片的地方放肉片,再用左右大括號括起來,美味的 struct 完成了 (?
Photo by Pablo Merchán Montes on Unsplash

107.08.17 vim 自動生成中間路徑

有時候想要新增一個資料夾並編輯裡面的檔案時
總想偷懶
例如:
原本沒有 002_data_copy 資料夾,但要編輯裡面的 main.c
$ vim 002_data_copy/main.c

107.08.16 cygwin 安裝

做了新版的投影片
順便修正一些覺得奇怪的地方


107.08.15 線性代數 determinant

行列式 (Determinant) 是數學中的一個函數,將一個 nxn 的矩陣 A 映射到一個純量
記作:\$\det(A)\$、\$\begin{vmatrix}A\end{vmatrix}\$
用途:
判斷是否可逆 (Invertible)、非奇異 (Nonsingular),若不為 0 代表可逆、非奇異
尋找特徵值 (Eigenvalue)

範例
\$A = \begin{bmatrix}
3 & 4\\
1 & 2
\end{bmatrix}\$,則 \$A\$ 的行列式 \$\det(A) = \begin{vmatrix}
3 & 4\\
1 & 2
\end{vmatrix}\$

107.08.14 作業系統 中斷 (Interrupt)

中斷 (Interrupt)

定義:指中央處理器 (CPU) 接收到來自硬體或軟體的訊號,而進行相對應的處理

107.08.13 線性代數 Inversion

欸豆,最近可能會整理一些之前的上課筆記 (線代、計理、OS、compiler....)
主要是想把當下有多記錄的技巧用比較好懂的方式寫出來
所以可能沒有很嚴謹也沒有很完整 QuQ
然後 Rust 系列斷有點久,我盡量不耍廢 QuQ

矩陣可逆性 (Matrix Inversion)

定義:
對於 nxn 的矩陣 \$A\$ 若存在一個 nxn 的矩陣 \$B\$,使得 \$AB = BA = I\$
則稱 \$A\$ 為可逆矩陣 (invertible)、也為非奇異矩陣 (nonsingular)
其中 \$I\$ 為單位矩陣 (identity matrix)、\$B\$ 稱作 \$A\$ 的逆矩陣 (inverse of A) 記作 \$A^{-1}\$

107.08.06 關於 code reuse 的問題,投票囉

最近寫程式發現設計頗為重要
也通常是花最多時間的部分
在 code reuse (程式碼重用) 部分我就發現有幾種寫法
也不知道怎麼查相關的資料
這好像是比較偏向 coding style,所以並沒有正解 吧
總之就來統計個 (雖然應該很少人才是 QuQ
Picture from MonkeyUser.com

code reuse 最簡易的就是把會重複的部分寫成函式
以我最近正在寫的為例,我盡量簡化@@,也會提供詳盡的程式碼區塊
總共三種版本,每個版本各有三個函式

107.08.04 c 的指標怎麼寫怎麼念

<注意> 本文不是教指標怎麼用,而是記錄一下寫法和念法
不然好像每次寫指標都在重新查怎麼寫 QuQ
當然寫法只是一種 style 並不強制

107.07.25 eclipse for vimer

因為要寫 Java 所以就得用 eclipse (?
主要就是把 eclipse 裝一些插件

107.07.24 在 chrome 用 vim 指令

前幾天直播介紹了一些 vim 的基礎操作
想看的來這裡喔~
投影片:https://hackmd.io/p/ryg-CBkmm#/
YouTube:https://www.youtube.com/watch?v=rs_CrFihrGg

然後最近真的手腕痛
不知是沒在寫字還是什麼原因?
主因應該是滑鼠啦,我的無線滑鼠偏小顆
所以掌根都會貼著桌面,並用手腕在滑,正常要手臂跟著動較不會痠痛

因此就找到這個擴充
連結:cVim

107.07.21 vim 檔案外部修改刷新

如何不關掉 vim 就刷新外部對此檔案的更新?
這其實是頗常見的問題
完成如 gif (在右方更新內容儲存後左邊馬上刷新)


107.07.18 簡單設定截止時間執行指令

情境:在設定的時間要去 clone (有點像是禁止遲交)
簡單解法:利用 sleep 跟 date 兩個 system call

舉例:在 2018 年 7 月 17 日 23:59:59 執行 ls

上程式碼:(test.sh)
deadline=$(date -d"2018-07-17 23:59:59" +%s)
now=$(date +%s)
during=$(($deadline-$now))
sleep $during;
ls

執行:
$ bash test.sh

把 ls 換成想要執行的指令即可,e.g.  git clone ....
執行後就等時間到吧
注意不要關掉終端機嘿 OuO

107.07.10 ubuntu caps lock 換成 esc

找了一整天有沒有可以用的登入後自動執行 script 的方法
結果全部都失敗
真的是每裝一個系統都要想辦法把它改掉欸QuQ

<注意>
改造前請先查看是否有按到 caps-lock

安裝 dconf-editor (已經安裝的就不用重新安裝
$ sudo apt update
$ sudo apt install dconf-editor

開啟
$ dconf-editor

前往 / org / gnome / desktop / input-sources / xkb-options
取消使用預設值
在下方框框中打入
['caps:escape']
接著下面會出現儲存勾勾
儲存關閉後立即生效

107.07.04 blogger 分類、標籤我都要

本篇程式碼主要來自以個兩個網站,然後作稍微修改
[教學]5分鐘讓你Blogger的標籤改成樹狀階層式 - 櫻桃椒
[教學] Blogger 文章頁面製作分類與標籤 - 技研可樂

因為 Blogger 只提供標籤功能
要做分類的話有一個最簡單的方式:就是一篇文章一個標籤,直接當分類用
但這樣會有兩個問題
1. 標籤一多時分類會一大坨。 ---- 用樹狀標籤解決
2. 我還是要用標籤怎麼辦。 ---- 用不顯示第一個標籤解決
先上最後結果:


107.06.30 刪除雙系統的 grub 介面

有始有終才算一個完結
想當初裝 Manjaro 時每天用,現在其實幾乎不會打開
主要是因為開機時 KDE 跑太久
被 win10 養慣的快速開機後就回不去了 QuQ
所以今天就來教如何刪掉它吧


107.06.18 cygwin gdb redirection

redirection 就是透過 <、> 來操作資料流
例如
檔案 test.c:
#include <stdio.h>
int main(){
    int x;
    scanf("%d", &x);
    printf("%d", x);
    return 0;
}
編譯:
$ gcc test.c -o test

執行(使用 redirection):
$ ./test < input.txt  # integer 5 in input.txt
$ 5 # program output

107.06.18 好看的 gdb, gdb-dashboard

相信常常要與 Segmentation fault 對抗時 GDB 絕對是好夥伴
GDB 即為 GNU Debugger 的縮寫 (GNU 是 GNU's Not Unix....
而這次要介紹的是比較美觀的 GDB

107.06.09 rust 之路 11 Slices

除了 borrow 還有一個方式可以避免拿到所有權,就是 slice
slice 也是 borrow 的一種,但是可以 borrow 連續結構(String、array、vector....)的片段
一片檸檬,一口茶,一個章節,一段時光
Photo by Joanna Kosinska on Unsplash

107.06.05 在Blogger文章加入程式碼 (三)

此篇是 105.07.16 在Blogger文章加入程式碼 (一) 以下稱為 (一) 的加強版
  • 加入非預設的語言
  • 使用 querySelectorAll() 簡化 codeblock 的 class name

107.06.02 rust 之路 10 生命週期

哇,直接富堅超過半個月 QuQ

好了這應該是最後一個比較偏向觀念的地方

有一天,書與報紙只會剩下一個,我會希望的是我與報紙
因為我無法想像她一個人如何對抗孤獨
--- 呱吉                
Photo by Fabrizio Verrecchia on Unsplash

107.05.12 rust 之路 09 參考&借用

題外話,Rust 1.26.0 在 5/10 發布啦 OuO

借用 (Borrowing) 主要就是參考 (Reference) 概念的包裝
跟 C++ 的 reference 概念相同,差在寫法上
只不過我覺得 Rust 的寫法會讓程式碼要傳達的意思比較清楚

捲走你以為放得下的思念,然後又被海浪給還了回來
Photo by Spencer Watson on Unsplash


107.05.08 rust 之路 08 所有權

之所以重要是因為 Rust 的安全性主要就建構在這個概念上
而所有權 (Ownership) 又另外衍伸成其他兩個部分:Borrowing、Lifetimes
不過這篇就只提所有權,不然會超多
理論上這幾篇都是理論課 @@

我擁有你,你擁有我,最微妙的關係
Photo by frank mckenna on Unsplash

107.05.06 rust 之路 07 流程控制

Rust 的,應該說大部分語言的流程控制都相近
我盡量簡單帶過重複的部分 OuO

人生像充滿迴圈,每個迴圈又是不斷的選擇,一天,一年,一生
Photo by Patrick McManaman on Unsplash

107.05.06 rust 之路 06 函式

來了 Function OuO
其實前面已經用很多次啦
不過還是有些概念和寫法需要補充

植物是函式,蜜蜂是函式;接受別人的付出後再給予回饋
Photo by Danilo Batista on Unsplash

107.05.05 rust 之路 05 型別

注意 Rust 為靜態語言 (static typing) 所以在編譯時期變數型別必須已知
但是又不需要囉嗦的每個都寫說是什麼型別,因為 Rust 有 Type inference 會自動推論

Rust 的資料型別有兩大類:純量 (Scalar)、複合型 (Compound)
純量有整數 (Integer)、浮點數 (Floating-Point)、Boolean、字元 (Character)
複合型有 tuple、陣列 (Array)
萬物形色多樣,卻又同由固定的基本元素構成,是型態構成型態?
Photo by Jeremy Thomas on Unsplash

107.05.05 rust 之路 04 變數

來了久等了,終於度過偏爆炸的一個禮拜 OuO
(明明就超過一個禮拜

這次主題應該偏簡單
會介紹變數 (Variable)、常數 (Constant)、Static Variable、Shadowing (遮蔽)

相對於地上的我們,天上星星的存在是接近永恆不變的
變與不變的道理....請參考前赤壁賦 (不要玩古文x
Photo by John Fowler on Unsplash

107.04.24 rust 之路 03 Cargo

Cargo 是 Rust 的專案管理神器
它可以幫你產生專案、編譯專案、下載專案的相依套件
再搭配 crates.io (Rust 社群的 package registry) 根本超方便 OuO

cargo 我查字典是貨物,而 crate 是貨箱,恩....好像有什麼感覺又沒有 OuO
Photo by chuttersnap on Unsplash

107.04.21 rust 之路 02 Hello World

就來第一個程式啦 OuO

之後講解的環境應該都是 win10 (作業系統) + cygwin (shell) + vim (編輯器)
Hello World
Photo by NASA on Unsplash

107.04.17 rust 之路 01 環境建置

Rust 支援的平台超多
基本上 mac、windows、linux 的 32、64 位元都有 std、rustc、cargo 全支援
完整版列表:Rust Platform Support

我覺得官方提供安裝流程很簡單 Install Rust
本篇只會有兩種環境建置過程 (因為我沒 mac

107.04.16 程式語言作業(二) diff

前言

程式語言的作業二是用 Lisp 寫一個 diff 程式

題外話
其實作業二有三小項可選,後面是寫該項目可以拿幾分
1: 80、2: 90、1+2: 100、3: 100
我懶得寫 1+2 而切那個好像還要說明一堆東西所以直接挑戰 3 也就是本篇主題啦

所謂 diff 程式就是可以比較兩個檔案的差異,如下圖
不要問我為啥有 end 這個東西,因為助教的說明文件就打這樣,可能是新版的 endl 吧(誤

107.04.15 rust 之路 00 語言介紹

首先,這裡的 Rust 是一種程式語言,不是 steam 上的遊戲 @@
道路應該要沒有盡頭,就像學習,以此自勉能持續
Photo by Amanda Sandlin on Unsplash

107.04.10 文件中程式碼高亮

有時候要在投影片或文書軟體輸入程式碼時很麻煩
像是格式會跑掉,或是沒有高亮
而這個線上工具 Online syntax highlighting 就可以解決此問題
網址:https://tohtml.com/


107.04.02 vim runner 介紹

aben20807/vim-runner
來,久等了,星起來,星起來 OuO

107.04.02 右鍵以 cygwin 開啟資料夾

win10 的 power shell 按著 shift + 滑鼠右鍵就會出現在選單中
每次要在特定資料夾開啟 cygwin 時都要用 cd 感覺頗麻煩=''=
然後就找到了 OuO

107.03.31 解決 visual studio 偵測到 'RuntimeLibrary' 不符

用到瘋掉 (x
cmake 後用visual studio 2017建置發生錯誤

主要應該是下面這一坨

3>libcpmtd.lib(xdateord.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(xwctomb.obj) : error LNK2005: __Getcvt 已在 msvcprtd.lib(MSVCP140D.dll) 中定義過了
3>libcpmtd.lib(winapisupp.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(StlCompareStringA.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(winapinls.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(StlCompareStringW.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(StlLCMapStringW.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>libcpmtd.lib(StlLCMapStringA.obj) : error LNK2038: 偵測到 'RuntimeLibrary' 不符: 'MTd_StaticDebug' 值與 'MDd_DynamicDebug' 值 (位於 main.obj) 不符
3>LINK : warning LNK4098: 預設的程式庫 'LIBCMTD' 與其他使用的程式庫衝突,請使用 /NODEFAULTLIB:library

107.03.13 vim surrounder 介紹

aben20807/vim-surrounder
同樣來一篇 surrounder OuO
星星都來吧 (x

107.03.13 vim commenter 介紹

aben20807/vim-commenter
感覺就算寫了 README、寫了 doc 還是沒人看啊 QuQ
雖然在這裡介紹也差不多 QuQ
有 GitHub 的可以順手按個星星之類的,我會很感激 QuQ
不過還是想用繁體中文寫一個超完整(?)的介紹
總之,目前寫了3個 plugin 了,沒意外就各來一篇 OuO

107.03.05 manjaro sysrq | reisub 安全重新開機

主要是在 manjaro 聽 vlc 聽到一半突然當機 @@
按什麼都沒反應
按 ctrl + alt + delete 當然也是沒反應 @@
只好按著電源鍵強制關機
但是這樣頗傷電腦
所以就找到 sysrq 這個東西 OuO
它的位置跟 prt sc 同一個

107.03.02 git push 免帳號密碼 | ssh key

基本上一個環境執行一次即可
但是步驟偏多,所以還是記錄個 OuO

<注意>請在自己熟悉的環境使用 ssh key,請勿在公共電腦使用

1. 檢查 ssh key
基本上都會顯示不存在,若已有,請先備份
$ cd ~/.ssh

107.03.02 解決 ale 的 gcc 不顯示錯誤 | 把 gcc 輸出改成英文

ale 是 vim 裡好用的即時偵錯插件
以前不知道為何 ale 中的 gcc 一直不能用,所以用 clang 就解決
但是本篇要來解決 gcc 的問題 !!!!

由於都沒有報錯誤訊息所以主要能夠排除是 ale 的問題

首先關於 linter 的設定,cpp 改成使用 g++
不要因為 cpp 後面的支援寫 gcc 就用 gcc
let g:ale_linters = {
            \   'cpp': ['g++']
            \}

產生一個有錯的 .cpp 檔
$ vim t.cpp

#include 
#include 
#include 
using namespace std;

int main()
{
    here
    return 0;
}

107.03.01 manjaro caps lock 換成 esc

之前有一篇 win10 版本的
106.07.26 win10 caps lock換成esc

<注意>
並不是caps lock 和 esc 交換
而是 caps lock 換成 esc,也就是說 caps lock、esc 都是 esc

因為按習慣了所以 manjaro 也來改一下 OuO
本篇也會提到如何使用登入自動執行 .sh 檔

首先我查到使用以下指令可以把 caps lock換成esc
$ setxkbmap -option caps:escape
直接在終端機執行即可

但是重新登入之後就要再重新輸入一次
就來使用登入執行的功能

107.03.01 vim +clipboard

vim 與系統剪貼簿互通相當重要
一般從系統剪貼簿要貼到 vim 可以使用 ctrl + shift + v
而從 vim 複製到系統剪貼簿可以使用 "+y
但是後者必須 vim 有支援 clipboard

使用下面指令可以查看 vim 所支援的配置
$ vim --version
只要看剪貼簿相關可使用
$ vim --version | grep clipboard

一般安裝 vim 時 (使用下面指令) 並不能使用系統剪貼簿
$ sudo pacman -S vim
也就是說不能使用 "+y 把選取的文字複製到剪貼簿中
其 vim --version 如下,可以看到 clipboard 前方是 "-"

107.03.01 線上工具 aaencode

把 javascript 轉碼成各種顏文字
算是有加密混淆的效果吧,不過頗可愛OuO
但是字數多超多就是了
網址:http://utf-8.jp/public/aaencode.html


107.03.01 線上工具 draw.io

最好用的線上流程圖繪製工具沒有之一
網址:https://www.draw.io/

107.02.24 解決 virtualbox RTR3InitEx failed

較完整的錯誤訊息:
VirtualBox - Error In supR3HardenedMainInitRuntime
RTR3InitEx failed with rc =-1912 (rc=-1912)
如圖

107.02.24 manjaro shutter 截圖神器

內建的截圖其實已經頗強大
不過不能畫圖還是用不長久
話說原來 shutter 可以畫圖 !!!!
(我以前都不會用QuQ

安裝 shutter
$ sudo pacman -S shutter

107.02.24 修改 grub 倒數秒數

頭痛了頗久QuQ
終於可以看電腦了QuQ

一開始裝好雙系統後會使用 grub 做開機選單
但是只有 5 秒可以選擇
覺得太快所以就調成 20 秒

首先
$ sudoedit /etc/default/grub

107.02.21 linux 中文資料夾英文化

安裝中文版本的通常都有這個問題
就是 home 下的目錄都是中文的,如果要去桌面就要打中文,頗麻煩 =''=

107.02.20 manjaro 安裝中文輸入法 hime

使用 yaourt 安裝
$ yaourt hime-git

107.02.20 manjaro 安裝 yaourt

剛剛安裝了 vim (主要是因為不想用 nano)
106.02.20 manjaro 安裝 vim

開啟 /etc/pacman.conf
$ sudo vim /etc/pacman.conf

107.02.20 manjaro 安裝 vim

竟然沒有 vim @@
安裝個 OuO


$ sudo pacman -S vim 

107.02.20 manjaro win10 雙系統

說來慚愧
一直到大三才裝了雙系統
然後還沒重灌過 (有好的整理習慣就不用重灌好不好OuO
然後最近不小心看到 Manjaro 這個發行版感覺不錯就來試了

<注意>
本教學可能因為版本、環境不同而與安裝當下會有不一樣的步驟或錯誤
硬碟資料請先備份

Manjaro 版本:manjaro-kde-17.1.5-stable-x86_64
Windows 10 版本:1709 (16299.248)
硬體:筆電 (UEFI)

107.02.15 c++ template iterator

今天除夕
祝大家新年快樂啦 OuO

記錄一下把 C++ 中的 vector 函式改成 template
只改 vector 是頗容易,但是加上 iterator 就出現錯誤

原本只能使用 int 當作元素的函式
void print_vector(vector<int> a)
{
    vector<int>::iterator iter;
    for (iter = a.begin(); iter != a.end(); iter++) {
        printf("%d ", *iter);
    }
    printf("\n");
}

107.02.09 解決 clang 找不到 iostream

環境:(其他環境應該也可以用類似解法只是路徑不同要自己找一下)
Cygwin
clang++ --version:5.0.1

主要是要寫 C++ 時,ale 報錯:
([clang] 'iostream' file not found [W])
感覺是 clang 的問題,就來解決啦
p.s. 圖片中的 10055_Hashmat_the_brave_warrior 就自動換成 test 囉

^ Top