aboutsummaryrefslogtreecommitdiff
path: root/emacs/.emacs.d/init/ycp-web.el
diff options
context:
space:
mode:
authorYuchen Pei <id@ypei.org>2023-06-17 17:20:29 +1000
committerYuchen Pei <id@ypei.org>2023-06-17 17:20:29 +1000
commit093ffa5fbf7143f4668bb0a3dc9659a5cc836e12 (patch)
tree1ed4e14b2a43b8e338f4ad6a04d969b99b9239be /emacs/.emacs.d/init/ycp-web.el
parentabc686827ae38ee715d9eed1c5c29161c74127e6 (diff)
Moving things one level deeper
To ease gnu stow usage. Now we can do stow -t ~ emacs
Diffstat (limited to 'emacs/.emacs.d/init/ycp-web.el')
-rw-r--r--emacs/.emacs.d/init/ycp-web.el165
1 files changed, 165 insertions, 0 deletions
diff --git a/emacs/.emacs.d/init/ycp-web.el b/emacs/.emacs.d/init/ycp-web.el
new file mode 100644
index 0000000..af13d5c
--- /dev/null
+++ b/emacs/.emacs.d/init/ycp-web.el
@@ -0,0 +1,165 @@
+;;; ycp-web.el -- My config for web related -*- lexical-binding: t -*-
+
+;; Copyright (C) 2023 Free Software Foundation.
+
+;; Author: Yuchen Pei <id@ypei.org>
+;; Package-Requires: ((emacs "28.2"))
+
+;; This file is part of dotfiles.
+
+;; dotfiles is free software: you can redistribute it and/or modify it under
+;; the terms of the GNU Affero General Public License as published by
+;; the Free Software Foundation, either version 3 of the License, or
+;; (at your option) any later version.
+
+;; dotfiles is distributed in the hope that it will be useful, but WITHOUT
+;; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+;; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General
+;; Public License for more details.
+
+;; You should have received a copy of the GNU Affero General Public
+;; License along with dotfiles. If not, see <https://www.gnu.org/licenses/>.
+
+;;; Commentary:
+
+;; My config for web related. Covers cookies, web browsing, clients to
+;; web services like osm and openlibrary
+
+;;; Code:
+
+
+
+;; disable cookies
+(setq url-cookie-untrusted-urls ".*")
+(ignore-errors (cancel-timer url-cookie-timer))
+
+(setq shr-cookie-policy nil)
+
+(my-package luwak
+ (:delay 10)
+ (:install t)
+ (require 'luwak-org)
+ (require 'my-utils)
+ (setq luwak-url-rewrite-function 'my-rewrite-url)
+ (setq luwak-tor-switch nil)
+)
+
+;;; openlibrary
+(my-package my-openlibrary
+ (:delay 15))
+
+(my-package osm
+ (:install t)
+ (:delay 30)
+ (require 'my-osm)
+ (my-keybind osm-mode-map
+ "C-<left>" nil
+ "C-<right>" nil
+ "C-<up>" nil
+ "C-<down>" nil
+ "c" #'my-osm-show-center)
+ (require 'osm-ol)
+ )
+
+(my-package hnreader
+ (:delay 30)
+ (require 'my-hnreader)
+ (my-override hnreader--print-frontpage)
+ (my-override hnreader--print-frontpage-item)
+ (my-override hnreader--print-comments))
+
+(my-package buildbot
+ (:delay 30)
+ (my-setq-from-local buildbot-host buildbot-github-status-builders)
+ (setq buildbot-builders (ignore-error (buildbot-get-all-builders)))
+)
+
+(my-package eww
+ (:delay 60)
+ (advice-add 'eww-browse-url :filter-args #'my-rewrite-url-advice)
+ (advice-add 'eww :filter-args #'my-rewrite-url-advice)
+ (setq eww-restore-desktop t)
+ (setq eww-download-directory (expand-file-name "~/Downloads"))
+ (setq eww-bookmarks-directory (locate-user-emacs-file "eww-bookmarks"))
+ (setq eww-history-limit 150)
+ (setq eww-use-external-browser-for-content-type
+ "\\`\\(video/\\|audio\\)") ; On GNU/Linux check your mimeapps.list
+ (setq eww-browse-url-new-window-is-tab nil)
+ (my-keybind eww-link-keymap "v" nil) ; stop overriding `eww-view-source'
+ (my-keybind eww-mode-map "L" #'eww-list-bookmarks)
+ (my-keybind eww-bookmark-mode-map "d" #'eww-bookmark-kill)
+ )
+
+(my-package my-web
+ (:delay 60)
+ (my-keybind eww-mode-map
+ "N" #'my-eww-next-path
+ "P" #'my-eww-prev-path
+ "U" #'my-eww-up-path
+ "T" #'my-eww-top-path
+ "b" #'my-eww-switch-by-title)
+ (my-keybind global-map "\C-c\C-o" #'my-browse-url-at-point)
+ (my-override browse-url)
+ )
+
+(my-package my-semantic-scholar
+ (:delay 60))
+
+(my-package rt-liberation
+ (:delay 60)
+ (:install t)
+ (my-setq-from-local rt-liber-username rt-liber-rest-url
+ rt-liber-base-url)
+ (require 'my-rtliber)
+ (my-override rt-liber-viewer-visit-in-browser)
+)
+
+(my-package rt-liberation-org
+ (:delay 60))
+
+(my-package rt-liberation-gnus
+ (:delay 60)
+ (my-setq-from-local rt-liber-gnus-address
+ rt-liber-gnus-comment-address
+ rt-liber-gnus-subject-name)
+ (require 'my-rtliber)
+ (my-keybind global-map
+ "C-c t m" #'my-rt-liber-my-open-tickets
+ "C-c t M" #'my-rt-liber-my-tickets
+ "C-c t b" #'my-rt-liber-backlog
+ "C-c t i" #'my-rt-liber-get-ticket-by-id
+ "C-c t q" #'my-rt-liber-query-by-subject)
+ )
+
+;; sx: a stack exchange client
+(my-package sx
+ (:delay 60)
+ (require 'sx-load))
+
+;; mastodon
+(add-to-list 'load-path (locate-user-emacs-file "lisp/mastodon.el/lisp"))
+(my-package mastodon
+ (:delay 60)
+ (my-setq-from-local mastodon-active-user mastodon-instance-url))
+
+(add-to-list 'load-path (locate-user-emacs-file "lisp/servall/lisp"))
+(my-package servall-wikipedia
+ (:delay 60)
+ (require 'servall-ytdl)
+ (my-setq-from-local servall-endpoint)
+ (require 'my-servall)
+ (my-keybind servall-wikipedia-view-mode-map "C-'" 'my-servall-wikipedia-grok)
+)
+
+(my-package my-libgen
+ (:delay 60)
+ (my-setq-from-local my-libgen-hosts my-libgen-alt-hosts
+ my-libgen-library-hosts
+ my-libgen-download-dir)
+ (my-libgen-set-random-hosts))
+
+(my-package my-scihub
+ (:delay 60)
+ (my-setq-from-local my-scihub-host))
+
+(provide 'ycp-web)