Little Known Features of iTerm2

栏目: IT技术 · 发布时间: 5年前

内容简介:If you work in a large codebase, chances are you often need to open commits on Github, or revisions in Phabricator or tickets in your in-house bug tracker. This usually involves copying and pasting an identifier into a URL and opening that in your browser.

iTerm2 has a lot of little-known features that can make development much easier.

Smart Selection

If you work in a large codebase, chances are you often need to open commits on Github, or revisions in Phabricator or tickets in your in-house bug tracker. This usually involves copying and pasting an identifier into a URL and opening that in your browser. For example, you may want to open commit hashes or PRs on Github with a single click. You can make iTerm2 recognize arbitrary ids and take custom actions using them when they are Command-clicked via Smart Selections .

Here are a couple of examples:

Open commits on Github

Little Known Features of iTerm2 .

To make Command-clicking on a commit hash open it in Github, do the following:

  1. Install hub
  2. In your iTerm2 Preferences, go to Profiles -> Advanced -> Smart Selection -> Edit
  3. Click the + button to add a new rule and set the Regular Expression to [0-9a-f]{8,40}
  4. Click on Edit Actions... and add a new action
  5. Set the Action to Run Command...
  6. Set the Parameter to cd "\d" && /usr/local/bin/hub browse -- commit/\0 . You may have to update the path to hub here if you installed it to a different directory.

Once this is done, Command-click on a commit hash in iTerm2 should open it in its respective repository if it exists on Github. You can customize this technique to open PRs and Issues on Github as well.

Open revisions in Phabricator

  1. In your iTerm2 Preferences, go to Profiles -> Advanced -> Smart Selection -> Edit
  2. Click the + button to add a new rule and set the Regular Expression to D[:number:]{5}
  3. Click on Edit Actions... and add a new action
  4. Set the Action to Open URL...
  5. Set the Parameter to https://secure.phabricator.com/\0 or a similar URL for your organization.

Dynamic Profiles

If you work on a project that requires starting a number of terminal sessions in specific conditions, it can get annoying to get your environment running from scratch. iTerm2’s Dynamic Profiles allow you to create custom profiles that can depend on other profiles. You can use this to create a hierarchy of profiles that share your common settings but run different commands on startup.

For example, say your project always needs you to be running npm run build , npm run server and npm run worker during development. You can use dynamic profiles to start iTerm2 with all of these commands running as follows:

  1. Generate four GUIDs by running uuidgen in your terminal four times and copying the results.
  2. Create a file in ~/Library/Application Support/iTerm2/DynamicProfiles with these contents (fill in the parts in <...> ):
    {
      "Profiles": [
     {
       "Name": "Development",
       "Guid": "<guid1>",
       "Dynamic Profile Parent Name": "Default",
       "Working Directory": "<path-to-your-project>",
       "Custom Directory": "Yes"
     },
     {
       "Name": "Build",
       "Guid": "<guid2>",
       "Dynamic Profile Parent Name": "Development",
       "Initial Text": "npm run build"
     },
     {
       "Name": "Server",
       "Guid": "<guid3>",
       "Dynamic Profile Parent Name": "Development",
       "Initial Text": "npm run server"
     },
     {
       "Name": "Worker",
       "Guid": "<guid4>",
       "Dynamic Profile Parent Name": "Development",
       "Initial Text": "npm run worker"
     }
      ]
    }
    
  3. Reload iTerm2

These profiles should now show up in iTerm2 as dynamic profiles. You can then start sessions with these profiles to create a window arrangement and hit Command-Shift-S to save it. Then you can start all of these sessions at any time by just pressing Command-Shift-R or tell iTerm2 to open the arrangement when it starts! Check out https://blog.andrewray.me/how-to-create-custom-iterm2-window-arrangments/ for a detailed guide on window arrangements.


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

最高人民法院《关于行政诉讼证据若干问题的规定》释义与适用

最高人民法院《关于行政诉讼证据若干问题的规定》释义与适用

李国光 / 人民法院出版社 / 2002-9 / 30.0

为进一步深入贯彻实施《中华人民共和国行政诉讼法》,最高人民法院发布了《关于行政诉讼证据若干问题的规定》。本书即是对《行政证据规定》作出的充分的阐释。《行政证据规定》是我国第一部关于行政诉讼证据问题系统的司法解释,对我国行政审判的发展和行政诉讼制度的完善必将产生重要而深远的影响。本书对这一《行政证据规定》进行阐述,是为了让广大读者更具体深入的了解这一重要的规定。 本书均将《最高人民法院......一起来看看 《最高人民法院《关于行政诉讼证据若干问题的规定》释义与适用》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具