Popular Posts
javax.net.ssl.SSLHandshakeException: Connection closed by peer in Android 5.0 Lollipop Recently, there is a error occurs when access website via ssl connection like below although it worked fine several days ago. // Enable SSL... Enable SSL connection for Jsoup import org.jsoup.Connection; import org.jsoup.Jsoup; import javax.net.ssl.*; import java.io.IOException; import java.security.KeyManagement... Build an OpenVPN server on android device Preparation An android device, in this case, Sony xperia Z is used Root permission required Linux Deploy for deploy i...
Stats
Active site feature
  1. public void Main(string[] args)
  2. {
  3.     var siteCollectionUrl = "http://your_site_url";
  4.     var featureId = "379c069c-c650-451c-8887-aaaf91bf5df8";
  5.  
  6.     using (var ctx = new ClientContext(siteCollectionUrl))
  7.     {
  8.         var web = ctx.Web;
  9.         // activate feature
  10.         ctx.Load(web);
  11.         ctx.Load(web.Features);
  12.         ctx.ExecuteQuery();
  13.         web.Features.Add(new Guid(featureId), false, FeatureDefinitionScope.Site); ;
  14.         ctx.ExecuteQuery();
  15.     }
  16. }
Group operation: create, grant permission and add member using client object model
  1. public void Main(string[] args)
  2. {
  3.     var siteCollectionUrl = "http://your_site_url";
  4.     var member = "domain\\account";
  5.  
  6.     using (var ctx = new ClientContext(siteCollectionUrl))
  7.     {
  8.         var web = ctx.Web;
  9.         ctx.Load(web, w => w.ServerRelativeUrl);
  10.         ctx.ExecuteQuery();
  11.  
  12.         // Create a new group named 'Contact'
  13.         var groupInfo = new GroupCreationInformation();
  14.         groupInfo.Title = "Contact";
  15.         groupInfo.Description = string.Format(@"Use this group to grant people full control permissions to the SharePoint site: {0}", groupInfo.Title);
  16.         var group = web.SiteGroups.Add(groupInfo);
  17.         ctx.Load(group);
  18.         ctx.ExecuteQuery();
  19.  
  20.         // Set group properties
  21.         group.OnlyAllowMembersViewMembership = false;
  22.         group.AllowMembersEditMembership = true;
  23.         group.Update();
  24.         ctx.ExecuteQuery();
  25.  
  26.         // Grant group permission
  27.         var fullControlPermission = web.RoleDefinitions.GetByName("Full Control");
  28.         var roleBinding = new RoleDefinitionBindingCollection(ctx);
  29.         roleBinding.Add(fullControlPermission);
  30.         web.RoleAssignments.Add(group, roleBinding);
  31.         ctx.ExecuteQuery();
  32.  
  33.         // Add new member to group
  34.         var u = web.EnsureUser(member);
  35.         ctx.Load(u);
  36.         ctx.ExecuteQuery();
  37.         var userInfo = new UserCreationInformation();
  38.         userInfo.Email = u.Email;
  39.         userInfo.Title = u.Title;
  40.         userInfo.LoginName = u.LoginName;
  41.         group.Users.Add(userInfo);
  42.         ctx.ExecuteQuery();
  43.     }
  44. }
Get file type icon path
  1. /// <summary>
  2. /// An item was added.
  3. /// </summary>
  4. public override void ItemAdded(SPItemEventProperties properties)
  5. {
  6.         var reportItem = properties.ListItem;
  7.         // icon
  8.         var icon = SPUtility.MapToIcon(properties.Web, reportItem["URL Path"].ToString(), "", IconSize.Size16);
  9.         var iconPath = string.Format("/_layouts/15/images/{0}", icon);
  10.  
  11.         // do something
  12. }
Sublime Text hotkeys
編輯
Ctrl + X 刪除行
Ctrl + Enter 插入下一行
Ctrl + Shift + Enter 插入前一行
Ctrl + Shift + ↑ 往上移動一行
Ctrl + Shift + ↓ 往下移動一行
Ctrl + L 選取整行
Ctrl + D 選取單字(可重複選取相同的)
Alt + F3 選取所有已選取的單字
Ctrl + M 跳到最近的括弧
Ctrl + Shift + M 選取括弧內的所有文字
Ctrl + K + K 刪除游標後方所有文字
Ctrl + K + Backspace 刪除游標前方所有文字
Ctrl + ] 向內縮排(通常使用Tab)
Ctrl + [ 向外縮排(通常使用Shift + Tab)
Ctrl + Shift + D 複製行
Ctrl + J 與下一行結合為同一行
Ctrl + / 註解與移除註解
Ctrl + Shift + / 區域註解
Ctrl + Y 回覆上一步,沒有上一步時重複上個動作
Ctrl + Shift + V 貼上並符合縮排
Ctrl + U 軟回覆(包括選取動作)
導覽/Goto Anything
Ctrl + P 快速開啟檔案
Ctrl + R 快速到達符號(function, class, etc...)
Ctrl + G 快速到達某一行
Ctrl + ; 快速到達變數
通用
Ctrl + Shift + P 命令提示符(包含所有命令)
Ctrl + K + B 切換側欄
Ctrl + Shift + Alt + P 切換狀態列
搜尋/取代
Ctrl + F 搜尋
Ctrl + H 取代
Ctrl + Shift + F 檔案間搜尋
分頁
Ctrl + Shift + T 還原最後關閉的分頁
Ctrl + PgUp 換到上一個分頁
Ctrl + PgDown 換到下一個分頁
Ctrl + Tab 切換上一個分頁
Alt + [NUM] 切換到第[NUM]個分頁
切割視窗
Alt + Shift + (2, 3, 4) 垂直分割(2, 3, 4)個視窗
Alt + Shift + 1 回覆到預設
Alt + Shift + 5 水平垂直分割
Alt + Shift + (8, 9) 水平分割(2, 3)個視窗
書籤
Ctrl + F2 切換書籤
F2 到下一個書籤
Shift + F2 到上一個書籤
Ctrl + Shift + F2 清除書籤
文字操作
Ctrl + K + U 轉換為大寫
Ctrl + K + L 轉換為小寫