mirror of https://github.com/Chizi123/.emacs.d.git

Chizi123
2018-11-21 e75a20334813452c6912c090d70a0de2c805f94d
commit | author | age
76bbd0 1 ;ELC
C 2 ;;; Compiled
3 ;;; in Emacs version 26.1
4 ;;; with all optimizations.
5
6 ;;; This file uses dynamic docstrings, first added in Emacs 19.29.
7
8 ;;; This file does not contain utf-8 non-ASCII characters,
9 ;;; and so can be loaded in Emacs versions earlier than 23.
10
11 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
12 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
13
14
15 (require 'org)
16 #@27 The IRC client to act on.
17 (defvar org-irc-client 'erc (#$ . 423))
18 #@75 Non-nil will store a link to the logs, nil will store an irc: style link.
19 (defvar org-irc-link-to-logs nil (#$ . 495))
20 (org-link-set-parameters "irc" :follow 'org-irc-visit :store 'org-irc-store-link)
21 #@87 Parse LINK and dispatch to the correct function based on the client found.
22
23 (fn LINK)
24 (defalias 'org-irc-visit #[257 "\301!\302\267\202\303!\202\304\305!\207" [org-irc-client org-irc-parse-link #s(hash-table size 1 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (erc 9)) org-irc-visit-erc error "ERC only known client"] 4 (#$ . 702)])
25 #@222 Parse an IRC LINK and return the attributes found.
26 Parse a LINK that looks like server:port/chan/user (port, chan
27 and user being optional) and return any of the port, channel or user
28 attributes that are found.
29
30 (fn LINK)
31 (defalias 'org-irc-parse-link #[257 "\300\301\302#\211G\211\303W\204\211\304V\203\305\306\"\210\300@\307\302#\240\210\207" [split-string "/" t 1 3 error "Failed to parse link needed 1-3 parts, got %d" ":"] 8 (#$ . 1068)])
32 #@73 Dispatch to the appropriate function to store a link to an IRC session.
33 (defalias 'org-irc-store-link #[0 "\301=\205\302 \207" [major-mode erc-mode org-irc-erc-store-link] 2 (#$ . 1526)])
34 #@208 Remove unnecessary white space from STRING and add ellipses if necessary.
35 Strip starting and ending white space from STRING and replace any
36 chars that the value AFTER with `...'
37
38 (fn STRING &optional AFTER)
39 (defalias 'org-irc-ellipsify-description #[513 "\300\206\301!\302\303B\304\303B\305\306Q\307BE\211\211\2035\211@\310@\"\203.\311A\312\211    $\262A\266\202\202\262\207" [number-to-string 30 "^[     ]*" "" "[     ]*$" "^\\(.\\{" "\\}\\).*" "\\1..." string-match replace-match nil] 11 (#$ . 1724)])
40 #@267 Find the best line to link to from the ERC logs given ERC-LINE as a start.
41 If the user is on the ERC-prompt then search backward for the
42 first non-blank line, otherwise return the current line.  The
43 result is a cons of the filename and search string.
44
45 (fn ERC-LINE)
46 (defalias 'org-irc-erc-get-line-from-log #[257 "\301 \210\302\303!\210r\304\305 !q\210db\210\306!\307 \230\2030\310 b\210\311\312\313\314#\205>\315\310 \316 \"\202>\317\313\314#\205>\315\310 \316 \")D\207" [buffer-file-name erc-save-buffer-in-logs require erc-log find-file-noselect erc-current-logfile abbreviate-file-name erc-prompt point-at-bol search-backward-regexp "^[^    ]" nil t buffer-substring-no-properties point-at-eol search-backward] 6 (#$ . 2243)])
47 #@205 Store a link to the IRC log file or the session itself.
48 Depending on the variable `org-irc-link-to-logs' store either a
49 link to the log file for the current session or an irc: link to
50 the session itself.
51 (defalias 'org-irc-erc-store-link #[0 "\302\303!\210\203;\304\305 \306 \"\307!\310\311!\2037\312\313\314\315\316\317A@\320\"\321Q\322\323@\324    A@R&\210\325\202:\326\327!\207\330 \331!\203v\312\313\332\322\333P\315\334\316Q\335@@\336\337 \211A\262 \242A@!\206g    \340\f\211A\262\242&\f\210\325\202y\326\341!\207" [org-irc-link-to-logs erc-default-port require erc-log buffer-substring-no-properties point-at-bol point-at-eol org-irc-erc-get-line-from-log erc-logging-enabled nil org-store-link-props :type "file" :description "'" org-irc-ellipsify-description 20 "' from an IRC conversation" :link "file:" "::" t error "This ERC session is not being logged" org-irc-get-erc-link org-irc-parse-link "irc" "irc:/" "irc session `" :server :port string-to-number :nick "Failed to create ('irc:/' style) ERC link"] 16 (#$ . 2985)])
52 #@57 Return an org compatible irc:/ link from an ERC buffer.
53 (defalias 'org-irc-get-erc-link #[0 "\247\203 \302!\202\f    \303Q\211\304\305 \2035\306\305 !\2035\307`\310\"@\2035\307`\310\"@\305 \304Q\262\2027\305 Q\207" [erc-session-port erc-session-server number-to-string ":" "/" erc-default-target erc-channel-p get-text-property erc-data] 8 (#$ . 4044)])
54 #@113 Return the current port as a number.
55 Return the current port number or, if none is set, return the ERC
56 default.
57 (defalias 'org-irc-get-current-erc-port #[0 ";\203    \302!\207\247\203\207    \207" [erc-session-port erc-default-port string-to-number] 2 (#$ . 4414)])
58 #@65 Visit an ERC buffer based on criteria found in LINK.
59
60 (fn LINK)
e75a20 61 (defalias 'org-irc-visit-erc #[257 "\301\302!\210\301\303!\210\211@@\211A\262\242A@\211\203\304!\202\262\305C\306\307\310\311\312\313#\314\"\315$!\211\203\250\211A\262\242\211\203\237\3162d\211\205a\211@\317!\230\203Z\320\316\"\210A\266\202\202G\2620\211\203\222\321!\210\211A\262\242\211\205\215\211\322 \235\203\210db\210\211\323Pc\202\215\324\325#\262\202\232\321\242!\210\326!\262\202\243\321\242!\262\202\257\327\330\331$\207" [erc-default-port require erc erc-log string-to-number nil erc-buffer-filter make-byte-code 0 "\304 \211\205r\211q\210\305 \301=\205 \300\230\205\302\240)\207" vconcat vector [erc-session-server erc-server-buffer org-irc-get-current-erc-port] 3 found buffer-name throw pop-to-buffer-same-window erc-get-server-nickname-list ": " error "%s not found in %s" erc-cmd-JOIN erc-select :server :port] 13 (#$ . 4687)])
76bbd0 62 (provide 'org-irc)