(add-to-list 'org-structure-template-alist '("ff1" . "src css :tangle ~/.mozilla/firefox/armaan-release/chrome/userChrome.css"))
(add-to-list 'org-structure-template-alist '("ff2" . "src css :tangle ~/.mozilla/firefox/armaan-release/chrome/userContent.css"))
(add-to-list 'org-structure-template-alist '("xr" . "src conf :tangle ~/.Xresources")
- (add-to-list 'org-structure-template-alist '("tm" . "src conf :tangle ~/.tmux.conf")))
+ (add-to-list 'org-structure-template-alist '("tm" . "src conf :tangle ~/.tmux.conf")
+ (add-to-list 'org-structure-template-alist '("gp" . "src conf :tangle ~/.gnupg/gpg.conf")
+ (add-to-list 'org-structure-template-alist '("ag" . "src conf :tangle ~/.gnupg/gpg-agent.conf")))
#+end_src
* Autocompletion
** Ivy
:bind (("C-c w" . eww))
:hook (eww-after-render-hook prot-eww--rename-buffer))
#+end_src
-*** Better entrypoint
+*** Keybinding
#+begin_src emacs-lisp
- ;; From https://protesilaos.com/dotemacs/
- (defun prot-eww-browse-dwim (url &optional arg)
- "Visit a URL, maybe from `eww-prompt-history', with completion.
-
- With optional prefix ARG (\\[universal-argument]) open URL in a
- new eww buffer.
-
- If URL does not look like a valid link, run a web query using
- `eww-search-prefix'.
-
- When called from an eww buffer, provide the current link as
- initial input."
- (interactive
- (list
- (completing-read "Query:" eww-prompt-history
- nil nil (plist-get eww-data :url) 'eww-prompt-history)
- current-prefix-arg))
- (eww url (if arg 4 nil)))
-
- (global-set-key (kbd "C-c w") 'prot-eww-browse-dwim)
+ (global-set-key (kbd "C-c w") 'eww)
#+end_src
** IRC
+*** Setup ERC
#+begin_src emacs-lisp
(use-package erc
:straight (:type built-in)
:config
- (load "~/.emacs.d/irc.el")
(erc-notifications-mode 1)
+ (erc-track-enable)
(erc-smiley-disable)
:custom (erc-prompt-for-password . nil))
:straight (git-email :repo "https://git.sr.ht/~yoctocell/git-email")
:config (git-email-piem-mode))
#+end_src
+** Java
+*** Evaluate current buffer
+Stolen from https://stackoverflow.com/questions/19953924/how-do-you-run-java-codes-in-emacs
+#+begin_src emacs-lisp
+ (defun java-eval-buffer ()
+ "run current program (that requires no input)"
+ (interactive)
+ (let* ((source (file-name-nondirectory buffer-file-name))
+ (out (file-name-sans-extension source))
+ (class (concat out ".class")))
+ (save-buffer)
+ (shell-command (format "rm -f %s && javac %s" class source))
+ (if (file-exists-p class)
+ (shell-command (format "java %s" out) "*scratch*")
+ (progn
+ (set (make-local-variable 'compile-command)
+ (format "javac %s" source))
+ (command-execute 'compile)))))
+#+end_src
* General text editing
** Indentation
Indent after every change.
}
#+end_src
*** Black screen by default
+userChrome.css:
#+begin_src css :tangle ~/.mozilla/firefox/armaan-release/chrome/userChrome.css
#main-window,
#browser,
color: #fff !important;
}
#+end_src
+
+userContent.css:
#+begin_src css :tangle ~/.mozilla/firefox/armaan-release/chrome/userContent.css
@-moz-document url("about:home"), url("about:blank"), url("about:newtab") {
body {
}
#+end_src
** Xresources
-*** Color scheme
-Modus operandi.
+Modus operandi theme.
#+begin_src conf :tangle ~/.Xresources
! special
,*.foreground: #ffffff
,*.color7: #eeeeee
,*.color15: #dddddd
#+end_src
-*** Copy paste
-#+begin_src conf :tangle ~/.Xresources
- xterm*VT100.Translations: #override \
- Shift <KeyPress> Insert: insert-selection(CLIPBOARD) \n\
- Ctrl Shift <Key>V: insert-selection(CLIPBOARD) \n\
- Ctrl Shift <Key>C: copy-selection(CLIPBOARD) \n\
- Ctrl <Btn1Up>: exec-formatted("xdg-open '%t'", PRIMARY)
-#+end_src
-*** Blink cursor
-#+begin_src conf :tangle ~/.Xresources
- xterm*cursorBlink: true
-#+end_src
-*** Alt keys
-#+begin_src conf :tangle ~/.Xresources
- XTerm*eightBitInput: false
- XTerm*eightBitOutput: true
-#+end_src
** Tmux
#+begin_src conf :tangle ~/.tmux.conf
set -g status off
+ set -g mouse on
set-window-option -g mode-keys vi
#+end_src
+** GPG
+*** Config
+#+begin_src conf :tangle ~/.gnupg/gpg.conf
+ default-key 3C9ED82FFE788E4A
+ use-agent
+#+end_src
+*** Agent
+#+begin_src conf :tangle ~/.gnupg/gpg-agent.conf
+ pinentry-program /sbin/pinentry-gnome3
+ max-cache-ttl 600
+ default-cache-ttl 600
+ allow-emacs-pinentry
+#+end_src