ppl 3.0.0 → 4.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (334) hide show
  1. checksums.yaml +5 -5
  2. data/.editorconfig +16 -0
  3. data/.eleventy.js +86 -0
  4. data/.eleventyignore +1 -0
  5. data/.github/workflows/build.yml +61 -0
  6. data/.gitignore +3 -1
  7. data/Rakefile +1 -18
  8. data/{CODE_OF_CONDUCT.md → code_of_conduct.md} +1 -1
  9. data/features/step_definitions/ppl_steps.rb +27 -27
  10. data/gh-pages/Gemfile +2 -0
  11. data/gh-pages/_config.yml +5 -0
  12. data/gh-pages/_includes/changelog.html +23 -0
  13. data/gh-pages/_includes/development-sidebar.html +25 -0
  14. data/gh-pages/_includes/footer.html +22 -0
  15. data/gh-pages/_includes/header.html +43 -0
  16. data/gh-pages/_includes/news.html +36 -0
  17. data/gh-pages/_includes/tip.html +54 -0
  18. data/gh-pages/_layouts/changelog.html +1 -0
  19. data/gh-pages/_layouts/command.html +104 -0
  20. data/gh-pages/_layouts/configuration.html +71 -0
  21. data/gh-pages/_layouts/development.html +20 -0
  22. data/gh-pages/_layouts/frontpage.html +6 -0
  23. data/gh-pages/_layouts/integration.html +44 -0
  24. data/gh-pages/_layouts/news.html +2 -0
  25. data/gh-pages/_layouts/page.html +6 -0
  26. data/gh-pages/_layouts/tip.html +2 -0
  27. data/gh-pages/_posts/2012-01-15-first-post.md +16 -0
  28. data/gh-pages/_posts/2012-12-20-1.0.0.md +19 -0
  29. data/gh-pages/_posts/2012-12-20-1.1.0.md +28 -0
  30. data/gh-pages/_posts/2012-12-20-1.2.0.md +18 -0
  31. data/gh-pages/_posts/2012-12-21-1.3.0.md +20 -0
  32. data/gh-pages/_posts/2012-12-21-thank-you-for-your-all-your-feedback.md +26 -0
  33. data/gh-pages/_posts/2012-12-22-1.4.1.md +21 -0
  34. data/gh-pages/_posts/2012-12-22-1.5.0.md +17 -0
  35. data/gh-pages/_posts/2012-12-23-1.5.1.md +13 -0
  36. data/gh-pages/_posts/2012-12-23-1.5.2.md +15 -0
  37. data/gh-pages/_posts/2012-12-26-1.5.3.md +19 -0
  38. data/gh-pages/_posts/2012-12-27-1.6.0.md +18 -0
  39. data/gh-pages/_posts/2012-12-29-1.7.0.md +18 -0
  40. data/gh-pages/_posts/2013-01-05-1.8.0.md +18 -0
  41. data/gh-pages/_posts/2013-01-06-1.9.0.md +20 -0
  42. data/gh-pages/_posts/2013-01-10-1.10.0.md +18 -0
  43. data/gh-pages/_posts/2013-01-20-1.11.0.md +14 -0
  44. data/gh-pages/_posts/2013-02-16-1.12.0.md +14 -0
  45. data/gh-pages/_posts/2013-02-17-1.13.0.md +29 -0
  46. data/gh-pages/_posts/2013-02-17-1.14.0.md +15 -0
  47. data/gh-pages/_posts/2013-02-17-1.14.1.md +18 -0
  48. data/gh-pages/_posts/2013-02-17-two-months-in.md +27 -0
  49. data/gh-pages/_posts/2013-03-16-1.15.0.md +28 -0
  50. data/gh-pages/_posts/2013-03-16-coloured-output-released.md +27 -0
  51. data/gh-pages/_posts/2013-04-10-ruby-2.0-compatibility.md +28 -0
  52. data/gh-pages/_posts/2013-04-11-1.15.1.md +13 -0
  53. data/gh-pages/_posts/2013-04-12-1.16.0.md +22 -0
  54. data/gh-pages/_posts/2013-04-14-1.17.0.md +15 -0
  55. data/gh-pages/_posts/2013-04-14-1.17.1.md +20 -0
  56. data/gh-pages/_posts/2013-04-14-1.17.2.md +13 -0
  57. data/gh-pages/_posts/2013-04-15-sync-alias.md +31 -0
  58. data/gh-pages/_posts/2013-04-15-utf8-fixed-and-more.md +37 -0
  59. data/gh-pages/_posts/2013-04-16-1.18.0.md +15 -0
  60. data/gh-pages/_posts/2013-04-16-set-up-color-output.md +47 -0
  61. data/gh-pages/_posts/2013-04-19-1.19.0.md +13 -0
  62. data/gh-pages/_posts/2013-04-19-1.20.0.md +15 -0
  63. data/gh-pages/_posts/2013-04-20-1.21.0.md +16 -0
  64. data/gh-pages/_posts/2013-04-20-1.22.0.md +14 -0
  65. data/gh-pages/_posts/2013-04-20-1.22.1.md +13 -0
  66. data/gh-pages/_posts/2013-04-21-1.22.2.md +15 -0
  67. data/gh-pages/_posts/2013-04-21-1.23.0.md +35 -0
  68. data/gh-pages/_posts/2013-04-23-1.24.0.md +16 -0
  69. data/gh-pages/_posts/2013-04-24-1.25.0.md +21 -0
  70. data/gh-pages/_posts/2013-05-09-2.0.0.md +33 -0
  71. data/gh-pages/_posts/2013-05-09-version-2.0.0-released.md +32 -0
  72. data/gh-pages/_posts/2013-07-20-2.1.0.md +36 -0
  73. data/gh-pages/_posts/2013-07-20-2.2.0.md +20 -0
  74. data/gh-pages/_posts/2013-10-12-2.3.0.md +19 -0
  75. data/gh-pages/_posts/2014-03-30-2.3.1.md +25 -0
  76. data/gh-pages/_posts/2015-01-05-2.3.2.md +18 -0
  77. data/gh-pages/_posts/2015-12-03-get-involved.md +29 -0
  78. data/gh-pages/_posts/2015-12-05-2.3.3.md +16 -0
  79. data/gh-pages/_posts/2016-01-02-2.4.0.md +19 -0
  80. data/gh-pages/_posts/2017-05-01-2.4.1.md +12 -0
  81. data/gh-pages/_posts/2017-10-23-sleep-mode.md +18 -0
  82. data/gh-pages/_posts/2018-01-03-3.0.1.md +12 -0
  83. data/gh-pages/_stylesheets/ppl/color.less +119 -0
  84. data/gh-pages/_stylesheets/ppl/layout.less +54 -0
  85. data/gh-pages/_stylesheets/ppl/style.less +185 -0
  86. data/gh-pages/_stylesheets/ppl/typography.less +59 -0
  87. data/gh-pages/development/changelog/index.md +18 -0
  88. data/gh-pages/development/changelog/split.rb +51 -0
  89. data/gh-pages/development/index.html +32 -0
  90. data/gh-pages/development/roadmap/index.md +15 -0
  91. data/gh-pages/documentation/about/index.html +63 -0
  92. data/gh-pages/documentation/commands/add/index.md +43 -0
  93. data/gh-pages/documentation/commands/age/add/index.md +40 -0
  94. data/gh-pages/documentation/commands/age/index.md +38 -0
  95. data/gh-pages/documentation/commands/bday/index.md +44 -0
  96. data/gh-pages/documentation/commands/completion/index.md +38 -0
  97. data/gh-pages/documentation/commands/email/index.md +64 -0
  98. data/gh-pages/documentation/commands/grep/index.md +32 -0
  99. data/gh-pages/documentation/commands/init/index.md +28 -0
  100. data/gh-pages/documentation/commands/ls/index.md +55 -0
  101. data/gh-pages/documentation/commands/mutt/index.md +36 -0
  102. data/gh-pages/documentation/commands/mv/index.md +26 -0
  103. data/gh-pages/documentation/commands/name/index.md +45 -0
  104. data/gh-pages/documentation/commands/nick/index.md +44 -0
  105. data/gh-pages/documentation/commands/org/index.md +45 -0
  106. data/gh-pages/documentation/commands/phone/index.md +56 -0
  107. data/gh-pages/documentation/commands/post/index.md +61 -0
  108. data/gh-pages/documentation/commands/pull/index.md +39 -0
  109. data/gh-pages/documentation/commands/push/index.md +36 -0
  110. data/gh-pages/documentation/commands/remote/index.md +40 -0
  111. data/gh-pages/documentation/commands/rm/index.md +23 -0
  112. data/gh-pages/documentation/commands/scrape/index.md +38 -0
  113. data/gh-pages/documentation/commands/shell/index.md +39 -0
  114. data/gh-pages/documentation/commands/show/index.md +33 -0
  115. data/gh-pages/documentation/commands/url/index.md +44 -0
  116. data/gh-pages/documentation/commands/version/index.md +27 -0
  117. data/gh-pages/documentation/configuration/address_book/index.md +22 -0
  118. data/gh-pages/documentation/configuration/alias/index.md +45 -0
  119. data/gh-pages/documentation/configuration/color/index.md +47 -0
  120. data/gh-pages/documentation/configuration/color_age/index.md +20 -0
  121. data/gh-pages/documentation/configuration/color_bday/index.md +20 -0
  122. data/gh-pages/documentation/configuration/color_email/index.md +21 -0
  123. data/gh-pages/documentation/configuration/color_ls/index.md +21 -0
  124. data/gh-pages/documentation/configuration/color_name/index.md +20 -0
  125. data/gh-pages/documentation/configuration/color_nick/index.md +20 -0
  126. data/gh-pages/documentation/configuration/color_org/index.md +20 -0
  127. data/gh-pages/documentation/configuration/color_phone/index.md +22 -0
  128. data/gh-pages/documentation/configuration/color_post/index.md +20 -0
  129. data/gh-pages/documentation/configuration/color_url/index.md +20 -0
  130. data/gh-pages/documentation/configuration/index.html +8 -0
  131. data/gh-pages/documentation/index.html +183 -0
  132. data/gh-pages/documentation/integration/bash/index.md +23 -0
  133. data/gh-pages/documentation/integration/google/index.md +26 -0
  134. data/gh-pages/documentation/integration/index.html +8 -0
  135. data/gh-pages/documentation/integration/mutt/index.md +35 -0
  136. data/gh-pages/documentation/integration/zsh/index.md +19 -0
  137. data/gh-pages/documentation/quick-start/index.html +88 -0
  138. data/gh-pages/documentation/tips/index.html +9 -0
  139. data/gh-pages/index.html +108 -0
  140. data/gh-pages/news/index.html +9 -0
  141. data/gh-pages/robots.txt +3 -0
  142. data/gh-pages/stylesheets/flatstrap.css +10 -0
  143. data/gh-pages/stylesheets/ppl.scss +235 -0
  144. data/gh-pages/wiki.png +0 -0
  145. data/lib/ppl.rb +4 -1
  146. data/lib/ppl/adapter/color.rb +0 -1
  147. data/lib/ppl/adapter/color/colored.rb +0 -1
  148. data/lib/ppl/adapter/email_scraper.rb +0 -1
  149. data/lib/ppl/adapter/email_scraper/mail.rb +4 -5
  150. data/lib/ppl/adapter/storage.rb +0 -1
  151. data/lib/ppl/adapter/storage/disk.rb +0 -1
  152. data/lib/ppl/adapter/storage/factory.rb +0 -1
  153. data/lib/ppl/adapter/vcard.rb +0 -1
  154. data/lib/ppl/adapter/vcard/vpim.rb +5 -1
  155. data/lib/ppl/application/bootstrap.rb +0 -1
  156. data/lib/ppl/application/command.rb +0 -1
  157. data/lib/ppl/application/command_suite.rb +0 -1
  158. data/lib/ppl/application/configuration.rb +0 -1
  159. data/lib/ppl/application/input.rb +0 -1
  160. data/lib/ppl/application/output.rb +0 -1
  161. data/lib/ppl/application/router.rb +0 -1
  162. data/lib/ppl/application/shell.rb +0 -1
  163. data/lib/ppl/command/add.rb +0 -1
  164. data/lib/ppl/command/age.rb +0 -1
  165. data/lib/ppl/command/attribute.rb +0 -1
  166. data/lib/ppl/command/bday.rb +0 -1
  167. data/lib/ppl/command/completion.rb +0 -1
  168. data/lib/ppl/command/email.rb +0 -1
  169. data/lib/ppl/command/external.rb +0 -1
  170. data/lib/ppl/command/help.rb +0 -1
  171. data/lib/ppl/command/init.rb +0 -1
  172. data/lib/ppl/command/ls.rb +0 -1
  173. data/lib/ppl/command/mutt.rb +0 -1
  174. data/lib/ppl/command/mv.rb +0 -1
  175. data/lib/ppl/command/name.rb +0 -1
  176. data/lib/ppl/command/nick.rb +0 -1
  177. data/lib/ppl/command/org.rb +0 -1
  178. data/lib/ppl/command/phone.rb +0 -1
  179. data/lib/ppl/command/post.rb +0 -1
  180. data/lib/ppl/command/rm.rb +0 -1
  181. data/lib/ppl/command/scrape.rb +0 -1
  182. data/lib/ppl/command/shell.rb +0 -1
  183. data/lib/ppl/command/show.rb +0 -1
  184. data/lib/ppl/command/url.rb +0 -1
  185. data/lib/ppl/command/version.rb +0 -1
  186. data/lib/ppl/entity/address_book.rb +0 -1
  187. data/lib/ppl/entity/contact.rb +0 -1
  188. data/lib/ppl/entity/email_address.rb +0 -1
  189. data/lib/ppl/entity/name.rb +0 -1
  190. data/lib/ppl/entity/phone_number.rb +0 -1
  191. data/lib/ppl/entity/postal_address.rb +0 -1
  192. data/lib/ppl/error/completion_not_found.rb +0 -1
  193. data/lib/ppl/error/contact_not_found.rb +0 -1
  194. data/lib/ppl/error/incorrect_usage.rb +0 -1
  195. data/lib/ppl/error/invalid_vcard.rb +1 -0
  196. data/lib/ppl/error/postal_address_not_found.rb +0 -1
  197. data/lib/ppl/format/address_book.rb +0 -1
  198. data/lib/ppl/format/address_book/ages.rb +0 -1
  199. data/lib/ppl/format/address_book/birthdays.rb +0 -1
  200. data/lib/ppl/format/address_book/email_addresses.rb +0 -1
  201. data/lib/ppl/format/address_book/mutt_query.rb +0 -1
  202. data/lib/ppl/format/address_book/names.rb +0 -1
  203. data/lib/ppl/format/address_book/nicknames.rb +0 -1
  204. data/lib/ppl/format/address_book/one_line.rb +0 -1
  205. data/lib/ppl/format/address_book/organizations.rb +0 -1
  206. data/lib/ppl/format/address_book/phone_numbers.rb +0 -1
  207. data/lib/ppl/format/address_book/postal_addresses.rb +0 -1
  208. data/lib/ppl/format/address_book/urls.rb +0 -1
  209. data/lib/ppl/format/contact.rb +0 -1
  210. data/lib/ppl/format/contact/age.rb +0 -1
  211. data/lib/ppl/format/contact/birthday.rb +0 -1
  212. data/lib/ppl/format/contact/email_addresses.rb +0 -1
  213. data/lib/ppl/format/contact/full.rb +0 -1
  214. data/lib/ppl/format/contact/nicknames.rb +0 -1
  215. data/lib/ppl/format/contact/organization.rb +0 -1
  216. data/lib/ppl/format/contact/phone_number.rb +0 -1
  217. data/lib/ppl/format/contact/postal_address.rb +0 -1
  218. data/lib/ppl/format/contact/postal_addresses.rb +0 -1
  219. data/lib/ppl/format/contact/urls.rb +0 -1
  220. data/lib/ppl/format/custom.rb +0 -1
  221. data/lib/ppl/format/custom/contact.rb +0 -1
  222. data/lib/ppl/format/custom/email_address.rb +0 -1
  223. data/lib/ppl/format/custom/phone_number.rb +0 -1
  224. data/lib/ppl/format/name.rb +0 -1
  225. data/lib/ppl/format/name/full_only.rb +0 -1
  226. data/lib/ppl/format/postal_address.rb +0 -1
  227. data/lib/ppl/format/postal_address/multi_line.rb +0 -1
  228. data/lib/ppl/format/postal_address/one_line.rb +0 -1
  229. data/lib/ppl/format/table.rb +0 -1
  230. data/lib/ppl/service/email_address.rb +0 -1
  231. data/lib/ppl/service/name.rb +0 -1
  232. data/lib/ppl/service/phone_number.rb +0 -1
  233. data/lib/ppl/service/postal_address.rb +0 -1
  234. data/{LICENSE → license} +0 -0
  235. data/makefile +18 -0
  236. data/package.json +23 -0
  237. data/ppl.gemspec +15 -13
  238. data/{README.md → readme.md} +12 -9
  239. data/site/_data/url.js +4 -0
  240. data/site/casts/hero.cast +189 -0
  241. data/site/development.njk +6 -0
  242. data/site/documentation.njk +6 -0
  243. data/site/index.njk +75 -0
  244. data/site/news.njk +6 -0
  245. data/site/style.scss +140 -0
  246. data/spec/ppl/adapter/color/colored_spec.rb +3 -4
  247. data/spec/ppl/adapter/color_spec.rb +0 -1
  248. data/spec/ppl/adapter/email_scraper/mail_spec.rb +13 -13
  249. data/spec/ppl/adapter/email_scraper_spec.rb +0 -1
  250. data/spec/ppl/adapter/output_spec.rb +7 -8
  251. data/spec/ppl/adapter/storage/disk_spec.rb +18 -19
  252. data/spec/ppl/adapter/storage/factory_spec.rb +3 -4
  253. data/spec/ppl/adapter/storage/git_spec.rb +31 -32
  254. data/spec/ppl/adapter/storage_spec.rb +3 -4
  255. data/spec/ppl/adapter/vcard/greencard_spec.rb +45 -45
  256. data/spec/ppl/adapter/vcard_spec.rb +0 -1
  257. data/spec/ppl/application/bootstrap_spec.rb +128 -129
  258. data/spec/ppl/application/command_spec.rb +8 -9
  259. data/spec/ppl/application/command_suite_spec.rb +7 -8
  260. data/spec/ppl/application/configuration_spec.rb +16 -17
  261. data/spec/ppl/application/input_spec.rb +2 -3
  262. data/spec/ppl/application/router_spec.rb +8 -9
  263. data/spec/ppl/application/shell_spec.rb +39 -40
  264. data/spec/ppl/command/add_spec.rb +6 -7
  265. data/spec/ppl/command/age_spec.rb +7 -8
  266. data/spec/ppl/command/attribute_spec.rb +22 -23
  267. data/spec/ppl/command/bday_spec.rb +11 -12
  268. data/spec/ppl/command/completion_spec.rb +7 -8
  269. data/spec/ppl/command/email_spec.rb +19 -20
  270. data/spec/ppl/command/external_spec.rb +7 -8
  271. data/spec/ppl/command/help_spec.rb +15 -16
  272. data/spec/ppl/command/init_spec.rb +5 -6
  273. data/spec/ppl/command/ls_spec.rb +12 -13
  274. data/spec/ppl/command/mutt_spec.rb +33 -34
  275. data/spec/ppl/command/mv_spec.rb +11 -12
  276. data/spec/ppl/command/name_spec.rb +17 -18
  277. data/spec/ppl/command/nick_spec.rb +1 -2
  278. data/spec/ppl/command/org_spec.rb +1 -2
  279. data/spec/ppl/command/phone_spec.rb +15 -16
  280. data/spec/ppl/command/post_spec.rb +29 -30
  281. data/spec/ppl/command/rm_spec.rb +3 -4
  282. data/spec/ppl/command/scrape_spec.rb +24 -25
  283. data/spec/ppl/command/shell_spec.rb +41 -42
  284. data/spec/ppl/command/show_spec.rb +4 -5
  285. data/spec/ppl/command/url_spec.rb +1 -2
  286. data/spec/ppl/command/version_spec.rb +4 -5
  287. data/spec/ppl/entity/address_book_spec.rb +1 -2
  288. data/spec/ppl/entity/contact_spec.rb +16 -17
  289. data/spec/ppl/entity/email_address_spec.rb +3 -4
  290. data/spec/ppl/entity/name_spec.rb +1 -2
  291. data/spec/ppl/entity/phone_number_spec.rb +5 -6
  292. data/spec/ppl/entity/postal_address_spec.rb +2 -3
  293. data/spec/ppl/format/address_book/ages_spec.rb +3 -4
  294. data/spec/ppl/format/address_book/birthdays_spec.rb +3 -4
  295. data/spec/ppl/format/address_book/email_addresses_spec.rb +3 -4
  296. data/spec/ppl/format/address_book/mutt_query_spec.rb +3 -4
  297. data/spec/ppl/format/address_book/names_spec.rb +3 -4
  298. data/spec/ppl/format/address_book/nicknames_spec.rb +4 -5
  299. data/spec/ppl/format/address_book/one_line_spec.rb +5 -6
  300. data/spec/ppl/format/address_book/organizations_spec.rb +3 -4
  301. data/spec/ppl/format/address_book/phone_numbers_spec.rb +3 -4
  302. data/spec/ppl/format/address_book/postal_addresses_spec.rb +2 -3
  303. data/spec/ppl/format/address_book/urls_spec.rb +3 -4
  304. data/spec/ppl/format/address_book_spec.rb +0 -1
  305. data/spec/ppl/format/contact/age_spec.rb +8 -9
  306. data/spec/ppl/format/contact/birthday_spec.rb +4 -5
  307. data/spec/ppl/format/contact/email_addresses_spec.rb +3 -4
  308. data/spec/ppl/format/contact/full_spec.rb +11 -12
  309. data/spec/ppl/format/contact/nicknames_spec.rb +4 -5
  310. data/spec/ppl/format/contact/organization_spec.rb +4 -5
  311. data/spec/ppl/format/contact/phone_number_spec.rb +4 -5
  312. data/spec/ppl/format/contact/postal_address_spec.rb +1 -2
  313. data/spec/ppl/format/contact/postal_addresses_spec.rb +3 -4
  314. data/spec/ppl/format/contact/urls_spec.rb +4 -5
  315. data/spec/ppl/format/contact_spec.rb +0 -1
  316. data/spec/ppl/format/custom/contact_spec.rb +13 -14
  317. data/spec/ppl/format/custom/email_address_spec.rb +3 -4
  318. data/spec/ppl/format/custom/phone_number_spec.rb +4 -5
  319. data/spec/ppl/format/custom_spec.rb +6 -7
  320. data/spec/ppl/format/name/full_only_spec.rb +4 -5
  321. data/spec/ppl/format/name_spec.rb +0 -1
  322. data/spec/ppl/format/postal_address/multi_line_spec.rb +10 -11
  323. data/spec/ppl/format/postal_address/one_line_spec.rb +9 -10
  324. data/spec/ppl/format/postal_address_spec.rb +0 -1
  325. data/spec/ppl/format/table_spec.rb +11 -11
  326. data/spec/ppl/service/email_address_spec.rb +13 -14
  327. data/spec/ppl/service/name_spec.rb +9 -10
  328. data/spec/ppl/service/phone_number_spec.rb +11 -12
  329. data/spec/ppl/service/postal_address_spec.rb +20 -21
  330. data/spec/spec_helper.rb +4 -0
  331. data/yarn.lock +3605 -0
  332. metadata +183 -22
  333. data/.travis.yml +0 -11
  334. data/COPYING +0 -339
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: 1.15.0
3
+ summary: Color output added
4
+ date: 2013-03-16
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.15.0.html
9
+ ---
10
+
11
+ This adds support for colourised output to most ppl commands. The following
12
+ commands are affected by this change:
13
+
14
+ * [age](/documentation/configuration/color_age)
15
+ * [bday](/documentation/configuration/color_bday)
16
+ * [email](/documentation/configuration/color_email)
17
+ * [ls](/documentation/configuration/color_ls)
18
+ * [name](/documentation/configuration/color_name)
19
+ * [nick](/documentation/configuration/color_nick)
20
+ * [org](/documentation/configuration/color_org)
21
+ * [phone](/documentation/configuration/color_phone)
22
+ * [post](/documentation/configuration/color_post)
23
+ * [url](/documentation/configuration/color_url)
24
+
25
+ Internally, this release depends on two new gems:
26
+
27
+ * [morphine](https://github.com/bkeepers/morphine)
28
+ * [colored](https://github.com/defunkt/colored)
@@ -0,0 +1,27 @@
1
+ ---
2
+ title: Coloured Output Released
3
+ date: 2013-03-16
4
+ layout: news
5
+ section: news
6
+ categories: [news]
7
+ ---
8
+
9
+ It's been about a month since the last release, but that's not because of any
10
+ lack of internal activity. Today marks the release of support for git-style
11
+ coloured output, configurable in `~/.pplconfig`.
12
+
13
+ This has taken a while to achieve just because I wanted to take my time over it
14
+ and try to really get it right the first time. Some refactoring was necessary in
15
+ order to get config data into the code responsible for formatting output, but
16
+ hopefully the resulting usage of the
17
+ [morphine](https://github.com/bkeepers/morphine) dependency injection container
18
+ should reduce such code churn in future.
19
+
20
+ In other news, the [UTF-8 bug](https://github.com/hnrysmth/ppl/issues/17) mentioned
21
+ in [last month's update](/news/two-months-in/) should be gone soon. I've spoken
22
+ to the maintainer of vpim about it, and [his
23
+ response](http://rubyforge.org/pipermail/vpim-talk/2013/000185.html) was
24
+ positive. Apparently vpim just doesn't quite support Ruby 1.9.1's String class
25
+ yet, but will do soon.
26
+
27
+
@@ -0,0 +1,28 @@
1
+ ---
2
+ title: Ruby 2.0 Compatibility
3
+ date: 2013-04-10
4
+ layout: news
5
+ section: news
6
+ categories: [news]
7
+ ---
8
+
9
+ The latest version of ppl is available now, and it's one of those tiny,
10
+ pointless-sounding ones: `1.15.1`. This release is all about Ruby 2.0
11
+ compatibility. A recent issue reported on GitHub by
12
+ [@pigmonkey](https://github.com/pigmonkey) brought to my attention that vpim,
13
+ ppl's underlying vCard library, [doesn't work at all in Ruby
14
+ 2.0](https://github.com/hnrysmth/ppl/issues/19).
15
+
16
+ invalid multibyte escape: /^\xFF\xFE/
17
+
18
+ This is all better now, and ppl works as well in Ruby 2.0 as it does in the
19
+ 1.9.\* range. This was a bit of a seismic change behind the scenes, and it
20
+ almost seems misleading to increment only the patch version number.
21
+
22
+ Essentially, I forked vpim in order to get this done. While this is an
23
+ unexpected turn of events, it does mean I'm now quite well-placed to fix its
24
+ UTF-8 issues myself instead of depending on the mercy of upstream. By the way,
25
+ if you're interested in helping with this, go take a look at
26
+ [greencard](https://github.com/hnrysmth/greencard). It's vpim stripped down to just
27
+ the vCard functionality used by ppl. Go fork it!
28
+
@@ -0,0 +1,13 @@
1
+ ---
2
+ title: 1.15.1
3
+ summary: Ruby 2.0 support
4
+ date: 2013-04-11
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.15.1.html
9
+ ---
10
+
11
+ Heralding support for Ruby 2.0 and beyond, this version of ppl also sees the
12
+ replacement of the vpim gem dependency with greencard. See the [news
13
+ post](/news/ruby-2.0-compatibility/) for more details.
@@ -0,0 +1,22 @@
1
+ ---
2
+ title: 1.16.0
3
+ summary: Mutt integration tweaks
4
+ date: 2013-04-12
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.16.0.html
9
+ ---
10
+
11
+ With a couple of tweaks to the way ppl handles mutt queries, `1.16.0` should be
12
+ a nice improvement for anybody using ppl to autocomplete email addresses in the
13
+ mail client that "just sucks less".
14
+
15
+ * Added missing functionality to the [mutt](/documentation/commands/mutt)
16
+ command enabling it to output *all* of a contact's matching email addresses
17
+ instead of just the first.
18
+ * Added the `-i` flag to the [mutt](/documentation/commands/mutt) command
19
+ enabling it to perform case-insensitive search of the address book.
20
+
21
+ Many thanks to [@pigmonkey](https://github.com/pigmonkey) on GitHub for the
22
+ cooperation that made this release happen.
@@ -0,0 +1,15 @@
1
+ ---
2
+ title: 1.17.0
3
+ summary: UTF-8 support
4
+ date: 2013-04-14
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.17.0.html
9
+ ---
10
+
11
+ This is a peculiar version in that it doesn't change any code in ppl itself, but
12
+ simultaneously fixes a really major issue that's been affecting it. All this
13
+ version does is to increment the greencard gem dependency version number to a
14
+ version that copes with UTF-8 input. It's a *tiny* change, but it's a major
15
+ improvement.
@@ -0,0 +1,20 @@
1
+ ---
2
+ title: 1.17.1
3
+ summary: Mutt integration tweaks
4
+ date: 2013-04-14
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.17.1.html
9
+ ---
10
+
11
+ Two fairly minor issues are fixed in this version. The first is a tweak to the
12
+ output of the [mutt](/documentation/commands/mutt) command, improving the
13
+ [understandability and usefulness of the user-facing
14
+ text](https://github.com/hnrysmth/ppl/issues/20#issuecomment-16302428). The second is
15
+ a bit of output sanitisation to help out people unlucky enough to have an
16
+ address book where some of the contacts' fields contain `^M` [carriage return
17
+ characters](https://github.com/hnrysmth/ppl/issues/27).
18
+
19
+ * Tweaked the output of the [mutt](/documentation/commands/mutt) command
20
+ * Add output sanitisation removing all `^M` characters from all output
@@ -0,0 +1,13 @@
1
+ ---
2
+ title: 1.17.2
3
+ summary: Fix for minor release bugs
4
+ date: 2013-04-14
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.17.2.html
9
+ ---
10
+
11
+ An embarrassing "quick follow-up" release, this unbreaks a couple of things that
12
+ 1.17.1 broke. Displaying the "Contact '%s' not found" message has been fixed, as
13
+ has the command list help text displayed by `ppl` and `ppl help`.
@@ -0,0 +1,31 @@
1
+ ---
2
+ title: Sync Alias
3
+ date: 2013-04-15
4
+ layout: tip
5
+ categories: [tips]
6
+ permalink: /documentation/tips/sync-alias
7
+ author_name: hnrysmth
8
+ author_url: http://henrysmith.org/
9
+ ---
10
+
11
+ If your ppl address book is cloned on multiple computers, you're probably
12
+ accustomed to using [pull](/documentation/commands/pull/) and
13
+ [push](/documentation/commands/pull/) to synchronise your data using Git. If so,
14
+ that's great. You're making the most of ppl's core functionality. But you could
15
+ probably be making more of its convenience-oriented features.
16
+
17
+ ppl allows you to configure [aliases](/documentation/configuration/alias/) as
18
+ shorcuts for often-used commands, or as a way of composing commands together.
19
+ Here's an alias called `sync` which does the latter.
20
+
21
+ sync = !ppl pull origin master && ppl push origin master
22
+
23
+ This allows you to execute `git pull origin master` and then `git push origin
24
+ master` in your address book directory by simply entering `ppl sync`. For most
25
+ users, this probably automates the entire synchronisation process.
26
+
27
+ Bear in mind that this alias will only work if you keep your contacts on the
28
+ `master` branch and have a remote called `origin`. If your setup is more complex
29
+ than that, you may have to get creative with your aliases to achieve this level
30
+ of laziness.
31
+
@@ -0,0 +1,37 @@
1
+ ---
2
+ title: UTF-8 Fixed And More
3
+ date: 2013-04-15
4
+ layout: news
5
+ section: news
6
+ categories: [news]
7
+ ---
8
+
9
+ Over the weekend, in an uncharacteristically late night of coding, I finally put
10
+ an end to that UTF-8 issue that had been preventing the [use of ppl with
11
+ non-ASCII characters](https://github.com/hnrysmth/ppl/issues/17) such as ß or ñ. My
12
+ apologies to anyone who wanted to try ppl and couldn't during the *two entire
13
+ months* that issue sat open. If it's any consolation, fixing it gave me many
14
+ headaches.
15
+
16
+ Even though it's only been a few days since the previous news post, there has
17
+ been a lot of progress in that time, thanks largely to the involvement and
18
+ encouragement of [@pigmonkey](https://github.com/pigmonkey) and
19
+ [@shushcat](https://github.com/shushcat) on GitHub. Some good refinements to the
20
+ [mutt integration](/documentation/integration/mutt/) have already made it into
21
+ recent versions of ppl, and there's some good discussion happening about what
22
+ needs doing to keep improving ppl in the near future.
23
+
24
+ The [documentation](/documentation) has had some much-needed attention invested
25
+ in it, too. A few bits and pieces have been tidied up, and a couple of entirely
26
+ new sections have been added as well. The [Integration
27
+ Guide](/documentation/integration/bash/) covers the growing number of ways of
28
+ using ppl with other software, and the [Tips Section](documentation/tips/)
29
+ should prove to be a good catch-all place for helpful advice about using ppl.
30
+
31
+ Contributions are welcome, so get in touch if you spot any mistakes, have any
32
+ tips to contribute, or know of any tools for integrating ppl into other
33
+ software. Big thanks to everyone for your input so far. Shout out to
34
+ [@alexGschaider](https://github.com/axelGschaider),
35
+ [@matthewp](https://github.com/matthewp/), and
36
+ [@storge](https://github.com/storge) for their help as well.
37
+
@@ -0,0 +1,15 @@
1
+ ---
2
+ title: 1.18.0
3
+ summary: ppl completion added
4
+ date: 2013-04-16
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.18.0.html
9
+ ---
10
+
11
+ With the intention of streamlining the integration process with
12
+ [Bash](/documentation/integration/bash), and
13
+ [ZSH](/documentation/integration/zsh), this release adds the
14
+ [completion](/documentation/commands/completion) command. This new command
15
+ simply outputs the chosen shell autocompletion function to stdout.
@@ -0,0 +1,47 @@
1
+ ---
2
+ title: Set Up Color Output
3
+ date: 2013-04-16
4
+ layout: tip
5
+ categories: [tips]
6
+ permalink: /documentation/tips/set-up-color-output
7
+ author_name: hnrysmth
8
+ author_url: http://henrysmith.org/
9
+ ---
10
+
11
+ ppl provides a system for configuring the output of many of its commands in a
12
+ way that's almost identical to git's color output configuration. While not an
13
+ essential piece of functionality, a small amount of color can go a long way
14
+ towards improving your experience using ppl.
15
+
16
+ Personally, I try to rein in the temptation to go to town and assign a color to
17
+ absolutely everything. My `~/.pplconfig` simply colorizes all contact IDs in all
18
+ output, highlighting them in cyan to maximize their visibility.
19
+
20
+ <pre><code>$ ppl ls</code>
21
+ <code><span style="color: #2AA198;">alice:</span> Alice alice@example.org</code>
22
+ <code><span style="color: #2AA198;">bob:</span> Bob bob@example.org</code>
23
+ <code><span style="color: #2AA198;">eve:</span> Eve eve@example.org</code></pre>
24
+
25
+ Configuring ppl to colorize the output of ls like in the above example is
26
+ extremely easy, and will be especially familiar to you if you're already used to
27
+ configuring git. Here are the exact config file contents necesssary to show
28
+ contact IDs in cyan in the output of [ppl ls](/documentation/commands/ls).
29
+
30
+ [color]
31
+ ls = true
32
+
33
+ [color "ls"]
34
+ id = cyan
35
+
36
+ Simply add the above to your `~/.pplconfig`, run `ppl ls`, and you should see
37
+ contact IDs in cyan. If not, double-check whether you're running an up-to-date
38
+ version of ppl. This feature has been supported since `1.15.0`, making it only
39
+ about a month old at the time of writing.
40
+
41
+ Now that you know the basic gist of how to configure color, you'll probably be
42
+ glad to know that there's some fairly extensive [reference documentation for this
43
+ functionality](/documentation/configuration/color), including a [list of
44
+ supported colors](/documentation/configuration/color/#list_of_supported_colors)
45
+ and an example for each command which shows the [full list of configurable text
46
+ elements](/documentation/configuration/color_ls).
47
+
@@ -0,0 +1,13 @@
1
+ ---
2
+ title: 1.19.0
3
+ summary: ppl scrape added
4
+ date: 2013-04-19
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.19.0.html
9
+ ---
10
+
11
+ Following a [feature request](https://github.com/hnrysmth/ppl/issues/23) on GitHub,
12
+ this release adds the [scrape](/documentation/commands/scrape) command for
13
+ automatically adding contacts to an address book from an email message.
@@ -0,0 +1,15 @@
1
+ ---
2
+ title: 1.20.0
3
+ summary: ppl nick --no-color added
4
+ date: 2013-04-19
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.20.0.html
9
+ ---
10
+
11
+ In order to fix a [compatibility issue with OS
12
+ X](https://github.com/hnrysmth/ppl/issues/22#issuecomment-16622923), the usage of sed
13
+ to strip ANSI color escape codes in the autocompletion functions has been
14
+ replaced with a `--no-color` option which has been added to [ppl
15
+ nick](/documentation/commands/nick).
@@ -0,0 +1,16 @@
1
+ ---
2
+ title: 1.21.0
3
+ summary: ppl phone --type added
4
+ date: 2013-04-20
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.21.0.html
9
+ ---
10
+
11
+ Further increasing the expressiveness of ppl's commands, this release brings the
12
+ `--type` option to [ppl phone](/documentation/commands/phone). With this option,
13
+ the vCard format's `TYPE` parameter in the `TEL` field is now exposed to users.
14
+ This allows you to label phone numbers in a way that doesn't [break
15
+ compatibility with other
16
+ software](https://github.com/hnrysmth/ppl/issues/24#issuecomment-16623136).
@@ -0,0 +1,14 @@
1
+ ---
2
+ title: 1.22.0
3
+ summary: Noticeable performance optimization
4
+ date: 2013-04-20
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.22.0.html
9
+ ---
10
+
11
+ In this version of ppl, one particularly egregious performance issue has been
12
+ fixed. Upgrading is *highly* recommended. Even if you haven't noticed any
13
+ problems worth complaining about, you should hopefully enjoy quite a boost with
14
+ this new version.
@@ -0,0 +1,13 @@
1
+ ---
2
+ title: 1.22.1
3
+ summary: Fix minor output formatting bug
4
+ date: 2013-04-20
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.22.1.html
9
+ ---
10
+
11
+ This version simply fixes a minor bug in the outputting format code, which was
12
+ introduced in `1.21.0`. Nothing serious, but a warning sign that I need to slow
13
+ myself down and perhaps look at automating more of the testing process.
@@ -0,0 +1,15 @@
1
+ ---
2
+ title: 1.22.2
3
+ summary: Fix for broken --delete option
4
+ date: 2013-04-21
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.22.2.html
9
+ ---
10
+
11
+ See the [Bash integration guide](/documentation/integration/bash) for details of
12
+ how to install the updated completion function to your system. Another bugfix
13
+ release, fixing the [broken `--delete`
14
+ option](https://github.com/hnrysmth/ppl/issues/33) of [`ppl
15
+ phone`](/documentation/commands/phone).
@@ -0,0 +1,35 @@
1
+ ---
2
+ title: 1.23.0
3
+ summary: Bash completion enhancements
4
+ date: 2013-04-21
5
+ layout: changelog
6
+ section: development
7
+ categories: [changelog]
8
+ permalink: /development/changelog/1.23.0.html
9
+ ---
10
+
11
+ Unusually for a ppl release, this one doesn't add any new core functionality or
12
+ fix any bugs. Instead, this release is solely an update to the [Bash
13
+ integration](/documentation/integration/bash/). The following improvements have
14
+ been made to the bash completion.
15
+
16
+ * It now returns command name suggestions much more quickly
17
+ * It can autocomplete email addresses for use with [`ppl
18
+ email`](/documentation/commands/email)
19
+ * It can autocomplete nicknames for use with [`ppl
20
+ nick`](/documentation/commands/nick)
21
+ * It can autocomplete organizations for use with [`ppl
22
+ org`](/documentation/commands/org)
23
+ * It can autocomplete phone numbers for use with [`ppl
24
+ phone`](/documentation/commands/phone)
25
+ * It can autocomplete URLs for use with [`ppl url`](/documentation/commands/url)
26
+ * It can autocomplete git remotes for use with
27
+ [`pull`](/documentation/commands/pull) and
28
+ [`push`](/documentation/commands/push)
29
+
30
+ For example, if you're attempting to amend the `--type` of a contact's phone
31
+ number, you can now enter `ppl phone adam 071<Tab>` and Bash will autocomplete
32
+ the rest of the phone number.
33
+
34
+ See the [Bash integration guide](/documentation/integration/bash) for details of
35
+ how to install the updated completion function to your system.