顯示具有 教學 標籤的文章。 顯示所有文章
顯示具有 教學 標籤的文章。 顯示所有文章

2017年9月24日 星期日

[教學]將您的Vim改裝成一個強大的C++ IDE

功能:
  • 自動完成
  • 括號匹配
  • 編譯快速鍵 (F9編譯、F5編譯並執行)
  • 語法檢查
  • 邏輯檢查
  • 重新排版 (F3)
  • 單行/多行註解 (\x)
  • 將游標移動到定義 (F12)
  • 摺疊/展開code
    • 摺疊/展開當前的區塊 (za) (←→方向鍵也可以展開當前的區塊)
    • 摺疊全部的區塊 (zM)
    • 展開全部的區塊 (zR)
    • 展開當前的區塊並摺疊所有其他區塊 (zx)
警告:
  • 會自動sudo apt-get update
  • 會先移除原本安裝的Vim
  • 僅限Ubuntu或其他Debian系列的Linux作業系統,強者們可嘗試修改成可在其他Linux發行版運作的Shell Script (完成後歡迎分享!XD)
已知問題待求解:
  • Vim的啟動速度會變慢 (+1秒)
  • 安裝時間過長、硬碟空間占用過大
使用方式:
  1. wget https://raw.githubusercontent.com/fsps60312/RandomCode/master/InstallVim.sh -O InstallVim.sh
    
  2. chmod 700 InstallVim.sh
    
  3. sudo ./InstallVim.sh
    
  4. 耐心等待安裝、設定完成
  • 估計安裝時間:1小時 (視網路、CPU、硬碟速度而定)
  • CPU將會長時間高效能運轉,請確保您的電腦散熱良好並接上電源
  • 保險起見,請確保您的硬碟至少有500MB的空間
  • 歡迎利用各種方式提出改善建議 (如果您擅長GitHub的話可以看看這裡)

以下是完整示範安裝過程,請參考~^_^

安裝在Windows Subsystem for Linux (WSL):



安裝在Ubuntu 16.04LTS:

Shell Script內容:

2017年9月17日 星期日

Xamarin Forms 常用View的介紹

前言:
  • Xamarin Forms可以讓你寫一次code就可以同時製作出Android、IOS、Windows Phone,甚至是可以在PC、HoloLens、Xbox上面跑的Windows App,相當的方便!其跨平台所帶來的好處不言而喻,但同時也會造成一些問題:
  1. 開發環境建置門檻高
    • 由於牽涉到多種平台的聯繫,等於需要對各種平台都要有相當的了解才知道怎麼設定。這個問題相較於以前已經減輕很多
  2. 功能性
    • 每個平台都有各自的功能,Xamarin Forms只能取其交集,對於Xamarin Forms不提供的特定功能只能針對該平台單獨實作。問題在於你可能不了解該平台,因此不知道該如何實作
    • 同時,身為新技術,Xamarin Forms的確也還沒實作完「全部的交集」,某些功能在每個平台都有提供,但Xamarin Forms卻還未提供該功能,這時也會需要針對各個平台分別實作。這個問題已經改善很多,在未來也會持續改進
  3. 相容性
    • 每個平台皆可獨立於Xamarin Forms之外自行更新,但這常常造成Xamarin Forms對於該平台的相容性問題,建議不要隨意升級各個平台的套件,由Xamarin Forms統一管理其升級事宜。這個問題相較於以前已經減輕很多

名詞解釋:
  • View:通常是一個長方形的東西,有的可以在上面顯示文字、圖片、進度或任何你想顯示的東西,有的用手指點一下會有反應 (「按鈕」就是一種View),有的可以用來輸入文字
  • Layout:是一種View,也是一個長方形的東西,塞很多的View進去是它唯一的功能,但Layout很重要,因為沒有Layout你就不能在同一個畫面中放超過一個View。Layout通常是隱形的,你只能看到它怎麼將塞進它裡面的View排列在畫面上,而不能直接看到Layout本身
    p.s. 以下介紹中Layout會用斜體+粗體表示

接下來就按照使用程度來介紹前10名小莫常用的View吧~

2017年5月18日 星期四

[教學]在Windows 10中突破260字元的檔案路徑長度限制

出於無聊,將系統語言設定成英文 (雖然我是台灣人),因此圖片皆為英文版的畫面,說明文字將以「英文 (中文)」形式代表英文和其可能的中文,例如以下會出現的「File Explorer (檔案總管)」和「More info (更多資訊)」
英文很差,所以不保證中文翻譯會和實際情況完全相符

背景描述
由於小莫的許多專案擁有很長的名稱,為了分類也將這些專案放入越來越深的資料夾,「檔案路徑太長」之類的錯誤也漸漸變成家常便飯。到底,檔案路徑的長度限制是多少呢?
Windows使用的檔案系統 (File System) 格式為「NTFS」,稍微查了一下維基百科,發現NTFS可以允許的最長檔名長度 (絕對路徑+檔名) 是32767個字!
檔名或資料夾能取名到長度大於255也是很厲害了
不過對於路徑長度 (絕對路徑) 的支援
在NTFS檔案系統裡面竟然可以達到32767個字元!!!
不會吧?別騙我,怎麼可能小莫會把路徑長度搞到超過32767啦XD
而且在自己的Windows 10中做測試,實際的限制真的遠不及這個數字QQ
不到300字就開始出錯了XD (目前是244個字,請看右上角的記事本)
哦對了,新增資料夾的快速鍵是「Ctrl+Shift+N」XD

上網搜尋了許多資料,比較一致的看法是260個字元 (這合理多了!)
但是,既然NTFS可以支援,為甚麼Microsoft還是要在Windows中設下這個限制呢?
據說是相容性問題
畢竟在Windows 95的時代還是使用FAT這種限制255字的檔案系統的,如果突然放寬檔名長度限制,會令許多沒寫好的第三方軟體無法正常運作
是的,Microsoft為了讓Windows可以相容在舊版Windows上執行的軟體,真的下了很多功夫啊...... (畢竟,如果某軟體在舊版Windows正常執行,卻會在新版Windows中的某些情況下停止運作,使用者會怪罪到Windows身上啊) (汗

解決方法
您可能會說:「啊現在又不是Windows 95的時代了,誰會去管那老舊的Windows 95軟體呀!」
恩,某些程度上的確可以這麼說,而且軟體crash了是製作軟體的人的錯,不是Windows的錯哦~(咦?
所以呢,在Windows 10的1607版本之後,使用者已經可以自行移除這個檔名長度260字的限制了
所以,該怎麼設定呢?

2016年11月14日 星期一

[教學]Google Blogger留言被吃字問題解決方法

為了問一些關於程式的問題,我們常常在留言中貼上程式碼,按下「發布」之後,「#include<cstdio>」竟然只剩「#include」、每一行開頭的空白也全部都不見了!

慘掉的程式碼www

這樣整個程式碼既不完整,排版也整個慘掉QQ
這是因為程式碼的某些特殊字元和網頁HTML格式衝突造成的
以下提供小莫自製的線上轉換器,專門解決這種問題
使用方法:
  1. 將留言貼到第一個文字框
    貼到第一個文字框
  2. 按下「轉換成HTML」按鈕
    按下轉換鈕
  3. 第二個文字框(在按鈕下面)會產生一串東西,這串東西有時看起來會很奇怪
    將產生的東西複製下來
  4. 不用擔心,直接將這串東西複製、貼到要留言的地方直接當作留言發布,應該就會看到您的留言變得很漂亮很正常囉~
    直接貼上當成留言發布
    正常的程式碼顯示出來了!\(^o^)/
發現任何問題要講哦~小莫才能知道哪裡需要改善^_^
轉換器:

2016年7月8日 星期五

[教學]隨身碟裡面的檔案都不見了!

出於無聊,將系統語言設定成英文 (雖然我是台灣人),因此圖片皆為英文版的畫面,說明文字將以「英文 (中文)」形式代表英文和其可能的中文,例如以下會出現的「View (檢視)」和「Options (選項)」
英文很差,所以不保證中文翻譯會和實際情況完全相符

有一天,去了影印店,把隨身碟裡面的文件列印出來
回家之後,用電腦一看
檔案呢?怎麼都不見了?!
整個隨身碟只剩下一個沒有名字的捷徑
千萬不要去點這個捷徑!!!
您的隨身碟中毒了
請放心,小莫來教您如何找回不見的檔案

找回檔案:
  1. 這是發生悲劇的隨身碟,裡面只剩一個沒有名字的捷徑(千萬不要點開!)



  2. [此步可跳過]小心檢查這個捷徑的內容,發現這個捷徑的路徑很詭異(小莫也看不懂>_<)



  3. 點選「View (檢視)」



  4. 點選「Options (選項)」



  5. 在跳出來的視窗中點選標籤「View (檢視)」(那個背景不一樣就別管了,因為上面兩張是後來才做的XD)



  6. 在下面那一串清單中找到「Hidden files and folders (隱藏檔案及資料夾)」,選擇「Show hidden files, folders, or drives (顯示隱藏的檔案、資料夾及磁碟機)」,點選按鈕「Apply (套用)」,然後把這個小視窗關掉



  7. 看到多出來的兩個資料夾了嗎?不見的檔案都在那個名字叫「_」的資料夾裡面!



  8. 點進那個名字叫「_」的資料夾。還沒結束!先將這些檔案複製到電腦裡面備份,我們準備將隨身碟格式化 (這樣隨身碟內的資料都會不見) 以杜絕後患!




2016年6月22日 星期三

[教學]用C++寫出表單 (Form) 的簡單方法 (非Visual C++)

本文並不教您如何從頭寫出全部的程式碼
僅說明如何利用Dev-C++這個編輯器來產生「編譯出來是一個表單 (Form)」的程式碼

步驟:


  1. 開啟Dev-C++ (下載連結)


  2. 點選「File→New→Project...」


  3. 會出現一個視窗,選擇「Windows Application」後按「OK」


  4. 它會叫你存檔,選擇一個喜歡的名稱和存檔位置後按「存檔(S)」


  5. 好了,這就是「表單」的程式碼,程式碼的各個部分還有附註解說明


  6. 按下鍵盤上的「F11」編譯並執行,它會叫你選擇執行檔的儲存位置


  7. 選個喜歡的儲存位置後按「存檔(S)」,程式碼就會開始被編譯 (編譯需要一段時間),編譯完成後會出現一個空白乾淨(?)的視窗,這就是我們的程式碼產生的「表單 (Form)」


或許你可以試著亂改這份程式碼,研究一下C++產生表單的方式和程式碼每個部份的功能

程式碼:

2016年3月6日 星期日

質數的線性篩法

我們希望每個合數只被篩到一次
可以發現,對於每一個合數$N$
設它的最小質因數為$P$
一定有$\frac{N}{P}\geq P$
而且$P\leq \frac{N}{P}最小的質因數$
因此,我們可以從小到大枚舉$Q$ ($\frac{N}{P}$)
所有$\leq Q最小的質因數$的質數$P$去更新$PQ$
實作上枚舉$P$的時候發現$P$整除$Q$時跳出迴圈即可

code:

2016年1月26日 星期二

[教學]Windows 10的螢幕亮度無法調整了怎麼辦?

出於無聊,將系統語言設定成英文 (雖然我是台灣人),因此圖片皆為英文版的畫面,說明文字將以「英文 (中文)」形式代表英文和其可能的中文,例如以下會出現的「PnP-Monitor(Standard) (PnP監視器 (標準) )」和「Device Manager (裝置管理員)」
英文很差,所以不保證中文翻譯會和實際情況完全相符

相信最近很多人開機後會發現螢幕超~級~亮~,這樣一來使用電腦時眼睛就非常痛苦>_<
鍵盤上調螢幕亮度的組合鍵也沒反應,到控制台找到調亮度的滑桿,可是滑了也沒看到螢幕亮度有變化Orz

怎麼辦呢?

首先說明原因
Win10會強制使用者安裝最新的更新,包括驅動程式,而最近有一種叫做「PnP-Monitor(Standard) (PnP監視器 (標準) )」的驅動程式,無緣無故被當作更新裝上來了!在這個驅動程式下,螢幕好像變成不支援亮度調節的樣子Orz

解決方法: