Quantcast
Channel: 簡睿隨筆
Viewing all 897 articles
Browse latest View live

[MultiCommander] 快速載入工作中的不同分頁

$
0
0

MultiCommander是多分頁的雙面板檔案管理工具,可以將工作中需要的資料夾分別開啟為不同的分頁(索引標籤),同時我們也可以將開啟中的分頁儲存起來,供日後需要要快速重新開啟。操作步驟很簡單:

1. 設定儲存分頁與載入分頁的快速鍵

由功能表 【組態】→【鍵盤自訂】,模組為【MultiCommander (Base)】,在命令清單裡找【索引標籤 – 儲存索引標籤到檔案…】與【索引標籤 – 從檔案載入索引標籤…】,分別設定其快速鍵,我使用的是〔Ctrl+Alt+S〕與〔Ctrl+Alt+L〕。日後要儲存所有分頁時按下〔Ctrl+Alt+S〕再給名稱即可,預設的副檔名是 .mctab。

tabs-1

2. 載入分頁檔

按〔Ctrl+Alt+L〕並找到要使用的 .mctab 檔案,再選擇要取代或加入。
tabs-2

##

您可能也會有興趣的類似文章


完整移除MS Office的方法

$
0
0

在重新安裝的電腦裡安裝Office 2016時,因為下載速度太慢而中斷安裝,沒想到再也無法由控制台把它完整移除了,一直出現錯誤… 最後才找到完整移除Office的方法:從電腦解除安裝 Office 2013、Office 2016 或 Office 365 – Office 支援

首先由diag offline uninstall下載解除安裝程式,執行後就能完整移除Office了。

##

您可能也會有興趣的類似文章

用jQuery.formError取代alert( )

$
0
0

jQuery.formError是個很簡單、很容易整合的jQuery外掛,如果原有程式有一堆表單檢核的alert( ),可以使用jQuery.formError幾乎無痛轉換的改寫成較佳的使用者介面。

首先使用其 js 檔。

<script src="js/jquery.formError.js"></script>

再把alert() 換成 $(“#ID").formError():

▼ 修改前

if ($("#USERID").val() == "") {
  alert("請輸入用戶帳號。");
  $("#USERID").focus();
  return false;
}

▼ 修改後

if ($("#USERID").val() == "") {
  $("#USERID").formError("請輸入用戶帳號。");
  $("#USERID").focus();
  return false;
}

執行範例如下:

forError

要移除警示訊息框的方式如下:

$("#USERID").blur(function() {
  if (this.value != "") {
    $(this).formError({ remove: true });
  }
});

##


您可能也會有興趣的類似文章

JasperReports大量資料報表使用的虛擬化機制

$
0
0

使用JasperReports 5.6製作的報表因為資料量過大而出現近似Out of Memory的問題,研讀後發現原來JasperReports可以透過Virtualizers機制,將報表先寫到硬碟最終再組合成報表檔,從而降低記憶體的耗用。

比較完成的說明可以看Virtualizers in JasperReports | Jaspersoft Community,以下是簡單的範例。報表產生過程中,會在C:\temp產生SWAP檔。

JRSwapFileVirtualizer virtualizer = null;
try {
    JRSwapFile swapFile = new JRSwapFile("c:/temp", 1024, 100);
    virtualizer = new JRSwapFileVirtualizer(50, swapFile, true);
    params.put(JRParameter.REPORT_VIRTUALIZER, virtualizer);
    ...
    JasperPrinter printer = JasperFillManager.fillReport(report, params, dataSource);
    ...
}
finally {
    if (virtualizer != null) virtualizer.cleanup();
}

#

您可能也會有興趣的類似文章

撰寫API規格文件的利器:API Blueprint與aglio

$
0
0

API Blueprint是一個用來產生RESTful Web Services API規格的樣板語言,只要依它定義的格式寫好Markdown格式的文字檔,再使用輔助工具(有很多個,本文介紹的是aglio)就能產生標準、統一的API文件。相較於類似功能的SwaggerRAML,API Blueprint的最大優點就是撰寫容易快速,如果原本已經具有Markdown的使用經驗,那更是能在最短時間內就掌握好。

API Blurprint的基本格式範例如下:

FORMAT: 1.0
# API名稱

API說明

## 說明重點1

## 說明重點2

# Group 資源群組以 Group 開頭

## 資源 [/URI]

### 動作 [GET]

* Parameters
    * 參數1: `範例值` (required, 格式) - 參數說明
    * 參數2: `範例值` (optional, 格式) - 參數說明

* Response 200 (application/json)

        { "code": "OK", "message": "success" }

* Response 404 (application/json)

        { "code": "NOT_FOUND", "message": "No data" }

### 動作 [POST]

內容格式同 GET

### 動作 [DELETE]

內容格式同 GET

重點說明

  • 群組分類以 Group 開頭
  • Response裡的傳回範例以8個空白或兩個 Tab 開頭
  • 如果有多個API或多人同時撰寫時,可以用引入的方法把一個檔案拆成幾個檔案,如:
# Group 1. 城市資料
<!-- include(CITY.md) -->

# Group 2. 氣象資料 
<!-- include(WEATHER1.md) -->
<!-- include(WEATHER2.md) -->

將Markdown轉換為HTML

接著用 aglio 將Markdown格式的文字檔案轉換成HTML。aglio是Node.js的模組,安裝好Node.js後再用下列指定安裝aglio:

npm install -g aglio

執行轉換的命令:

aglio -i Markdown檔名  -o 產生的HTML檔名  [選項]
  • 選項:只執行aglio會列出所有選項的說明
  • 例如用 –theme-variables flatly 可以變更Default樣式為flatly樣式

範例

FORMAT: 1.0

# 城市與氣象資訊Web Services API

* 這是使用API blueprint撰寫的示範文件
* 由 [GlobalWeather Web Service](http://www.webservicex.net/globalweather.asmx?op=GetWeather) 取得相關資料

# Group 1. 城市資料

* 這是使用API blueprint撰寫的示範文件
* 由 [GlobalWeather Web Service](http://www.webservicex.net/globalweather.asmx?op=GetWeather) 取得氣象資料

## 依國名取回城市名 [/globalweather.asmx/GetCitiesByCountry?CountryName={CountryName}]

### 取回城市名 [GET]

* Parameters
    * CountryName: `Taiwan` (required, String) - 國名

* Response 200 (text/xml)

        <string xmlns="http://www.webserviceX.NET">
          <NewDataSet>
           <Table>
             <Country>Taiwan</Country>
             <City>Kangshan Tw-Afb</City>
           </Table>
           <Table>
             <Country>Taiwan</Country>
             <City>Chinmem / Shatou Air Force Base</City>
           </Table>
         </NewDataSet>
        </string>

# Group 2. 氣象資料 

* 這是使用API blueprint撰寫的示範文件
* 由 [GlobalWeather Web Service](http://www.webservicex.net/globalweather.asmx?op=GetWeather) 取得氣象資料

## 依城市名稱取回氣象 [/globalweather.asmx/GetWeather?CityName={CityName}&CountryName={CountryName}]

### 取回氣象資料 [GET]

* Parameters
    * CityName: `Taipei` (required, String) - 城市名
    * CountryName: `Taiwan` (optional, String) - 國名

* Response 200 (text/xml)

        <string xmlns="http://www.webserviceX.NET">Data Not Found</string>

sample

##

您可能也會有興趣的類似文章

加特林機槍展神通-網頁壓力測試工具:Gatling

$
0
0

最近試了新的網頁壓力測試工具Gatling,它是使用Scala撰寫的工具,運行在JVM 1.8環境裡。以下是簡單的入門操作說明。

Gatling除了可以透過Scala腳本來撰寫測試案例外,也可以用錄製的方法來產生需要的Scala腳本。

錄製步驟

Galing是透過local的Proxy來錄製網頁操作,因此第一步要把Proxy設定起來,以下使用Google Chrome當範例。

  1. Chrome 進階設定→【變更 Proxy 設定…】→按【LAN設定】

    01

    02

  2. 勾選Proxy伺服器,並輸入位址127.0.0.1,連接埠8000,輸入好後按〔確定〕

    03

  3. 執行bin資料夾裡的 recorder.bat (必須 set JAVA_HOME=C:\JDK1.8)
    在Package與Class Name輸入測試的識別值。按右下角的Start開啟local的Proxy server(即本程式)。

    04

  4. 開啟Google Chrome瀏覽器,開始瀏覽要測試的網址,測試過程中可以看到Request與Response會有資訊顯示出來。測試完成後按右上角的〔Stop & Save〕,測試檔 test01.scala會存入指定的目錄。

    05

  5. 執行測試
    執行gatling.bat 再選擇測試場景,輸入id與description後便開始測試。
    若要模擬多人,則用文字編輯器修改 test01.scala,將最後面的人數 1 改成要測試的人數。

setUp(scn.inject(atOnceUsers(20))).protocols(httpProtocol)

測試結束後,測試結果會存到指定的index.html,瀏覽index.html即能檢視測試的數據。

Galing相關連結

  • 官方網站:http://gatling.io
  • 下載:http://gatling.io/#/resources/download

##

您可能也會有興趣的類似文章

nomacs: 多平台、開源的圖片檢視工具

$
0
0

nomacs | Image Lounge是一套多平台、開源的圖片檢視工具,能在Windows、Linux、FreeBSD、Mac OS/X等環境下運行,有許多照片需要瀏覽、檢視或修改處理時,nomacs是個很方便的選擇。

nomacs sample

nomacs是使用Qt環境撰寫的,想要研究程式碼的朋友可以由GitHub – nomacs/nomacs: nomacs is a free image viewer for windows, linux, and mac systems.下載。nomacs目前只有簡體中文,如果你想做繁體中文翻譯的話,可以查看右列說明:How to translate nomacs

nomacs相關連結

##

您可能也會有興趣的類似文章

超簡易Windows Markdown編輯器:Markdown Monster

$
0
0

我的部落格設定儲存格式是Markdown,最常用的撰寫方式是使用StackEdit – Editor網站,在網頁裡輸入內容並同步到Dropbox存放。離線的編輯器則是使用MarkdownPad 2,今天則試用了Markdown Monster – A better Markdown Editor for Windows

Markdown Monster的特點

以下是我使用Markdown Monster後的幾個感覺:

  • 編輯區與HTML預覽區都可以自行指定顯示主題(Theme),預設的編輯樣式是黑底的twlight,HTML預覽區樣式則是Github theme

  • Markdown Monster的設定檔存於一個JSON格式的文字檔(C:\Users\帳號\AppData\Roaming\Markdown Monster MarkdownMonster.json),方便編輯與變更。

  • 提供上傳到部落格網站的功能。WordPress網站的設定範例如下:

    • Api Url: 填入你的網站網址,以/xmlrpc.php結尾
    • Username、Password:輸入你的網站管理帳號與其密碼 wordpress
  • 要發佈到網站:按工具列最後一個按鈕,再依序輸入資料。若要發佈為草稿則勾選【Publish as Draft】,按〔Post to Weblog〕就能發佈出去。若按下〔Save Metadata〕則發佈的參數會以註解的格式加到文章最末端。 publish

  • 可惜沒有匯出為PDF格式的功能,但可以存成HTML格式。

相關連結

##

您可能也會有興趣的類似文章


遠端連線資訊的共用建檔工具:mRemoteNG

$
0
0

最近公司裡有人事異動,交接文件中有一堆的客戶連線資訊,因而特別體認到平時建立共用這些資訊的必要。我平時使用的是mRemoteNG(請參考:超方便的遠端連線管理員(Connection Manager):mRemoteNG與其變通的傳檔功能),剛好它有能儲存連線資訊到資料庫的功能,應該能部份符合需求。更理想的當然是能和我們Web系統結合的方案,但似乎都需要不少費用,那麼就只能先用mRemoteNG來擋一陣子吧。

01

使用SQL Server連線的設定步驟

  1. 先建立資料庫 mRemoteNG
  2. 這裡 下載建立資料表的Script
  3. 編輯SQL Script,將tblCons資料表的Name、Description、Panel等會輸入中文的欄位的型別由varchar變更為nvarchar
  4. 將Script貼到Query Analyzer裡執行
  5. 再建立一個登入以取存mRemoteNG資料庫(我使用的登入名是mRemoteNG)
  6. 執行mRemoteNG.exe,開啟已存在的連線設定檔 confCons.xml,可以先輸入個人常用的連線資訊,再存回XML檔
  7. 由功能表執行工具→選項→SQL 伺服器,輸入各項資料 02
  8. 離開mRemoteNG時,已存在的連線會自動寫入tblCons資料表,下次再進入時就會使用mRemoteNG資料庫的連線資訊了

無法連線如何取得連線資訊

mRemoteNG有可攜版本(下載.zip的安裝檔即可),如果有外出時連線的需求,則可以把mRemoteNG整個資料夾複製到隨身碟,或放到Dropbox等雲端硬碟上,需要時開啟 ConfCons.xml 檔就可以了(當然要不定時的將資料庫的資訊存成連線XML才能有最新的資料)。執行時若讀不到資料庫會彈出對話窗讓我們再試一次或換用XML檔,或者用參數直接改讀XML:

mRemoteNG /c:d:\dropbox\mRemoteNG\confcons.xml

##

您可能也會有興趣的類似文章

卡提諾論壇小說下載程式更新

$
0
0

通常我都是GetStory_CK101.exe來抓取卡提諾論壇的小說(參考:使用「長篇小說網頁擷取程式」產生電子書),最近執行時卻會出現找不到SSL dll的錯誤,應該是卡提諾網址由http變成https而造成的問題。

最後在JNovelDownloader 小說下載器 | pupuliao的部落格找到另一個下載工具JNovelDownloader的修正版:JNovelDownloader_v4_7-hotfix1.jar,下載後用 java -jar JNovelDownloader_v4_7-hotfix1.jar執行,雖然console會一直吐出錯誤訊息,但檔案最終有成功產生出來。這樣便能持續再下載以產生.mobi格式的電子書了。

##

您可能也會有興趣的類似文章

[轉貼] 2017年Web開發人員發展方向藍圖

$
0
0

這年頭要當個稱職的Web開發人員還真不簡單…實證如下:

來源:kamranahmedse/developer-roadmap: Roadmap to becoming a web developer in 2017

title

開發方向分類

catogories

前端技術藍圖

frontend

後端技術藍圖

backend

DevOps: 待續…

##

您可能也會有興趣的類似文章

國人自製Android App:懶人外掛:裝LINE必備,聊天泡泡方便無比

$
0
0

在PTT看到作者自推的Android App:[推薦] 懶人外掛-裝賴必備 – 看板 Android – 批踢踢實業坊,試了一下覺得對LINE、Facebook Messenger、 WhatsApp等聊天App的重度使用者很方便,在此推薦。

由Google Play 懶人外掛:裝LINE必備 – Google Play Android 應用程式下載安裝,真正的App名字是OneTalk,看來也是個聊天App,但由設定裡去啟用聊天泡泡,就能在手機上出現泡泡,能即顯示朋友們的LINE訊息,而不用開啟LINE的本尊App。

▼ 泡泡的效果是這樣: bubble-1

▼ 按一下就能講說。希望作者能加上鍵盤輸入的功能。 bubble-2

▼ 停止說話或再按一下泡泡就會出現輸入的內容,按捨棄可以再修改。 buble-3

下載資訊

註:本文圖片來自Google Play

##

您可能也會有興趣的類似文章

如瑞士刀般的萬用檔案操作命令行工具:Swiss File Knife

$
0
0

瑞士刀又名萬用刀,素以一把刀卻兼具多種功能著稱,而sfk.exe便是以瑞士刀為名的工具,將多種檔案相關的功能融合在一個執行檔而成,提供方便的各式各樣檔案與資料夾的多種命令行操作功能: Swiss File Knife – A Command Line Tools Collection for Windows (7/Vista/XP), Mac OS X, Linux and Raspberry Pi,能適用於Windows、Linux、Mac OS X等環境。

直接執行sfk.exe不加參數就能列出其各種功能,例如:

  • sfk replace myfile.txt “/舊字串/新字串/"
  • sfk httpserv -rw
    • 啟動為HTTP主機,提供目前資料夾的上下傳功能
  • sfk ftpserv
    • 啟動為FTP主機,提供目前資料夾與子資料夾的FTP上下傳功能
  • sfk ascii
    • 顯示ASCII符號表,對程式開發人員很方便 ascii

sfk.exe還有非常多的功能,請自行嘗試。sfk.exe目前有個致命傷,對中文或Unicode的技援相當缺乏,導致其實用性銳減大半,希望不久後能補強中文的功能。

##

您可能也會有興趣的類似文章

第一次閱讀Kindle版本的電子書;桌面版也很優

$
0
0

最近因為利用上下班的時間複習某技術,但又因在捷運能坐在位子上的機會稀少,拿著平板看PDF實在佷不方便,因此試著下載Kindle版本的電子書來閱讀,沒想到閱讀體驗很不錯,在此分享網友們。

amazon.com的電子書除了最常見的PDF格式外,也有部份書籍有Kindle版本,通常Kindle版本的價格比PDF還便宜一些,更棒的是購買的Kindle電子書不只能在Kindle上看,也能在桌面下載Kindle軟體來同步閱讀,不同設備間也能同步閱讀進度,使用上非常便利。更好的是也能找到一些 0 元或5元以下的書,可以找到很便宜的重概念不重軟體版本的書籍,透過書籍學習總是比網路上的文章來得有系統,觀念也能說明得比較清楚。

ebook

▼ 桌面版本的Kindle除了能標示重點、加註解外,也能雙擊查字典。

kindle app

閱讀介面更是比PDF閱讀器方便,一次固定顯示一頁,字體能自由縮放。有三種背景色可供選用,夜間模式頗適合夜間使用。

font

▼ 下圖則是在Kindle設備上看到的模樣,當然電子紙只有黑白,看不到彩色的圖形。

hotcopy

常在閱讀技術類電子書的朋友們下次不妨試試Kindle版本的,相信你也會愛上它的。

##

您可能也會有興趣的類似文章

使用SmartGit整合Subversion中央版本庫與Git本地端操作

$
0
0

由於我們公司使用的Subversion版本庫實在太多、太大,一直以來雖然想推動轉換到Git,但始終囿於轉換成本與學習成本而寸步難行,後來終於找到了另一個變通方案使能順利過渡。亦即初期中央版本庫仍為原有的Subversion版本庫,但client則切換為Git,使用的輔助工具則是SmartGit

SmartGit在今年初突然由8跳到17,原來版本編號改用西元年了,目前最新的版本是17.0.3。SmartGit的Clone可以選擇Git或SVN,只要選用SVN就能把Subversion版本庫複製到本地端了。

smartgit clone

雖然Git有內建Git-svn指令,也能複製Subversion版本庫,但速度不甚理想,SmartGit則採用三階段的下載處理,能較快讓我們能開始工作:

  1. SmartGit先把最後的版本複製下來,即HEAD所指的版本。
  2. HEAD版本下載後我們就能先開始作業了,其他版本會切換到背景繼續複製。
  3. 全部下載完成後執行最後的Join Subversion處理。

Subversion的資訊會被存放在 .git/svn 資料夾裡,完整的設定檔是 .git/svn/.svngit/svngitkit.config,內容範例如下:

[svn-git-remote "svn"]
    url = http://SVN網址
    fetch = :refs/remotes/git-svn
[misc]
    program-creation-version = 17.1 preview 7-1493049600000
[core]
    processExternals = true
    processIgnores = true
    processEols = true
    processTags = true
    processOtherProperties = true
    gitSvnAttributesThreshold = 32
[branch "master"]
    tracks = refs/remotes/git-svn
    remote = svn
[svn-remote-settings "svn"]
    minimalRevision = 0`

Git的master分支的Tracked branch為git-svn,即SVN的版本庫網址,屆時就能跟操作Git遠端版本庫一樣用Psuh、Pull或SmartGit的Sync了。

當使用Git的各項操作都熟悉後,就能再加入Git的remote版本庫,最終完整切換到純Git的環境了。

##

您可能也會有興趣的類似文章


Chromecast的奇怪無法連線問題

$
0
0

家裡使用Chromecast給小朋友連上YouTube看影片已經有一段時間了,原本都用得好好的,最近不知發生了什麼事,卻很難能連上,經常都要久按Chromecast上的Reset按鈕還原為出廠設定後才能連接成功,試了多種方法都無法解決…

最後開始考慮送修時,在與 Chromecast 支援小組聯絡 – Chromecast說明網頁上看到下列檢查方法是先前沒試過的:

重新啟動您的 Chromecast

和路由器通常可解決許多與投放功能相關的問題。打電話聯絡支>援小組之前,請先重新啟動您的 Chromecast 和路由器,試試看這個小步驟能否解決您的問題。
* 重新啟動 Chromecast 裝置:拔下裝置電源 > 等待 30 秒鐘 > 重新插上裝置電源。
* 重新啟動路由器:拔下 Wi-Fi 路由器電源 > 等待 30 秒鐘 > 重新插上 Wi-Fi 路由器電源。

在重新啟動路由器(AP分享器)後,神奇的就沒有連線問題了!

##

您可能也會有興趣的類似文章

Clip Angel:具有連續貼上(Incremental Paste)功能的剪貼簿工具

$
0
0

Clip Angel是來自俄國的剪貼簿工具,和我平常用的Ditto相比,在某些功能上還更具優勢,本文就以ditto為基礎來對照Clip Angel的特點。

ClipAngel

Clip Angel的特點

  1. Clip Angel具有預覽畫面,可以很方便的看到剪貼的圖片,當有多個圖片剪貼時能很快的讓我們找到要使用的剪貼項目。Ditto則只能看到CF_DIB的縮圖。
  2. 具有和ClipMate相同的連續貼上(Incremental Paste)功能,例如剪貼簿裡有10個項目,目前位置停在第8個位置,則連續按貼上的快捷鍵(假設在Settings裡 設定為〔Alt+V〕)便會依序貼上第8個、第7個、第6個項目等的內容,在填寫網頁表單的多個欄位時非常方便。
  3. 複製的項目若來自網頁,會一併記錄其網址,在網址上按〔Alt+左鍵〕就能用瀏覽器開啟該網頁,因此也能將這個功能當做搜尋的記錄而保存起來。
  4. 常用的剪貼項目可以加上最愛(Favorites)而彙總到獨立的最愛視窗裡。
  5. 可以任意複選多個項目後,按〔Enter〕一次全部貼上。
  6. 剪貼內容可以用文字形式呈現,而HTML或RTF的內容也可選擇格式化呈現。
  7. 直接在左側輸入要找搜尋的項目,會用逐次搜尋的方式找出符合的項目,按〔F7〕則可清除輸入了的搜尋字元。

Clip Angel作者更新的很勤快,值得各位網友們嘗試。

相關連結

官網列舉的特點

  • Supports clipboard formats: text, html, rtf, file, image
  • Captures data of supported types copied to clipboard (clips)
  • Captures sender window title and process name for clip
  • Shows source URL for HTML clip
  • Filter by marks “Used (Pasted)” and “Favorite” with keyboard shortcuts
  • Filter by clip type
  • Hot (as you type) text filter for clip list
  • Stores last used for paste text filters
  • Marking used (pasted) clips
  • Marking filter matches in text
  • Marking hyperlinks in text and Alt+click to open them
  • Marking END of clip text
  • Marking filter matches in list
  • Allows to paste clip as original or plain text selected or all
  • Repeated external copy of any previous clip raises it to top of list
  • Settings “Max clip size KB” and “History depth number”
  • Setting “Hotkey to open window with reset”
  • Multilanguage UI (Russian, English)
  • Searching back and forward filter text in text
  • Ability to delete and move clips in list
  • Text filter and clip list share key presses, no need to change focus
  • History is stored encrypted on disk
  • Setting “Hotkey to incremental paste”
  • Switch “word wrap”
  • Switch “move just pasted clip to top”
  • Switch “show column with short visible size of clip”
  • Command “Edit clip title”
  • Edit clip text mode
  • Commands “Mark/Unmark favorite” for clips
  • Support for format “Clipboard Viewer Ignore” to respect password copy privacy
  • Auto and manual check for new version and one click update
  • Portable mode
  • Auto position window on open near text input
  • Switch “Always on top” for window
  • Command to open clip as file
  • Command to simulate char input (for windows isolated from clipboard)
  • Support for sending paste and input to elevated windows
  • Switch “Monitor clipboard”
  • Switch “Monospaced font”
  • Switch “Clear filters on window close”
  • Filter ON indication in “Clear filter” button
  • Full support for difficult windows in paste command (cmd.exe and RDP)
  • Text position indicator shows offset, column and line number, selection length
  • Clip list shows samples for picture clips
  • Switch “Native formatting” for HTML and RTF clips
  • Switch “Show clip source icon column”
  • Automatic window open after capture text clip from ABBYY Screenshot Reader
  • Command “Text compare” with support for Beyond Compare, ExamDiff Pro, WinMerge, Araxis Merge, DiffMerge and custom application
  • Command “Translate text”
  • Target window title is shown in window title after ” >> “
  • Setting “Default font”
  • Setting “Hotkey to open window with favorites”
  • Command “Clear clipboard”
  • Command “Move to top”
  • Switch “Copy text in any window on Control+F3”
  • Setting “Hotkey to compare last clips”
  • Commands to set type filter values
  • Switch “Autoselect first match”
  • Multiselect clips in list supported by most commands
  • Setting “Hotkey to open window with no changes”
  • Command “Switch focus list/text F10”
  • Series >3 identical chars are cut off in clip autotitle
  • Setting “Folder for clip temp files”
  • Tooltip on clip row in list
  • Switch “Case sensitive search”
  • Switch “Search independent words”
  • Switch “Search ’%s’ as any char sequence”

##

您可能也會有興趣的類似文章

[轉貼] 一名 40歲「老」程序員的反思

$
0
0

本文是國外一位 40 歲「老」程序員對職業生涯的思考,他認為從長遠來看,應該多投資一些不容易過期、衰竭期較長的知識領域中。譯文大意如下。

我是一名程序員,幾個月前剛過完四十歲生日。某個星期六的早晨,我參加了一個 React Native 技術交流會,演講者正在竭力說服我們為什麼它會成為移動開發領域真正的下一個大事件。但對我來說,它有點像十五年前的 JSP,將所有的邏輯都放在演示代碼里面。但我「老」了,我認為這是因為自己還沒有完全理解它。

演講者展示完 PPT 後,現場進行編碼,還展示了大約半打我沒聽說過的配套工具,這些都讓我感到有點沮喪。

當然,我并不是真的驚訝。在過去20年里,我也掌握了一些比較流行的技術,并享受駕馭它們的樂趣。新的東西總能給編程帶來一絲激動的體驗,并且能讓事情變得更容易、更快和更清楚。但是在這個特別的早晨,在40歲的這個門檻上,我不得不承認我感覺有些落伍。我知道如果想跟上節奏,我得繼續付出,拋棄一些已經充分吸收的知識,吸收一些新的知識,為下一次旅程做準備。

我在想,我的編程生涯不像其他的專業人士,醫生到了40歲不用擔心他對血管系統的知識會蒸發,同樣的,律師、水管工、會計、英語老師,也是如此。他們積累的知識是相對穩定的,并隨著年齡會給予他們相應的尊重和補償。但是在編程領域,20年的經驗,似乎并沒有賦予同樣的優勢。

兩個概念

當然,我們的行業也不是那么糟糕 —— 程序員需要愛上很多東西 —— 有趣的是,無休止的跟進,好像是我們這個領域或多或少獨一無二的特點。編程生涯是真的如此不同嗎?如果是,為什麼?對我們的事業軌跡來說又意味著什麼?我想從以下兩個觀點來嘗試回答這些問題。

第一個是知識衰退。我們所知道的一切,不僅僅是編程,都有一個有效期,過了這個期限將不再有用。我16歲學會了開車,到現在依然用的很好,這種技能可以認為有一個相對較長的半衰期 。醫生的知識會越來越淵博,是因為他學習的每一件事情都是基于他以前的知識。而在編程領域,無論好還是壞,我認為:

程序員所積累的編程知識在十年後將有一半沒用。

這可能有些偏激……但起碼對我來說,似乎是正確的。如果我在這個期限中不學任何其他的東西,我敢打賭,只有大約一半的知識我可以在2026年繼續使用(比如長期活著的 SQL ),另一半可能都是沒用的(React Native,也許?) 。當然,我會不斷獲得新的知識來取代要死掉的那些東西,但這足夠嗎? 2026年我會比現在知道更多(有用的)知識嗎?

這也就是帶來了第二個概念,知識積累速度。在所有領域,必須滿足一定的知識門檻才能獲得「認證」(或至少可聘用),職業生涯的早期通常都是在努力獲取知識。然而,在編程領域,由于知識的快速衰減,似乎我們從來沒有真正度過「學生時期」,我們必須永遠一直學習。

三個階段

如果去記錄程序員的知識衰退和積累速度,我認為可能會是這樣:

old-pg

在職業生涯的開始,可以稱之為熱切的學徒階段,積累知識比較容易。一切都是新的,每個經驗都是獲得更多知識的工具。而且,由于年輕,我們不會有太多的義務,所以可能不介意花幾個晚上和周末拿起新的語言和框架。重要的是,雇主對我們的期望值也比較低,我們可以在工作期間摳出一點時間來填補知識。這是一個有趣的階段,連自己都沒意識到自己有多堅持。

然後,我們不再是新手,成為了自給自足的開發者。我們在學習中的投資已經得到回報,所知道的一切全部有用。在這個充滿知識的階段,我們開始贏得客戶、同行和管理者的尊重,獲得頭銜、薪水和機會。雖然我們當時不一定看得出來,但這也是一個重要的轉折點。

兩件事情發生了。首先,「高級」的晉升不僅僅是金錢,而是更多的期待。雇主需要他們的「明星程序員」成為領導者 - 幫助初級開發人員,審查代碼,執行訪談,參加更多會議,幫助他們維護、構建復雜的舊版軟件。這一切都很合理,但它巧妙地犧牲了我們的知識積累速度,我們不再有時間去讀一些科技博客、文章。第二,這時候,我們首次體會到(或至少認識到)一點點知識的朽爛,早期學到的一些東西開始過時了。

隨後,我們進入第三個,也是最後一個階段,衰落和流失。是的,我們是知識淵博和富有成就的,但我們也明白,事實上知道的已經比最初階段更少(有用的)東西。我們可能沒有時間積累足夠的新知識來填補,這是令人沮喪的。我認為這就是為什麼,在這時候,許多人開始轉向 - 管理、銷售、測試或農業(我的夢想)。我們意識到需要再次努力來保持我們的水平和熟練度 - 不然的話,我們的工作會在5年後比現在更糟。

兩個方向

我正處于第三階段。我還是很喜歡學習,但我明白,不努力的話,我可能會一直保持在「專家」的平衡狀態邊緣。

首先,我嘗試采取長遠的觀點。不要過度榨取自己,要盡可能的取得獲得新經驗的機會。我看到不少同事雖然獲得了豐厚的薪酬,但職業很少有機會接觸新興事物。再過五年,他們會意識到他們的寶貴知識已經蒸發,薪酬與實際價值相去甚遠。在某些情況下,我認為短期內賺更少的錢(有更好的雇主)會在長期的職業生涯中產生更多的錢(和穩定)。

第二,考慮到時間有限,我試圖去學習那些耐用的知識。也就是說,把精力投入在那些有更長的衰減期的知識上,比如,算法邏輯、應用安全、性能優化和架構。

最後,很樂意聽到大家的想法!

您可能也會有興趣的類似文章

來一杯卡琵莉亞雞尾酒吧。萬用的程式啟動器:Keypirinha

$
0
0

Keypirinha是類似LaunchyExecutorWox一樣提供給輸入文字來快速執行特定程式的工具,官網上也自稱是:You can think of Keypirinha as an alternative to Launchy and a cousin of Alfred. 在使用一段時間後,我將用了許久的Executor換成Keypririnha了。主要是Lauchy、Executor等早已停止開發、Wox似乎資源耗用較大,而Keypirinha具有幾乎不用設定的便利,功能也十分強大,足以取代其他的快速啟動程式(Application Launcher)。

Keypirinha應該要如何發音呢?原來它是Keyboard和一種來自巴西的Caipirinha(卡琵莉亞)雞尾酒的自創字,作者極力推薦大家試試這種巴西國寶級雞尾酒。

Keypirinha預設的啟動按鍵是〔Ctrl+Win+K〕,當輸入視窗(稱為LaunchBox)出現後,就能輸入要執行的應用程式名稱的部份文字,Keypirinha會自動列出符合的檔案選項,再用上下鍵、PgUp、PgDn等鍵移到要執行的位置後按〔Enter〕就能啟動選用的程式。

執行歷史

當LaunchBox出現後按向下鍵則會出現執行過的歷史項目,依執行時間排列。

history

擴充功能

除了自動搜尋應用程式外,在LaunchBox裡還能使用下列字串而擴充額外的功能:

功能指令 功能說明
Keypirinha: 列出Keypirinha的內部指令。例如:Keypirinha: config執行設定
bkm: 列出瀏覽器裡記錄的書籤
數學運算式 例如輸入0xffff會出現65535,或sin(3.14)+3.14等
Control Panel: 列出控制台項目
Env: Search 搜尋環境變數
everything: 列出Everything的搜尋結果。Evething要自行安裝,且至少是1.3版
/ 或 \ 列出所有磁碟機
x: 列出 X: 磁碟機的所有資料夾
~ 家目錄
translate 執行Google翻譯。如「translate launcher en:zh-tw」將英文的launcher翻譯為 繁體中文
putty 執行putty
HKCU或HKLM 列出Registry
str: 常用的字串功能,如產生SHA1或MD5等
switch to: 切換到指定視窗
網址 http://、ftp://、mailto: skype:等
WebSearch 搜尋引擎 要查的字串 如: websearch youtube 一帶一路。不用輸入完整文字,輸入「w yo」再按〔Tab〕會自動補全
搜尋引擎 列出該搜尋引擎的符合項目清單。例如輸入google→再按〔Tab〕再輸入「一帶一路」則列出符合的搜尋項目
Winamp: 播歌功能
其他 請參考Shipped Packages

▼ 設定直接把左側的設定值加到右側即可 config

▼ 列出控制台項目 control panel

特點

  • Quickly find and launch plethora of items like applications, files, bookmarks, URLs, sessions (PuTTY, WinSCP, FileZilla), registry keys, …
  • Launch a search on any configured website or online dictionary
  • Language translations on-the-fly
  • Evaluate mathematical expressions
  • Base conversion of numbers
  • Search your environment variables
  • Launch a copied URL directly (http, mailto, skype, …)
  • Split a URL and convert its arguments to JSON
  • Switch to a running application by name
  • Hash a string (CRC32, MD5, SHA, …)
  • Generate random UUIDs, passwords, bytes sequences
  • Naturally associate a keyword to a specific item
  • Machine-specific and/or user-specific configuration
  • And more, see Shipped Packages

相關連結

##

您可能也會有興趣的類似文章

[轉貼 同婚] 為台灣人高興的同時,請你想想他們如何走到今天這一步

$
0
0

原文:https://mp.weixin.qq.com/s/752nAmXW36915AJ2QwJv_A

原創 2017/05/24 假張 假裝在紐約 來自對岸關於同性結婚的評論。

1、

全世界只有20個社會允許同性結婚,而亞洲一個也沒有。(簡睿:有媒體報導是23個)

今天,台灣成為全世界第21個、全亞洲第一個允許同性結婚的社會。

這是真正的台灣驕傲,真正的亞洲之光。

眨眼之間,台灣已經漸行漸遠,他們的步伐太快,幾乎超出了我們目力所及的範圍。

01

在為對岸的進步感到高興的同時,身處此岸的我們,更有意義的事是思考一下:

台灣為何能夠取得這樣的進步?

同為華人,寫一樣的文字,說一樣的語言,台灣為我們提供了一個考察華人社會如何變得包容多元、普通人如何爭取權益的最好機會。

大風起於青萍之末。台灣人爭取包容多元、性別平等和婚姻平權的過程歷時幾十年,由民間發起,力量一點點匯聚,逐漸形成勢不可擋的風暴,最終推動法律的變更,這是一場徹頭徹尾由下而上的運動。

但是,任何平等和權利都不是從天上掉下來的,有無數人付出了眼淚、自由乃至生命的代價

2、

首先不得不提的一個人,叫祁家威,1958年出生,早在上世紀的1986年、他才只有28歲的時候就召開新聞發布會宣布自己的性向,成為全台灣第一個出櫃的人。

在那個年代這還是一件新鮮事,所以美聯、法新社等許多國際媒體的記者都去采訪。

這還不算,那一年他還跑到台北地方法院,要求和另一名男性公證結婚。可想而知,這個在當時看起來荒誕不經的要求遭到了斷然拒絕。

祁家威轉而向立法院請願,當時立法院回覆的公文是:「變態」,「違背社會善良風俗」。

不要忘了,那時的台灣還處在戒嚴時期。很快,祁家威被抓了起來,送進了看守所。台灣當局一度想把他關上五年,幾個月後在蔣經國的過問下,他才僥倖地重獲自由。

但是,祁家威並沒有吸取教訓。此後的幾十年時間裡,他窮盡各種法律手段,一次次地向行政、立法和司法部門爭取同性婚姻的權益。

1998年和2013年,他又兩次申請和男性結婚,同樣都被無情拒絕。

台灣人爭取婚姻平權,一度有兩條路徑可以選擇。第一條是制定專門的同志伴侶法,但是很多法律界人士認為單獨設置一部法律容易造成變相的歧視,所以放棄了這條路徑。

第二條路徑,就是修改民法,把婚姻的定義擴大為所有公民之間的自由結合,而不再伺限於男女之間的結合。

祁家威走的就是第二條路。

在2013年那次結婚申請遭到拒絕後,他提起行政訴訟,被台北高等行政法院和最高行政法院以不符合民法對婚姻定義為由判定敗訴。

2015年,他提出釋憲的申請,並最終在2017年2月20日被司法院受理。

今天大法官作出的裁決,就是這次「釋憲」的結果。大法官裁定現行民法關于婚姻的規定違憲,要求立法院在兩年之內對民法進行修改。

這也就意味著兩年以後,任何個體之間的結合都將得到修改後的民法的認可保護,同性婚姻正式合法。

今年59歲的祁家威,已經白髮蒼蒼。兩個月前的3月24日,他在憲法法庭慷慨陳詞,「我等這一天等了41年6個月24天」。

02

還好,到今天,他終於不必再等下去,台灣人也不必再等下去。

3、

說祁家威是爭取婚姻平權的領袖和靈魂,毫不為過。

但是,你有沒有注意到,從1986年祁家威第一次提出結婚申請,到2013年他第三次提出申請,他得到的反饋並不一樣,最終的結果也不一樣。

1986年的祁家威,是孤獨的。孤立無援的他,沒有多少人支持,甚至也沒有多少人理解。

而到了今天,他不再孤獨。他身後所依靠的,是整個台灣的同志社群,和全台灣所有有識之士的鼎力支持。

去年12月,在台北凱達格蘭大道舉辦的婚姻平權音樂會,一共有25萬人參加。台灣媒體說,這是延續幾十年、從1個人到25萬人的長跑

在這幾十年的時間裡,台灣社會發生了天翻地覆的變化,台灣人的觀念也發生了翻天覆地的變化。

這就是我想說的第二點,台灣的婚姻平權運動,是觀念的勝利

台灣人的觀念為什麼能發生變化呢?性別平等意識在全世界範圍內深入人心,婚姻平權運動在歐洲和美國取得一個又一個勝利,這是外因。

但是,真正促動台灣人觀念發生變化的,是本土發生的幾件標誌性事件

4、

第一件事,是2000年4月20日,15歲的初三男生葉永鋕的離奇死亡。他在上課時提前五分鐘請假上廁所,被同學發現的時候,已經倒在廁所的血泊裡不省人事。

由於案發現場被學校破壞,葉永志的死亡原因至今沒有查明。但是在調查中,大家發現葉永鋕因為行為舉止女性化,而在中學三年裡一直飽受同學的歧視和凌辱,被嘲笑是娘娘腔,還曾經被要求脫褲子驗明正身。

生活在巨大恐懼之中的他,甚至都不敢在有人的時候去上廁所,或者只能被迫去上女廁所。

葉永鋕的死震動了整個台灣社會,台灣的教育部門開始在學校裡推動「反性別暴力」運動,提出要消除刻板印象,尊重不同性傾向和性別特質的人。

性別平等的意識,從那個時候開始深入了台灣人的心裡。2004年,醞釀了十多年的《性別教育平等法》順利通過,這部法律的總則裡說,「促進性別地位之實質平等,消除性別歧視,維護人格尊嚴,厚植並建立性別平等之教育資源與環境」。

2000年以後接受了性別平等教育的那一代少年人,到今天正好成長為台灣社會的中堅。

有民調發現,在今天20歲到29歲的年輕人裡,支持婚姻平權的比例超過八成,因為這是他們從小就被教育要相信的價值——這是教育的偉大力量,教育帶來觀念的改變。

葉永鋕的母親陳君汝原本只是一個普通的農婦,在兒子死去後她展現了堅強和偉大的一面,堅持上訴,最終讓法院改判學校主管「業務過失致死罪」。

陳君汝後來還參加了高雄的同志驕傲游行,她對著游行的孩子們大聲喊,「孩子們,要做自己!天地創造你們這樣一個人,一定有一道曙光讓你們去爭取人權!」

03

04

5、

第二件事,是2016年,台灣大學的退休法語教師、68歲的法國人畢安生,因為他的台灣同性伴侶癌癥去世,而鬱鬱寡歡墜樓身亡。

這件事同樣引發了廣泛的討論。

台灣人吃驚地發現,一個和台灣伴侶一起在台灣生活了35年的人,在法律意義上卻仍然是台灣的陌生人,因為他們的關係不被法律承認,所以畢安生也無法享有原本台灣人享有的公民權利。

05

6、

除了這些標誌性的事件,推動觀念改變的,還有無數普通人堅持不懈的努力。

從2003年開始,台北就每年舉行全亞洲規模最大的同志驕傲大游行,影響力輻射到中國大陸和其他許多亞洲地區。

當然,還有無數的集會,無數的抗議,無數的對質,無數的被質疑之後的勇敢回擊。

我有幾個台灣的朋友,經常在Facebook上看到他們用業餘時間製作貼紙和標語牌分發。

做這些小事的人,可能無法在歷史留名,但是如果不是成千上萬個普通人這樣默默無聞的付出,任何運動都無法成形。

05

當然,還有許多藝人和明星,也在用他們自己的影響力,在推動大眾的觀念改變。比如蔡依林、張惠妹、小S、楊丞琳、黃麗玲(A-Lin),這些都是我們很熟悉的例子。

平時不覺得,但真的數一數,發現台灣的女明星裡,願意發聲的人,竟然這么多。

反觀大陸,似乎沒有。

所以,總結一下,台灣的婚姻平權運動能夠取得成功,不外乎是這樣一個過程:先有走在時代之前的領袖人物挺身而出,然後是無數其他人默默跟隨,用自己的方式各自出力

先有行動,然後才有觀念的更新。觀念的更新,又感召著更多的人投入其中付出行動。這是一個相輔相成、良性循環的過程。

只是,平等的觀念不會如水銀瀉地,迅速地覆蓋每一寸土地。它更像一條小溪,蜿蜒曲折地流轉,可能要很久很久,無數條小溪匯聚在一起,才能聽到浪潮的聲音。

即使時至今日,台灣仍然有許多人偏執極端地反對婚姻平權。還有許多家長,跑到學校和教育部門抗議,要求學校不再用性別平等教育的教材,擔心這些教育會帶壞他們的小孩。

06

我的一個台灣朋友這樣寫道:

「這樣的家長,認為只要把他們眼裡的爭議教材退出校園,自己的小孩便能平安順利地長大,卻沒想過他們口中的爭議,是有些人得以平安、順利長大的唯一機會,而那甚至也都有可能會是他們自己的小孩。」

7、

你可能會覺得,性少數群體的權益,和你沒有什麼太大的關係。

但其實不是這樣的。

常常看我公眾號的朋友會知道,我對平等和權益的話題非常關注。其中一部分原因,大概是因為我在美國生活的時候,第一次體會到了成為弱勢群體的感覺,也第一次對「身份」(identity)這個詞有了感同身受的切膚認知。

原本從來沒有意識到身份問題的我,到了美國以後卻一下子跌到了邊緣,成了美國人口中的「少數族裔」,成了和所謂「主流社會」(mainstream)相對應的「弱勢群體」,成為了這個社會的「他者」。

我在美國的一個中國同志朋友曾經和我說過一件事,有一次他和朋友手牽手在拉斯維加斯的大街上走,聽到有人在背後沖著他們叫嚷,「Asian Queers」,意思是,看啊,這兩個「亞洲基佬」。

他們回頭一看,原來是一群白人小孩,面目天真無邪,可是眼神和語氣裡又分明透著惡意。

我的朋友說,他一輩子都忘不了那一天,因為那是一種雙重的歧視,既因為他的性向身份,也因為他的族裔身份。

從那以後,我開始意識到這樣一個問題:所謂的主流和弱勢,原本就只是一個相對的概念。每一個人,都可能在某個時候,成為不被主流社會認可和接納的「他者」。而且,選擇權甚至都不在你自己手上。

既然如此,何必要互相傷害?為什麼不放手,讓別人獲得他們想要的尊嚴和幸福、按照他們想要的方式生活?

為別人爭取平等和權益,其實就是在為自己爭取平等和權益。

2014年10月,蘋果CEO庫克出櫃,我曾經寫過一篇「為什麼每個人都應該讀庫克的出櫃文章」,其中幾段是這樣寫的,在這裡再引用一下:

「關心同志議題,並不僅僅是關心這個群體本身,而是關注我們所有人共同的命運。

因為我們的社會還充斥著各種各樣的歧視,歧視就像是潛伏在我們生活中無處不在的幽靈,一不留神,我們都可能成為被主流群體排斥的少數群體和弱勢群體。

你不是同性戀者,但你可能是在公司裡遭受職場歧視的女性,你可能是在大城市裡被歧視的外地人,你可能是被強權欺凌房子面臨強拆的底層百姓,你可能因為不標準的口音而在公交車上被人翻了白眼,你可能僅僅因為是個左撇子而遭受嘲笑。

因為我們同氣連枝,都是期望在這塊土地上不遭受任何不公正對待、平等而有尊嚴地生活的普通人。」

我的願望,就是這塊土地上的每一個普通人,都能平等而有尊嚴地生活,臉上有笑,心裡有愛

原作者聯系郵箱:ask@jiazhuang.us

##

statistic
statistic2

您可能也會有興趣的類似文章

Viewing all 897 articles
Browse latest View live