2016年8月30日 星期二

Eclipse 和 Android Studio 的快速鍵和一些好用的功能

由於版本的不同,快速鍵不一定就是下面寫的按法,所以我將Command打上,
如果有衝突,不一定優先權一定是Eclipse比較高,如Ctrl+Alt+Del,此時會打不出來,這時就可以設定別的快速鍵

※Eclipse

Window-->Preferences-->General-->Keys

※也可以在綠框搜尋「keys」

※Scheme是Default的,待會下面打的快速鍵是針對這裡打出來的

※橘框可以裡面的文字,通通都可以搜尋,和Android Studio不一樣

※在藍框將滑鼠游標放進去,然後打裡想打的快速鍵即可

※以下列出常用快速鍵,「:」左邊是圖的Command

快速完成

Content Assist:Alt+/
Window-->Preferences-->Java-->Editor-->Content Assist
在右邊的紅框裡,預設是「.」,只要打裡面的按鍵,也會跳出Content Assist

整行往上複製,可選多行

Duplicate Lines:Ctrl+Alt+Up

整行往下複製,可選多行

Copy Lines:Ctrl+Alt+Down

整行往上移動,可選多行

Move Lines Up:Alt+Up

整行往下移動,可選多行

Move Lines Down:Alt+Down

游標的上一行多一個空行

Insert Line Above Current Line:Ctrl+Shift+Enter

游標的下一行多一個空行

Insert Line Below Current Line:Shift+Enter

游標反白的部分變大寫

To Upper Case:Ctrl+Shift+X

游標反白的部分變小寫

To Lower Case:Ctrl+Shift+Y

刪除行,可選多行

Delete Line:Ctrl+D

需要Import的Import,不需要的移除,有兩個以上可Import的會跳出視窗供選擇

Organize Imports:Ctrl+Shift+O

到指定的行數

Go to Line:Ctrl+L

游標在括號 (花括、角括、圓括) 使用,游標會跳到[開始 | 結束]

Go to Matching Bracket:Ctrl+Shift+P

單行[移除]註解,也可以選多行,不管是java、javascript、HTML、XML都可以

Toggle Comment:Ctrl+Shift+C

上一個呼叫的程式碼

Backward History:Alt+Left

下一個呼叫的程式碼

Forward History:Alt+Right

排版

Format:Ctrl+Shift+F

整體重命名

Rename:Alt+Shift+R

自動增加[全域 | 區域]變數

在沒有變數名的地方按Ctrl+2後,右下角出現提示
全域變數
Quick Assist - Assign to field:Ctrl+2, F
區域變數
Quick Assist - Assign to local variable:Ctrl+2, L


這樣子的快速鍵就差不多了,其他建議用滑鼠去按,如下:
按右鍵

字型、文字大小

※右邊的Text Font最上面是Basic

顯示行號

打程式碼的左邊那一條按右鍵可顯示行號,會自動將下選的路徑打勾

程式碼的task

預設有FIXME、XXX、TODO 3種,而且預設一定要大寫,程式碼的右邊才會出現藍色的

看上圖就知道還可以增加,修改優先權、區分大小寫
FIXME:寫錯了
XXX:寫了,但可以寫的更好
TODO:還沒寫

搜尋所有專案的task可以用Window-->Show View-->Other...,然後在General下有個Tasks

優先權是High的會有紅色的驚嘆號
Path是專案名稱+package名稱
Resource是檔案名稱

內鍵的快速功能

打main就會出現下面的效果,${cursor}表示打完後游標出現的位置

按右邊的New按鈕可以自定
這是我自定的,打insert就會出現下面的字串,綠框還有很多${}這樣的東西,我只會${cursor}而已



※Android Studio

File-->Settings-->Keymap

※Keymaps是Default的,待會下面打的快速鍵是針對這裡打出來的

※對要設定的快速鍵按兩下會出現提示,第一個是鍵盤快速鍵、第二個是滑鼠快速鍵、第三個是縮寫

滑鼠快速鍵有:左鍵、中鍵、右鍵、滾輪向上、滾輪向下5種,要在滑鼠圖示地方按才可以,按兩個鍵以上看來是沒有用的

縮寫用法是設定完後,在程式碼區按兩下Shift,會跳出一個視窗,將剛剛設定的文字打在裡面就會搜尋到,這時在按下去就可以了

※注意搜尋時,只會搜尋左邊的文字

※以下列出常用快速鍵

快速完成

如下圖Ctrl+Space和Ctrl+Shift+Space
打字打到一半按Ctrl+Space,預設是有分大小寫的,我的2.1.3版預設是First letter
First letter:第一個字區分大小寫
All:全部區分大小寫
None:不分大小寫
改成None就和Eclipse一樣了

整行往下複製,可選多行

Duplicate Line or Block:Ctrl+D
選多行時,要把每一個都拖到,這點和Eclipse不同,且複製的點是在最後一行的最後面

整行往上移動,可選多行

Move Line Up:Alt+Shift+Up

整行往下移動,可選多行

Move Line Down:Alt+Shift+Down

游標的上一行多一個空行

Start New Line Before Current:Ctrl+Alt+Enter

游標的下一行多一個空行

Start New Line:Shift+Enter

游標反白的部分變[大|小]寫

Ctrl+Shift+U

刪除行,可選多行

Delete Line:Ctrl+Y

單一Import,有兩個以上可Import的會跳出視窗供選擇

Alt+Enter
如果將整個單字打完,不會幫你import,就會出現紅線上的提示
如果用選的,會幫你import(要選對哦)

import沒幫我們排版,可以用下面的排版Ctrl+Alt+L,但如果用Ctrl+Alt+O,排版只會針對import的部分和將沒用到的import拿掉


到指定的行數

Line...:Ctrl+G

游標在括號(花括、角括、圓括)使用,游標會跳到[開始 | 結束]

MoveCaret to Matching Brace:Ctrl+Shift+M

單行[移除]註解,也可以選多行,不管是java、XML都可以

Comment with Line Comment:Ctrl+/

上一個呼叫的程式碼

Ctrl+Alt+Left(沒Ctrl是上一頁)
我試的結果無效,但按上面的按鈕卻可以,如果一定要用就改快速鍵吧!

下一個呼叫的程式碼

Ctrl+Alt+Right(沒Ctrl是下一頁)
我試的結果無效,但按上面的按鈕卻可以,如果一定要用就改快速鍵吧!

排版

Reformat Code:Ctrl+Alt+L

整體重命名

Rename...:Shift+F6

誰呼叫我,在方法名稱上按才有用

Call Hierarchy:Ctrl+Alt+H

看整個階層,包括父類、子類

Type Hierarchy:Ctrl+H

自動增加[全域 | 區域]變數

搜尋Assign可找到兩個Assign Shortcut...,預設都沒有快速鍵,但按了以後,還要點左邊的圖示,太慢了,不建議使用


這樣子的快速鍵就差不多了,其他建議用滑鼠去按,如下:
按右鍵Generate...快速鍵是Alt+Ins
這時就有很多常用的功能

顯示行號


※雖然用下圖的就可以顯示,但重啟Android Studio後,又不見了,這時可以用上圖的方法

字型、文字大小
預設的Default無法改,所以要複製一份出來,按Save As...,然後隨便打個字,就可以改了
Primary font是字型,用Eclipse時,大部分的人都喜歡用Consolas

TODO、FIXME

 點進去還可以改一些設定


※上圖是所有預設AndroidComments的效果
打開TODO,如果沒有,這種活頁標籤都是開View-->Tool Window
只會看到TODO和FIXME

※和Eclipse不一樣的地方是,只會找自己的專案,還有大小寫都可以,且沒有XXX

內鍵的快速功能

右邊有教學,關鍵字會閃,可惜我沒看到自定的功能

2016年8月3日 星期三

加Eclipse (Gradle 4)

我的EclipseVersion: Mars Release (4.5.0) Build id: 20150621-1200,目前都還沒有內鍵
安裝之前,先檢查裝了沒有
有很多方法,如下:
1.Window-->Preferences

2.File-->New-->Other

3.在隨便一個專案按右鍵選Configure,看有沒有Add Gradle Nature


4.Help-->About Eclipse


如果沒有的話,就Help-->Eclipse Marketplace,然後搜尋gradle,選圖示和官網一樣的大象
(我還看到有人是選gradle package的,功能更多,這篇以這個為例)

下一步、同意、完成後,會有重啟Eclipse的提示,重啟後再依上面的圖檢查看看裝好了沒,沒有就重新再裝


※測試

裝好後,新增一個Gradle專案,File-->New-->Gradle-->Gradle Project
會發現圖示會綠綠的,而且在根目錄已經有build.gradle檔了,去網路下載gradle後貼上去,還要在專案按右鍵gradle-->Refrest Gradle Project


※其他設定

Window-->Show View-->Other-->Gradle
可看到兩個View,如下圖,已經幫我們用好相關命令了,選到想執行的命令按右鍵Run Gradle Tasks,執行的結果可在下選左邊的Gradle Executions的View看見,當然Console也是有,只是Gradle Executions 顯示的內容比較詳細,也比較漂亮



在Gradle專案按右鍵,或者隨便一個資料夾或檔按按右鍵,都會有Run As -->Run Configurations
另外一個方法是Run-->Run Configurations,都會出現下面的圖

會出現build是因為我剛剛執行過build了,可以自己加

2016年8月1日 星期一

下載jar檔、第三方jar檔 (Gradle 3)

※下載jar檔

apply plugin: 'java'
    
task xxx << {
    sourceSets*.java.srcDirs*.each{ it.mkdirs() }
    sourceSets*.resources.srcDirs*.each{ it.mkdirs() }
}
    
repositories {
    mavenCentral()
    
    jcenter {
        url "http://jcenter.bintray.com/"
    }
    
    mavenLocal()

    flatDir {
        dirs 'lib'
    }
    
    flatDir {
        dirs 'lib1', 'lib2'
    }
}
    
dependencies {
    compile group: 'org.springframework', name: 'spring-webmvc', version: '4.3.2.RELEASE'
    compile group: 'org.hibernate', name: 'hibernate-core', version: '5.2.1.Final'
}

※repositories 的部分在23.25~23.46 專門講這些,反正就是要寫一些地方讓它去找jar,不一定要像我寫這麼多,而且寫法也不只一種,參考官網的寫法

※dependencies的部分在Example 23.4. Module dependencies,寫法也是好幾種,最左邊有compile、runtime…等,在7.3. Dependency configurations有講,有四個合法值
.compile:編譯時需要jar
.runtime:預設的,執行時需要jar
.testCompile:測試、編譯時需要jar
.testRuntime:測試、執行時需要jar

※網路下載和maven一樣,如下:

※執行gradle clean build後,會在C:\Users\使用者名稱\.gradle\caches增加jar檔



※第三方jar檔

如果網路上找不到,例如自己寫的一定找不到,我一樣寫一個package叫ttt,然後class叫Test, 寫一支echo方法,印出Hello World,最後包成xxx.jar

隨便放在一個地方,假設我放在ooo資料夾裡,然後整個拿到gradle_test資料夾裡
gradle.build的dependencies修改如下(其他的都和上面一樣):
dependencies {
    compile files('ooo/xxx.jar')
}

※然後將上一篇的ZYX.App.java多增加一行new ttt.Test().echo();

※執行gradle clean build(因為有加new ttt.Test().echo(),所以如果將dependencies裡的compile files拿掉會build fail),files是Project裡的method

※執行java -cp ooo\xxx.jar;build\libs\gradle_test.jar ZYX.App,如下:


※以上是javaSE,如果要用web的,可以看第47章