{"id":300,"date":"2017-01-10T10:13:01","date_gmt":"2017-01-10T01:13:01","guid":{"rendered":"http:\/\/www.raythebm.net\/weblog\/?p=300"},"modified":"2017-01-10T10:13:01","modified_gmt":"2017-01-10T01:13:01","slug":"persp-mode-%e3%82%92%e8%a8%ad%e5%ae%9a%e3%81%97%e3%81%a6%e3%81%bf%e3%81%9f%e3%81%a4%e3%81%84%e3%81%a7%e3%81%ab-helm-%e3%82%82","status":"publish","type":"post","link":"https:\/\/www.raythebm.net\/weblog\/archives\/300","title":{"rendered":"persp-mode \u3092\u8a2d\u5b9a\u3057\u3066\u307f\u305f(\u3064\u3044\u3067\u306b helm \u3082)"},"content":{"rendered":"<p>\u3048\u30fc\u3001\u4eca\u56de\u306f common lisp \u306e\u30b3\u30fc\u30c9\u3092\u66f8\u3053\u3046\u3068\u601d\u3063\u305f\u3089\u30ad\u30fc\u30d0\u30a4\u30f3\u30c9\u304c\u6c17\u306b\u306a\u3063\u3066\u3001init.el \u3092\u7de8\u96c6\u3057\u3066\u308b\u3046\u3061\u306b elisp \u30d1\u30c3\u30b1\u30fc\u30b8\u63a2\u3057\u306b\u8d70\u3063\u3066\u3057\u307e\u3044\u3001\u6c17\u304c\u4ed8\u3044\u305f\u3089\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u3092\u898b\u306a\u304c\u3089 elisp \u3092\u66f8\u3044\u3066\u3044\u305f\u3068\u3044\u3046 yak shaving \u306e\u6700\u305f\u308b\u3082\u306e\u306b\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u3002<br \/>\n\u306a\u306e\u3067\u3001\u305b\u3081\u3066\u52d5\u3044\u305f\u30b3\u30fc\u30c9\u7247\u3060\u3051\u3067\u3082\u8f09\u305b\u3066\u304a\u3053\u3046\u3068\u601d\u3044\u307e\u3059\u3002<\/p>\n<p>\u4ee5\u4e0b\u306f persp-mode \u3067\u65b0\u898f\u30d1\u30fc\u30b9\u30da\u30af\u30c6\u30a3\u30d6\u3092\u4f5c\u6210\u3057\u305f\u6642(\u53b3\u5bc6\u306b\u306f\u30d0\u30c3\u30d5\u30a1\u304c\u306a\u3044\u30d1\u30fc\u30b9\u30da\u30af\u30c6\u30a3\u30d6\u306b\u5207\u308a\u66ff\u3048\u305f\u6642)\u306b\u30d0\u30c3\u30d5\u30a1\u3092\u9078\u629e\u3057\u3066\u767b\u9332\u3059\u308b\u8a2d\u5b9a\u3067\u3059\u3002<br \/>\n\u6bce\u5ea6\u304a\u306a\u3058\u307f rubikitch \u69d8\u306e<a href=\"http:\/\/emacs.rubikitch.com\/persp-mode\/\" target=\"_blank\">\u30b5\u30a4\u30c8<\/a>\u304b\u3089\u30b3\u30d4\u30fc\u3057\u3066\u3001\u56db\u82e6\u516b\u82e6\u3057\u306a\u304c\u3089\u5e0c\u671b\u3059\u308b\u52d5\u4f5c\u306b\u306a\u308b\u3088\u3046\u6539\u9020(\u6539\u60aa\uff1f)\u3057\u307e\u3057\u305f\u3002<br \/>\n\u30db\u30f3\u30c8\u3001\u3044\u3064\u3082\u304a\u4e16\u8a71\u306b\u306a\u3063\u3066\u307e\u3059\u3002\u5bc6\u5ea6\u306e\u6fc3\u3044\u60c5\u5831\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002 \uff1e rubikitch \u69d8<br \/>\n\u8a2d\u5b9a\u3057\u305f persp-mode \u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u306f 20161226.2218 \u3067\u3059\u3002<br \/>\n<code><\/p>\n<pre>\r\n;;; persp-mode \u8a2d\u5b9a\r\n(setq persp-add-on-switch-or-display t)\r\n(persp-mode 1)\r\n;;; \u65b0\u898f\u30d1\u30fc\u30b9\u30da\u30af\u30c6\u30a3\u30d6\u4f5c\u6210\u6642\u306b\u8ffd\u52a0\u3059\u308b\u30d0\u30c3\u30d5\u30a1\u3092\u9078\u629e\u3059\u308b\r\n(defun persp-register-buffers () ; \u95a2\u6570\u540d\u5909\u66f4\r\n  (interactive)\r\n  (dolist (bufname (condition-case _\r\n                       (helm-comp-read\r\n                        \"Buffers: \"\r\n                        (mapcar 'buffer-name (buffer-list))\r\n                        :must-match t\r\n                        :marked-candidates t)\r\n                     (quit nil)))\r\n    (persp-add-buffer (get-buffer bufname))))\r\n;; \u3053\u3053\u304b\u3089\u8ffd\u52a0\u5206\r\n(defun persp-register-buffers-if-empty (mode)\r\n  (interactive)\r\n  (if (null (persp-buffer-list)) ; \u30d1\u30fc\u30b9\u30da\u30af\u30c6\u30a3\u30d6\u306e\u30d0\u30c3\u30d5\u30a1\u304c\u7a7a\u306e\u6642\u3060\u3051\r\n      (persp-register-buffers))) ; \u4e0a\u306e\u30d0\u30c3\u30d5\u30a1\u9078\u629e\u95a2\u6570\u3092\u547c\u3076\r\n(add-hook 'persp-activated-functions 'persp-register-buffers-if-empty) ; \u30d5\u30c3\u30af\u540d\u304c\u5909\u308f\u3063\u305f\uff1f\r\n<\/pre>\n<p><\/code><\/p>\n<p>\u305d\u308c\u304b\u3089\u3001persp-mode \u7528\u306e helm \u30a2\u30af\u30b7\u30e7\u30f3\u3082\u898b\u69d8\u898b\u771f\u4f3c\u3067\u4f5c\u3063\u3066\u307f\u307e\u3057\u305f\u3002<br \/>\n\u3044\u3061\u304a\u3046\u52d5\u3044\u3066\u3044\u308b\u3088\u3046\u3067\u3059\u304c\u3001\u4f7f\u7528\u306f\u81ea\u5df1\u8cac\u4efb\u3067\u304a\u9858\u3044\u3057\u307e\u3059\u3002<br \/>\n<code><\/p>\n<pre>\r\n(defun helm-persp-add-buffer (buffer-or-name)\r\n  (persp-add-buffer (helm-marked-candidates)))\r\n(defun helm-persp-kill-buffer (buffer-or-name)\r\n  (persp-kill-buffer (helm-marked-candidates)))\r\n(setq helm-type-buffer-actions\r\n      (append helm-type-buffer-actions\r\n              '((\"Add buffer(s) to perspective\" . helm-persp-add-buffer)\r\n                (\"Kill buffer(s) from perspective.\" . helm-persp-kill-buffer))))\r\n<\/pre>\n<p><\/code><\/p>\n<p>\u4ee5\u4e0a\u3067\u3059\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u3048\u30fc\u3001\u4eca\u56de\u306f common lisp \u306e\u30b3\u30fc\u30c9\u3092\u66f8\u3053\u3046\u3068\u601d\u3063\u305f\u3089\u30ad\u30fc\u30d0\u30a4\u30f3\u30c9\u304c\u6c17\u306b\u306a\u3063\u3066\u3001init.el \u3092\u7de8\u96c6\u3057\u3066\u308b\u3046\u3061\u306b elisp \u30d1\u30c3\u30b1\u30fc\u30b8\u63a2\u3057\u306b\u8d70\u3063\u3066\u3057\u307e\u3044\u3001\u6c17\u304c\u4ed8\u3044\u305f\u3089\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u3092\u898b\u306a\u304c\u3089 elisp \u3092\u66f8 &hellip; <a href=\"https:\/\/www.raythebm.net\/weblog\/archives\/300\">\u7d9a\u304d\u3092\u8aad\u3080 <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[12,8,7,19,14,23],"class_list":["post-300","post","type-post","status-publish","format-standard","hentry","category-it","tag-customize","tag-elisp","tag-emacs","tag-lisp","tag-memo","tag-programming"],"_links":{"self":[{"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/posts\/300","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/comments?post=300"}],"version-history":[{"count":8,"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/posts\/300\/revisions"}],"predecessor-version":[{"id":308,"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/posts\/300\/revisions\/308"}],"wp:attachment":[{"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/media?parent=300"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/categories?post=300"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.raythebm.net\/weblog\/wp-json\/wp\/v2\/tags?post=300"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}