Travis support docker but not fully permission some dependencies that try to use OS command ex. kill can make your test error or failed.
link that not start with http will be claim as internal link
# osx
$ brew cask install tomighty
# if use dark theme need to build with youself
# issuse - https://github.com/ccidral/tomighty-osx/pull/16
# https://github.com/mrknmc/tomighty-osx
# notification version
# https://github.com/eduardonunesp/tomighty-osx
# update vim version to support all plugin in janus
$ brew install vim
Keys | Description |
---|---|
<leader>hs | toggle highlight search |
<leader>n | toggle NERDTree |
<leader>ci , <leader>/ | toogle comment # NERDCommenter |
<leader><leader>w | easy motion w # EasyMotion |
v{motion}S{tag} | Visual Select then surround it with tag #surround |
cs{old}{new} | change old surround to new surround #surround |
ds{tag} | delete tag surround #surround |
r in NERDTree - update tree m->a in NERDTree - create file/folder
F5 in ctrlp - update ctrlp
$ brew install ctags
$ ctags -R # generate tags
Keys | Description |
---|---|
<C-]> | jump to tag |
<C-t> | back to original |
:FixWhitespace
# osx not support ascii-art
$ brew install imagemagick
$ sudo gem install rmagick
# gem install vimdeck
$ sudo gem install vimdeck-without-ascii-art
[range] | Description |
---|---|
0 | above first line |
1 | first line |
. | mean to current line |
% | all lines |
$ | last line |
{start},{end} | from start to end line |
<,> | start selection to end selection |
Command | Description |
---|---|
:[range]print , :p | print line |
:[range]copy{target} , :t | copy line & paste |
:[range]normal {vimkey} | action vim key via command |
ex. :%normal A; - put ‘;’ in end line for each line | |
:!<shell command> | run shell command in vim % mean to current file |
:r<file> ,:r !<shell cmd> | retrieving file after current cursor |
Command | Description |
---|---|
:e<file> | edit/new file |
:new<file> | new file |
:vnew<file> | new file in vertical |
:w !sudo tee % | write file with sudo premission |
Command | Description |
---|---|
:set relativenumber | enable relative number |
:set norelativenumber | disable relative number |
Command | Description |
---|---|
:map, :map! | show mapping key |
:verbose map <key> | show mapping key and where it mapping |
Command | Description |
---|---|
:[range]move{target} , :m | move line |
:nohlsearch , :nohls | mute highlight search |
:<stg>C-d<\tab> | command line completion |
:redraw | redraw screen (Ctrl + L) |
:messages | show history of messages |
Automate claim free ebook from packtpub to your packtpub account by robotframework script.
# ubuntu
$ apt-get -y update
$ apt-get -y install python-dev python-pip
$ apt-get install -y phantomjs libicu52 wget
$ wget https://raw.githubusercontent.com/Pyppe/phantomjs2.0-ubuntu14.04x64/master/bin/phantomjs -O /usr/bin/phantomjs && chmod +x /usr/bin/phantomjs
$ pip install robotframework
$ pip install robotframework-selenium2library
# Edit {USER} and {PASSWORD} first !!!
$ pybot robot-packtpub.txt
We use XPath to locate where button and input form are that not flexible, It may change when Web UI changed (XPath is Best Solution that I found). You can find XPath by following this video - Quick Tip: Getting The XPath In Google Chrome.
PhantomJS2.0 fixed this issue
We use Xvfb Firefox for headless browser instead of PhantomJS that have some problem on docker in this case.
You can use Travis-CI and Nightly Builds to run your script everyday - See demo here.