This commit is contained in:
js0ny 2025-03-02 17:50:25 +00:00
commit 1cdb00ba50
16 changed files with 183 additions and 55 deletions

3
common/agenda-view.el Normal file
View file

@ -0,0 +1,3 @@
(setq org-directory "~/OrgFiles/")
(setq org-agenda-files (list (concat org-directory "tasks/")))

View file

@ -61,3 +61,8 @@ set directory=$XDG_STATE_HOME/vim/swap
set undodir=$XDG_STATE_HOME/vim/undo
set viewdir=$XDG_STATE_HOME/vim/view
" set shada+=n$XDG_STATE_HOME/vim/shada
" Leader
let mapleader = "\<Space>"
nnoremap <leader><leader> :FZF<CR>
" Misc
syntax on

View file

@ -1,4 +1,3 @@
;; vim:ft=kmonad
;; Linux kmonad.kbd
(defcfg

View file

@ -30,7 +30,6 @@ else
}
fi
alias ni=touch
alias cls=clear
alias ii=open
@ -54,6 +53,7 @@ alias ipy=ipython
alias g=lazygit
alias doomd="emacsclient -t ~/.config/doom/"
# lsd - modern ls
if command -v lsd >/dev/null; then
@ -68,7 +68,6 @@ else
alias ll='ls -l'
fi
# Functions #
mkcd() {
mkdir -p $1 && cd $1
@ -89,7 +88,6 @@ mtv(){
mkdir -p $(dirname $1) && touch $1 && nvim $1
}
alias update="source $DOTFILES/scripts/update.zsh"
if command -v pacman >/dev/null; then
@ -124,8 +122,6 @@ if command -v brew > /dev/null; then
alias brewl="brew list"
fi
# TODO: Does not work
if [ "$TERM" = "xterm-ghostty" ] || [ "$TERM" = "xterm-kitty" ]; then
alias icat="kitten icat"

View file

@ -121,3 +121,6 @@
)
(load! "calendar.el")
(load! "telega.el")

View file

@ -72,12 +72,13 @@
)
)
;;; org-agenda
(after! org-agenda
;; (setq org-agenda-files (directory-files-recursively "~/OrgFiles/tasks/" "\\.org$"))
(setq org-agenda-files (list (concat org-directory "tasks/")))
)
(map! :leader :desc "Org Agenda" "A" #'org-agenda)
(map! :after org-agenda
:map evil-org-agenda-mode-map
@ -87,8 +88,16 @@
:m "ge" #'org-agenda-previous-item
:m "N" #'org-agenda-priority-up
:m "E" #'org-agenda-priority-down
:m "i" #'evil-forward-char)
:m "i" #'evil-forward-char
:leader :desc "Org Agenda" "A" #'org-agenda)
;; org-agenda-clockreport
(setq org-agenda-clockreport-parameter-plist '(:link t :maxlevel 3 :fileskip0 t :compact t :narrow 80))
;;; org-clock
;; org-pomodoro
(after! org-pomodoro
(setq org-pomodoro-format "🍅~%s")
@ -96,9 +105,18 @@
(setq org-pomodoro-long-break-format "猛摸~%s")
)
;; Org-Babel
;;; org-babel
(if (bound-and-true-p ISMAC)
(setq org-babel-C-compiler "clang"))
(load! "+pomodoro-telegram.el")
;;; org-export
;; icalendar
(setq org-icalendar-use-scheduled '(event-if-todo event-if-not-todo))
(setq org-icalendar-use-deadline '(event-if-todo event-if-not-todo))
(setq org-icalendar-combined-agenda-file "~/Dropbox/org.ics")

View file

@ -55,3 +55,7 @@
(package! rime)
(package! ox-typst)
(package! cal-china-x)
(package! telega :recipe (:files (:defaults "contrib/*.el" "etc" "server" "Makefile")))
(package! org-super-agenda)

72
tools/doom/telega.el Normal file
View file

@ -0,0 +1,72 @@
;; -*- lexical-binding: t; -*-
;; telegram client for emacs
(use-package! telega
:init
(setq telega-server-libs-prefix "/usr")
(setq telega-directory (expand-file-name "~/.local/share/telega"))
(prefix-key global-map (kbd "C-c t") telega-prefix-map)
(unless (display-graphic-p) (setq telega-use-images nil))
(when (modulep! :editor evil)
(cl-pushnew 'telega +evil-collection-disabled-list :test #'equal)
(setq evil-collection-mode-list (remove 'telega evil-collection-mode-list))
(set-evil-initial-state! '(telega-root-mode telega-chat-mode) 'emacs))
:hook
(telega-load . telega-mode-line-mode)
(telega-load . global-telega-url-shorten-mode)
(telega-load . global-telega-mnz-mode)
(telega-load . telega-autoplay-mode)
(telega-load . telega-transient-mode)
(telega-load . telega-adblock-mode)
(telega-chat-mode . (lambda ()
(setq-local visual-fill-column-extra-text-width
'(0 . 2))))
:config
(add-hook 'telega-msg-ignore-predicates
(telega-match-gen-predicate 'msg '(sender is-blocked)))
(setq telega-chat-show-deleted-messages-for '(me-is-owner OR-ADMIN)
;; telega-use-tracking-for '(or mention (and unread unmuted))
telega-open-file-function 'org-open-file
;; telega-open-message-as-file '(video video-note)
telega-translate-to-language-by-default "zh"
telega-avatar-workaround-gaps-for `(return t)
telega-mode-line-string-format (remove
'(:eval (telega-mode-line-icon))
telega-mode-line-string-format))
(map! (:prefix "C-c"
:desc "Telega all chats"
"c" #'telega-chat-with
:desc "Telega important chats"
"v" #'telega-switch-important-chat
:desc "Telega next important chat"
"SPC" (cmd! (let ((current-prefix-arg '(4)))
(call-interactively #'telega-switch-important-chat))))
(:map telega-chat-mode-map
(:prefix ("C-t" . "Telega chat topic")
:desc "Telega filter by chat topic"
"C-t" #'telega-chatbuf-filter-by-topic
:desc "Telega clear chat topic"
"C-c" #'telega-chatbuf-thread-cancel)))
; (load! "+telega-auto-input-method")
(set-popup-rule! (regexp-quote telega-root-buffer-name)
:slot 10 :vslot 10 :side 'right :size 90 :ttl nil :quit 'current :modeline t)
(set-popup-rule! "^◀[^◀\[]*[\[({<].+[\])}>]"
:slot 10 :vslot 10 :side 'right :size 90 :ttl 10 :quit 'current :modeline t)
(set-popup-rule! (regexp-quote "*Telega User*")
:slot 20 :vslot 10 :side 'right :height .5 :ttl 10 :quit t :modeline nil :select t)
(set-popup-rule! (regexp-quote "*Telegram Chat Info*")
:slot 20 :vslot 10 :side 'right :height .5 :ttl 10 :quit t :modeline nil :select t))
;; (load! "+telega-addition")
(use-package! telega-dired-dwim
:after telega dired)
(use-package! telega-bridge-bot
:after telega)

View file

@ -60,6 +60,9 @@ abbr --add ipy ipython
abbr --add g lazygit
abbr --add doomrc "emacsclient -t ~/.config/doom/"
# lsd - modern ls
if command -v lsd > /dev/null
alias ls='lsd'

View file

@ -9,6 +9,7 @@ return {
},
{ import = "plugins.mod.nvim-tree" },
{ import = "plugins.mod.telescope" },
-- { import = "plugins.mod.fzf" },
{
"ahmedkhalf/project.nvim",
opts = {

View file

@ -33,4 +33,21 @@ return {
{ import = "plugins.mod.which-keys-nvim" },
{ import = "plugins.mod.copilot-lua" },
{ import = "plugins.mod.avante-nvim" },
{
"kawre/leetcode.nvim",
build = ":TSUpdate html", -- if you have `nvim-treesitter` installed
dependencies = {
"nvim-telescope/telescope.nvim",
-- "ibhagwan/fzf-lua",
"nvim-lua/plenary.nvim",
"MunifTanjim/nui.nvim",
},
opts = {
-- configuration goes here
},
},
{
"3rd/image.nvim",
opts = {},
},
}

View file

@ -9,7 +9,7 @@ return {
provider = "openai",
openai = {
endpoint = "https://yunwu.ai/v1",
model = "claude-3-5-sonnet-latest", -- your desired model (or use gpt-4o, etc.)
model = "claude-3-7-sonnet-20250219", -- your desired model (or use gpt-4o, etc.)
timeout = 30000, -- timeout in milliseconds
temperature = 0, -- adjust if needed
max_tokens = 4096,

View file

@ -0,0 +1,6 @@
return {
"ibhagwan/fzf-lua",
-- optional for icon support
dependencies = { "nvim-tree/nvim-web-devicons" },
opts = {},
}

View file

@ -7,7 +7,8 @@ return {
file_types = { "markdown", "Avante" },
render_modes = { "n", "c", "t" },
latex = {
enabled = true,
-- enabled = true,
enabled = false,
converter = "latex2text",
highlight = "RenderMarkdownMath",
top_pad = 0,

View file

@ -2,9 +2,7 @@ return {
"folke/which-key.nvim",
event = "VeryLazy",
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
preset = "modern",
},
keys = {
{

View file

@ -27,6 +27,8 @@ alias ipy=ipython
alias g=lazygit
alias doomrc="emacsclient -t ~/.config/doom/"
# lsd - modern ls
if command -v lsd >/dev/null 2>&1; then
alias ls='lsd'